用js加密你的重要信息
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>字符串加密 by 林自爽 - 2016/09/12</title> </head> <body> </body> <script> // 字符串加密 by 林自爽 - 2016/09/12 var x = [ {'desc':'管理','info':'lin'}, ... {'desc':'iphone锁屏','info':'19'} ]; showData('你原来的内容:',x); //编码 var arr = unicodeArr(x); showData('你加密后的内容:',arr); //转码 var str = stringArr(arr); showData('你解密后的内容:',str); // 显示数据 function showData(desc,arr){ var _html = '<div>'+desc+'</div>'; for(var i in arr){ _html += '<div>desc:'+arr[i].desc+',info:'+arr[i].info+'<div>' } document.write(_html); } // 将字符串数组转成unicode编码的数组 function unicodeArr(arr){ var _data = []; for(var i in arr){ var desc = getUnicode(arr[i].desc); var info = getUnicode(arr[i].info); _data[i] = { 'desc':desc, 'info':info }; } return _data; } // 将unicode编码的数组转成字符串数组 function stringArr(arr){ var _data = []; for(var i in arr){ var desc = getStringForUnicode(arr[i].desc); var info = getStringForUnicode(arr[i].info); _data[i] = { 'desc':desc, 'info':info }; } return _data; } //单元方法 字符串转unicode function getUnicode(str){ var arr = []; for(var i in str){ arr.push(encrypt(str.charCodeAt(i))); } return arr; } //单元方法 unicode转字符串 function getStringForUnicode(arr){ var str = ''; for(var i in arr){ str += String.fromCharCode(decrypt(arr[i])); } return str; } // 加密 function encrypt(num){ num += 10086; return num; } // 解密 function decrypt(num){ num -= 10086; return num; } </script> </html>
源头是这样的,我把我所有的账号密码都写在了一个文件中,本来是可以用压缩到zip中,然后设个超过20位的密码,再去md5一下,保存这个md5的字符。
但是觉得上面的方法太麻烦了,我需要一个直接在web就能执行,我只要记住几个数字的。
于是,我将账号密码扔到了一个数组中,数组上都是对象。
那怎么加密呢,首先charCodeAt()是可以将任意字符转成unicode编码的,String.fromCharCode()可以将unicode转成字符串。
charCodeAt()转的unicode是数字,既然是数字,那我任意让这个数字+-*/某一个数不就可以咯,解码的时候就反向解回来。
于是就有了以下的代码
为了避免信息泄露我已经将我的数组随便删除了一部分数据。
用js加密你的重要信息的更多相关文章
- 昆仑游戏[JS加密修改]
昆仑游戏:http://www.kunlun.com/index.html JS加密修改 BigTools=window.BigTools;//重点 RSAKeyPair=window.RSAKeyP ...
- web主题公园版权信息破解:script.js加密文件
很多人会使用web主题公园网站的免费worldpress主题,但它的主题又都被加了版权信息,故意让人找不到版权信息的修改位置. 你如果去footer.php里面删除版权信息(技术支持:web主题公园) ...
- js加密的密文让PHP解密(AES算法)
JS加密代码如下 <script src="http://crypto-js.googlecode.com/svn/tags/3.0.2/build/rollups/aes ...
- RSA加密前端JS加密,后端asp.net解密,报异常
RSA加密前端JS加密,后端asp.net解密,报异常 参考引用:http://www.ohdave.com/rsa/的JS加密库 前端JS加密代码: function GetChangeStr() ...
- RSA前台js加密,后台C#解密
一.需求: 为了安全,项目中前台登陆用的密码需要加密传到后台,后台c#解密登陆密码. 二.解决方案 采用非对称加密算法RSA来达到目的,前台登陆页面一加载便发送一次ajax请求获取后台产生的公钥,用于 ...
- 【不怕坑】之 Node.js加密 C#解密
本人也不太了解AES加密解密,为了解决Node.js加密,但是无法C#解密的问题,在网上搜了大量的相关文章. 但是多数是Node.js vs Java 或 Java vs C#的双向加密解密代码,但是 ...
- JS分段上传文件(File)并使用MD5.js加密文件段用来后台校验
HTML <form method="POST" name="form1" action="/mupload/upload/" enc ...
- NodeJS 实现 客户端 js 加密
NodeJS 实现 客户端 js 加密 思路: 服务端渲染业务代码js => 前后端约定加密算法 => 业务代码进行签名 => 客户端解密业务代码 => eval 执行 Nod ...
- AES加密解密——AES在JavaWeb项目中前台JS加密,后台Java解密的使用
一:前言 在软件开发中,经常要对数据进行传输,数据在传输的过程中可能被拦截,被监听,所以在传输数据的时候使用数据的原始内容进行传输的话,安全隐患是非常大的.因此就要对需要传输的数据进行在客户端进行加密 ...
随机推荐
- mysql连结查询
2016年4月13日 18:08:22 星期三 union 会生成临时表, 然后一同取出合并 join 或子查询, 会生成临时表进行嵌套循环 临时表, 缺点就是没有索引
- Android笔记:异步消息处理
1. Message Message 是在线程之间传递的消息,它可以在内部携带少量的信息,用于在不同线程之间交换数据.上一小节中我们使用到了Message 的what 字段,除此之外还可以使用arg1 ...
- 跟随Rodolfo进入VR时代!
大家好,我是Rodolfo!一个热衷于Virtual Reality (VR),Operating System,Flushbonading和Algorithm的IT行业CTO. 基于多年的自我喜好研 ...
- sqlserver表分区小结
为什么要表分区? 当一个表的数据量太大的时候,我们最想做的一件事是什么?将这个表一分为二或者更多分,但是表还是这个表,只是将其内容存储分开,这样读取就快了N倍了 原理:表数据是无法放在文件中的,但是 ...
- NetApp 监控
http://support.ipmonitor.com/mibs/network-appliance-mib/tree.aspx http://www.360doc.com/content/10/1 ...
- 在shell 上执行mongo 查询
需求 在写小工具的时候,经常遇到需要从mongodb 里面查东西来用,因为要跟其他bash 工具链结合在一起用,所以最理想的方法是能够在shell 上执行查询,然后pipe 给接下来的工具做处理. 方 ...
- 优雅的数组降维——Javascript中apply方法的妙用
将多维数组(尤其是二维数组)转化为一维数组是业务开发中的常用逻辑,除了使用朴素的循环转换以外,我们还可以利用Javascript的语言特性实现更为简洁优雅的转换.本文将从朴素的循环转换开始,逐一介绍三 ...
- 为什么kafka使用磁盘而不是内存
Kafka最核心的思想是使用磁盘,而不是使用内存,可能所有人都会认为,内存的速度一定比磁盘快,我也不例外.在看了Kafka的设计思想,查阅了相应资料再加上自己的测试后,发现磁盘的顺序读写速度和内存持平 ...
- supervisor:How is this different from daemontools ?
"daemontools has too much focus on security as opposed to being a process manager for my taste. ...
- featherview模板引擎
1.判断语法 <?php if(isset($value['fromVR']) && !empty($value['fromVR'])) {?> <s class=& ...