トレント:間違ったバイトを送信してソフトウェアを保護できますか?


15

これは、誰もが興味を持っているトピックです。盗み、ハッキング、リバースエンジニアリングからソフトウェアを保護するにはどうすればよいですか?

私は考えていました:リバースエンジニアリングのためにプログラムを保護するために最善を尽くします。それから人々はそれを割って、急流でそれをseed でしょう。次に、自分のtorrent-softwareで torrent 使用して、クラックされたソフトウェアをダウンロードします。私自身の急流ソフトウェアは、その後、不正確なデータ(バイト)をシードする必要があります。もちろん、重要なバイトをシードする必要があります。

したがって、私のソフトウェアを盗もうとする人々は、間違ったバイトをダウンロードします。起動、データの保存、読み込みなどに重要なバイトだけです。したがって、スティーラーが私からダウンロードした(そして後でシードした)場合、スティーラーは壊れているため何もできません。

この考えは関連性がありますか?たぶん、良いトレントクライアントは、より多くのピアからのハッシュをチェックして、シードしたいパッケージ(壊れたバイトを含む)が正しいかどうかをチェックしますか?


3
RIAAが既に音楽ファイルについてこれを行っていることを読みました。

26
時間を浪費している、泥棒からお金を失うことはありません。定義上、彼らは最初からソフトウェアを購入することはないでしょう。

27
CRCチェックなどのために機能しないという事実を捨てて、私はそれが別の理由で悪い考えかもしれないことを提案します。ソフトウェアを盗む人々はおそらくとにかくお金を払わないでしょうが、もしそれがうまくいかないなら、彼らはあなたのソフトウェアが悪い品質だと友人や上司に伝えて、彼らもそれを買わないかもしれません。
ho1

9
ほとんどの場合、海賊版は失われた販売ではありません。

13
何をするにしても、有料の顧客がソフトウェアを使用するのを難しくしないようにしてください
-user6863

回答:


42

彼らの急流アプリ(海賊)は、CRCチェックのためにシードとして不正なバイトを単に破棄します。それから、あなたはそのIPによって繰り返しの犯罪者であるとして禁止されます。


ビットトレントはどのCRCを使用しますか?正しいCRCを持つガベージパケットを生成できましたか?MD5向けにこれを行うアプリがありますが、本当のCRCは同じくらい簡単だと確信しています。
deft_code

16
理論的には生成できます。ただし、BitTorrentプロトコルはSHA-1ハッシュを使用します。MD5よりもSHA-1の方がハッシュ衝突(これが今回の目的です)を見つけることは困難です。実際には、現時点では実行できません。
-Piskvor

@Caspin本質的に、いいえ。理想的な条件、非常に高速なコンピューター(スーパーコンピューター)、および暗号作成者のチームが1つのファイルのCRCハッシュを破るには、少なくとも1週間かかります。それで頑張ってください。
エヴァンプライス

9

Q.間違ったバイトを送信してソフトウェアを保護できますか?
A.いいえ、とにかくハッキングされる可能性があります。特に誰かが正当なコピーを手に入れた場合はそうです。

Q.盗み、ハッキング、リバースエンジニアリングからソフトウェアを保護するにはどうすればよいですか?
A.公正な価格で販売すると、ハッキングの試みが損なわれます。


ポイント2 についてはplagiarismtoday.com/2010/05/26/…を参照してください。海賊海賊。より良いソフトウェアはあなたを助けません。
ポールネイサン

1
@ポール:海賊行為をしない人がたくさんいます。支払うことを拒否する多くの人々がいます。しかし、高いものよりも低い価格で提供されたものに対しては、より喜んで何かを支払う人もいます。それらは、より低い価格の影響を受ける人々です。(私は仮定し、低すぎるそれを価格したくないでしょうけど。)

7

反対側から問題にアプローチすることをお勧めします。クライアントに提供するソフトウェアの各コピーに一意の識別コードを埋め込みます。誰かがシードしている場合は、少なくとも誰がそれをやったかを特定し、法的措置を取ることができます。


5
彼らがそれを見つけることができる場合のみ。

2
@Developer Art:ソフトウェアの複数のコピーにアクセスできる場合は、バイナリ比較を行って、コピーが互いに正確にどのように異なり、どこが異なるかを把握できる場合があります。識別子をランダムに難読化するため、それを理解するのはそれほど難しくないかもしれません。

