Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: DES для AVR с SRAM 512 kb
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > AVR
Savrik
Нужна реализация алгоритма DES для AVR.
Нашел исходники, но памяти не хватает(сьедает 408 байт, а ведь еще что-то делать надо..). Может, кто-то встречал рабочий код? поделитесь)
Kovrov
не понял: у вас всего памяти 512 кБ, а съело 408 байт?
Rst7
А вы уверены, что Вам именно DES нужен? Например, XTEA по криптостойкости примерно как DES (хотя, надо конечно проверить последние достижения, особенно китайских криптографов wink.gif ), но на порядок проще в реализации и имеет намного меньше требований к ресурсам.
Ruslan Konovalov
Цитата(Rst7 @ Aug 16 2008, 08:40) *
А вы уверены, что Вам именно DES нужен? Например, XTEA по криптостойкости примерно как DES (хотя, надо конечно проверить последние достижения, особенно китайских криптографов wink.gif ), но на порядок проще в реализации и имеет намного меньше требований к ресурсам.


Вот кое-что нашел по XTEA.
http://wiki.secondlife.com/wiki/XTEA_Stron..._Implementation
Rst7
Цитата
Вот кое-что нашел по XTEA.


Вот скажите, у Вас постов мало, надо набить? Скажите, нафига человеку, ищущему реализацию DES для AVR исходники на PHP? Уже бы дали другую ссылку - http://en.wikipedia.org/wiki/XTEA, там есть и код на Си, и некоторые комментарии к коду, и, например, вот это:
Цитата
Best public cryptanalysis
A related-key differential attack can break 26 out of 64 rounds of XTEA, requiring 2^20.5 chosen plaintexts and a time complexity of 2^115.15 (Ko et al, 2004).


Согласитесь, поинформативнее будет. Тем более, что гугль на запрос XTEA первую же ссылку дает на страницу английской википедии.
Serjio
Может применить Xmega - она специально заточена под DES
http://www.atmel.com/dyn/resources/prod_do...nts/doc8105.pdf
Savrik
Цитата(Kovrov @ Aug 15 2008, 22:26) *
не понял: у вас всего памяти 512 кБ, а съело 408 байт?

Упс, очепятка, имелось ввиду 512 байт. Совсем потерялся в этих последних байтахsmile.gif

Цитата(Rst7 @ Aug 16 2008, 08:40) *
А вы уверены, что Вам именно DES нужен? Например, XTEA по криптостойкости примерно как DES

Нужен именно DES, так как вся система заточена под него. Обычный ключ для шифрования данных..

Цитата(Rst7 @ Aug 16 2008, 19:48) *
Вот скажите, у Вас постов мало, надо набить? Скажите, нафига человеку, ищущему реализацию DES для AVR исходники на PHP?

Тадаsmile.gif

Цитата
Может применить Xmega - она специально заточена под DES
http://www.atmel.com/dyn/resources/prod_do...nts/doc8105.pdf

Увы, закуплены уже 90USB162..

Цитата(Ruslan Konovalov @ Aug 16 2008, 23:05) *


О, это что-то близкое к истине.. Правда, начал уже свой код писать, но он не заработал так, как надо)
Savrik
Вот, нашел на гуглокоде, слегка переделал под АВР студию. Может, кому-то облегчит жизнь.
zltigo
Цитата(Savrik @ Aug 21 2008, 18:31) *
Вот...

Что-то совсем не впечатлили - удалсь круто сэкономить память по сравнению с первым забракованным вариантом?
Savrik
Цитата(zltigo @ Aug 21 2008, 19:42) *
Что-то совсем не впечатлили - удалсь круто сэкономить память по сравнению с первым забракованным вариантом?

Могу предоставить первый вариант, для сравненияsmile.gif
zltigo
Цитата(Savrik @ Aug 21 2008, 18:45) *
Могу предоставить первый вариант, для сравненияsmile.gif

Ну а разница в байтах-то какая?
Savrik
Хэ, я сначала решил, что Вы успели протестировать код)
В первом случае используются битовые операции, во втором, старом, операции проводились над байтами, то есть изначально блок в 8 байт расширялся до 64, и так далее.
Разница в памяти - около 250% в старом варианте и около 30% в новом.
Проценты от 512 байт.
Rst7
Вообще-то, скажу по секрету - реализация DES может останавливать только по быстродействию (долго очень). По памяти данных она лимитировать просто не может - все переменные для раунда вполне помещаются в регистрах. Снаружи необходимы только таблицы S-блоков (укладываются во флеш, весить будут 512 байт, хотя можно и 256 (по 2 выхода в каждом байте)), P-блок и перестановки с расширением/сжатием - в принципе оптимально с точки зрения быстродействия реализовать прямо в коде.

Так что поле для деятельности автора огромно, конечную цель я обрисовал smile.gif
HEXFET
Привет. Разрабатывая защиту беспроводного канала, наткнулся на ресурс, решил помочь.
http://www.emsign.nl -список с описанием реализованных протоколов (там DES кажется поменьше память потребляет)
http://www.emsign.nl/main_avr_crypto.htm -заполняете анкету и ждете по почте архив.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.