【问题标题】:VB Xor - double-encryptionVB Xor - 双重加密
【发布时间】:2014-05-27 17:25:31
【问题描述】:

我正在使用 VB6 进行编码,但如果有帮助,我可以为 VB.net 重写它。

我正在使用 XOR 做一些基本的加密:printa = printa + Chr((q Xor chCode))

我正在将结果转换回字符。当我双重加密时问题就来了。我认为当 XOR 运算导致 0 时出现问题。因此,Chr(0) = 空字符。 PS:chCode 可以是 1 到 254 之间的任何值。此外,当我双重加密时,源文本通常超出可打印字符的范围。

任何帮助将不胜感激。如果需要,我会尝试提供更多信息。谢谢

【问题讨论】:

标签: vb.net encryption vb6 xor


【解决方案1】:

如您所说,加密是一种适用于消息所有位的操作,其结果不再位于可打印区域内。

在 VB 内部处理这样的字符串并没有固有的问题,因为它将字符串长度存储在字符串的开头,而不是像在 C 中那样使用空终止。

如果您需要的话,您应该查看对您的加密消息进行 base64 编码以返回可打印范围。这样做基本上是使用 4 个字节来表示每个 3 个字节中的 6 个位。

【讨论】:

    猜你喜欢
    • 2022-09-22
    • 1970-01-01
    • 2014-10-11
    • 1970-01-01
    • 2017-12-18
    • 2019-03-11
    • 2014-08-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多