当前位置: 首页 > news >正文

结合量子技术解决数据传输安全

初级代码游戏的专栏介绍与文章目录-CSDN博客

我的github:codetoys,所有代码都将会位于ctfc库中。已经放入库中我会指出在库中的位置。

这些代码大部分以Linux为目标但部分代码是纯C++的,可以在任何平台上使用。


        接前篇:数采网关面临的安全挑战-CSDN博客

目录

一、为什么现在的传输不安全

二、非对称加密算法解决了什么问题

三、非对称加密算法和对称加密算法的关系

四、非对称密钥怎么就不行了

五、量子通讯

六、量子密钥分发

七、量子密钥和量子随机数


一、为什么现在的传输不安全

        使用固定密钥的存在密钥泄露的风险(比如使用社工攻击)。
        使用固定密钥的可以通过大量数据来破解(高智商分析或大型计算机计算)。
        量子计算机在未来可以轻松破解我们现在认为不可能破解的加密算法。

二、非对称加密算法解决了什么问题

        通过互联网传输信息最头疼的是初始密钥的传递,非对称加密算法利用神奇的数学解决了这个问题:
密钥A加密-》只能用密钥B解密
密钥B加密-》只能用密钥A解密
        每个人都自己生成一对密钥A和B,密钥A自己藏好,密钥B公开,给别人发送信息时用别人的密钥B加密,则只有拥有对应的密钥A的人才能解密,这样其他人就无法窃取信息。
        密钥A称为“私钥”,密钥B称为“公钥”,公钥一般交给CA保管(CA会盖个章,盖章后的公钥文件叫做证书,“盖章”就是签名,签名的意思是用CA自己的私钥加密,CA的公钥则是操作系统内置的),私钥要自己保存,现在流行的做法是用专用芯片(windows上叫做TPM),芯片可以生成公钥和私钥,也可以保存私钥,芯片的设计保证私钥不可能被读取、只能加密解密。

三、非对称加密算法和对称加密算法的关系

        非对称加密算法特别慢(但并不意味着更安全,安全性和密钥长度、运算方法有关),并不适合对大量数据加密,实际中非对称加密算法主要用来给对称密钥加密,也就是随机生成一个对称密钥,用非对称加密算法加密对称密钥,传输给对方,然后后面都只用对称密钥了。

四、非对称密钥怎么就不行了

        非对称密钥解决了互联网传递密钥的问题,是过去几十年互联网传输安全的基础。但是量子计算机已经在路上,量子计算机理论上能够在很短时间内破解非对称密钥(目前的量子计算机的量子位数量尚不足,但未来可期),到那时整个互联网就垮了。

五、量子通讯

        利用量子纠缠可以实现理论上绝对安全的通讯(量子隐形传态),但是只能用在量子计算机之间,所以这个距离现实比较远。

六、量子密钥分发

        非对称密钥算法即将被量子计算机破解,因此需要一种新的密钥分发方法。
        利用量子的不可复制(错误的测量方式得到错误的结果,以此结果伪造新量子得不到原来的状态)和测量会破坏量子态,发送方随机选择一个量子态进行调制(携带一个信息),接收方也随机选择一个量子态进行测量,如果接收方选择的量子态正确,那么将得到一个确定的结果(得到了发送方发送的信息),如果选错了,得到随机的结果(这个结果会被丢弃),或者被偷听了,得到错误的结果(测量会破坏量子态)或者丢失(未知量子不可复制),发送足够多量子之后,双方用传统方式告诉对方自己选择的是那些测量方法(量子上携带的信息并不传输,因此只有发送方和接收方知晓),那些方法一致的信息就可以作为后续传输信息的密钥的基础(传统方式),双方再进行纠错,比如公布一半数据,如果完全一致,说明没有被偷听,另一半就可以作为可靠密钥,如果错误太多,说明被偷听或传输故障,放弃。
        量子密钥分发解决的是密钥分发问题,而且必须使用量子传输——一般是用光子,通过真空、空气直线传播或者光纤。

