Jsbase64加密解密介绍
2023-06-13 09:15:06 时间
<scripttype="text/javascript">
varbase64encodechars="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
varbase64decodechars=newArray(
-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,
-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,
-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,62,-1,-1,-1,63,
52,53,54,55,56,57,58,59,60,61,-1,-1,-1,-1,-1,-1,
-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,
15,16,17,18,19,20,21,22,23,24,25,-1,-1,-1,-1,-1,
-1,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,
41,42,43,44,45,46,47,48,49,50,51,-1,-1,-1,-1,-1);
functionbase64encode(str){
varout,i,len;
varc1,c2,c3;
len=str.length;
i=0;
out="";
while(i<len){
c1=str.charCodeAt(i++)&0xff;
if(i==len){
out+=base64encodechars.charAt(c1>>2);
out+=base64encodechars.charAt((c1&0x3)<<4);
out+="==";
break;
}
c2=str.charCodeAt(i++);
if(i==len){
out+=base64encodechars.charAt(c1>>2);
out+=base64encodechars.charAt(((c1&0x3)<<4)|((c2&0xf0)>>4));
out+=base64encodechars.charAt((c2&0xf)<<2);
out+="=";
break;
}
c3=str.charCodeAt(i++);
out+=base64encodechars.charAt(c1>>2);
out+=base64encodechars.charAt(((c1&0x3)<<4)|((c2&0xf0)>>4));
out+=base64encodechars.charAt(((c2&0xf)<<2)|((c3&0xc0)>>6));
out+=base64encodechars.charAt(c3&0x3f);
}
returnout;
}
functionbase64decode(str){
varc1,c2,c3,c4;
vari,len,out;
len=str.length;
i=0;
out="";
while(i<len){
do{
c1=base64decodechars[str.charCodeAt(i++)&0xff];
}while(i<len&&c1==-1);
if(c1==-1)
break;
do{
c2=base64decodechars[str.charCodeAt(i++)&0xff];
}while(i<len&&c2==-1);
if(c2==-1)
break;
out+=String.fromCharCode((c1<<2)|((c2&0x30)>>4));
do{
c3=str.charCodeAt(i++)&0xff;
if(c3==61)
returnout;
c3=base64decodechars[c3];
}while(i<len&&c3==-1);
if(c3==-1)
break;
out+=String.fromCharCode(((c2&0xf)<<4)|((c3&0x3c)>>2));
do{
c4=str.charCodeAt(i++)&0xff;
if(c4==61)
returnout;
c4=base64decodechars[c4];
}while(i<len&&c4==-1);
if(c4==-1)
break;
out+=String.fromCharCode(((c3&0x03)<<6)|c4);
}
returnout;
}
</script>
相关文章
- 对称加密和非对称加密
- 美团二面:加密后的数据如何进行模糊查询??被问懵了。。
- RSA登录加密_rsa私钥加密公钥解密
- SM4加密解密_iunlocker解锁网站
- java jasypt_java – 使用jasypt加密解密「建议收藏」
- JS逆向加密解密工具Crypto Magician、乐易助手、WT-JS 下载使用
- 可搜索加密:前世今生
- 【愚公系列】2023年01月 网安实验-.NET程序的破解与加密
- 椭圆曲线加密与NSA后门考古
- 【C 语言】文件操作 ( 读文本文件 | 文本加密解密 | fgets 函数 | fputs 函数 )
- Java实现DES加密解密代码详解编程语言
- Java进行3DES加密解密详解编程语言
- java加密解密类详解编程语言
- 亚马逊即将开始接受加密货币?
- #新闻拍一拍# Twetch 发布基于比特币的加密聊天功能
- MySQL安全加固使用SSL加密连接(MySQL usessl)(mysql中usessl)
- Oracle中的安全性加密函数(oracle中加密函数)
- Oracle中的MD5加密及其解密研究(oracle中md5解密)
- asp.net对中文汉字的加密与解密代码
- Oracle存储过程加密方法
- UCenter中的一个可逆加密函数authcode函数代码
- Base64编码加密JS代码网页版
- java使用异或实现变量互换和异或加密解密示例