Hardverski RNG
Oznaka hardverskog RNG-a znači da je za dio zabilježena hardverska mogućnost generatora slučajnih brojeva. Sama oznaka ne specificira točno sučelje instrukcije, omogućeno okruženje niti razinu kriptografske sigurnosti.
Što trebate znati
Oznaka hardverskog RNG-a znači da je za dio zabilježena hardverska mogućnost generatora slučajnih brojeva. Sama oznaka ne specificira točno sučelje instrukcije, omogućeno okruženje niti razinu kriptografske sigurnosti.
Kako funkcionira
Na x86 arhitekturi softver može naići na zasebno enumerirana sučelja RDRAND i RDSEED. Ona imaju različite uloge i izvještavanje o uspjehu. Hardverski izvor obično sudjeluje u širem dizajnu slučajnosti OS-a ili biblioteke koji upravlja kondicioniranjem, postavljanjem početne vrijednosti, neuspjesima i načinom na koji aplikacije primaju slučajne bajtove.
Gdje je korisno
Sigurnosna biblioteka može zatražiti slučajne bajtove od OS-a dok OS kombinira izvore platforme prema vlastitoj implementaciji. Aplikacija ne mora izravno izdati hardversku instrukciju kako bi imala korist od hardverskog izvora.
Kako provjeriti podršku i omogućavanje
Identificirajte stvarno hardversko sučelje i provjerite njegovu specifičnu enumeraciju. Za RDRAND i RDSEED provjerite njihove zasebne CPUID bitove i zastavicu prijenosa svakog izvršavanja. Za razvoj aplikacija koristite podržani API za slučajnost u OS-u ili kriptografskoj biblioteci.
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
Nemojte pretvarati generičko polje hardverskog RNG-a u tvrdnje da postoje i RDRAND i RDSEED, da generator zadovoljava određeni certifikat ili da svaki VM ima izvor fizičkog domaćina. Instrukcija slučajnosti ne štiti ključeve nakon što su pohranjeni.
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
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.
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.