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

 
 
> Полином для вычисления обратной CRC, Из CRC получить исходный код
ViKo
сообщение Mar 16 2015, 09:08
Сообщение #1


Универсальный солдатик
******

Группа: Модераторы
Сообщений: 8 634
Регистрация: 1-11-05
Из: Минск
Пользователь №: 10 362



Имею идею шифровать код прошивки с помощью CRC. Конкретно, декодировать его с помощью встроенной в STM32F2xx CRC-32 с полиномом:
X32 + X26 + X23 + X22 + X16 + X12 + X11 + X10 +X8 + X7 + X5 + X4 + X2+ X +1
То есть, каждое исходное слово заменяется CRC, вычисленной с его участием, следующее слово заменяется следующей CRC.
Вопрос, как закодировать, чтобы после декодирования получить исходный код? Каким полиномом? Думаю, перекрутить 32 в 1, и т. п.
Пока читаю пару статей о CRC, может, кто-то уже знает точный ответ?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
ViKo
сообщение Mar 17 2015, 10:51
Сообщение #2


Универсальный солдатик
******

Группа: Модераторы
Сообщений: 8 634
Регистрация: 1-11-05
Из: Минск
Пользователь №: 10 362



Если вы не дополните число нулями, вы не сделаете всех делений, согласно правилам полиномиального деления, я так понимаю.
Видимо, то, что вы делили не до конца, и дает совпадающие остатки. В то время, как полное деление дает гарантию, что CRC для разных данных, размером не более самой CRC, будут разными. Впрочем, мне это уже не нужно. Вижу, что идея шифровать-дешифровать с помощью CRC не стоит выделки.
Пойду размышлять над блочными кодами. rolleyes.gif
Go to the top of the page
 
+Quote Post
SM
сообщение Mar 17 2015, 10:54
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 7 946
Регистрация: 25-02-05
Из: Moscow, Russia
Пользователь №: 2 881



Цитата(ViKo @ Mar 17 2015, 13:51) *
Если вы не дополните число нулями, вы не сделаете всех делений, согласно правилам полиномиального деления, я так понимаю.

Вот как раз и я, и Вы делили согласно правилам полиномиального деления. Но я вычислял D(x) mod G(x), о чем честно и говорил. А Вы - (D(x)*x^4) mod G(x).
И поэтому у меня проверка показывала, что я делю правильно, получая в итоге проверки 0x30, а у Вас проверка показывала глюк - 0x300 - и, как оказалось, лишь потому, что Вы скрыли домножение на x^4.

Над блочными кодами не стоит долго размышлять. Берите XTEA - проще нету при приемлемой криптостойкости.
Go to the top of the page
 
+Quote Post
Dr.Alex
сообщение Mar 17 2015, 14:52
Сообщение #4


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

Группа: Свой
Сообщений: 1 386
Регистрация: 5-04-05
Из: моська, RF
Пользователь №: 3 863



Конечно не было возможности всё прочитать, может уже предлагали, но если хочется задействовать встроенный ЦРЦ для шифрования, то делать нужно не так.
Его нужно просто использовать как генератор ПСП, и тупо ксорить данные с этим ПСП.
А вообще, если уж на то пошло, так в STM и AES тоже встроенный..
Go to the top of the page
 
+Quote Post
ViKo
сообщение Mar 18 2015, 09:40
Сообщение #5


Универсальный солдатик
******

Группа: Модераторы
Сообщений: 8 634
Регистрация: 1-11-05
Из: Минск
Пользователь №: 10 362



Цитата(Dr.Alex @ Mar 17 2015, 17:52) *
Его нужно просто использовать как генератор ПСП, и тупо ксорить данные с этим ПСП.

Да, спасибо, годный метод. Особенно, если еще перемешать биты этой ПСП, чтобы взломщик не догадался. А то криптостойкость будет на уровне постоянного слова для xor.

Для чего дополняем нулями данные при делении на полином для вычисления CRC. Мы получаем остаток от деления, который потом запишем на место этих нулей. И при проверке - делении данных вместе с CRC (опять дополняем нулями, чтобы каждый битик поучаствовал в делении) получим остаток 0.
Go to the top of the page
 
+Quote Post
Dr.Alex
сообщение Mar 18 2015, 10:40
Сообщение #6


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

