Javascript / php 用RSA去做加密资料传送?
时间:2014-04-27
来源:互联网
然后要RSA方法传去比rec.php
请问大约要点做?
上网睇左好耐都唔知点搅@@
thank you very much!
作者: yoho_town_ 发布时间: 2014-04-27
大约系由send.html 用session key 加密某一个user input value(password)
然后要RSA方法传去比rec.php
请问大约要点做?
上网睇左好耐都唔知点搅@@
thank you very much!
https://code.google.com/p/crypto-js/
http://www.php.net/manual/en/book.mcrypt.php
不过其实都有 HTTPS ,实际上可能点搞都无意思。
如果想更安全,或者要自行想个新的方法来加密。
作者: xianrenb 发布时间: 2014-04-27
然后计算出两把key...一个用在加密...一个解密
下面的javascript就是用来加密和解密
{
var result = (exponent & 1 ? base % n : 1);
while(exponent >>= 1)
{
base *= base %= n;
result *= (exponent & 1 ? base % n : 1);
result %= n;
}
return result;
}
function RSAEncoder(key, binary)
{
var _base = 4 * Math.LN2;
var _package = [Math.floor(Math.log(key.N) / _base),
Math.ceil(Math.log(key.N) / _base)];
var _end = binary.length % _package[0];
while(binary.length % _package) binary.push(0);
var data = [];
for(var i = 0; i * _package[0] < binary.length; ++i)
{
var temp = 0;
for(var j = 0; j < _package[0]; ++j)
{
temp = temp << 4 | 0xf & binary[i * _package[0] + j];
}
var code = modPow(temp, key.e, key.N);
for(var j = 0; j < _package[1]; ++j)
{
data.push(0xf & code >> 4 * (_package[1] - j - 1));
}
}
data.push(_end);
return data;
}
function RSADecoder(key, binary)
{
var _base = 4 * Math.LN2;
var _package = [Math.ceil(Math.log(key.N) / _base),
Math.floor(Math.log(key.N) / _base)];
var _end = binary.pop();
while(binary.length % _package) binary.push(0);
var data = [];
for(var i = 0; i * _package[0] < binary.length; ++i)
{
var temp = 0;
for(var j = 0; j < _package[0]; ++j)
{
temp = temp << 4 | 0xf & binary[i * _package[0] + j];
}
var code = modPow(temp, key.d, key.N);
for(var j = 0; j < _package[1]; ++j)
{
data.push(0xf & code >> 4 * (_package[1] - j - 1));
}
}
if(_end) return data.slice(0, _end - _package[1]);
return data;
}
var key2 = {N: 323, d: 221};
var encode = RSAEncoder(key1 , [1, 2, 3, 4, 5]);
var decode = RSADecoder(key2 , encode);
作者: Susan﹏汪汪 发布时间: 2014-04-27
我都曾经想用正统些的方法搞加密、解密,找过以下资料,可能对你有用:
https://code.google.com/p/crypto-js/
http://www.php.net/manual/en/book.mcrypt.php
不过其实都有 HTTPS ,实际上可能点搞都无意思 ...

作者: 烟民比食屎9更贱 发布时间: 2014-04-27
<head>
<script src="http://crypto-js.googlecode.com/svn/tags/3.1.2/build/rollups/aes.js"></script>
<script>
var data;
var key;
var encrypted; //= CryptoJS.AES.encrypt(data , key);
var decrypted; //= CryptoJS.AES.decrypt(encrypted, key);
function encry()
{
data = document.getElementById("data").value;
key = document.getElementById("key").value;
encrypted = CryptoJS.AES.encrypt(data , key);
document.getElementById("div1").innerHTML = encrypted
}
function decry()
{
key = document.getElementById("key").value;
encrypted = document.getElementById("data").value;
decrypted = CryptoJS.AES.decrypt(encrypted, key);
document.getElementById("div1").innerHTML = decrypted
}
</script>
</head>
<body>
data: <textarea type="text" id="data"></textarea>
key:<input type="text" id="key">
<div id="div1"></div>
<button onclick="encry()">encry</button><button onclick="decry()">decry</button>
</body>
<html>
作者: 烟民比食屎9更贱 发布时间: 2014-04-27
如果唔用 js, php 本身有无 AES

我自己无正式学过 cryptography ,亦不太清楚不同电脑语言有什么合适的 library 可用。
之前提供的 link ,只是很久前曾经找到的 link /资料,连现在合不合用/够不够新,我都不清楚呢!
不过或许可参考一下 http://hk1.php.net/mcrypt 中的 comment ,及
https://gist.github.com/RiANOl/1077723
作者: xianrenb 发布时间: 2014-04-27
同埋点解个 js encry 解唔返既!?
var data;
var key;
var encrypted; //= CryptoJS.AES.encrypt(data , key);
var decrypted; //= CryptoJS.AES.decrypt(encrypted, key);
function encry()
{
...
http://jsfiddle.net/b3VAj/
作者: xianrenb 发布时间: 2014-04-27
大约系由send.html 用session key 加密某一个user input value(password)
然后要RSA方法传去比rec.php
请问大约要点做?
上网睇左好耐都唔知点搅@@
thank you very much!
作者: a8d7e8 发布时间: 2014-04-27
作者: 烟民比食屎9更贱 发布时间: 2014-04-27
utf16 都系有问题, decode 唔返, utf8 ok!
https://code.google.com/p/crypto-js/issues/list
以下亦值得看看:
http://stackoverflow.com/questions/8169278/firefox-and-utf-16-encoding
作者: xianrenb 发布时间: 2014-04-27
作者: 尹巴士顿 发布时间: 2014-04-27
我做过类似的东西,我是用这个javascript lib. 的:
http://www.ohdave.com/rsa/
我想知你点试UTF-16呢?
用中文字?
作者: Susan﹏汪汪 发布时间: 2014-04-27
我做过类似的东西,我是用这个javascript lib. 的:
http://www.ohdave.com/rsa/
我想知你点试UTF-16呢?
用中文字?
作者: 烟民比食屎9更贱 发布时间: 2014-04-27
想问问其实我可否在填form的html内,用server public key去(javascript)encrypt某一个栏位
然后send左去比另一边的php接左d data去用server private key 去(php) decrypt番果个栏位?
PS: server private key 是hardcore落去
念极都唔知点落手好...
十万个谢谢


作者: yoho_town_ 发布时间: 2014-04-27
谢谢大家
想问问其实我可否在填form的html内,用server public key去(javascript)encrypt某一个栏位
然后send左去比另一边的php接左d data去用server private key 去(php) decrypt番果个栏位?
PS: server pri ...
可以看看:
https://github.com/digitalbazaar/forge
http://stackoverflow.com/questions/4484246/encrypt-and-decrypt-text-with-rsa-in-php
不过我始终觉得无必要用这类方法,除非无得用 https 。
作者: xianrenb 发布时间: 2014-04-27
谢谢大家
想问问其实我可否在填form的html内,用server public key去(javascript)encrypt某一个栏位
然后send左去比另一边的php接左d data去用server private key 去(php) decrypt番果个栏位?
PS: server pri ...

作者: 烟民比食屎9更贱 发布时间: 2014-04-27
比人睇哂冇所谓

作者: yoho_town_ 发布时间: 2014-04-27
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28