使用ASP加密算法加密你的数据(一)

戈壁雏鹰

戈壁雏鹰

2016-01-29 17:54

使用ASP加密算法加密你的数据(一),使用ASP加密算法加密你的数据(一)
  简介
首先简单介绍一下有关加密的背景。由于美国禁止几种密码算法的对外出口的
加密位数(例如SSL的40位加密限制),本文将介绍一种ASP可以使用的简单字符加密算法,
而不是那些受限制的加密算法。其实,这里介绍的加密算法对于一般的运用来说已经足够
解密人麻烦一阵子的了。它的加密基础是最简单的Vernum密码方法,我将在下一篇文章中
介绍这种密码。
它的基本原理是,需要有一个需要加密的明文和一个随机生成的解密钥匙文件。然后
使用这两个文件组合起来生成密文。
(明文) 组合 (密钥) = 加密后的密文
所以本文介绍的是生成密钥的代码。我们假设我们生成的密钥为512位长的密钥,
它已经足够来加密一个文本字符了。代码如下:
KeyGeN.asp文件
<%
'******************************
' KeyGeN.asp
'******************************
Const g_KeyLocation = "C:key.txt"
Const g_KeyLen = 512

On Error Resume Next

Call WriteKeyToFile(KeyGeN(g_KeyLen),g_KeyLocation)

if Err < 0 Then
Response.Write "ERROR GENERATING KEY." & "<P"
Response.Write Err.Number & "<BR"
Response.Write Err.Description & "<BR"
Else
Response.Write "KEY SUCCESSFULLY GENERATED."
End If

Sub WriteKeyToFile(MyKeyString,strFileName)
Dim keyFile, fso
set fso = Server.CreateObject("scripting.FileSystemObject")
set keyFile = fso.CreateTextFile(strFileName, true)
keyFile.WriteLine(MyKeyString)
keyFile.Close
End Sub

Function KeyGeN(iKeyLength)
Dim k, iCount, strMyKey
lowerbound = 35
upperbound = 96
Randomize ' Initialize random-number generator.
for I = 1 to iKeyLength
s = 255
k = Int(((upperbound - lowerbound) + 1) * Rnd + lowerbound)
strMyKey = strMyKey & Chr(k) & ""
next
KeyGeN = strMyKey
End Function

%
在IIS下运行上面的KeyGeN.asp页面。你只需要如此做一次,他将把密钥写入文件
c:key.txt中 (如果你愿意的话,你也可以把这个文件放到另外一个更加安全的地方).
然后你可以打开这个key.txt文件,它将包含512个ASCII码在35到96之间的字符.
并且由于是随机生成的,所以每个人的私人密钥文件key.txt将是不一样的,下面是
一个例子密钥文件:
IY/;$=3)?^-+7M32#Q]VOII.Q=OFMC`:P7_B;<R/8U)XFHC<SR_E$.DLG'=I+@5%*+OP:F_=';'
NSY`-^S.`AA=BJ3M0.WF#T5LGK(=/<:+C2K/^7AI$;PU'OME2+T8ND?W$C(J,;631'M-LD5F%%1
TF_&K2A-D-54[2P,#'*JU%6`0RF3CMF0(#T07U'FZ=#,+.AW_/+']DIB;2DTIA57TT&-)O'/*F'
MH.XH5W^0Y*=71+5*^`^PKJ(=E/X#7A:?,SR&T;+B#<:-*@)X9F`_`%QA3Z95.?_T#1,$2#FW
W5PBH^*<])A(S0@AVD8C^Q0R^T1D?(1+,YE71X+.*+U$:3XO^Q].KG&0N0];[LJ<OZ6IN?7N4<GT
L?(M'4S8+3JMK5]HC%^1^+K;$WBXPA?F&5^ED$7%*O/U[1/?8(5:1OVWV*1Z-%`:K&V?X1,1KU
RD@3W0^D)<OG40?(VJ4EWL5A5M<$A);CQ36R9I]*U#Q%1<Y&SA%#1<V
下面再仔细分析一下上面的程序,我们发现其中的lowerbound和upperbound的数值
其实就是你想使用来加密的ASCII字符范围。
后面一篇文章中将介绍如何使用这个密钥来加密和解密一个字符串 
展开更多 50%)
分享

猜你喜欢

使用ASP加密算法加密你的数据(一)

ASP
使用ASP加密算法加密你的数据(一)

使用ASP加密算法加密你的数据(二)

ASP
使用ASP加密算法加密你的数据(二)

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

常用加密算法

电脑网络
常用加密算法

基于Java的IDEA加密算法

Java JAVA基础
基于Java的IDEA加密算法

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

IBM的MARS加密算法实现(下)

C语言教程 C语言函数
IBM的MARS加密算法实现(下)

基于Java的IDEA加密算法探讨

编程语言 网络编程
基于Java的IDEA加密算法探讨

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

Linux指令篇:文档编辑--fgrep

Linux指令篇:文档编辑--fgrep

Linux指令篇:文档编辑--pico

Linux指令篇:文档编辑--pico
下拉加载更多内容 ↓