chewing的作业——数字信封实现文件传输

article/2025/9/4 19:10:05

文件安全传输系统设计作业

通信模式:端到端通信

数字信封:

  对称密码优点是加解密运算非常快,适合处理大批量数据,但其密码的分发与管理比较复杂。而非对称密码算法的特点是公钥和私钥分离,非常适合密钥的分发和管理。如果将对称密码算法和非对称密码算法的优点结合起来,则既能处理大批量数据,又能简化密钥的分发与管理,于是数字信封机制应运而生。

  数字信封并不需要分发和管理对称秘钥,而是随机产生对称密钥,采用对称密码算法对大批量数据进行加密,并采用非对称密码算法对该对称密钥进行加密;解密时,先用非对称密码算法解密后获得对称秘钥,然后使用对称密码算法解密后获得数据明文。

  数字信封的功能类似于普通信封,采用对称密码算法对消息进行加密类似于信纸上的内容,采用非对称密码算法对对称密码算法对对称秘钥加密类似的信封,信封将信纸抱起来,保证了消息的安全性。

  其大致流程如下。

  • 首先由CA给通信双方A和B分发公私钥对。这里我们将A视作消息的发出方,B视作消息的接收方。
  • 双方进行对称密钥协商:

在这里插入图片描述

  • 发送方流程图:

在这里插入图片描述

  • 接收方流程图:

在这里插入图片描述

系统与其他通信方式对比

即时通信

  即时通讯由于具有及时性的特点,需要较低的延迟。从用户的角度,用户希望即时通讯可以像是面对面交流一样。因此在早期,即时通信软件多数是没有进行数据的加密处理,只是以明文的方式把A的消息转发给B。而现在现在的IM软件大多实现了客户端与服务器间的加密通信,尽管采用的加密算法各不相同,一般是将使用服务器公钥进行加密后的信息传送到服务器,服务器用自己的密钥解密后再使用对话者的公钥加密并发送到对方客户端。

  而从安全和保密性的角度来看,最好的方式还是端到端加密(E2EE):端到端加密直接使用对话者的公钥进行加密,服务器方(如果存在服务器的话)只负责传递消息,并不能知道消息的具体内容。

电子邮件

  电子邮件主要由四个部分组成:

  • MUA:邮件使用者代理人。

MUA一般指的是我们平时用来收发邮件的一个工具,它的功能就是用来收发邮件服务器上的邮件。最常见的如微软的outlook、Foxmail等等;

  • MTA:邮件传输代理。

指的是一般含义上的邮件服务器,也就是邮件传送代理人,它的主要功能包括:发送邮件,接收来自于外部的邮件,还可以让使用者撤回邮件;

  • MDA:邮件递送代理。

它属于邮件服务器的一部分,能够将MTA收到的邮件,按照一定的流向放置到本地账户的收件箱中去;另外一方面,如果邮件的流向是本机,它还有邮件分析过滤的功能,从而去过滤一些很显著的垃圾邮件;

  • Mailbox:收件箱。

邮件主机上面的一个目录,供某人专用的邮件的接收处。以unix为例,系统管理员root默认的信箱位置位于/var/spool/mail/root,当MTA收到发送给root的邮件,就会把这封邮件放到这个目录下面。

  电子邮件采用的协议主要有:

  • SMTP协议

它是发送邮件的协议,使用25号端口工作发信时,MUA会主动连接邮件服务器的25号端口,和邮件服务器展开会话,从而去发信。

当MTA转发邮件时,会经由下一个MTA的25号端口,通过SMTP协议将信转发出去。

  • POP3协议和IMAP协议

二者都是用于收邮件的协议,POP3使用110端口,IMAP使用143号端口。收信由MUA通过POP3、IMAP协议连接到MTA使用者的收件箱,MUA经由MTA的110\143号端口,将信件由MTA的收件箱收到本地的MUA上。

