PlayReady هي تقنية DRM طورتها Microsoft لحماية المحتوى على Windows و Xbox والمنصات الأخرى التي تدعم بيئة التشغيل الشاملة UWP. يستخدم النظام نموذج أمان ثلاثي المستويات SL (Security Level) من SL150 إلى SL3000، حيث يتطلب أعلى مستوى تشفيراً عبر الأجهزة من خلال TPM. وفقاً لوثائق Microsoft Docs (2025)، يدعم PlayReady 4.0 تشفير 4K HDR وتحليلات متقدمة لاستخدام المحتوى.
الخلاصة
PlayReady هي تقنية إدارة الحقوق الرقمية (DRM) طورتها Microsoft في عام 2007 لحماية المحتوى الوسائطي والأصول الرقمية الأخرى. حلت محل WMDRM (Windows Media DRM) وأصبحت معيار الحماية لـ Windows Media Center و Xbox Video و Microsoft Silverlight.
الميزة الرئيسية لـ PlayReady هي نظام ترخيص موحد لأنواع مختلفة من المحتوى: الفيديو والصوت والكتب الإلكترونية والألعاب والمستندات. تدعم التقنية نماذج التوزيع بالاشتراك (Subscription) والإيجار (Rental) والشراء (Purchase)، مما يجعلها جذابة لخدمات الوسائط والمنصات التعليمية.
تتكون بنية PlayReady من ثلاثة مكونات رئيسية: بيئة تشغيل العميل PlayReady Device Porting Kit، وخادم التراخيص PlayReady License Server، وأداة تغليف المحتوى. بيئة تشغيل PlayReady تُدمج في تطبيق أو مشغل وتتولى فك تشفير المحتوى على الجهاز.
يولد خادم التراخيص مفاتيح الترخيص استناداً إلى السياسات التي يحددها موفر المحتوى. تقوم أداة تغليف المحتوى بتشفير ملفات الوسائط باستخدام معيار التشفير المشترك (CENC) وتضمين البيانات الوصفية للربط بترخيص محدد.
عملية الحماية PlayReady تبدأ بمرحلة التغليف، حيث يتم تشفير المحتوى الوسائطي بمفتاح متماثل، ثم يتم حماية هذا المفتاح بالمفتاح العام لخادم التراخيص. يتم وضع المحتوى المغلف على CDN ليكون متاحاً للتنزيل أو البث.
عندما يطلب المستخدم محتوى محمياً، يبدأ المشغل طلب ترخيص إلى خادم التراخيص. يتحقق الخادم من بيانات اعتماد المستخدم وحقوق الوصول الخاصة به (اشتراك، إيجار، شراء) ويصدر ترخيصاً يحتوي على مفتاح فك التشفير.
يستخدم PlayReady بروتوكول تبادل يعتمد على SOAP أو JSON، حيث يتضمن طلب الترخيص معرف المحتوى (Content ID) ومعرف الجهاز وتوقيع التطبيق. يعيد الخادم الترخيص بتنسيق XML مشفر بالمفتاح العام للجهاز.
يحتوي الترخيص على مفتاح تشفير المحتوى (CEK) مغلفاً في مفتاح الجهاز (Device Key)، ومجموعة من السياسات. يمكن للسياسات تقييد وقت التشغيل وجودة الفيديو وعدد الأجهزة ونوع المخرج (HDMI، مركب).
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، قدم دعم التشفير عبر الأجهزة من خلال TPM 2.0 ومستوى الأمان SL3000 لمحتوى 4K. أضاف هذا الإصدار إمكانية ربط الترخيص بجهاز معين من خلال آلية Device Binding، مما منع نقل التراخيص بين الأجهزة.
PlayReady 4.0، الذي أُعلن عنه في 2020، وسع الوظائف بثلاث ابتكارات رئيسية: دعم القياس عن بعد المتقدم لاستخدام المحتوى، وتحليلات محسنة لموفري المحتوى، وتحسين استهلاك الطاقة على الأجهزة المحمولة.
| الإصدار | السنة | الميزات الرئيسية | أقصى SL |
|---|---|---|---|
| PlayReady 2.0 | 2011 | تشفير برمجي، حتى 1080p | SL2000 |
| PlayReady 3.0 | 2014 | تشفير عبر الأجهزة، 4K، Device Binding | SL3000 |
| PlayReady 4.0 | 2020 | القياس عن بعد، كفاءة الطاقة، HDR | SL3000 |
مستويات الأمان PlayReady تحدد كيفية تنفيذ العمليات التشفيرية وأقصى دقة للمحتوى. SL150 هو تنفيذ برمجي بالكامل، SL2000 يتطلب دعماً جزئياً عبر الأجهزة، SL3000 هو تشفير كامل عبر الأجهزة مع TPM.
الأجهزة المزودة بـ SL3000 يمكنها تشغيل محتوى 4K HDR، ولا تغادر مفاتيح فك التشفير منطقة TPM المحمية أبداً. SL2000 محدود بـ 1080p، SL150 محدود بـ 720p ومناسب فقط لمتصفحات سطح المكتب دون حماية عبر الأجهزة.
نظام الترخيص PlayReady هو واحد من أكثر الأنظمة مرونة بين حلول DRM. يدعم نماذج توزيع مختلفة: الإيجار مع انتهاء الصلاحية، والشراء مع وصول دائم، والاشتراك مع تحديث دوري للمفاتيح، والمعاينة بمدة محدودة.
يحتوي كل ترخيص على مجموعة سياسات يطبقها خادم التراخيص على مفتاح المحتوى. يمكن أن تشمل السياسات: أقصى دقة فيديو، نوع المخرج المحمي (HDCP إلزامي لـ 4K)، عدد التفعيلات، قيود زمنية (مطلقة ونسبية).
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 مدعوم على مجموعة واسعة من المنصات، بما في ذلك Windows (UWP، Win32)، Xbox، Android (عبر PlayReady Porting Kit)، iOS (بشكل محدود) و Smart TV (Samsung Tizen، LG webOS). لكل منصة بيئة تشغيل وواجهة برمجة تطبيقات API خاصة بها.
على Windows، يتم التكامل من خلال MediaProtectionManager و API PlayReady في مساحة الأسماء Windows.Media.Protection.PlayReady. على Android، يُستخدم PlayReady Porting Kit الذي يُدمج في التطبيق عبر NDK ويوفر أغلفة Java للعمل مع DRM.
في بيئة UWP، ينشئ التطبيق مثيلاً لـ MediaProtectionManager، ويسجل PlayReady كنظام حماية، ويكون معالجات أحداث الترخيص. يعالج مشغل MediaPlayerElement التدفقات المحمية تلقائياً إذا تم تكوين MediaProtectionManager بشكل صحيح.
خادم التراخيص PlayReady يمكن نشره على بنية Azure التحتية أو على خوادم خاصة. توفر Microsoft حلولاً جاهزة لخادم تراخيص PlayReady كجزء من Azure Media Services، مما يبسط التكامل للمشاريع السحابية.
على Android، يتم دمج PlayReady من خلال مكتبة NDK libplayready.so التي توفر API بلغة C++ مغلفة في فئات Java. يدعم ExoPlayer PlayReady تماماً مثل Widevine من خلال API MediaDrm القياسي مع UUID الخاص بـ PlayReady.
UUID الخاص بـ PlayReady لـ MediaDrm هو — 9a22f0a1-9e6c-4f2d-bc8e-4d8d5a2c3f1e. عند تهيئة ExoPlayer مع PlayReady، يكون التكوين مشابهاً لـ Widevine: يتم تحديد URL خادم التراخيص ورؤوس المصادقة ونوع DRM.
لكي يعمل PlayReady بشكل صحيح على Android، يجب تثبيت بيئة تشغيل PlayReady، والتي تكون مثبتة مسبقاً عادة على أجهزة Samsung و LG والعلامات التجارية الأخرى التي تستخدم PlayReady Porting Kit. على الأجهزة التي لا تحتوي على بيئة تشغيل مثبتة مسبقاً، يجب أن يتضمن التطبيق مكتبة libplayready.so في APK.
PlayReady هو DRM المهيمن على منصات Smart TV، بما في ذلك Samsung Tizen و LG webOS. على هذه المنصات، توفر بيئة التشغيل المضمنة PlayReady حماية عبر الأجهزة على مستوى شريحة التلفزيون، مما يتيح تشغيل محتوى 4K HDR دون تكوين إضافي.
يتم التكامل على Smart TV من خلال PlayReady Device Porting Kit لـ SoC معينة (MediaTek، Realtek، Amlogic). يقوم مصنعو التلفزيون بتثبيت بيئة تشغيل PlayReady مسبقاً في مرحلة البرنامج الثابت، وتقوم التطبيقات بتشغيلها عبر API EME القياسي في مشغل ويب أو تطبيق أصلي.
بالنسبة لموفري المحتوى، من المهم ملاحظة أنه ليست كل أجهزة Smart TV تدعم أعلى مستوى SL3000 — فقد تكون النماذج الأقدم محدودة بـ SL2000 وجودة 1080p. التوافق مع HDCP إلزامي أيضاً لإخراج محتوى 4K عبر HDMI.
قدم PlayReady 4.0 قياساً عن بعد متقدماً يسمح لموفري المحتوى بالحصول على معلومات مفصلة حول استخدام المحتوى: وقت المشاهدة، محاولات الوصول غير المصرح به، نوع الجهاز، إصدار بيئة التشغيل. بيانات القياس عن بعد تُجمع عبر قناة آمنة وتُوقع رقمياً لمنع التزوير.
آلية الإبطال (revocation) في PlayReady 4.0 تسمح لموفري المحتوى بحظر الأجهزة المخترقة أو إصدارات بيئة التشغيل في الوقت الفعلي. قائمة الإبطال تُوزع عبر خادم التراخيص وتُحدَّث تلقائياً مع كل طلب ترخيص، مما يضمن استجابة سريعة للثغرات الأمنية.
الأسئلة الشائعة
PlayReady هو حل DRM من Microsoft لحماية المحتوى الرقمي. تدعم التقنية التشفير عبر الأجهزة والبرمجي، وسياسات ترخيص مرنة، وتعمل على Windows و Xbox و Android و Smart TV.
الإصدارات الرئيسية لـ PlayReady: 3.0 (2014) مع تشفير عبر الأجهزة ودعم 4K، 4.0 (2020) مع القياس عن بعد وكفاءة الطاقة. الإصدارات الأحدث متوافقة مع المحتوى المغلف للإصدارات السابقة.
SL150 — تشفير برمجي (720p)، SL2000 — مشفر عبر الأجهزة جزئياً (1080p)، SL3000 — تشفير كامل عبر الأجهزة عبر TPM (4K HDR). مستوى الأمان يحدد أقصى جودة وطريقة تخزين المفاتيح.
نعم، PlayReady مدعوم على iOS، ولكن بشكل محدود — من خلال PlayReady Porting Kit لنظام iOS. ومع ذلك، على أجهزة Apple، يظل FairPlay هو DRM المفضل لأنه مدمج بالكامل في بنية Secure Enclave.
PlayReady من Microsoft يدعم Windows و Xbox، ويستخدم TPM للتشفير عبر الأجهزة ويوفر قياساً عن بعد متقدماً. Widevine من Google موجه لنظام Android و Chrome، ويستخدم TEE ولا يتطلب ترخيصاً مدفوعاً للمطورين.
الملخص
سنقوم بتطوير تطبيق جوال جاهز
تقدم IT Sectr تطبيقات iOS وAndroid للشركات الناشئة والشركات منذ عام 2017. سوف نقدم لك النصح ونقترح أفضل حل.