реклама на сайте
подробности

 
 
> Помогите подобрать алгоритм шифрования
Xenom0rph
сообщение Jan 7 2009, 10:40
Сообщение #1


Частый гость
**

Группа: Новичок
Сообщений: 85
Регистрация: 2-10-08
Пользователь №: 40 646



Есть устройство, которое принимает некие данные и записывает их на внешнюю EEPROM, сделано оно на МК, тини2313. Задача такая, что бы никто кроме пользователя устройства не мог расшифровать эти данные (ну или подбор ключа занимал как можно больше времени), алгоритм нужен асимметричный, что бы, даже если хакер получит дамп памяти микроконтроллера, открытые ключи которые он оттуда достанет не помогли ему в расшифровке. Плюс ко всему код алгоритма не должен занимать большим, так как осталось не особо много места на МК. Сейчас занялся алгоритмом RSA, но прочитал, что ключ для стойкости должен быть не менее 1024 бит, а я не представляю где его хранить.
Go to the top of the page
 
+Quote Post
3 страниц V   1 2 3 >  
Start new topic
Ответов (1 - 14)
Rst7
сообщение Jan 7 2009, 11:02
Сообщение #2


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



Цитата
Сейчас занялся алгоритмом RSA,


Годится.

Цитата
но прочитал, что ключ для стойкости должен быть не менее 1024 бит, а я не представляю где его хранить.


Как где? Это же всего 128 байт. На выбор - либо в EEPROM проца, либо в памяти программ. С доступом по LPM.

Другое дело - скорости шифрования там очень маленькие. Не пугает?


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
Xenom0rph
сообщение Jan 7 2009, 11:43
Сообщение #3


Частый гость
**

Группа: Новичок
Сообщений: 85
Регистрация: 2-10-08
Пользователь №: 40 646



Цитата(Rst7 @ Jan 7 2009, 14:02) *
Годится.
Как где? Это же всего 128 байт. На выбор - либо в EEPROM проца, либо в памяти программ. С доступом по LPM.

Другое дело - скорости шифрования там очень маленькие. Не пугает?

Да не там скорости не большии данные идут порциями по 50 байт, в среднем каждые полчаса.
А что такое LPM?
Go to the top of the page
 
+Quote Post
smac
сообщение Jan 7 2009, 11:50
Сообщение #4


Частый гость
**

Группа: Участник
Сообщений: 149
Регистрация: 2-06-08
Из: Москва
Пользователь №: 38 003



Цитата(Xenom0rph @ Jan 7 2009, 14:43) *
....
А что такое LPM?

LPM - ассемблерная команда (для архитектуры AVR) - загрузить (в регистр) байт из памяти программ.
Наверное имелось ввиду, что ключ должен располагаться в той области памяти программ, для которой возможно исполнение данной команды.

Сообщение отредактировал smac - Jan 7 2009, 11:51
Go to the top of the page
 
+Quote Post
Rst7
сообщение Jan 7 2009, 12:10
Сообщение #5


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



Цитата
Наверное имелось ввиду,


Да ничего не имелось. К слову пришлось. А оказалось, что топикстартер не знает, что данные можно хранить в области памяти программ. Вывод - сначала учить матчасть, потом остальное.


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
Mig&L
сообщение Jan 7 2009, 12:48
Сообщение #6


Частый гость
**

Группа: Участник
Сообщений: 107
Регистрация: 1-07-07
Пользователь №: 28 823



Цитата(Xenom0rph @ Jan 7 2009, 13:40) *
... как можно больше времени...

необходимо Вам задать это время - час? месяц? год? - а потом выбирать алгоритм.
Go to the top of the page
 
+Quote Post
vvs157
сообщение Jan 7 2009, 12:49
Сообщение #7


Профессионал
*****

Группа: Свой
Сообщений: 1 526
Регистрация: 8-04-05
Пользователь №: 3 960



Цитата(Xenom0rph @ Jan 7 2009, 13:40) *
...сделано оно на МК, тини2313. ....Сейчас занялся алгоритмом RSA
Сильно сомневаюсь, что в Тиню влезет многознаковая арифметика
Go to the top of the page
 
+Quote Post
Mig&L
сообщение Jan 7 2009, 12:54
Сообщение #8


Частый гость
**

