Bugün esas olarak, oldukça özel olan SQL Server şifreleme işlevini tanıtıyorum ve diğer veritabanlarının tasarımı hala biraz farklı. Hadi birlikte bir göz atalım ~
Veri şifreleme, veri tabanının kırılmasına, fiziksel medyanın çalınmasına ve yedeklemenin çalınmasına karşı son savunma hattıdır.Veri şifreleme, bir yandan çalınan verilerin güvenlik sorununu çözerken, diğer yandan ilgili yasalar zorunlu veri şifreleme gerektirir. Diğer veritabanları ile karşılaştırıldığında, SQL Server'ın veri şifrelemesinin nispeten eksiksiz işlevleri ve daha fazla şifreleme yöntemi vardır. Genel olarak, veri şifreleme, simetrik şifreleme ve asimetrik şifreleme olarak ikiye ayrılır. Simetrik şifreleme: Şifreleme ve şifre çözme aynı anahtarı kullanır ve anahtarın iletilmesi gerekir.Güvenlik zayıftır, ancak performans asimetrik olmaktan daha iyidir. Asimetrik şifreleme: Şifreleme ve şifre çözme, simetrik anahtarlardan daha güvenli olan farklı anahtarlar (genel anahtar ve özel anahtar) kullanır, ancak algoritma daha karmaşıktır ve bu da performans kaybına neden olur. bu nedenle Uzlaşma yöntemi, verileri şifrelemek için simetrik bir anahtar ve simetrik anahtarı şifrelemek için asimetrik bir anahtar kullanmaktır. Bu sadece yüksek performans sağlamakla kalmaz, aynı zamanda anahtarın güvenilirliğini de artırır.
Benzer şekilde, SQL Server bir uzlaşma yöntemi kullanır, bu nedenle SQL Server şifreleme özellikleri iki bölüm içerir: veri şifreleme ve anahtar yönetimi
SQL Server, aşağıdaki çoklu şifreleme algoritmalarını destekler
Veritabanındaki şifrelenmiş nesneler DMK tarafından korunur
Desteklenen simetrik şifreleme algoritmaları: DES | TRIPLE_DES | TRIPLE_DES_3KEY | RC2 | RC4 | RC4_128 | DESX | AES_128 | AES_192 | AES_256
Asimetrik şifreleme algoritması: RSA_512 | RSA_1024 | RSA_2048
RC ve DESX algoritmalarını kullanmaktan kaçının, bu işlev 2014'ten sonra silinecektir.
SQL Server'da şifreleme hiyerarşiktir ve her üst katman, alt katman için koruma sağlar. Gosterildigi gibi:
Şekilden de görülebileceği gibi şifreleme hiyerarşiktir. Her veritabanı örneğinin bir Hizmet Ana Anahtarı vardır. Bu anahtar, örneğin kök anahtarıdır. Örnek yüklendiğinde otomatik olarak oluşturulur. Windows tarafından sağlanan Veri Pertection API'si tarafından korunur. ), alt düğümleri için şifreleme hizmetleri sağlamaya ek olarak, hizmet ana anahtarı, örnek oturum açma parolası veya bağlantı sunucusu bilgileri gibi bazı örnek düzeyindeki bilgileri şifrelemek için de kullanılır.
Hizmet ana anahtarının altında, hizmet ana anahtarı tarafından şifrelenen Veritabanı Ana Anahtarı bulunur. Bu, veritabanı düzeyinde sertifikalar veya asimetrik anahtarlar oluşturmak için şifreleme sağlamak için kullanılabilen veritabanı düzeyinde bir anahtardır. Her veritabanı yalnızca bir veritabanı ana anahtarına sahip olabilir.
sqlserver2008
1. Asimetrik bir anahtar oluşturun
asimetrik anahtar oluştur asyc_key_enc algoritması ile = RSA_1024 parola ile şifreleme = N'Pass @ word ' Git2. Simetrik bir anahtar oluşturun
simetrik anahtar oluştur symc_key_enc algoritma ile = Triple_DES parola ile şifreleme = N'Pass @ word ' Git3. Bir sertifika oluşturun
Sertifikalar başka şekillerde de korunabilir
sertifika oluştur: cert_ENC konu = 'ENC için sertifika', expiry_date = '20990101' Git4. Simetrik anahtar, yukarıdaki üç yolla şifreleme koruması sağlayabilir
4.1 Asimetrik bir anahtarla şifrelenmiş
simetrik anahtar oluştur symc_key_enc_byAsyc algoritması ile = AES_128 asimetrik anahtarla şifreleme asyc_key_enc Git4.2 Simetrik bir anahtarla şifrelenmiş
simetrik anahtarı aç symc_key_enc şifre ile şifre çözme = N ' Parola'; simetrik anahtar oluştur symc_key_enc_bySymc algoritma ile = DES simetrik anahtarla şifreleme symc_key_enc Git4.3 Sertifika ile şifrelenmiş
simetrik anahtar oluştur symc_key_enc_byCert algoritması ile = AES_128 sertifika cert_ENC ile şifreleme GitDaha sonra daha fazla devop ve DBA içeriği paylaşacağım ve ilgilenen arkadaşlar buna dikkat edebilir ~