Forum: Mikrocontroller und Digitale Elektronik µC Ethernet SSL


von Fragensteller (Gast)


Lesenswert?

Hallo Zusammen,
ich suche einen µC der mit SSL klar kommt.
Der µC soll mithilfe eines Ethernet IC's (W5100) auf einen Server 
zugreifen und Daten abfragen.
Das ganze soll sicher über HTTPS ablaufen.
Könnt ihr einen µC empfehlen der Leistungsstark ist und das hin bekommt?
Vielen Dank im voraus :)

von Sebastian V. (sebi_s)


Lesenswert?

So schnell braucht der Mikrocontroller nicht zu sein, wenn ein langsamer 
Verbindungsaufbau für dich in Ordnung ist. Das größte Problem ist 
vermutlich der benötigte RAM. Ein paar Zahlen die ich gefunden habe sind 
20KB RAM und 21KB für den Code [1]. Das ist dann aber wirklich Minimum.

[1] 
http://security.stackexchange.com/questions/3204/computationally-simple-lightweight-replacement-for-ssl-tls

von Stefan F. (Gast)


Lesenswert?

SSL und kleine Mikrocontroller sind zwei Welten, die nicht zusammen 
passen.

Da musst du schon was größeres nehmen, mit einigen zig Kilobytes RAM. 
Ich glaube, der Lantronics XPort kann Ethernet mit SSL auf seriell 
unverschlüsselt umsetzen.

von Fragensteller (Gast)


Lesenswert?

Ich hätte an diesen µC gedacht: STM32F103C8T6
20KB RAM
64KB Flash
72MHz

Nur leider ist das RAM ja was knapp welcher hätte den mehr RAM?

von Stefan F. (Gast)


Lesenswert?

http://www.keil.com/dd/search_parm.asp

Wähle 64k or greater aus und du bekommst gaaaaanz viele aufgelistet.

Aber, such Dir doch erstmal eine SSL Implementierung raus, mit der du 
klar kommst.

Ich würde einen Raspberry Pi (oder ähnlich) mit openssl nehmen.

von Sebastian V. (sebi_s)


Lesenswert?

Fragensteller schrieb:
> Nur leider ist das RAM ja was knapp welcher hätte den mehr RAM?

Wenn du zu LQFP64 gehst gibts von den STM32F1 auch welche mit 1MB Flash 
und 96KB RAM. Das sollte ziemlich sicher reichen.

von Michael U. (amiga)


Lesenswert?

Hallo,

prinzipiell können die ESP8266 SSL.
http://www.esp8266.com/viewtopic.php?f=6&t=3818

Gruß aus Berlin
Michael

von Gerd E. (robberknight)


Lesenswert?

Denke vor allem auch an die meist unterschiedlichen Lebensdauerzyklen 
zwischen kleinen Embedded-Systemen und Verschlüsselungstechnik.

Embedded-Systeme haben oft eine Lebensdauer von 5+ Jahren. In vielen 
Fällen gibt es in der Zeit am Anfang vielleicht noch ein paar 
Bugfix-Updates aber das war es dann. Firmware-Updates im Monatstakt sind 
ungewöhnlich und oft werden Firmware-Updates erst eingespielt wenn es 
konkrete Probleme gibt und nicht als normaler Prozess.

Bei SSL musst Du damit rechnen alle paar Monate ein Sicherheitsupdate 
und neue CA-Root-Zertifikate einzuspielen.

Plane also von Anfang an ein System ein, mit dem Du möglichst 
automatisch Firmwareupdates auf die ausgelieferten Geräte bekommst. Also 
nix mit "Kunde schließt einen PC per USB an, drückt den 
Bootloader-Knopf,...".

Du brauchst außerdem eine Echtzeituhr um die Lebendauer der Zertifikate 
prüfen zu können. Zusätzlich solltest Du einen Hardware-Zufallsgenerator 
an Bord haben.

Ich schlage da also eher etwas wie den STM32F417 vor. Dort hast Du dann 
auch 192 KB RAM, das ist für einen IP-Stack und SSL-Bibliothek 
angemessener. Dank Hardware-AES ist die Verschlüsselung bei dem auch 
fix.

von Sebastian V. (sebi_s)


Lesenswert?

Gerd E. schrieb:
> Bei SSL musst Du damit rechnen alle paar Monate ein Sicherheitsupdate
> und neue CA-Root-Zertifikate einzuspielen.

Kommt drauf an was er überhaupt vor hat. Wenn es nicht darum geht 
beliebige Server per HTTPS zu erreichen sondern eigene Server, dann kann 
man auch sein eigenes CA Zertifikat erstellen und das ausliefern. Das 
sollte sich dann auch nicht monatlich ändern...

von Gerd E. (robberknight)


Lesenswert?

Sebastian V. schrieb:
> Wenn es nicht darum geht
> beliebige Server per HTTPS zu erreichen sondern eigene Server, dann kann
> man auch sein eigenes CA Zertifikat erstellen und das ausliefern.

Ok. Aber auch ein eigenes CA-Zertifikat sollte keine Lebensdauer länger 
10 Jahre haben. Genauso sollte das System regelmäßig Sicherheitsupdates 
bekommen können und die Crypto-Algorithmen ausgetauscht werden wenn 
nötig.

Während z.B. MD5 vor ein paar Jahren noch als vollkommen ausreichend 
angesehen wurde, ist heute auch SHA1 nicht mehr zu empfehlen. Neue 
Zertifikate sollten mindestens SHA2-256 haben.

Auch SSLv3 ist ein Sicherheitsrisiko, es sollte TLS v1.1 oder TLS v1.2 
sein.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.