网络安全中常用的几种加密方式是什么
发布时间 - 2021-01-08 00:00:00 点击率:次下面是网络传输中常用的几种加密方式:
(学习视频分享:编程视频)
提示:这些加密涉及明文传输的,需要在https协议上加密传输。
1、密钥散列
采用MD5或者SHA1等散列算法,对明文进行加密(这里的加密仅对人,不对机器,因为这些算法机器可以用对应算法算出来)
优点:防篡改
适用场景:普通文件下载
缺点:不具备安全性,可认证性
2、对称加密
优点:安全、可认证
适用场景:收发方数量固定,密钥使用对象少
缺点:BS网络传输关系,密钥过多难维护,除非对密钥进行加密传输
3、非对称加密
3.1、接收方发送公钥(保证数据完整性)
前提:首次通信时发送方接收了接收方的公钥,并保存在本地
3.2、发送方发送公钥(保证发送方认证)
前提:首次通信时接收方接收了发送方的公钥,并保存在本地
4、数字签名
适用场景:登录认证
缺点:不具备足保密性
速记
对称算法
对称算法(SymmestricAlgorithm).Create()=>
Provider.CreateEncryptor()
Provider.CreateDecryptor()
CryptoStream(Stream stream,ICrytoTransform transform,CryptoStreamMode mode):
CryptoS
tream(encryptedSteam,encryptor,CryptoStreamMode.Write)//加密 准备读取 空encryptedSteam准备被写入
CryptoStream(encryptedSteam,decryptor,CryptoStreamMode.Read)//解密 准备写入 密文流encryptedSteam准备被读取
非对称加密
非对称加密(ASymmistricAlgorithm):
Provider provider
provider.ToXmlString(true);//获得公私钥对
provider.ToXmlString(false);//获得公钥
provier.FromXmlString(publicKeyXml);
provier.FromXmlString(privateKeyXml);
provider.Encrypt();
provider.Decrypt();
实例:
对称加密:
string key = "abc";
string sendContent="你好!";
var byteKey = Encoding.UTF8.GetBytes(key);
var byteIV = Encoding.UTF8.GetBytes(key);//加密算法初始化向量
DESCryptoServiceProvider des = new DESCryptoServiceProvider();//使用des加密
byte[] bytesContent = Encoding.UTF8.GetBytes(sendContent);
MemoryStream ms = new MemoryStream();
CryptoStream cs = new CryptoStream(ms, des.CreateEncryptor(byteKey, byteIV), CryptoStreamMode.Write);
cs.Write(bytesContent, 0, bytesContent.Length);
cs.FlushFinalBlock();相关推荐:网站安全教程
# 网络安全
# 对象
# transform
# 算法
# https
# 公钥
# 首次
# 非对称
# 并保存
# 网络传输
# 可以用
# 几种
# 对人
# 不具备
# 算出来
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
公司门户网站制作公司有哪些,怎样使用wordpress制作一个企业网站?
如何使用 Go 正则表达式精准提取括号内首个纯字母标识符(忽略数字与嵌套)
Laravel API资源类怎么用_Laravel API Resource数据转换
EditPlus中的正则表达式 实战(4)
Laravel如何与Vue.js集成_Laravel + Vue前后端分离项目搭建指南
百度浏览器如何管理插件 百度浏览器插件管理方法
Laravel Eloquent访问器与修改器是什么_Laravel Accessors & Mutators数据处理技巧
如何挑选优质建站一级代理提升网站排名?
Laravel项目如何进行性能优化_Laravel应用性能分析与优化技巧大全
如何快速上传自定义模板至建站之星?
如何用景安虚拟主机手机版绑定域名建站?
如何快速搭建高效服务器建站系统?
矢量图网站制作软件,用千图网的一张矢量图做公司app首页,该网站并未说明版权等问题,这样做算不算侵权?应该如何解决?
html5如何设置样式_HTML5样式设置方法与CSS应用技巧【教程】
Laravel如何设置自定义的日志文件名_Laravel根据日期或用户ID生成动态日志【技巧】
JavaScript如何实现继承_有哪些常用方法
Edge浏览器如何截图和滚动截图_微软Edge网页捕获功能使用教程【技巧】
Laravel Eloquent性能优化技巧_Laravel N+1查询问题解决
EditPlus 正则表达式 实战(3)
Laravel的契約(Contracts)是什么_深入理解Laravel Contracts与依赖倒置
如何解决hover在ie6中的兼容性问题
laravel怎么为API路由添加签名中间件保护_laravel API路由签名中间件保护方法
Laravel如何生成URL和重定向?(路由助手函数)
Internet Explorer官网直接进入 IE浏览器在线体验版网址
js实现获取鼠标当前的位置
Win10如何卸载预装Edge扩展_Win10卸载Edge扩展教程【方法】
如何在香港服务器上快速搭建免备案网站?
装修招标网站设计制作流程,装修招标流程?
深圳防火门网站制作公司,深圳中天明防火门怎么编码?
javascript如何操作浏览器历史记录_怎样实现无刷新导航
如何用PHP工具快速搭建高效网站?
Laravel如何实现图片防盗链功能_Laravel中间件验证Referer来源请求【方案】
Laravel如何使用Service Container和依赖注入?(代码示例)
LinuxShell函数封装方法_脚本复用设计思路【教程】
javascript中对象的定义、使用以及对象和原型链操作小结
弹幕视频网站制作教程下载,弹幕视频网站是什么意思?
Laravel如何使用withoutEvents方法临时禁用模型事件
桂林网站制作公司有哪些,桂林马拉松怎么报名?
公司门户网站制作流程,华为官网怎么做?
laravel怎么实现图片的压缩和裁剪_laravel图片压缩与裁剪方法
如何用VPS主机快速搭建个人网站?
Laravel怎么实现模型属性的自动加密
HTML5打空格有哪些误区_新手常犯的空格使用错误【技巧】
深入理解Android中的xmlns:tools属性
Laravel怎么调用外部API_Laravel Http Client客户端使用
如何用美橙互联一键搭建多站合一网站?
免费网站制作appp,免费制作app哪个平台好?
Python企业级消息系统教程_KafkaRabbitMQ高并发应用
Laravel怎么生成二维码图片_Laravel集成Simple-QrCode扩展包与参数设置【实战】
Laravel如何实现登录错误次数限制_Laravel自带LoginThrottles限流配置【方法】

