موبائل ایپس میں DRM: بنیادی باتیں، حفاظتی اسکیمیں اور کام کرنے کا اصول

مصنف: IT Sectr اشاعت: 2026-05-24 مطالعے کا وقت: 11 منٹ

DRM (ڈیجیٹل رائٹس مینجمنٹ) ڈیجیٹل مواد کو غیر مجاز کاپی اور تقسیم سے بچانے والی ٹیکنالوجیز کا ایک مجموعہ ہے۔ موبائل ایپلیکیشنز میں، DRM ویڈیو، آڈیو اور ای بکس کو انکرپٹ کرنے کے لیے استعمال ہوتا ہے، جو حقوق کے حاملین اور صارفین کے درمیان لائسنسنگ معاہدوں کی تعمیل کو یقینی بناتا ہے۔ Google Widevine Documentation، 2026 کے مطابق، DRM زیادہ تر سٹریمنگ سروسز — Netflix، Spotify، Apple TV+ — میں شامل ہے اور پریمیم مواد کی قانونی تقسیم کے لیے لازمی ہے۔

اہم نکات

  • DRM (ڈیجیٹل رائٹس مینجمنٹ) — ٹیکنالوجیز جو ڈیجیٹل مواد کی کاپی اور تقسیم کو محدود کرکے کاپی رائٹ کی حفاظت کرتی ہیں۔
  • تین اہم اسکیمیں: Widevine (Google)، FairPlay (Apple)، PlayReady (Microsoft) — موبائل پلیٹ فارمز پر حاوی ہیں۔
  • Widevine CDM کے ذریعے Android اور iOS پر کام کرتا ہے، تین حفاظتی سطحوں کو سپورٹ کرتا ہے: L1، L2، L3۔
  • Apple کا FairPlay کلید کی تخلیق کے لیے KSM سرور استعمال کرتا ہے اور iOS اور macOS پر AVFoundation میں شامل ہے۔
  • DRM ڈیکرپشن میڈیا پلیئر کی سطح پر ہوتا ہے — ڈیولپر ExoPlayer یا AVPlayer کے ذریعے تیار ویڈیو سٹریم حاصل کرتا ہے۔

DRM کیا ہے؟

DRM خفیہ نگاری اور سافٹ ویئر کے طریقوں کا ایک مجموعہ ہے جو ڈیجیٹل مواد تک رسائی کو کنٹرول کرتا ہے۔ سادہ انکرپشن کے برعکس، DRM میں لائسنسنگ کا نظام شامل ہے: مواد انکرپٹڈ ہے اور اسے دیکھنے کے لیے ایک کلید درکار ہے جو صارف کے حقوق کی تصدیق کے بعد جاری کی جاتی ہے۔

DRM کا بنیادی مقصد قزاقی کو روکنا اور علاقائی پابندیوں کی تعمیل کو یقینی بنانا ہے۔ DRM کے بغیر، مواد کے مالکان (فلم سٹوڈیوز، ریکارڈ لیبل) سٹریمنگ پلیٹ فارمز کے لیے اپنا مواد لائسنس نہیں دیتے۔ Motion Picture Association (2025) کے مطابق، DRM نے DVD-rip دور کے مقابلے میں سٹریمنگ میں فلموں کی غیر قانونی تقسیم میں 62% کمی کی۔

موبائل ڈیویلپمنٹ میں، DRM میڈیا پلیئر کی سطح پر شامل کیا جاتا ہے: ڈیولپر ExoPlayer (Android)، AVPlayer (iOS) یا Shaka Player (Web) استعمال کرتا ہے، جو انکرپٹڈ سٹریم کی بلٹ ان ڈیکرپشن کو سپورٹ کرتے ہیں۔ ڈیولپر کو خفیہ نگاری لاگو کرنے کی ضرورت نہیں — صرف لائسنسنگ کے لیے SDK ضم کرنا ہوگا۔

DRM اور CENC (مشترکہ انکرپشن)

CENC معیار (مشترکہ انکرپشن — ISO/IEC 23001-7) تمام DRM سسٹمز کے لیے ایک انکرپٹڈ میڈیا فائل استعمال کرنے کی اجازت دیتا ہے۔ مواد ایک بار انکرپٹ کیا جاتا ہے اور کلیدیں مختلف لائسنس سرورز کے ذریعے تقسیم کی جاتی ہیں۔ یہ ملٹی پلیٹ فارم سروسز کے لیے اہم ہے: Netflix ایک فلم کو ایک بار انکرپٹ کرتا ہے اور بغیر دوبارہ کوڈنگ کے Android (Widevine)، iOS (FairPlay) اور Windows (PlayReady) پر پہنچاتا ہے۔

