2

これに対する戦略はありますか?Web システムをクライアントに販売し、法的契約に従って、その顧客はそれを他人に販売することを許可されていません。

私の最初のアイデアは、ルート ディレクトリにある必要があるある種のキーであり、そのファイルはその特定のドメインに対してのみ有効です。

他のアイデア?

更新 1 これは主に法的な問題であることに同意します。しかし、事実は次のとおりです。このシステムを私から購入して他の人に販売するクライアントがいます。そして、彼はこのシステムが機能することを望んでいるので、彼は簡単に利益を上げることができます. Web サーバーをパッケージ化して販売する機能は、仕様の一部です。

UPDATE 2 もう一つの視点はこれです。その場合、再販されたソフトウェアのどれだけが元のシステムからのものかを証明するのは困難です。

UPDATE 3 難読化は私にとってオプションではありません。本当に嫌いです。

4

8 に答える 8

16

Zend Guardのような難読化ツールを使用する人もいますが、正直なところ、この種の問題に対する技術的な解決策は、オーディオおよびビデオ コンテンツの DRM と同じくらい運命にあると思います。基本的に、あなたが彼らに与えたものは機能するように意図されているので、あなたが望まない方法で機能させるのは単なる技術的な問題です.

ここでのあなたの手段は(imho)法的ではなく技術的です。クライアントとの間に、できることとできないことを定めた契約があります。あなたはその契約書の起草に優れた弁護士を持っています。彼らがそれを守らない場合は、彼らを法廷に連れて行く必要があります。

あらゆる種類の保証として、難読化やコピー防止を当てにしないでください。

これは、(Zend にかかわらず) 基本的に平文の配布方法であるため、スクリプト言語では特に問題になります。Java や .Net などのバイトコードでコンパイルされた言語はもう少し保護されていますが、中間コードに逆アセンブルすることもできます (ただし、ここでは難読化の方が便利です)。真にコンパイルされた言語 (c、C++ など) は、50 メガバイトのバイナリをアセンブラー コードに逆アセンブルすることは通常それほど有用ではないため、最も保護されています。

それでも保証はありません。それに満足できない場合は、クライアントを慎重に選択するか、潜在的な契約違反 (および追求を余儀なくされる可能性のある執行) を受け入れるか、別の仕事を見つける必要があります。

于 2009-03-18T12:35:16.567 に答える
4

確実にする唯一の方法は、クライアントがコードにアクセスできないように、ホストされたソリューションとして製品を提供することだと思います. この目標を念頭に置いて構築すれば、再販業者にシステムのスキンを任せて、自社製品のように見せることができます。

これは私が働いている場所ではうまく機能します。理論的には、顧客は自分のインフラストラクチャでコードを実行するライセンスを取得できますが、大企業だけが支払う準備ができているほどのレベルに価格設定されており、大企業は全体として法的な細やかさに関心があります。そのため、仕事をやめてしまう可能性が低くなります。

価格が適切であれば、人々はホステッド ソリューションを喜んで使用する準備ができており、すべての人にメリットがあります。顧客は、すべてをセットアップすることを心配する必要はありません。また、何か微調整が必​​要な場合は、私たち (開発者) がそれを行うためにそこにいるという安心感もあります。

于 2009-03-18T13:33:24.447 に答える
3

これは技術的な問題ではなく、社会的な問題です。あなたには著作権法があります。もう必要ありません。(ありとあらゆる技術的解決策は、本質的に効果のない DRM に相当します。)

あなたの最新情報について: 基本的に、あなたはこのクライアントの DRM サプライヤーになります。では:クライアントは、DRM が効果的でないことを理解していますか? 実装に時間を浪費する前に、それらを教育してみてください。
もしクライアントが断固たる態度を維持するなら、私は現在の DRM ベンダーが何をしているかをじっくり観察するだろう. たとえば、たくさんの手を振る、いくつかの難読化、そして、ええと...わかりません...彼らは他に何をしますか? いずれにせよ、実装したソリューションは、実装にかかった時間の 10% 未満で取り消されることは確実です。(編集される前に、「システムが販売されていないことを確認する」ことについて「仕様にある」と書いた:これはあなたのことを意味するかもしれません.確かに)、それに近いものを構築するには無限の時間を費やす必要があります...)

