SSL від мікроконтролера


12

Я хочу зробити вбудований пристрій, який може безпечно спілкуватися з веб-сервером. Я вважаю за краще використовувати стандартний SSL, щоб веб-сервер переглядав мій пристрій подібним до веб-браузера.

  • Чи є якісь вбудовані бібліотеки для вбудованої сторони для цього?
  • А як щодо ІМС, який може передати мені рукостискання та розшифровку?
  • Як ні, як би я пішов робити це сам?

Якщо ви цього ще не бачили, ви можете вважати, що це невеликі розміри, потужні можливості, але не дешева ціна: phidgets.com/products.php?product_id=1072
gahooa

@gahooa, що цікаво. Я шукаю дешевий варіант, хоча. Мій ринок купував би мої пристрої на 10 чи 100, тому кожен цент, який я можу скоротити, може допомогти зробити товар більш товарним.
Kellenjb

1
Я сподіваюся, у вас є ВЕЛИКИЙ мікро. SSL досить важкий, обчислювально.
Коннор Вольф

@Fake Name Я думав dsPIC. Наскільки я розумію, що це початкове рукостискання може бути досить важким, але все інше не надто погано.
Kellenjb

Відповіді:


4

Я пропоную стек Microchip TCP . Microchip пропонує безкоштовний ліцензований стек TCP / IP, оптимізований для PIC18, PIC24, dsPIC та PIC32.

TCP / IP стека Microchip включає функцію шару захищених сокетів (SSL).

Але це не безкоштовно. Дивіться нижче:

Щоб відповідати обмеженням контролю за експортом США, частина шифрування модуля SSL повинна бути придбана окремо від Microchip. Бібліотека процедур шифрування даних (SW300052) доступна за номінальну плату за адресою http://www.microchipdirect.com/productsearch.aspx?Keywords=SW300052 .

Для кращих результатів можна використовувати ENCx24J600, який має вбудований двигун шифрування / розшифрування AES та інші двигуни з цінними паперами.


1
Не безкоштовно, але лише 5 доларів.
Роберт

Дуже дешевий! Я цього не знав.
Даніель Грілло

1
@Robert та @Daniel Grillo Я вважаю, що це 5 доларів за стартовий пакет, а потім, коли ви перейдете в роздріб, його близько 2500 доларів за 5000 одиниць. Принаймні, так це і є для цього: microchip.com/stellent/…
Kellenjb

Однак ENCx24J600 - це та частина, яка мене дуже цікавить.
Kellenjb

5

Розглянемо ці вбудовані бібліотеки SSL:

http://www.yassl.com/yaSSL/Products-cyassl.html

http://polarssl.org/

http://www.matrixssl.org/

І, можливо, http://gitorious.org/tropicssl/

Tropicssl та polarssl походять з http://www.ohloh.net/p/xyssl

Tropicssl та xyssl мають ліцензію на BSD, тоді як, як і всі інші, є GPL з можливістю використання власної ліцензії на $.


2

Якщо система може бути досить складною для запуску операційної системи, є безліч інструментів і бібліотек, які можуть виконати цю роботу. У вбудованій системі Linux ви можете використовувати wget із SSL. У будь-якій системі з мовами вищого рівня, такими як Python або Ruby, мережева бібліотека ( Python SSL ) підтримуватиме SSL. Якщо у вас є лише доступ до C, ви можете написати щось за допомогою бібліотеки OpenSSL .

Якщо немає ОС, я думаю, що ви ще багато роботи. Як мінімум, вам потрібен стек TCP / IP. Я б побудував прототип з mbed-- є повідомлення на форумі, яке дозволяє припустити, що вони вже можуть мати бібліотеку SSL.



1

Це, мабуть, також підтримує AES SSL: http://www.lantronix.com/device-networking/embedded-device-servers/xport.html


1
Я не вірю, що це насправді підтримує SSL - AES - це просто симетричний шифр, який може використовуватися SSL, але, наприклад, рукостискання вимагає інших кроків, що передбачають (як правило) RSA та SHA-1 Однак Lantronix тепер має XPort AR, який, як видається, підтримує деяку версію SSL lantronix.com/device-networking/embedded-device-servers/…, проте це не дешево.
thom_nic
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.