密码学的计算复杂性理论基础-Read
- 格式:ppt
- 大小:168.00 KB
- 文档页数:15
计算复杂性
计算复杂性理论是理论计算机科学的分支学科,使用数学方法对计算中所需的各种资源的耗费作定量的分析,并研究各类问题之间在计算复杂程度上的相互关系和基本性质,是算法分析的理论基础。
和可计算性一样,复杂性总是对于一个特定的问题类来讨论的,它包括无穷多个个别问题,有大有小。
例如,对矩阵乘法这样一个问题类,相对地说,100阶矩阵相乘是个大问题,而二阶矩阵相乘就是个小问题。
可以把矩阵的阶n作为衡量问题大小的尺度。
又如在图论问题中,可以把图的顶点数n作为衡量问题大小的尺度。
一个问题在计算之前,总要用某种方式加以编码,这个编码的长度n就是衡量问题大小的尺度。
当给定一个算法以后,计算大小为n的问题所需要的时间、空间等就可以表示为n的函数。
这个函数就可作为该算法的时间或空间复杂性的度量。
严格地讲,是这个特定的问题类在某一特定计算模型中某一特定算法的复杂性之度量。
当要解决的问题越来越大时,时间、空间等资源耗费将以什么样的速率增长,即当n趋向于无穷大时,这个函数的性状如何,增长的阶是什么,这就是计算复杂性理论所要研究的主要问题。
计算复杂性理论总结报告(总10页)--本页仅作为文档封面,使用时请直接删除即可----内页可以根据需求调整合适字体及大小--计算复杂性理论总结报告一、图灵机(1)图灵机基本模型图灵机是由图灵(Alan Mathisom Turing)在1936年提出的,它是一个通用的计算模型。
通过图灵机,来研究递归可枚举集和部分递归函数,对算法和可计算性进行研究提供了形式化描述工具。
图灵机的基本模型包括一个有穷控制器,一条含有无数个带方格的输入带和一个读写头。
其直观物理模型如下图1所示。
基本图灵动作有以下三种:(1)改写被扫描带方格内容,控制器转化为下一状态。
(2)读写头向左移一个带方格,控制器转化为下一状态。
(3)读写头向左移一个带方格,控制器转化为下一状态。
图1图灵机(2)图灵机形式化定义,图灵机演算过程及语言描述定义:一个基本图灵机定义为一个七元组 TM={Q,C,δ,A,B,q1,F}。
其中Q是状态集合,(图灵机所有的状态)非空有限集;C是带符号表,(放在带方格中的符号集合)非空集;δ是控制函数或过程转换函数(定义控制器)δ:QxC QxC∪(R,L);A是输入字母表,A⊆C;B是空白符,B∈C;q1是初始状态,q1∈Q;F是终态集,F ⊆Q.TM的扫描符号串主要由δ来确定:(1)δ(q,s)=(q’,s’);(2)δ(q,s)=(q’,R);(3)δ(q,s)=(q’,L);(4)δ(q,s)无效,对应无定义时图灵机终止。
TM的工作用“格局”的转换来描述。
格局:σ:a1a2a3…aj-1qajaj+1…其中q∈Q,ai∈C;(1)若δ(q,ai)无定义,称σ为停机格局;(2)若q∈F,称σ为接受格局;(3)若q为初始状态,称σ为初始格局;格局σ到格局τ的转换σ├mτ若成立σ=σ1├m1σ2├m2σ…3├Mσk 记为σ1├*σk (k>=0)(3)图灵机其他形式(1)五元机δ:QxC→QxCx{R,L}基本动作:qsq’s’即δ(q,s)=(q’,s’);qsq’L即δ(q,s)=(q’,L);qsq’R即δ(q,s)=(q’,R)。
密码学基础知识进阶指南在当今数字化的时代,密码学已经成为保护信息安全的关键学科。
无论是在线购物、银行交易,还是个人通信,密码学都在默默守护着我们的隐私和数据安全。
如果您已经对密码学的基础知识有了一定的了解,那么这篇文章将带您进一步深入密码学的世界,探索更复杂和高级的概念。
一、对称加密算法的深入理解对称加密算法是密码学中最常见的一类加密方式。
在这种算法中,加密和解密使用相同的密钥。
常见的对称加密算法如 AES(高级加密标准),它具有高效性和安全性,被广泛应用于各种领域。
然而,对称加密算法并非完美无缺。
密钥的分发和管理就是一个棘手的问题。
如果在密钥分发过程中被攻击者窃取,那么整个加密系统就会面临巨大的风险。
为了解决这个问题,就引出了非对称加密算法。
二、非对称加密算法的奥秘非对称加密算法使用一对密钥,即公钥和私钥。
公钥可以公开,用于加密信息;私钥则必须保密,用于解密由对应公钥加密的信息。
RSA 算法就是非对称加密算法的一个典型代表。
非对称加密算法虽然解决了密钥分发的问题,但它的计算效率相对较低,不适合用于大量数据的加密。
因此,在实际应用中,常常将对称加密和非对称加密结合起来,充分发挥它们各自的优势。
三、哈希函数的重要性哈希函数是一种将任意长度的消息压缩成固定长度摘要的函数。
它具有不可逆性,即很难从摘要反推出原始消息。
常见的哈希函数如MD5 和 SHA-256 等。
哈希函数在数字签名、数据完整性验证等方面发挥着重要作用。
例如,在文件下载时,可以通过对比文件的哈希值来确保文件没有被篡改。
四、数字签名的原理与应用数字签名是一种用于验证消息来源和完整性的技术。
它基于非对称加密和哈希函数的结合。
发送者使用自己的私钥对消息的哈希值进行加密,生成数字签名。
接收者使用发送者的公钥对数字签名进行解密,并对比消息的哈希值,从而验证消息的真实性和完整性。
数字签名在电子合同、电子投票等领域有着广泛的应用,为网络通信提供了可靠的信任机制。