GPIOピンを介してSRAMモジュールを制御することは可能ですか?


13

SRAMモジュールをRasPiに接続したいと思います。

私の考えは、機密(暗号化)データをSDカードに保存し、キーをSRAMモジュールに保持することです。独自のバックアップバッテリ(またはスーパーキャパシタ)と、エンクロージャが開かれた場合に内容を消去する改ざん防止スイッチがあります。

8つの利用可能なGPIOラインのみでSRAMに接続する方法はありますか?

SRAMモジュール自体には少なくとも128ビット(最小のAESキーのサイズ)の容量が必要ですが、1ビット幅のメモリでさえ、7本のアドレスラインと1本のデータラインに加えて2本または3本の制御ラインが必要です。

できますか?他の目的のために設計されたI / Oラインを再利用することで、チートが可能になると考えています。

回答:


4

SRAMをインストールするには、私は、I2C / SPIモジュール(使用することをお勧めの例を、代わりのGPIOラインを使って。潜在的に遅く、それはあなたが他のもののために、他のGPIOラインを持っているし、あなたのSRAMが非常に大きくなることを意味しますが。

ただし、SRAMの使用には大きな欠点があります。本当に価値のある情報をRPiに保存するとしたら、本当に意味があります。私があなたのRPiをハックして任意のコードを実行し、データを解読するために必要なキーをSRAMから取得できると仮定します。これはセキュリティ上のリスクです。または、AVR / PICコプロセッサーを使用して、I2C / SPI / UARTで通信します。RPiで暗号化/復号化を行う代わりに、データをコプロセッサーに送信し、RPiにキーを送信するための指示がないことを確認します。ただし、新しいキーを生成するための指示がある場合があります。もちろん、コプロセッサーにいくつかのキーを保存することもできます。これはクールな小さなプロジェクトを作成できます。


感謝しますが、機密データはとにかくCPUを通過する必要があります(だから誰かがPiへのルートアクセスを取得すると、既に侵害されています。)
finnw

ある程度同意します。キーにパスワードがある場合、既に保存したデータを復号化する方法はありません。
アレックスチェンバレン

2
意味がありません。データは、通常のメモリよりも安全ではありません。OSを定着させた人なら誰でもどちらでも入手できます。どちらの場所でも入手できなかった人。
デビッドシュワルツ

@David Schwartz:ポイントは、(1)OSをルートするには、ケースを開く必要があることです(2)ケースを開くと、SRAMを消去するスイッチが開きます。OSをルート化したユーザーは、(a)メインメモリとフラッシュ内のデータ、および(b)外部SRAM上の多数のゼロにアクセスできるため、フラッシュデータを復号化するためのキーがありません。明らかに、OSがネットワーク経由でルート化されるのを防ぐ必要があります(既にそうです)
finnw

1
その後、MCP79410を使用できます。2ピンシリアルインターフェイス(クロックとデータ)、64バイトのSRAM、および外部バッテリーからの入力用のピンがあります。タンパースイッチがバッテリーと供給電圧の両方を切断することを確認してください!
デビッドシュワルツ

4

小さなマイクロコントローラーを使用して、SPIまたはI2Cを介してRAM をエミュレートできます。

非常に小さいマイクロを除くすべてのキーには、キーを格納するための128ビットのRAMがあります。

例えば

MSP430G2001には128 バイトのRAM があります
PIC12F508には50バイトのRAM(キーに16バイト、34バイトが空き)
PIC10F202には24バイトのRAM(キーに16バイト、8バイトが空き)

本当にシリアルRAMを好むなら、それらも存在します

23K640は64kbits / 2.7-3.6Vです


2

Piで使用できるgpioラインは8つだけであると想定しています。実際、最大17個まで使用できます。

それらにアクセスする方法の詳細は知りませんが、ここで詳細を見つけることができます

http://elinux.org/RPi_Low-level_peripherals


1
私はちょうどあなたがちょうど与えたので、説明しませんでしたので、私はちょうどダウン投票しました(私は説明する必要があると思います)。(あなたがこれに感謝するかどうかはわかりませんが、私は彼らがどうしてダウン投票したのかを言う人々が間違いなく好きです。)
ACarter

8を超えるio行を取得できることは非常に便利だと思っていましたが、コメントに感謝しています
デビッドサイクス

0

PCF8570P£1.50ish 256x8Bit SRAMのようなI 2 C SRAMモジュールを使用できます2.5Vと6.0Vの間で動作し、わずか50nAを消費する省電力モードがあり、必要に応じてスタックしてより多くのRAMを作成できます。

I2Cに直接接続するか、複数のI2Cデバイスのマスターに接続します。小型バッテリーを使用したMCU電源オフRAM保持のオプションを使用して、2つのGPIO、パワーおよびネガティブのみを使用します。

ここに画像の説明を入力してください

秘密鍵を保護する場合は、Alex Chamberlainsのセキュリティ上の懸念を真剣に受け止めてください。おそらく、SRAMへのアクセスにエスカレーションを必要とする何らかの分離をコード内に作成することを考えています。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.