本文简介:在第一部分,讨论了如何生成密钥,下面将介绍如何使用这个密钥来加密和解密一个字符串。下面的代码就是能够同时实现这个功能的函数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 =
在第一部分,讨论了如何生成密钥,下面将介绍如何使用这个密钥来加密和解密一个字符串。
下面的代码就是能够同时实现这个功能的函数
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年发明的。这是一种使用异或方法进行加密解密的方法。
立即下载试用常用的加密软件有哪些,企业电脑数据防泄密软件
常用的加密软件有哪些,企业电脑数据防泄密软件
随着信息技术的飞速发展,企业数据安全问题愈发凸显。如何确保企业核心信息资产的安全,防止数据泄露,已成为企业亟待解决的问题。安企神软件作为一款专业的企业级数据安全解决方案,正是您需要的加密利器。
安企神软件数据加密功能详解:
1、文档透明加解密: 安企神软件采用文件过滤驱动实现透明加解密,全程跟踪并保护电子文档的操作行为,如创建、修改、复制、删除等,确保企业计算机信息不被破坏、丢失或泄密。
2、实时动态保护: 通过实时监控员工电脑操作行为,安企神软件可对电子文档进行实时动态保护,及时发现并阻止任何潜在的数据泄露风险。
3、灵活权限控制: 安企神软件提供只读、可写、可编辑、禁止删除等灵活的权限设置,可根据实际需求进行调整,确保不同部门和员工对重要文件的合理操作。
4、多种应用支持: 安企神软件不仅支持各种业务应用软件的加密,如PDM、PLM、ERP、OA等,还支持其他基于Windows、macOS、Linux的各种应用系统,为您提供更全面的数据安全保障。
5、水印追溯泄密者: 安企神软件支持在屏幕上显示水印信息,通过照片追溯泄密者信息,增加泄密难度,让泄密者无处可藏。
总之,安企神软件作为一款专业的企业级数据安全解决方案,既具备全面保护功能,又灵活适应企业特殊需求。选择安企神软件,就是选择对企业核心信息资产的全方位保护。让我们携手共同守护企业的信息安全,为企业稳健发展保驾护航!
本文为收集整理,文章部分观点不代表本站观点,如有侵权或其它问题请反馈客服。https://www.wgj7.com/cjwt/16164.html