主要介绍两种加密方法:对称加密和非对称加密
对称加密:加密和解密过程使用同一个秘钥。加密过程等价于用原文+秘钥得到传输的密文,解密过程等价于密文+秘钥推导出原文。
常见算法有:DES、AES…
优点:加密和解密速度较快,耗时短,适合数据较长时使用;秘钥可自定义。
缺点:无法保证秘钥被安全传递,密文在传输过程中可能被第三方截获,如果秘钥也被截获,则传输的密码信息会被推导出,安全性较低

AES秘钥在线

const CryptoJS = require('crypto-js')
// AES加密
function aesEncrypt(data, keys, ivs) {const res = CryptoJS.AES.encrypt(data, CryptoJS.enc.Utf8.parse(keys), {iv: CryptoJS.enc.Utf8.parse(ivs), // 偏移量,可不加mode: CryptoJS.mode.CBC, // 加密模式padding: CryptoJS.pad.Pkcs7, // 填充方式})return res.toString()
}// AES解密
function desDecrypt(data, keys, ivs) {const res = CryptoJS.AES.decrypt(data, CryptoJS.enc.Utf8.parse(keys), {iv: CryptoJS.enc.Utf8.parse(ivs), // 偏移量,可不加mode: CryptoJS.mode.CBC, // 解密模式padding: CryptoJS.pad.Pkcs7, // 填充方式})return res.toString()
}

非对称加密:加密和解密过程使用两个秘钥,一般使用公钥进行加密,私钥进行解密。
常见算法有:RSA、背包算法、ECC…
优点:使用一对秘钥,公钥用来加密,私钥用来解密,不需要像对称加密那样同步秘钥,而且只能通过私钥来推导公钥,反之则不能,安全性较高
缺点:加密和解密花费的时间较长、速度较慢,适合对少量数据的使用。

RSA秘钥在线生成

import JSEncrypt from 'jsencrypt'
const pubKey = 'xxx' // 公钥
const priKey = 'xxx' // 秘钥
// RSA加密
function rsaEncrypt(data){const encrypt = new JSEncrypt()  // 创建加密对象实例encrypt.setPublicKey(pubKey) // 设置公钥return encrypt.encrypt(data) // 对内容加密
}// RSA解密
function rsaDecrypt(data){const decrypt = new JSEncrypt()  // 创建加密对象实例decrypt.setPrivateKey(priKey) // 设置秘钥return decrypt.decrypt(data) // 对加密内容解密
}

非对称加密和对称加密的区别
前端利用jsencrypt.js进行RSA加密

对称加密和非对称加密的区别与使用相关推荐

  1. http协议与https协议+UDP协议和TCP协议+WebSocket协议下服务端主动去发送信息+对称加密与非对称加密+get和post请求方式区别详解+浏览器内核以及jsj解析引擎

    TCP和UDP协议是TCP/IP协议的核心. 在TCP/IP网络体系结构中,TCP(传输控制协议,Transport Control Protocol).UDP(用户数据报协议,User Data P ...

  2. 2020-09-23: 对称加密与非对称加密的区别,哪个更安全?为什么?

    2020-09-23: 对称加密与非对称加密的区别,哪个更安全?为什么? 前言 对称加密与非对称加密的区别,哪个更安全?为什么? 前言 每日一题专栏 对称加密与非对称加密的区别,哪个更安全?为什么? ...

  3. 对称加密和非对称加密介绍和区别

    什么是对称加密技术? 对称加密采用了对称密码编码技术,它的特点是文件加密和解密使用相同的密钥,即加密密钥也可以用作解密密钥,这种方法在密码学中叫做对称加密算法,对称加密算法使用起来简单快捷,密钥较短, ...

  4. 对称加密与非对称加密的区别_https原理及对称加密、非对称加密、数字证书、数字签名的含义...

    一.为什么要使用https 使用https的原因其实很简单,就是因为http的不安全. 当我们往服务器发送比较隐私的数据(比如说你的银行卡,身份证)时,如果使用http进行通信.那么安全性将得不到保障 ...

  5. mysql对称连接什么意思_对称加密与非对称加密的区别是什么

    区别:1.对称加密中加密和解密使用的秘钥是同一个:非对称加密中采用两个密钥,一般使用公钥进行加密,私钥进行解密.2.对称加密解密的速度比较快,非对称加密和解密花费的时间长.速度相对较慢.3.对称加密的 ...

  6. 对称加密、非对称加密、RSA、消息摘要、数字签名、数字证书与 HTTPS 简介

    文章目录 1.加密算法简介 1.1 对称加密(Symmetric Key Algorithms) 1.2 非对称加密(Asymmetric Key Algorithms) 1.3 非对称加密 RSA ...

  7. 对称加密与非对称加密,以及RSA的原理

    一 , 概述 在现代密码学诞生以前,就已经有很多的加密方法了.例如,最古老的斯巴达加密棒,广泛应用于公元前7世纪的古希腊.16世纪意大利数学家卡尔达诺发明的栅格密码,基于单表代换的凯撒密码.猪圈密码, ...

  8. 面试题——对称加密和非对称加密

    面试题高频:https和http的区别,对称加密和非对称加密的了解. http 概念 http协议是应用层的协议,又称:超文本传输协议(Hypertext transfer protocal),是浏览 ...

  9. 对称加密和非对称加密是什么?

    本文内容如有错误.不足之处,欢迎技术爱好者们一同探讨,在本文下面讨论区留言,感谢. 文章目录 简述 术语 对称加密 非对称加密 区别 总结 参考资料 简述 在当今的网络世界中,存在着未经授权访问所有形 ...

最新文章

  1. redis cluster 安装配置
  2. 代码如何获取单反相机拍摄的照片_看看如何拍摄出更好的照片
  3. python字符编码讲解_python 字符编码讲解
  4. 几个受益终身的英文缩写
  5. 获取MySQL数据库表结构的信息(字段名,字段类型,注释等)
  6. 光电转换器有什么作用?光纤收发器如何保养?
  7. CSS学习笔记11 CSS背景
  8. puppet(2)-资源介绍
  9. Dom-Attribute对象
  10. 21天Jmeter打卡Day11配置元件之CSV数据文件配置
  11. SWMM模型代码LID(Low Impact Development)模块分析
  12. 吉首大学2019年程序设计竞赛(重现赛)A:SARS病毒(找规律 or 推公式+欧拉降幂+快速幂)
  13. HTML写简历表格及内容
  14. nginx访问返回504
  15. 让你快速了解外汇EA
  16. SD-WAN,一场广域网的革命
  17. android 仿iphone多任务管理效果,别羡慕苹果了,安卓悬浮神器比 iPhone 好用太多!...
  18. 《Head First HTML5 javascript》第7章 表单
  19. NER的过去、现在和未来综述-现在
  20. SpringBootApplication是哪三个注解

热门文章

  1. unity HLSL 面片火焰Shader V0.1
  2. mac 更改所有文件夹显示选项的方法
  3. 学生党毕业论文福利,参考文献的排版方法(利用bib文件的方式)
  4. hadoop集群启动命令
  5. CodeForces - 260 - BAncient Prophesy(暴力)
  6. 磁盘相关概念以及知识
  7. springboot集成Elasticsearch高亮显示(比较复杂)
  8. 树莓派 python 录音_树莓派 录音问题
  9. linux 的一些报错的解决方法(网卡1)
  10. 直播10 直播室 开张