この項目「デジタル著作権管理(DRM)」では、デジタルコンテンツの著作権を技術的に保護・管理するDRMの仕組みと主要技術を理解する。
FairPlay・Widevine・PlayReady・AACSそれぞれの技術アーキテクチャ、暗号方式、ライセンス配信の仕組みを理解し、実装・開発に必要な知識を習得する。

キーワード

DRM(Digital Rights Management),技術的保護手段,AES-128,CENCコモン暗号化),EME(Encrypted Media Extensions),CDM(Content Decryption Module),TEE(Trusted Execution Environment),FairPlay Streaming(FPS),AVContentKeySession,Widevine,セキュリティレベル(L1/L2/L3),PlayReady,ライセンスサーバー,AACS,Media Key Block(MKB),電子透かし(ウォーターマーク),DMA(デジタルミレニアム著作権法),技術的保護手段の回避規制

1. 概要

デジタル著作権管理(DRM:Digital Rights Management)とは、デジタルコンテンツの著作権を技術的に保護・管理するための仕組みの総称です。音楽・動画・電子書籍・ソフトウェアなどのデジタルコンテンツは、複製コストがほぼゼロであるため、技術的な保護なしでは著作権の実効的な保護が困難です。

DRMは暗号技術・認証技術・ライセンス管理を組み合わせ、コンテンツの利用条件(再生期限・再生回数・対応デバイス・印刷可否など)をコンテンツ自体に付与します。現代のストリーミングサービスやパッケージメディアに不可欠な基盤技術であり、開発者はDRM統合の設計・実装において各技術の仕組みと制約を正確に理解する必要があります。

2. 詳細説明

2.1. DRMの基本的な仕組み

DRMシステムは、コンテンツの暗号化・ライセンスの発行・クライアント側での復号という3つのフェーズで機能します。

クライアント側

配信側

配信

ライセンス要求

ライセンス(コンテンツ鍵)発行

コンテンツ

暗号化エンコーダー

暗号化コンテンツ

コンテンツ鍵

ライセンスサーバー

プレイヤー/ブラウザ

CDM/DRMクライアント

復号・再生

  1. コンテンツ暗号化:コンテンツ鍵(対称鍵)でコンテンツを暗号化し、CDNや配信サーバーへ配置する
  2. ライセンス要求:クライアントが再生時にライセンスサーバーへ鍵の発行を要求する(デバイス証明書・ユーザー認証を添付)
  3. ライセンス発行:ライセンスサーバーがデバイスの正当性を検証し、コンテンツ鍵と利用条件を含むライセンスをクライアントへ返す
  4. 復号・再生:クライアントのDRMモジュール(CDM)が保護された環境でコンテンツ鍵を取り出し、復号して再生する

コンテンツ鍵そのものはネットワークを平文で流れることはなく、デバイスの公開鍵で暗号化されてライセンス内に格納されます。

2.2. 主な機能

機能内容実装例
アクセス制御認証されたユーザー・デバイスのみがコンテンツを利用できるよう制限するストリーミングサービスのデバイス登録・ログイン認証
コピー制限複製回数・複製先デバイス数を制限するダウンロードコンテンツの端末ひも付け
利用条件の付与再生期限・再生回数・印刷可否などをライセンスに設定する電子書籍レンタルの返却期限、VODの視聴期限
暗号化コンテンツをAES等で暗号化し、正規ライセンスなしでは再生不能にするHLS/DASH配信のセグメント暗号化
電子透かし(ウォーターマーク)コンテンツに視覚的に不可視な識別情報を埋め込み、流出元の追跡を可能にする映像配信の視聴者IDの埋め込み

2.3. DRMと著作権法の関係

日本の著作権法では、DRMなどの技術的保護手段を「技術的保護手段」と定義し(著作権法第2条第1項第20号)、その回避行為を規制しています。第30条第2項により、技術的保護手段を回避して行った私的複製は、私的複製の適用除外となり違法となります。また不正競争防止法第2条第1項第17号・18号により、回避装置の提供・譲渡なども規制されています。

