网络信息传输安全

目录

机密性-加密

对称加密

非对称加密

身份认证

摘要算法和数据完整性

数字签名 签名验签

数字证书

申请数字证书所需信息

数字证书的生成

数字证书的应用 https协议

数字证书的申请


数据在网络中传输过程中,怎么做到

  1. 数据没有被篡改?hash算法
  2. 信息发送者的身份认证?用发送者的私钥对数据进行加密,接收者只能用发送者的公钥进行解密。发送者的公钥怎么给到接收者?如果还是用网络进行传输,无法保证公钥本身的传输安全啊?比如,A用RSA算法生成了自己的一对公钥、私钥,A把信件的内容用hash算法生成摘要,用私钥加密摘要信息形成数字签名,在网络上发送信件的时候,A的公钥,信件本身,数字签名三者会在网络上进行传输,黑客可以截获到这些信息,黑客用新生成的一对公钥,私钥,重新生成数字签名,给到接收者,接收者收到的就是黑客篡改过的内容了
  3. 怎么确保信息发送者的身份没有被截获篡改?用数字证书证明发送者的身份。数字证书由发送者向权威机构申请,包含了身份信息(发送者的公钥)。
  4. 怎么保证数字证书的安全?数字证书是经过ca机构数字签名的,ca机构也生成一对公钥、私钥,用私钥对发送者的公钥及一些信息进行数字签名,放入数字证书当中,此时数字证书就相当于发送者的身份信息、公钥和数字签名的组合,在个人的电脑或手机里安装根证书,根证书中记录了可以信赖的ca机构和其对应的公钥,就可以用公钥去验证数字证书的内容,从而确认发送者的公钥是自己的。

机密性-加密

对称加密

AES加密算法,密钥长度128、192或256,安全强度很高,性能很好 

加密分组模式:将明文分组加密,微信支付中使用 AEAD_AES_256_GCM

非对称加密

 使用公钥加密后只能用私钥解密,反过来,私钥加密后也只能用公钥解密 

RSA加密算法:最著名的非对称加密算法

身份认证

公钥加密私钥解密,可以确保数据的机密性

私钥加密公钥解密,可以进行身份的认证

摘要算法和数据完整性

hash值一直表示文件内容没有被篡改过

常见的摘要算法:md5、sha1、sha2(sha224、sha256、sha384)

数字签名 签名验签

  1. A要发邮件给B,A把自己的信件内容用摘要算法,生成摘要
  2. A用自己的私钥加密摘要,形成一份签名,追加到信件中
  3. B收到信件,先把信件的内容用相同的hash算法,生成摘要1
  4. B把信件中的签名,用A的公钥加密,生成摘要2
  5. 比对两份摘要,如果一致,可以说明信件没有被篡改过,并且是A发的信件

B怎么拿到的A的公钥?如果也是通过网络进行传输,又可能被黑客截取篡改,怎么办?

数字证书

公钥信任问题,黑客可能伪造公钥,这个怎么办呢?把公钥放到数字证书中,数字证书需要向有社会公信力的CA机构进行申请,申请时需要提供身份信息

申请数字证书所需信息

数字证书的生成

  1. A向ca机构申请数字证书,填入相关的身份信息和A的公钥
  2. ca机构把A的公钥和身份信息hash运算后,用自己生成的私钥加密形成数字签名
  3. 把生成的数字签名追加到数字证书中颁布给A

  1. bob发送的信件,包含数字证书、数字签名和内容
  2. pat拿到信件,用自己本地安装的ca机构的公钥解密数字证书,获取bob用自己的公钥和身份信息生成的hash值,用相同的hash算法也生成hash值,比对,如果一致证明公钥是bob的
  3. 用拿到的bob的公钥再去解密信件内容,剩下的步骤就和上面的一样了

数字证书的应用 https协议

网站想要使用https

数字证书的申请

  免费的数字证书申请可访问Let's Encrypt

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/882741.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

基于PHP的新闻管理系统

作者:计算机学姐 开发技术:SpringBoot、SSM、Vue、MySQL、JSP、ElementUI、Python、小程序等,“文末源码”。 专栏推荐:前后端分离项目源码、SpringBoot项目源码、SSM项目源码 系统展示 【2025最新】基于phpMySQL的新闻管理系统。…

[js逆向学习] fastmoss电商网站——店铺排名

逆向目标 网站:https://www.fastmoss.com/shop-marketing/tiktok接口:https://www.fastmoss.com/api/shop/shopList/参数:fm-sign 逆向分析 我们今天要分析的是店铺排名,先分析网络请求,找到目标接口 按照上图操作…

JUC高并发编程2:Lock接口

