私たちはこれを数回経験しましたが、私たちはゲームを(安価で)公開し、誰かがそれをハッキングしてミラーに置いています。すべてのアプリにGoogleアラートを設定しているため、ハッキングを行っているユーザーが毎日通知されます。これまでのところ、Googleの提案に従ってライセンスサービスを実装しました。ソルトは、一意のデバイスIDでライセンスが開始されるたびにランダムに作成されます。アプリケーションが初めて起動されたときに、チェックサービスを1回実行します。次に、キーの512文字のハッシュと、そこからSharedPreferencesで比較される格納された値を生成します。
今、私は一度チェックすることがおそらくアプリケーションがブロックされている場所であることを知っています。私たちのバイトコードは、チェックを開始する行なしで調べられ、再コンパイルされた可能性が高いです。
ここからは、コードが以前に壊れているのを見て、コードを難読化したくありません。私はもう少ししっかりしたものを望んでおり、これを適切に行う方法も学びたいです。ハッキングされたバージョンを探す人は2%だけなので、この時点ではお金を稼ぐよりも学習に興味があります。
これまでのところ、自分で、ゲームのいくつかの起動領域に配置された乱数ジェネレータを考え出しました。開始されると(たとえば、50回に1回)、ライセンスがチェックされます。クラッカーが各ケースを排除し、コンパイルし、排除し、コンパイルする必要があるため、ハッキングが難しくなることはわかっています。しかし、この方法はまだ解読可能です...それで、皆さんは何を提案しますか?繰り返しますが、私はこのセキュリティプロセスに本当に興味があります。したがって、教育して、これを難読化やタイムスタンプに基づく定期的なチェックについての議論に変えないでください。
ありがとう