Dim
ну значит ищи ошибку в вычислениях
hash_login1= calc_md5_crc32.crc32calc(md5_data)
Dim
представлен в виде числа
Dim
нужно отправить его в порт в виде 4х байт
Dim
.
вычисляется правильно: 0xaeee73ed
Anonymous
Ну так в чем проблема?
Dim
a=SER.send(hash_login1)
Dim
30 78 61 65 65 65 37 33 65 64 0xaeee73ed
Anonymous
ииии в чем проблема?
Dim
AE EE 73 ED
Anonymous
Anonymous
может тебе big endian нужен
Dim
row byte нужен
Anonymous
что
Anonymous
кароч
Dim
что
как преобразовать int в byte?
Dim
в данном случае в 4 байт
Dim
что бы отправить их в порт
Anonymous
>>> hex(n) '0xaeee73ed' >>> b = bytearray(4) >>> b[3] = n & 0xff; >>> n >>= 8 >>> b[2] = n & 0xff >>> n >>= 8 >>> b[1] = n & 0xff >>> n >>= 8 >>> b[0] = n & 0xff >>> >>> b bytearray(b'\xae\xees\xed') >>>
Anonymous
в big endian
Anonymous
>>> struct.pack("!I", n) b'\xae\xees\xed' >>> ! - net order I - unsigned int
Dim
а вместо n можно подставить переменную?
Anonymous
очевидно да
Anonymous
Dim
очевидно да
не получается с переменной - ошибка
Dim
числа - жрет, а переменную не хочет
Anonymous
код
Dim
md5_data= calc_md5_crc32.md5calc(login1) hash_login1= calc_md5_crc32.crc32calc(md5_data) print hash_login1 a=SER.send(hash_login1) import struct q=struct.pack("!I", hash_login1) a=SER.send(q)
Anonymous
значит hash_login1: 1) Не число 2) Больше 2^32
Anonymous
одно из двух
Anonymous
а еще импорты наверх пихай, в самое начало
Dim
щас попробую
Dim
все равно не получается
Anonymous
что за ошибка то?
Dim
error: required argument is not an integer
Anonymous
hash_login1 не число, написано же
Dim
hash_login1 не число, написано же
бля, как оно не число, если это результат рассчета CRC32!
Ilya
Наверняка это байтовая строка
Dim
def crc32calc(s): return hex(zlib.crc32(s) & 0xffffffff)
Anonymous
а hex то зачем всунул
Anonymous
убери нахyй
Dim
да хекс
Dim
щас без него проверю
Dim
AE EE 73 ED ®îsí
Dim
ЕСТЬ!
Dim
спасибо
Dim
админ помоги решить вопрос с тестом AES128, надо успеть за сегодняшний день !
Dim
https://github.com/Skycker/AES
Dim
может я за зря мудохаюсь?
Dim
может эта приблуда не потянет по скорости!
Dim
бенчмарк?
не понял
Anonymous
>тест >скорость
Anonymous
просто могу тебе разве что timeit посоветовать
Dim
>тест >скорость
скорость - вначале скорость!
Dim
потом все остальное
Anonymous
не совсем
Dim
на моем питоне она не запускается
Dim
поэтому я не могу скомпилить из нее скрипт
Dim
поэтому не могу загрузить скрипт в железо
Anonymous
https://github.com/Skycker/AES
тебе с бенчмарком вот этой либы чтоль помочь?
Dim
с учетом моего древнего 1.5.2 вин питона
Anonymous
ну ща с дебом закончу и посмотрю что там
Dim
спасибо
Dim
буду ждать
Dim
еще такой момент
Dim
админ дал мне пример перевода числа (int) в символьную строку, удобоваримую для загрузки в порт
Dim
хотелось бы увидеть обратный пример - перевод символьной строки в массив чисел, для удобоворимости вычислительных работ, и наоборот перевод такого числового массива в байтный (символьный массив)
Anonymous
хотелось бы увидеть обратный пример - перевод символьной строки в массив чисел, для удобоворимости вычислительных работ, и наоборот перевод такого числового массива в байтный (символьный массив)
v1: >>> import struct >>> struct.pack("!I", 0xaeee73ed) b'\xae\xees\xed' >>> b = b'\xae\xees\xed' >>> struct.unpack("!I", b) (2934862829,) v2: >>> n = b[0] >>> n <<= 8 >>> n |= b[1] >>> n <<= 8 >>> n |= b[2] >>> n <<= 8 >>> n |= b[3] >>> n 2934862829 >>>
Dim
print hex(ord(hash_login1[0])+0) как вариант
Anonymous
что
Anonymous
kvxmmu@debian:/tmp/AES$ python3 test.py Testing AES-128 lib with b'dAtAbAsE9suck431' message and dAtAbAsE98765432 key... Encrypt time with 10000 iterations: 2.64217827199991 Decrypt time with 10000 iterations: 6.044143660999907
Anonymous
@Dimka_8383
Anonymous
Tested on: Ryzen 5 2600 3.4GHz, 3200MHz mem, python3.8.3