Node.js and sha1
http://www.php.net/manual/zh/function.sha1.php
1 |
如果可选的raw_output设置为TRUE,则将以原始二进制格式返回sha1摘要,其长度为20,否则返回值为40个字符的十六进制数字。
1 2 3 4 5 6 7 | crypto = require("crypto"); console.log( new Buffer(crypto.createHash('sha1').update("some text").digest()).toString('base64') ); // N8KqY8OHc8KYw5lURzJiw6HCoAV8HmMuw5p3 console.log( new Buffer(crypto.createHash('sha1').update("some text").digest("hex")).toString('base64') ); // MzdhYTYzYzc3Mzk4ZDk1NDQ3MzI2MmUxYTAwNTdjMWU2MzJlZGE3Nw== console.log( new Buffer(crypto.createHash('sha1').update("some text").digest("base64")).toString('base64') ); // TjZwangzT1kyVlJITW1MaG9BVjhIbU11Mm5jPQ== |
1 2 3 4 5 6 | <?php echo base64_encode(sha1("some text")); // MzdhYTYzYzc3Mzk4ZDk1NDQ3MzI2MmUxYTAwNTdjMWU2MzJlZGE3Nw== echo base64_encode(sha1("some text", true)); // <-- how to reproduce it on the nodejs? // N6pjx3OY2VRHMmLhoAV8HmMu2nc= ?> |
1 2 | > crypto.createHash('sha1').update("some text").digest('base64') 'N6pjx3OY2VRHMmLhoAV8HmMu2nc=' |