Cryptography ‘nin Temelleri –4 ( Cryptography Next Generation (CNG)
Cryptography Next Generation (CNG)
Cryptography Next Generation (CNG) original Windows CryptoAPI için cryptography application programming interface ‘in (API) yenilemesidir. Yeni API cryptography implement ederken daha yeni , daha güçlü encryption ve signing algoritmalari saglar
CNG ‘nin özellikleri
CNG nin legacy CryptoAPI den farkli özellikleri asagidaki gibidir.
¦Auditing CNG Common Criteria gereksinimlerini karsilamak için auditing yeterlilikleri artirmistir. Event’ler user modda Key Service Provider (KSP) tarafindan yakalanir ve asagidakileri içerir
?Key leri test ederken ki hatalar . Testler verification, consistency, self-tests, ve parity checks leri içerir
?cryptographic operasyonlar esnasindaki basarisizliklar . Operasyonlar encryption, decryption, hashing, signature, verification, key exchange, ve random number generation’i içerir
?Key Pairlerini üretim, yok etme, importing, ve exporting
?File sisteme ve sistemden keylerin sürekli okunmasi ve yazilmasi
Tip KSP audit loglari otomatik olarak generate edilmez. Tüm KSP auditing’ in collection inin etkin hale getirilmesi için auditpol.exe ‘yi asagidaki sekilde kullanmaniz gerekmektedir.
auditpol/set/subcategory:”other system events”/success:enable/failure:enable
Auditpol.exe C:\Windows\System32 klasörü içerisindedir.
¦ Certification and Compliance CNG Seçilen platformlarda Federal Information Processing Standards (FIPS) 140-2 seviye 2 sertifikasyon ‘a Common Criteria evaluation ile birlikte hedeflenir.
https://csrc.nist.gov/publications/fips/fips140-2/fips1402.pdf
Diger platformlar FIPS 140-2 level 1 certification ‘a uygundur.
¦ Cryptographic Agility CNG cryptographic agility ( çevikligi ) ya da yeni cryptographic algorithmalari zaten varolan (Transport Layer Security/Secure Sockets Layer (TLS/SSL) gibi )bir protocol için deploy edebilmeyi ya da belirli bir algoritmada bir savunmasizlik ( vulnerability ) bulundugunda algoritmayi devre disi birakmayi destekler.
Cryptographic operasyonlara karsi olan bu modifikasyon , bir çok standard cryptographic protocolleri CNG de ulasilabilir olan yeni algoritmalarin avantajini bu protokollere izin vermesini saglamak için (TLS/SSL, Secure Multipurpose Internet Mail Extensions, ya da S/MIME, Internet Protocol security, ya da IPsec, ve Kerberos) dönüstürmeye ihtiyaç duyar
¦ Kernel Mode Support CNG kernel modda cryptography destekler . Kernel mode TLS/SSL ve IPsec gibi common cryptographic features için daha iyi performance saglar. Söylendigi gibi tüm CNG fonksiyonlari kernel moddan çagrilamaz.
Not CNG kernel modda birbirine eklenebilir algoritmalari ve provider lari desteklemez.
Kernel mode da available olan tek desteklenen cryptographic algorithmalardan kernel mode , CNG APIs içerisinden implement edilen ve Microsoft tarafindan saglanandir
Kernel modu yalnizca Microsoft tarafindan saglanan çekirdek modu CNG API'leri ile desteklenen kriptografik algoritmalar dir
¦ Key Storage CNG hem legacy hem de CNG-capable applicationlar a key storage için bir model saglar
Key Isolation CNG uzun süre yasayan key leri izole eder böylelikle asla uygulama prosesinde görünmezler
Örnek olarak , CNG Trusted Platform Module (TPM) li herhangi bir bilgisayarda TPM de key storage ve key isolation’i saglar Local SecurityAuthority (LSA) process I performansi maksimize etmek için key isolation process I kullanir .key isolation özelligi Windows Vista ve Windows Server 2008 öncesi platformlarda kullanilabilir degildir. Ayrica key isolation service ‘inde sadece Microsoft KSP yüklenilir.LSA process inde Third-party key service provider larin yüklenmesi bloklanir
The Keys Have Moved
CNG ayrica cryptographic key materyallerinin depolanmasi için olan system lokasyonlarini degistirir .Bu degisiklik lokasyonlari oldukça basitlestirir. ( RSA ve DSS key leri için olan farkli dizin yapilarini kaldirir ). Ilaveten , CNG key container isimleri için artik Unicode karakterleri destekler böylelikle RSA key pair generate ederken daha esneklik saglar .En büyük degisim user’in security identifier (SID)’ ininin key pair ler için dosya lokasyonundan kaldirilmasidir. Bu degisiklik bir user account’u forest ta domain ler arasinda tasindiginda key materyalin migration’ini kolaylastiracaktir.
Asagidaki tablo key pairlerin muhtelif kategorileri için klasör lokasyonu path degisikliklerini özetler :
Crypto Folder Paths de degisiklikler
¦Legacy Support CNG legacy application lar için CryptoAPI 1.0 de bulunan geçerli algoritmalari desteklemeyi saglar
¦Replaceable Random Number Generators Developer lar CNG kullanirlarken tüm cryptographic service providerlar için default random number generator ‘i replace edebilirler. Daha önceden , Microsoft Base Cryptographic Service Providers (CSPs)’ larin bir diger random number generator a redirect etmesi mümkün degildi
¦Suite B Support 2005 de , United States National Security Agency (NSA) , ABD hükümetinin kullanimi için symmetric encryption, key exchange, digital signature, ve hash Algorithmsalari setinden coordine edilmis Suite B yi duyurdu , Suite B algoritmasi Top Secret ve confidential information olarak belirtilen bilgileri korumak için kullanimalidir.Suite B algoritmalar hakkinda bilinen sey halen çok güvenli olarak göz önünde bulundurulduklaridir.Bu gizliligini korumak için yayinlanmamis önceki "güçlü" algoritmalari farklidir
¦Thread Safety CNG içindeki tüm fonksiyonlar multithreaded / concurrent execution desteklemek için tasarlanmistir.Daha önce, bir CryptoAPI fonksiyonu multithreaded bir ortamda sadece rastgele faaliyet edebilirdi.
Desteklenen Algorithmalar
Asagidaki Tablo Windows Vista ve Windows Server 2008 tarafindan desteklenen Suite B algoritmalari gösterir
Windows Vista ve Windows Server 2008 Suite B Algorithmalari
Sadece Windows Vista SP1 ve Windows Server 2008 bu algoritmayi destekler .
Supported Clients and Applications
CNG tüm os ve her application için uygun degildir. Asagidaki kurallar PKI deployment ile ne zaman CNG kullanip kullanamayacaginizi dikte etmektedir.
¦client lar ve server lar CNG yi desteklemelidir. .
CNG sadece Windows Vista ve Windows Server 2008 client ve server larda desteklenmektedir
¦Suite B algorithmalari desteklemeyen certification authorities (CAs) le ile entegre etmenize gerek yoktur
Örnek olarak , bir uygulamanin sertifikasini Microsoft Windows 2000, Windows Server 2003, ve Windows Server 2008 CA lerden issue etmek isteyebilirsiniz.
¦Implement ettiginiz applicationlar Suite B algorithmalari desteklemelidirler
CA Suite B tipi destekleyen sertifikalari issue edip manage ediyor olabilmesine ragmen , uygulamalar Suite B algorithmalar kullanilarak generate edilen keyleri kullanabilmeli ve associated sertifikalarin chain validationlarini perform etmelidir.
Asagidaki tablo Windows Vista ve Windows Server 2008 de CNG algorithmalari kullanarak sertifikalarla çalisabilen certificate-enabled applicationlari gösterir
Genel Applicationlar ve CNG Support
Kaynak : Windows Server 2008 PKI and Certificate Security