SHA proširenja instrukcija
Naziva se i SHA
Izvorno x86 prosirenje SHA ubrzava odabrane operacije koje se koriste u SHA-1 i SHA-256. Opcenita oznaka znacajke SHA ne uspostavlja hardversku podrsku za svaki algoritam SHA.
Što trebate znati
Izvorno x86 prosirenje SHA ubrzava odabrane operacije koje se koriste u SHA-1 i SHA-256. Opcenita oznaka znacajke SHA ne uspostavlja hardversku podrsku za svaki algoritam SHA.
Kako funkcionira
Izvorno prosirenje pruza instrukcije za raspored poruka i obradu rundi za SHA-1 i SHA-256. Softver i dalje izvodi ispunjavanje, upravljanje blokovima i potpunu konstrukciju sazetka. SHA-256 pripada skupini SHA-2, no SHA-512 i SHA-3 imaju razlicite algoritme i ne smiju se izvoditi iz izvornog bita znacajke.
Gdje je korisno
Biblioteka za sazimanja moze odabrati specijaliziranu rutinu kompresije SHA-256 kada je prosirenje upotrebljivo. Male poruke mogu provesti znacajno vrijeme u postavljanju i okolnom kodu, dok veca radna opterecenja ovise i o memoriji i paralelizmu.
Kako provjeriti podršku i omogućavanje
Za izvorno prosirenje SHA provjerite CPUID.07H.00H:EBX bit 29 nakon validacije podrske za list. Provjerite algoritam i tocnu obitelj instrukcija koje biblioteka zahtijeva, a ne samo opcenitu oznaku sha koju prikazuje uslužni program.
Koristite održavanu kriptografsku implementaciju koja upravlja odabirom značajki, uvjetima pogrešaka i potpunim algoritmom. Hardversko ubrzanje pruža primitive; upravljanje ključevima, autentifikacija, pravila za jednokratne brojeve (nonce) i izbori protokola ostaju odgovornost softvera.
Što ova značajka ne utvrđuje
Postojanje instrukcije ne cini SHA-1 prikladnim za novi sigurnosni protokol. Hardversko ubrzanje ne mijenja otpornost algoritma na kolizije niti popravlja nesiguran dizajn protokola. Kasnija prosirenja SHA512 imaju zasebnu enumeraciju.
Kompatibilnost i performanse u praksi
Polje značajke nije certifikacija proizvoda niti dokaz da je određena aplikacija sigurna. Performanse ovise o veličinama poruka, načinu rada, obradi u serijama i ostatku protokola. Provjerite stvarnog pružatelja usluga i održavajte njegova sigurnosna ažuriranja ažurnima.
Praktičan kontrolni popis za provjeru
- Zabilježite točan model procesora ili platforme te verzije aplikacije, OS-a i izvršnog okruženja. Sačuvajte formulaciju stvarne pogreške ili zahtjeva.
- Provjerite proizvođačevu referencu za taj točan model, a zatim pregledajte stvarnu sposobnost i omogućeno stanje u okruženju u kojem se program izvodi.
- Usporedite svaki zahtjev odabrane binarne datoteke ili pozadinskog sustava. Slično nazvana značajka, pseudonim ili široka tehnološka oznaka nisu dovoljni.
- Potvrdite da je aplikacija odabrala predviđenu implementaciju. Koristite njezinu dokumentiranu dijagnostiku i podržanu zamjensku opciju kada zahtjevi nisu ispunjeni.
- Napravite jednu po jednu podržanu promjenu i ponovite isto radno opterećenje. Zadržite izvornu konfiguraciju i put oporavka dostupnima.
Ako je značajka navedena, ali je softver ne može koristiti
Počnite s točnom komponentom koja zakazuje. Hardverska baza podataka opisuje zabilježenu sposobnost; operacijski sustav ili hipervizor mogu izložiti drukčije stvarno okruženje. Pogreška nedopuštene instrukcije također zahtijeva istragu stvarne instrukcije koja uzrokuje pogrešku i binarne građe, jer oštećenje ili nepovezana nepodržana instrukcija mogu proizvesti sličan simptom.
Instalirajte verziju aplikacije, upravljačkog programa ili izvršnog okruženja podržanu za točnu platformu i upotrijebite proizvođačevu dokumentiranu osnovnu ili zamjensku građu ako je potrebno. Softversko ažuriranje ne može stvoriti instrukciju koja procesoru nedostaje. Promjene u firmwareu i sigurnosnim pravilima trebaju slijediti postupak proizvođača sustava i plan oporavka, a ne generički recept za optimizaciju.
Izvori i opseg ovog objašnjenja
Intel 64 and IA-32 Architectures Software Developer's Manual · NIST Secure Hash Standard, FIPS 180-4
Ove reference utvrđuju arhitekturno ponašanje i softverske zahtjeve. One ne verificiraju neovisno svaku vrijednost značajke na povezanoj stranici hardverskog modela. Za podršku modela upotrijebite proizvođačeve dokaze s te stranice i provjerite stvarnu konfiguraciju sustava. Ovaj članak ne pruža mjerilo performansi, certifikaciju ili datum neovisnog pregleda.
Izvori i provjera
Uredničko vlasništvo: Feex. Nije zabilježen datum neovisnog pregleda. Kako istražujemo.
- Intel 64 and IA-32 Architectures Software Developer's Manual · Svesci 1 i 2 opisuju imenovane obitelji instrukcija i CPUID; Svezak 3 opisuje stanje, straničenje, VMX i kontrole zaštite. Dokumentacija arhitekture ne utvrđuje podršku za određeni model.
- NIST Secure Hash Standard, FIPS 180-4 · Definira navedene algoritme SHA. Definicije algoritama ne impliciraju da izvorno x86 prosirenje SHA ubrzava svakog clana.
Je li ovaj članak bio koristan?
Dovoljno je odgovoriti s da ili ne. Odaberite razlog ako želite ili dodajte kratku bilješku.
Hvala. To nam pomaže poboljšati ovu stranicu.