2
単一の変数ではありません。何らかの目的で実際に使用しているように見せかけて、アプリのすべてのモジュールに情報を広めることができます。pr索好きな目を邪魔にしないようにする方法はやや芸術的です。それを達成するためのテクニックについて別の質問をすることもできます。面白いでしょう。

18
マークが最適化されているかどうかについて、異なるビルドをチェックできます。しかし、ユーザーも同様です!実際、プロのクラッカーは、ソースを保護したいため、最初にいくつかのコピーを取得して比較することなく、コンテンツをアップロードしません。最後に、あなたは風車と戦っています。ユーザーに支払いを促す優れたソフトウェアを書くことに努力を費やす方が、支払いをしないように一生懸命努力することを奨励するコピーを止めるよりもはるかに優れています。

2
あなたは困難な戦いを戦っています。暗号化/パスワードスキームが何であれ、可能性はありますが、クラッカー組織はそれを見て、それを破る方法を知っています。彼らには長年の経験があり、あなたよりもはるかに優れたプログラマーがいます。ごめんなさい。
エヴァンプライス

7

DRMは機能しますか?いいえ。悪いBitTorrent / EDonkey2000の設定は機能しますか?いいえ。あなたの小さなアプリケーションの著作権侵害を気にする人はいますか?いいえ。誰も聞いたことはありません。


「誰も聞いたことがない」これは良い点です

誰かがそれを海賊する気があるなら、それは保護する価値があります。

1
@ Ben313:より良いフレーズは、「誰かがそれを買う気があるなら、それは保護する価値がある」でしょう。

1
AutoCadやMS Wordなどよりも優れたものを書いていない限り、あなたのソフトウェアは、あなた(1人の開発者)が持っているよりも100人の賢い人々が働いている他の人々(Microsoft、AutoDesk)よりも保護する価値がありません。動作するDRMを構築していません。
ウォーレンP

4

bittorentおよび他のほとんどの優れたp2pソフトウェアは、md5などのファイルハッシュを使用して、そのような種類の操作から自身を保護します。


1
ハッシュアルゴリズムは、ウィキペディアによると、SHA-1:en.wikipedia.org/wiki/... - MD5よりもわずかに安全
Piskvor

2

tは誰もが興味を持っているトピックです。盗み、ハッキング、リバースエンジニアリングからソフトウェアを保護するにはどうすればよいですか?

それを行う唯一の方法(私が考えることができる)は、サーバー上でソフトウェアを完全に実行し、クライアントアプリケーションに有用なコードを持たないことです。これにより、アカウントを制御し、アプリケーションを使用するユーザーを知ることができます。ただし、ユーザーは満足しません。また、サーバー上でコピー防止関連のコードのみを実行する場合、誰かがサーバーエミュレーターを作成してハッキングするか、コードを識別して保護を完全にバイパスします。新しいUbisoftコピー防止スキームで起こったように。

サーバー上にソフトウェアを保持することは、完全な防弾というわけではありません。ソフトウェアをクラックする代わりに、誰かがあなたのサーバーを攻撃して侵入し、ソフトウェアを入手します。そして、常に「ソーシャルエンジニアリング」セキュリティホールがあります。ソフトウェアを通常のマシンで実行できない場合(つまり、スーパーコンピューターまたはコンピュータークラスターが必要)、「サーバー上のすべてを保持」が最適に機能します。この良い例はEVE Onlineです。WOWやLineageとは異なり、サーバーを実行するにはコンピュータークラスターが必要なので、私が知っているサーバーエミュレーターはありません。

私自身の急流ソフトウェアは、その後、誤ったデータ(バイト)をシードする必要があります。もちろん、重要なバイトをシードする必要があります。

  1. 既存のトレントを「ハイジャック」しようとすると、正常なクライアントはCRCエラーを報告し、クライアントを無視します。すべてのp2pソフトウェアはハッシュを使用します。
  2. 「間違った」トレントをアップロードすると、別のユーザーがあなたのトレントを偽物として報告するため、誰もダウンロードしません。

盗人

「海賊」。著作権侵害と呼ばれているため。

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