用信鸽来解释HTTPS

Yolov5自定义图片训练测试及模型调优(详细过程) Yolov5自定义数据训练及测试1. 图像数据获取、标注2. 数据集划分及准备3. 配置训练参数,准备训练:3.1 修改data/训练配置xxx.yaml文件:3.2 修改models模型配置xxx.yaml文件4. 开始训练5. 测试训练后的模型: 1. 图像数据获取、标注 如果自定义训练自己的数据集,首先需要数据标注,至于数据来源可以是下载现有的开发数据集、拍照、爬虫等等。 如果是拍照、爬虫等获取的数据图片,需要进行数据标注,这个过程可以使用工具来做,但也需要一些手动操作 。。并且图片越多越好,如果 阅读详情

  密码学是一门难以理解的学科,因为它充满了数学定力。但是除非你要实际开发出一套加密算法系统,否则你是没必要强制理解哪些深奥的数学定理的。

  如果你月度本文的目的是享受涉及下一套HTTPS协议,那我只能抱歉的说本文的知识远远不够;如果不是的话,那么就煮杯咖啡,轻松愉悦的月度本文吧。

                                                                  

  爱丽丝、鲍伯和......信鸽?

  你在互联网上从事的任何活动(阅读这篇文章、在小猫小狗上购物、上传图片等)归结到底都是从某天服务器上发送和接受信息。

  这个说起来可能有点抽象,不然让我们假设这些消息都是由信鸽来传递的。我知道这个假设有些太过随意,但相信我HTTPS就是这样工作的,尽管它的速度快的多。

  我们先不谈服务器、客户端或者黑客攻击,先来聊一下爱丽丝、鲍伯和马洛里。如果这已不是你第一次接触密码学理论,你应该会认识这些名字,因为他们经常在各种密码学文献中被提及。

一个简单的通信方式

  如果爱丽丝想给鲍伯发个消息,她会把消息绑在信鸽的腿上寄给鲍伯。然后鲍伯收到了消息,并阅读了它。这一切都是美好的。

  但如果马洛里拦截了爱丽丝飞翔中的信鸽并且修改消息内容呢?鲍伯将无法知道爱丽丝发来的消息已经在传输过程中被修改了。

  这就是HTTP的工作方式,很可怕吧?我们在日常的购物支付中绝不会愿意通过HTTP发送我的银行凭证。

隐蔽密码

  那么如果爱丽丝和鲍伯都非常的机智。他们一致认同使用一种隐蔽的密码来书写他们的信息。他们会将信息中的每个字母按照字母表中的顺序前移三位。比如,D->A,B-->E,C-->F之类的规则破译信息的内容。加密后的信息“pbzobq jbppxdb”会被破解还原为“secret message”。

 搞定!

  这就是对称密钥加密,因为如果你知道如何加密一段信息那么你同样可以解密这段信息。

  上述的密码通常被称为凯撒码。在现实生活中,我们会使用更为奇特和复杂的密码,但原理相同。

我们如何决定密钥?

  如果除了发信者和收信者之外没有人知道使用的是什么密钥,对称密钥加密是非常安全的。在凯撒加密中,密钥就是每个字母变到加密字母需要移动多少位的偏移量。我之前的距离中,使用的偏移量是3,但是也可以用4或者8。

  问题是如果爱丽丝和鲍伯在开始用信鸽传信之前没有碰过头,他们没有一个安全的方式来确立密钥。如果他们自己来在心中传递密钥,马洛里就会结果信息并发现密钥。这就使得马洛里可以在爱丽丝和鲍伯开始加密他们的信息之前或之后,阅读到他们信息的内容并按照她的意愿来篡改信息。

  这是一个中间人攻击的典型例子,避免这个问题的唯一方法就是收发信的两方一起修改他们的编码系统。

 

