Считывает base64 4 символа за раз, поскольку 4 символа base64 становятся 3 байтами:
'Ba7+', 'Kj3N'
Расшифровывают каждый символ base64.Я только что посмотрел на Википедия :
[1, 26, 59, 62], [10, 35, 55, 13]
Сдвиньте числа в каждой группе влево на 18, 12, 6 и 0 соответственно:
>>> def pack(a, b, c, d): return hex((a << 18) + (b << 12) + (c << 6) + d)
>>> pack(1, 26, 59, 62)
'0x5aefe'
>>> pack(10, 35, 55, 13)
'0x2a3dcd'
Затем, если вы хотите конвертировать в гекс самостоятельно, сдвиньте их вправо на 4, 8, ... 24, 28, чтобы отделить каждый клочок и преобразовать в цифру от 0 до f.