CENC آڈیو اور ویڈیو ٹریکس کے لیے مختلف کلیدوں کے ساتھ CBC انکرپشن استعمال کرتا ہے۔ ہر کلید MPD (MPEG-DASH) یا M3U8 (HLS) مینی فیسٹ میں انکرپٹڈ شکل میں محفوظ کی جاتی ہے۔ مواد کا شناخت کنندہ (KID) انکرپٹڈ سٹریم کو سرور پر لائسنس سے جوڑتا ہے — درست لائسنس کے بغیر کلید ڈیکرپٹ نہیں کی جا سکتی۔

موبائل ایپلیکیشنز میں DRM کیسے کام کرتا ہے

DRM پلے بیک کا عمل چار مراحل پر مشتمل ہے: مینی فیسٹ لوڈ کرنا، لائسنس حاصل کرنا، مواد ڈیکرپٹ کرنا اور ڈسپلے کرنا۔ ہر مرحلہ سسٹم کے مختلف اجزاء — میڈیا پلیئر، CDM ماڈیول اور لائسنس سرور کے ذریعے انجام دیا جاتا ہے۔

  • مینی فیسٹ لوڈ کرنا — پلیئر کو انکرپٹڈ سیگمنٹس، انکرپشن اسکیم اور لائسنس سرور URL کے بارے میں میٹا ڈیٹا کے ساتھ MPD (DASH) یا M3U8 (HLS) ملتا ہے۔
  • لائسنس کی درخواست — پلیئر مواد کا شناخت کنندہ (KID) کنٹینٹ ڈیکرپشن ماڈیول (CDM) کو بھیجتا ہے، جو لائسنس سرور کو درخواست تیار کرتا ہے۔
  • کلید حاصل کرنا — سرور صارف کے حقوق (سبسکرپشن، علاقہ، ڈیوائس) کی تصدیق کرتا ہے اور ڈیوائس کی عوامی کلید سے انکرپٹڈ کلید واپس کرتا ہے۔
  • سٹریم ڈیکرپشن — CDM ڈیوائس کی نجی کلید کا استعمال کرکے کلید ڈیکرپٹ کرتا ہے اور ویڈیو سیگمنٹس کو ریئل ٹائم میں ڈیکرپٹ کرنے کے لیے میڈیا پلیئر کو بھیجتا ہے۔

کنٹینٹ ڈیکرپشن ماڈیول (CDM)

CDM ایک محفوظ سافٹ ویئر یا ہارڈویئر ماڈیول ہے جو مواد کی ڈیکرپشن انجام دیتا ہے۔ Android پر، CDM MediaDrm API کی سطح پر لاگو کیا گیا ہے؛ iOS پر، یہ AVContentKeySession کے ذریعے AVFoundation میں شامل ہے۔ CDM کبھی بھی کلید کو ایپلیکیشن پر ظاہر نہیں کرتا — تمام خفیہ نگاری کے عمل ایک محفوظ ماحول (TEE — ٹرسٹڈ ایگزیکیوشن انوائرنمنٹ) کے اندر انجام پاتے ہیں۔

ہارڈویئر سپورٹ (سیکیورٹی لیول 1) والے آلات پر، CDM TEE کے اندر کام کرتا ہے — کلید کبھی ڈیوائس کی مرکزی میموری میں داخل نہیں ہوتی۔ 4K HDR مواد چلانے کے لیے سٹوڈیوز کی یہ ایک شرط ہے۔ TEE کے بغیر آلات پر، کلیدیں سافٹ ویئر میں ڈیکرپٹ کی جاتی ہیں (L3)، جو تحفظ کو کم کرتا ہے اور زیادہ سے زیادہ معیار کو 540p تک محدود کرتا ہے۔

اہم DRM اسکیمیں

تین DRM سسٹم موبائل پلیٹ فارمز پر حاوی ہیں۔ ہر ایک اپنے ماحولیاتی نظام کے لیے مخصوص ہے، لیکن سب CENC کو سپورٹ کرتے ہیں، جو تمام پلیٹ فارمز پر ایک انکرپٹڈ مواد کے سٹریم کے استعمال کی اجازت دیتا ہے۔

