在第一部分,讨论了如何生成密钥,下面将介绍如何使用这个密钥来加密和解密一个字符串。
下面的代码就是能够同时实现这个功能的函数
Crypt.asp文件
<%
Dim g_Key
Const g_CryptThis = "Now is the time for all good men to come to the aid of their country."
Const g_KeyLocation = "c:\key.txt"
g_Key = mid(ReadKeyFromFile(g_KeyLocation),1,Len(g_CryptThis))
Response.Write "<p>ORIGINAL STRING: " & g_CryptThis & "<p>"
Response.Write "<p>KEY VALUE: " & g_Key & "<p>"
Response.Write "<p>ENCRYPTED CYPHERTEXT: " & EnCrypt(g_CryptThis) & "<p>"
Response.Write "<p>DECRYPTED CYPHERTEXT: " & DeCrypt(EnCrypt(g_CryptThis)) & "<p>"
Function EnCrypt(strCryptThis)
Dim strChar, iKeyChar, iStringChar, i
for i = 1 to Len(strCryptThis)
iKeyChar = Asc(mid(g_Key,i,1))
iStringChar = Asc(mid(strCryptThis,i,1))
' *** uncomment below to encrypt with addition,
' iCryptChar = iStringChar + iKeyChar
iCryptChar = iKeyChar Xor iStringChar
strEncrypted = strEncrypted & Chr(iCryptChar)
next
EnCrypt = strEncrypted
End Function
Function DeCrypt(strEncrypted)
Dim strChar, iKeyChar, iStringChar, i
for i = 1 to Len(strEncrypted)
iKeyChar = (Asc(mid(g_Key,i,1)))
iStringChar = Asc(mid(strEncrypted,i,1))
' *** uncomment below to decrypt with subtraction
' iDeCryptChar = iStringChar - iKeyChar
iDeCryptChar = iKeyChar Xor iStringChar
strDecrypted = strDecrypted & Chr(iDeCryptChar)
next
DeCrypt = strDecrypted
End Function
Function ReadKeyFromFile(strFileName)
Dim keyFile, fso, f
set fso = Server.CreateObject("Scripting.FileSystemObject")
set f = fso.GetFile(strFileName)
set ts = f.OpenAsTextStream(1, -2)
Do While not ts.AtEndOfStream
keyFile = keyFile & ts.ReadLine
Loop
ReadKeyFromFile = keyFile
End Function
%>
在Crypt.asp中我们首先从密钥文件中得到密钥值,然后从这段密钥中截取和我们需要加密的明文同样长度的密钥。然后使用一个简单的异或操作将明文和密钥进行运算,那么得到的结果就是加密后的密文了。过程很简单的。
由于是使用了异或操作,所以解密将非常简单,只要使用同样的密钥对密文再次进行异或操作就能够解密了。
在上面介绍的基础上,你可以少加改动,就可以使用同样的方法加密一个文件。
唯一需要注意的是,对于一个二进制文件,你需要做一些完整性检查以保证转换回来的字符不要越界。
现在你需要做的就是把密钥保存在服务器上的一个安全的地方(不能够被外部访问)
附注:
Vernam密码是由Gilbert Vernam (他是AT&T的工程师)在1918年发明的。这是一种使用异或方法进行加密解密的方法。
一分钟教你识别电脑监控软件的简单技巧
在如今这个信息如洪流般奔涌的时代,电脑早已成为我们工作、学习与娱乐不可或缺的亲密伙伴。然而,你或许有所不知,有时候,你的电脑可能正被一些 “不请自来” 的家伙 —— 监控软件,偷偷地窥视着。它们或许会在你毫无察觉之时,悄然收集你的个人信息,甚至对你的隐私与安全构成威胁。别慌,今天就来教你几个简单又实用的小妙招,只需一分...
IT资产管理解读:IT资产管理是干什么的?
在企业日常运营的忙碌节奏里,你或许常常听到 “IT 资产管理” 这个词。但你真的清楚它究竟意味着什么吗?是不是下意识觉得,它不过就是简单统计下电脑、软件数量,再记记账?要是这么想,可就大错特错啦!IT 资产管理,它可是企业迈向数字化转型征程中的得力伙伴,承担的任务远比你想象的复杂且关键。IT 资产管理,通俗来讲,就是对...
企业必备:终端安全管理系统的六大功能
在如今智能化高速发展的阶段,企业就像一艘在信息海洋里乘风破浪的巨轮,既追寻速度和效率,又保证出航的安全稳定。在这过程中,终端安全管理系统算得上是企业不可缺少的 “护航员”悄悄捍卫了企业信息安全界线,促进企业在波澜壮阔的数据浪潮中稳步前行。今日,让我们进一步探讨为什么公司需要配备一个强大的终端安全管理系统,它有哪些功能呢...
揭秘:上网行为监控软件是如何监控的
最近,网络安全事件频繁发生,从个人数据不小心被泄露,到大型企业遭受网络攻击,每一件事儿都像一块大石头,沉甸甸地压在亿万网民的心上。在现在这个到处都是数字信息的时代,大家都在绞尽脑汁地想,到底怎样才能在开开心心享受网络带来的各种便利的同时,还能保证自己的网络行为既安全又符合规定。这问题啊,已经成了社会上各行各业都特别关注...
盘点十大优质u盘管理软件,轻松提升存储效率
最新调查结果着实惊人,超 70% 的用户直言 U 盘存储空间常常告急,而其中近 60% 的人更是烦恼于频繁因找不到文件而浪费大量时间。这些数据清晰表明,U盘管理已成为一个不可小觑的重要问题。不过别愁,今天就为大家揭开那些能显著提升存储效率的 U 盘管理软件的神秘面纱,让你的 U 盘彻底改头换面!咱平日里使用 U 盘,就...