安全性分析

  电子邮件和即时通讯存在很多相同的安全问题。

  电子邮件协议在设计初期,由于只考虑的便利性和功能性,并未过多的考虑安全性,所以存在相当多的安全问题,诸如钓鱼软件等等。我们不能很清楚的知道消息的来源等。

  即时通信软件则存在信息泄露的危险,中间服务器很轻松的可以知道我发送的消息的内容没虽然服务器生成我们只是负责转发信息,但是由服务器负责加解密的这种方式还是很让人没有安全感。

  电子信封则实现了一个端到端的通信,通过对加密方案的调整等,可以实现不同程度的安全性。但是在获得了更高的安全性的同时,方案的效率、成本,用户的体验等等都会受到影响。

对加密方案的调整等,可以实现不同程度的安全性。但是在获得了更高的安全性的同时,方案的效率、成本,用户的体验等等都会受到影响。


http://chatgpt.dhexx.cn/article/pIJeIobk.shtml

相关文章

什么又是数字证书?(数字证书与数字签名什么关系?)数字信封、PGP又是啥?

什么是非对称加密? 什么是信息摘要? 什么是数字签名? 本节我们接着上面的内容继续,话说有了非对称加密技术、有了信息摘要技术、也有了数字签名技术,信息的安全传输是不是就万无一失了呢? 其实并不完全&a…

sm2格式数字信封加解密详解

sm2格式数字信封 0、参考链接 密码行业标准化技术委员会http://www.gmbz.org.cn/main/bzlb.html SM2密码算法使用规范http://www.gmbz.org.cn/main/viewfile/2018011001400692565.html SM2密码算法应用分析https://blog.csdn.net/arlaichin/article/details/23708155?utm_so…

数字签名和数字信封的比较

参考博客:数字签名与数字信封流程 相同点 都使用了非对称算法对密钥进行了加密 数字签名 重点:防止文本被篡改,防止抵赖 发送方将文本取摘要,再生成一个密钥对摘要加密,同时该密钥使用自己的私钥进行非对称加密&am…

密码学~~~数字信封

#本文仅供参考有不足之处请指出 一、概括 数字信封是公钥密码体制在实际中的一个应用,是用加密技术来保证只有规定的特定收信人才能阅读通信的内容。数字信封的功能类似于普通信封,普通信封在法律的约束下保证只有收信人才能阅读信的内容;数…

数字信封工作原理

数字信封是指发送方使用接收方的公钥来加密对称密钥后所得的数据,其目的是用来确保对称密钥传输的安全性。采用数字信封时,接收方需要使用自己的私钥才能打开数字信封得到对称密钥。 数字信封的加/解密过程如图1-19所示。甲也要事先获得乙的公钥&#xf…

RSA+AES数字信封加解密设计

登录认证、鉴权这些都做好了过后。就开始我们的加密设计了、这里采用了简化数字信封进行加密。首先客户端(浏览器)先请求一份RSA非对称密钥、如果我们采用了openresty或者有能力在nginx开发C模块的插件,就可以在这里保留一份用户的私钥&#…

数字信封加密

OpenSSL 是目前 PHP 甚至是整个开发圈中的数据加密事实标准,包括 HTTPS/SSL 在内的加密都是它的实际应用, OpenSSL 提供了对称和非对称加密的形式,也就是我们日常中最普遍的两种加密方式。 那么,它和 Hash 类的加密有什么不同吗&…

p7数字信封

PKCS7的数字信封格式分为两种:带签名的数字信封和不带签名的数字信封。由于这个数字信封的生成过程比较复杂,所以这两种格式比较容易记混,导致都搞不清楚一个数字信封里面到底是存储的什么内容了。下面我就详细的解释一下,这两种数…

数字信封原理

数字信封是指发送方使用接收方的公钥来加密对称密钥后所得的数据,其目的是用来确保对称密钥传输的安全性。采用数字信封时,接收方需要使用自己的私钥才能打开数字信封得到对称密钥。 数字信封的加/解密过程如图所示。甲也要事先获得乙的公钥,…