DRMڈیویلپرپلیٹ فارمزیادہ سے زیادہ معیارہارڈویئر تحفظ
WidevineGoogleAndroid، Chrome، Android TV4K HDR (L1)TEE (L1)
FairPlayAppleiOS، iPadOS، macOS، tvOS4K HDR (iOS)Secure Enclave
PlayReadyMicrosoftWindows، Xbox، Windows Phone4K (SL3000)TPM + TEE

ملٹی پلیٹ فارم سروس کے لیے DRM کا انتخاب

تمام پلیٹ فارمز پر چلنے والی سٹریمنگ سروس کے لیے، تینوں DRM سسٹمز کی حمایت درکار ہے۔ ایک عملی حل ملٹی DRM سپورٹ (Muvi، Vualto، Axinom) والا CDN استعمال کرنا ہے، جو صارف کے ڈیوائس کی بنیاد پر لائسنس کی درخواستوں کو خود بخود مناسب سرور پر روٹ کرتا ہے۔ Streaming Learning Center (2025) کے مطابق، 78% سٹریمنگ سروسز ملٹی DRM طریقہ کار استعمال کرتی ہیں۔

CENC کے ساتھ MPEG-DASH معیار فن تعمیر کو آسان بناتا ہے: مواد ایک مشترکہ کلید کے ساتھ ایک بار انکرپٹ کیا جاتا ہے اور DRM سسٹم کلائنٹ کی طرف منتخب کیا جاتا ہے۔ لائسنس سرور ڈیوائس شناخت کنندہ کے ساتھ درخواست وصول کرتا ہے اور مخصوص CDM کے لیے انکرپٹڈ کلید واپس کرتا ہے۔ مختلف پلیٹ فارمز کے لیے مواد میں کوئی فرق نہیں — صرف ایک مختلف لائسنس سرور۔

Widevine: سطحیں اور خصوصیات

Widevine Google کا DRM سسٹم ہے، جو Android پر ڈی فیکٹو معیار ہے۔ یہ تین حفاظتی سطحوں کو سپورٹ کرتا ہے جو یہ طے کرتی ہیں کہ مواد کی ڈیکرپشن کہاں اور کیسے انجام پاتی ہے۔ حفاظتی سطح ڈیوائس کی ہارڈویئر صلاحیتوں پر منحصر ہے اور مواد کی زیادہ سے زیادہ ریزولوشن کا تعین کرتی ہے۔

Widevine حفاظتی سطحیں

Widevine L1 (ہارڈویئر) — سب سے محفوظ سطح۔ تمام خفیہ نگاری کے عمل ٹرسٹڈ ایگزیکیوشن انوائرنمنٹ (TEE) کے اندر انجام پاتے ہیں۔ کلید کبھی محفوظ علاقہ نہیں چھوڑتی۔ L1 آلات 4K HDR تک مواد چلا سکتے ہیں۔ Google سرٹیفیکیشن درکار ہے — ایک عمل جو فلیگ شپ آلات سے گزرتے ہیں۔

Widevine L3 (سافٹ ویئر) — ڈیکرپشن ڈیوائس کی مرکزی میموری میں انجام پاتی ہے۔ ایک تکنیکی طور پر ماہر حملہ آور کلید نکال سکتا ہے۔ پریمیم مواد کے لیے ریزولوشن 540p (960x540) تک محدود ہے۔ تمام Android آلات L3 کو سپورٹ کرتے ہیں، چاہے وہ L1 کے لیے تصدیق شدہ نہ بھی ہوں۔

Widevine L2 — ایک نایاب درمیانی سطح جہاں ڈیکرپشن TEE میں انجام پاتی ہے لیکن رینڈرنگ غیر محفوظ راستے سے ہوتی ہے۔ کچھ سمارٹ TV پر استعمال ہوتی ہے۔ موبائل آلات پر عملی طور پر نہیں پائی جاتی۔

ڈیوائس پر Widevine کی سطح کیسے طے کریں

kotlin
import android.media.MediaDrm
import android.media.UUID

