1 / 22

Nøkkelforhandlingsprotokoller

Nøkkelforhandlingsprotokoller. NKS 2004 Geir.Johansen@no.thalesgroup.com www.thales-communications.no. Innhold. Oversikt protokoller Sammenligning protokoller Eksempel fra Thales Trusted VPN løsning. Protokoller.

stacy
Download Presentation

Nøkkelforhandlingsprotokoller

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Nøkkelforhandlingsprotokoller NKS 2004 Geir.Johansen@no.thalesgroup.com www.thales-communications.no

  2. Innhold • Oversikt protokoller • Sammenligning protokoller • Eksempel fra Thales Trusted VPN løsning

  3. Protokoller • Skal være en standardisert måte å forhandle nøkler mellom (typisk) to enheter som ikke har felles hemmelighet i utgangspunktet • Diffie-Hellman • MQV • EC-MQV • Disse algoritmene bakes ofte inn i IKE (IPsec).

  4. Felles / terminologi • En Kropp Fq • q|p-1 s.a. GF(p)* har en undegruppe av orden q • Generator g av orden q • i er initiator og r er responder

  5. Diffe-Hellman • Eksisterende nøkkelpar er hhv • (xi ,yi=gxi) og (xr ,yr=gxr) • De to utveksler sine offentlige nøkler, yi og yr. • Den felles hemmelige nøkkelen er da: • K= yi• gxr= gxi • gxr = gxi•xr = yr• gxi= gxr • gxi = gxr•xi = gxr•xi • Alt: Generere tilfeldige verdier Ri , Rr • som også brukes som eksponenter (MTI/C1). • K= gxiRi • gxrRr

  6. Diffe-Hellman i IKE (RFC 2409) PHASE 1: Initiator Responder ----------- ----------- HDR, SA --> <-- HDR, SA HDR, KE, Ni --> <-- HDR, KE, Nr HDR*, IDii, [ CERT, ] SIG_I --> <-- HDR*, IDir, [ CERT, ] SIG_R PHASE 2: Initiator Responder ----------- ----------- HDR*, HASH(1), SA, Ni [, KE ] [, IDci, IDcr ] --> <-- HDR*, HASH(2), SA, Nr [, KE ] [, IDci, IDcr ] HDR*, HASH(3) --> KEYMAT = prf(SKEYID_d, g(qm)^xy | protocol | SPI | Ni_b | Nr_b) where g(qm)^xy is the shared secret from the ephemeral Diffie-Hellman exchange of this Quick Mode. SKEYID_d = prf(SKEYID, g^xy | CKY-I | CKY-R | 0) SKEYID = prf(Ni_b | Nr_b, g^xy)

  7. MQV • Eksisterende nøkkelpar er hhv • (si ,gsi) og (sr ,gsr) • i genererer tilfeldig xi, beregner Ri=gxi og sender til r • r genererer tilfeldig xr, beregner Rr=gxr og sender til i • i beregner ki=(xi+f(Ri)si) mod n og • K=(Rr•gsr•f(Rr))hki • r beregner kr=(xr+f(Rr)sr) mod n og • K=(Ri•gsi•f(Ri))hkr • Der f(X) er en funksjon of h er en konstant.

  8. NIST SP 800-56 (MQV)

  9. MQV - EC • Spesifisert som MQV i endelig kropp. • Regner med punkter på Elliptisk kurve. Generator er punktet P. • F(X) er ‘siste halvdel’ av x verdien til punkt på kurve. h er kofaktor til gruppen av punkter.

  10. Sammenligning

  11. Sertifikater og nøkler i Thales Trusted VPNTM

  12. Systemoversikt 1/2 Mobile Brukere Internet Mobile VPN forbindelser VPN konsentrator Hjemmekontor

  13. Systemoversikt 2/2

  14. AES kryptert tunnel Hjemmenett VPN konsentrator Internett Etablert VPN tunnel

  15. Sertifikat utstedt av: CA er en applikasjon som genererer/ utsteder sertifikater (Cert)SK = secret key (private key) TeS Manufacturer (Thales) CertThaleser hardkodet i alle kryptoenheter SKThales CertThales CAUniversal Manufacturer (Thales) (signert av SKThales) SKUniversal, CertUniversal og DHUniversal, leveres med Element Manager SKUniversal CertUniversal CACustomer Customer (signert av SKUniversal) Genereres ved hjelp av Certificate Manager SKCustomer CertCustomer Customer (opsjonell CA) (signert av SKCustomer) CANetwork A CANetwork B Genereres ved hjelp av Certificate Manager SKNetwork A CertNetwork A SKNetwork B CertNetwork B Crypto unit 2 Crypto unit 3 Crypto unit 1 Genereres i kryptoenhetene Signeres av Key Manager Customer (signert av SKNetwork) SKOwn CertOwn SKOwn CertOwn SKOwn CertOwn Sertifikat hierarki

  16. SW RNG SKCA CertCA DHCA Element Manager Security Manager Signed Own certificate CA certificate SK = Secret key Own public key (PK) PK = Public key DH parameters DH = Diffie-Hellman CA = Certificate Authority NVD RNG = Random Number Generator CertCA CertOwn SKOwn NVD = Nomadic VPN Device Certificate Manager Generering/lasting av sertifikater 1/2

  17. Security Administrator PC Security Manager application Nomadic VPN Device Key Manager function Secure Controller Certificate generation function Processor system PC Card driver FPGA 7 3 4 7 2 2 6 7 1 5 Generering/lasting av sertifikater 2/2 • Operator starting the generation of the keys and NVD certificate • Generate key pair • Return NVD public key • Send NVD certificate for signing • Return signed NVD certificate • Send NVD certificate for storage • Send confirmation on operation completed

  18. Sertifikater

  19. Nøkler Etablering av KEK (pr. NVD – DC2K forbindelse) • KEK= Key Encryptoion Key. Brukes til å beregne DEK • Diffie-Hellman basert • Utveksling av ‘Own certificates’ som verifiseres v.hj.a. den offentlige nøkkelen i et CA-sertifikat felles for NVD og DC2K Etablering av DEK (pr. NVD – DC2K forbindelse) • DEK = Data Encryption Key = trafikknøkkel • Forskjellig sender og mottaker DEK • KEK benyttes i beregningene av T-DEK, R-DEK og T-IV

  20. Nomadic VPN Device (Unit A) DC2K (Unit B) Predistributert/generert informasjon: Held certificate serial numbers CA certificate, DH parametre, B, gB mod(p) CA certificate DH parametre (g, p) A = own private key gA mod(p) = own public key Valid certificate serial numbers Exchange request Certification methods (incl. CA id.) Own certificate (incl. gA / gB) Verifiserer DC2K sertifikat Verifiserer NVD sertifikat Available KEK algorithms Genererer random a, beregner ga mod(p) Genererer random b, beregner gb mod(p) KEK data transfer (ga / gb) Beregner KEK og KEKval Genererer challenge = ChallA Beregner KEK og KEKval Genererer ChallB Challenge Beregner respons = 3<ChallB>KEKval Beregner respons Response Verifiserer respons = 3<ChallA>KEKval-1 Verifiserer respons ACK B, b, KEK og KEKval er hemmelige verdier A, a, KEK og KEKval er hemmelige verdier KEK etablering

  21. Nomadic VPN Device (Unit A) DC2K (Unit B) Pre-generert information: Exchange request KEK KEK DEK unit name KEKs serial numbers Available DEK algorithms Genererer random verdier: TKA, RKA, TIVA, RIVA Genererer random verdier: TKB, RKB, TIVB, RIVB DEK data transfer (TK, RK, TIV, RIV) Beregner: Transmit DEKA = Receive DEKB Receive DEKA = Transmit DEKB Transmit IVA Beregner: Transmit DEKB= Receive DEKA Receive DEKB= Transmit DEKA Transmit IVB Challenge Response ACK T- DEKA og R- DEKA er hemmelige verdier T- DEKB og R- DEKB er hemmelige verdier DEK etablering

  22. Spørsmål

More Related