2011-12-18 3 views
3

署名されたXCARCHIVEファイルをクライアントと共有すると、ソースコードを参照できますか? IPAファイルを送信するよりも安全性が低いですか?署名されたXCARCHIVEファイルをクライアントと共有すると、ソースコードが表示されますか?

あなたは.xcarchive内で見てみるならば、あなたはそれが(アプリケーションのデバッグシンボルを保持している)「dSYM」ディレクトリで構成されていることを感謝し

答えて

7

を参照してくださいよ、Info.plistファイル、およびAアプリケーションバイナリを含むディレクトリ。それは、IPAを送るより安全であるべきです。

+0

十分な音です。私は16進エディタを使ってアプリケーションのバイナリを見ていました。読み込み可能なコードは見当たりませんでしたが、セレクタ名がたくさん見つかりました。これらは互換性がありませんでしたか? – Chris

+0

私は私の専門分野を超えているのではないかと恐れています。私が尋ねることができるなら、あなたの方法の名前でクライアントができる最悪のことは何ですか? –

+1

@ MarkAdams:アプリのリバースエンジニアリングにより、OPの仕事は効果的に価値がなくなり、ビジネスと彼のIPの両方を失うでしょうか? – darvids0n

2

リバースエンジニアリングが心配な場合は、.xcarchiveディレクトリを配布することは悪い考えです。

特に.ipaファイルには通常、Cシンボルテーブルが含まれていません。

objcにリンクされたmach-oバイナリには、objcクラス、セレクタ、impアドレスのすべてを記述するセグメントが含まれます。これは逆転時にはうまくいきますが、Cシンボルテーブルは分散バイナリから破棄することができるものです。

.dSYMディレクトリ(破棄されたシンボルテーブルを含む)は、クラッシュレポートのスタックトレースを記号化できるように特別に保持されます。それを配布する専門的理由はない。

実際、リバースエンジニアにとって、シンボルテーブルを持つことは貴重なことになります。

論理の一部をリバースエンジニアリングすることに心配している場合は、private C関数(すべてコンパイラに関する限り同じファイル内にあるもの)ですべてを実装し、ストリップされたバイナリのみを配布します(.ipaではなく.xcarchive) 。

あなたが強制されている以上にobjcを使用しないでください。

でも、逆コンパイラでうまくいく人は、それでも最終的にそれをすべて把握することができますが、もっと難しくなります。

関連する問題