1 / 13

PKCS #5 v2.0: Password-Based Cryptography Standard

PKCS #5 v2.0: Password-Based Cryptography Standard. Csercsa Richárd. 2006. 05. 12. Mire használják?. A nyilvános-kulcsú kriptográfiában sok helyen jelszavak védik a biztonságot A jelszavak önmagukban nem használhatók kulcsként

xue
Download Presentation

PKCS #5 v2.0: Password-Based Cryptography Standard

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. PKCS #5 v2.0: Password-Based Cryptography Standard Csercsa Richárd 2006. 05. 12.

  2. Mire használják? • A nyilvános-kulcsú kriptográfiában sok helyen jelszavak védik a biztonságot • A jelszavak önmagukban nem használhatók kulcsként • Szükség van olyan módszerekre, amik a jelszavakból kulcsot állítanak elő

  3. Jelszavak biztonsága Daniel V. Klein, 1991 ftp://ftp.cerias.purdue.edu/pub/dict/dictionaries/DanKlein/

  4. Salt • Robert Morris, Ken Thompson (1979) • Egy jelszóhoz sok kulcs tartozik, a salt az index, ami megmutatja, melyiket használják • A jelszó után illesztik DK = KDF(P,S) • 64 bites salt → 264 kulcs minden jelszóhoz • Ugyanazon kulcs választásának esélye csak 232 kulcs generálása esetén lesz jelentős

  5. Iteration count • Célszerű költséges kulcsgeneráló függvényeket használni, ezek növelik a kimerítő keresés költségét • Pl.: egy belső függvény iterálása • Kódolásnál 1000-szer ismételni egy eljárást nem nagy teher, megfejteni viszont már az

  6. PBKDF1 T1= Hash(P║S) T2= Hash(T1) … Tc= Hash(Tc-1) DK=Tc<0…dkLen-1> Túl rövid kulcsot eredményez. Hash függvény lehet MD2 (16 byte), MD5 (16 byte), SHA-1 (20 byte).

  7. PBKDF2 T1= U1 XOR U2 XOR … XOR Uc U1= PRF(P,S║Int(1)) U2= PRF(U1) … Uc= PRF(Uc-1) Int(1): 1 négy-byte-os kódolt reprezentációja

  8. PBKDF2 T2= U1 XOR U2 XOR … XOR Uc U1= PRF(P,S║Int(2)) U2= PRF(U1) … Uc= PRF(Uc-1) Int(2): 2 négy-byte-os kódolt reprezentációja DK = T1║T2║…║Tl

  9. PBES1 • 16 byte hosszú kulcs generálása: DK = PBKDF1(P,S,c,16) Ennek első fele lesz a kulcs, második fele az IV. 2.Üzenet kiegészítése úgy, hogy a hossza nyolccal osztható legyen. A kiegészítés minden byte-jának értéke a kiegészítés hossza. PS = 01, ha ║M║mod 8 = 7 PS = 02 02, ha ║M║mod 8 = 6 PS = 03 03 03, ha ║M║mod 8 = 5

  10. PBES1 3. Kódolás blokk kódolóval Például DES-CBC: 56 bites kulcs + 8 paritás bit vagy RC2: 64 bites kulcs Hash függvény lehet MD2, MD5, SHA-1.

  11. PBES2 • PBKDF2 és egy kódolási eljárás ötvözete • A kulcs hossza, IV, padding, stb. a kódolási eljárástól függ

  12. PBMAC1 • PBKDF2 és egy authentikálási eljárás ötvözete. • Például HMAC-SHA1 (álvéletlen generátor, változó kulcshossz, 20 byte-os MAC) • Bemenetként a jelszó lesz a kulcs, a salt a szöveg: HMAC-SHA1(P,S)

  13. Köszönöm a figyelmet! http://www.rsasecurity.com/rsalabs/pkcs/pkcs-5/ http://csrc.nist.gov/pki/twg/y2003/presentations/twg-03-06.pdf http://www.abisoft.net/documents/PasswordBasedCryptography.pdf http://www.cs.unibo.it/~sacerdot/doc/papers/Morris-PasswordSecurity.pdf http://www.klein.com/dvk/publications/passwd.pdf http://geodsoft.com/howto/password/

More Related