Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
platí pro:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Analytický platformní systém (PDW)
Šifrování je jednou z několika obran, která je dostupná pro správce, který chce zabezpečit instanci SQL Serveru.
Šifrovací algoritmy definují transformace dat, které nelze snadno převrátit neoprávněnými uživateli. Správci a vývojáři si můžou vybrat z několika algoritmů na SQL Serveru, včetně DES, Triple DES, TRIPLE_DES_3KEY, RC2, RC4, 128bitových RC4, DESX, 128bitových AES, 192bitových AES a 256bitových AES.
Počínaje SQL Serverem 2016 (13.x), všechny algoritmy kromě AES_128a AES_192AES_256 jsou zastaralé. Pokud chcete použít starší algoritmy (nedoporučuje se), musíte databázi nastavit na úroveň kompatibility databáze 120 nebo nižší.
Jak zvolit správný algoritmus
Žádný jediný algoritmus není ideální pro všechny situace a pokyny o výhodách každého z nich jsou nad rámec tohoto článku. Platí však následující obecné principy:
Silné šifrování obecně spotřebovává více prostředků procesoru než slabé šifrování.
Dlouhé klíče obecně poskytují silnější šifrování než krátké klíče.
Asymetrické šifrování je pomalejší než symetrické šifrování.
Dlouhá a složitá hesla jsou silnější než krátká hesla.
Symetrické šifrování se doporučuje, když je klíč uložen pouze místně. Asymetrické šifrování se doporučuje, když se klíče musí sdílet přes drát.
Pokud šifrujete velké množství dat, měli byste data zašifrovat pomocí symetrického klíče a šifrovat symetrický klíč asymetrickým klíčem.
Šifrovaná data nelze komprimovat, ale komprimovaná data je možné zašifrovat. Pokud používáte kompresi, měli byste před šifrováním zkomprimovat data.
Další informace o šifrovacích algoritmech a technologii šifrování najdete v tématu Klíčové koncepty zabezpečení.
Zastaralý algoritmus RC4
Algoritmus RC4 je podporován pouze pro zpětnou kompatibilitu. Nový materiál lze šifrovat pouze pomocí RC4 nebo RC4_128 pouze tehdy, když je databáze na úrovni kompatibility 90 nebo 100 (nedoporučuje se). Místo toho použijte novější algoritmus, například jeden z algoritmů AES. V SQL Server 2012 (11.x) a novějších verzích je materiál šifrován pomocí nebo RC4RC4_128 může být dešifrován v jakékoli úrovni kompatibility.
Opakované použití stejného RC4 nebo RC4_128KEY_GUID na různých blocích dat vede ke stejnému klíči RC4, protože SQL Server neposkytuje sůl automaticky. Opakované použití stejného klíče RC4 je dobře známá chyba, která má za následek slabé šifrování. Proto jsme označili klíčová slova RC4 a RC4_128 jako zastaralá. Tato funkce bude odebrána v budoucí verzi SQL Serveru. Nepoužívejte tuto funkci v nové vývojové práci a naplánujte úpravu aplikací, které tuto funkci aktuálně používají.
Objasnění algoritmů DES
DesX byl nesprávně pojmenován. Symetrické klíče vytvořené ve ALGORITHM = DESX skutečnosti používají šifru Triple DES s 192bitovým klíčem. Algoritmus DESX není k dispozici. Tato funkce bude odebrána v budoucí verzi SQL Serveru. Nepoužívejte tuto funkci v nové vývojové práci a naplánujte úpravu aplikací, které tuto funkci aktuálně používají.
Symetrické klíče vytvořené s ALGORITHM = TRIPLE_DES_3KEY používají Triple DES s 192bitovým klíčem.
Symetrické klíče vytvořené pomocí ALGORITHM = TRIPLE_DES používají Trojitý DES s 128bitovým klíčem.