Aracılığıyla paylaş


Ş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 tasarımı ve işlevi

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.