Şifreleme temelleri
CNG API'si karma oluşturma veya verileri şifreleme ve şifre çözme gibi temel şifreleme işlemlerini gerçekleştiren bir dizi işlev sağlar. Bu işlevler hakkında daha fazla bilgi için bkz. CNG Şifreleme temel işlevleri.
CNG, çok sayıda şifreleme algoritması uygular. Her algoritma veya algoritma sınıfı kendi temel API'sini kullanıma sunar. Belirli bir algoritmanın birden çok uygulaması aynı anda yüklenebilir; ancak, herhangi bir zamanda yalnızca bir uygulama varsayılan olacaktır.
CNG'deki her algoritma sınıfı ilkel bir yönlendirici ile temsil edilir. CNG temel işlevlerini kullanan uygulamalar, işlevleri çağırmadan önce kullanıcı modunda Bcrypt.dll veya çekirdek modunda Ksecdd.sys yönlendirici ikili dosyasına bağlanır. Çeşitli yönlendirici yordamları tüm algoritma temel öğelerini yönetir. Bu yönlendiriciler sistemde yüklü olan her algoritma uygulamasını izler ve her işlev çağrısını uygun ilkel sağlayıcı modülüne yönlendirir.
CNG, aşağıdaki algoritma sınıfları için temel öğeler sağlar.
Algoritma sınıfı | Açıklama |
---|---|
Rastgele sayı oluşturucu |
Takılabilir rastgele sayı oluşturma (RNG). |
Karması |
SHA1 ve SHA2 gibi karma oluşturma için kullanılan algoritmalar. |
simetrik şifrelemeyi |
AES, 3DES ve RC4 gibi simetrik şifreleme için kullanılan algoritmalar. |
Asimetrik şifrelemeyi |
RSA gibi şifrelemeyi destekleyen asimetrik (ortak anahtar) algoritmaları. |
İmzayı |
DSA ve ECDSA gibi imza algoritmaları. Bu sınıf RSA ile de kullanılabilir. |
Gizli anlaşma |
Diffie-Hellman (DH) ve üç nokta eğrisi Diffie-Hellman (ECDH) gibi gizli dizi sözleşmesi algoritmaları. |
Aşağıdaki çizimde CNG şifreleme temel öğelerinin tasarımı ve işlevi gösterilmektedir.
cng şifreleme temel öğelerinin
Bcrypt.h üst bilgi dosyası MS_PRIMITIVE_PROVIDER sabitini "Microsoft Primitive Provider" olarak tanımlar. Microsoft Temel Sağlayıcı'yı kullanmak için bu değeri BCryptOpenAlgorithmProvidergeçirin.