之前在网络上看到有人把文字加密成 特殊字符,但是我一直没有找到加密的地址,所以自己写了一个来玩玩。
这是一个简单的可逆加密,没有做太多的混淆。 首先我们要制作两本字典,用来加密和解密:
var dict = {
'0':'富强' ,
'1':'民煮' ,
'2':'文明' ,
'3':'和谐' ,
'4':'自由' ,
'5':'平等' ,
'6':'公正' ,
'7':'法治' ,
'8':'爱国' ,
'9':'敬业' ,
'a':'诚信' ,
'b':'友善' ,
'c':'奶只' ,
'd':'萌妹'
};
var dict_r = {
'富强' :'0',
'民煮' :'1',
'文明' :'2',
'和谐' :'3',
'自由' :'4',
'平等' :'5',
'公正' :'6',
'法治' :'7',
'爱国' :'8',
'敬业' :'9',
'诚信' :'a',
'友善' :'b',
'奶只' :'c',
'萌妹' :'d'
};
然后用到字符串的一个方法charCodeAt()。能够将字符串转换为十进制。因为我们的字典是14个数,所以我们要把10进制转为十四进制。用到函数toString(14)。例如:
'我'.charCodeAt().toString(14); // 得到结果 :9213
然后将得到结果,一个一个根据字典来组合。
var a = '9213'[0] // a 为 '9'
var miwen = dict[a] // miwen 为 '敬业'
// 最终得到 '敬业 文明 民主 和谐'
加密完成 解密也类似。不写了。大家自己去看源码把,我没有加密混淆js。