Группа: Участник
Сообщений: 107
Регистрация: 1-07-07
Пользователь №: 28 823



полезная книжка - Бурдаева О.В. Иванов М.А. Тетерин И.И. "Ассемблер в задачах защиты информации".
Go to the top of the page
 
+Quote Post
Rst7
сообщение Jan 7 2009, 16:55
Сообщение #9


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



Цитата
необходимо Вам задать это время - час? месяц? год? - а потом выбирать алгоритм.


Вы много знаете алгоритмов шифрования с открытым ключем и более-менее обозримыми вычислениями? А ведь именно такая задача у топикстартера. Имеет смысл рассмотреть вопрос длинны ключа.

Цитата
Сильно сомневаюсь, что в Тиню влезет многознаковая арифметика


Спокойно smile.gif Во-первых, кода там как раз немного, намного больше требуется ОЗУ.

Во-вторых, надо взять ATMega48 вместо Tiny2313 - дешевле, размер на плате даже меньше, ресурсов больше.

В-третьих, требуется произвести только 2 операции для шифрования - возведение в степень (причем, для быстродействия имеет смысл взять e=3, т.е. будет 3 умножения) и собственно остаток от деления.

Теперь посмотрим, что мы имеем по ОЗУ. Если длинна ключа n-бит, и e=3, то после возведения в степень e имеем размер буфера 3n. Для умножения вроде бы дополнительных буферов не нужно, все можно выполнить по месту. Ключ можно брать прямо по месту, на него озу тратить не надо. Кроме того, нас не интересует результат деления, а только остаток. Значит, результат у нас получится прямо в буфере после возведения в степень. Т.е. при ключе 1024 бита (128 байт) необходим буфер ОЗУ размером 128*3=384 байта. ATMega48 имеет 512 байт ОЗУ супротив 128 у Tiny2313, так что как раз войдет smile.gif

Вообщем, я вроде не вижу проблем в реализации шифрования RSA с ключем длинной 1024 бита на мелком AVR.


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
Mig&L
сообщение Jan 7 2009, 17:00
Сообщение #10


Частый гость
**

Группа: Участник
Сообщений: 107
Регистрация: 1-07-07
Пользователь №: 28 823



требование алгоритма с открытым ключем неочевидно при постановке вопроса "стартпостером"
Go to the top of the page
 
+Quote Post
Rst7
сообщение Jan 7 2009, 17:18
Сообщение #11


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



Цитата
требование алгоритма с открытым ключем неочевидно при постановке вопроса "стартпостером"


А это что?

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


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
Mig&L
сообщение Jan 7 2009, 19:21
Сообщение #12


Частый гость
**

Группа: Участник
Сообщений: 107
Регистрация: 1-07-07
Пользователь №: 28 823



Цитата(Rst7 @ Jan 7 2009, 20:18) *
А это что?

Это и непонятно. Есть доступ к ключу - и только?
Go to the top of the page
 
+Quote Post
Rst7
сообщение Jan 7 2009, 19:50
Сообщение #13


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



Цитата(Mig&L @ Jan 7 2009, 21:21) *
Это и непонятно. Есть доступ к ключу - и только?

Вам пофлудить охота? Русским языком топикстартером написано, что требуется шифрование с открытым ключем. Асимметричность - это тоже один из признаков такого шифрования. Где неясность?


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
Mig&L
сообщение Jan 7 2009, 20:09
Сообщение #14


Частый гость
**

Группа: Участник
Сообщений: 107
Регистрация: 1-07-07
Пользователь №: 28 823



Цитата(Rst7 @ Jan 7 2009, 22:50) *
Вам пофлудить охота? Русским языком топикстартером написано, что требуется шифрование с открытым ключем. Асимметричность - это тоже один из признаков такого шифрования. Где неясность?

Что за тон? Чему обязан?
Go to the top of the page
 
+Quote Post
Rst7
сообщение Jan 7 2009, 20:43
Сообщение #15


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



Цитата(Mig&L @ Jan 7 2009, 22:09) *
Что за тон? Чему обязан?

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


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post

3 страниц V   1 2 3 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 19th July 2025 - 09:36
Рейтинг@Mail.ru


Страница сгенерированна за 0.01481 секунд с 7
ELECTRONIX ©2004-2016