WolfSSL на скорости Microblaze?

Привет, у меня есть небольшая плата разработки ARTY с ARTY-35T, у меня есть пример проекта, работающего на плате с lwip и веб-сервером. Мне было интересно, будет ли WolfSSL достаточно быстрым на Microblaze, работающем на частоте 50 МГц без модуля с плавающей запятой. Со всей математикой, связанной с этим, мне интересно, истечет ли время соединения до того, как оно завершится на макетной плате? Кто-нибудь имел опыт в этом?

Заранее спасибо.


person Godspped    schedule 08.04.2019    source источник
comment
Это устройство, с которым вы работаете? reference.digilentinc.com/_media/reference/programmable-logic/ Если это так, вы увидите в документе, что процессор MicroBlaze в конфигурации Arty SoC обычно работает на частоте 100 МГц, хотя можно спроектировать вашу SoC так, чтобы она могла работать на частоте более 200 МГц. Так вы специально настраиваете его для работы на частоте 50 МГц из соображений мощности? Если это так, вы также можете настроить часы на время рукопожатия, а затем отключить их для учета питания после установления соединения.   -  person Kaleb    schedule 10.04.2019
comment
Спасибо за ответ, да, это та плата, и да, я набрал ее из-за проблем, связанных с питанием. Я не знал, что мы можем менять часы на лету в дизайне, но я могу взглянуть на это.   -  person Godspped    schedule 11.04.2019
comment
Похоже, что раздел 7 этого руководства, на которое я ссылался выше, указывает на этот документ для работы с часами серии 7: xilinx.com/support/documentation/user_guides/. По моему опыту, редко можно встретить часы, которые нельзя настроить во время выполнения, но, опять же, они не работали так широко с программируемыми пользователем вентильными массивами, которые немного отличаются от типичного микроконтроллера. При этом я очень подозреваю, что часы настраиваются во время выполнения на FPGA, и на это обязательно стоит обратить внимание! Ура, дайте нам знать, что вы найдете.   -  person Kaleb    schedule 11.04.2019


Ответы (1)


Я бы порекомендовал изучить настройку часов времени выполнения на устройстве. Обычно ускоряют часы для тяжелых криптографических операций, которые выполняются при первоначальном установлении безопасного соединения (например, часть рукопожатия соединения TLS). После того, как соединение установлено, и устройство просто выполняет транзакции уровня записи, часы могут быть настроены обратно на более низкую скорость. Эта настройка позволит установить соединение до того, как произойдет тайм-аут (почти во всех случаях), а также позволит учитывать мощность.

Я думаю было бы вполне возможно реализовать подключение до таймаута на вашем устройстве. В дополнение к оценке корректировок часов во время выполнения wolfSSL предлагает математическую оптимизацию с одинарной точностью для некоторых из самых дорогостоящих криптографических операций, связанных с процессом рукопожатия. Я рекомендую вам просмотреть следующие настройки для wolfSSL:

WOLFSSL_HAVE_SP_RSA
WOLFSSL_HAVE_SP_ECC
WOLFSSL_HAVE_SP_DH

С оптимизацией сборки Single Precision + настройкой часов для рукопожатия у вас не должно возникнуть проблем с установлением безопасного соединения до того, как тайм-ауты станут проблемой.

Для получения дополнительной информации или подробностей обращайтесь в службу поддержки wolfSSL напрямую в любое время, отправив электронное письмо по адресу «support [at] wolfssl [dot] com» или через портал zendesk по адресу «wolfssl [dot] zendesk [dot] com». .

person Kaleb    schedule 10.04.2019
comment
В качестве примечания, если вы хотите, чтобы вопросы размещались здесь в переполнении стека для других пользователей, это здорово, и wolfSSL поощряет это! Однако, если вы не получили своевременный ответ, отправьте сообщение в службу поддержки [at] wolfssl [dot] com со ссылкой на ваш вопрос о переполнении стека, чтобы один из инженеров wolfSSL мог прийти и взглянуть! - person Kaleb; 16.04.2019