オープンソースで、十分に文書化され、使用されているDRMフレームワーク/ライブラリはありますか?
デジタルのものを売買するためのフレームワークを作成し、販売者が何らかの種類のDRMでファイルをロックできるようにするために実装し、許可されたコンピューターのみがそれを開くことができるようにしたいiTunes FairPlayなど)。
ログイン資格情報を使用してサーバーに接続する必要があり、おそらく必要です。
一方、私はクライアントをオープンソースにしたいのですが、おそらくサーバーも..それも可能ですか?あいまいさによるセキュリティは機能しませんが、DRMは正確には「セキュリティ」ではありません...
私が見つけられたのは このまったく同じ問題のスラッシュドットに関する議論 でしたが、「DRM IS BAD」、およびSunのDReaMプロジェクトで終わりましたが、 サイト上のフレームワークの実際のコード/使用法 に到達する方法がわかりません。
Open Sourced DRMが不可能だと思われる場合は、教えてください。
これは、OMA DRM2のオープンソース実装であると主張しています。サーバーとクライアントの構築に必要なソフトウェアコンポーネントが含まれていると思いますが、ハードウェアは読者の演習として残しておきます。
http://sourceforge.net/projects/openipmp
ライセンスはMPLです。これは、GPLと互換性のないFOSSライセンスです。
私はこの実装の経験はありませんが、少しのOMA DRMであり、DRMスキームが実行可能である限り、それは実行可能なDRMスキームであるように思われました。 OMA DRM標準は十分に文書化されており、携帯電話業界で広く使用されています(少なくとも広く使用されています)。
オープンソースDRMの根本的な問題は、スキームを損なうことなくすべてのアルゴリズムとソースコードを公開できるが、クライアントデバイスは権利を尊重するために権利発行者によって「信頼」されなければならないことです。これはFOSSとは互換性がありません。FOSSは、デバイスのユーザーがデバイスの機能を完全に制御する必要があると言っています。
あいまいさによるセキュリティは機能しませんが、DRMは正確には「セキュリティ」ではありません
あいまいさによるセキュリティof of algorithmは通常弱いです。秘密によるセキュリティof of informationは暗号化、署名などを行う唯一の方法です。DRMはアルゴリズムの不明瞭さを必要としません(だからこそOMA DRMは公開された標準であり、実装のソースはどうしてですか公開して自由に使用できます)が、プレーヤーのデバイスが、デバイスのユーザーが持たず、アルゴリズム/ソースの一部ではない情報(何らかのキー)にアクセスできる必要があります。
通常、セキュリティは、デバイスの所有者/ユーザーを外部の攻撃者の脅威モデルから保護します。 DRM脅威モデルでは、デバイスの所有者/ユーザーis攻撃者であり、権利所有者は防御されています。デバイスのユーザーがデバイスを完全に制御できる場合、原則としてこれは明らかにゲームオーバーです。
実際にはそれほどすぐではないかもしれませんが、オープンソースの場合、ユーザーが自分の権利で保護されたデータをコピーできないように独自のDRMクライアントを作成できるようにすることは、驚くほど正直であることを求めます。
ユーザーは法律を順守するように説得されることがあります。その場合、DRMは、制限を回避するためにフープを飛び回っている場合、法律に違反している可能性があることを思い出させる役割を果たします。
オープンソースのDRMは事実上不可能です。
DRMのポイントは、ユーザーが一部のデータを復号化できないようにすると同時に、特定の状況下でデータを復号化できるようにすることです。暗号化の理論的フレームワークにより、これはばかげています-承認された目的で使用している場合、ユーザーがデータを解読するためのキーのみをどのように持つことができますか?
既存のDRMシステムで採用されている解決策は、キーを隠すためにとんでもない長さになることです(隠蔽によるセキュリティの完璧な例)。しかし、ソースコードが利用可能な場合、ユーザーにキーを渡すためにコードを変更するのは簡単です。この時点で、暗号化の程度は問題ではありません。ユーザーは暗号化を解除するために必要なものをすべて持っています。
これに対するすべての解決策は、一部のマシンで Trusted Platform Module を使用して、キーにアクセスできるすべてのソフトウェアのバイナリイメージを検証し、キー自体にアクセスできないことを確認することです(キーによって暗号化されます)ハードウェアに焼き付けられた秘密の値によって導き出されます)。ただし、TPMがどれほど一般的であるかはわかりません。さらに、DRMキーへのアクセスを失うことなくソフトウェアを変更することはできないため、そもそもソフトウェアのオープンソーシングのポイントを大きく損なっています。
最後に、より実用的な注意として、DRMはいずれにせよその道を進んでいるようです。たとえば、iTunesはDRMを完全になくし、映画業界もその方向に向かっているようです...
オープンソースのDRMソリューションの場合、オープンソースのクラックが発生する可能性があります。
DRMソリューションの多くは、「セキュリティごとのセキュリティ」の原則に基づいて実際に機能します。モデルが秘密にされているため、それらの一部がまだ壊れていないことを意味します。それでさえ、主要なDRMシステムの破損を防ぐことはできません。
DRMは、「セキュリティによるセキュリティ」の原則に依存しているため壊れています。
透かしのような他のソリューションがあります。
クライアントに何かを販売するときは、クライアントの名前で透かしを入れます。共有ネットワークでこの透かしを見つけた場合、リークがどこにあるかがわかります。クライアントが透かし入れを知っている場合(彼に警告する方が正直だと思います)、おそらく共有しません。
私は一般的に反DRMです。ただし、サポートできるDRMの実装を1つ見ており、ユーザーのクレジットカード情報を復号化キーとして使用しました。絶対確実ではありませんが、少なくともユーザーWANTSの情報を使用して非公開にするという利点があります。 (少なくとも理論的には。)それはまだ自分のデバイス間で移植可能でした。ただし、このような可視キーに加えてオープンソースリーダーを使用すると、ユーザーが復号化されたデータを保存およびコピーして、DRMが無効になる可能性があります。
言及する価値は、保護するコンテンツによって異なります。自分が所有するコンテンツを保護したい場合、およびコンテンツの漏洩が破壊的でない場合の損害については、たとえば前述のOpen IPMPを調べてください。 Suns DReaMプロジェクトはまだオンラインで利用できますが、非アクティブのためプロジェクトが閉じられていることに注意する価値があります。所有していないコンテンツを保護する場合に問題が発生します。コンテンツ所有者が、オープンソースのdrmソリューションによるコンテンツの保護を許可しない可能性が非常に高いです。コンテンツ所有者は、Microsoft WMDRM/PlayReady、Marlin、Helixなどの独自のソリューションを使用する傾向があります。したがって、たとえばハリウッドコンテンツの販売にフレームワークを使用する場合、オープンソースのdrmソリューションに時間をかけることはお勧めしません。