Группа: Свой
Сообщений: 1 386
Регистрация: 5-04-05
Из: моська, RF
Пользователь №: 3 863



Цитата(ViKo @ Mar 18 2015, 12:40) *
А то криптостойкость будет на уровне постоянного слова для xor.

С каких щей? "Ключом" к этому "шифру" может быть первое 32-бит слово, скормленное ЦРЦатору, а также то, что вы будете делать на следующей итерации: то ли просто подавать на ЦРЦатор результат первой итерации, то ли его предварительно ксорить с ещё каким-то "ключом".
А если вы будете "перемешивать биты", то вся эта идея коту под хвост, потому что перемешивание битов ресурсоёмко.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- ViKo   Полином для вычисления обратной CRC   Mar 16 2015, 09:08
- - SM   Математически точный ответ я дать могу - для того,...   Mar 16 2015, 11:05
|- - demiurg_spb   Извините, не понял сути сначала. По сути ИМХО это ...   Mar 16 2015, 11:22
- - yes   может я что-то непонимаю - но не уверен, обратима...   Mar 16 2015, 12:32
- - ViKo   Пытаюсь понять на простом примере. Вот в этом каль...   Mar 16 2015, 13:12
|- - SM   Цитата(ViKo @ Mar 16 2015, 16:12) Обратим...   Mar 16 2015, 14:19
|- - ViKo   Цитата(SM @ Mar 16 2015, 17:19) То, что о...   Mar 16 2015, 14:21
|- - SM   Цитата(ViKo @ Mar 16 2015, 17:21) Это зав...   Mar 16 2015, 14:24
|- - ViKo   Цитата(SM @ Mar 16 2015, 17:24) Тогда пер...   Mar 16 2015, 14:31
|- - SM   Цитата(ViKo @ Mar 16 2015, 17:31) Без ини...   Mar 16 2015, 14:39
- - ViKo   А мне интуиция говорит, что, поскольку я имею те ж...   Mar 16 2015, 14:47
|- - SM   Цитата(ViKo @ Mar 16 2015, 17:47) А мне и...   Mar 16 2015, 15:25
|- - ViKo   Цитата(SM @ Mar 16 2015, 18:14) Каждое по...   Mar 16 2015, 15:28
|- - SM   Цитата(ViKo @ Mar 16 2015, 18:28) Надо от...   Mar 16 2015, 15:37
|- - ViKo   Цитата(SM @ Mar 16 2015, 18:37) CRC то не...   Mar 16 2015, 15:50
|- - SM   Цитата(ViKo @ Mar 16 2015, 18:50) Избавля...   Mar 16 2015, 15:54
- - ViKo   Наверное, и с алгебраическим умножением и ограниче...   Mar 16 2015, 16:11
|- - SM   Цитата(ViKo @ Mar 16 2015, 19:11) Наверно...   Mar 16 2015, 16:29
|- - AHTOXA   Так ему однозначность нужна в другую сторону. Чтоб...   Mar 16 2015, 16:51
|- - SM   Цитата(AHTOXA @ Mar 16 2015, 19:51) Так е...   Mar 16 2015, 17:00
|- - AHTOXA   Цитата(SM @ Mar 16 2015, 22:00) Так а как...   Mar 16 2015, 18:58
|- - ViKo   Цитата(AHTOXA @ Mar 16 2015, 21:58) Наско...   Mar 16 2015, 19:08
|- - SM   Цитата(ViKo @ Mar 16 2015, 22:08) Это уже...   Mar 16 2015, 19:23
- - ViKo   В CRC-4 полином 5-битовый, а числа и остаток 4-бит...   Mar 16 2015, 17:19
|- - SM   Цитата(ViKo @ Mar 16 2015, 20:19) В CRC-4...   Mar 16 2015, 17:21
|- - ViKo   Цитата(SM @ Mar 16 2015, 20:21) Вот поэто...   Mar 16 2015, 18:07
|- - SM   Цитата(ViKo @ Mar 16 2015, 21:02) Не согл...   Mar 16 2015, 18:11
|- - ViKo   Цитата(SM @ Mar 16 2015, 21:11) Нельзя бы...   Mar 16 2015, 18:16
|- - SM   Цитата(ViKo @ Mar 16 2015, 21:16) и, зная...   Mar 16 2015, 18:26
- - krux   я таки-извиняюсь, но предположу, что топикстартеру...   Mar 16 2015, 17:32
|- - SM   Цитата(krux @ Mar 16 2015, 20:32) я таки-...   Mar 16 2015, 17:36
- - krux   я опять-таки извиняюсь, но топикстартер в курсе пр...   Mar 16 2015, 17:51
- - ViKo   Давайте возьмем примитивнейший пример. CRC-8 равна...   Mar 16 2015, 18:48
|- - SM   Цитата(ViKo @ Mar 16 2015, 21:46) Очевидн...   Mar 16 2015, 19:04
- - ViKo   Полином CRC известен, он не от балды берется. x^4 ...   Mar 16 2015, 19:33
|- - SM   Цитата(ViKo @ Mar 16 2015, 22:33) Полином...   Mar 16 2015, 20:25
- - ViKo   Могу только повторить - 0x30...0x3F не укладываютс...   Mar 16 2015, 20:58
|- - SM   Цитата(ViKo @ Mar 16 2015, 23:58) Могу то...   Mar 16 2015, 21:43
|- - ViKo   Цитата(SM @ Mar 17 2015, 00:43) Любая мет...   Mar 16 2015, 21:52
|- - SM   Цитата(ViKo @ Mar 17 2015, 00:52) Мы гово...   Mar 16 2015, 21:54
|- - ViKo   Цитата(SM @ Mar 17 2015, 00:54) Да, в GF(...   Mar 16 2015, 22:02
|- - SM   Цитата(ViKo @ Mar 17 2015, 01:02) А вы ум...   Mar 17 2015, 05:23
- - ViKo   А вы замените умножение последовательными сложения...   Mar 17 2015, 05:57
|- - SM   Цитата(ViKo @ Mar 17 2015, 08:57) А вы за...   Mar 17 2015, 05:59
- - ViKo   http://depa.usst.edu.cn/chenjq/www2/softwa...calcu...   Mar 17 2015, 06:22
- - SM   А на заборе еще что-то написано. Мы сейчас обсужда...   Mar 17 2015, 06:30
|- - ViKo   Цитата(SM @ Mar 17 2015, 09:30) А на забо...   Mar 17 2015, 06:38
|- - SM   Цитата(ViKo @ Mar 17 2015, 09:38) Может, ...   Mar 17 2015, 06:41
|- - ViKo   Цитата(SM @ Mar 17 2015, 09:41) Нет. Мои ...   Mar 17 2015, 06:49
|- - SM   Цитата(ViKo @ Mar 17 2015, 09:49) что я п...   Mar 17 2015, 06:59
- - ViKo   Подождем... Я же показал частное и остаток. Програ...   Mar 17 2015, 07:06
|- - SM   Цитата(ViKo @ Mar 17 2015, 10:06) Я же по...   Mar 17 2015, 07:24
- - MrYuran   Не совсем понял, о чем идет речь, но для CRC (и во...   Mar 17 2015, 08:04
|- - ViKo   Цитата(MrYuran @ Mar 17 2015, 11:04) Не с...   Mar 17 2015, 09:30
|- - SM   Цитата(ViKo @ Mar 17 2015, 12:30) SM, вы ...   Mar 17 2015, 09:34
- - Timmy   Цитата(ViKo @ Mar 16 2015, 12:08) То есть...   Mar 17 2015, 08:35
- - ViKo   SM, я вижу, упорствование - ваш конек. Разберитесь...   Mar 17 2015, 09:37
|- - SM   Цитата(ViKo @ Mar 17 2015, 12:37) SM, я в...   Mar 17 2015, 09:42
- - ViKo   Ладно, делим. Получим для CRC-4 из 0x30 частное и ...   Mar 17 2015, 09:52
- - SM   Так ясно, откуда у Вас ошибка. Приписывание четыре...   Mar 17 2015, 10:00
- - ViKo   Приписывание нулей - чтобы было из чего остаток на...   Mar 17 2015, 10:03
|- - SM   Цитата(ViKo @ Mar 17 2015, 13:03) Приписы...   Mar 17 2015, 10:33
- - ViKo   Цитата(Dr.Alex @ Mar 18 2015, 13:40) С ка...   Mar 18 2015, 11:08
- - Dr.Alex   Ну тогда 2-3-4 первых слова :-)))))))   Mar 18 2015, 11:27


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

 


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


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