3. X.509 (PKIX) Certifikat
X.509 är en ITU-standard för en publik nyckelinfrastruktur
(PKI)
• Format för publika certifikat
• Certifikat-förfrågningar
• Revokeringslistor
• Certifikatsvalideringsalgoritmer
!
X.509 är utvecklat för att hantera X.500-strukturen
(katalogtjänster för OSI), och passar ganska dåligt in på det
“nya” Internet.
!
PKIX inom IETF om du vill följa det löpande öppna arbetet…
4. ASN.1
ASN.1,Abstract Syntax Notation One är ett standardiserat
formellt språk (ISO-IEC 8824) som används för att
representera data på ett implementationsoberoende sätt,
och därmed möjliggöra informationsutbyte mellan olika
applikationer, exempelvis via SNMP.
!
Källa:Wikipedia
5. Abstract Syntax Notation One
Certificate!
■ Version!
■ Serial Number!
■ Algorithm ID!
■ Issuer!
■ Validity!
■ Not Before!
■ Not After!
■ Subject!
■ Subject Public Key Info!
■ Public Key Algorithm!
■ Subject Public Key!
■ Issuer Unique Identifier (optional)!
■ Subject Unique Identifier (optional)!
■ Extensions (optional)!
■ ...!
Certificate Signature Algorithm!
Certificate Signature
6.
7.
8. SSL/TLS-versioner
SSL!
Version 1.0 togs fram av Netscape
Version 2.0 - 1995
Version 3.0 - 1996
!
TLS!
Version 1.0, RFC 2246 januari 1999
Version 1.1, RFC 4346 april 2006
Version 1.2, RFC 5246 augusti 2008
11. Var används TLS?
Transport Layer Security
HTTP, SMTP, IMAP, XMPP,Tor och SIP
!
Network layer security (VPN)
IPSEC med IKE, SSL-VPN
!
Data link layer security
802.11i och 802.1AE, med EAP-TLS, EAP-TTLS och PEAP
!
Message level protection
Cryptographic Message Syntax (CMS) för S/MIME, XML-DSig
!
Code signing
Microsoft Authenticode,Apple, Java- och Javascript JAR och Mozilla
NSS
12. Client Server
1: Send SSL version and known ciphers
1.1: Send SSL version and ciphers
1.2: Send identification
1.3: Send server public key
2: Create "pre-master" secret key
2.1: Encrypt "pre-master" with server public key
2.2: Send "pre-master" to server,
along with client cert if requested
2.2.1: Decrypt "pre-master"
with server private key
2.2.2: Generate master
secret and session key
2.3: Generate master secret and session key
3: Send message "handshake complete"
encrypted with session key
3.1: Send message "handshake complete",
encrypted with session key
All subsequent communications are encrypted
symetrically using the session key
13. TLS Uppkoppling…
SSL handshake has read 3704 bytes and written 369 bytes
---
New, TLSv1/SSLv3, Cipher is DHE-RSA-AES256-SHA
Server public key is 1024 bit
Secure Renegotiation IS supported
Compression: zlib compression
Expansion: zlib compression
SSL-Session:
Protocol : SSLv3
Cipher : DHE-RSA-AES256-SHA
Session-ID:
957EFAD0005EBB32BD7ACBDEB725A93A205557D4B896A98E1CFF22DEB1E31D15
Session-ID-ctx:
Master-Key:
6798E56776F96967C13791AAE5980709887A17AEDE19491F9257401151D6656BD8756C551BF19
36BA1308D764F793721
Key-Arg : None
PSK identity: None
PSK identity hint: None
Compression: 1 (zlib compression)
Start Time: 1306589571
Timeout : 7200 (sec)
14. Prestanda på handskakning
Median: 296ms
Medel: 351ms
Webbserver Medel
Jetty 500ms
Lotus-Domino 399ms
Microsoft IIS 6.0 361ms
Apache* 341ms
lighthttpd 326ms
Microsoft IIS 7.* 322ms
ngingx 293ms
BigIP 293ms
15. Användning i .se
• 13283 hittade tjänster med
SSL på port 443.
• 10994 giltiga certifikat.
• Giltiga certifikat är gjorda av
72 stycken utfärdare.
17. Trasiga kedjor
Många köper certifikat som kräver konfiguration av “Intermediary
CAs”. Att lägga in dessa i webbserverns konfiguration är viktigt,
annars kan inte webbservern validera certifikatkedjan.
1000
0
100
200
300
400
500
600
700
800
900
Hosts
Unneded certificates
Incomplete chains
Wrong order