Cryptography & X.509 Certificates. Dominick Baier

Size: px
Start display at page:

Download "Cryptography & X.509 Certificates. Dominick Baier"

Transcription

1 Cryptography & X.509 Certificates Dominick Baier

2 Dominick Baier Solution architect and security consultant at thinktecture Focus on security in distributed applications identity management Windows/.NET security cloud computing Microsoft MVP for Developer Security 2

3 Agenda Why cryptography? Symmetric cryptography Asymmetric cryptography X.509 certificates & public key cryptography standards.net APIs 3

4 Why cryptography? Confidentiality, Integrity, Authenticity Alice Bob 4

5 Certificates? 5

6 Certificates?? 6

7 Certificates??? 7

8 History: symmetric cryptography Encryption Decryption 8

9 Symmetric crypto in the.net Framework Cryptography consists of two primitives Hashing integrity protection Encryption confidentiality protection 9

10 Hash algorithms HashAlgorithm MD5 RIPEMD160 SHA1 MD5CryptoServiceProvider RIPEMD160Managed SHA1Managed SHA1CryptoServiceProvider SHA256 SHA384 SHA512 SHA256Managed SHA384Managed SHA512Managed 10

11 Creating a hash void SimpleHash() { string data = some data"; byte[] databytes = Encoding.Unicode.GetBytes(data); HashAlgorithm sha = new SHA1Managed(); byte[] hashbytes = sha.computehash(databytes); } string hashstring = Convert.ToBase64String(hashBytes); 11

12 Stream Ciphers How a stream cipher works key is used as a seed for a pseudo-random-number generator run the PRNG continuously to get a key stream XOR each bit of plaintext with corresponding bit in key stream most common example is RC4 Benefits easy to implement, blazingly fast ciphertext is always exactly the same length as plaintext Drawbacks incredibly easy to misuse most software that uses stream ciphers has at one time been buggy and insecure System.Security.Cryptography doesn t expose them at all 12

13 Block Ciphers How a block cipher works input is broken up into fixed size blocks (typically 8- or 16-bytes) transformation f() applied to key, result xor d into block this is known as a round 16 to 32 rounds is typical key plaintext block f() xor Round 1 f() xor Round N ciphertext block 13

14 Encrypting data in.net Setting up choose an algorithm and implementation choose a feedback mode choose a padding mode generate an initialization vector (IV) choose a key Encrypting record the initialization vector for use during decryption create a CryptoStream object based on your key pump data through the stream to encrypt it 14

15 Algorithms and implementations in.net SymmetricAlgorithm DES DESCryptoServiceProvider TripleDES RC2 TripleDESCryptoServiceProvider RC2CryptoServiceProvider Rijndael RijndaelManaged note that these are all block ciphers 15

16 Example: encrypting a file void Encrypt(FileStream s, FileStream d) { SymmetricAlgorithm alg = new RijndaelManaged(); alg.mode = CipherMode.CBC; alg.padding = PaddingMode.PKCS7; alg.generateiv(); _writeiv(alg, d); // writes alg.iv to the stream // this example uses a password as a key // more on this later... alg.key = _keyfrompassword(_getpassword()); Stream cryptoutput = new CryptoStream(d, alg.createencryptor(), CryptoStreamMode.Write); } _pump(s, cryptoutput); cryptoutput.close(); 16

17 Decrypting data in.net Setting up choose the same algorithm you used to encrypt (duh!) choose the same feedback mode choose the same padding mode retrieve the initialization vector (IV) used during encryption retrieve the key Decrypting create a CryptoStream object based on your key pump data through the stream to decrypt it close the CryptoStream immediately when done decrypting this causes it to eat any leftover padding from the input stream 17

18 Example: decrypting a file void Decrypt(FileStream s, FileStream d) { SymmetricAlgorithm alg = new RijndaelManaged(); alg.mode = CipherMode.CBC; alg.padding = PaddingMode.PKCS7; _readiv(alg, s); alg.key = _keyfrompassword(_getpassword()); Stream cryptoutput = new CryptoStream(d, alg.createdecryptor(), CryptoStreamMode.Write); } _pump(s, cryptoutput); cryptoutput.close(); 18

19 Passwords as keys Passwords or phrases can be turned into conventional keys variable length passphrase converted into a fixed length key hash of password produces fixed length key Passwords are often long term secrets we limit their use as much as possible to avoid compromise shorter term secrets known as session keys are often used long term secrets such as passwords are usually used to help exchange short term secrets such as session keys Use short term keys to encrypt data whenever possible attacker has less ciphertext to work with to break the key 19

20 Turning a password into a key static byte[] keyfrompassword(string password) { const int KEY_SIZE = 16; PasswordDeriveBytes pdb = new PasswordDeriveBytes(password, null); } byte[] key = pdb.getbytes(key_size); return key; 20

21 Reality check password entropy The code you just saw has a huge flaw it accepts passwords of arbitrary quality it always produces a 128-bit key it gives the illusion that you have the protection of a 128-bit key A password that truly has 128-bits of entropy is rare indeed this requires 20 random characters from the following: upper and lower case alpha (A-Z, a-z) digits (0-9) punctuation Be sure to give the user feedback on password quality! consider rejecting passwords with too little entropy 21

22 Calculating the entropy of a password static double _passwordentropy(string s) { if (0 == s.length) return 0; // first determine the type of characters used int permutations = 0; // psuedo-code for brevity if (useslowercasealpha) permutations += 26; if (usesuppercasealpha) permutations += 26; if (usesnumerics) permutations += 10; if (usespunctuation) permutations += 32; double passwordentropy = Math.Log10(Math.Pow(permutations, s.length)) / Math.Log10(2); } return passwordentropy; Note this calculation is totally bogus if password contains words found in a dictionary! 22

23 Password lengths 23

24 History: asymmetric cryptography Alice Bob Bob Bob Alice Alice 24

25 Problem solved? Not really public key cryptography is too slow to handle large data initial key exchange prone to Man-in-the-Middle attacks asymmetric key symmetric (session) key 25

26 History: X509 certificates Carla Alice Bob 26

27 History: X509 certificates ASN.1 encoded file containing public key additional information about owner and issuer expiration and purpose information revocation information digital signature to prevent manipulation All problems solved? how to bootstrap trust? leads to Public Key Infrastructure (PKI) 27

28 Solution (or at least where we are currently) X.509 certificates provide authentication for public keys Public keys used to securely transmit session key Session key used to encrypt/sign bulk data X.509 certificate asymmetric key symmetric (session) key 28

29 Example: SSL CRL check connect send certificate generate session key & encrypt with public key 29

30 How to get a certificate Depends on how you can bootstrap trust Public facing applications typically buy a certificate from a company that is already trusted (Verisign, TrustCenter etc..) Intranet applications often internal CA/PKI Test/Development internal PKI test/development CA makecert.exe 30

31 Makecert.exe Command line tool to generate certificates & private keys makecert -r -n "CN=TestCertificate" -a sha1 -sv TestCert.pvk TestCert.cer // self signed // name // sig. algo // priv. Key // certificate 31

32 Makecert.exe creating a test root Can be used to sign leaf certificates makecert -r -n "CN=Test Root Authority" -a sha1 -sky signature -sv TestRoot.pvk TestRoot.cer // self signed // subject name // sig. algo. // use for sig. // private key // certificate 32

33 Makecert.exe creating issued certificates Can be used to sign leaf certificates makecert -n "CN=TestCert" -a sha1 -sky exchange -sv TestCert.pvk -iv TestRoot.pvk -ic TestRoot.cer TestCert.cer // subject name // sig. algo. // use for ex. // private key // root priv key // root certificate // certificate 33

34 Windows Certificate Services UI and management features for certificates 34

35 The Windows Certificate Store Abstraction of physical storage of certificates / private keys hard disk, smart card, hardware storage module unified API 35

36 The Windows Certificate Store Computer store machine wide certificates trusted root certification authorities private keys are ACL ed for Administrators and SYSTEM User store one store per (user) account stored in account profile only accessible to the corresponding user All private keys are encrypted with machine/user key 36

37 Using the certificate store Importing certificates makecert.exe & certificate services allow deployment directly to the certificate store import.cer &.pfx (or.p12) files pvk2pfx.exe certutil.exe & winhttpcertcfg.exe API Accessing certificates MMC snap-in System.Security.Cryptography.X509Certificates X509Store & X509Certificate2 class UI helpers 37

38 Common gotcha: ACLs Certificates (& private keys) must be deployed to the store of the corresponding user Some hosting environments don t load the user profile IIS <7 in this case keys must be deployed to machine store private key must be explicitly ACL ed for worker account How? keyset does not exist certificates MMC Vista+ winhttpcertcfg.exe programmatically 38

39 Certificate specific APIs System.Security.Cryptography.X509Certificates X509Store, X509Certificate2, X509Chain System.Security.Cryptography.PKCS implementation of PKCS#7 CMS standard digital signatures & encryption for arbitrary data interoperable 39

40 Typical use of the certificate store Programmatically 40

41 Typical use of the certificate store Declarative 41

42 UI helpers Standard Windows dialogs used by Explorer, IIS... 42

43 UI helpers 43

44 Overview of PKCS#7 support in.net ContentInfo SignedCms EnvelopedCms CmsSigner.Encode() CmsRecipient Standard PKCS#7 SignedData Standard PKCS#7 EnvelopedData 44

45 Example: signing data byte[] sign(byte[] input, X509Certificate2 certificate) { // what is signed ContentInfo content = new ContentInfo(input); // who signs CmsSigner signer = new CmsSigner(certificate); // represents a signed message SignedCms signedmessage = new SignedCms(content); // sign the message signedmessage.computesignature(signer); } // serialize the message return signedmessage.encode(); 45

46 What we just produced plaintext message signer Cert issuer Cert serial number hash of message encrypted with the private key of signer 46

47 Example: encryption using certificates byte[] encrypt(x509certificate2 cert, byte[] input) { // what is encrypted ContentInfo contentinfo = new ContentInfo(input); EnvelopedCms envelopedmessage = new EnvelopedCms(contentInfo); // who can decrypt CmsRecipient recipient = new CmsRecipient(cert); // encrypt message envelopedmessage.encrypt(recipient); } // serialize the message return envelopedmessage.encode(); 47

48 What we just produced (signed) data encrypted with session key recipient Cert issuer Cert serial number session key encrypted with the public key of recipient 48

49 Decrypting an enveloped message static byte[] Decrypt(byte[] data) { // create EnvelopedCms and deserialize EnvelopedCms encryptedmessage = new EnvelopedCms(); encryptedmessage.decode(data); // decrypt encryptedmessage.decrypt(); } // return plain text return encryptedmessage.contentinfo.content; 49

50 Verifying the signature void checksignature(signedcms signedmessage) { // true checks signature only signedmessage.checksignature(true); } foreach (SignerInfo signerinfo in signedmessage.signerinfos) { // access the certificate X509Certificate2 cert = signerinfo.certificate; } 50

51 Verifying certificates Just because the signature matches the public key doesn t mean it s a valid signature you need to check the validity of the certificate itself this means looking all the way up the chain of trust this means looking for revoked certificates Certificate Revocation Lists (CRL) are important authorities that issue certificates also publish CRLs regularly.net allows you to check against CRLs, but it s not automatic 51

52 Example: verifying a certificate void VerifyCert(X509Certificate2 cert) { // set up verification policy X509Chain chain = new X509Chain(); chain.chainpolicy.revocationmode = X509RevocationMode.Online X509RevocationMode.Offline; chain.chainpolicy.revocationflag = X509RevocationFlag.EntireChain; chain.chainpolicy.urlretrievaltimeout = new TimeSpan(5000); chain.chainpolicy.verificationtime = DateTime.Now; } // verify certificate if (!chain.build(cert)) { // iterate through error information foreach (X509ChainElement e in chain.chainelements) { } } 52

53 .NET APIs that use X509Certificate2 System.Net.HttpWebRequest whenever https:// is used ServicePointManager to control behavior System.Net.Security.SslStream implements SSL over arbitrary stream for clients and servers System.Web.HttpRequest access to SSL client certificates System.Net.Mail.SmtpClient SMTP over SSL support System.Security.Cryptography.Xml.* W3C signed/encrypted XML System.ServiceModel.* e.g. WS-Security 53

54 Summary.NET has full featured crypto support Certificates are everywhere It is a complex topic, but as a developer you typically care about the certificate store (and ACLs) trust chain CRL list expiration date Building a test/development CA makes it much easier 54

55 Resources How to build a test/dev CA Makecert.exe CertUtil.exe Pvk2Pfx.exe WinHttpCertCfg.exe e c748e422833f&displaylang=en How to get to a private key file programmatically Certificate.aspx 55

SBClient SSL. Ehab AbuShmais

SBClient SSL. Ehab AbuShmais SBClient SSL Ehab AbuShmais Agenda SSL Background U2 SSL Support SBClient SSL 2 What Is SSL SSL (Secure Sockets Layer) Provides a secured channel between two communication endpoints Addresses all three

More information

Overview of CSS SSL. SSL Cryptography Overview CHAPTER

Overview of CSS SSL. SSL Cryptography Overview CHAPTER CHAPTER 1 Secure Sockets Layer (SSL) is an application-level protocol that provides encryption technology for the Internet, ensuring secure transactions such as the transmission of credit card numbers

More information

CIS 6930 Emerging Topics in Network Security. Topic 2. Network Security Primitives

CIS 6930 Emerging Topics in Network Security. Topic 2. Network Security Primitives CIS 6930 Emerging Topics in Network Security Topic 2. Network Security Primitives 1 Outline Absolute basics Encryption/Decryption; Digital signatures; D-H key exchange; Hash functions; Application of hash

More information

Overview. SSL Cryptography Overview CHAPTER 1

Overview. SSL Cryptography Overview CHAPTER 1 CHAPTER 1 Note The information in this chapter applies to both the ACE module and the ACE appliance unless otherwise noted. The features in this chapter apply to IPv4 and IPv6 unless otherwise noted. Secure

More information

Digital Certificates (Public Key Infrastructure) Reshma Afshar Indiana State University

Digital Certificates (Public Key Infrastructure) Reshma Afshar Indiana State University Digital Certificates (Public Key Infrastructure) Reshma Afshar Indiana State University October 2015 1 List of Figures Contents 1 Introduction 1 2 History 2 3 Public Key Infrastructure (PKI) 3 3.1 Certificate

More information

USING ENCRYPTION TO PROTECT SENSITIVE INFORMATION Commonwealth Office of Technology Security Month Seminars October 29, 2013

USING ENCRYPTION TO PROTECT SENSITIVE INFORMATION Commonwealth Office of Technology Security Month Seminars October 29, 2013 USING ENCRYPTION TO PROTECT SENSITIVE INFORMATION Commonwealth Office of Technology Security Month Seminars Alternate Title? Boy, am I surprised. The Entrust guy who has mentioned PKI during every Security

More information

KEY DISTRIBUTION: PKI and SESSION-KEY EXCHANGE. Mihir Bellare UCSD 1

KEY DISTRIBUTION: PKI and SESSION-KEY EXCHANGE. Mihir Bellare UCSD 1 KEY DISTRIBUTION: PKI and SESSION-KEY EXCHANGE Mihir Bellare UCSD 1 The public key setting Alice M D sk[a] (C) Bob pk[a] C C $ E pk[a] (M) σ $ S sk[a] (M) M, σ Vpk[A] (M, σ) Bob can: send encrypted data

More information

Network Security. Gaurav Naik Gus Anderson. College of Engineering. Drexel University, Philadelphia, PA. Drexel University. College of Engineering

Network Security. Gaurav Naik Gus Anderson. College of Engineering. Drexel University, Philadelphia, PA. Drexel University. College of Engineering Network Security Gaurav Naik Gus Anderson, Philadelphia, PA Lectures on Network Security Feb 12 (Today!): Public Key Crypto, Hash Functions, Digital Signatures, and the Public Key Infrastructure Feb 14:

More information

SSL/TLS: The Ugly Truth

SSL/TLS: The Ugly Truth SSL/TLS: The Ugly Truth Examining the flaws in SSL/TLS protocols, and the use of certificate authorities. Adrian Hayter CNS Hut 3 Team adrian.hayter@cnsuk.co.uk Contents Introduction to SSL/TLS Cryptography

More information

Introduction to Cryptography

Introduction to Cryptography Introduction to Cryptography Part 3: real world applications Jean-Sébastien Coron January 2007 Public-key encryption BOB ALICE Insecure M E C C D channel M Alice s public-key Alice s private-key Authentication

More information

CS 758: Cryptography / Network Security

CS 758: Cryptography / Network Security CS 758: Cryptography / Network Security offered in the Fall Semester, 2003, by Doug Stinson my office: DC 3122 my email address: dstinson@uwaterloo.ca my web page: http://cacr.math.uwaterloo.ca/~dstinson/index.html

More information

OOo Digital Signatures. Malte Timmermann Technical Architect Sun Microsystems GmbH

OOo Digital Signatures. Malte Timmermann Technical Architect Sun Microsystems GmbH OOo Digital Signatures Malte Timmermann Technical Architect Sun Microsystems GmbH About the Speaker Technical Architect in OpenOffice.org/StarOffice development OOo/StarOffice developer since 1991/94 Main

More information

Understanding digital certificates

Understanding digital certificates Understanding digital certificates Mick O Brien and George R S Weir Department of Computer and Information Sciences, University of Strathclyde Glasgow G1 1XH mickobrien137@hotmail.co.uk, george.weir@cis.strath.ac.uk

More information

Chapter 11 Security+ Guide to Network Security Fundamentals, Third Edition Basic Cryptography

Chapter 11 Security+ Guide to Network Security Fundamentals, Third Edition Basic Cryptography Chapter 11 Security+ Guide to Network Security Fundamentals, Third Edition Basic Cryptography What Is Steganography? Steganography Process of hiding the existence of the data within another file Example:

More information

IT Networks & Security CERT Luncheon Series: Cryptography

IT Networks & Security CERT Luncheon Series: Cryptography IT Networks & Security CERT Luncheon Series: Cryptography Presented by Addam Schroll, IT Security & Privacy Analyst 1 Outline History Terms & Definitions Symmetric and Asymmetric Algorithms Hashing PKI

More information

Applying Cryptography as a Service to Mobile Applications

Applying Cryptography as a Service to Mobile Applications Applying Cryptography as a Service to Mobile Applications SESSION ID: CSV-F02 Peter Robinson Senior Engineering Manager RSA, The Security Division of EMC Introduction This presentation proposes a Cryptography

More information

Using etoken for SSL Web Authentication. SSL V3.0 Overview

Using etoken for SSL Web Authentication. SSL V3.0 Overview Using etoken for SSL Web Authentication Lesson 12 April 2004 etoken Certification Course SSL V3.0 Overview Secure Sockets Layer protocol, version 3.0 Provides communication privacy over the internet. Prevents

More information

SubmitedBy: Name Reg No Email Address. Mirza Kashif Abrar 790604-T079 kasmir07 (at) student.hh.se

SubmitedBy: Name Reg No Email Address. Mirza Kashif Abrar 790604-T079 kasmir07 (at) student.hh.se SubmitedBy: Name Reg No Email Address Mirza Kashif Abrar 790604-T079 kasmir07 (at) student.hh.se Abid Hussain 780927-T039 abihus07 (at) student.hh.se Imran Ahmad Khan 770630-T053 imrakh07 (at) student.hh.se

More information

Introduction...3 Terms in this Document...3 Conditions for Secure Operation...3 Requirements...3 Key Generation Requirements...

Introduction...3 Terms in this Document...3 Conditions for Secure Operation...3 Requirements...3 Key Generation Requirements... Hush Encryption Engine White Paper Introduction...3 Terms in this Document...3 Conditions for Secure Operation...3 Requirements...3 Key Generation Requirements...4 Passphrase Requirements...4 Data Requirements...4

More information

Savitribai Phule Pune University

Savitribai Phule Pune University Savitribai Phule Pune University Centre for Information and Network Security Course: Introduction to Cyber Security / Information Security Module : Pre-requisites in Information and Network Security Chapter

More information

Chapter 17. Transport-Level Security

Chapter 17. Transport-Level Security Chapter 17 Transport-Level Security Web Security Considerations The World Wide Web is fundamentally a client/server application running over the Internet and TCP/IP intranets The following characteristics

More information

Expert Reference Series of White Papers. Fundamentals of the PKI Infrastructure

Expert Reference Series of White Papers. Fundamentals of the PKI Infrastructure Expert Reference Series of White Papers Fundamentals of the PKI Infrastructure 1-800-COURSES www.globalknowledge.com Fundamentals of the PKI Infrastructure Boris Gigovic, Global Knowledge Instructor, CEI,

More information

The Misuse of RC4 in Microsoft Word and Excel

The Misuse of RC4 in Microsoft Word and Excel The Misuse of RC4 in Microsoft Word and Excel Hongjun Wu Institute for Infocomm Research, Singapore hongjun@i2r.a-star.edu.sg Abstract. In this report, we point out a serious security flaw in Microsoft

More information

[SMO-SFO-ICO-PE-046-GU-

[SMO-SFO-ICO-PE-046-GU- Presentation This module contains all the SSL definitions. See also the SSL Security Guidance Introduction The package SSL is a static library which implements an API to use the dynamic SSL library. It

More information

Security. Contents. S-72.3240 Wireless Personal, Local, Metropolitan, and Wide Area Networks 1

Security. Contents. S-72.3240 Wireless Personal, Local, Metropolitan, and Wide Area Networks 1 Contents Security requirements Public key cryptography Key agreement/transport schemes Man-in-the-middle attack vulnerability Encryption. digital signature, hash, certification Complete security solutions

More information

Concept of Electronic Approvals

Concept of Electronic Approvals E-Lock Technologies Contact info@elock.com Table of Contents 1 INTRODUCTION 3 2 WHAT ARE ELECTRONIC APPROVALS? 3 3 HOW DO INDIVIDUALS IDENTIFY THEMSELVES IN THE ELECTRONIC WORLD? 3 4 WHAT IS THE TECHNOLOGY

More information

7! Cryptographic Techniques! A Brief Introduction

7! Cryptographic Techniques! A Brief Introduction 7! Cryptographic Techniques! A Brief Introduction 7.1! Introduction to Cryptography! 7.2! Symmetric Encryption! 7.3! Asymmetric (Public-Key) Encryption! 7.4! Digital Signatures! 7.5! Public Key Infrastructures

More information

Key Management. CSC 490 Special Topics Computer and Network Security. Dr. Xiao Qin. Auburn University http://www.eng.auburn.edu/~xqin xqin@auburn.

Key Management. CSC 490 Special Topics Computer and Network Security. Dr. Xiao Qin. Auburn University http://www.eng.auburn.edu/~xqin xqin@auburn. CSC 490 Special Topics Computer and Network Security Key Management Dr. Xiao Qin Auburn University http://www.eng.auburn.edu/~xqin xqin@auburn.edu Slide 09-1 Overview Key exchange Session vs. interchange

More information

CRYPTOGRAPHY AS A SERVICE

CRYPTOGRAPHY AS A SERVICE CRYPTOGRAPHY AS A SERVICE Peter Robinson RSA, The Security Division of EMC Session ID: ADS R01 Session Classification: Advanced Introduction Deploying cryptographic keys to end points such as smart phones,

More information

7 Key Management and PKIs

7 Key Management and PKIs CA4005: CRYPTOGRAPHY AND SECURITY PROTOCOLS 1 7 Key Management and PKIs 7.1 Key Management Key Management For any use of cryptography, keys must be handled correctly. Symmetric keys must be kept secret.

More information

Certificates and SSL

Certificates and SSL SE425: Communication and Information Security Recitation 12 Semester 2 5775 17 June 2015 Certificates and SSL In this recitation we ll see how to use digital certificates for email signing and how to use

More information

mod_ssl Cryptographic Techniques

mod_ssl Cryptographic Techniques mod_ssl Overview Reference The nice thing about standards is that there are so many to choose from. And if you really don t like all the standards you just have to wait another year until the one arises

More information

PGP - Pretty Good Privacy

PGP - Pretty Good Privacy I should be able to whisper something in your ear, even if your ear is 1000 miles away, and the government disagrees with that. -- Philip Zimmermann PGP - Pretty Good Privacy - services - message format

More information

Security+ Guide to Network Security Fundamentals, Third Edition. Chapter 12 Applying Cryptography

Security+ Guide to Network Security Fundamentals, Third Edition. Chapter 12 Applying Cryptography Security+ Guide to Network Security Fundamentals, Third Edition Chapter 12 Applying Cryptography Objectives Define digital certificates List the various types of digital certificates and how they are used

More information

Computer Networks 1 (Mạng Máy Tính 1) Lectured by: Dr. Phạm Trần Vũ MEng. Nguyễn CaoĐạt

Computer Networks 1 (Mạng Máy Tính 1) Lectured by: Dr. Phạm Trần Vũ MEng. Nguyễn CaoĐạt Computer Networks 1 (Mạng Máy Tính 1) Lectured by: Dr. Phạm Trần Vũ MEng. Nguyễn CaoĐạt 1 Lecture 11: Network Security Reference: Chapter 8 - Computer Networks, Andrew S. Tanenbaum, 4th Edition, Prentice

More information

Dashlane Security Whitepaper

Dashlane Security Whitepaper Dashlane Security Whitepaper November 2014 Protection of User Data in Dashlane Protection of User Data in Dashlane relies on 3 separate secrets: The User Master Password Never stored locally nor remotely.

More information

Evaluation of the RC4 Algorithm for Data Encryption

Evaluation of the RC4 Algorithm for Data Encryption Evaluation of the RC4 Algorithm for Data Encryption Allam Mousa (1) and Ahmad Hamad (2) (1) Electrical Engineering Department An-Najah University, Nablus, Palestine (2) Systems Engineer PalTel Company,

More information

XML Encryption Syntax and Processing. Duan,Limiao 07,12,2006

XML Encryption Syntax and Processing. Duan,Limiao 07,12,2006 XML Encryption Syntax and Processing Duan,Limiao 07,12,2006 Agenda Introduction Encryption Overview and Examples - An XML Element - XML Element Content (Elements) - XML Element Content (Character Data)

More information

Lecture 5 - Cryptography

Lecture 5 - Cryptography CSE497b Introduction to Computer and Network Security - Spring 2007 - Professors Jaeger Lecture 5 - Cryptography CSE497b - Spring 2007 Introduction Computer and Network Security Professor Jaeger www.cse.psu.edu/~tjaeger/cse497b-s07/

More information

WiMAX Public Key Infrastructure (PKI) Users Overview

WiMAX Public Key Infrastructure (PKI) Users Overview WiMAX Public Key Infrastructure (PKI) Users Overview WiMAX, Mobile WiMAX, Fixed WiMAX, WiMAX Forum, WiMAX Certified, WiMAX Forum Certified, the WiMAX Forum logo and the WiMAX Forum Certified logo are trademarks

More information

Chapter 8. Network Security

Chapter 8. Network Security Chapter 8 Network Security Cryptography Introduction to Cryptography Substitution Ciphers Transposition Ciphers One-Time Pads Two Fundamental Cryptographic Principles Need for Security Some people who

More information

User Guide Supplement. S/MIME Support Package for BlackBerry Smartphones BlackBerry Pearl 8100 Series

User Guide Supplement. S/MIME Support Package for BlackBerry Smartphones BlackBerry Pearl 8100 Series User Guide Supplement S/MIME Support Package for BlackBerry Smartphones BlackBerry Pearl 8100 Series SWD-292878-0324093908-001 Contents Certificates...3 Certificate basics...3 Certificate status...5 Certificate

More information

Overview of Cryptographic Tools for Data Security. Murat Kantarcioglu

Overview of Cryptographic Tools for Data Security. Murat Kantarcioglu UT DALLAS Erik Jonsson School of Engineering & Computer Science Overview of Cryptographic Tools for Data Security Murat Kantarcioglu Pag. 1 Purdue University Cryptographic Primitives We will discuss the

More information

Grid Computing - X.509

Grid Computing - X.509 Grid Computing - X.509 Sylva Girtelschmid October 20, 2009 Public Key Infrastructure - PKI PKI Digital Certificates IT infrastructure that provides means for private and secure data exchange By using cryptographic

More information

Lecture 9: Application of Cryptography

Lecture 9: Application of Cryptography Lecture topics Cryptography basics Using SSL to secure communication links in J2EE programs Programmatic use of cryptography in Java Cryptography basics Encryption Transformation of data into a form that

More information

Network Security. Omer Rana

Network Security. Omer Rana Network Security Omer Rana CM0255 Material from: Cryptography Components Sender Receiver Plaintext Encryption Ciphertext Decryption Plaintext Encryption algorithm: Plaintext Ciphertext Cipher: encryption

More information

Brocade Engineering. PKI Tutorial. Jim Kleinsteiber. February 6, 2002. Page 1

Brocade Engineering. PKI Tutorial. Jim Kleinsteiber. February 6, 2002. Page 1 PKI Tutorial Jim Kleinsteiber February 6, 2002 Page 1 Outline Public Key Cryptography Refresher Course Public / Private Key Pair Public-Key Is it really yours? Digital Certificate Certificate Authority

More information

Understanding Digital Certificates on z/os Vanguard Las Vegas, NV Session AST3 June 26th 2012

Understanding Digital Certificates on z/os Vanguard Las Vegas, NV Session AST3 June 26th 2012 Understanding Digital Certificates on z/os Vanguard Las Vegas, NV Session AST3 June 26th 2012 Wai Choi, CISSP IBM Corporation RACF/PKI Development & Design Poughkeepsie, NY e-mail: wchoi@us.ibm.com 1 Trademarks

More information

WIRELESS LAN SECURITY FUNDAMENTALS

WIRELESS LAN SECURITY FUNDAMENTALS WIRELESS LAN SECURITY FUNDAMENTALS Jone Ostebo November 2015 #ATM15ANZ @ArubaANZ Learning Goals Authentication with 802.1X But first: We need to understand some PKI And before that, we need a cryptography

More information

CSCE 465 Computer & Network Security

CSCE 465 Computer & Network Security CSCE 465 Computer & Network Security Instructor: Dr. Guofei Gu http://courses.cse.tamu.edu/guofei/csce465/ Public Key Cryptogrophy 1 Roadmap Introduction RSA Diffie-Hellman Key Exchange Public key and

More information

Symmetric and Public-key Crypto Due April 14 2015, 11:59PM

Symmetric and Public-key Crypto Due April 14 2015, 11:59PM CMSC 414 (Spring 2015) 1 Symmetric and Public-key Crypto Due April 14 2015, 11:59PM Updated April 11: see Piazza for a list of errata. Sections 1 4 are Copyright c 2006-2011 Wenliang Du, Syracuse University.

More information

CS155. Cryptography Overview

CS155. Cryptography Overview CS155 Cryptography Overview Cryptography Is n A tremendous tool n The basis for many security mechanisms Is not n The solution to all security problems n Reliable unless implemented properly n Reliable

More information

Efficient Framework for Deploying Information in Cloud Virtual Datacenters with Cryptography Algorithms

Efficient Framework for Deploying Information in Cloud Virtual Datacenters with Cryptography Algorithms Efficient Framework for Deploying Information in Cloud Virtual Datacenters with Cryptography Algorithms Radhika G #1, K.V.V. Satyanarayana *2, Tejaswi A #3 1,2,3 Dept of CSE, K L University, Vaddeswaram-522502,

More information

Ciphermail S/MIME Setup Guide

Ciphermail S/MIME Setup Guide CIPHERMAIL EMAIL ENCRYPTION Ciphermail S/MIME Setup Guide September 23, 2014, Rev: 6882 Copyright 2008-2014, ciphermail.com. CONTENTS CONTENTS Contents 1 Introduction 3 2 S/MIME 3 2.1 PKI...................................

More information

CALIFORNIA SOFTWARE LABS

CALIFORNIA SOFTWARE LABS ; Digital Signatures and PKCS#11 Smart Cards Concepts, Issues and some Programming Details CALIFORNIA SOFTWARE LABS R E A L I Z E Y O U R I D E A S California Software Labs 6800 Koll Center Parkway, Suite

More information

ELECTRONIC COMMERCE OBJECTIVE QUESTIONS

ELECTRONIC COMMERCE OBJECTIVE QUESTIONS MODULE 13 ELECTRONIC COMMERCE OBJECTIVE QUESTIONS There are 4 alternative answers to each question. One of them is correct. Pick the correct answer. Do not guess. A key is given at the end of the module

More information

Network Security. Security Attacks. Normal flow: Interruption: 孫 宏 民 hmsun@cs.nthu.edu.tw Phone: 03-5742968 國 立 清 華 大 學 資 訊 工 程 系 資 訊 安 全 實 驗 室

Network Security. Security Attacks. Normal flow: Interruption: 孫 宏 民 hmsun@cs.nthu.edu.tw Phone: 03-5742968 國 立 清 華 大 學 資 訊 工 程 系 資 訊 安 全 實 驗 室 Network Security 孫 宏 民 hmsun@cs.nthu.edu.tw Phone: 03-5742968 國 立 清 華 大 學 資 訊 工 程 系 資 訊 安 全 實 驗 室 Security Attacks Normal flow: sender receiver Interruption: Information source Information destination

More information

X.509 Certificate Generator User Manual

X.509 Certificate Generator User Manual X.509 Certificate Generator User Manual Introduction X.509 Certificate Generator is a tool that allows you to generate digital certificates in PFX format, on Microsoft Certificate Store or directly on

More information

Part I. Universität Klagenfurt - IWAS Multimedia Kommunikation (VK) M. Euchner; Mai 2001. Siemens AG 2001, ICN M NT

Part I. Universität Klagenfurt - IWAS Multimedia Kommunikation (VK) M. Euchner; Mai 2001. Siemens AG 2001, ICN M NT Part I Contents Part I Introduction to Information Security Definition of Crypto Cryptographic Objectives Security Threats and Attacks The process Security Security Services Cryptography Cryptography (code

More information

Controller of Certification Authorities of Mauritius

Controller of Certification Authorities of Mauritius Contents Pg. Introduction 2 Public key Infrastructure Basics 2 What is Public Key Infrastructure (PKI)? 2 What are Digital Signatures? 3 Salient features of the Electronic Transactions Act 2000 (as amended)

More information

Public Key Infrastructure (PKI)

Public Key Infrastructure (PKI) Public Key Infrastructure (PKI) In this video you will learn the quite a bit about Public Key Infrastructure and how it is used to authenticate clients and servers. The purpose of Public Key Infrastructure

More information

Cryptography & Network Security

Cryptography & Network Security Cryptography & Network Security Lecture 1: Introduction & Overview 2002. 3. 27 chlim@sejong.ac.kr Common Terms(1) Cryptography: The study of mathematical techniques related to aspects of information security

More information

Digital Certificates Demystified

Digital Certificates Demystified Digital Certificates Demystified Alyson Comer IBM Corporation System SSL Development Endicott, NY Email: comera@us.ibm.com February 7 th, 2013 Session 12534 (C) 2012, 2013 IBM Corporation Trademarks The

More information

SSL Protect your users, start with yourself

SSL Protect your users, start with yourself SSL Protect your users, start with yourself Kulsysmn 14 december 2006 Philip Brusten Overview Introduction Cryptographic algorithms Secure Socket Layer Certificate signing service

More information

Cryptographic Services Guide

Cryptographic Services Guide Cryptographic Services Guide Contents About Cryptographic Services 5 At a Glance 5 Encryption, Signing and Verifying, and Digital Certificates Can Protect Data from Prying Eyes 5 OS X and ios Provide Encryption

More information

Encryption, Data Integrity, Digital Certificates, and SSL. Developed by. Jerry Scott. SSL Primer-1-1

Encryption, Data Integrity, Digital Certificates, and SSL. Developed by. Jerry Scott. SSL Primer-1-1 Encryption, Data Integrity, Digital Certificates, and SSL Developed by Jerry Scott 2002 SSL Primer-1-1 Ideas Behind Encryption When information is transmitted across intranets or the Internet, others can

More information

Djigzo S/MIME setup guide

Djigzo S/MIME setup guide Author: Martijn Brinkers Table of Contents...1 Introduction...3 Quick setup...4 Create a CA...4 Fill in the form:...5 Add certificates for internal users...5 Add certificates for external recipients...7

More information

Certificate Management. PAN-OS Administrator s Guide. Version 7.0

Certificate Management. PAN-OS Administrator s Guide. Version 7.0 Certificate Management PAN-OS Administrator s Guide Version 7.0 Contact Information Corporate Headquarters: Palo Alto Networks 4401 Great America Parkway Santa Clara, CA 95054 www.paloaltonetworks.com/company/contact-us

More information

1720 - Forward Secrecy: How to Secure SSL from Attacks by Government Agencies

1720 - Forward Secrecy: How to Secure SSL from Attacks by Government Agencies 1720 - Forward Secrecy: How to Secure SSL from Attacks by Government Agencies Dave Corbett Technical Product Manager Implementing Forward Secrecy 1 Agenda Part 1: Introduction Why is Forward Secrecy important?

More information

Introduction to Computer Security

Introduction to Computer Security Introduction to Computer Security Hash Functions and Digital Signatures Pavel Laskov Wilhelm Schickard Institute for Computer Science Integrity objective in a wide sense Reliability Transmission errors

More information

Electronic Mail Security. Email Security. email is one of the most widely used and regarded network services currently message contents are not secure

Electronic Mail Security. Email Security. email is one of the most widely used and regarded network services currently message contents are not secure Electronic Mail Security CSCI 454/554 Email Security email is one of the most widely used and regarded network services currently message contents are not secure may be inspected either in transit or by

More information

EXAM questions for the course TTM4135 - Information Security May 2013. Part 1

EXAM questions for the course TTM4135 - Information Security May 2013. Part 1 EXAM questions for the course TTM4135 - Information Security May 2013 Part 1 This part consists of 5 questions all from one common topic. The number of maximal points for every correctly answered question

More information

CSE/EE 461 Lecture 23

CSE/EE 461 Lecture 23 CSE/EE 461 Lecture 23 Network Security David Wetherall djw@cs.washington.edu Last Time Naming Application Presentation How do we name hosts etc.? Session Transport Network Domain Name System (DNS) Data

More information

Understanding Digital Certificates and Secure Sockets Layer (SSL)

Understanding Digital Certificates and Secure Sockets Layer (SSL) Understanding Digital Certificates and Secure Sockets Layer (SSL) Author: Peter Robinson January 2001 Version 1.1 Copyright 2001-2003 Entrust. All rights reserved. Digital Certificates What are they?

More information

Cryptography and Network Security

Cryptography and Network Security Cryptography and Network Security Spring 2012 http://users.abo.fi/ipetre/crypto/ Lecture 11: Email security: PGP and S/MIME Ion Petre Department of IT, Åbo Akademi University February 14, 2012 1 Email

More information

Message authentication and. digital signatures

Message authentication and. digital signatures Message authentication and " Message authentication digital signatures verify that the message is from the right sender, and not modified (incl message sequence) " Digital signatures in addition, non!repudiation

More information

Cryptography and Network Security Chapter 15

Cryptography and Network Security Chapter 15 Cryptography and Network Security Chapter 15 Fourth Edition by William Stallings Lecture slides by Lawrie Brown Chapter 15 Electronic Mail Security Despite the refusal of VADM Poindexter and LtCol North

More information

Security. Friends and Enemies. Overview Plaintext Cryptography functions. Secret Key (DES) Symmetric Key

Security. Friends and Enemies. Overview Plaintext Cryptography functions. Secret Key (DES) Symmetric Key Friends and Enemies Security Outline Encryption lgorithms Protocols Message Integrity Protocols Key Distribution Firewalls Figure 7.1 goes here ob, lice want to communicate securely Trudy, the intruder

More information

Transport Level Security

Transport Level Security Transport Level Security Overview Raj Jain Washington University in Saint Louis Saint Louis, MO 63130 Jain@cse.wustl.edu Audio/Video recordings of this lecture are available at: http://www.cse.wustl.edu/~jain/cse571-14/

More information

Key & Data Storage on Mobile Devices

Key & Data Storage on Mobile Devices Key & Data Storage on Mobile Devices Advanced Computer Networks 2015/2016 Johannes Feichtner johannes.feichtner@iaik.tugraz.at Outline Why is this topic so delicate? Keys & Key Management High-Level Cryptography

More information

Lecture VII : Public Key Infrastructure (PKI)

Lecture VII : Public Key Infrastructure (PKI) Lecture VII : Public Key Infrastructure (PKI) Internet Security: Principles & Practices John K. Zao, PhD (Harvard) SMIEEE Computer Science Department, National Chiao Tung University 2 Problems with Public

More information

Data Protection: From PKI to Virtualization & Cloud

Data Protection: From PKI to Virtualization & Cloud Data Protection: From PKI to Virtualization & Cloud Raymond Yeung CISSP, CISA Senior Regional Director, HK/TW, ASEAN & A/NZ SafeNet Inc. Agenda What is PKI? And Value? Traditional PKI Usage Cloud Security

More information

CSE543 - Introduction to Computer and Network Security. Module: Public Key Infrastructure

CSE543 - Introduction to Computer and Network Security. Module: Public Key Infrastructure CSE543 - Introduction to Computer and Network Security Module: Public Key Infrastructure Professor Trent Jaeger 1 Meeting Someone New Anywhere in the Internet 2 What is a certificate? A certificate makes

More information

12/3/08. Security in Wireless LANs and Mobile Networks. Wireless Magnifies Exposure Vulnerability. Mobility Makes it Difficult to Establish Trust

12/3/08. Security in Wireless LANs and Mobile Networks. Wireless Magnifies Exposure Vulnerability. Mobility Makes it Difficult to Establish Trust Security in Wireless LANs and Mobile Networks Wireless Magnifies Exposure Vulnerability Information going across the wireless link is exposed to anyone within radio range RF may extend beyond a room or

More information

Usable Crypto: Introducing minilock. Nadim Kobeissi HOPE X, NYC, 2014

Usable Crypto: Introducing minilock. Nadim Kobeissi HOPE X, NYC, 2014 Usable Crypto: Introducing minilock Nadim Kobeissi HOPE X, NYC, 2014 2012 Browsers are an environment that is hostile to cryptography Malleability of the JavaScript runtime. The lack of low-level (system-level)

More information

Authentication Types. Password-based Authentication. Off-Line Password Guessing

Authentication Types. Password-based Authentication. Off-Line Password Guessing Authentication Types Chapter 2: Security Techniques Background Secret Key Cryptography Public Key Cryptography Hash Functions Authentication Chapter 3: Security on Network and Transport Layer Chapter 4:

More information

Chapter 8. Cryptography Symmetric-Key Algorithms. Digital Signatures Management of Public Keys Communication Security Authentication Protocols

Chapter 8. Cryptography Symmetric-Key Algorithms. Digital Signatures Management of Public Keys Communication Security Authentication Protocols Network Security Chapter 8 Cryptography Symmetric-Key Algorithms Public-Key Algorithms Digital Signatures Management of Public Keys Communication Security Authentication Protocols Email Security Web Security

More information

Network Security. Computer Networking Lecture 08. March 19, 2012. HKU SPACE Community College. HKU SPACE CC CN Lecture 08 1/23

Network Security. Computer Networking Lecture 08. March 19, 2012. HKU SPACE Community College. HKU SPACE CC CN Lecture 08 1/23 Network Security Computer Networking Lecture 08 HKU SPACE Community College March 19, 2012 HKU SPACE CC CN Lecture 08 1/23 Outline Introduction Cryptography Algorithms Secret Key Algorithm Message Digest

More information

Security Digital Certificate Manager

Security Digital Certificate Manager System i Security Digital Certificate Manager Version 5 Release 4 System i Security Digital Certificate Manager Version 5 Release 4 Note Before using this information and the product it supports, be sure

More information

Configuring Security Features of Session Recording

Configuring Security Features of Session Recording Configuring Security Features of Session Recording Summary This article provides information about the security features of Citrix Session Recording and outlines the process of configuring Session Recording

More information

Properties of Secure Network Communication

Properties of Secure Network Communication Properties of Secure Network Communication Secrecy: Only the sender and intended receiver should be able to understand the contents of the transmitted message. Because eavesdroppers may intercept the message,

More information

Chapter 7: Network security

Chapter 7: Network security Chapter 7: Network security Foundations: what is security? cryptography authentication message integrity key distribution and certification Security in practice: application layer: secure e-mail transport

More information

Number of relevant issues

Number of relevant issues Electronic signature Lecture 8 Number of relevant issues cryptography itself algorithms for signing documents key management generating keys, distribution, key revocation security policy certificates may

More information

Common Pitfalls in Cryptography for Software Developers. OWASP AppSec Israel July 2006. The OWASP Foundation http://www.owasp.org/

Common Pitfalls in Cryptography for Software Developers. OWASP AppSec Israel July 2006. The OWASP Foundation http://www.owasp.org/ Common Pitfalls in Cryptography for Software Developers OWASP AppSec Israel July 2006 Shay Zalalichin, CISSP AppSec Division Manager, Comsec Consulting shayz@comsecglobal.com Copyright 2006 - The OWASP

More information

Security. Learning Objectives. This module will help you...

Security. Learning Objectives. This module will help you... Security 5-1 Learning Objectives This module will help you... Understand the security infrastructure supported by JXTA Understand JXTA's use of TLS for end-to-end security 5-2 Highlights Desired security

More information

CLOUD COMPUTING SECURITY ARCHITECTURE - IMPLEMENTING DES ALGORITHM IN CLOUD FOR DATA SECURITY

CLOUD COMPUTING SECURITY ARCHITECTURE - IMPLEMENTING DES ALGORITHM IN CLOUD FOR DATA SECURITY CLOUD COMPUTING SECURITY ARCHITECTURE - IMPLEMENTING DES ALGORITHM IN CLOUD FOR DATA SECURITY Varun Gandhi 1 Department of Computer Science and Engineering, Dronacharya College of Engineering, Khentawas,

More information

SECURITY IN NETWORKS

SECURITY IN NETWORKS SECURITY IN NETWORKS GOALS Understand principles of network security: Cryptography and its many uses beyond confidentiality Authentication Message integrity Security in practice: Security in application,

More information

SSL BEST PRACTICES OVERVIEW

SSL BEST PRACTICES OVERVIEW SSL BEST PRACTICES OVERVIEW THESE PROBLEMS ARE PERVASIVE 77.9% 5.2% 19.2% 42.3% 77.9% of sites are HTTP 5.2% have an incomplete chain 19.2% support weak/insecure cipher suites 42.3% support SSL 3.0 83.1%

More information

CS 392/681 - Computer Security

CS 392/681 - Computer Security CS 392/681 - Computer Security Module 3 Key Exchange Algorithms Nasir Memon Polytechnic University Course Issues HW 3 assigned. Any lab or course issues? Midterm in three weeks. 8/30/04 Module 3 - Key

More information

Authenticity of Public Keys

Authenticity of Public Keys SSL/TLS EJ Jung 10/18/10 Authenticity of Public Keys Bob s key? private key Bob public key Problem: How does know that the public key she received is really Bob s public key? Distribution of Public Keys!

More information