Lee писал(а):добрый день, туплю жестко, прошу пнуть к верном направлении
взял для пробы код для c# из поста EPA
[PHP]
public static UInt32 Keeloq_Decrypt(UInt64 mail, UInt64 key)
{
UInt64 x = mail;
int r;
for (r = 0; r < 528; r++)
{
x = (x << 1) ^ bit(x, 31) ^ bit(x, 15) ^ bit(key, (15 - r) & 63) ^ bit(KeeLoq_NLF, (int)g5(x, 0, 8, 19, 25, 30));
}
return (UInt32)x;
}
[/PHP]
происходит переполнение переменной x
изменяя тип на uint64, получаю:
mail:0x87318DCCE381BD59
man: 0x8400000000941223
Decrypt: 0x9593FCD83B05E40F
Encrypt: 0xC33F601E
понимаю что так не должно быть, но не могу понять из за чего
Доброго Вам дня, что именно Вас не устраивает?