改ざん防止組み込みマイクロプロセッサ


8

Microchip dsPICまたは同様のプロセッサを使用して、商用組み込みハードウェアを開発しています。

私が持っているファームウェアは時々非常に複雑で高価であり、ハッカーであり、ハードウェアを改ざんできないようにする必要があります。すべての基本的なソフトウェア保護はありますが、500ドルから1,000ドルで、セキュリティヒューズがあっても(不正な改ざんを防止するだけで)いくつかの外国のWebサイトサービスを介して16進コードを取得できます。その後、ほんの数か月で、IDA Proなどの逆アセンブラを使用してコードをリバースエンジニアリングできます。

ハードウェアデザインを少しだけ保護するにはどうすればよいですか(軍事保護の必要はありません)。

別の読み取り不能なプロセッサ、またはおそらく既存の設計への追加を推奨できますか?

必要なのはいくつかの機能を非表示にすることだけです。製品全体は必要ありません。また、安全な外部メモリでデータを非表示にするだけでは十分ではなく、プログラムの一部を非表示にする必要があります。

更新(多くのコメントに基づく):私はdsPICと4年間フルタイムでファームウェアを開発しています(別の方法でゼロから行うにはかなりの努力が必要です):

1)この製品はすでに販売されており、ハッカーは必要に応じてアクセスできます

2)新しいファームウェアはまだリリースされていません。すべての競争の誰もまだ持っていない5kBコードが含まれています。リリース後約12か月間、誰もが簡単に入手できないようにする必要があります

3)非常にエキゾチックなものや複雑なものにするための予算はなく、おそらく製品ごとにさらに$ 10プラスまたはマイナス

4)追加されたSIMカードのような解決策はうまくいくかもしれませんか?

5)非表示にする関数は、16バイトを復号化/暗号化するために、非標準の非常にトリッキーな計算を行います。既知のプロセスは1年でハッキングできず、関数が必要なので、非表示にしたいのです。

6)それが公開されているか、要求が「隠された」ハードウェアに送信されるか、または応答が公開されているかは問題ではありません。それを計算するプロセスを非表示にするだけでよく、dsPICプロセッサ内に置くことはできません。


1
user1831847:それは実際には機能しません。質問と$ 1,000を参照してください(私は自分の安全なコードで自分で見ました)
EmbeddedGuy

2
次に、ご存知のように、それはそれほど簡単ではありません-「安全」なマイクロプロセッサでさえです。そこに十分なリソースを投入すると、ほとんどすべてがクラック可能です。少なくとも、第三者を雇った場合、問題が発生した場合はいつでも訴訟を起こすことができます;)
JIm Dearden

2
@Jim Deardenの2番目のルール、あいまいさによるセキュリティはセキュリティではありません。専門家を雇うのは良い考えですが。男。セキュリティは絶対的なものではありません。常に時間とお金の要素です。これらの用語でどのレベルの保護を求めているかについて、手掛かりを与えることができます。
RoyC 2017

2
あなたがオンライン認証のようなものを持っていないのなら、私はあなたがほとんどSOLだと思います。あなたが言うように、それは単純な保護を壊すのに十分安価です(カプセル化を削除し、簡単な方法が何も機能しない場合、保護を無効化、バイパス、または再配線するためにさまざまな手法を使用できます)。セキュリティSEを試すことができます。製品が良ければコピーされ、ファームウェアをセキュリティで保護できたとしても、それを書き換えることは本当に難しいでしょうか?コストの多くは、コピー機が行う必要のない仕様などを決定することです。
Spehro Pefhany 2017

1
さまざまなスマートカードシステムについてはどうですか?
pjc50 2017

回答:


1

それを専門とする会社があります。Atmelwasはそのうちの1つで、内部も安全です。彼らはあなたのニーズに合うことができる特別なハードウェアを持っています。しかし、実際に機能させたい場合は、保管庫から生産施設までのチェーン全体をセキュリティコードの保管庫と警備員で保護する準備をしてください。それ以外の場合、実際には少なくとも$ 1Mが必要なのに、$ 1kを$ 10kだけ支払うことになります。


どういう意味ですか。製品が年間1,000万ドル売れた場合、100万ドルで問題ありませんが、これは私のケースではありません。しかし、金庫や警備員のない安全なハードウェアで十分かもしれません。この追加の計算セキュリティのために必要なのは、小さなタイプのCPUだけです。
EmbeddedGuy

次に警備員を
解雇します

安全な内部の更新呼び出しに基づいています。
Gregory Kornblum 2017

グレゴリー:申し訳ありませんが、「セキュリティで保護された」とはどういう意味かわかりません
EmbeddedGuy


1

MITの研究者たちは、コードを数学的にスクランブルする方法を開発しましたが、出力は同じに保ちました。関数を実行する唯一の方法は、適切なキーを提供することです。これは、時々ダウンロードされる可能性があります。

これはあなたに役立つかもしれません:http : //spectrum.ieee.org/computing/software/scrambled-code-keeps-software-safe


まだ実用的な解決策ではありませんが、興味深い教育の読み物に感謝します。
EmbeddedGuy
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.