Генерация случайной строки на основе некоторого шестнадцатеричного кода

У меня есть контрольная сумма md5 в python; вроде s = '14966ba801aed57c2771c7487c7b194a'.

Я хочу сократить его и сделать его строкой в ​​форме 'a -zA -Z0 -9 _. -', без потери энтропии моей случайной контрольной суммы md5.

Вывод должен быть произносимым, поэтому я не могу просто так binascii.unhexlify(s). Я также не могу base64.encodestring(s)разрезать его, потому что тогда я потеряю энтропию.

Есть идеи, как решить эту проблему, не отображая безумное число (256 )шестнадцатеричной пары (00 ->FF )на разные буквы?

Причина, по которой я хочу этого, состоит в том, чтобы иметь возможность произнести всю контрольную сумму md5 по телефону, но использовать весь алфавит + цифры + некоторые специальные символы.

0
задан xeor 30 April 2012 в 11:07
поделиться