2

こんにちは、ATTiny チップ用の HEX コード ファイルを解読し、AVRDude コマンド ライン インターフェイスを使用してプログラミングしようとしています。問題は、ユーザーがいつでも HEX ファイルが何であるかを確認できないようにすることです。

VB.net 暗号化は、サーバーに配置する前に HEX ファイルを暗号化し、プログラムがサーバーからファイルをダウンロードした後に復号化し、復号化された HEX ファイルを表示せずにプログラムを実行できますか?

当然のことながら、HEX ファイルは ATTiny チップにプログラムされている間は暗号化されたままにできないので、ハード ディスクに一時ファイルを書き込むことを心配することなく、プログラム内でプログラムされる元の HEX ファイルを作成できるようにするにはどうすればよいでしょうか。ドライブしてから削除しますか?(その一時ファイルを実行した後にプログラムを閉じることができ、ナビゲートして開いてコードを見ることができるため)

どんな助けでも素晴らしいでしょう!:o)

デビッド

4

2 に答える 2

1

すでに指摘したように、ホスト上でファイルを復号化すると、暗号化されていない形式でそこにあり、それについては何もできません。

業界は時々同じ問題を抱えているので、彼らは暗号化で道を譲りました: 「彼ら」がそれを逆コンパイルしたりアセンブリで見たりするので、他の誰かがコンパイルされて実行可能なファイルを取得できないようにする必要がある場合があります。 、場合によっては、他の誰かがデバイス上で適切な自作ファイルを実行できないようにするためにのみ必要な場合があります。

前述のように、ホスト (ユーザー/クライアント ホスト) でファイルを復号化することは論外です。しばらくしてから押してください。たとえば、シリアル ラインから読み取ったファームウェア ファイルをブートローダーに解読させることができます。

この場合、ハードウェア (チップ、ブートローダ、および初期ファームウェア バージョン) を提供し、更新は (JTAG/ASP/ISP ではなく) シリアル ライン経由でインストールされます。ブートローダーには、ファームウェア ファイルを復号化する秘密鍵が含まれます。この秘密鍵は、ファームウェア ファイルがあなたからのものであり、他の誰も何かをコンパイルしていないことを確認するためにも使用できます。

ブートローダー (hex ファイル) も配布する必要がある場合、誰かが秘密鍵を抽出または変更できるという問題に直面します。この場合、非対称暗号化が役に立ちます。秘密鍵を保持すると、ブートローダーが公開鍵の部分を取得します。誰かが公開鍵を抽出できたとしても、あなたのものとして認識されるファイルを作成することはできません。残念ながら、ATTiny は非対称暗号化には弱すぎます。対称暗号化でさえ、ブートローダ コードを肥大化させてしまいます。

于 2010-10-07T17:44:05.453 に答える
1

指定された制約では実行できません。ATtiny は便利なブートローダを実行できません (セルフ プログラミング フラッシュはありません)。HEX ファイルはホストで復号化する必要があります。復号化されたデータをメモリに保持すると、攻撃者の速度がわずかに低下する可能性があります。

于 2011-01-28T03:03:53.747 に答える