刚学C#,好多不懂,以前一个网站是用ASP做的,用户密码是经过一个加密函数加密后存到数据库里的,现在网站我想用C#重新做了,数据库里已有高达十几万的记录,所以也不能再换别的加密算法了,现在就只能把这个加密函数写成C#版的了!谁能帮我,不胜感激!谢谢! 下面是ASP版的源码: function encrypt(ecode)
Dim texts
dim i
for i=1 to len(ecode)
texts=texts & chr(asc(mid(ecode,i,1))+i)
next
encrypt = texts
end function
function decrypt(dcode)
dim texts
dim i
for i=1 to len(dcode)
texts=texts & chr(asc(mid(dcode,i,1))-i)
next
decrypt=texts
end function
function mistake(preString)
Dim texts
Dim seed
Dim i,length
prestring = trim(preString)
length = len(preString)
seed = length
Randomize(length)
texts = ""
for i = 1 to length
seed = int(94*rnd(-asc(mid(preString,i,1))-seed*asc(right(prestring,1)))+32)
texts = texts & chr(seed) & chr(int(94*rnd(-seed)+32))
next
dim dist
dist=""
for i = 1 to len(texts)
if mid(texts,i,1)<>"'" then
dist=dist+mid(texts,i,1)
end if
next
mistake = dist
end function 用来进行加密的是mistake()这个函数,如:pass=mistake(password),曾经在ASP里就这样的!
Dim texts
dim i
for i=1 to len(ecode)
texts=texts & chr(asc(mid(ecode,i,1))+i)
next
encrypt = texts
end function
function decrypt(dcode)
dim texts
dim i
for i=1 to len(dcode)
texts=texts & chr(asc(mid(dcode,i,1))-i)
next
decrypt=texts
end function
function mistake(preString)
Dim texts
Dim seed
Dim i,length
prestring = trim(preString)
length = len(preString)
seed = length
Randomize(length)
texts = ""
for i = 1 to length
seed = int(94*rnd(-asc(mid(preString,i,1))-seed*asc(right(prestring,1)))+32)
texts = texts & chr(seed) & chr(int(94*rnd(-seed)+32))
next
dim dist
dist=""
for i = 1 to len(texts)
if mid(texts,i,1)<>"'" then
dist=dist+mid(texts,i,1)
end if
next
mistake = dist
end function 用来进行加密的是mistake()这个函数,如:pass=mistake(password),曾经在ASP里就这样的!
解决方案 »
- winfrom当中datagridview数据绑定问题!
- 在C#(后台代码CS文件)中如何取到input的name值。(在线等~~~)
- 如何删除ArrayList的多个元素?
- 实现接口的类是不是必须实现接口里所有的方法
- 讨论讨论
- (50分)如何向VS.NET中的选项(Option)菜单中加选项?
- AsyncCallback 到底是事件还是方法?怎么理解
- .net2005中自动生成的代码(控件声明等)存放在哪里?如何修改?
- 关于DateTime类型:如何只要日期,不要时间
- 怎样用递归的方法把xml文档内容动态加载 到TreeView中,解决者给200分!!
- 关于使用线程始终检索数据库问题?
- 装MSDN后,却不能打开
我这儿有一个用vb.net写的一样的加密算法,以前是用在www.jsqyw.com里的。
你是不是在南京啊?
或者你可以先确认一下.net和vb的随机数发生器是不是一样。
vb和vb.net的随机数发生器一样
搂住把那段代码复制到vb.net生成一个dll,再在c#中调用就行了