通过信鸽传递盒子

  所以爱丽丝和鲍伯就相处了一个更好的系统。当保暖哦想要给爱丽丝发送信息时,他会按照如下的步骤来进行:

  •     鲍伯向爱丽丝送一个没有写到任何信息的鸽子。
  • 爱丽丝给鲍伯送回鸽子,并且这只鸽子带有一个有开着的锁的盒子,爱丽丝保管着锁的钥匙。
  • 鲍伯把信放进盒子中,把锁锁上然后把盒子送给爱丽丝。
  • 爱丽丝收到盒子,用钥匙打开然后月度信息。

  这样马洛里就不能通过截获鸽子来篡改信息了,因为她没有打开盒子的钥匙。当爱丽丝要给鲍伯发送消息的时候同样按照上述的流程。

  爱丽丝和鲍伯所使用的流程通常被称为非对称密钥加密。之所以称之为非对称,是因为即使是你把信息编码(锁上盒子)也不能破译信息(打开锁住的盒子)。

  在术语中,盒子被称为公钥,而用来打开盒子钥匙被称为私钥。

 

如何信任盒子

  如果你稍加注意你就会发现还是存在问题。当鲍伯收到盒子时,他如何能确认这个盒子来时爱丽丝而不是马洛里截获了鸽子,然后换了一个她有钥匙能打开的盒子呢?

  爱丽丝决定签名标记一下盒子,这样鲍伯收到盒子的时候就可以检查签名来确定是爱丽丝送出的盒子了。

  那么你们之中的一些可能就会想了,鲍伯如何打一开始就能识别出爱丽丝的签名呢?这是个好问题。爱丽丝和鲍伯也确实有这个问题,所以他们决定让泰德代替爱丽丝来标记这个盒子。

  那么谁是泰德呢?泰德很有名,是一个值得信任的家伙。他会给任何人签名并且所有人都信任他知会给合法的人签名标记盒子。

  如果泰德可以确认索要签名的人是爱丽丝,他就会在爱丽丝的盒子上签名。因此马洛里就不可能搞到一个有着泰德代表爱丽丝签了名的盒子,因为鲍伯知道泰德知会给他确认过的人签名,从而识破马洛里的轨迹。

  泰德的角色在术语中成为认证机构(CA)。而你月度此文时所用的浏览器打包存有许多认证机构的签名。

  所以当你首次接入一个网站的时候,你可以信任来自这个站点的盒子,因为你信任泰德,而泰德会告你盒子是合法的。

沉重的盒子

  现在爱丽丝和鲍伯有了一个可靠的系统来进行交流,然他们也意识到让鸽子携带盒子比原本只携带信件要慢一些。

  因此他们决定只有在传递用对称加密来给信息编码(凯撒加密法)的密钥时,使用传递盒子的方法(非对称加密)。

  这样就可以二者的有点兼具了,非对称加密的可靠性和对称加密的高效性。

  现实世界中我们不会用信鸽这样慢的送信手段,但用非对称加密来编码信息仍要鳗鱼使用对称加密技术,所以我们只有在交换编码密钥的时候会使用非对称加密技术。

  现在你已经了解了HTTPS是如何工作的了,你的咖啡也应该准备熬了,好好享用吧,你受之无愧。

  

 

 

 

物联网与人工智能项目实战:构建智能农业监控系统 智能农业监控系统通过物联网技术实时监测农业环境中的各项数据(如土壤湿度、温度、光照强度等),并利用人工智能技术分析和预测农业生产的趋势,进而为农民提供决策支持。系统的核心目标是提高农作物的产量和品质,同时减少资源浪费,优化农田管理。环境监测:实时采集农田的温湿度、土壤湿度、光照等环境数据。作物生长监测:通过传感器和图像识别技术监测作物的生长状况。智能灌溉系统:根据土壤湿度和气候条件自动调整灌溉量。病虫害检测与预警:利用人工智能和图像识别技术自动检测作物病虫害,并及时给出预警。数据分析与决策支持。 阅读详情

相关推荐

