我在 TCL 中使用 DES 来加密一些短语,我想将这些加密的短语存储在一些我需要轻松操作的 ascii 文件中。因此,我希望“加密短语”仅由标准 ascii 字符组成(最好没有空格)。
我正在使用类似的东西来加密:
set encrypted [ DES:des -dir encrypt -key "abcdefgh" "This_phrase" ]
我希望“加密”成为标准的 ascii 代码,而不是, 碰巧的是,如果显示的话甚至可能会中断我的终端。
非常感谢。 莱安德罗。
最佳答案
您可以替换所有可能具有特殊含义的字符(除 a-zA-Z0-9 等之外的所有字符)或使用例如Base64。
set encrypted [base64::encode -wrapchar {} [DES:des -dir encrypt -key abcdefgh "This_phrase"]]
如果您想对其进行解码,则需要剥离额外的层(base64、转义序列编码或用于将二进制数据转换为 ascii 的任何内容)。
关于encryption - TCL 代码 : Return encrypted phrase in standard ascii characters,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13919099/