初めて実行するときに、アプリケーションが中央レジストリに接続するように調査することもできます (指紋が埋め込まれており、販売ごとに異なるため、誰がコードを渡したかがわかります)。そうすれば、クライアントはアプリケーションが実行されている場所を見つけることができ、許可なくそれを使用する人に連絡する可能性があります. (潜在的にそれらを新しい有料顧客に変える可能性があります。)おそらく、中央リポジトリにキルシグナルを送り返す機能を与えるでしょうか?しかし、それは非常に恐ろしいことであり、責任に関する懸念は非常に大きくなります。可能であれば避けてください。

于 2009-03-18T12:33:20.393 に答える
2

ソースを難読化することは、私の経験では、複雑なアルゴリズムを秘密にしようとしている場合を除き、価値があるよりも面倒です。

次のことをお勧めします。

  1. あなたとあなたのクライアントとあなたの弁護士がすべてあなたの契約を理解し、同意することを確認してください.
  2. すべてのソース ファイルに短い著作権ステートメントをコメントとして挿入します。
  3. 生成された Web ページに (ページ テンプレートまたは php コードを介して) 著作権表示を HTML コメントとして挿入します。これにより、「ソースの表示」により、コードがライセンスのないアプリケーションに含まれていることが証明されます。

本当に心配で、これがイントラネット専用のアプリではない場合は、(3) を拡張して、Google には表示されるがユーザーには表示されないページに固有の隠しテキストを挿入することができます。

これは決心した泥棒を止めるものではありませんが、「偶発的な」盗難を抑止して検出するのに役立ちます.

于 2009-03-18T13:16:43.410 に答える
1

しかし、問題は、弁護士が追跡できる、箱から出して行ったことを顧客が転売することを恐れていない場合です。問題は、顧客がリファクタリングしていることである可能性があります。つまり、時間もの仕事をして、いくつかのことを変えて、それを彼と呼んでください...少し安く売って、ビジネスに勝ちましょう...

そのため、私は自分の仕事を保護するための技術的な解決策を検討しています。また、弁護士からの請求を最小限に抑えるのに役立つ可能性があります。これは、私の仕事を保護するために弁護士を雇うことからの大幅な変化です。

于 2009-03-18T12:48:26.833 に答える
1

とにかく彼がそうしないことをどうやって確信できますか?

あなたはそれを防ぐことはできません...期間。誰かがソースを持っている場合、それらを止める方法はありません...あなたは彼らがそうする場合にのみそれらを罰することに頼ることができます。

おそらく、あなたの契約には、再販を禁止することに加えて、再販に関連する価格があります。つまり、通常支払う金額の10倍または20倍に加えて、支払いを行うために必要な場合は法定費用が含まれます。彼らはとにかくそれをすることを選択します、あなたは素敵な一枚の紙を持っています、そして彼らが先に進んでそれを売るなら彼らが支払う必要がある価格ですでに素敵な脂肪が事前に合意されている彼らの署名があります。

于 2009-03-18T12:54:40.047 に答える
1

ソフトウェアの再販を禁止する適切な方法は、技術的な制約ではなく、法的制約によるものです。再販売しないことに同意する契約書に顧客に署名してもらいます。

技術的な予防策は、技術的な意味でも製品を悪化させ、顧客にとっての価値を低下させます。技術的保護が強力であるほど、迷惑は大きくなります。

たとえば、顧客が合法的にドメイン名を変更したいとします。新しいコピーを購入する必要がありますか? ないと思います。新しいドメインに一致するようにキーファイルを変更する方法を伝えれば、その情報を使用して再販売できるようになります。ただし、法的な保護は、彼らが思いついた技術的なトリックに関係なく適用されます.

于 2009-03-18T12:33:31.407 に答える