2012-04-06 22 views
0

オクラホマ今はちょっと苦しいです。Javaライブラリを難読化したピクルスで

私はコア/外部セクションに分割したJavaプログラムを持っています。

外部コード(公開される予定)が参照できるJavaライブラリに私のコアを照合しました。

しかし、私はこのJavaライブラリの内容を互換性のないものにしたくありません。

私は良いJava難読化装置を見つけるために行った。私はすべてのプレミアム難読化ツール(のデモを試してみたことは、外のコードの状態/変更を参照する(はい、それはひどいですが、何でも)

- どのような私の状況は私のJavaライブラリが正確に、モジュール式ではないという事実である複雑に

ZKM、allatori、など)と無料のものが、それらのいずれか

  1. は理由瓶自体に含まれていないJavaライブラリの/依存関係への参照の私は
  2. 停止を必要とするものである非常に弱い制御フローの難読化を持っていますが、依然として参照されます。

アドバイスはありますか?

答えて

0
  1. あなたの基準を満たす制御フローの難読化を持っている何の難読化ツールが存在しない場合は、独自の難読化ツールを作成したり、製品を改善するために、既存のベンダーに要求を提出する必要があります。

  2. プログラムの外部と内部の両方を同時にobfuscatorで実行します。しかし、すべての外部コードにはexclude rulesと書いてください。また、内部コードのパブリックAPIの除外ルールも記述する必要があります。内部コードにパブリックAPIレイヤーがない場合は、外部コードが内部コードを難読化された名前で参照する必要があるため、非常に時間がかかります。外部ソースコードを読む。

+0

有用なコメントありがとう! – user1318256

2

難読化は逆コンパイルを防ぎません。それは常に逆コンパイルすることができます。後でコードを読みにくくするのに役立ちます。あなたのロジックだけを難読化し、インターフェースを手入れしないでください。

+0

は確かに、何の難読化コードを逆コンパイルの危険から自由ではありません。しかし、配布する前に、逆コンパイルでいくつかのレベルの難易度が必要です。 – user1318256

0

私は2番目のahaninのコメントです。

しかし、難読化ツールを探しているなら、かなり強力なルールセットを持つ良いものはProguardです。コードは、最小限の(小さな)ポーズで作成する必要があるAndroidのスペースで頻繁に使用されます。

リンク:Proguard

+0

それは、あまりにも弱い論理的な流れを持っている難読化者です。難読化 – user1318256

+0

ああ、あまりにも悪いです。あなたのプロジェクトには幸運があります。 –