米国では**DMCA(Digital Millennium Copyright Act:デジタルミレニアム著作権法)**の第1201条が技術的保護手段の回避を禁止しており、EU指令(InfoSoc Directive)も同様の規制を設けています。国際的に技術的保護手段の回避は違法行為として統一的に扱われています。

一方で、DRMはユーザーの利便性とのトレードオフが存在します。サービス終了後のコンテンツ利用不能問題、正規購入者のデバイス移行時の制約、障害者アクセシビリティへの影響などが継続的な課題として議論されています。

3. 代表的なDRM技術

3.1. FairPlay(Apple)

概要と適用範囲

FairPlayはAppleが開発・運用するプロプライエタリDRMです。iTunes Store・Apple Music・Apple TV+・App Store内の有料コンテンツに適用されます。ストリーミング向けにはFairPlay Streaming(FPS)として拡張されており、HLS(HTTP Live Streaming)と組み合わせて動作します。動作環境はAppleデバイス(iPhone・iPad・Mac・Apple TV)およびSafariブラウザに限定されています。

暗号化方式

コンテンツの暗号化にはAES-128(CBCモード)を使用します。HLSセグメント単位で暗号化され、コンテンツ鍵はAppleのKSM(Key Security Module)で管理されます。コンテンツ提供者はAppleからFPS展開パッケージを入手し、自社のKSMを構築する必要があります。

ライセンス配信の仕組み

コンテンツ提供者KSMアプリAVPlayer(iOS/macOS)コンテンツ提供者KSMアプリAVPlayer(iOS/macOS)コンテンツ鍵要求(SKD URL通知)SPC(Server Playback Context)送信CKC(Content Key Context)返却CKC渡しAES-128鍵取り出し・復号再生
  1. HLSマニフェストのEXT-X-KEYタグにSKD(Streaming Key Delivery)URLが記載される
  2. AVPlayerがSKD URLを検出し、アプリに対してSPC(Server Playback Context)を生成して渡す
  3. アプリがSPCをコンテンツ提供者のKSMへHTTPS POSTで送信する
  4. KSMがデバイスの正当性を検証し、CKC(Content Key Context)を返す
  5. アプリがCKCをAVPlayerへ渡し、AVPlayerが内部でコンテンツ鍵を取り出して復号・再生する

開発者向けAPI

現行の推奨APIはAVContentKeySession(iOS 10.3以降)です。旧来のAVAssetResourceLoaderDelegateも動作しますが、オフライン再生(ダウンロードコンテンツ)への対応はAVContentKeySessionのみでサポートされます。Safariブラウザでの実装にはEME(Encrypted Media Extensions)APIを使用し、キーシステム識別子はcom.apple.fpsです。

制約と注意点

  • Apple以外のプラットフォームでは動作しない(AndroidやWindowsには非対応)
  • KSM構築にはAppleとのライセンス契約(FPS展開パッケージの取得)が必要
  • マルチDRM構成では他のDRMと並行してFPSも実装する必要がある

3.2. Widevine(Google)

概要と適用範囲

WidevineはGoogleが2010年に買収・提供するDRM技術です。YouTube・Netflix・Amazon Prime Video・Google Play Moviesなど主要なストリーミングサービスに広く採用されており、Chrome・Android・Chromecast・多数のスマートTV・ゲーム機に対応しています。W3C標準のEME(Encrypted Media Extensions)に準拠しており、現在最も広いデバイスカバレッジを持つDRMです。

セキュリティレベル

Widevineは3段階のセキュリティレベルを定義しており、コンテンツ提供者はコンテンツの重要度に応じて要求レベルを設定できます。

レベル復号処理の場所メディア処理の場所主な対応デバイスHD/4K配信
L1TEE(ハードウェア保護領域)内TEE内ハードウェアTEE搭載のAndroid端末・スマートTV
L2TEE内TEE外(ソフトウェア)一部のAndroid端末(移行期的な位置付け)制限あり
L3ソフトウェアのみソフトウェアのみPCブラウザ(Chrome等)、TEE非対応デバイスSD相当に制限されることが多い

