2

我在 TCL 中使用 DES 来加密一些短语,我想将这些加密的短语存储在一些我需要轻松操作的 ascii 文件中。因此,我希望“加密短语”仅由标准 ascii 字符组成(最好没有空格)。

我正在使用这样的东西来加密:

set encrypted [ DES:des -dir encrypt -key "abcdefgh" "This_phrase" ]

我希望“加密”成为标准的 ascii 代码,而不是如果显示的话,甚至可能会破坏我的终端。

非常感谢你。莱安德罗。

4

1 回答 1

5

您可以替换所有可能具有特殊含义的字符(除 a-zA-Z0-9 等之外的所有字符)或使用例如 base64 对其进行编码。

set encrypted [base64::encode -wrapchar {} [DES:des -dir encrypt -key abcdefgh "This_phrase"]]

如果要对其进行解码,则需要剥离额外的层(base64、转义序列编码或用于将二进制数据转换为 ascii 的任何内容)。

于 2012-12-17T17:57:11.600 回答