fun checkWidevineLevel(): String {
    val widevineUuid = UUID.fromString("edef8ba9-79d6-4ace-a3c8-27dcd51d21ed")
    val mediaDrm = MediaDrm(widevineUuid)

    val securityLevel = mediaDrm.getPropertyString(
        MediaDrm.PROPERTY_SECURITY_LEVEL
    )

    return when (securityLevel) {
        "L1" -> "Widevine L1 — ہارڈویئر تحفظ"
        "L3" -> "Widevine L3 — سافٹ ویئر تحفظ"
        else -> "Widevine $securityLevel"
    }
}

یہ طریقہ Widevine UUID کے ذریعے CDM سے securityLevel پراپرٹی پوچھتا ہے۔ واپسی کی قدر L1، L2 یا L3 کا سٹرنگ ہے، جو ڈیوائس کی موجودہ حفاظتی سطح کو ظاہر کرتی ہے۔ یہ معلومات سٹریمنگ سروسز کے لیے اہم ہے: اگر کسی ڈیوائس میں صرف L3 ہے تو 4K مواد ڈسپلے نہیں کیا جا سکتا۔

Apple FairPlay: فن تعمیر اور کام کرنے کا اصول

FairPlay Apple کا DRM سسٹم ہے، جو تمام ماحولیاتی نظام پلیٹ فارمز: iOS، iPadOS، macOS، tvOS اور watchOS میں شامل ہے۔ Widevine کے برعکس، FairPlay میں حفاظتی سطحیں نہیں ہیں — تحفظ ڈیوائس کے ذریعے طے ہوتا ہے۔ Secure Enclave والے iOS پر، FairPlay Widevine L1 کے برابر تحفظ فراہم کرتا ہے۔

FairPlay صرف HLS (HTTP Live Streaming) پروٹوکول کے ساتھ کام کرتا ہے۔ مواد .ts سیگمنٹس (MPEG-TS) یا .m4s ٹکڑوں (fMP4) میں پیک کیا جاتا ہے۔ M3U8 مینی فیسٹ میں لائسنس سرور URI (KSM — کی سرور ماڈیول) اور ابتدائی IV کے ساتھ #EXT-X-KEY ٹیگ ہوتا ہے۔ پلے بیک شروع ہونے پر، AVPlayer مینی فیسٹ پڑھتا ہے اور AVContentKeySession کے ذریعے کلید کی درخواست کرتا ہے۔

FairPlay سٹریمنگ انضمام

swift
import AVFoundation

let contentKeySession = AVContentKeySession(keySystem: fairPlayStreaming)
let player = AVPlayer(playerItem: playerItem)
contentKeySession.setDelegate(self, queue: delegateQueue)

func contentKeySession(
    _ session: AVContentKeySession,
    didProvide keyRequest: AVContentKeyRequest
) {
    let assetId = keyRequest.identifier as! String
    sendLicenseRequest(assetId) { licenseData in
        keyRequest.processContentKeyResponse(
            AVContentKeyResponse(fairPlayStreamingKeyResponseData: licenseData)
        )
    }
}

AVContentKeySession کا مندوب مواد کے شناخت کنندہ (assetId) کے ساتھ کلید کی درخواست وصول کرتا ہے۔ ایپلیکیشن یہ ID اپنے لائسنس سرور (KSM) کو بھیجتی ہے، جو انکرپٹڈ کلید واپس کرتا ہے۔ processContentKeyResponse کال کلید کو ڈیکرپشن کے لیے CDM کو بھیجتی ہے۔ اگر لائسنس درست نہیں ہے (میعاد ختم، بلا معاوضہ)، سرور 403 غلطی واپس کرتا ہے اور AVPlayer پلے بیک شروع نہیں کرتا۔

آف لائن مواد کے لیے مستقل کلید لوڈنگ

FairPlay مستقل کلیدوں کو سپورٹ کرتا ہے — آف لائن دیکھنے کے لیے ڈیوائس پر لائسنس محفوظ کرنا۔ کلید حاصل کرنے کے بعد، ایپلیکیشن allowsPersistableKey پرچم کے ساتھ processContentKeyResponse کو کال کرتی ہے۔ کلید Keychain میں محفوظ ہوتی ہے اور بعد کے پلے بیک پر سرور سے رابطہ کیے بغیر استعمال کی جا سکتی ہے۔ تاہم، آف لائن لائسنس کی محدود میعاد ہوتی ہے — عام طور پر 7-30 دن، جس کے بعد تجدید درکار ہے۔

