Apple FairPlay lisansı gereksinimleri ve yapılandırması
v2 Media Services mı arayabilirsiniz?
Azure Media Services, HLS içeriğinizi Apple Fairplay (AES-128 CBC) ile şifrelemenizi sağlar. Media Services Ayrıca, FairPlay lisanslarını sunmaya yönelik bir hizmet sağlar. Bir oyuncu FairPlay korumalı içeriğinizi yürütmeye çalıştığında, lisans almak için lisans teslim hizmetine bir istek gönderilir. Lisans hizmeti isteği onayladığında, istemciye gönderilen lisansı yayınlar ve belirtilen içeriğin şifresini çözmek ve yürütmek için kullanılır.
Media Services Ayrıca, FairPlay lisanslarınızı yapılandırmak için kullanabileceğiniz API 'Ler de sağlar. Bu konu, FairPlay lisans gereksinimlerini tartışır ve Media Services API 'Leri kullanarak bir Fairplay lisansını nasıl yapılandırabileceğinizi gösterir.
Gereksinimler
Media Services kullanırken, HLS içeriğinizi Apple Fairplay ile şifrelemek için ve Media Services kullanarak Fairplay lisanslarını teslim etmek için aşağıdakiler gerekir:
Apple geliştirme programıile kaydolun.
Apple, içerik sahibinin dağıtım paketinialmasını gerektirir. Anahtar güvenlik modülünü (KSM) Media Services ile zaten uygulamış ve son FPS paketini istediğini unutmayın. Son FPS paketinde sertifika oluşturmak ve uygulama gizli anahtarı (ASK) almak için yönergeler vardır. FairPlay yapılandırmak için sorma ' yı kullanın.
Media Services anahtar/lisans teslim tarafında aşağıdaki şeyler ayarlanmalıdır:
Uygulama sertifikası (AC): Bu, özel anahtarı içeren bir. pfx dosyasıdır. Bu dosyayı oluşturun ve bir parolayla şifreleyin. . Pfx dosyası Base64 biçiminde olmalıdır.
Aşağıdaki adımlarda, FairPlay için bir. pfx sertifika dosyasının nasıl oluşturulacağı açıklanır:
Kaynağından OpenSSL 'yi yükler https://slproweb.com/products/Win32OpenSSL.html .
FairPlay sertifikasının ve Apple tarafından sunulan diğer dosyaların bulunduğu klasöre gidin.
Komut satırından aşağıdaki komutu çalıştırın. Bu,. cer dosyasını. ped dosyasına dönüştürür.
"C:\OpenSSL-Win32\bin\openssl.exe" x509-ın FairPlay. cer-Out FairPlay-out. ped
Komut satırından aşağıdaki komutu çalıştırın. Bu,. PEA dosyasını özel anahtarla bir. pfx dosyasına dönüştürür. . Pfx dosyasının parolasına daha sonra OpenSSL sorulur.
"C:\OpenSSL-Win32\bin\openssl.exe" PKCS12-Export-Out FairPlay-out. pfx-INKEY PrivateKey. ped-in FairPlay-out. pek-passin file:privatekey-pem-pass.txt
Uygulama sertifikası parolası:. pfx dosyası oluşturmak için parola.
Sorun: Bu anahtar, Apple Developer Portal 'ı kullanarak sertifika oluşturduğunuzda alınır. Her geliştirme ekibi, benzersiz bir sorun alır. ASK bir kopyasını kaydedin ve güvenli bir yerde saklayın. Media Services ile ASK FairPlayAsk olarak yapılandırmanız gerekir.
Aşağıdaki noktalar, FPS istemci tarafında ayarlanmalıdır:
- Uygulama sertifikası (AC): Bu, işletim sisteminin bazı yükü şifrelemek için kullandığı ortak anahtarı içeren bir. cer/. der dosyasıdır. Oyuncu, oynatıcı için gerekli olduğu için Media Services hakkında bilgi sahibi olmalıdır. Anahtar teslim hizmeti, karşılık gelen özel anahtarı kullanarak onun şifresini çözer.
FairPlay şifreli bir akış geri oynatmak için önce gerçek bir sorun alın ve ardından gerçek bir sertifika oluşturun. Bu işlem üç bölümden oluşur:
- . der dosyası
- . pfx dosyası
- . pfx için parola
Not
Azure Media Services paketleme veya anahtar teslimi sırasında sertifikanın sona erme tarihini denetlemez. Sertifikanın süresi dolduktan sonra çalışmaya devam edecektir.
FairPlay ve oynatıcı uygulamaları
İçeriğiniz Apple Fairplay ile şifrelendiğinde, tek tek video ve ses örnekleri AES-128 CBC modu kullanılarak şifrelenir. Fairplay streaming (fps), IOS ve Apple TV 'de yerel destek ile cihaz işletim sistemleriyle tümleşiktir. OS X üzerinde Safari, şifreli Medya Uzantıları (EME) arabirimi desteğini kullanarak FPS 'yi sunar.
Azure Media Player ayrıca FairPlay oynatmayı destekler. Daha fazla bilgi için bkz. Azure Media Player belgeleri.
İOS SDK 'sını kullanarak kendi oynatıcı uygulamalarınızı geliştirebilirsiniz. FairPlay içeriğini oynatmak için, lisans değişim protokolünü uygulamanız gerekir. Bu protokol Apple tarafından belirtilmedi. Her bir uygulamaya, anahtar teslim istekleri gönderme işlemi yapılır. Media Services FairPlay anahtar teslimi hizmeti, aşağıdaki biçimde SPC 'nin bir www-form-URL kodlamalı gönderi iletisi olarak gelmesini bekler:
spc=<Base64 encoded SPC>
FairPlay yapılandırması .NET örneği
FairPlay lisanslarını yapılandırmak için Media Services API kullanabilirsiniz. Oynatıcı FairPlay korumalı içeriğinizi yürütmeye çalıştığında, lisans almak için lisans teslim hizmetine bir istek gönderilir. Lisans hizmeti isteği onayladığında, hizmet lisansı yayınlar. İstemciye gönderilir ve belirtilen içeriğin şifresini çözmek ve yürütmek için kullanılır.
Not
Genellikle yalnızca bir sertifika kümesine ve SORMANıZ gerektiğinden, FairPlay ilke seçeneklerini yalnızca bir kez yapılandırmak isteyeceksiniz.
Aşağıdaki örnek, lisansı yapılandırmak için .NET SDK Media Services kullanır.
private static ContentKeyPolicyFairPlayConfiguration ConfigureFairPlayPolicyOptions()
{
string askHex = "";
string FairPlayPfxPassword = "";
var appCert = new X509Certificate2("FairPlayPfxPath", FairPlayPfxPassword, X509KeyStorageFlags.Exportable);
byte[] askBytes = Enumerable
.Range(0, askHex.Length)
.Where(x => x % 2 == 0)
.Select(x => Convert.ToByte(askHex.Substring(x, 2), 16))
.ToArray();
ContentKeyPolicyFairPlayConfiguration fairPlayConfiguration =
new ContentKeyPolicyFairPlayConfiguration
{
Ask = askBytes,
FairPlayPfx =
Convert.ToBase64String(appCert.Export(X509ContentType.Pfx, FairPlayPfxPassword)),
FairPlayPfxPassword = FairPlayPfxPassword,
RentalAndLeaseKeyType =
ContentKeyPolicyFairPlayRentalAndLeaseKeyType
.PersistentUnlimited,
RentalDuration = 2249 // in seconds
};
return fairPlayConfiguration;
}