Chcę stworzyć urządzenie wbudowane, które może komunikować się z serwerem internetowym w bezpieczny sposób. Wolę używać standardowego protokołu SSL, aby serwer WWW wyświetlał moje urządzenie podobnie jak przeglądarka internetowa.
- Czy istnieją wbudowane biblioteki dla tego wbudowanego?
- Co powiesz na układ scalony, który może obsłużyć uzgadnianie i deszyfrowanie?
- Jeśli nie, jak bym to zrobił sam?
microcontroller
library
tcp-ip
encryption
Kellenjb
źródło
źródło
Odpowiedzi:
Sugeruję stos Microchip TCP . Microchip oferuje bezpłatny licencjonowany stos TCP / IP zoptymalizowany dla PIC18, PIC24, dsPIC i PIC32.
Stos TCP / IP Microchip zawiera funkcję Secure Sockets Layer (SSL).
Ale to nie jest darmowe. Patrz poniżej:
Aby uzyskać lepsze wyniki, możesz użyć ENCx24J600, który ma wbudowany silnik szyfrowania / deszyfrowania AES i inne silniki papierów wartościowych.
źródło
Rozważ te wbudowane biblioteki SSL:
http://www.yassl.com/yaSSL/Products-cyassl.html
http://polarssl.org/
http://www.matrixssl.org/
A może http://gitorious.org/tropicssl/
Tropicssl i polarssl pochodzą z http://www.ohloh.net/p/xyssl
Tropicssl i xyssl mają licencję BSD, podczas gdy wszystkie pozostałe są GPL z opcją licencji własnościowej za $.
źródło
Jeśli system może być wystarczająco skomplikowany, aby uruchomić system operacyjny, istnieje wiele narzędzi i bibliotek, które mogą wykonać to zadanie. W osadzonym systemie Linux możesz używać wget z SSL. W każdym systemie z językami wyższego poziomu, takimi jak Python lub Ruby, biblioteka sieciowa ( Python SSL ) będzie obsługiwać SSL. Jeśli masz dostęp tylko do C, możesz napisać coś przy użyciu biblioteki OpenSSL .
Jeśli nie ma systemu operacyjnego, myślę, że masz dużo pracy. Co najmniej potrzebujesz stosu TCP / IP. Zbudowałbym prototyp z mbedem - jest post na forum, który sugeruje, że mogą już mieć bibliotekę SSL.
źródło
Wydaje się, że obsługuje to także AES SSL: http://www.lantronix.com/device-networking/embedded-device-servers/xport.html
źródło