装配中的XOR加密,传输问题

时间:2012-11-22 21:21:41

标签: assembly ascii xor

所以我在两台不同的计算机之间传输XOR加密但是我遇到了一个很大的问题,当它传输一个ASCII低于30的字符时,它就无法传输,因为这些字符在流量控制之下。我已经尝试过将这些字符加上30来试图避免这种情况但仍然失败。

基本上,当发送低于ASCII 30的字符时,传输完全停止。

代码非常简单,如下所示 -

    mov al, character
    xor al, password
    mov character, al

基本上,变量字符和密码的特定组合会导致此问题。

1 个答案:

答案 0 :(得分:0)

32以下的字符通常用作控制代码,不会透明传输。我想你不使用8位透明通道。

我建议使用像TCP这样的8位透明通道进行传输。只是TYPEing不起作用。如果这不是一个选项,请使用base-64编码,它将3个字节映射为4个可打印且低于128的字符。当然,任何其他编码也可以。

BTW:你的“加密”是一个非常弱的无法存在的点。考虑使用一种易于理解的算法,如AES或任何其他算法。有很好的快速库。