19

私はいくつかの (wordpress) プラグインを開発しており、それを使用したい人にはライセンス料を支払う予定です。

そのため、このプラグインが、誰でもダウンロードして無料で使用できるサーバーにアップロードされないようにする方法が必要です。

そこで、API キーを使用することを考えていました。有効な API キー = ユーザーはプラグインを使用できます。無効 = プラグインは機能しません。

この投稿PHP API Key Generatorを見てきましたが、あまり賢くはありません。

PHPなので、誰でもコードにアクセスしてAPIチェックを無効にできることも知っています(推測です)

プラグインを保護する最善の方法は何ですか? APIキー? 他の方法?このテーマに関する優れたチュートリアルへのリンクを持っている人はいますか?

4

5 に答える 5

18

プラグインが独自のサーバーとの対話に依存している場合、API キーは、料金を支払っていないユーザーがプラグインを使用できないようにする優れた方法です。
ただし、サーバーと対話する必要がない場合は、PHP の知識が少しあれば誰でもプラグインを変更して API キー チェックを削除できます。

ここでの大きな問題は、プラグインのライセンスです。WordPress は GPL であり、GPL には「派生物」も GPL の下でライセンスされることを要求する条項があります。(これは控えめな表現です: 実際、GPL 全体がその条項に基づいており、それなしでは実際には機能しません。)
プラグインを「派生物」と見なすことができるかどうかについては、多くの議論があります。私の意見ではそうではありませんし、それを強制的に 1 つに見せようとするのは非倫理的だと思います。ただし、WordPress のコア開発者である Automattic、および Free Software Foundation (GPL を作成した組織) は、WordPress プラグインは GPL を使用することが法的に義務付けられており、別のライセンスを使用することはできないと主張しています。
これまでのところ訴訟はなく、前例もありませんが、GPL を使用しないいくつかの主要な WordPress プラグインをめぐってかなりの敵意があり、Automattic は基本的に法的措置を脅かしていますが、プラグイン開発者は「お願いします」と述べています。私を訴えてください」。あまりきれいな状況ではありません。状況の道徳性に関係なく、通常、否定的な宣伝がプラグインをクローズドソースすることの利点を上回っていると言えます。

要約すると、プラグインは基本的に GPL である必要があります。つまり、暗号化されていないソース コードを提供する必要があるため、誰でもプラグインを変更して、追加した制限を削除できます。しかし、フォークされたバージョンを使用する代わりに、潜在的な顧客のほとんどにプラグインを購入したいと思わせることは簡単なはずです。サポート、アップグレードなどの利点を提供できます。 「ひび割れ」バージョン。

GPL の下で、保護 (API キーなど) なしで、プラグインの販売に成功している会社がいくつかあります。理論上は誰でもプラグインをダウンロードして、誰でもダウンロードできる公開サイトにアップロードできますが、実際には、WordPress の新しいバージョンに必ずしも更新されるとは限らない非公式バージョンを使用したいと思う人はいません。したがって、プラグインを販売することは、いかなる種類の保護がなくても実行可能なビジネス モデルのようです。

もちろん、これはすべて、誰かがあなたのプラグインをフォークして、コードベースを個別に維持し続けているわけではないことを前提としています。それについてできることはあまりありませんが、そうなる可能性は低いです。

プラグインを再配布することを決定した誰かの生活を困難にしようとしている場合は、次のことを検討することをお勧めします。

  • プラグイン自体がオープンソースであっても、プラグインの名前に対して商標権を主張できるため、顧客が知っている名前と同じ名前を使用することを法的に防ぐことができます
  • プラグインの PHP コードのみを GPL にする必要があります。WordPress とやり取りする PHP を含まないファイルは、再配布を禁止する別のライセンスの下で配布できます。たとえば、CSS、JavaScript、画像は GPL の下にある必要はありません。
于 2010-10-22T00:58:27.013 に答える
6

優れた記事はここにありますが、これはテクニックをカバーしていませんが、ルートをさらに追求する前に心に留めておくべきことです http://www.littlehart.net/atthekeyboard/2007/07/20/protecting-your- php-コード/

あなたの質問に対するより直接的な答えとしては、API キー システムを使用してから、Zend Guard の行に沿って何かを使用して PHP をエンコードします。そのため、ユーザーは、コードがエンコードされているときに API キー チェックを行って削除することはできません。

于 2010-10-21T13:25:57.973 に答える
5

API キーを使用することはおそらく問題ありません。プラグインの海賊版について心配する必要はありません。API チェックを削除する知識を持っている人は、スクリプトに追加されたあらゆる種類の保護を削除するのに十分賢いです。これらの人々について心配することはできません。

Zend Guard のような製品を使用することは選択肢ではありません。エンド ユーザーはシステムに Zend Optimizer をインストールする必要がありますが、それを保証することはできません。

とはいえ、とにかくソースコードを難読化したり隠したりすることはできません。Wordpress は GPL ライセンスの下でライセンスされており、プラグインが他のライセンスを持つことを固く禁じています。プラグインを販売することはできますが、ソース コードを隠すことはできません。

于 2010-10-21T22:42:05.083 に答える
1

正直なところ、プラグインがnullになるのを防ぐための防弾はないと思います。WProbotを見てください。ライセンスを検証するためのかなり確実な方法がありますが、それでも何百ものnullバージョンがあります。

人々があなたのコードをダウンロードしなければならない限り、誰かがあなたのコードを手に入れてそれを無効にするでしょう、あなたができることはs2memberやAllinOneSEOパックのようなフリーミアムバージョンを提供することです。

于 2010-10-22T23:55:56.633 に答える