آف لائن لائسنس iOS کے محفوظ اسٹوریج — Keychain میں محفوظ کیے جاتے ہیں۔ جیل بریک یا ڈمپ نکالنے کی کوشش پر، Secure Enclave کلیدوں کو تباہ کر دیتا ہے۔ Apple (2025) کے مطابق، مستقل کلید ٹیکنالوجی Apple TV+، Netflix اور Disney+ میں سفر سے پہلے iPad پر مواد ڈاؤن لوڈ کرنے کے لیے استعمال ہوتی ہے۔

Microsoft PlayReady عالمی تحفظ کے لیے

PlayReady Microsoft کا DRM ہے، جو Windows، Xbox اور لیگیسی Windows Phone پر استعمال ہوتا ہے۔ اگرچہ PlayReady موبائل آلات پر Widevine اور FairPlay کے مقابلے میں کم عام ہے، یہ تمام Microsoft پلیٹ فارمز پر کام کرنے والے عالمی سٹریمنگ حل کے لیے اہم ہے۔ PlayReady TPM کے ذریعے سافٹ ویئر اور ہارڈویئر دونوں تحفظ کو سپورٹ کرتا ہے۔

PlayReady SL (سیکیورٹی لیول) فن تعمیر استعمال کرتا ہے: SL2000 (سافٹ ویئر، Widevine L3 جیسا)، SL3000 (ہارڈویئر، L1 جیسا)۔ Xbox Series X پر، PlayReady SL3000 TEE+TPM کے ذریعے کام کرتا ہے — کلیدیں صرف محفوظ ماحول میں نکالی جاتی ہیں۔ یہ کاپی کے خطرے کے بغیر کنسول پر 4K Blu-ray چلانے کی اجازت دیتا ہے۔

Microsoft Docs (2026) کے مطابق، PlayReady CENC کو سپورٹ کرتا ہے اور Edge براؤزرز میں Media Source Extensions (MSE) کے ذریعے MPEG-DASH کے ساتھ کام کر سکتا ہے۔ Android اور iOS پر موبائل ایپلیکیشنز کے لیے، PlayReady SDK کے ذریعے دستیاب ہے لیکن شاذ و نادر ہی استعمال ہوتا ہے — بنیادی طور پر انٹرپرائز ایپلیکیشنز اور Microsoft میڈیا سروسز کے لیے۔

Android کے لیے PlayReady نیٹو SDK

Microsoft Android اور iOS کے لیے PlayReady نیٹو SDK فراہم کرتا ہے۔ انضمام PlayReady ایکسٹینشن کے ساتھ ExoPlayer کے ذریعے کیا جاتا ہے: ڈیولپر PlayReadyRenderer شامل کرتا ہے، جو ڈی کوڈنگ چین میں شامل ہوتا ہے۔ ExoPlayer MPD مینی فیسٹ میں متعین DRM کی بنیاد پر خود بخود Widevine اور PlayReady کے درمیان سوئچ کرتا ہے۔

اگرچہ PlayReady موبائل ایپلیکیشنز میں شاذ و نادر ہی استعمال ہوتا ہے، Microsoft ماحولیاتی نظام میں سروسز کے لیے اس کی حمایت لازمی ہے — مثال کے طور پر، SharePoint اور Stream پر انٹرپرائز ٹریننگ پلیٹ فارم۔ Microsoft (2025) کے مطابق، PlayReady 23% انٹرپرائز میڈیا حل میں استعمال ہوتا ہے جبکہ Widevine 62% میں۔

موبائل ایپلیکیشن میں DRM کا انضمام

موبائل ایپلیکیشن میں DRM ضم کرنے کے لیے خفیہ نگاری کا کوڈ لکھنے کی ضرورت نہیں — ڈیولپر ایک پلیئر کے ساتھ کام کرتا ہے جو DRM کو مقامی طور پر سپورٹ کرتا ہے۔ آئیے DRM ایکسٹینشن کے ساتھ ExoPlayer کے ذریعے Android پر انضمام دیکھتے ہیں۔

Widevine سپورٹ کے ساتھ ExoPlayer سیٹ اپ

kotlin
val drmSessionManager = DefaultDrmSessionManager.Builder()
    .setUuidAndExoMediaDrmProvider(
        C.WIDEVINE_UUID,
        FrameworkMediaDrm.DEFAULT_PROVIDER
    )
    .setMultiSession(true)
    .build(mediaDrmCallback)

