DRMが内部でどのように機能するかを理解しようとしています。それについてはウェブ上であまり情報がないようですので、ここで尋ねると思いました。
調査を試みたところ、WidevineまたはFairPlay DRMが実際にどのように機能するかに関する情報を見つけるのは非常に困難であることがわかりました。 Content Decryption Module(CDMs)などに関する一般的な情報はいくつかありますが、実際にどのように機能するかは謎のようです。 DRMの多くはおそらくあいまいさによるセキュリティであるため、これが意図的なものかどうか疑問に思っています。
DRMに関する私の基本的/抽象的な理解は、ファイルは通常AESを使用して暗号化されるということです。 DRMソリューションがファイルにアクセスしようとすると、キーがサーバーからCDMに転送され、独自の方法で解読されます(これは私がよりよく理解しようとしている部分です)。次に、復号化されたコンテンツがアプリケーション(多くの場合はブラウザー)に戻され、再生されます。これは正しいです?
上記が当てはまる場合、攻撃者はCDMのバイナリを編集するだけで、暗号化が解除された後にキーまたはファイルにアクセスできると思います。
上記が当てはまる場合、攻撃者はCDMのバイナリを編集するだけで、暗号化が解除された後にキーまたはファイルにアクセスできると思います。
そのため、多くのDRMシステムがLinuxシステムに実装されていません...
DRMを実行できるようにするには、プレーヤーはDRMプロバイダーによって「認定」されている必要があり、このセットキー/復号化プロセスに安全な方法を提供する必要があります。
モバイルデバイスでは、多くの場合、TEE(Trusted Execution Environment)、SecureZone、またはシステムで暗号Oracleとして機能できるものを使用して行われます。 Windowsの場合、他のメカニズムが使用されます。おそらく、バイナリレベルのアンチデバッグ、TPMなどです。
暗号化キーを取得できないという意味ではなく、非常に困難になるだけです。
(免責事項:私のPOVは、クラックを試みた保護機能によってわずかにバイアスされる可能性があります。わからないことについて話すことがあります。同様に機能する同様のDRMツールを知っているので、この方法で機能すると思います)
Conorは正解です。一般的にDRMについて話すのは広すぎます。質問の中でサーバーについて話しますが、最も使用されている著作権コンテンツの1つはサーバー(DVD)さえ必要としません。
DRMにはたくさんのさまざまな目標がありますが(地理的な制限、ユーザーの制限など)、ほとんどの場合、プライベートコピーは避けます専有作品の。
原則はほぼ同じ常に同じです:アクセスXが必要です。1)Xの暗号化されたコピーH [X]を取得します。(ダウンロードまたは物理コピーによる)2 )H [X]をXに変換するためのキーを取得します。(ライセンスをアクティブ化し、場合によっては自動で行います)3)Xを取得するためにH [X]を解読します。
完全に暗号化されている場合もあれば、部分的に暗号化されている場合もあります。時々それは物理的なキーであり、時々仮想的なものです...また、他の誰かのキーを使用して各コピーを一意に、読み取り不可能にする、REが難しい、一時的に利用できるなど、さまざまなモジュールを見つけることもできます。
99%:はい。
なぜ100%ではないのですか? (もう一度ほとんどの場合)最初にコンテンツを購入する人にDRMを分析して回避策を提供するように要求するためです。特定の方法で、誰かがコピーにアクセスするまで、DRMは完全に安全です。したがって、すべてのDRMは破壊可能です。
すべてのDRMについて話すことは不可能であるため、攻撃がCDMのバイナリ復号化であるとは言えません。いくつかの簡単な例を使用して、DRMがほとんどどのように攻撃されるかについて話しましょう。
音楽およびビデオコンテンツ(Deezer):Deezerで曲をダウンロードすると、読み取り不可能なファイルが取得され、Deezerアプリがそれらを開くためのキーを持っています。シンプルに保つ:Audacityなどのソフトウェアは、オーディオ出力を取得できます。すべての非インタラクティブコンテンツで動作するこの脆弱性は アナログホール と呼ばれます
TV:TVコンテンツは電波です。コンテンツが保護されている場合、暗号化されます。デコーダーを購入する必要があり、テレビにアクセスできます。これを解読するには、ハードウェアレベルでデコーダーを逆にする必要があります。論理回路がどのように機能するかを理解し、それを再現します。 (ここにはアナログホールもありますが、ライブ状態を維持するのが難しいため、関連性は低くなります)
ソフトウェア:ここは興味深いですが、可能性はたくさんあります。まず、ファイルが特別に暗号化され、アクティベーションキー(ほとんどの場合は自動)を使用してコンピューターをサーバーに接続し、キーを使用してログに記録すると、ファイルの検証と暗号解読を行うライセンスが提供されます。ここでは、それを解読する選択肢はほとんどありません。バイナリをREする必要があります。次に何をすべきか?まあ、それは異なります。ソフトウェアの使用中、ファイルはクライアント側で暗号化されないため、いつでも*誰にでもファイルを提供できます(クラックを作成)。別の可能性は、ライセンスの動作を再現するソフトウェアを作成することです**。
*一般的に本当に難しいですが、 不可能ではない 。
**常に可能であるとは限りません。他にも多くの保護があります。
クラックを回避する方法は2つあります
言ったように、ソフトウェアを解読することは困難ですが不可能ではありません。非常に効率的なDRMツールを作成する場合、それは数か月、数年、または10年間存続することができます。コンテンツが安全に保持される期間と方法長い間、コンテンツがクラックされても問題ありません。コンテンツのほとんどは昔はあまり販売されていないため、現時点ではクラックされたバージョンは問題になりません。
優れた保護を行うには?
(私の意見ですが)ハードウェアは本当に理解することが難しく、物理的な保護と多くの異なる実装の可能性があるため、ハードウェアで保護されたコンテンツはおそらく復帰が最も難しいものの1つです。
はい。奇妙に聞こえますが、「work」です。コンテンツを100%保護できませんか?非常によく、それを保護し、それの無料の変更コピーを与えてください!人々はひび割れを作成することを気にせず、コンテンツを購入しなかった人々はそれの快適でないバージョンを得ました。一部のゲームはこれを行いましたが、ゲームプレイに影響を与えなかったアランウェイクへの名誉ある言及です。明らかに不利な点はいくつかありますが、それほど悪くはありません。-DRMでお金を節約できます-クラックを使用する人々は、クラックがなくてもコンテンツを購入しないでしょう。 (あなたは多くのお金を失うことはありません)
TL; DR DRMは難読化についてです。 100%安全ではありません。したがって、頻繁に使用されるモデルスキーマがあっても、DRM実装の詳細は明らかにされません。
あなたの基本的な理解は基本的に正しいです:
異なる商用DRMシステムは上記のバリエーションを採用しますが、一般的なスキーマは多かれ少なかれ上記のものです。 (テーマのわずかなバリエーションについては、 StackOverflowでこの回答も参照 )。