首页 > Web开发 > 详细

Nodejs加密php解密

时间:2015-07-30 10:44:02      阅读:251      评论:0      收藏:0      [点我收藏+]
var crypto = require(‘crypto‘);

function decode(cryptkey, iv, secretdata) {
    var
    decipher = crypto.createDecipheriv(‘aes-256-cbc‘, cryptkey, iv),
    decoded  = decipher.update(secretdata, ‘base64‘, ‘utf8‘);
   
    decoded += decipher.final( ‘utf8‘ );
    return decoded;
}

function encode(cryptkey, iv, cleardata) {
    var
    encipher = crypto.createCipheriv(‘aes-256-cbc‘, cryptkey, iv),
    encoded  = encipher.update(cleardata, ‘utf8‘, ‘base64‘);

    encoded += encipher.final( ‘base64‘ );
    return encoded;
}

var
cryptkey   = crypto.createHash(‘sha256‘).update(‘__tazai_wolf__key‘).digest(),
iv         = ‘1234567890000000‘,
buf        = "TALK:创建房间页面。点击Creat room。怎么没反应?...",
enc        = encode( cryptkey, iv, buf );

var dec        = decode(cryptkey, iv, enc);

function b64enc(data) {
    var b   = new Buffer(data, ‘binary‘);
    return b.toString(‘base64‘);
}

console.warn("Encoded length: ", enc);
console.warn("Decoded all: " + dec);
<?php
function decode($cryptkey, $iv, $secretdata){
    return openssl_decrypt($secretdata,‘aes-256-cbc‘,$cryptkey,false,$iv);
}
function encode($cryptkey, $iv, $secretdata){
    return openssl_encrypt($secretdata,‘aes-256-cbc‘,$cryptkey,false,$iv);
}
$cryptkey = hash(‘sha256‘,‘__tazai_wolf__key‘,true);
$iv = ‘1234567890000000‘;
$buf = "Hello World";

$enc = encode($cryptkey,$iv,$buf);
$dec = decode($cryptkey, $iv, $enc);

echo "Encoded length: ",$enc,"\n";
echo "Decoded all: ",$dec,"\n";

  

Nodejs加密php解密

原文:http://www.cnblogs.com/adtuu/p/4688270.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!