七、量子密钥和量子随机数

        生成密钥依赖随机数,现在的随机数算法多数是“伪随机数”,与一定的预设条件相关,如果预设条件完全相同,就会生成相同的随机数——从而就不随机了。
        最常用的rand函数以一个整数作为种子(srand函数设置,默认是0),同一个种子会生成完全相同的随机序列,所以这是典型的伪随机数。
        因为伪随机数有规律可循,因此容易被破解,根据既往数值猜到下一个数值。
        利用量子可以生成完全随机的“真随机数”,用真随机数生成密钥就不可能被预测到下一个数值。
        已经有量子芯片可以生成量子随机数(如三星发布的“量子加密手机”内置量子随机数生成芯片)。
        通过量子随机数可以得到密钥,或可称为量子密钥,但是“量子密钥”一般指的是“量子密钥分发”。


(这里是文档结束)


(当年《量子力学》考了91分的我当然无法理解“量子密话”是什么)


(你们别老点赞了,其实我是持负面态度的) 

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • Flink 单机部署
  • 利用ce修改器进行漏洞挖掘(内存修改)
  • AI在医学领域:谷歌的HeAR生物声学模型
  • SQL Server事务日志文件过大的处理方法
  • 以简单的例子从头开始建spring boot web多模块项目(二)-mybatis简单集成
  • 运维-1.日志
  • 保姆级-C#与Halcon的窗体界面展示阈值分割图像教程(机器视觉保姆级教程)
  • 献给正在挣扎中的技术人!
  • Linux设置内网时间同步
  • C语言offsetof宏
  • Sublime Text 配置 Terminal (CMD)
  • 查看和访问信号记录数据
  • 【C语言】循环
  • 安装webman/admin记录
  • 采用ELK搭建日志平台,安装elasticsearch-head
  • 《微软的软件测试之道》成书始末、出版宣告、补充致谢名单及相关信息
  • Git同步原始仓库到Fork仓库中
  • Java 23种设计模式 之单例模式 7种实现方式
  • Java小白进阶笔记(3)-初级面向对象
  • leetcode386. Lexicographical Numbers
  • node-glob通配符
  • Python利用正则抓取网页内容保存到本地
  • react 代码优化(一) ——事件处理
  • 大快搜索数据爬虫技术实例安装教学篇
  • 对JS继承的一点思考
  • 飞驰在Mesos的涡轮引擎上
  • 湖南卫视:中国白领因网络偷菜成当代最寂寞的人?
  • 前端之Sass/Scss实战笔记
  • 优秀架构师必须掌握的架构思维
  • 在 Chrome DevTools 中调试 JavaScript 入门
  • ​​快速排序(四)——挖坑法,前后指针法与非递归
  • ​ssh-keyscan命令--Linux命令应用大词典729个命令解读
  • ​你们这样子,耽误我的工作进度怎么办?
  • ‌U盘闪一下就没了?‌如何有效恢复数据
  • # 飞书APP集成平台-数字化落地
  • ###51单片机学习(1)-----单片机烧录软件的使用,以及如何建立一个工程项目
  • #HarmonyOS:软件安装window和mac预览Hello World
  • (03)光刻——半导体电路的绘制
  • (bean配置类的注解开发)学习Spring的第十三天
  • (Demo分享)利用原生JavaScript-随机数-实现做一个烟花案例
  • (差分)胡桃爱原石
  • (动态规划)5. 最长回文子串 java解决
  • (四)事件系统
  • (一)搭建springboot+vue前后端分离项目--前端vue搭建
  • (转)PlayerPrefs在Windows下存到哪里去了?
  • (转)程序员疫苗:代码注入
  • .[backups@airmail.cc].faust勒索病毒的最新威胁:如何恢复您的数据?
  • .bat批处理(十):从路径字符串中截取盘符、文件名、后缀名等信息
  • .NET 4 并行(多核)“.NET研究”编程系列之二 从Task开始
  • .NET 4.0中使用内存映射文件实现进程通讯
  • .net 8 发布了,试下微软最近强推的MAUI
  • .NET 中 GetHashCode 的哈希值有多大概率会相同(哈希碰撞)
  • .Net--CLS,CTS,CLI,BCL,FCL
  • .NET高级面试指南专题十一【 设计模式介绍,为什么要用设计模式】
  • ::前边啥也没有