TCL des: вернуть зашифрованную фразу в стандартных символах ascii
Я использую DES в TCL для шифрования некоторых фраз и хочу сохранить эти зашифрованные фразы в некоторых файлах ascii, которыми мне нужно легко манипулировать. Поэтому я бы хотел, чтобы "зашифрованная фраза" состояла только из стандартных символов ascii (предпочтительно без пробелов).
Я использую что-то вроде этого, чтобы расшифровать:
set encrypted [ DES:des -dir encrypt -key "abcdefgh" "This_phrase" ]
Я хотел бы, чтобы "зашифрованный" был стандартным кодом ASCII, а не тем, что, как бывает, может даже затормозить мой терминал, если он отображается.
Большое спасибо. Leandro.
1 ответ
Вы можете либо заменить все символы, которые могут иметь особое значение (все, кроме a-zA-Z0-9 и т. Д.), Либо закодировать его, например, base64.
set encrypted [base64::encode -wrapchar {} [DES:des -dir encrypt -key abcdefgh "This_phrase"]]
Вам нужно удалить дополнительный слой (base64, escape-кодирование последовательности или все, что вы использовали для преобразования двоичных данных в ascii), если вы хотите декодировать его.