Bir SRAM modülünü GPIO pinleri ile kontrol etmek mümkün müdür?


13

RasPi'ye bir SRAM modülü takmak istiyorum.

Benim fikrim SD kartta hassas (şifreli) veri depolamak ama anahtarı bir SRAM modülünde tutmak. Kendi yedek pili (veya süperkapasitör ) ve kasa açılırsa içeriği silen bir anti-sabotaj anahtarı olacaktır.

SRAM ile yalnızca 8 kullanılabilir GPIO hattıyla arayüz kurmanın bir yolu var mı?

SRAM modülünün kendisi en az 128 bit (en küçük AES anahtarının boyutu) kapasiteye ihtiyaç duyacaktır, ancak 1 bit genişliğinde bir bellek bile 7 adres satırı ve bir veri hattı artı 2 veya 3 kontrol hattı gerektirecektir.

Bu yapılabilir mi? Başka bir şey için tasarlanmış bir G / Ç hattını tekrar kullanarak hile yapmanın mümkün olabileceğini düşünüyorum.

Yanıtlar:


4

SRAM kurmak için, I2C / SPI modülü kullanmanızı öneririm ( GPIO hatlarını kullanmak yerine örnek . Potansiyel olarak daha yavaş olmasına rağmen, başka şeyler için diğer GPIO hatlarına sahip olduğunuz ve SRAM'ınızın oldukça büyük olabileceği anlamına gelir.

Yine de SRAM kullanmanın büyük bir dezavantajı var. RPi'nizde gerçekten değerli bilgiler depoladığınızı varsayalım ve gerçekten demek istiyorum. RPi'nizi hackleyebileceğimi ve rastgele kod çalıştırabildiğimizi varsayalım, ardından anahtarınızı verilerin şifresini çözmek için gerekli olan SRAM'den alabilirim. Bu bir güvenlik riskidir. Alternatif olarak, hangi I2C / SPI / UART üzerinden ilettiğiniz AVR / PIC yardımcı işlemcisini kullanabilirsiniz. RPi'de şifreleme / şifre çözme yapmak yerine verilerinizi yardımcı işlemciye gönderir ve anahtarı RPi'nize gönderme talimatı olmadığından emin olursunuz. Bununla birlikte, yeni bir anahtar oluşturmak için bir talimat olabilir ve elbette, yardımcı işlemcide saklanan birkaç anahtarınız olabilir. Bu harika bir proje olabilir.


Teşekkürler, ancak hassas veriler yine de CPU'dan geçmelidir (bu yüzden birisi
Pi'ye

Bir ölçüde katılıyorum. Anahtarda bir parolanız varsa, daha önce sakladığınız verilerin şifresini çözmenin bir yolu yoktur.
Alex Chamberlain

2
Anlamı yok. Veriler orada normal bellekte olduğundan daha güvenli olmayacak. İşletim sistemini köklendiren herkes her iki yerden de alabilir. Her iki yerde de alamayan herkes.
David Schwartz

@David Schwartz: Mesele şu ki, işletim sisteminin köklenmesi (1) kasayı açmanızı gerektiriyor (2) kasayı açmak SRAM'ı silen bir anahtar açıyor. İşletim sistemini kim köklerse şimdi (a) ana bellekteki ve flaştaki verilere ve (b) harici SRAM üzerindeki bir grup sıfırlara erişebilir, bu yüzden şimdi flaş verilerinin şifresini çözme anahtarı yoktur. Açıkçası işletim sistemini hala ağ üzerinden
köklenmekten korumalıyız

1
Sonra MCP79410'u kullanabilirsiniz . İki pimli seri arabirime (saat ve veri), 64 bayt SRAM'ye ve harici bir pilden giriş için bir pime sahiptir. Dış müdahale koruma anahtarınızın hem aküyü hem de besleme voltajını değiştirdiğinden emin olun!
David Schwartz

4

RAM'i SPI veya I2C üzerinden taklit etmek için küçük bir mikrodenetleyici kullanabilirsiniz .

En küçük mikrolar dışındaki tüm anahtarları saklamak için 128 bit RAM olurdu

Örneğin

MSP430G2001 , 128 bayt RAM'e sahiptir
PIC12F508 , 50 bayt RAM'e sahiptir (anahtar için 16 bayt, 34 bayt ücretsiz)
PIC10F202 , 24 bayt RAM'e sahiptir (anahtar için 16 bayt, 8 bayt ücretsiz)

Gerçekten seri RAM'i tercih ederseniz, bunlar da var

23K640 64kbit / 2.7-3.6V


2

Pi'de sadece 8 gpio hattı olduğunu varsayıyorsunuz. Aslında 17'ye kadar sahip olmak mümkündür.

Onlara nasıl erişileceğiyle ilgili ayrıntıları bilmiyorum, ancak daha fazla bilgiyi burada bulabilirsiniz

http://elinux.org/RPi_Low-level_peripherals


1
Sadece indirdim (açıklamam gerektiğini hissediyorum), çünkü hemen hemen vermiş olduğunuz bir bağlantıydı, açıklamadı. (Bunu takdir edip etmeyeceğinizi bilmiyorum, ama insanların neden benim neden düştüğümü söylediklerini severim.)
18'de ACarter

8'den fazla satır alabileceğinizi düşündüm oldukça yararlı, ama yorumu takdir ediyorum
David Sykes

0

PCF8570P £ 1,50ish 256x8Bit SRAM gibi I 2 C SRAM modüllerini kullanabilirsiniz . 2.5V ve 6.0V arasında çalışır, 50nA gibi küçük bir güç tasarrufu moduna sahiptir ve gerekirse daha fazla RAM oluşturmak için istiflenebilir.

Doğrudan I2C'ye veya birden fazla I2C cihazı için bir Master'a bağlayın. Yalnızca 2 GPIO, Güç ve Negatif kullanır, MCU küçük bir pil kullanarak RAM tutma özelliğini kapatır.

resim açıklamasını buraya girin

Özel Anahtarı korumak istiyorsanız Alex Chamberlains güvenlik endişesi ciddiye alınmalıdır. Muhtemelen kodunuzda SRAM'a erişmek için tırmanmayı gerektiren bir tür yalıtım oluşturmayı düşünmek.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.