val mediaItem = MediaItem.Builder()
    .setUri(mpdUrl)
    .setDrmConfiguration(
        MediaItem.DrmConfiguration.Builder(C.WIDEVINE_UUID)
            .setLicenseUri(licenseUrl)
            .setLicenseRequestHeaders(headers)
            .build()
    )
    .build()

exoPlayer.setMediaItem(mediaItem)
exoPlayer.prepare()

DefaultDrmSessionManager DRM سیشن کا انتظام کرتا ہے: MediaDrm سیشن بناتا ہے، لائسنس کی درخواستوں کو ہینڈل کرتا ہے اور ڈی کوڈر کو کلیدیں بھیجتا ہے۔ setMultiSession(true) پیرامیٹر مختلف سیشنز میں ایک ساتھ متعدد سٹریمز (آڈیو + ویڈیو) کو ڈیکرپٹ کرنے کی اجازت دیتا ہے۔ MediaDrmCallback لائسنس سرور کو HTTP درخواست لاگو کرتا ہے — عام طور پر SignedRequest باڈی کے ساتھ POST۔

لائسنس کی درخواست کے لیے MediaDrmCallback

kotlin
val mediaDrmCallback = DefaultDrmSessionManager.MediaDrmCallback {
    url, requestBody ->

    val response = OkHttpClient().newCall(
        Request.Builder()
            .url(url)
            .post(RequestBody.create(requestBody, MediaType.parse("application/octet-stream")))
            .addHeader("Authorization", "Bearer ")
            .build()
    ).execute()

    val responseBytes = response.body?.bytes()
        ?: throw DrmSessionException(Exception("Empty license response"))

    responseBytes
}

کال بیک باڈی میں Widevine UUID کے ساتھ لائسنس سرور کو POST درخواست بھیجتا ہے۔ سرور صارف کی تصدیق (ہیڈر میں ٹوکن) کی تصدیق کرتا ہے اور انکرپٹڈ کلید واپس کرتا ہے۔ اگر صارف کے پاس فعال سبسکرپشن نہیں ہے، سرور 403 Forbidden واپس کرتا ہے — ExoPlayer DRM غلطی پیدا کرتا ہے، جسے onPlayerError کے ذریعے ہینڈل کرنا ضروری ہے۔

DRM غلطیوں کو ہینڈل کرنا

DRM غلطیاں اس وقت ہوتی ہیں جب لائسنس درست نہیں ہوتا، میعاد ختم ہو جاتی ہے، یا ڈیوائس مطلوبہ تحفظ کی سطح کو سپورٹ نہیں کرتی۔ ExoPlayer Player.Listener.onPlayerError کے ذریعے TYPE_DRM_LICENSE_EXPIRED، TYPE_DRM_UNSUPPORTED یا TYPE_SOURCE کوڈ کے ساتھ غلطی بھیجتا ہے۔ صارف کو ایک معلوماتی پیغام دکھانے کی سفارش کی جاتی ہے: “یہ ڈیوائس مواد کے لیے دستیاب نہیں ہے” یا “دیکھنے کے لیے اپنی سبسکرپشن کی تجدید کریں۔”

سٹریمنگ سروس کے تجزیوں (2025) کے مطابق، 8% تک ناکام پلے بیک شروع DRM غلطیوں سے متعلق ہیں۔ ان میں سے 60% میعاد ختم شدہ لائسنس، 25% ڈیوائس کی عدم مطابقت اور 15% کلید کی درخواست کے دوران نیٹ ورک کی غلطیاں ہیں۔ 5 سیکنڈ کے بعد خودکار دوبارہ کوشش 40% نیٹ ورک غلطی کے معاملات حل کرتی ہے۔

اکثر پوچھے جانے والے سوالات

کیا موبائل ڈیوائس پر DRM کو نظرانداز کیا جا سکتا ہے؟

Widevine L3 (سافٹ ویئر تحفظ) والے آلات پر تکنیکی طور پر ممکن ہے، جہاں کلید میموری سے نکالی جا سکتی ہے۔ L1 اور Secure Enclave والے FairPlay پر نظرانداز کرنا انتہائی مشکل ہے — TEE تک جسمانی رسائی درکار ہے۔ مواد کے سٹوڈیوز پریمیم مواد کے لیے L1 آلات کو نشانہ بناتے ہیں۔

میرے Android پر Netflix کم معیار کیوں دکھاتا ہے؟

