异或加密解密最简单的取屏幕差异模块汇编版

易语言 2020-04-04 16:15:13

异或加密解密最简单的取屏幕差异模块汇编版

' 如果用来做屏幕差异传输,A就相当于上一次快照(),B就是本次快照()
' 将异或后的数据传递给接收端,接收端再将数据与上次画板显示的数据异或,就得到了本次的快照
' 因为异或会将前后两次快照字节集相同的位置0,所以压缩数据后会很小,传输速度大大提升

' *“加密前:” | 字节集:8{1,1,1,1,1,1,1,1}
' * “加密后:” | 字节集:8{0,0,3,0,0,2,0,0}
' * “解密后:” | 字节集:8{1,1,1,1,1,1,1,1}
' * “快照原本数据长度” | 6220854 | “MD5:” | “88e32fd074e7d9972126c364f6877600”
' * “直接传输数据长度” | 151754
' * “取屏幕差异后传输:” | 6071
' * “还原后:” | 6220854 | “MD5:” | “88e32fd074e7d9972126c364f6877600”

' 相当于只传输了6kb不到的数据就能得到原本6Mb的新快照,实际使用时可能前后两次截屏间隔时间长,差异大数据会大一些,但是也优势明显