micropython Sicherheit

Python auf Einplatinencomputer wie Raspberry Pi, Banana Pi / Python für Micro-Controller
Antworten
pali
User
Beiträge: 7
Registriert: Montag 14. Januar 2019, 22:32

hallo zusammen :-)

ich mache mir gerade Gedanken zum Thema Micorpython und Sicherheit und wollte mal zu diesem Thema Eure Meinung hören...

Folgendes Szenario:
irgendwo im Vorgarten liegt ein Kasten mit einem ESP8266 und einem Relay etwa zum Schalten von irgendwelcher Beleuchtung.

Der Python-Code, der sich auf dem ESP befidnet, liegt ja in einem lesbaren Format vor, so dass "ein Dritter", der den ESP auslesen kann, Zugriff z.B. auf das WLAN PWD bekommt.

Wie geht Ihr mit dem Thema um? Denn es ist nicht abwegig, dass irgendeiner die Schachtel mit dem ESP einfach klaut...

LG
Benutzeravatar
__blackjack__
User
Beiträge: 13068
Registriert: Samstag 2. Juni 2018, 10:21
Wohnort: 127.0.0.1
Kontaktdaten:

@pali: Ob das da lesbar vorliegt oder nicht, wer auf die Hardware Zugriff hat, hat auch auf die Daten Zugriff. Denn spätestens für die Anmeldung braucht man die Zugangsdaten ja unverschlüsselt.

Also die Hardware physikalisch gut schützen und der Zugang den das Ding hat auf das nötigste beschränken. Also zum Beispiel ein möglichst eingeschränktes Gastnetz für solche Geräte.
„All religions are the same: religion is basically guilt, with different holidays.” — Cathy Ladman
__deets__
User
Beiträge: 14522
Registriert: Mittwoch 14. Oktober 2015, 14:29

Es gibt da was in deren NVS-System (non-volatile-storage):

https://docs.espressif.com/projects/esp ... encryption

Musst du dich halt einarbeiten, ob das das Problem loest. Abstrakt gesprochen kann ich mir das fast nicht vorstellen. Denn ich sehe da nichts, das sozusagen "write only, read internally for credentials, prevent reading from outside" ermoeglicht. Aber ich habe das auch nur ueberflogen.
Sirius3
User
Beiträge: 17737
Registriert: Sonntag 21. Oktober 2012, 17:20

@pali: Der ESP8266 unterstützt kein Secure Boot, also entweder speicherst Du den Passphrase oder mußt ihn bei jedem Boot irgendwie eingeben, also z.B. einen I2C-ID-Chip zum Booten anschließen. Ist halt doof bei Stromausfall.

Die bessere Alternative ist es, auf den ESP32 umzusteigen, der unterstützt, was Du willst: https://docs.espressif.com/projects/esp ... ption.html
pali
User
Beiträge: 7
Registriert: Montag 14. Januar 2019, 22:32

das kannte ich bis dato noch nicht, dass man den ESP32 "verschlüsseln" kann. Jedenfalls schaue ich mit die Sache genauer an. Danke für den Tipp!!!

Etwas zu diesem Thema habe ich auch noch hier gefunden:
https://forum.fhem.de/index.php?topic=95013.0
__deets__
User
Beiträge: 14522
Registriert: Mittwoch 14. Oktober 2015, 14:29

Definitiv cooles Feature. Ob das mit micropython geht? Schließlich muss man da ja Dateien hochladen. Man kann natürlich das ganze in C machen, und Python nur für die unkritischen Teile benutzen.
Sirius3
User
Beiträge: 17737
Registriert: Sonntag 21. Oktober 2012, 17:20

Für produktiven Code benutzt man am besten frozen-Module. Und die sind dann Teil des Images, da sollte es mit Encryption keinen Unterschied machen. Aber genauer habe ich mich mit dem Thema noch nicht auseinandergesetzt.
Antworten