質問

MacでObjective-Cを使用して、コードをクラックするのを難しくしようとしています。

私がしなければならないことの1つは、アプリケーションがクラックされているかどうかを確認することです。

私はObjective-CとXcodeを初めて使用しています。アプリケーションをテストするために、どんな方法でも、簡単にパッチを適用できる基本的なテストで常に終了します。

たとえば、バイナリの特定の部分で特定の値の存在をテストしようとしているとします。その操作は次のようなものになります:

「この値= x?」いいえの場合、ひびが入っています。

これは非常に簡単に割れます。ハッカーはテストに簡単にパッチを当て、常に真実にすることができます。

私は何かをテストできるものを想像しようとしていますが、簡単にパッチをとることができるテストとしては表示されません。

私は100%の著作権侵害を止めることができないことを知っていますが、少なくとも私は物事をより困難にしようとしています。

このような方法のアイデアはなく、バイナリを見ている人にとって物事を難しくすることができますか?

助けてくれてありがとう。

役に立ちましたか?

解決

彼らがあなたのスキームを評価し、あなたのスキームを定期的に変更することを難しくしてください。教科書の例は、ライセンス評価の進行中にチェックのソースとすべての相互参照を見つけるのに時間がかかる奇数間隔でチェックを実行することです。それを複数のチェックと組み合わせると、ほとんどのリリースに設定する必要があります。スキームを作成するときに、適切な量の創造性を追加するだけです。また、彼らのゲームをプレイするのは少し楽しいです。亀裂が投稿されてから1か月後に失敗する亀裂を解放するために... OK、それはあなたに逆火をするかもしれませんが、そもそも彼らと戦うように努力しているなら...

それは興味深いコミュニティです。これに慣れていない場合は、コミュニティを勉強することも有益です。前述のように、チャレンジのために亀裂が発生し、一部の製品バージョンは「無料広告」のコピー保護スキームを簡素化します。だから...誰かが決心した場合、それはあなたの時間を無駄にしてあなたをイライラさせるので、あなたは本当にひび割れを強く戦うことはできません。文化を観察することは興味深いことがあります。ひびが入っていることが「人気のあるソフトウェア」に相当することを認めるなら、おそらくあなたは最高の立場にあるでしょう。したがって、あなたは幸せになるはずです。通常、これで多くの睡眠を失うべきではありません(もちろん、これには例外があります)。さらに、この質問はMacカテゴリにリストされているため、統計を掘り下げるつもりはありませんが、OS Xをターゲットにしている場合、ソフトウェアはクラッカーから注意を払う可能性が低くなります。

あなたが最初のプログラマーである場合、その情報(および受け入れ)を巧みに使用するだけで、クラッカーと効果的に戦うために知っておく必要があります。

他のヒント

あなたのソフトウェアがセキュリティに関連していない限り、私は、ソフトウェアをほとんど使用せず、組織に高価なホームユーザーにソフトウェアを無料にするために、ライセンス計画を変更するためのより良いアプローチがあなたのライセンス計画を変更するためにより良いアプローチがあると思います。

組織は、法的な問題のためにクラックソフトウェアを使用することはめったにありません。この問題は、時々ユーザーであるホームユーザーとして、時々ソフトウェアを使用するために100ドルを費やすことを好まない場合があります。

これは、ソフトウェアをクラックするためのクラッカーの動機を奪うでしょう。

しないでください。 (良い)クラッカーは、楽しみのためにソフトウェアをクラックすることを忘れないでください。保護スキームがより詳細になればなるほど、クラッカーにとってより挑戦的で楽しいものになります。さらに、あなたのソフトウェアを違法に使用する可能性が高い人は、ひび割れたバージョンを取得できなくても、とにかくそれを支払うことはありません。あなたの時間はあなたの製品をより良くするために費やす方が良いでしょう。

そうは言っても、デバッグシンボルの実行可能ファイルを剥奪することで、ほとんどのアマチュアクラッカーを阻止できます。プロジェクトの設定でこれを有効にする必要があります。

私が使用していることを知っているすべての本当に強力な保護スキーム 自己修正コード 広く、何らかの形で。ただし、これは間違いなく、初心者のプログラマーが処理する準備をする必要があるものではありません。

危険の1つは、過度に長い間行けば、合法的なユーザーのために物事を壊すことになる可能性があることです。 1980年代の多くのAtariのアーケードマシンには、ROMが変更されたことが検出された場合、さまざまな興味深いことを行うコードがありました。効果は微妙です。たとえば、Tempestと呼ばれるゲームは、プレイヤーが特定のスコア値を持っていたときにゲームが終了した場合、無制限の無料ゲームを授与します。ただし、Tempestのリリースでは、チェックサムは誤って計算されたため、すべてのマシンにこの動作がありました。このバグがフィールドマシンの収益にどの程度影響を与えたかはわかりませんが、一部のオペレーターはそれを発見してむしろ動揺していたと思います。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top