返回顶部
首页 > 资讯 > 前端开发 > node.js >Node.js DES加密的简单实现
  • 355
分享到

Node.js DES加密的简单实现

简单Nodejs 2022-06-04 17:06:23 355人浏览 泡泡鱼
摘要

常见的加密算法基本分为这几类,1 :线性散列算法、2:对称性加密算法、3、非对称性加密算法 (记记记) 线性散列算法(签名算法):MD5,SHA1,HMac 比如MD5:即Message-Digest Al

常见的加密算法基本分为这几类,1 :线性散列算法、2:对称性加密算法、3、非对称性加密算法 (记记记)

线性散列算法(签名算法):MD5,SHA1,HMac

比如MD5:即Message-Digest AlGorithm 5(信息-摘要算法5),用于确保信息传输完整一致。

特点:

1、压缩性:任意长度的数据,算出的MD5值长度都是固定的。
2、容易计算:从原数据计算出MD5值很容易。
3、抗修改性:对原数据进行任何改动,哪怕只修改1个字节,所得到的MD5值都有很大区别。
4、强抗碰撞:已知原数据和其MD5值,想找到一个具有相同MD5值的数据(即伪造数据)是非常困难的。

MD5的作用是让大容量信息在用数字签名软件签署私人密钥前被"压缩"成一种保密的格式(就是把一个任意长度的字节串变换成一定长的十六进制数字串)

对称性加密算法:AES,DES,3DES

比如AES:(Advanced Encryption Standard)在密码学中又称Rijndael加密法,是美国联邦政府采用的一种区块加密标准。这个标准用来替代原先的DES,已经被多方分析且广为全世界所使用。

非对称性加密算法:RSA,DSA,ECC

比如RSA:RSA公开密钥密码体制。所谓的公开密钥密码体制就是使用不同的加密密钥与解密密钥,是一种“由已知加密密钥推导出解密密钥在计算上是不可行的”密码体制。
在公开密钥密码体制中,加密密钥(即公开密钥)PK是公开信息,而解密密钥(即秘密密钥)SK是需要保密的。加密算法E和解密算法D也都是公开的。虽然解密密钥SK是由公开密钥PK决定的,但却不能根据PK计算出SK。

NodeJS中的Crypto模块

node利用 OpenSSL库来实现它的加密技术,这是因为OpenSSL已经是一个广泛被采用的加密算法。它包括了类似MD5 or SHA-1 算法,这些算法你可以利用在你的应用中。

下面的代码使用Crypto模块DES算法的实现方法




var crypto = require('crypto');
var key = '12345670';
exports.des = {

  algorithm:{ ecb:'des-ecb',cbc:'des-cbc' },
  encrypt:function(plaintext,iv){
    var key = new Buffer(key);
    var iv = new Buffer(iv ? iv : 0);
    var cipher = crypto.createCipheriv(this.algorithm.ecb, key, iv);
    cipher.setAutoPadding(true) //default true
    var ciph = cipher.update(plaintext, 'utf8', 'base64');
    ciph += cipher.final('base64');
    return ciph;
  },
  decrypt:function(encrypt_text,iv){
    var key = new Buffer(key);
    var iv = new Buffer(iv ? iv : 0);
    var decipher = crypto.createDecipheriv(this.algorithm.ecb, key, iv);
    decipher.setAutoPadding(true);
    var txt = decipher.update(encrypt_text, 'base64', 'utf8');
    txt += decipher.final('utf8');
    return txt;
  }

};

使用DES加密解密方法


//加密
var cryptUtil = require("./utils/crypt");
var str = "/upload/image/201602120012.jpg";
var encrypt_text = cryptUtil.des.encrypt(str,0);
var decrypt_text = cryptUtil.des.decrypt(encrypt_text,0);
console.log(encrypt_text);
console.log(decrypt_text);

输出结果:

I+qwOsXQvBq18KVmX3ainoMHbs3nT+v64s

/upload/image/201602120012.jpg

以上这篇node.js DES加密的简单实现就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持编程网。

--结束END--

本文标题: Node.js DES加密的简单实现

