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 :

image

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

image

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

image

Kaynak : Windows Server 2008 PKI and Certificate Security