PKCS7数字信封简述

1、数字信封的概念 数字信封,英文是Digital Envelope,望文生义,就可以知道将需要传递的数据,通过加密的方式包裹起来。 数字信封的准确定义,在《PKCS #7: Cryptographic Message Syntax Standard》标准的第10章中给出,原话是:“加密的内容,以及对内容解密的密钥被加密…

什么是数字信封?

一、什么是数字信封 数字信封是公钥密码体制在实际中的一个应用,是用加密技术来保证只有规定的特定收信人才能阅读通信的内容。 在数字信封中,信息发送方采用对称密钥来加密信息内容,然后将此对称密钥用接收方的公开密钥来加密(这…

数据来源渠道及采集工具_几款简单好用的爬虫抓取数据采集工具

新朋友点上方蓝字“Office交流网”快速关注 1. 火车头采集器 火车采集器我们也一直在用,是老牌的采集工具了。它不仅可做抓取工具,也可以做数据清洗、分析、挖掘已经可视化等工作。数据源可来源于网页,网页中能看到的内容和不可看到都可以通过…

爬虫抓取新浪微博数据

工具:云采爬虫 目标:抓取某个博主的全部微博 分析网页结构: 我们抓取的思路是模拟浏览器自动访问页面抓取。 我们来看一下页面结构,首先每个微博列表,必须进行三四次的下拉加载,如果底部有个翻页的按钮…

python3 爬虫抓取股市数据

python3 爬虫抓取股市数据 爬虫抓取数据的一般步骤代码运行结果小结注意事项 爬虫抓取数据的一般步骤 1、确定需要抓取的网站2、分析url,找到url的的变化规律3、分析页面的数据4、获取页面数据5、提取需要爬取的数据6、写入数据库或写入文件代码 import requests i…

Python_爬虫数据存入数据库(超详细过程

目录 一、新建项目 二、程序的编写 三、数据的爬取 一、新建项目 1.在cmd窗口输入scrapy startproject [项目名称] 创建爬虫项目 接着创建爬虫文件,scrapy genspider [爬虫名字] [爬虫域名] 打开pycharm项目,就可以看到生成的cblog.py文件 二、程序的…

爬虫抓取分页数据的简单实现

爬虫抓取分页数据的简单实现 昨天,我们已经利用Jsoup技术实现了一个简单的爬虫,原理很简单,主要是要先分析页面,拿到条件,然后就去匹配url,采用dome解析的方式循环抓取我们需要的数据,从而即可轻…

PHP爬虫抓取网页数据

2019年我接触到PHP爬虫的时候,我最开始是懵的。还有人用php来写爬虫? 一个月之后,嗯~全世界最好的语言写全世界最好的爬虫,真香!而在7月15这一个日常加班的晚上,做完手头的活,我寻思着写会儿php…

网络爬虫的基本结构是什么?如何建立网络爬虫抓取数据?

摘要:互联网上有很多丰富的信息可以被抓取并转换成有价值的数据集,然后用于不同的行业。比如企业用户利用电商平台数据进行商业分析,学校的师生利用网络数据进行科研分析等等。那么,除了一些公司提供的一些官方公开数据集之外&…

利用EXCEL进行数据爬虫

说到爬虫,相信大家出现在脑海中的一定是python。python在最近几年确实热火朝天,对于不会编程人员来说,利用好EXCEL一样也可以爬取一些简单的数据,并且方式非常简单。 1.爬取东方财富网上基金信息。网址为:基金收益排行…

利用Excel数据爬虫

1、在Excel里数据里打开自网站。 2、选择高级部分 URL部分和URL预览填写为目标(需要爬取数据的网址)的URL地址 命令超时选择1分钟即可。 HTTP请求标头参数 第一步点击网络 第二部点击消息头部 第三部找到User-Agent的value复制 3、最后点击加载 就…