本文链接: https://lsjlt.com/news/13013.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Node.js DES加密的简单实现
    常见的加密算法基本分为这几类,1 :线性散列算法、2:对称性加密算法、3、非对称性加密算法 (记记记) 线性散列算法(签名算法):MD5,SHA1,HMAC 比如MD5:即Message-Digest Al...
    99+
    2022-06-04
    简单 Node js
  • VB.NET如何实现DES加密
    这篇文章主要介绍了VB.NET如何实现DES加密,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。VB.NET DES加密代码:Imports System ...
    99+
    2023-06-17
  • 如何理解C#DES加密解密的实现
    这篇文章将为大家详细讲解有关如何理解C#DES加密解密的实现,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。C# DES加密解密的实现,DES算法为密码体制中的对称密码体制,由IBM公司研制的...
    99+
    2023-06-17
  • C#加解密之DES算法的实现
    目录前言实现功能开发环境实现代码实现效果前言 说完了对称加密中的AES,这一篇再来介绍下DES。 加解密原理什么的就不介绍了,大家可以自行百度(主要我也不太明白,也不需要太明白),大...
    99+
    2024-04-02
  • java实现的DES加密算法详解
    本文实例讲述了java实现的DES加密算法。分享给大家供大家参考,具体如下:一、DES加密算法介绍要求密钥必须是8个字节,即64bit长度因为密钥是byte[8] , 代表字符串也可以是非可见的字节,可以与Base64编码算法一起使用加密、...
    99+
    2023-05-31
    java des 加密算法
  • c语言如何实现DES加密解密
    目录c语言实现DES加密解密C语言DES加密解密的认识以及解密出现乱码的分析Des加密Des加密模式填充方式保证加密解密的一致性 python中的des加密总结c语言实现DES加密解...
    99+
    2023-05-18
    c语言DES c语言加密解密 DES加密解密
  • Android数据加密之Rsa加密的简单实现
    最近无意中和同事交流数据安全传输的问题,想起自己曾经使用过的Rsa非对称加密算法,闲下来总结一下。 什么是Rsa加密? RSA算法是最流行的公钥密码算法,使用长度可以变化的密钥...
    99+
    2022-06-06
    加密 rsa Android
  • Java AES加密解密的简单实现方法
    废话不多说,直接上代码package com.mstf.aes; import java.io.UnsupportedEncodingException;import java.security.InvalidKeyException;im...
    99+
    2023-05-31
    java rsa 加密
  • Android实现简单MD5加密的方法
    本文实例讲述了Android实现简单MD5加密的方法。分享给大家供大家参考,具体如下: 网上关于android下MD5加密的资料很多,但是测试了下总是跟网站的md5加密不一样,...
    99+
    2022-06-06
    加密 方法 md5加密 Android
  • C#实现简单的字符串加密
    最近用到一些字符串加密,而.net中提供的加密算法中用起来比较复杂,便简单的封装了一下,方便日后使用。 public class Encrypt { ...
    99+
    2024-04-02
  • python基于pyDes库实现des加密的方法
    本文实例讲述了python基于pyDes库实现des加密的方法。分享给大家供大家参考,具体如下: 下载及简介地址:https://twhiteman.netfirms.com/des.html 如需要在py...
    99+
    2022-06-04
    方法 python pyDes
  • 详解vue的Des加密解密
    目录1.安装2.写工具类3.在需要的地方引用4.调用5.VUE的方式1.安装 npm install crypto-js@3.3.0 --save-dev 这样是安装固定版本3.3...
    99+
    2024-04-02
  • Java怎么实现对称加密DES和AES
    本文小编为大家详细介绍“Java怎么实现对称加密DES和AES”,内容详细,步骤清晰,细节处理妥当,希望这篇“Java怎么实现对称加密DES和AES”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。实验内容和要求采用...
    99+
    2023-07-05
  • java 实现MD5加密算法的简单实例
    java 实现MD5加密算法的简单实例实现代码:import java.security.NoSuchAlgorithmException; public class MD5HashUtil { private MessageDig...
    99+
    2023-05-31
    java md5 加密算法
  • 用java给文件加密的简单实现
    思路:文件加密,简单来说就是把文件读取出来,把读取出来的字节码数组进行遍历,把每一个码值和一个秘钥(随便一个数)进行异或运算,将运算后的结果全部写入到文件里。因为文件的码值全都做了改变,文件自然就无法打开了,这是加密过程。解密过程就是再执行...
    99+
    2023-12-23
    java
  • 详解DES加密算法的原理与Java实现
    目录DES加密算法DES加密原理DES 加密算法Java实现前面阿粉说了关于 MD5 加密算法,还有 RSA 加密算法的实现,以及他们的前世今生,今天阿粉在来说一下这个关于 DES ...
    99+
    2022-11-13
    Java DES加密算法 Java DES加密 Java DES
  • C#实现简单的文件加密与解密方式
    目录C#实现文件加密与解密C#进行url加密解密与jquery前端加密解密C#进行url加密与解密jquery总结C#实现文件加密与解密 代码: static class Handl...
    99+
    2023-01-28
    C#文件加密 C#文件解密 C#文件加密解密方式
  • JavaScript实现简单MD5加密的脚本分享
    目录1.什么是MD5加密2.为什么要使用MD5加密3.实现代码1.什么是MD5加密 MD5消息摘要算法(MD5 Message-Digest Algorithm),一种被广泛使用的密...
    99+
    2022-11-13
    JavaScript MD5加密 JavaScript MD5 JavaScript 加密
  • Java实现对称加密DES和AES的示例代码
    目录实验内容和要求参考代码实验内容和要求 采用Java实现采用对称密码算法的应用软件,所用算法包括DES算法和AES算法。要求该软件具有图形用户界面,能生成密钥,以及对字符串和文件进...
    99+
    2023-05-14
    Java实现对称加密DES AES Java对称加密DES AES Java对称加密 Java DES AES
  • MySQL如何实现密码加密认证的简单脚本
    小编给大家分享一下MySQL如何实现密码加密认证的简单脚本,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧! MySQL登录的...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作