بہت ممکن ہے کہ ڈیوائس Widevine L1 کے لیے تصدیق شدہ نہیں ہے اور L3 استعمال کر رہی ہے۔ Netflix L3 آلات پر معیار کو 540p تک محدود کرتا ہے۔ Google Play سے DRM Info ایپ کے ذریعے Widevine کی سطح چیک کریں۔ Samsung، Pixel اور OnePlus کے فلیگ شپ آلات میں عام طور پر L1 ہوتا ہے۔

سٹریمنگ سروس کے لیے کون سا DRM بہترین ہے؟

ملٹی DRM استعمال کریں: Android کے لیے Widevine، Apple کے لیے FairPlay، Windows کے لیے PlayReady۔ Axinom یا Vualto جیسی سروسز تینوں DRM سسٹمز کے لیے یکساں API فراہم کرتی ہیں۔ مواد CENC کے ذریعے ایک بار انکرپٹ ہوتا ہے اور DRM کا انتخاب کلائنٹ کی طرف خود بخود ہوتا ہے۔

DRM کے ساتھ آف لائن دیکھنا کیسے لاگو کریں؟

iOS پر، AVContentKeySession کے ذریعے FairPlay مستقل کلیدوں کا استعمال کریں۔ Android پر، ExoPlayer OfflineLicenseHelper کے ذریعے Widevine آف لائن لائسنس استعمال کریں۔ کلید محدود میعاد کے ساتھ مقامی طور پر Keychain (iOS) یا KeyStore (Android) میں محفوظ ہوتی ہے — عام طور پر 7 سے 30 دن۔

DRM کے سیاق و سباق میں KID کیا ہے؟

KID (کلید ID) — CENC مینی فیسٹ میں انکرپشن کلید کا ایک منفرد 16 بائٹ شناخت کنندہ۔ ہر KID مواد کے ایک مخصوص حصے (مثال کے طور پر، فلم کا 10 منٹ کا سیگمنٹ) سے منسلک ہوتا ہے۔ لائسنس سرور اپنے ڈیٹا بیس میں متعلقہ کلید تلاش کرنے کے لیے KID کا استعمال کرتا ہے۔ ایک فلم میں مختلف حصوں کے لیے 20 مختلف KIDs ہو سکتے ہیں۔

خلاصہ

  • DRM (ڈیجیٹل رائٹس مینجمنٹ) — ڈیجیٹل مواد کے لیے خفیہ نگاری تحفظ کا نظام، قانونی سٹریمنگ کے لیے لازمی۔
  • تین اہم اسکیمیں: Widevine (Android)، FairPlay (iOS)، PlayReady (Windows) — یکساں مواد انکرپشن کے لیے CENC استعمال کرتی ہیں۔
  • Widevine L1 (TEE کے ذریعے ہارڈویئر تحفظ) 4K HDR کو قابل بناتا ہے، L3 (سافٹ ویئر) 540p تک محدود ہے۔ سطح MediaDrm.getPropertyString کے ذریعے چیک کی جاتی ہے۔
  • FairPlay صرف HLS کے ساتھ کام کرتا ہے اور KSM سرور سے کلیدیں درخواست کرنے کے لیے AVContentKeySession استعمال کرتا ہے۔
  • DRM انضمام میڈیا پلیئر کے ذریعے کیا جاتا ہے: ExoPlayer (Android) DefaultDrmSessionManager کے ساتھ، AVPlayer (iOS) AVContentKeySession کے ساتھ۔
  • DRM غلطیاں onPlayerError کے ذریعے ہینڈل کی جاتی ہیں — میعاد ختم شدہ لائسنس، ڈیوائس کی عدم مطابقت اور نیٹ ورک کی ناکامیاں 8% ناکام شروع ہونے کا سبب بنتی ہیں۔
  • ملٹی پلیٹ فارم سروسز کے لیے، CDN فراہم کنندہ اور یکساں CENC مواد انکرپشن کے ساتھ ملٹی DRM طریقہ کار کی سفارش کی جاتی ہے۔

ہم ایک موبائل ایپلیکیشن ٹرنکی تیار کریں گے

IT Sectr 2017 سے اسٹارٹ اپس اور کاروبار کے لیے iOS اور Android ایپلیکیشنز بناتا ہے۔ ہم آپ کو مشورہ دیں گے اور بہترین حل تجویز کریں گے۔

پروجیکٹ پر بحث کریں

مزید پڑھیں