第2章-数学理论复杂性.ppt

  1. 1、本文档共79页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
网络与信息安全 北京师范大学 数学学院 杨进 goodskyfly@163.com 第2章 信息安全数学基础(计算复杂性) 第2章 信息安全数学基础(计算复杂性) 计算复杂性 为什么要学习计算复杂性? 计算复杂性是研究密码分析对于计算量的需求和密码分析的困难程度 ,从而得出这些密码技术和算法在现有可行的条件下是否具有足够的安全性。 学习计算复杂性,需要掌握两个概念: 问题 算法 问题(problem) (问题)定义:即需要回答的一般性提问: 它通常含有若干个参数。 对于一个问题进行描述应该包括两方面的内容: 必须对问题的所有给定参数给出一般性描述; 必须描述该问题的答案(或解)应该满足的性质。 当问题的所有参数都有了确定的取值时,我们称得到了该问题的一个实例(instance)。 算法(algorithm) 定义(算法) :即求解某个问题的一系列具体步骤(通常被理解为求解所需的通用计算程序)。 算法总是针对具体问题而言的,求解一个问题的算法通常不止一个。 当某个算法能够回答一个问题的任何实例时,我们称该算法能够回答这个问题。 当一个问题至少有一个能够回答该问题的算法时,我们称该问题可解(resolvable),否则称该问题不可解(unresolvable)。 算法(algorithm)(续) 有关算法的几点注释: 算法总有输入和输出 算法输入大小一般用输入变量的长度(单位为位)来表示 一般来说,算法用某种编程语言来实现的计算机程序 一般来说,我们仅仅关注解决问题最有效的算法 问题与算法 问题:如何求解两个整数a和b的最大公约数? 参数:a和b 问题实例:a=20,b=30 算法:利用因子分解求a=20和b=30的最大公约数 a=2×2×5 b=2×3×5 因此a和b 的最大公约数是2×5=10 算法复杂性 (算法复杂度)定义:即度量该算法所需的计算能力 ,包括: 时间复杂性T(time complexity); 空间复杂性S(space complexity); 信道带宽; 数据总量; …… 算法复杂性(续) 计算复杂性的表示符号为“ O ”(称为“大O ”,即算法的阶号),表示计算复杂性的数量级 好处: 使算法复杂性度量与处理器的运行速度和指令运行时间无关; 明确地揭示了输入的数据长度对算法复杂性的影响。 算法复杂性(续) 算法常见复杂性分类 (1)常数算法(constant Algorithm): 如果运行时间是O (1),即该算法的复杂性不依赖于n。 (2)线性算法(linear Algorithm): 如果运行时间是O(n)。 (3)多项式算法(polynomial Algorithm): 如果运行时间是O(nm),其中m是一个常数。具有多项式复杂性的算法族被称为多项式时间算法。 (4)超多项式算法(superpolynomial Algorithm): 如果运行时间是,其中c是一个常数,而s(n)是关于n的大于常数而小于线性的函数。 (5)指数算法(exponential Algorithm): 如果运行时间是,其中t是大于1的常数,f(n)是关于n的多项式函数。 算法复杂性(续) 算法常见复杂性分类 一般而言,常数算法、线性算法、多项式算法和超多项式算法统称为多项式算法。 所谓多项式,就是具有下列形式的一个函数: 算 法 复 杂 性 算法的分类及其运行时间 算 法 复 杂 性 算法复杂度的增长速度 算法复杂性(续) 研究问题的内在复杂性,即在图灵机上解决最难的问题实例所需的最小时间和空间条件。 图灵机是一种具有无限读、写存储带的有限状态机,可以被当作一个实际可用的计算模型 。 第2章 信息安全数学基础(计算复杂性) 问题复杂性 图灵机分为两类: 确定性图灵机。 非确定性图灵机 问题复杂性(续) 确定性图灵机。 确定性图灵机的输出结果只取决于输入和初始状态。 因此,对于具有相同输入和初始状态,运行一个确定性图灵机所得到的结果是完全相同的。 非确定性图灵机 : 能够进行猜测。 求解一个问题分两个阶段:猜测阶段和验证阶段。 图灵机 图灵机包括一个有限状态控制单元、k(≥1)条纸带(Tape)和k个读写头(Tapehead)。 有限状态控制单元控制每个读写头访问一条纸带,并沿着纸带左右移动 图灵机求解问题的输入是一个有限长度的字符串,该输入占据每条纸带无限个单元的最左边的有限个单元。 读写头对纸带的一次访问称之为一个合法移动(Move)。 图灵机(续) 图灵机求解问题时,被赋予一个初始状态(Initial State),且一步一步地移动,从而完成对输入的扫描。 如果图灵机最终扫描了整个输入串,且满足了中止条件而停止下来,则称图灵机识别了该输入。

您可能关注的文档

文档评论(0)

xina171127 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档