Dim
представлен в виде числа
Dim
нужно отправить его в порт в виде 4х байт
Anonymous
Dim
.
вычисляется правильно: 0xaeee73ed
Anonymous
Ну так в чем проблема?
Dim
a=SER.send(hash_login1)
Dim
30 78 61 65 65 65 37 33 65 64 0xaeee73ed
Anonymous
ииии в чем проблема?
Dim
Dim
AE EE 73 ED
Anonymous
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
Anonymous
Anonymous
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 не число, написано же
Ilya
Наверняка это байтовая строка
Anonymous
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
может эта приблуда не потянет по скорости!
Anonymous
Dim
Anonymous
>тест
>скорость
Anonymous
просто могу тебе разве что timeit посоветовать
Dim
потом все остальное
Anonymous
не совсем
Dim
на моем питоне она не запускается
Dim
поэтому я не могу скомпилить из нее скрипт
Dim
поэтому не могу загрузить скрипт в железо
Dim
Dim
с учетом моего древнего 1.5.2 вин питона
Anonymous
ну ща с дебом закончу и посмотрю что там
Dim
спасибо
Dim
буду ждать
Dim
еще такой момент
Dim
админ дал мне пример перевода числа (int) в символьную строку, удобоваримую для загрузки в порт
Dim
хотелось бы увидеть обратный пример - перевод символьной строки в массив чисел, для удобоворимости вычислительных работ, и наоборот перевод такого числового массива в байтный (символьный массив)
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