vb.netdes VBNET的session请求

常用的编程软件有那些1.程序软件免费下载
链接:
提取码:9gsb
软件,拼音为Ruǎnjiàn,国标中对软件的定义为:与计算机系统操作有关的计算机程序、规程、规则 , 以及可能有的文件、文档及数据 。
vb加密算法Private Sub Command1_Click()
Dim t As String
t = Text1.Text
Text2.Text = Encrypt(t, 177, 86)
End Sub
Private Sub Command2_Click()
Dim t As String
t = Text2.Text
Text4.Text = Encrypt(t, 177, 86)
End Sub
亲,你这两个按钮里面的代码都是加密的?。?
最基本的知识你都没有理解!哪有加密和解密都用一样的代码!
前端jsp登录密码加密为des3加密方法*_*?我是谁
原创
关注
0点赞·757人阅读
%@ page contentType="text/html;charset=GBK"%
%@ page language="java" import="java.util.regex.*,
com.excellence.common.OAConstant,
com.excellence.common.UserInfo,
java.util.*,
java.text.SimpleDateFormat," %
html
head
titleXX系统/title
meta http-equiv="Content-Type" content="text/html; charset=gb2312"
link rel="stylesheet" href="https://www.04ip.com/common/styles/default/default.css" type="text/css"
/head
script language="javascript"
/script
script language="JavaScript" src="https://www.04ip.com/oa/javascripts/crypto-js.js"/script
body bgcolor="#FFFFFF" text="#000000" leftmargin="0" topmargin="0"
center
/center
/body
script type="text/vbscript"
Function str2asc(strstr)
str2asc = hex(asc(strstr))
End Function
【vb.netdes VBNET的session请求】Function asc2str(ascasc)
asc2str = chr(ascasc)
End Function
/script
script
%
UserInfo userInfo = (UserInfo) request.getSession().getAttribute("userInfo ");
String account="";
//获取用户账号
if(userInfo.getAccount()!=null!"".equals(userInfo.getAccount()))
account=userInfo.getAccount();
//有效期vb.netdes:格式:yyyy-MM-dd HH:mm:ss 有效期不能设置超过10分钟
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date now = new Date();
Date date = new Date(now .getTime()600000);
String time = df.format(date);
%
//sessionid = base64(DES(用户账号有效期))
//DES key:67HT4WrP
var sessionId = "%=account%""""%=time%";
var mykey = "67HT4WrP";
// DES加密模式:CBC模式/ECB模式
// CBC模式加密
function encryptCBC(text, textKey) {
// 密钥转成16进制的字符串
var key = CryptoJS.enc.Utf8.parse(textKey);
// 加密过程
var encrypted = CryptoJS.DES.encrypt(text, key, {
// iv偏移量为key值
iv: key,
// 模式为CBC
mode: CryptoJS.mode.CBC,
// DES加密padding为Pkcs7
padding: CryptoJS.pad.Pkcs7
});
// 加密返回为字符串密文(加密经过一次base64加密,结果可看结果)
return encrypted.toString();
}
//对字符串中的特殊字符进行UrlEncode转码
function UrlEncode(str){
var ret="";
var strSpecial="!\"#$%'()* ,/:;=?[]^`{|}~%";
var tt= "";
for(var i=0;istr.length;i){
var chr = str.charAt(i);
var c=str2asc(chr);
tt= chr ":" c "n";
if(parseInt("0x" c)0x7f){
ret ="%" c.slice(0,2) "%" c.slice(-2);
}else{
if(chr==" ")
ret =" ";
else if(strSpecial.indexOf(chr)!=-1)
ret ="%" c.toString(16);
else
ret =chr;
}
}
return ret;
}
//对sessionid进行加密
var desPass=encryptCBC(sessionId,mykey);
//对加密的sessionid中的特殊字符转码
var desPassEncode=UrlEncode(desPass);
//URL格式:;appid=5t7i9e260w6f41b71rt7fd07h9qo9800redirectUrl=~/Portals/Views/Test/index.html
var url="" desPassEncode "appid=5t7i9e260w6f41b71rt7fd07h9qo9800redirectUrl=~/Portals/Views/Test/index.html";
window.close();
window.open(url);
/script
/html
登录后复制
?
注意事项:
1、crypto-js.js使用到了这个js,要记得引入,很多地方可以下载的,除了这里面能用到des加密 , 也可以从网上找其vb.netdes他的des加密脚本,但是因为des加密模式的问题,要注意调用函数时参数的使用,确定自己要使用的是哪种des加密方法 。
2、因为这里实现的是自动登录 , 涉及到了url的处理,由于使用了加密,密文中会含有特殊字符,直接通过url转跳,要把url中含有的特殊字符进行UrlEncode转码 。
3、注意这里des的加密方式,这样进行转跳,跳进去的网站是.net实现的 , 因为des的加密模式有几种,java,.net等默认的des加密模式有可能不一致,就会导致加密后的密文不一样 , 所以要确定自己使用哪种模式,或者直接输出加密密文来进行比较 。
4、使用js比较方便的地方是因为我这里用的jsp页面 , 所以对处理的数据可以任意写,而且不会影响后台的使用,我觉得这是js的好处,特别是进行像这种进行类似单点登录,自己系统用的java实现 , 而别人用的.net,直接用脚本,可以节省时间,不会对自己系统造成什么影响 。
5、有一个地方要注意,这里对url进行转码时,使用到了VB脚本的一些函数 , 这种脚本已经很少有人会用了,而且有些浏览器已经不支持了 , 百度显示ie11不支持,但是我自己的电脑就是ie11,可以使用 , 所以这个也不是绝对的,有可能和使用到的函数有关 。
6、除了des加密,还有md5 , 单独的base64加密,这些常用的加密方式,都可以直接用js脚本实现 。
7、这里只有des的一种加密模式 , 还有其他的,crypto-js.js中都有,可以百度下其他加密方法的使用vb.netdes!
关于vb.netdes和VBNET的session请求的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站 。

    推荐阅读