Sdílet prostřednictvím


Pevně zakódovaný kódIVCNG (dotaz CodeQL ovladače Systému Windows)

Přehled

Inicializační vektor (IV) je vstup kryptografického primitivu, který se používá k poskytnutí počátečního stavu. IV musí být obvykle náhodné nebo pseudonáhodné (náhodné schéma), ale někdy stačí, aby bylo pouze nepředvídatelné nebo jedinečné (stavové schéma).

Randomizace je zásadní pro některá schémata šifrování k dosažení sémantického zabezpečení, což je vlastnost, kdy opakované použití schématu pod stejným klíčem neumožňuje útočníkovi odvodit vztahy mezi (potenciálně podobnými) segmenty šifrované zprávy.

Doporučení

Všechny symetrické blokové šifry musí být také použity s odpovídajícím inicializačním vektorem (IV) podle používaného režimu operace.

Pokud používáte randomizované schéma, jako je CBC, doporučuje se použít kryptograficky zabezpečený pseudorandomní generátor čísel, jako je BCryptGenRandom.

Další podrobnosti

Tento dotaz najdete v úložišti Microsoft GitHub CodeQL. Podrobnosti o tom, jak mohou vývojáři ovladačů systému Windows stáhnout a spustit CodeQL, najdete na stránce CodeQL and the Static Tools Logo Test.

Další odkazy: