Фрикер Клуб
 

Вернуться   Фрикер Клуб > Основной раздел > Статьи

Важная информация

Ответ
 
Опции темы Опции просмотра
Старый 21.08.2020, 12:25   #201
Бурый
Резидент клуба
 
Аватар для Бурый
 
Регистрация: 05.01.2014
Сообщений: 500
По умолчанию Re: Формат пакета KEELOQ

Цитата:
Сообщение от Lee
добрый день, туплю жестко, прошу пнуть к верном направлении
взял для пробы код для c# из поста EPA
PHP код:
public static UInt32 Keeloq_Decrypt(UInt64 mailUInt64 key)
 {
 
UInt64 x mail;
 
int r;
 for (
0528r++)
 {
 
= (<< 1) ^ bit(x31) ^ bit(x15) ^ bit(key, (15 r) & 63) ^ bit(KeeLoq_NLF, (int)g5(x08192530));
 }
 return (
UInt32)x
 } 
происходит переполнение переменной x
изменяя тип на uint64, получаю:

mail:0x87318DCCE381BD59
man: 0x8400000000941223
Decrypt: 0x9593FCD83B05E40F
Encrypt: 0xC33F601E

понимаю что так не должно быть, но не могу понять из за чего


Доброго Вам дня, что именно Вас не устраивает?
__________________
Планировалось сделать "устройство"...и снова получились часы. Бой курантов тревожит двор)
Бурый вне форума   Ответить с цитированием
Старый 21.08.2020, 12:48   #202
Lee
Гость клуба
 
Регистрация: 22.10.2015
Сообщений: 2
По умолчанию Re: Формат пакета KEELOQ

результат, или я что то не так понял
в расшифровку я отправляю только закрытую часть ключа
mail:0xC058FD54
man: 0x123456789012345
Decrypt: 0x429DA014BE965C80
а по итогу переполнение
я отправляю 32 бита и должен получить обратно 32 или я что то не так понял?
Lee вне форума   Ответить с цитированием
Старый 17.09.2020, 14:26   #203
igorok107
Гость клуба
 
Регистрация: 28.08.2012
Сообщений: 1
По умолчанию Re: Формат пакета KEELOQ

Цитата:
Сообщение от Lee
PHP код:
= (<< 1) ^ bit(x31) ^ bit(x15) ^ bit(key, (15 r) & 63) ^ bit(KeeLoq_NLF, (int)g5(x08192530)); 

Попробуй так:
PHP код:
= ((<< 1) & 0xFFFFFFFF) ^ bit(x31) ^ bit(x15) ^ bit(key, (15 r) & 63) ^ bit(KeeLoq_NLF, (int)g5(x08192530)); 
igorok107 вне форума   Ответить с цитированием
Старый 11.10.2020, 22:59   #204
7-clown
Вступил в клуб
 
Аватар для 7-clown
 
Регистрация: 10.05.2012
Сообщений: 45
По умолчанию Re: Формат пакета KEELOQ

Цитата:
Сообщение от igorok107
Попробуй так:
PHP код:
= ((<< 1) & 0xFFFFFFFF) ^ bit(x31) ^ bit(x15) ^ bit(key, (15 r) & 63) ^ bit(KeeLoq_NLF, (int)g5(x08192530)); 

особо не вникал, но мне кажется дело в том что пытаешься в декрипт загнать 64 бита? шифрованная часть только половина посылки -32 бита...в декрипте только эту часть, насколько я помню, нужно прогонять
__________________
si vis pacem, para bellum
7-clown вне форума   Ответить с цитированием
Ответ
Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.



Текущее время: 13:24. Часовой пояс GMT +3.


vBulletin 4.1.0 Перевод: zCarot
(C) www.phreakerclub.com