基于FSL的DTI数据预处理流程

最近在学习处理DTI数据,总结了一份应用FSL做DTI数据预处理的流程与大家交流交流。如果有错误的地方欢迎大家指正!        我用的数据是Philips的数据,如果是GE或者西门子的数据可能会有所不同。   原始数据:包括3DT1数据和高分辨率DTI数据,均是dicom格式。 工具:MRICRON和FSL,所有的命令均在Linux的终端中运行。   1.格式转换:将后缀名为dcm

zaza_zaza的博客 2万+

用信鸽解释HTTPS

密码学可能是一门很难理解的学科。它充满了数学证明。但是,除非您实际上正在开发密码系统,否则大部分的复杂性对于理解高层次上发生的事情都是不必要的。如果您打开这篇文章希望创建下一个 HTTPS 协议,很抱歉,鸽子是不够的。否则,冲泡咖啡并欣赏这篇文章。

xuejianxinokok的专栏 446

NCCL 源码深度解析:从初始化到通信链路构建全流程

本文深入解析了NVIDIA Collective Communication Library (NCCL) 的核心工作机制,从通信组初始化、硬件拓扑发现,到P2P、共享内存及网络传输链路的构建。详细剖析了源码中集合通信任务的执行流程与Proxy线程的协同机制,为开发者进行高性能分布式训练的性能调优与深度问题排查提供了清晰的底层视角。

hp777的博客 551

用信鸽来解释 HTTPS

来自:开源中国社区链接:oschina.net/translate/https-explained-with-carrier-pigeons原文:https://medium.freecodecamp.org/https-explained-with-carrier-pigeons-7029d2193351密码学是一门难以理解的学科,因为它充满了数学定理。但是除非你要实际开发出一套加密算法系统,否...

珍惜 448

RoCE Overlay

1. RoCE over vxlan 配置vxlan封装的RoCE流量,可以在PF switchdev模式下利用ovs bridge,或直接设置tc rules。下面将基于一对NIC互联的服务器介绍两种方式的使用,并分析封装后的数据包结构。 1.1. 基本配置 - VF与switchdev 首先创建VF,并为两个host设置PF的switchdev模式。使用ovs bridge或tc rules,...

sunshuying1010的博客 3063

在Modelsim中手动添加仿真库

缘由:在使用rom ip核的时候发现仿真需要altera_mf库的支持,而我的ModelSim没有这个库,所以想写一篇手动添加仿真库的文章方便自己以后使用:首先新建一个库,名字叫做altera_mf:然后编译对应的库文件:这里altera_mf.v文件是在quartus安装路径下quartus\eda\sim_lib文件夹下,点击编译后退出:最后在modelsim->example文件夹下可以找到编译好的库文件:

欢迎一起交流问题! 3402

通过信鸽来解释 HTTPS

通过信鸽来解释 HTTPS 原创: 伯乐在线 Linux爱好者 今天 (点击上方公号,快速关注我们)   编译:伯乐在线/tsteho   密码学可能是一个难以理解的主题。它充满了数学证明。除非你真的需要开发密码系统,否则,如果你只想从宏观的角度了解密码学,你并不需要理解这些复杂的内容。   如果你抱着能够创建下一个 HTTPS 协议的期望打开这篇文章,我不得不遗憾地表示只有信...

Turbyun的博客 308

Ubuntu升级遇到grub-efi-amd64-signed安装失败?3步搞定这个烦人错误

本文深度解析Ubuntu系统升级时grub-efi-amd64-signed安装失败并提示“cannot find EFI directory”错误的根本原因。该错误通常由EFI系统分区挂载异常、BIOS/UEFI引导模式不匹配或dpkg包状态死锁导致。文章提供了三步精准修复流程:首先检查并修复ESP分区挂载,其次处理dpkg依赖问题,最后针对传统BIOS系统提供适配方案,帮助用户安全彻底地解决这一常见升级难题。

r7s8t的博客 398

