05.公钥密码学

  有公钥和秘钥,之前的被称为私钥密码学,都是基于代换和置换这两个基本工具。而公钥密码体制则为密码学的发展提供了新的理论和技术基础,一方面公钥密码算法的基本工具不再是代换和置换,而是数学函数;另一方面公钥密码算法是以非对称的形式使用两个密钥,两个密钥的使用对保密性、密钥分配、认证等都有着深刻的意义。公钥密码又称为双钥密码和非对称密码。

  公钥密码体制的概念是在解决单钥密码体制中最难解决的两个问题时提出的,这两个问题是密钥分配和数字签字。

  单钥密码体制在进行密钥分配时, 要求通信双方或者已经有一个共享的密钥,或者可籍助于一个密钥分配中心。对第一个要求,常常可用人工方式传送双方最初共享的密钥,这种方法成本很高,而且还完全依赖信使的可靠性。第二个要求则完全依赖于密钥分配中心的可靠性。

  第二个问题数字签字考虑的是如何为数字化的消息或文件提供一种类似于为书面文件手书签字的方法。

  公钥密码算法的最大特点是采用两个相关密钥将加密和解密能力分开,其中一个密钥是公开的,称为公开密钥,简称公开钥,用于加密;另一个密钥是为用户专用,因而是保密的,称为秘密密钥,简称秘密钥,用于解密。因此公钥密码体制也称为双钥密码体制。算法有以下重要特性: 已知密码算法和加密密钥,求解密密钥在计算上是不可行的。


公钥体制机密

加密过程有以下几步:

① 要求接收消息的端系统,产生一对用来加密和解密的密钥,如图中的接收者B,产生一对密钥PKB,SKB,其中PKB是公开钥,SKB是秘密钥。

② 端系统B将加密密钥(如图中的PKB)予以公开。另一密钥则被保密(图中的SKB)。

③ A要想向B发送消息m,则使用B的公开钥加密m,表示为c=EPKB[m],其中c是密文,E是加密算法。

④ B收到密文c后,用自己的秘密钥SKB解密,表示为m=DSKB[c],其中D是解密算法。

对于公钥秘钥,我们需要构造如下函数

单向陷门函数是满足下列条件的函数f:

(1)    给定x,计算y=f(x)是容易的;

(2)    给定y,  计算x使x=f(y)是困难的。

(3)    存在δ,已知δ 时,对给定的任何y,若相应的x存在,则计算x使x=f(y)是容易的。

它有以下特点:

1.仅满足(1),(2)两条的称为单向函数,第(3)条称为陷门性,δ称为陷门信息

2.当用陷门函数函数f作为加密函数时,可将f公开,这相当于公开加密密码,此时加密密钥便称为公开钥,记为Pk,f函数的设计者将δ保密,用作解密密钥,此时δ称为秘密钥匙记为Sk,由于加密函数时公开的,任何人都可以将信息x加密成y=f(x),然后送给函数的设计者(当然可以通过不安全信道传送);由于设计者拥有Sk,他自然可以解出x=f(y)逆

模运算:a=qn+r, 0<=r<n,n是正整数,a是整数,a/n 的商为q,余数为r

如果(a mod n)=(b mod n),则称两整数a和b模n同余,记为a≡b mod n

模8运算:设Z8={0,1,…,7},考虑Z8上的模加法和模乘法


模8



最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 公钥密码系统及RSA公钥算法 本文简单介绍了公开密钥密码系统的思想和特点,并具体介绍了RSA算法的理论基础,工作原...
    火狼o阅读 4,405评论 2 15
  • 在深入学习区块链时,不可避免的需要了解密码学。区块链算是对密码学的一次整合运用,虽然并无太多创新的密码算法,但也值...
    Kerwong阅读 44,765评论 4 25
  • 本文分为7个部分,第1部分介绍密码学的基本概念,第2部分讲解常见的对称加密算法,第3部分讲解常见的非对称加密算法,...
    youclavier阅读 3,629评论 0 6
  • 今天上午语文学的是,彩虹,我们还学了七个生字,有这些生字那到兴成着高千,我们还记了一些笔记, 我们还学了abac的...
    一年级二班高霖阅读 185评论 0 0
  • 小编从武汉回兰州需经过西安,于是小编决定去西安看一下,小编最喜欢的朝代就是唐朝,所以西安,是一个了解唐朝历史最好的...
    叶小栖阅读 1,239评论 0 0

友情链接更多精彩内容