主要介绍两种加密方法:对称加密和非对称加密
对称加密:加密和解密过程使用同一个秘钥。加密过程等价于用原文+秘钥得到传输的密文,解密过程等价于密文+秘钥推导出原文。
常见算法有: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. 【总结+计划】2015一月份总结+2015二月份计划——全栈实践
  2. Python3使用tkinter编写GUI程序
  3. MySql入门使用:登录及简单创建查询表
  4. JavaScript从内容中筛选出手机号码集合
  5. 理解vue赋值新属性
  6. python 语言教程(1)前言
  7. 程序员如何做好技术规划?
  8. Highlighting System
  9. linux 负载命令,通过Linux命令查看系统平均负载的方法
  10. 【SDK】Memory read error at 0xF8007080
  11. SAP License:再论分摊与分配(含实例)
  12. iOS中如何添加自定义的字体库
  13. MFC下如何定义全局变量和全局函数
  14. 项目服务接口设计_Spring Boot Security 整合 OAuth2 设计安全API接口服务
  15. CentOS 关闭防火墙selinux
  16. 携程中转机票竟然相差23小时
  17. android 来电自动接听和自动挂断
  18. mysql修改指定记录_sql操作之修改记录值
  19. RestTemplate获取HTTP状态码
  20. 小米笔记本触摸板失效

热门文章

  1. 梦幻江湖java_梦幻江湖BT增值版
  2. 2021年熔化焊接与热切割复审考试及熔化焊接与热切割
  3. ubuntu启动,提示引导丢失
  4. (一)编译Ardupilot得到apj固件-bug汇总-2021-07
  5. ChatAudio 通过TTS + STT + GPT 实现语音对话(低仿微信聊天)
  6. mac开启ssh服务
  7. pycharm安装opencv-python报错
  8. ResNeXt算法详解
  9. 微软OneDrive 免费云盘容量有多大?坑爹15GB 太小、太慢
  10. 手机支付安全解决方案演进