TEE(Trusted Execution Environment)はCPUレベルで隔離された保護実行環境で、ARM TrustZoneなどが該当します。L1ではコンテンツ鍵とメディアデータがTEE外に出ないため、最も高いセキュリティを実現します。

暗号化方式とCENC

WidevineはMPEG-DASH配信とともに**CENC(Common Encryption:コモン暗号化)**を使用します。CENCはISO/IEC 23001-7として標準化された暗号化スキームで、同一コンテンツを複数のDRMで保護できるよう設計されています。暗号化方式はAES-128のCTRモード(cenc)またはCBCモード(cbcs)を使用します。(参照:Widevine公式サイト

ライセンス配信の仕組み

WidevineライセンスサーバーWidevine CDMEME API / ExoPlayerブラウザ/AndroidWidevineライセンスサーバーWidevine CDMEME API / ExoPlayerブラウザ/Android再生開始ライセンス取得要求ライセンス要求(protobuf形式)ライセンス返却(コンテンツ鍵 + 利用ポリシー)復号可能状態通知復号・再生

ライセンス要求・応答のメッセージフォーマットにはProtocol Buffers(protobuf)が使用されています。コンテンツ提供者はGoogleが提供するWidevine License Serverをそのまま利用するか、または自社にWidevine Proxy Server(Widevine Modular DRM)を構築してライセンス発行ロジックをカスタマイズすることができます。

開発者向けAPI

ブラウザではW3C EME APIを使用し、キーシステム識別子はcom.widevine.alphaです。Androidではメディア再生ライブラリExoPlayer(Media3)がWidevine統合を標準でサポートしており、DefaultDrmSessionManagerを使ってライセンスサーバーURLとHTTPヘッダーを設定するだけで実装できます。

3.3. PlayReady(Microsoft)

概要と適用範囲

PlayReadyはMicrosoftが開発・ライセンス提供するDRMです。Windows・Xbox・Edge(Chromiumベースを含む)・多数のスマートTV・Silverlight(廃止済み)に対応しています。MPEG-DASH・HLS・Smooth Streamingの複数の配信フォーマットをサポートしており、エンタープライズ向けの高度なライセンス管理機能(チェーンライセンス・ドメイン管理)を備えています。

暗号化方式

PlayReadyはAES-128のCTRモード(CENC準拠)とCBCモード(CBCS準拠)の両方をサポートします。コンテンツ鍵はデバイスの公開鍵で暗号化されてライセンス内に格納されます。PlayReady 4.0以降ではAES-256にも対応しています。

ライセンス管理の高度な機能

PlayReadyが他のDRMと比較して優れているのは、エンタープライズ向けのライセンス管理機能です。

  • チェーンライセンス(Root / Leaf):ルートライセンスに利用期間などの主要ポリシーを設定し、リーフライセンスに個別コンテンツ鍵を格納する2層構造。コンテンツ更新時にリーフだけ再発行すればよいため、大量コンテンツの管理効率が向上する
  • ドメインライセンス:複数デバイスをひとつのドメインに登録し、コンテンツをドメイン内デバイス間で共有可能にする仕組み。家族内でのコンテンツ共有シナリオに対応する
  • 組み込みライセンス:ライセンスをコンテンツファイル内に事前埋め込みし、オフライン環境での再生を可能にする
  • セキュアクロック:デバイスのシステム時刻改ざんによる有効期限回避を防ぐための改ざん耐性のある時刻管理機能

ライセンス配信の仕組み

PlayReadyライセンスサーバークライアント(Edge/Xbox等)PlayReadyライセンスサーバークライアント(Edge/Xbox等)要求にはデバイス証明書・コンテンツID・チャレンジデータを含むライセンス取得要求(SOAP over HTTPS)デバイス認証・ポリシー評価ライセンス返却(AES暗号化コンテンツ鍵 + ポリシー)復号・再生

PlayReadyのライセンス要求はSOAP(Simple Object Access Protocol)over HTTPSで行われます。MicrosoftはPlayReady License Server SDKを提供しており、コンテンツ提供者はこれを使って自社ライセンスサーバーを構築します。また、Azure Media Servicesなどのクラウドサービスを通じてライセンスサーバー機能を利用することも可能です。

開発者向けAPI

ブラウザ(Edge)ではW3C EME APIを使用し、キーシステム識別子はcom.microsoft.playreadyです。Windowsアプリ開発ではWinRT(Windows Runtime)のWindows.Media.Protection名前空間を使用します。

3.4. AACS(Advanced Access Content System)

概要と適用範囲

AACS(Advanced Access Content System)は、Blu-rayディスクおよびHD DVDのコンテンツ保護のために開発されたDRM規格です。IBM・Intel・Microsoft・Panasonic・Sony・Toshiba・Walt Disney・Warnerの8社によって設立されたAACS LA(Licensing Administrator)が管理しています。現行のBlu-rayではAACS、Ultra HD Blu-rayでは強化版のAACS 2.0が採用されています。

鍵管理の仕組み(Media Key Block)

AACSの最も特徴的な仕組みはMKB(Media Key Block)とデバイス鍵によるコンテンツ鍵の導出です。ストリーミングDRMとは異なり、ネットワーク接続なしでオフラインのコンテンツ保護を実現します。

失効していない場合

失効している場合

MKBMedia Key Blockディスク上に記録

デバイス鍵でMKBを処理

デバイス鍵各プレイヤー固有

メディア鍵 Km の取得

再生不可

ボリュームIDディスク固有

ボリューム固有鍵 Kvu の計算

タイトル鍵の復号

コンテンツの復号・再生

  1. デバイス鍵:各プレイヤー(メーカー・機種)に固有の鍵セット。AACS LAからライセンスを受けた製造者に付与される
  2. MKB(Media Key Block):ディスクに記録されたデータ構造。全デバイス向けの暗号化メディア鍵を含む。デバイス鍵でMKBを処理することでメディア鍵(Km)が得られる
  3. ボリュームID:ディスクの読み取り専用領域(BCA:Burst Cutting Area)に記録されたディスク固有のID。通常のデータ複製では再現できない
  4. タイトル鍵:Km とボリュームID から導出したボリューム固有鍵(Kvu)でタイトル鍵を復号し、コンテンツを復号する

デバイス失効(Revocation)

特定のプレイヤーの秘密鍵が漏洩・解析された場合、AACS LAは新しいディスクのMKBをアップデートすることで、そのデバイス鍵ではメディア鍵を取り出せないようにします(デバイス失効)。これにより、将来発売されるディスクは漏洩したプレイヤーでは再生できなくなります。ただし、既に市場に出ているディスクには影響しません。

AACS 2.0(Ultra HD Blu-ray向け強化)

AACS 2.0はUltra HD Blu-ray(4K)向けに設計され、以下の強化が加えられています。

  • バス暗号化:ドライブとホスト間のデータバスを暗号化し、バス盗聴による鍵抽出を防止する
  • オンライン失効チェック:再生時にインターネット経由でデバイスの有効性を確認する(オプション)
  • より長い鍵長:暗号強度の向上

AACSの脆弱性と経緯

2007年、研究者がAACSのデバイス鍵を解析・公開し、事実上の突破事例が発生しました。AACS LAはMKBのアップデートによって当該デバイス鍵を失効させましたが、その後も複数のデバイス鍵が順次解析されるいたちごっこが続きました。この経験がAACS 2.0でのバス暗号化強化の背景となっています。

4. 4技術の比較

4.1. 主要特性比較

項目FairPlay(Apple)Widevine(Google)PlayReady(Microsoft)AACS
開発・管理AppleGoogleMicrosoftAACS LA(8社コンソーシアム)
主な用途Apple ecosystem ストリーミングWebブラウザ・AndroidストリーミングWindows・Xbox・スマートTV ストリーミングBlu-ray・Ultra HD Blu-rayパッケージメディア
暗号化アルゴリズムAES-128 CBCAES-128 CTR / CBC(CENC/CBCS)AES-128 CTR / CBC(CENC/CBCS)、AES-256対応(4.0以降)AES-128(MKBベースの鍵導出)
配信方式HLSMPEG-DASH(HLS・MP4も対応)MPEG-DASH・Smooth Streaming・HLSパッケージメディア(ディスク)
ライセンス配信HTTPS(SPC/CKCプロトコル)HTTPS(protobuf)SOAP over HTTPS不要(ディスク上のMKBで完結)
セキュリティレベル区分なし(Apple審査で担保)L1 / L2 / L3SL150 / SL2000 / SL3000AACS / AACS 2.0
対応プラットフォームApple デバイス・Safari のみChrome・Android・Chromecast・スマートTVなど広範Windows・Edge・Xbox・スマートTVなどBlu-rayプレイヤー・UHD BDプレイヤー
EME対応キーシステムcom.apple.fpscom.widevine.alphacom.microsoft.playready非対応(EMEはストリーミング向け)
オフライン再生対応(AVContentKeySession)対応(OfflineLicenseHelper)対応(組み込みライセンス)ネットワーク不要で完全オフライン
ライセンスサーバー構築必要(Apple FPSパッケージ取得要)必要(GoogleまたはProxy Server)必要(PlayReady License Server SDK)不要
マルチDRM併用必要(他プラットフォーム対応時)CENCにより他DRMと共存可能CENCにより他DRMと共存可能ストリーミングDRMとは別次元

4.2. マルチDRM構成

主要なビデオストリーミングサービスでは、単一のDRMではすべてのデバイスをカバーできないため、マルチDRM構成が標準的なアーキテクチャです。CENCによって同一の暗号化コンテンツを複数のDRMで保護できるため、コンテンツを重複エンコードする必要はありません。

iOS / macOS / Safari

Android / Chrome / Chromecast

Windows / Edge / Xbox / スマートTV

コンテンツ

CENC暗号化エンコーダーAES-128 CTR/CBC

暗号化コンテンツMPEG-DASH / HLS

クライアント

FairPlay CDM

Widevine CDM

PlayReady CDM

FairPlayライセンスサーバー(KSM)

Widevineライセンスサーバー

PlayReadyライセンスサーバー

実装上は、Expressplay・Irdeto・EZDRM・Axinom・BuyDRM・Pallyconなどのマルチライセンスサーバーサービスを利用することで、3つのDRMのライセンスサーバーを一元管理できます。

4.3. 用途別の選定指針

シナリオ推奨構成理由
Webブラウザ向けストリーミングWidevine + PlayReady + FairPlay(マルチDRM)Chrome系にWidevine、Edge/IEにPlayReady、SafariにFairPlayが必要
iOS/tvOSアプリ向けFairPlay一択Apple Storeポリシー上、サードパーティDRM使用不可
Android アプリ向けWidevine(ExoPlayer)Android標準組み込みでL1対応デバイスも多い
高セキュリティ4KコンテンツWidevine L1 / PlayReady SL3000 / FairPlay(TEE必須)4K・HDRコンテンツはハードウェア保護が配信条件となることが多い
エンタープライズ・大量コンテンツ管理PlayReady(チェーンライセンス活用)チェーンライセンスによる効率的な鍵管理が可能
物理メディア(パッケージ)AACS(AACS 2.0)ネットワーク不要・パッケージメディア向けの唯一の選択肢

5. 例題と解説

【問題 1】

動画ストリーミングサービスを開発する際、iPhoneとAndroid端末の両方でHD画質のコンテンツを配信したい。正しい対応として最も適切なものはどれか。

  • ア WidevineのみをサポートすればiOSにもAndroidにも対応できる
  • イ FairPlay(iOS向け)とWidevine(Android向け)を実装するマルチDRM構成とし、CENC暗号化によって共通の暗号化コンテンツを使用する
  • ウ AACSを採用すれば両プラットフォームに対応できる
  • エ PlayReadyのみをサポートすればiOSにもAndroidにも対応できる

【解答】

【解説】
WidevineはiOSでは動作しません(iOSのDRMはFairPlayのみ)。同様にPlayReadyもiOSネイティブアプリには対応していません。AACSはBlu-rayなどのパッケージメディア向けの規格であり、ストリーミング配信には使用されません。FairPlayとWidevineのマルチDRM構成とし、CENCによって同一の暗号化コンテンツを各DRMのライセンスサーバーと組み合わせるイが正解です。

【問題 2】

WidevineのセキュリティレベルL1とL3の説明として正しいものはどれか。

  • ア L1はソフトウェアのみで復号を行い、L3はハードウェアTEEを使用する
  • イ L1とL3はセキュリティ強度に差はなく、デバイスのスペックによる分類である
  • ウ L1はハードウェアTEE内で復号・メディア処理を行い、L3はソフトウェアのみで処理する。コンテンツ提供者はL3デバイスに対してHD以上の解像度を制限できる
  • エ L3はL1より高いセキュリティレベルを示す

【解答】

【解説】
L1は最高のセキュリティレベルで、復号処理とメディア処理の両方がハードウェアTEE内で行われます。L3はソフトウェアのみで処理するため、理論上はメモリダンプによるコンテンツ鍵の抽出リスクがあります。このためNetflixやAmazon Prime VideoなどはL3デバイスに対して解像度をSD(またはHD止まり)に制限しています。L1は数字が小さいほど高セキュリティです。

【問題 3】

AACSのMedia Key Block(MKB)の役割として正しいものはどれか。

  • ア ディスク上に記録され、各プレイヤーのデバイス鍵を使用して処理することでメディア鍵を取り出せるデータ構造であり、失効したデバイス鍵では処理結果が無効になる
  • イ インターネットに接続してオンラインでコンテンツ鍵を取得するためのプロトコル仕様である
  • ウ ブルーレイディスクの映像データを直接暗号化するアルゴリズムである
  • エ 各プレイヤーメーカーが独自に設定するコンテンツ保護ポリシーの定義ファイルである

【解答】

【解説】
MKBはディスクに記録されたデータ構造で、全プレイヤー向けの暗号化メディア鍵を含みます。各プレイヤーは固有のデバイス鍵でMKBを処理してメディア鍵を取り出し、そこからコンテンツの復号に必要な鍵を導出します。デバイス鍵が失効している場合、MKBを処理しても正しいメディア鍵が得られません。AACSはオンライン接続を原則必要とせず、ディスク上の情報だけでコンテンツ保護が完結します(AACS 2.0のオプション機能を除く)。

6. 参考文献・一次情報

法令

技術仕様

7. まとめ

DRMはデジタルコンテンツの著作権保護に不可欠な技術基盤ですが、その実装には各技術の特性と制約の正確な理解が求められます。FairPlayはApple ecosystemに特化しHLSとの統合が深い一方、他プラットフォームへの展開には対応できません。WidevineはCENCと組み合わせることで最も広いデバイスカバレッジを実現し、L1〜L3のセキュリティレベルによって高解像度コンテンツ配信の品質管理が可能です。PlayReadyはエンタープライズ向けのチェーンライセンスやドメイン管理など高度な機能を持ち、大規模コンテンツ管理に適しています。AACSはネットワーク接続を必要としないパッケージメディア向けの独自アーキテクチャを採用しており、MKBによる鍵導出とデバイス失効の仕組みが特徴的です。

実際のストリーミングサービス開発では、FairPlay・Widevine・PlayReadyのマルチDRM構成とCENCによる統一暗号化が標準的なアーキテクチャとなっています。コンテンツの価値・配信先デバイス・ビジネス要件に応じて適切なDRM構成を選定し、著作権法上の技術的保護手段としての要件を満たしながら、ユーザーエクスペリエンスとのバランスを取ることが開発者に求められます。