Преобразовать закодированные Base64 байты в Int - PullRequest
0 голосов
/ 12 апреля 2020

Итак, в основном я генерирую 16 случайных байтов и затем преобразую их в Base64. Мне нужно преобразовать этот Base64 в Int. Я искал по всему inte rnet, я узнал, как конвертировать в гекс, и многие другие, но, похоже, ни один не работает. Вот код, который я использую для генерации одноразового номера:

import base64
nonce = base64.encodebytes(os.urandom(16))

Мне нужна функция, похожая на parseInt () в JavaScript. Результат должен быть между -9223372036854775808 и 9223372036854775807.

1 Ответ

1 голос
/ 12 апреля 2020

Существует встроенный метод для преобразования байтов в int:

int.from_bytes(nonce, "big")  # big endian
int.from_bytes(nonce, "little")  # little endian

Python документы: https://docs.python.org/3/library/stdtypes.html#int .from_bytes

...