Nasıl yapılır: Şifreleme ayarları ile çalışma

Önemli

Mart 2020'den önce yayımlanan Microsoft Rights Management Service SDK sürümleri kullanım dışı bırakılmıştır; önceki sürümleri kullanan uygulamaların Mart 2020 sürümünü kullanacak şekilde güncelleştirilmiş olması gerekir. Tüm ayrıntılar için kullanımdan kaldırma bildirimine bakın.

Microsoft Rights Management Service SDK'sı için başka geliştirme planlanmıyor. Sınıflandırma, etiketleme ve koruma hizmetleri için Microsoft Bilgi Koruması SDK'sının benimsenmesini kesinlikle öneririz.

Bu konu, sizi şifreleme paketlerimize yönlendirir ve bunların kullanılması için bazı kod parçalarını gösterir.

AES 256, yeni varsayılan desteği

RMS SDK 2.1 Mart 2015 güncelleştirmesini yaptığınızı varsayarak, yeni varsayılan olduğundan AES 256 tabanlı şifrelemeyi kullanmak için ek kod gerekmez. AES 256’nın ek güvenlik avantajlarından faydalanmak için, uygulamalarınızı bu sürüme güncelleştirmeyi ciddi şekilde düşünmenizi öneririz.

Önemli

AES 256 korumalı dosyalar için kullanım desteği Ekim 2014 sürümünden bu yana mevcuttur. Ekim 2014 öncesine ait bir SDK sürümüyle oluşturulmuş uygulamalar çalıştırıyorsanız, bu güncelleştirme, uygulamanızın çalışmamasına neden olur. Lütfen, oluşturduğunuz uygulamaların müşterilerinin, güncelleştirilmiş bir SDK kullandığından ya da uygulamanızın en sürümüne hemen güncelleştirmeye istekli olduğundan emin olun.

 

API şifreleme desteği

Mart 2015 güncelleştirmesiyle başlayarak, aşağıdaki üç bayrağı API’mize ve bunların ilgili şifreleme paketlerine ekledik:

  • IPC_ENCRYPTION_PACKAGE_AES256_CBC4K
  • IPC_ENCRYPTION_PACKAGE _AES128_CBC4K
  • IPC_ENCRYPTION_PACKAGE _AES128_ECB (Kullanım Dışı Algoritmalar olarak da bilinir)

Bkz. Tercih edilen şifreleme, Lisans Özelliği bayrağı - IPC_LI_PREFERRED_ENCRYPTION_PACKAGE ile birlikte kullanılabilir.

Aşağıda yeni lisans özelliğinin nasıl kullanılacağını gösteren bazı basit kod parçacıkları verilmiştir.

Kullanım Dışı Algoritmaları

Artık API'mizde IPC_LI_DEPRECATED_ENCRYPTION_ALGORITHMS bayrağını açığa çıkarıyoruz. Bu, bu bayrağa başvuruyorlarsa, gelecekteki uygulamaların artık derlenmeyeceği, ancak bayrağı API kodunda özel olarak değerlendirdiğimizden, bu kullanılarak önceden oluşturulan uygulamaların çalışmaya devam edeceği anlamına gelir.

Sadece bir bayrak değiştirilerek, eski kullanım dışı şifreleme algoritmaları bayrağının avantajından hala yararlanılabilir. Örnekleri için aşağıdaki kod parçacıklarına bakın.

Dosyaları AES 256 CBC4K ile koruma

Kodda değişiklik gerekmez, AES 256 CBC4K varsayılan değerdir.

hr = IpcCreateLicenseFromTemplateID(pcTil->aTi[0].wszID,
                                0,
                                NULL,
                                &pLicenseHandle);

Dosyaları AES 128 CBC4K ile koruma

hr = IpcCreateLicenseFromTemplateID(pcTil->aTi[0].wszID,
                                0,
                                NULL,
                                &pLicenseHandle);

DWORD dwEncryptionMode = IPC_ENCRYPTION_PACKAGE_AES128_CBC4K;

hr = IpcSetLicenseProperty(pLicenseHandle,
                        false,
                        IPC_LI_PREFERRED_ENCRYPTION_PACKAGE,
                        &dwEncryptionMode);

Dosyaları AES-128 ECB (kullanım dışı algoritmaları) ile koruma

Bu örnek ayrıca kullanım dışı algoritmalarını desteklemenin yeni yolunu da gösterir.

hr = IpcCreateLicenseFromTemplateID(pcTil->aTi[0].wszID,
                                0,
                                NULL,
                                &pLicenseHandle);

DWORD dwEncryptionMode = IPC_ENCRYPTION_PACKAGE_AES128_ECB;

hr = IpcSetLicenseProperty(pLicenseHandle,
                        false,
                        IPC_LI_PREFERRED_ENCRYPTION_PACKAGE,
                        &dwEncryptionMode);