1700416800
代码清单10.1 用给字符编码加3的方法加密
1700416801
1700416802
plaintext=InputBox(“请输入明文”)
1700416803
1700416804
ciper=””
1700416805
1700416806
For i=1 To Len(plaintext)
1700416807
1700416808
letter=Mid(plaintext,i,1)
1700416809
1700416810
cipher=cipher&Chr(Asc(letter)+3)
1700416811
1700416812
Next
1700416813
1700416814
MsgBox cipher
1700416815
1700416816
在这个程序中,使用了如下加密方法:将文本数据中每个字符所对应的字符编码一律向后错3个,即给原字符编码的值加上3。把这段程序以.vbs为扩展名保存,双击运行这段程序。试着在最初弹出的窗口中输入要加密的文本数据(明文),例如输入NIKKEI,单击OK按钮,在接下来弹出的窗口中会显示出加密后的文本数据(密文)。因为每个字符的编码都向后错了三个,所以得到的是QLNNHL。这样的话,即便是被人偷偷地看到了,也无法理解这个字符串的意义(如图10.1所示)
1700416817
1700416818
图10.1 代码清单10.1的执行结果
1700416819
1700416820
1700416821
1700416822
1700416823
因为加密时使用的是将字符编码向后错三个的方法,所以只要再将字符编码向前挪三个就可以实现解密。代码清单10.2中就是解密程序
1700416824
1700416825
代码清单10.2 用把字符编码减3的方法解密
1700416826
1700416827
cipher=InputBox(“请输入密文”)
1700416828
1700416829
plaintext=””
1700416830
1700416831
For i=1 To Len(cipher)
1700416832
1700416833
letter=Mid(cipher,i,1)
1700416834
1700416835
plaintext=plaintext&Chr(Asc(letter)-3)
1700416836
1700416837
Next
1700416838
1700416839
MsgBox plaintext
1700416840
1700416841
与进行加密的程序相反,解密使用的是从字符编码中减去3的方法。在最初弹出的窗口中输入密文(就输入刚才得到的QLNNHL),然后单击OK按钮,在接下来弹出的窗口中就会显示解密后的明文NIKKEI(如图10.2所示),怎么样?看起来挺酷的吧!
1700416842
1700416843
图10.2 代码清单10.2的执行结果
1700416844
1700416845
1700416846
1700416847
1700416848
也就是说,加上3是加密,减去3是解密。因此通常把像3这样用于加密和解密的数字称为“密钥”。如果事先把3这个密钥作为只有数据的发送方和接收方才知道的秘密,那么不知道这个密钥的人,就无法对加密的数据进行解密
1700416849
[
上一页 ]
[ :1.7004168e+09 ]
[
下一页 ]