信道编码的安全性理论

搞安全和密码的人,总有一个很头疼的问题:当一个方案安全性比较好时,效率就比较低;当提高效率后,安全性又会降低。我们总希望能找到一个平衡点。

信息安全理论中的保密容量(secrecy capacity)告诉我们,在满足安全性条件下,会存在一种编码来保证正常的通信效率。为了把这个解释清楚,接下来,我们将利用二进制擦除信道(binary erasure channel,BEC)来进行解释。

图 二进制擦除窃听信道

正式讲之前,先铺垫一个很常用的概念,叫疑义度(equivocation),这个概念是从窃听者的角度来看的。假定ALICE需要传送的明文为X,窃听者看到的码字为X,在已知X的前提下,明文X的条件商即为疑义度,如下:

equivocation=H(M|X)

密码学认为,已知密文不能获得关于明文的任何信息叫做完美保密(perfect secrecy)。信息论认为已知码字的条件熵与明文熵相等,则为完美保密,如下:

H(M|X)=H(M)

现在来看一个窃听模型。假定ALICE-BOB的信道是无错的,但窃听信道是二进制擦除信道,擦除的概率为\epsilon

一. 假如ALICE不使用任何信道编码算法

如果ALICE想向BOB传递一个比特,很明显EVE只有在信道未擦除时,才能获得这个比特。也就是EVE正确获得这个比特的概率是1-\epsilon,那么刚才谈到的条件熵该怎么算呢?

对于一个离散的随机变量X,其概率分布为P_X,熵(或者叫香农熵)计算如下:

H(X)=-\sum_x P_X(x) log P_X(x)

信息论安全中的对数底数都为2,所以,其实香农熵的单位是比特。简单理解就是负概率乘以概率的对数值,再相加。

要想计算条件熵,得先求联合熵,如下:

H(XY)=-\sum_x\sum_y P_{XY}(x,y)logP_{XY}(x,y)

最后就是条件熵的计算公式了:

H(Y|X)=H(XY)-H(X)

对窃听者而言,疑义度的本质就是求条件熵。我们来实践下。

假定消息M为均匀分布:

消息M01
概率\frac{1}{2}\frac{1}{2}

消息M的熵为:

H(M)=-(\frac{1}{2}log(\frac{1}{2})*2)=1

也就是原始消息有1比特的熵。

窃听者收到码字的分布为:

码字X01?(代表擦除)
概率\frac{1}{2}(1-\epsilon)\frac{1}{2}(1-\epsilon)\epsilon

码字X的熵为:

H(X)=-(2*\frac{1}{2}(1-\epsilon)log(\frac{1}{2}(1-\epsilon))+\epsilon log\epsilon)

消息M与码字X的联合分布,如下:

联合分布(0,0)(0,?)(1,1)(1,?)
概率\frac{1}{2}(1-\epsilon)\frac{1}{2}\epsilon\frac{1}{2}(1-\epsilon)\frac{1}{2}\epsilon

H(MX)=-(2*\frac{1}{2}(1-\epsilon)log(\frac{1}{2}(1-\epsilon))+2*\frac{1}{2}\epsilon log(\frac{1}{2}\epsilon))

条件熵计算如下:

H(M|X)=H(MX)-H(X)=-\epsilon log(\frac{1}{2}\epsilon)+\epsilon log\epsilon=\epsilon

其实对窃听者而言,不确定的量就是信道会不会把某个比特擦除,直观上也可以得到疑义度为\epsilon(我们刚才算了这么久的内容居然这么简单直观)。

也就是,如果ALICE不对明文比特进行信道编码,EVE总能获得一些信息,这是我们不想看到的。于是有了“二”。

二. ALICE使用信道编码算法

假设ALICE将明文0或1,编码成一个n长的比特串。当M=0,则为偶数校验比特;当M=1时,则为奇数校验比特(这个就是我们常说的奇偶校验码)。

当BOB通过无错信道收到该码字时,通过观察奇偶校验位,则可以直接恢复出明文比特。

反过来看EVE,对他而言,n个比特擦除的概率互不干扰,擦除的平均值为n\epsilon(这个值很隐晦,与通常的概率论不太一样)。只要其中有一个比特被擦除了,那么EVE就恢复不了明文消息。EVE犯错的概率为:

1-(1-\epsilon)^n

这个概率将直接反应EVE的不确定度,所以可得如下条件熵:

H(M|Z^n)\geq 1-(1-\epsilon)^n

很明显,当n趋于无穷大时,该值趋近于1。也就是说当码字长度足够大时,可以得到该条件熵与原始信息熵相等,这不就实现了信息论中的完美安全。很遗憾,传输码率为1/n,当n趋近于无穷大是,码率也接近为0了。安全性和效率需要进行取舍。