1 synchronized 1.1 synchronized关键字回顾 synchronized 是 Java 中的一个关键字,用于实现线程间的同步。它提供了一种简单而有效的方式来控制对共享资源的访问,从而避免多个线程同时访问同一资源时可能出现的竞态条件(race condition&am…

.net core8 使用JWT鉴权(附当前源码)

说明 该文章是属于OverallAuth2.0系列文章,每周更新一篇该系列文章(从0到1完成系统开发)。 该系统文章,我会尽量说的非常详细,做到不管新手、老手都能看懂。 说明:OverallAuth2.0 是一个简单、易懂、功能强…

LeetcodeTop100 刷题总结(二)

LeetCode 热题 100:https://leetcode.cn/studyplan/top-100-liked/ 文章目录 八、二叉树94. 二叉树的中序遍历(递归与非递归)补充:144. 二叉树的前序遍历(递归与非递归)补充:145. 二叉树的后序遍…

你的提交信息还在拖后腿?看这里,提升代码质量的绝招!

文章目录 前言一、什么是约定式提交?二、创建新仓库三、将代码推送到远程仓库的步骤1.检查当前远程仓库2.添加代码到暂存区3. 进行约定式提交4. 推送代码到远程仓库5. 完成推送 总结 前言 在当今软件开发领域,Git已经成为最广泛使用的版本控制系统之一。…

java算法OJ(1)位运算

目录 1.前言 2.正文 2.1位运算符号 2.1俩数相除 2.1.1题目 2.1.2示例 2.1.3题解 2.2二进制求和 2.2.1题目 2.2.2示例 2.2.3题解 2.3只出现一次的数字 2.3.1题目 2.3.2示例 2.3.3题解 2.4只出现一次的数字(进阶版) 2.4.1题目 2.4.2示例…

【ComfyUI】控制光照节点——ComfyUI-IC-Light-Native

原始代码(非comfyui):https://github.com/lllyasviel/IC-Light comfyui实现1(600星):https://github.com/kijai/ComfyUI-IC-Light comfyui实现2(500星):https://github.c…

cobbler自动批量安装多版本操作系统

本次虚拟化环境为VMware Workstation Pro,cobbler服务端为CentOS7.9,需要自动安装的版本为CentOS7.9和CentOS8.1 目录 一、安装cobbler服务端1、修改YUM源2、关闭防火墙3、安装软件包4、cobbler环境配置5、解决语法问题6、启动服务7、导入镜像8、自定义…

Spring自定义参数解析器

在这篇文章中,我们认识了参数解析器和消息转换器,今天我们来自定义一个参数解析器。 自定义参数解析器 实现HandlerMethodArgumentResolver的类,并注册到Spring容器。 Component//注册到Spring public class UserAr…

统信服务器操作系统【Cron定时任务服务】

Cron定时任务服务服务介绍、服务管理、服务配置 文章目录 一、功能概述二、功能介绍1. Cron 服务管理2.Cron 服务管理3.Cron 服务配置run-parts一、功能概述 cron是一个可以用来根据时间、日期、月份、星期的组合来 调度对周期性任务执行的守护进程。利用 cron 所提供的功能,可…

第十四届蓝桥杯嵌入式国赛

一. 前言 本篇博客主要讲述十四届蓝桥杯嵌入式的国赛题目,包括STM32CubeMx的相关配置以及相关功能实现代码以及我在做题过程中所遇到的一些问题和总结收获。如果有兴趣的伙伴还可以去做做其它届的真题,可去 蓝桥云课 上搜索历届真题即可。 二. 题目概述 …

七种修复错误:由于找不到msvcr110.dll 无法继续执行的方法

当你在运行某些程序时遇到“找不到msvcr110.dll”的错误提示,这通常意味着你的系统缺少了Microsoft Visual C 2012 Redistributable包中的一个重要文件。这个DLL文件是Microsoft Visual C Redistributable的一部分,用于支持许多使用Visual C编写的软件和…

Elasticsearch:检索增强生成背后的重要思想

作者:来自 Elastic Jessica L. Moszkowicz 星期天晚上 10 点,我九年级的女儿哭着冲进我的房间。她说她对代数一无所知,注定要失败。我进入超级妈妈模式,却发现我一点高中数学知识都不记得了。于是,我做了任何一位超级妈…

多颜色绘制语义分割/变化检测结果图

在论文绘图时,传统的二元语义分割结果图颜色单一(下图左),所以论文中常根据混淆矩阵类别使用多颜色进行绘制(下图右),可以看到,结果的可视化效果更好。 以下是绘制代码: …

Windows系统的Tomcat日志路径配置

文章目录 引言I Windows系统的Tomcat日志路径配置配置常规日志路径访问日志路径配置,修改server.xmlII 日志文件切割:以分隔割tomcat 的 catalina.out 文件为例子通过Linux系统自带的切割工具logrotate来进行切割引言 需求:C盘空间不足,处理日志文件,tomcat日志迁移到D盘…

Java基础知识扫盲

目录 Arrays.sort的底层实现 BigDecimal(double)和BigDecimal(String)有什么区别 Char可以存储一个汉字吗 Java中的Timer定时调度任务是咋实现的 Java中的序列化机制是咋实现的 Java中的注解是干嘛的 Arrays.sort的底层实现 Arrays.sort是Java中提供的对数组进行排序的…

信用卡存量经营读书笔记

信用卡的各项收益和损失分析表 用杜邦分析法拆利润如下 信用卡要不要烧钱?不要,因为没有网络效应(用户量增加带来的优惠比较少)和赢家通吃的情况 线上获客的几种方式:引流分成、某个项目的联名信用卡、营业收入分成 …

爬虫到底难在哪里?

如果你是自己做爬虫脚本开发,那确实难,因为你需要掌握Python、HTML、JS、xpath、database等技术,而且还要处理反爬、动态网页、逆向等情况,不然压根不知道怎么去写代码,这些技术和经验储备起码得要个三五年。 比如这几…

【D3.js in Action 3 精译_023】3.3 使用 D3 将数据绑定到 DOM 元素

当前内容所在位置: 第一部分 D3.js 基础知识 第一章 D3.js 简介(已完结) 1.1 何为 D3.js?1.2 D3 生态系统——入门须知1.3 数据可视化最佳实践(上)1.3 数据可视化最佳实践(下)1.4 本…