• crypto加密


    /* hash.js */
        var crypto = require('crypto');
    module.exports = function(){
         this.encode = function(){
              var algorithm  = arguments[0] ? arguments[0] : ''
            , enstring   = arguments[1] ? arguments[1] : ''
            , returnType = arguments[2] ? arguments[2] : '';
          if( algorithm ){
               var hash = crypto.createHash(algorithm);
               hash.update(enstring);
               return hash.digest(returnType);
          }
          console.log('Please input encryption param');
     }
    }
     
    /* target.js */
    module.exports = function(){
            this.encode = function(){}
            this.decode = function(){}
    }
     
    /* adapter.js */
     
    var util = require('util'),
        Target = require('./target');
     
    function Adapter(){
            Target.call(this);
            this.encode = function(){
                    var encodeModule = arguments[0] ? arguments[0] : null
                      , algorithm    = arguments[1] ? arguments[1] : ''  
                      , enstring     = arguments[2] ? arguments[2] : ''
                      , returnType   = arguments[3] ? arguments[3] : ''
                      ,AdapteeClass = require("./" + encodeModule)
                      ,adapteeObj = new AdapteeClass();
                      return adapteeObj.encode(algorithm, enstring, returnType, encodeKey, encodeType);
            }
    }
     
    util.inherits(Adapter,Target);
    module.exports = Adapter;
     
    /* test.js */
    var AdapterClass = require('./adapter');
    var Adapter = new AdapterClass();
    var hashEncodeStr = Adapter.encode('hash', 'md5', 'yuejide', 'hex');
    console.log(hashEncodeStr);
     
    var http = require('http');
    var crypto = require('crypto')
    http.createServer(function(req,res){
     res.writeHead(200, {'Content-Type' : 'text/html'});
     var md5 = crypto.createHash('md5');
     var passwd = md5.update('admin').digest('hex');
     res.end(passwd);
    }).listen(8888);
  • 相关阅读:
    iOS新手在引入第三方出现的几个小问题
    XMPP安装中遇到需要卸载openfire的步骤
    KVC
    SQLite错误码
    简单对象的本地化(以图片为例)
    使用MD5完成自定义Person对象的加密过程
    IOS--工作总结--post上传文件(以流的方式上传)
    IOS开发系列 --- 核心动画
    监听键盘 防止输入时覆盖掉textfiled
    比较选择的开始时间和结束时间的大小
  • 原文地址:https://www.cnblogs.com/gide/p/4448891.html
Copyright © 2020-2023  润新知