GPL違反を見つけて文書化するにはどうすればよいですか?


15

クローズドソースコードにアクセスできない場合に、GPLでライセンスされたオープンソースコードがクローズドソースの商用アプリケーションにコピーされたことを見つける方法

編集:素晴らしい答え!パート2.実行可能ファイルにアクセスすることさえできないwebappの場合はどうなりますか?

シナリオ:ソースをコピーし、GUIに若干の変更を加えて、フロントエンドがほぼ同じになるようにします。それ以外はまったく同じバックエンドに新しい機能を追加します。そして、それをオープンソースに戻すことに失敗します。


1
はい、それは単なる「素敵なアイデア」ではありません。法的影響(多くの司法管轄区)を通じて執行可能です。つまり、弁護士と分析チームを雇用(または取得)します。
PST

編集後、これは非常に明確です。おそらく、現在の形式では移行されなかったでしょう。簡単に返送できないので、返事をするために最善を尽くしました。タイトルも変更しました。
ティムポスト

この男に目を光らせてください;)
MarkJ

回答:


6

あなたがいるようです確かにしようと、見えるスポットあなたが伝えるために、独自のプログラムをコンパイルした実行可能ファイル(または関連ライブラリ)に掘るする必要が意味し、それを。疑いのあるフリーソフトウェアと明らかに一致する文字列と記号を探しています。

UNIXのようなオペレーティングシステムでは、stringsユーティリティは非常に手がかりを提供します。通常、慎重な分析により、必要なものが明らかになります。ご覧のfoolib_easy_initとおり、まあ..コンパイルされたプログラムはfoolibを使用しています。

もちろん、これはコンパイラー最適化のレベル、コンパイル前の難読化、おそらく未使用/デバッグシンボルの除去によって異なりますが、自分のソフトウェアを書くのが面倒な人は、それを隠すという点では一般的に同じように面倒です。


1
プログラムがwebappで、バイナリにアクセスできない場合はどうでしょうか?GPLライセンスのソースコード全体をコピーし、いくつかのGUI要素を変更して、ほぼ同一のフロントエンドと完全に同一のバックエンドを備えた独自のクローズドソースwebappをリリースします。その後、オープンソースとしてリリースせずに、アプリに新しい機能を追加します。この種のGPL違反を発見することは可能ですか?
siamii

3
@ bizso09:バックエンドについて話しているのであれば、それはGPL違反ではありません。詳細については私の答えをご覧ください。
デビッドソーンリー

2
@ bizso09-アプリケーションがソースコードなしで難読化/コンパイルされた形式であなたに転送された場合にのみGPL違反になります。単に「稼働中」にして、人々がそれを使用できるようにすることは違反ではありません。ただし、特にネットワークと相互作用するソフトウェアを対象とするAffero GPLに違反します。それでも、すべての要素を検査することで(または、悪用された疑いのあるコードに存在する既知のバグを探すことでも)、firebug / devツールでそれを見つけることができるかもしれません。
ティムポスト

4

BusyBoxには、ソースを公開せずにBusyBoxを使用したとして、ハードウェアメーカーを訴えるいくつかの注目すべき事例がありました。これらの訴訟は、Software Freedom Law Centerの弁護士によって提出されました。

プロジェクトがSoftware Freedom Conservancyに参加できるほど成熟している場合は、SFLCのサービスも利用できます。(非コンサーバンシープロジェクトがSFLCのサービスを使用できるかどうかは不明です。確認する必要があります。)


とてもいいリンク。そのようなものが存在することさえ知りませんでした。
pst

1
彼らはあなたのために研究を行いますか、それとも弁護士に提供するだけですか?原因OPは前者を探していたと思う
-TheLQ

1
-1おもしろいですが、これは質問に答えません。
HedgeMage

1
@HedgeMage-編集する前の質問はもう少し曖昧でした。
確実に

3

GPLには、サーバー側のWebアプリに限定されたアプリケーションしかありません。クライアント側は何でも配布されますが、これは通常Javascriptであり、ユーザーは自動的にソースを取得します。厳密にはサーバー側のすべてが実行されており、配布されていません。GPLは主に配布に適用されます。

これがAffero GPLの動機でした。(IIRC)は、本質的に、WebアプリのようなものでAGPLされたソフトウェアを使用する場合、ソースの配布を提供する必要があると言います。


1
正しい。AGPLは、特に「ネットワークと相互作用するソフトウェア」を対象としています。IMAPサーバーにも、Webアプリケーションにも同じように適用されます。
ティムポスト

2

プログラムのように動作し、プログラムのように動作する場合はobjdump、同様のツールで開始できます。この古いSlashdotエントリは、GPL違反を検出するための別のより正式な方法を示しています。


1

Harald Welteは、GPLライセンスのコードを不適切に使用して、ライセンスの条件に準拠する企業を獲得するために、ニンジンとスティックのアプローチで成功しました。多くの企業は、決定の結果について教育を受け、問題を法廷外で解決する必要がありました。


-1実際に質問された質問には対応していません。質問は、そのような不正行為を特定する方法であり、発見された後の対処方法ではありません。
HedgeMage

5
@HedgeMage-質問最近編集されたので、実際にはおそらくSOに属しているのに、ここで移行されるほど混乱していました。
ティムポスト

2
@Tim:@HedgeMageに今すぐ報復票を投じることはできますか?Pleeeez?:-P(サードパーティ製の潜伏者のために:。。!深刻な提案ではないいいえ、ティムと私の両方が、他のSEサイト上のモデレーターであり、そのようなことに従事したことがないだろうきっと)
クリス・ジェスター・ヤング

1

GPL違反(誰かがあなたの著作権でコードを使用し、バイナリの配布中にソースを提供しなかった)を発見した場合は、違反者と連絡を取って状況の解決を依頼してください。メール、いつ連絡したかなどのデータを文書化します。

そうでない場合は、あなたの著作権がありますが、違反を発見し、次の違反者へのオリジナルの著作権者と接触して取得し、同様の違反についての彼女/彼に言います。合目的前に、あなたは違反者にお問い合わせください。

ソフトウェアが多くの著作権所有者との結合された作品である場合、あなたが著作権所有者の一人またはすべてではなく著作権所有者のグループのみである場合、同じことが当てはまります。それはあなたの著作権であり、GPLはあらゆる種類の派生物(大小を問わず)に適用されます。

可能性のある違反が本当に違反である場合、技術的な制限により知識を得ることができない場合は、他の方法で詳細を調べる必要があります。例えば、おそらく違反者に質問をすることによって、サードパーティなどを通じてバイナリまたはソースにアクセスすることによって。

問題のコードがGPL v2の下にあり、ライセンス条項に違反している場合、終了が適用されます。違反者はGPLのコードを使用するすべての権利を永久に失いました。彼は再びすべての著作権所有者と連絡を取り、権利の回復を要求する必要があります。

問題のコードがGPL v3の下にあり、ライセンス条項の違反がある場合、終了も有効になりますが、著作権所有者がさらに要求しない限り、違反者は自ら違反を停止することでこれから回復できます。

編集:これは単なる一般的な情報です。この具体的な法的側面を調べたい場合は、著作権所有者である必要があります。また、法的チームに連絡して、証拠に必要なものと、法律がなくても違反を解決するために提案されているものを見つける必要がありますこれははるかに実用的です。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.