Hardwarový generátor náhodných čísel (RNG)
Označení hardwarového RNG znamená, že je pro danou součást zaznamenán hardwarový generátor náhodných čísel. Samotné označení nespecifikuje přesné rozhraní instrukcí, povolené prostředí ani úroveň kryptografické jistoty.
Co potřebujete vědět
Označení hardwarového RNG znamená, že je pro danou součást zaznamenán hardwarový generátor náhodných čísel. Samotné označení nespecifikuje přesné rozhraní instrukcí, povolené prostředí ani úroveň kryptografické jistoty.
Jak to funguje
Na architektuře x86 se software může setkat se samostatně vypočítávanými rozhraními RDRAND a RDSEED. Ta mají odlišné úlohy a hlášení úspěchu. Hardwarový zdroj se obvykle podílí na širším návrhu náhodnosti v operačním systému nebo knihovně, který řeší úpravu entropie, inicializaci, selhání a způsob, jakým aplikace přijímají náhodné bajty.
Kde je funkce užitečná
Bezpečnostní knihovna může požadovat náhodné bajty od operačního systému, zatímco operační systém kombinuje zdroje platformy podle své vlastní implementace. Aplikace nemusí spouštět hardwarovou instrukci přímo, aby z hardwarového zdroje těžila.
Jak ověřit podporu a aktivaci
Identifikujte skutečné hardwarové rozhraní a zkontrolujte jeho specifickou enumeraci. U RDRAND a RDSEED zkontrolujte jejich samostatné bity CPUID a příznak přenosu při každém spuštění. Pro vývoj aplikací používejte podporované rozhraní API pro náhodnost v operačním systému nebo kryptografické knihovně.
Používejte udržovanou kryptografickou implementaci, která zajišťuje výběr funkcí, ošetření chybových stavů a kompletní algoritmus. Hardwarová akcelerace poskytuje základní stavební prvky; správa klíčů, autentizace, pravidla pro nonce a volba protokolu zůstávají v odpovědnosti softwaru.
Co tato funkce nezajišťuje
Nepřevádějte obecné pole hardwarového RNG na tvrzení, že existují jak RDRAND, tak RDSEED, že generátor splňuje konkrétní certifikaci nebo že každý virtuální počítač má zdroj fyzického hostitele. Instrukce pro náhodná čísla nechrání klíče po jejich uložení.
Kompatibilita a výkon v praxi
Pole s uvedenou funkcí není certifikací produktu ani důkazem, že je konkrétní aplikace bezpečná. Výkon závisí na velikostech zpráv, režimu, dávkování a zbytku protokolu. Zkontrolujte skutečného poskytovatele a udržujte jeho bezpečnostní aktualizace aktuální.
Praktický kontrolní seznam pro ověření
- Zaznamenejte přesný model procesoru nebo platformy a použité verze aplikace, operačního systému a běhového prostředí. Uchovejte přesné znění chybové zprávy nebo požadavku.
- Zkontrolujte dokumentaci výrobce pro daný konkrétní model a poté prověřte skutečně dostupnou kapacitu a stav aktivace v prostředí, kde program běží.
- Porovnejte veškeré požadavky vybraného binárního souboru nebo backendu. Podobně pojmenovaná funkce, alias nebo obecné technologické označení nestačí.
- Ověřte, že aplikace vybrala zamýšlenou implementaci. Pokud nejsou požadavky splněny, použijte její zdokumentovanou diagnostiku a podporované náhradní řešení.
- Provádějte vždy jen jednu podporovanou změnu a zopakujte identickou zátěž. Původní konfiguraci a postup obnovy mějte neustále k dispozici.
Pokud je funkce uvedena, ale software ji nemůže použít
Začněte u přesné komponenty, u níž dochází k selhání. Databáze hardwaru popisuje zaznamenané schopnosti; operační systém nebo hypervizor však může vystavit odlišné efektivní prostředí. Chyba neplatné instrukce vyžaduje také prozkoumání skutečné chybující instrukce a sestavení binárního souboru, protože poškození dat nebo nesouvisející nepodporovaná instrukce mohou vyvolat podobný projev.
Nainstalujte verzi aplikace, ovladače nebo běhového prostředí podporovanou pro danou platformu a v případě potřeby použijte výrobcem zdokumentované základní nebo náhradní sestavení. Aktualizace softwaru nemůže vytvořit instrukci, kterou procesor fyzicky postrádá. Změny firmwaru a zásad zabezpečení by se měly řídit postupem výrobce systému a plánem obnovy, nikoli obecným návodem na optimalizaci.
Zdroje a rozsah tohoto vysvětlení
Intel 64 and IA-32 Architectures Software Developer's Manual
Tyto referenční dokumenty stanovují architektonické chování a softwarové požadavky. Neověřují nezávisle každou hodnotu funkce na odkazované stránce hardwarového modelu. Informace o podpoře konkrétního modelu čerpejte z podkladů výrobce na příslušné stránce a zkontrolujte platnou konfiguraci systému. Tento článek neposkytuje benchmark, certifikaci ani datum nezávislého přezkumu.
Zdroje a ověření
Redakční vlastnictví: Feex. Není zaznamenáno žádné datum nezávislého přezkoumání. Jak provádíme výzkum.
- Intel 64 and IA-32 Architectures Software Developer's Manual · Svazky 1 a 2 popisují jmenovité rodiny instrukcí a CPUID; Svazek 3 popisuje stav, stránkování, VMX a řízení ochrany. Architektonická dokumentace nepotvrzuje podporu pro konkrétní model.
Byl tento článek užitečný?
Stačí ano nebo ne. Pokud chcete, vyberte důvod nebo přidejte krátkou poznámku.
Děkujeme. Pomáhá nám to tuto stránku vylepšovat.