Jaký zvolit hash algoritmus u Windows Serveru 2008 CA?
Koncem minulého roku proběhla zpráva o úspěšném podvržení certifikátu vystaveného certifikační autoritou, jež používá hash algoritmus typu MD5 (délka otisku 128 bitů). Hackeři (říkejme jim v tomto případě vědci :)) použili “ekonomicky výhodný” superpočítač tvořený gridem 200 Playstation 3. Nedávno jsem zaregistroval zprávu o teoretické nabouratelnosti též hash algoritmu SHA1, který používají všechny komerční certifikační autority, jež se chlubí tím, že jsou “více bezpečné” než ty, které zatím mají hash odvozený z MD5.
Když je jen otázkou času, kdy padne SHA1, nabízí se otázka, co s tím? Certifikační autorita na Windows Serveru 2008 nabízí vyjma MD5 a SHA1 též SHA256, SHA384, SHA512. Poslední tři uvedené spolu s SHA224 jsou nazývané pod souhrnným názvem SHA2. SHA1 vytváří otisk o délce 160 bitů, u ostatních je délka otisku patrná přímo z názvu.
Při vytváření nové certifikační autority by tak bylo více než logické zvolit některou z variant SHA2. Jenže je tady jedno ale:
- Windows 2000 a Windows XP až po SP2 zvládnou pouze MD5 a SHA1.
- Windows XP SP3 zvládnou SHA2, ale pouze pro čtení (kontrolu validity). Nezvládnou žádost o vystavení SHA2.
- Windows Vista a Windows 7 plně podporují SHA2.