PlayReady, Windows, Xbox ve UWP evrensel çalışma ortamını destekleyen diğer platformlarda içeriği korumak için Microsoft tarafından geliştirilen bir DRM teknolojisidir. Sistem, en yüksek seviyenin TPM aracılığıyla donanım şifrelemesi gerektirdiği SL150'den SL3000'e kadar üç katmanlı bir güvenlik modeli SL (Security Level) kullanır. Microsoft Docs'a (2025) göre, PlayReady 4.0 4K HDR şifrelemesini ve gelişmiş içerik kullanım analitiğini destekler.
Anahtar Çıkarımlar
PlayReady, Microsoft tarafından 2007 yılında medya içeriğini ve diğer dijital varlıkları korumak için geliştirilmiş bir dijital hak yönetimi (DRM) teknolojisidir. WMDRM'nin (Windows Media DRM) yerini almış ve Windows Media Center, Xbox Video ve Microsoft Silverlight için standart koruma haline gelmiştir.
PlayReady'nin ana avantajı, çeşitli içerik türleri için birleşik bir lisanslama sistemidir: video, ses, e-kitaplar, oyunlar ve belgeler. Teknoloji, Abonelik (Subscription), Kiralama (Rental) ve Satın Alma (Purchase) dağıtım modellerini destekler ve bu da onu medya hizmetleri ve eğitim platformları için çekici kılar.
PlayReady mimarisi üç temel bileşenden oluşur: PlayReady Device Porting Kit istemci çalışma zamanı, PlayReady License Server ve içerik paketleyicisi. PlayReady çalışma zamanı bir uygulamaya veya oynatıcıya gömülür ve cihazda içerik şifre çözmeyi gerçekleştirir.
Lisans sunucusu, içerik sağlayıcı tarafından belirlenen politikalara dayalı olarak lisans anahtarları oluşturur. İçerik paketleyicisi, Common Encryption (CENC) standardını kullanarak medya dosyalarını şifreler ve belirli bir lisansa bağlamak için meta verileri gömer.
Koruma süreci PlayReady, medya içeriğinin simetrik bir anahtarla şifrelendiği ve ardından lisans sunucusunun açık anahtarıyla korunduğu paketleme aşamasında başlar. Paketlenmiş içerik bir CDN'ye yerleştirilir ve indirme veya akış için kullanılabilir.
Bir kullanıcı korumalı içerik talep ettiğinde, oynatıcı lisans sunucusuna bir lisans talebi başlatır. Sunucu, kullanıcının kimlik bilgilerini, erişim haklarını (abonelik, kiralama, satın alma) kontrol eder ve şifre çözme anahtarını içeren bir lisans düzenler.
PlayReady, lisans talebinin içerik kimliğini (Content ID), cihaz tanımlayıcısını ve uygulama imzasını içerdiği SOAP veya JSON tabanlı bir değişim protokolü kullanır. Sunucu, lisansı cihazın açık anahtarıyla şifrelenmiş XML formatında döndürür.
Lisans, bir cihaz anahtarına (Device Key) sarılmış içerik şifreleme anahtarını (CEK) ve bir dizi politikayı içerir. Politikalar, oynatma süresini, video kalitesini, cihaz sayısını ve çıkış türünü (HDMI, kompozit) kısıtlayabilir.
var mediaProtectionManager = new MediaProtectionManager();
var properties = new PropertySet();
properties["Windows.Media.Protection.MediaProtectionSystemId"] =
"9a22f0a1-9e6c-4f2d-bc8e-4d8d5a2c3f1e";
mediaProtectionManager.SetProtectionScheme(
MediaProtectionSystemType.PlayReady,
properties
);
var mediaSource = MediaSource.CreateFromUri(
new Uri(contentUrl)
);
mediaPlayer.Play(mediaSource);
PlayReady 3.0, 2014 yılında piyasaya sürülmüş, TPM 2.0 aracılığıyla donanım şifreleme desteği ve 4K içerik için SL3000 güvenlik seviyesini getirmiştir. Bu sürüm, bir Cihaz Bağlama (Device Binding) mekanizması aracılığıyla bir lisansı belirli bir cihaza bağlama yeteneği ekleyerek cihazlar arasında lisans aktarımını önlemiştir.
PlayReady 4.0, 2020 yılında duyurulmuş, üç temel yenilikle işlevselliği genişletmiştir: gelişmiş içerik kullanımı telemetri desteği, içerik sağlayıcıları için iyileştirilmiş analizler ve mobil cihazlarda enerji tüketimi optimizasyonu.
| Sürüm | Yıl | Temel Özellikler | Maksimum SL |
|---|---|---|---|
| PlayReady 2.0 | 2011 | Yazılım şifrelemesi, 1080p'ye kadar | SL2000 |
| PlayReady 3.0 | 2014 | Donanım şifrelemesi, 4K, Cihaz Bağlama | SL3000 |
| PlayReady 4.0 | 2020 | Telemetri, enerji verimliliği, HDR | SL3000 |
Güvenlik seviyeleri PlayReady, kriptografik işlemlerin nasıl gerçekleştirileceğini ve maksimum içerik çözünürlüğünü belirler. SL150 tamamen yazılım tabanlı bir uygulamadır, SL2000 kısmi donanım desteği gerektirir, SL3000 TPM ile tam donanım şifrelemesidir.
SL3000 olan cihazlar 4K HDR içeriği oynatabilir ve şifre çözme anahtarları korunan TPM alanını asla terk etmez. SL2000 1080p ile sınırlıdır, SL150 720p ile sınırlıdır ve yalnızca donanım koruması olmayan masaüstü tarayıcılar için uygundur.
Lisanslama sistemi PlayReady, DRM çözümleri arasında en esnek olanlarından biridir. Zaman aşımlı kiralama, sürekli erişimli satın alma, düzenli anahtar güncellemeli abonelik ve sınırlı süreli önizleme dahil olmak üzere çeşitli dağıtım modellerini destekler.
Her lisans, lisans sunucusunun içerik anahtarına uyguladığı bir politika seti içerir. Politikalar şunları içerebilir: maksimum video çözünürlüğü, korumalı çıkış türü (4K için HDCP zorunludur), etkinleştirme sayısı, zaman kısıtlamaları (mutlak ve göreceli).
public async Task AcquireLicenseAsync(MediaProtectionManager manager)
{
var serviceRequest = new PlayReadyLicenseAcquisitionServiceRequest
{
ContentHeader = new PlayReadyContentHeader(
contentKeyId,
contentUrl,
licenseServerUrl,
null
),
DomainServiceId = domainId
};
var result = await serviceRequest.BeginServiceRequest();
if (result == PlayReadyLicenseAcquisitionResult.Success)
{
HandleLicenseAcquired(serviceRequest.GetLicenses());
}
}
PlayReady desteklenir Windows (UWP, Win32), Xbox, Android (PlayReady Porting Kit aracılığıyla), iOS (sınırlı) ve Smart TV (Samsung Tizen, LG webOS) dahil olmak üzere geniş bir platform yelpazesinde. Her platformun kendi çalışma zamanı ve API uygulaması vardır.
Windows'ta entegrasyon, MediaProtectionManager ve Windows.Media.Protection.PlayReady ad alanındaki PlayReady API aracılığıyla yapılır. Android'de, NDK aracılığıyla uygulamaya gömülen ve DRM ile çalışmak için Java sarmalayıcıları sağlayan PlayReady Porting Kit kullanılır.
UWP ortamında, uygulama bir MediaProtectionManager örneği oluşturur, PlayReady'yi koruma sistemi olarak kaydeder ve lisanslama olay işleyicilerini yapılandırır. MediaPlayerElement oynatıcısı, MediaProtectionManager doğru yapılandırılmışsa korumalı akışları otomatik olarak işler.
PlayReady lisans sunucusu hem Azure altyapısında hem de kendi sunucularınızda dağıtılabilir. Microsoft, Azure Media Services'ın bir parçası olarak hazır PlayReady License Server çözümleri sağlar ve bu da bulut projeleri için entegrasyonu basitleştirir.
Android'de PlayReady, Java sınıflarına sarılmış bir C++ API'si sağlayan NDK kitaplığı libplayready.so aracılığıyla entegre edilir. ExoPlayer, PlayReady UUID'si ile standart MediaDrm API'si aracılığıyla Widevine gibi PlayReady'yi destekler.
MediaDrm için PlayReady UUID'si — 9a22f0a1-9e6c-4f2d-bc8e-4d8d5a2c3f1e'dir. ExoPlayer PlayReady ile başlatılırken yapılandırma Widevine'e benzer: lisans sunucusu URL'si, kimlik doğrulama başlıkları ve DRM türü belirtilir.
PlayReady'nin Android'de doğru çalışması için PlayReady çalışma zamanının yüklü olması gerekir. Bu genellikle PlayReady Porting Kit kullanan Samsung, LG ve diğer markaların cihazlarında önceden yüklüdür. Önceden yüklü çalışma zamanı olmayan cihazlarda, uygulamanın APK'ye libplayready.so kitaplığını dahil etmesi gerekir.
PlayReady, Samsung Tizen ve LG webOS dahil Smart TV platformlarında baskın DRM'dir. Bu platformlarda, yerleşik çalışma zamanı PlayReady, TV yonga seti düzeyinde donanım koruması sağlayarak ek yapılandırma gerektirmeden 4K HDR içerik oynatımına olanak tanır.
Smart TV'de entegrasyon, belirli bir SoC (MediaTek, Realtek, Amlogic) için PlayReady Device Porting Kit aracılığıyla yapılır. TV üreticileri, ürün yazılımı aşamasında PlayReady çalışma zamanını önceden yükler ve uygulamalar, web oynatıcısında veya yerel uygulamada standart EME API'si aracılığıyla onu çalıştırır.
İçerik sağlayıcıları için tüm Smart TV'lerin en yüksek SL3000 seviyesini desteklemediğini unutmamak önemlidir — eski modeller SL2000 ve 1080p kalitesiyle sınırlı olabilir. HDMI üzerinden 4K içerik çıkışı için HDCP uyumluluğu da zorunludur.
PlayReady 4.0, içerik sağlayıcıların içerik kullanımı hakkında ayrıntılı bilgi almasına olanak tanıyan gelişmiş telemetriyi tanıttı: izleme süresi, yetkisiz erişim girişimleri, cihaz türü, çalışma zamanı sürümü. Telemetri verileri güvenli bir kanal aracılığıyla toplanır ve kurcalamayı önlemek için dijital olarak imzalanır.
PlayReady 4.0'daki iptal (revocation) mekanizması, içerik sağlayıcıların güvenliği ihlal edilmiş cihazları veya çalışma zamanı sürümlerini gerçek zamanlı olarak engellemesine olanak tanır. İptal listesi lisans sunucusu aracılığıyla dağıtılır ve her lisans talebinde otomatik olarak güncellenir ve güvenlik açıklarına hızlı yanıt verilmesini sağlar.
Sıkça Sorulan Sorular
PlayReady, dijital içeriği korumak için Microsoft'un DRM çözümüdür. Teknoloji, donanım ve yazılım şifrelemesini, esnek lisanslama politikalarını destekler ve Windows, Xbox, Android ve Smart TV'de çalışır.
PlayReady'nin ana sürümleri: 3.0 (2014) donanım şifrelemesi ve 4K desteği ile, 4.0 (2020) telemetri ve enerji verimliliği ile. Daha yeni sürümler, önceki sürümler için paketlenmiş içerikle geriye dönük uyumludur.
SL150 — yazılım şifrelemesi (720p), SL2000 — kısmi donanım (1080p), SL3000 — TPM aracılığıyla tam donanım şifrelemesi (4K HDR). Güvenlik seviyesi maksimum kaliteyi ve anahtar depolama yöntemini belirler.
Evet, PlayReady iOS'ta desteklenir, ancak sınırlı — iOS için PlayReady Porting Kit aracılığıyla. Ancak Apple cihazlarında FairPlay, Secure Enclave donanım mimarisine tamamen entegre olduğu için tercih edilen DRM olmaya devam etmektedir.
Microsoft'un PlayReady'si Windows ve Xbox'ı destekler, donanım şifrelemesi için TPM kullanır ve gelişmiş telemetri sağlar. Google'ın Widevine'i Android ve Chrome'a yöneliktir, TEE kullanır ve geliştiriciler için ücretli lisans gerektirmez.
Özet
Anahtar teslim bir mobil uygulama geliştireceğiz
IT Sectr, 2017'den beri girişimler ve işletmeler için iOS ve Android uygulamaları oluşturmaktadır. Size danışmanlık yapacak ve en iyi çözümü önereceğiz.
Ayrıca okuyun