Ich möchte ein eingebettetes Gerät herstellen, das auf sichere Weise mit einem Webserver kommunizieren kann. Ich bevorzuge es, Standard-SSL zu verwenden, damit der Webserver mein Gerät ähnlich wie ein Webbrowser sieht.
Ich schlage den TCP-Stack von Microchip vor . Microchip bietet einen kostenlos lizenzierten TCP/IP-Stack an, der für PIC18, PIC24, dsPIC und PIC32 optimiert ist.
Der TCP/IP-Stack von Microchip enthält die Funktion Secure Sockets Layer (SSL).
Aber es ist nicht kostenlos. Siehe unten:
Um den Beschränkungen der US-Exportkontrolle zu entsprechen, muss der Verschlüsselungsteil des SSL-Moduls separat von Microchip erworben werden. Die Bibliothek der Datenverschlüsselungsroutinen (SW300052) ist gegen eine geringe Gebühr unter http://www.microchipdirect.com/productsearch.aspx?Keywords=SW300052 erhältlich .
Für bessere Ergebnisse können Sie ENCx24J600 verwenden , das über eine integrierte AES-Verschlüsselungs-/Entschlüsselungs-Engine und andere Sicherheits-Engines verfügt.
Betrachten Sie diese eingebetteten SSL-Bibliotheken:
http://www.yassl.com/yaSSL/Products-cyassl.html
Und vielleicht http://gitorious.org/tropicssl/
Tropicssl und polarssl stammen von http://www.ohloh.net/p/xyssl
Tropicssl und xyssl sind BSD-lizenziert, während alle anderen GPL sind, mit einer Option für eine proprietäre Lizenz für $.
Wenn das System kompliziert genug sein kann, um ein Betriebssystem auszuführen, gibt es viele Tools und Bibliotheken, die diese Aufgabe erledigen können. Auf einem eingebetteten Linux-System können Sie wget mit SSL verwenden. Auf jedem System mit höheren Sprachen wie Python oder Ruby unterstützt die Netzwerkbibliothek ( Python SSL ) SSL. Wenn Sie nur Zugriff auf C haben, können Sie mithilfe der OpenSSL-Bibliothek etwas schreiben .
Wenn es kein Betriebssystem gibt, steht Ihnen viel Arbeit bevor. Sie benötigen mindestens einen TCP/IP-Stack. Ich würde einen Prototyp mit einem mbed bauen – es gibt einen Forenbeitrag , der darauf hindeutet, dass sie inzwischen eine SSL-Bibliothek haben könnten.
Dies scheint auch AES SSL zu unterstützen: http://www.lantronix.com/device-networking/embedded-device-servers/xport.html
gahooa
Kellenjb
Connor Wolf
Kellenjb