User Tools

Site Tools


sha2

SHA-2

SHA-2 je funkcija sažetka (hash funkcija) temeljena na istoj konstrukciji kao SHA-1 (Merkle-Damgård) i ima identične principe nadopunjavanja, ali uz značajno izmijenjene funkcije po kojima se sažetak računa. SHA-2 dolazi u 4 verzije različitih duljina ulaznog bloka – SHA-224, SHA-256, SHA-384 i SHA-512.

Pobliže ćemo proučiti verziju SHA-256.

U SHA-256 inicijalne heksadekadske vrijednosti 512-bitnog sažetka H su:

 	A0 = 6A09E667		B0 = BB67AE85 		C0 = 3C6EF372		D0 = A54FF53A	
	E0 = 510E527F		F0 = 9b05688C		G0 = 1F83D9AB 		H0 = 5BE0CD19

Zatim se obavljaju 64 runde računskih operacija po zadanim funkcijama i konstantama, uz zbrajanje po modulu 232 :

Ch(X, Y, Z)  = (X ^ Y) v (!X ^ Z) 
Maj(X, Y, Z) = (X ^ Y) v (X ^ Z) v (X ^ Z)

S0(x) = ROTR2(x) ⊕ ROTR13(x) ⊕ ROTR22(x)
S1(x) = ROTR6(x) ⊕ ROTR11(x) ⊕ ROTR22(x)
F0(x) = ROTR7(x) ⊕ ROTR18(x) ⊕ SHR3(x) F1(x) = ROTR17(x)⊕ ROTR19(x) ⊕ SHR10(x)

Kt=5A827999				0 ≤ t ≤ 15
Kt=6Ed9EBA1				16 ≤ t ≤ 31
Kt=8F1BBCDC				32 ≤ t ≤ 47
Kt=CA62C1D6				48 ≤ t ≤ 64 		

 SHA-2 shema Trenutno najbolji objavljeni napadi (Biclique napadi, varijanta meet-in-the-middle) na SHA-2 „lome“ samo 52 od 64 runde SHA-256, odnosno 57/80 rundi SHA-512. SHA-2 se stoga još uvijek smatra sigurnim i široko primjenjivim. Danas se koristi za osiguravanje komunikacijskih protokola (TLS, SSL, SSH, Ipsec), autentifikaciju paketa i poruka (DKIM) te verifikaciju transakcija (Bitcoin).

Izvori

[1] Christof Paar, Jan Pelzl, Understanding Cryptography, Springer-Verlag Berlin Heidelberg, 2009.
[2] https://platforma.hacknite.hr/challenges
[3] Kriptografija i kriptoanaliza, predavanja, FER
[4] http://csrc.nist.gov/publications/fips/fips180-2/fips180-2.pdf
[5] https://eprint.iacr.org/2011/286.pdf

sha2.txt · Last modified: 2023/11/20 12:23 by 127.0.0.1

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki