ASP编程:怎样用asp举行base64加密
当然了,现在国内CRM厂商的产品与其说是CRM,但从至少从我的角度分析上来看,充其量只是一个大型的进销存而已了,了解尚浅,不够胆详评,这里只提技术问题<%OPTIONEXPLICIT
constBASE_64_MAP_INIT=
"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"
dimnl
zerobasedarrays
dimBase64EncMap(63)
dimBase64DecMap(127)
mustbecalledbeforeusinganythingelse
PUBLICSUBinitCodecs()
initvars
nl="<P>"&chr(13)&chr(10)
setupbase64
dimmax,idx
max=len(BASE_64_MAP_INIT)
foridx=0tomax-1
onebasedstring
Base64EncMap(idx)=mid(BASE_64_MAP_INIT,idx+1,1)
next
foridx=0tomax-1
Base64DecMap(ASC(Base64EncMap(idx)))=idx
next
ENDSUB
encodebase64encodedstring
PUBLICFUNCTIONbase64Encode(plain)
iflen(plain)=0then
base64Encode=""
exitfunction
endif
dimret,ndx,by3,first,second,third
by3=(len(plain)3)*3
ndx=1
dowhilendx<=by3
first=asc(mid(plain,ndx+0,1))
second=asc(mid(plain,ndx+1,1))
third=asc(mid(plain,ndx+2,1))
ret=ret&Base64EncMap((first4)AND63)
ret=ret&Base64EncMap(((first*16)AND48)+((second16)
AND15))
ret=ret&Base64EncMap(((second*4)AND60)+((third64)
AND3))
ret=ret&Base64EncMap(thirdAND63)
ndx=ndx+3
loop
checkforstragglers
ifby3<len(plain)then
first=asc(mid(plain,ndx+0,1))
ret=ret&Base64EncMap((first4)AND63)
if(len(plain)MOD3)=2then
second=asc(mid(plain,ndx+1,1))
ret=ret&Base64EncMap(((first*16)AND48)+
((second
16)AND15))
ret=ret&Base64EncMap(((second*4)AND60))
else
ret=ret&Base64EncMap((first*16)AND48)
ret=ret&"="
endif
ret=ret&"="
endif
base64Encode=ret
ENDFUNCTION
decodebase64encodedstring
PUBLICFUNCTIONbase64Decode(scrambled)
iflen(scrambled)=0then
base64Decode=""
exitfunction
endif
ignorepadding
dimrealLen
realLen=len(scrambled)
dowhilemid(scrambled,realLen,1)="="
realLen=realLen-1
loop
dimret,ndx,by4,first,second,third,fourth
ret=""
by4=(realLen4)*4
ndx=1
dowhilendx<=by4
first=Base64DecMap(asc(mid(scrambled,ndx+0,1)))
second=Base64DecMap(asc(mid(scrambled,ndx+1,1)))
third=Base64DecMap(asc(mid(scrambled,ndx+2,1)))
fourth=Base64DecMap(asc(mid(scrambled,ndx+3,1)))
ret=ret&chr(((first*4)AND255)+((second16)AND3)
)
ret=ret&chr(((second*16)AND255)+((third4)AND
15))
ret=ret&chr(((third*64)AND255)+(fourthAND63))
ndx=ndx+4
loop
checkforstragglers,willbe2or3characters
ifndx<realLenthen
first=Base64DecMap(asc(mid(scrambled,ndx+0,1)))
second=Base64DecMap(asc(mid(scrambled,ndx+1,1)))
ret=ret&chr(((first*4)AND255)+((second16)AND3)
)
ifrealLenMOD4=3then
third=Base64DecMap(asc(mid(scrambled,ndx+2,1)))
ret=ret&chr(((second*16)AND255)+((third4)AND
15))
endif
endif
base64Decode=ret
ENDFUNCTION
initialize
callinitCodecs
Testingcode
diminp,encode
inp=request.QueryString("input")
encode=base64Encode(inp)
response.write"Encodedvalue="&encode&nl
response.write"Decodedvalue="&base64Decode(encode)&nl
%>
当然了,现在国内CRM厂商的产品与其说是CRM,但从至少从我的角度分析上来看,充其量只是一个大型的进销存而已了,了解尚浅,不够胆详评,这里只提技术问题 多看多学多思。多看一些关于ASP的书籍,一方面可以扩展知识面一方面可以鉴借别人是如何掌握、运用ASP的;多学善于关注别人,向同学老师多多学习,不论知识的大小;多思则是要将学到的知识灵活运用。 以HTML语言整合(HTML负责界面上,ASP则负责功能上)形成一个B/S(浏览器/服务器)模式的网页程序。 用户端的浏览器不需要提供任何别的支持,这样大提高了用户与服务器之间的交互的速度。 它可通过内置的组件实现更强大的功能,如使用A-DO可以轻松地访问数据库。 完全不知道到底自己学的是什么。最后,除了教程里面说的几个例子,还是什么都不会。 如何更好的使自己的东西看上去很不错等等。其实这些都不是问题的实质,我们可以在实践中不断提升自己,不断充实自己。 Server:这个表示的服务器,操作服务器的一些东西使用这个,如Server.Mappath转换服务器路径,Server.CreateObject实例化一个组件 运用经典的例子。并且自己可以用他来实现一些简单的系统。如果可以对他进行进一步的修改,找出你觉得可以提高性能的地方,加上自己的设计,那就更上一个层次了,也就会真正地感到有所收获。
页:
[1]