Преобразование строки в двоичные биты - PullRequest
0 голосов
/ 14 февраля 2019

Как преобразовать строку, например,

"В бесконечность и дальше!"

в поток двоичных цифр?Я хочу реализовать шифрование DES в Python.Но этот тип шифрования требует размера открытого текста 64 бит.Несмотря на длину битов, как мне на самом деле преобразовать ее в поток битов для шифрования?

Кроме того, преобразование в биты должно быть таким, чтобы после шифрования дешифрование также можно было выполнять эффективно (путем преобразования битов).даже '' в строке).

Я хотел бы знать, как это вообще можно сделать.

'{0: b}'. format ("") не будет работать.

Так как мне это сделать?

Ответы [ 2 ]

0 голосов
/ 14 февраля 2019

python 2.7

Вы можете сделать это так:

s = "To Infinity and Beyond!"  # s for string
s = ' '.join(format(ord(x.decode('utf-8')), 'b') for x in s)
print str(s)
0 голосов
/ 14 февраля 2019

Это самый питонский способ, которым я могу воспользоваться:

>>> string = "hello"
>>> [bin(i) for i in bytearray(string, 'utf8')]
['0b1101000', '0b1100101', '0b1101100', '0b1101100', '0b1101111']
...