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 ถูกฝังอยู่ในแอปพลิเคชันหรือเครื่องเล่นและรับผิดชอบการถอดรหัสเนื้อหาบนอุปกรณ์
เซิร์ฟเวอร์ใบอนุญาตสร้าง คีย์ใบอนุญาต โดยอิงตามนโยบายที่กำหนดโดยผู้ให้บริการเนื้อหา ตัวหีบห่อเนื้อหาเข้ารหัสไฟล์สื่อโดยใช้มาตรฐาน Common Encryption (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 และ PlayReady API ในเนมสเปซ Windows.Media.Protection.PlayReady บน Android จะใช้ PlayReady Porting Kit ซึ่งถูกฝังในแอปพลิเคชันผ่าน NDK และให้ wrappers Java สำหรับทำงานกับ DRM
ในสภาพแวดล้อม UWP แอปพลิเคชันสร้างอินสแตนซ์ของ MediaProtectionManager ลงทะเบียน PlayReady เป็นระบบป้องกันและกำหนดค่าตัวจัดการเหตุการณ์การให้ใบอนุญาต เครื่องเล่น MediaPlayerElement จะจัดการสตรีมที่ได้รับการป้องกันโดยอัตโนมัติหาก MediaProtectionManager ถูกกำหนดค่าอย่างถูกต้อง
เซิร์ฟเวอร์ใบอนุญาต PlayReady สามารถปรับใช้ได้ทั้งบนโครงสร้างพื้นฐาน Azure และเซิร์ฟเวอร์ของคุณเอง Microsoft ให้โซลูชั่น PlayReady License Server ที่พร้อมใช้งานเป็นส่วนหนึ่งของ Azure Media Services ซึ่งช่วยให้การผนวกสำหรับโครงการคลาวด์ง่ายขึ้น
บน Android PlayReady จะถูกผนวกผ่าน ไลบรารี NDK libplayready.so ซึ่งให้ API แบบ C++ ที่ห่อหุ้มในคลาส Java ExoPlayer รองรับ PlayReady เช่นเดียวกับ Widevine ผ่าน MediaDrm API มาตรฐานพร้อมกับ 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 ไว้ล่วงหน้าในขั้นตอนเฟิร์มแวร์ และแอปพลิเคชันเริ่มต้นการทำงานผ่าน EME API มาตรฐานในเว็บเพลเยอร์หรือแอปพลิเคชันเนทีฟ
สำหรับผู้ให้บริการเนื้อหา สิ่งสำคัญที่ต้องพิจารณาคือไม่ใช่ 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 เราจะให้คำแนะนำและเสนอวิธีแก้ปัญหาที่ดีที่สุดแก่คุณ