信息安全数学基础(计算复杂性)课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《信息安全数学基础(计算复杂性)课件.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 信息 安全 数学 基础 计算复杂性 课件
- 资源描述:
-
1、信息安全数学基础(计算复杂性)2022-6-2第2章 信息安全数学基础(计算复杂性)2022-6-2计算复杂性基础2022-6-2古书孟子离娄上有这样的记载:淳于髡曰:男女授受不亲,礼與?孟子曰:礼也。曰:嫂溺则授之以手乎?曰:嫂溺不授,是豺狼也。男女授受不亲,礼也;嫂溺授之以手,权也。虽然有“男女授受不亲”的原则存在,但嫂子落水快淹死时,必须拉她、救她,这是“权”(变通),否则,见死不救,就是豺狼。曰:今天下溺矣,夫子之不援何也?曰:天下溺援之以道;嫂溺援之以手。子欲手援天下乎?计算复杂性 为什么要学习计算复杂性? 计算复杂性是研究密码分析对于计算量的需求和密码分析的困难程度 ,从而得出这些
2、密码技术和算法在现有可行的条件下是否具有足够的安全性。 学习计算复杂性,需要掌握两个概念: 问题 算法 2022-6-2问题(problem) (问题)定义:即需要回答的一般性提问: 它通常含有若干个参数。 对于一个问题进行描述应该包括两方面的内容: 必须对问题的所有给定参数给出一般性描述; 必须描述该问题的答案(或解)应该满足的性质。 当问题的所有参数都有了确定的取值时,我们称得到了该问题的一个实例(instance)。 2022-6-2算法(algorithm) 定义(算法) :即求解某个问题的一系列具体步骤(通常被理解为求解所需的通用计算程序)。 算法总是针对具体问题而言的,求解一个问题
3、的算法通常不止一个。 当某个算法能够回答一个问题的任何实例时,我们称该算法能够回答这个问题。 当一个问题至少有一个能够回答该问题的算法时,我们称该问题可解(resolvable),否则称该问题不可解(unresolvable)。 2022-6-2算法(algorithm)(续) 有关算法的几点注释: 算法总有输入和输出 算法输入大小一般用输入变量的长度(单位为位)来表示 一般来说,算法用某种编程语言来实现的计算机程序 一般来说,我们仅仅关注解决问题最有效的算法nlogn2当一个变量 用二进制来表示时,其长度2022-6-2问题与算法 问题:如何求解两个整数a和b的最大公约数? 参数:a和b 问
4、题实例:a20,b30 算法:利用因子分解求a20和b30的最大公约数 a225 b235 因此a和b 的最大公约数是25102022-6-2算法复杂性 (算法复杂度)定义:即度量该算法所需的计算能力 ,包括: 时间复杂性T(time complexity); 空间复杂性S(space complexity); 信道带宽; 数据总量; 2022-6-2算法复杂性(续) 计算复杂性的表示符号为计算复杂性的表示符号为“ O ”(称为(称为“大大O ”,即算法,即算法的阶号),表示计算复杂性的的阶号),表示计算复杂性的数量级数量级 好处:好处: 使算法复杂性度量与处理器的运行速度和指令运行时间无关;
5、使算法复杂性度量与处理器的运行速度和指令运行时间无关; 明确地揭示了输入的数据长度对算法复杂性的影响。明确地揭示了输入的数据长度对算法复杂性的影响。 2022-6-2算法复杂性(续) 算法常见复杂性分类 (1)常数算法(constant Algorithm): 如果运行时间是O (1),即该算法的复杂性不依赖于n。 (2)线性算法(linear Algorithm): 如果运行时间是O(n)。 (3)多项式算法(polynomial Algorithm): 如果运行时间是O(nm),其中m是一个常数。具有多项式复杂性的算法族被称为多项式时间算法。 (4)超多项式算法(superpolynomi
6、al Algorithm): 如果运行时间是,其中c是一个常数,而s(n)是关于n的大于常数而小于线性的函数。 (5)指数算法(exponential Algorithm): 如果运行时间是,其中t是大于1的常数,f(n)是关于n的多项式函数。2022-6-2算法复杂性(续) 算法常见复杂性分类 一般而言,常数算法、线性算法、多项式算法和超多项式算法统称为多项式算法。 所谓多项式,就是具有下列形式的一个函数:2022-6-21110( ).kkkkf nc ncnc nc其中,k和ck是常数,且ci称0为。当k0时,k称为多项式的次数,ci称为多项式的系数。 算 法 复 杂 性 算法的分类及其
7、运行时间 算法类型算法类型复杂性复杂性运算次数运算次数n106时间时间多项式算法多项式算法常数算法常数算法O(1)11微秒微秒线性算法线性算法O(n)1061秒秒二次多项式算二次多项式算法法O(n2)101211.6天天三次多项式算三次多项式算法法O(n3)101832,000年年指数算法指数算法O(2n)1030103010301006年年2022-6-2算法复杂性(续)算 法 复 杂 性 算法复杂度的增长速度ln lnlnln,011lnlnlnexpnnncnnncccnnnnncnc 对任意常数 , 其中,有:2022-6-2算法复杂性(续)亚指数指数多项式算法复杂性(续) 研究问题的
8、内在复杂性,即在图灵机上解决最难的问题实例所需的最小时间和空间条件。 图灵机是一种具有无限读、写存储带的有限状态机,可以被当作一个实际可用的计算模型 。2022-6-2第2章 信息安全数学基础(计算复杂性)2022-6-2问题复杂性 图灵机分为两类: 确定性图灵机。 非确定性图灵机2022-6-2问题复杂性(续) 确定性图灵机。 确定性图灵机的输出结果只取决于输入和初始状态。因此,对于具有相同输入和初始状态,运行一个确定性图灵机所得到的结果是完全相同的。 非确定性图灵机 : 能够进行猜测。 求解一个问题分两个阶段:猜测阶段和验证阶段。2022-6-2图灵机 图灵机包括一个有限状态控制单元、k(
9、1)条纸带(Tape)和k个读写头(Tapehead)。 有限状态控制单元控制每个读写头访问一条纸带,并沿着纸带左右移动 图灵机求解问题的输入是一个有限长度的字符串,该输入占据每条纸带无限个单元的最左边的有限个单元。 读写头对纸带的一次访问称之为一个合法移动(Move)。2022-6-2图灵机(续) 图灵机求解问题时,被赋予一个初始状态(Initial State),且一步一步地移动,从而完成对输入的扫描。 如果图灵机最终扫描了整个输入串,且满足了中止条件而停止下来,则称图灵机识别了该输入。 否则,图灵机在某一点没有合法移动,因此会没有识别输入串而停止下来,此时称图灵机无法识别该输入。 图灵机
10、所识别的一个输入,称为一种可识别语言的一个实例。 2022-6-2图灵机(续) 例如:请设计一个图灵机,用于证明某个非负整数是否能被3整除。2022-6-2图灵机(续) 例如:请设计一个图灵机,用于证明某个非负整数是否能被3整除。2022-6-2图灵机(续) 例如:请设计一个图灵机,用于证明某个非负整数是否能被3整除。2022-6-2图灵机(续) 例如:请设计一个图灵机,用于证明某个非负整数是否能被3整除。2022-6-2图灵机(续) 例如:请设计一个图灵机,用于证明某个非负整数是否能被3整除。2022-6-2图灵机(续) 例如:请设计一个图灵机,用于证明某个非负整数是否能被3整除。2022-
11、6-2图灵机(续) 例如:请设计一个图灵机,用于证明某个非负整数是否能被3整除。2022-6-2图灵机(续) 例如:请设计一个图灵机,用于证明某个非负整数是否能被3整除。2022-6-2图灵机(续) 例如:请设计一个图灵机,用于证明某个非负整数是否能被3整除。2022-6-2图灵机(续) 例如:请用DIV3图灵机证明a12(二进制1100)能被3整除。2022-6-2图灵机(续) 例如:请用DIV3图灵机证明a12(二进制1011)能被3整除。当前状态当前状态纸带上的符号纸带上的符号下一步移动下一步移动下一个状态下一个状态q0(初态)(初态)01空空右右右右响铃或终止响铃或终止q0q1q101
12、空空右右右右输出非整除信息输出非整除信息q2q0q201空空右右右右输出非整除信息输出非整除信息q1q22022-6-2图灵机(续) 例如:请用DIV3图灵机证明a12(二进制1011)能被3整除。当前状态当前状态纸带上的符号纸带上的符号下一步移动下一步移动下一个状态下一个状态q0(初态)(初态)01空空右右右右响铃或终止响铃或终止q0q1q101空空右右右右输出非整除信息输出非整除信息q2q0q201空空右右右右输出非整除信息输出非整除信息q1q22022-6-2图灵机(续) 例如:请用DIV3图灵机证明a12(二进制1011)能被3整除。当前状态当前状态纸带上的符号纸带上的符号下一步移动下
13、一步移动下一个状态下一个状态q0(初态)(初态)01空空右右右右响铃或终止响铃或终止q0q1q101空空右右右右输出非整除信息输出非整除信息q2q0q201空空右右右右输出非整除信息输出非整除信息q1q22022-6-2图灵机(续) 例如:请用DIV3图灵机证明a12(二进制1011)能被3整除。当前状态当前状态纸带上的符号纸带上的符号下一步移动下一步移动下一个状态下一个状态q0(初态)(初态)01空空右右右右响铃或终止响铃或终止q0q1q101空空右右右右输出非整除信息输出非整除信息q2q0q201空空右右右右输出非整除信息输出非整除信息q1q22022-6-2图灵机(续) 例如:请用DIV
14、3图灵机证明a12(二进制1011)能被3整除。当前状态当前状态纸带上的符号纸带上的符号下一步移动下一步移动下一个状态下一个状态q0(初态)(初态)01空空右右右右响铃或终止响铃或终止q0q1q101空空右右右右输出非整除信息输出非整除信息q2q0q201空空右右右右输出非整除信息输出非整除信息q1q22022-6-2图灵机(续) 例如:请用DIV3图灵机证明a12(二进制1011)能被3整除。当前状态当前状态纸带上的符号纸带上的符号下一步移动下一步移动下一个状态下一个状态q0(初态)(初态)01空空右右右右响铃或终止响铃或终止q0q1q101空空右右右右输出非整除信息输出非整除信息q2q0q
展开阅读全文