三. 推广

以上模型中,我们是假设EVE为BEC信道,BOB为完美无错信道,推导出的信道编码结论。实际上,也可以让BOB为BEC信道,但是要求BOB出错的概率小于EVE出错的概率,也就是通常所说的窃听信道质量要差一些。在这种情况下,借助信道编码理论,BOB在恢复原始明文信息时,仍然会具有一些优势。当然,目前讨论的完美安全都是渐近性的(n趋近于无穷大)。

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

AD20基础操作

1、编译检查项 需要重点检查的,设置为致命错误 点击Messages查看编译结果: 2、添加封装 快捷键M,选择X,Y移动选择对象 编辑偏移量后确定。 另一种快捷方式: CtrlD查看3D模型

【数据结构】树状数组算法总结

知识概览 树状数组有两个作用: 快速求前缀和 时间复杂度O(log(n))修改某一个数 时间复杂度O(log(n)) 例题展示 1. 单点修改,区间查询 题目链接 活动 - AcWing本活动组织刷《算法竞赛进阶指南》,系统学习各种编程算法。主要面向…

自助式可视化开发,ETLCloud的集成之路

自助式可视化开发 自助式可视化开发是指利用可视化工具和平台,使非技术人员能够自主创建、定制和部署数据分析和应用程序的过程。 传统上,数据分析和应用程序开发需要专业的编程和开发技能。但是,自助式可视化开发工具的出现,使…

《ThreadLocal使用与学习总结:2023-12-15》史上最详细由浅入深解析ThreadLocal

由浅入深全面解析ThreadLocal 目录 由浅入深全面解析ThreadLocal简介基本使用ThreadLocal与synchronized的区别ThreadLocal现在的设计(JDK1.8)ThreadLocal核心方法源码分析ThreadLocalMap源码分析弱引用与内存泄露(内存泄漏和弱引用没有直接关…

cleanmymac有必要买吗 macbook空间不足怎么办 清理macbook磁盘空间

大家早上好,中午好,下午好,晚上好。 文章有点长,建议先收藏。 macbook是一款非常受欢迎的笔记本电脑,它拥有优秀的性能和设计,但是也有一个常见的问题,就是磁盘空间不足。如果你的macbook经常…

【技术前沿】数字孪生技术助推城市智慧供热:探讨换热站3D可视化的创新之路

换热站作为供热系统不可或缺的一部分,其能源消耗对城市环保至关重要。在双碳目标下,供热企业可通过搭建智慧供热系统,实现供热方式的低碳、高效、智能化,从而减少碳排放和能源浪费。 通过应用物联网、大数据等高新技术&#xff0…

ST股票预测模型(机器学习_人工智能)

知己知彼,百战不殆;不知彼而知己,一胜一负;不知彼,不知己,每战必贻。--《孙子兵法》谋攻篇 ST股票 ST股票是指因连续两年净利润为负而被暂停上市的股票,其风险较高,投资者需要谨慎…

移动端事件

一、移动端事件类型 touchstart:手指按下事件,类似 mousedowntouchmove:手指移动事件,类似 mousemovetouchend 手指抬起事件,类似 mouseup var box document.querySelector(.container); box.addEventListener(touc…

Echarts实现3D柱状图

Echarts实现3D柱状图 效果图代码 效果图 代码 <!--此示例下载自 https://echarts.apache.org/examples/zh/editor.html?cbar3d-dataset&gl1 --> <!DOCTYPE html> <html lang"en" style"height: 100%"> <head><meta chars…

新年跨年烟花超酷炫合集【内含十八个烟花酷炫效果源码】

❤️以下展示为全部烟花特效效果 ❤️下方仅展示部分代码 ❤️源码获取见文末 🎀HTML5烟花喷泉 <style> * {padding:0;margin:0; } html,body {positi

oracle与gbase8s迁移数据类型对照

声明&#xff1a;以下为笔者阅读gbase官方文档和oracle官方文档的理解&#xff0c;如有错误&#xff0c;敬请指正。oracle与gbase8s迁移数据类型对照及举例说明 最终结论&#xff1a;oracle与gbase8s数据类型对应关系关于单精度与双精度的区别关于定点与浮点定义的区别精度的定…

<软考高项备考>《论文专题 - 16 资源管理(二) 》

4 过程2-估算活动资源 4.1 提出问题 问题过程2-活动资源估算做什么估算执行项目所需的团队资源&#xff0c;以及材料、设备和用品的类型和数量的过程&#xff1b;作用&#xff1a;明确完成项目所需的资源种类、数量和特性为什么做资源不同影响项目进度也不同。活动估算资源是…