この項目「デジタル著作権管理(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つのフェーズで機能します。
- コンテンツ暗号化:コンテンツ鍵(対称鍵)でコンテンツを暗号化し、CDNや配信サーバーへ配置する
- ライセンス要求:クライアントが再生時にライセンスサーバーへ鍵の発行を要求する(デバイス証明書・ユーザー認証を添付)
- ライセンス発行:ライセンスサーバーがデバイスの正当性を検証し、コンテンツ鍵と利用条件を含むライセンスをクライアントへ返す
- 復号・再生:クライアントの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を構築する必要があります。
ライセンス配信の仕組み
- HLSマニフェストの
EXT-X-KEYタグにSKD(Streaming Key Delivery)URLが記載される - AVPlayerがSKD URLを検出し、アプリに対してSPC(Server Playback Context)を生成して渡す
- アプリがSPCをコンテンツ提供者のKSMへHTTPS POSTで送信する
- KSMがデバイスの正当性を検証し、CKC(Content Key Context)を返す
- アプリが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配信 |
|---|---|---|---|---|
| L1 | TEE(ハードウェア保護領域)内 | TEE内 | ハードウェアTEE搭載のAndroid端末・スマートTV | 可 |
| L2 | TEE内 | 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公式サイト)
ライセンス配信の仕組み
ライセンス要求・応答のメッセージフォーマットには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のライセンス要求は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とは異なり、ネットワーク接続なしでオフラインのコンテンツ保護を実現します。
- デバイス鍵:各プレイヤー(メーカー・機種)に固有の鍵セット。AACS LAからライセンスを受けた製造者に付与される
- MKB(Media Key Block):ディスクに記録されたデータ構造。全デバイス向けの暗号化メディア鍵を含む。デバイス鍵でMKBを処理することでメディア鍵(Km)が得られる
- ボリュームID:ディスクの読み取り専用領域(BCA:Burst Cutting Area)に記録されたディスク固有のID。通常のデータ複製では再現できない
- タイトル鍵: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 |
|---|---|---|---|---|
| 開発・管理 | Apple | Microsoft | AACS LA(8社コンソーシアム) | |
| 主な用途 | Apple ecosystem ストリーミング | Webブラウザ・Androidストリーミング | Windows・Xbox・スマートTV ストリーミング | Blu-ray・Ultra HD Blu-rayパッケージメディア |
| 暗号化アルゴリズム | AES-128 CBC | AES-128 CTR / CBC(CENC/CBCS) | AES-128 CTR / CBC(CENC/CBCS)、AES-256対応(4.0以降) | AES-128(MKBベースの鍵導出) |
| 配信方式 | HLS | MPEG-DASH(HLS・MP4も対応) | MPEG-DASH・Smooth Streaming・HLS | パッケージメディア(ディスク) |
| ライセンス配信 | HTTPS(SPC/CKCプロトコル) | HTTPS(protobuf) | SOAP over HTTPS | 不要(ディスク上のMKBで完結) |
| セキュリティレベル区分 | なし(Apple審査で担保) | L1 / L2 / L3 | SL150 / SL2000 / SL3000 | AACS / AACS 2.0 |
| 対応プラットフォーム | Apple デバイス・Safari のみ | Chrome・Android・Chromecast・スマートTVなど広範 | Windows・Edge・Xbox・スマートTVなど | Blu-rayプレイヤー・UHD BDプレイヤー |
| EME対応キーシステム | com.apple.fps | com.widevine.alpha | com.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で保護できるため、コンテンツを重複エンコードする必要はありません。
実装上は、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. 参考文献・一次情報
法令
- 著作権法(e-Gov 法令検索) ― 第2条第1項第20号(技術的保護手段の定義)、第30条第2項(私的複製の適用除外)
- 不正競争防止法(e-Gov 法令検索) ― 第2条第1項第17号・18号(技術的制限手段の効果を妨げる装置等の提供)
- DMCA Section 1201(U.S. Copyright Office) ― 技術的保護手段の回避禁止規定
技術仕様
- Encrypted Media Extensions(W3C Recommendation) ― EME仕様(W3C勧告版)
- FairPlay Streaming(Apple Developer) ― FPS展開パッケージ・KSM構築ガイド
- Widevine DRM(widevine.com) ― Widevine公式製品ページ
- PlayReady Documentation(Microsoft Learn) ― PlayReady公式ドキュメント
- AACS LA(Advanced Access Content System Licensing Administrator) ― AACS規格・ライセンス情報
7. まとめ
DRMはデジタルコンテンツの著作権保護に不可欠な技術基盤ですが、その実装には各技術の特性と制約の正確な理解が求められます。FairPlayはApple ecosystemに特化しHLSとの統合が深い一方、他プラットフォームへの展開には対応できません。WidevineはCENCと組み合わせることで最も広いデバイスカバレッジを実現し、L1〜L3のセキュリティレベルによって高解像度コンテンツ配信の品質管理が可能です。PlayReadyはエンタープライズ向けのチェーンライセンスやドメイン管理など高度な機能を持ち、大規模コンテンツ管理に適しています。AACSはネットワーク接続を必要としないパッケージメディア向けの独自アーキテクチャを採用しており、MKBによる鍵導出とデバイス失効の仕組みが特徴的です。
実際のストリーミングサービス開発では、FairPlay・Widevine・PlayReadyのマルチDRM構成とCENCによる統一暗号化が標準的なアーキテクチャとなっています。コンテンツの価値・配信先デバイス・ビジネス要件に応じて適切なDRM構成を選定し、著作権法上の技術的保護手段としての要件を満たしながら、ユーザーエクスペリエンスとのバランスを取ることが開発者に求められます。