建议使用以下浏览器,以获得最佳体验。 IE 9.0+以上版本 Chrome 31+ 谷歌浏览器 Firefox 30+ 火狐浏览器
请选择 进入手机版 | 继续访问电脑版
设置昵称

在此一键设置昵称,即可参与社区互动!

确定
我再想想
选择版块
直达楼层
标签
您还可以添加5个标签
  • 没有搜索到和“关键字”相关的标签
  • 云产品
  • 解决方案
  • 技术领域
  • 通用技术
  • 平台功能
取消

采纳成功

您已采纳当前回复为最佳回复

ttking

发帖: 455粉丝: 27

发消息 + 关注

发表于2021年04月30日 16:26:44 125 1
直达本楼层的链接
楼主
显示全部楼层
[技术干货]  一次一密加密原理

# 1.起源  一次一密密码(one-time pad)最早是由Major Joseph Mauborgne和AT&T公司的Gilbert Vernam在1917年发明的。原理简单,使用便捷,其安全原理是基于信息传递,双方的密钥是随机变化的,每次通讯双方传递的明文都使用同一条临时随机密钥和对称算法进行加密后方可在线路上传递。因为密钥一次一变,且无法猜测,这就保证了线路传递数据的绝对安全。即使拥有再大的破解计算能力,在没有密钥的前提下对线路截取的密文也是无能为力的。 # 2. 存在的问题    这套方案在当时的背景下,还是比较完美的解决了线路数据传递的安全问题。但也同样存在着不可忽略的问题,即**通讯双方密钥同步问题**。这点很好理解,早先的一次一密密码的实现,需要通讯双方保存一个相同的密码集,每个密码集中拥有N条随机密钥,每次通讯顺序使用其中的密钥。但双方的密码集中相同序号的密钥必须是完全一样的,否则密文无法被正确还原。所以一旦其中一个密码集泄露,那这套加密系统自然就被破解了。这就导致密码集的维护成本极高,且存在安全风险。     时至今日,基于对称加密算法实现的安全方案,不论加密算法自身的安全强度多高,但最核心安全的依然是密钥安全存储与使用,一次一密密码技术在现今使用的非常广泛。不论是银联加密系统,还是远程视频加密等应用都会涉及到。这其中的关键技术就是密钥的下发与安全存储和销毁。下发过程是多种多样的,但多数使用了密文方式进行密钥更新。 # 3.示例1    下面简述一种应用方法。A、B双方在已建立互信机制的前提下,分别应用LKT硬件加密芯片存储一条线路保护密钥KEY_pro。每次通讯之前,A利用加密芯片产生N字节随机数作为数据加密密钥KEY_en并存储于RAM之中,在加密芯片内部经KEY_pro加密后生成密文C1,A将C1发送给B后,经加密芯片内部的KEY_pro解密还原出KEY_en并存储于加密芯片RAM中。每次A、B双方正式通讯前,都经过上述操作完成密钥同步,然后利用KEY_en对通讯数据加密传递,这就实现了一次一密码的安全方案,同时解决了密钥存储维护的难题。之所以这样说,是因为加密芯片自身具有高安全等级,可有效防止暴力破解等数据破解方式,保证内部数据存储与运行安全。线路传递数据的加解密都在芯片内部完成,保证线路安全。最主要的是加密算法可灵活选择,利用LKT加密芯片的可编程特点,能够自由切换加密密钥和加密算法,让一次一密,一次多密或者多次多密的应用都变成可能,打开了嵌入式应用开发人员的思维模式,让安全变得更贴近应用 # 4.示例2 ``` A、B两同学一组进行验证: A: I. 随意写一段明文(中英文均可) II. 找一段大段的文字材料,从中选取密钥(长度需大于明文),例如从第三段第20个字符开始作为密钥,加密明文 III. 密文发给B,同时告诉B约定的密钥,如“xxx文章三段20字” B:解密测试,AB验证结果。 ``` ![image.png](https://bbs-img.huaweicloud.com/data/forums/attachment/forum/202104/30/162632udcwmukecp10fo7u.png) ———————————————— 本文为CSDN博主「linksafe2014」的原创文章 原文链接:https://blog.csdn.net/linksafe2014/article/details/83822502
举报
分享

分享文章到朋友圈

分享文章到微博

采纳成功

您已采纳当前回复为最佳回复

极客潇

发帖: 521粉丝: 70

发消息 + 关注

发表于2021年04月30日 16:30:25
直达本楼层的链接
沙发
显示全部楼层

感谢分享

点赞 评论 引用 举报

游客

富文本
Markdown
您需要登录后才可以回帖 登录 | 立即注册

结贴

您对问题的回复是否满意?
满意度
非常满意 满意 一般 不满意
我要反馈
0/200