[译] [转载]用信鸽来解释HTTPS

原文密码学是一个很难理解的学科,它里面全都是满满的数学证明。但其实如果你不是真的在开发一个密码系统,只是想要宏观地理解一下发生了什么的话,密码学里面很多复杂的东西是没有必要的。如果你打开这个文章是想要创造出下一个 HTTPS 协议的话,我只能很抱歉地告诉你只靠鸽子可能是不够了... 但是如果不是的话,你可以煮一杯咖啡然后享受这篇文章了。

shaozheng0503的博客 210

自动识别象棋棋子的OpenCV应用

在计算机视觉领域,OpenCV是一个广泛应用的开源计算机视觉库,它提供了丰富的图像处理和分析工具。本文将介绍如何使用OpenCV实现自动识别象棋棋子的功能,并提供相应的源代码。通过以上代码,我们可以实现对棋盘图像中棋子的自动识别。需要注意的是,以上代码只是一个简单的示例,实际应用中可能需要根据具体情况进行参数调整和算法优化,以获得更好的识别效果。函数利用预处理后的图像,寻找图像中的轮廓,并根据轮廓的面积筛选出可能的棋子轮廓,最后在原图像中提取棋子区域。在主程序中,我们读取输入图像,并调用。

WzisTypescript的博客 908

基于STM32、HAL库的 CH9102X USB转UART收发器 驱动程序设计

/ 或 UART_HWCONTROL_RTS_CTS。// 其他函数实现类似,使用HAL_UART_Transmit_IT, HAL_UART_Receive_IT等。UART_TXD <---> USARTx_RX (STM32接收)UART_RXD <---> USARTx_TX (STM32发送)* @param huart: UART句柄指针。* @param huart: UART句柄指针。* @param huart: UART句柄指针。* @param huart: UART句柄指针。

corlin6688的博客 506

[译] 用信鸽来解释HTTPS

密码学是一个很难理解的学科,它里面全都是满满的数学证明。但其实如果你不是真的在开发一个密码系统,只是想要宏观地理解一下发生了什么的话,密码学里面很多复杂的东西是没有必要的。如果你打开这个文章是想要创造出下一个 HTTPS 协议的话,我只能很抱歉地告诉你只靠鸽子可能是不够了... 但是如果不是的话,你可以煮一杯咖啡然后享受这篇文章了。

m0_50000213的博客 182

【乐企-工具篇】有关乐企发票文件生成- OFD和PDF文件生成

有关乐企发票文件生成-OFD和PDF文件生成

九七的博客 2054

【翻译】以信鸽解释HTTPS

现在如果 Mallory 拦截了鸽子,她就不能把信息变成有意义的东西,也不能理解它说了什么,因为她不知道密码。所以马洛里不能的到一个由泰德代表她签名的爱丽丝盒子,因为鲍勃会知道这个盒子是一个骗局,因为泰德只有在验证了人们的身份之后才会在盒子上签名。在我们的示例中,我们使用了3的偏移量,但也可以使用4或12。爱丽丝和鲍勃也有这个问题,所以他们决定代替爱丽丝签名的盒子,泰德将签名的盒子。因此,当你第一次连接到一个网站时,你相信它的信息框,因为你相信 Ted,而 Ted 告诉你这个信息框是合法的。

Nil的博客 184

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

信鸽demo使用说明_HTTPS用信鸽解释

信鸽demo使用说明by Andrea Zanin 由Andrea Zanin HTTPS用信鸽解释 (HTTPS explained with carrier pigeons) Korean translationPortuguese translationSpanish translationMongolian translationPersian translationVietnames...

cumian9828的博客 386

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

[翻译]用信鸽解释HTTPS协议

https

xichuanxc的博客 599

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

上一篇: #define用法详解
下一篇: 电子签名的认证、防篡改机制是怎么实现的?
Simple_Man_Just
博客等级 码龄11年 18粉丝 43原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值