![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
信息安全
Mrpre
??
展开
-
RSA算法原理
RSA算法原理 RSA公钥加密算法是1977年由罗纳德·李维斯特(Ron Rivest)、阿迪·萨莫尔(Adi Shamir)和伦纳德·阿德曼(Leonard Adleman)一起提出的。1987年首次公布,当时他们三人都在麻省理工学院工作。RSA就是他们三人姓氏开头字母拼在一起组成的。(摘自百度) 和DH算法讲解方式不同,我们需要先讲解部分数学基础,然后再讲RSA原理。原创 2016-09-21 16:14:28 · 5207 阅读 · 0 评论 -
RSA的PSCK1 和 PSS 加密、签名封装以及填充方式和实例程序
RSA的PSCK1 和 PSS 加密、签名封装以及填充方式SSA = Signature Scheme with Appendix PSS = Probabilistic Signature Scheme ES = Encryption Schemes SSA是填充、封装格式 PSS是私钥签名流程。 ES 是公钥加密流程。https://tools.ietf.org/html/...原创 2018-03-29 11:41:38 · 14946 阅读 · 7 评论 -
PSK在TLS中的应用
PSK在TLS中的应用之前搞TLS的过程中,PSK的概念有所了解,但是一直觉得他没什么用处,就大致看了一下实现,没深究。但是TLS1.3中居然设计到了PSK的概念,我想有必要在这里总结一下,以免忘记。RFC 4279中详细描述了各个方面。PSK的三种类型PSK-only简单的说,就是client写死一个key,server写死一个key,当然这两个key是一样的。 这个key...原创 2018-02-19 17:23:29 · 10443 阅读 · 10 评论 -
各种加密模式在TLS协议中的运用 3 (AEAD:GCM模式)
GCM,不知道该如何说起,因为涉及到群论、有限域等,先写个大概,有机会再补。域就是我们常见的一个集合,集合中的元素可以进行加减乘除,除了0以外的元素都有逆元。 例如实数域,R = (….,-1, 0, 1, 2, 3, 4 ….)就是一个域,他是无限大小的。 对于任意R中的x1 x2,加减乘的结果还在R中。0是加法单位元,1是乘法单位元。 不严谨的说,域就是一个集合。 好,过。...原创 2018-02-14 14:27:28 · 9888 阅读 · 3 评论 -
各种加密模式在TLS协议中的运用 2 (AEAD:CCM模式)
AEAD 模式名词解释AE:Authenticated encryption AD:Associated-Data本篇背景知识CBC、各种加密模式在TLS协议中的运用 1、CTR模式与Mac-then-Encrypt不同,AEAD是整个算法流程,同时保证了数据的私密性和完整性。回想MtE和EtM模式, mac和和cipher都是分别计算的;CCMCCM其实是E...原创 2018-02-13 20:43:09 · 8277 阅读 · 1 评论 -
各种加密模式在TLS协议中的运用 1 (Mac-then-Encrypt)
Mac-then-Encrypt老的算法譬如:TLS_RSA_WITH_AES_128_CBC_SHA TLS_RSA_WITH_RC4_128_MD5 都是mac-then-encrypt模式。加密流程图:上面涉及到2个操作(算上padding计算的话是3个操作)HMAC操作1:计算HMAC,这个HMAC操作就是“MAC-then-encrypt”中的M...原创 2018-02-13 15:03:41 · 5353 阅读 · 2 评论 -
DH算法原理
DH算法原理DH 是 Diffie-Hellman的首字母缩写,是Whitefield与Martin Hellman在1976年提出了一个的密钥交换协议。我个人倾向于称DH算法为 密钥协商协议而RSA算法是密钥交换算法。本篇分为几个部分,第一个部分介绍一下密钥交换的场景;第二部分介绍一下DH算法的的步骤,以及由该算法引出的一些问题;第三部分开始讲数学原理。数学...原创 2016-09-21 15:59:40 · 33846 阅读 · 16 评论 -
ECDH and ECDSA(ECC椭圆曲线算法3)
这是ECC系列的第三篇。在之前的文章中,我们看到了什么是椭圆曲线,并且我们为了做一些数学运算,定义了椭圆曲线上的点为一个群,然后我们约束了曲线的取值范围(即定义在有限域上的群)。有了这个约束,我们也看到了椭圆曲线上的点能够生成循环子群。我们也介绍了基点、解、cofactor的概念。最后,我们看到了在有限域上的数乘运算是一个简单的操作,但是离散对数问题是比较难的。现在我们来看看ECC算法的应用。椭圆曲翻译 2017-06-03 10:31:28 · 30188 阅读 · 4 评论 -
有限域和离散对数问题(ECC椭圆曲线算法2)
有限域和离散对数问题这篇文章是ECC系列的第二篇在上一篇文章中,我们看到了基于实数域的的椭圆曲线如何构成了群(Group),我们如下定义了群中的加法:P + Q + R = 0,我们分别用几何方法和代数方法计算了了椭圆曲线点的加法。 随后,我们有介绍了数乘(nP = P + P + P + … + P),然后找到了一个较为快速的计算nP的算法:double and add。现在,我们要限制我们的椭翻译 2017-06-03 10:24:55 · 22118 阅读 · 5 评论 -
Guide to Elliptic Curve Cryptography (ECC椭圆曲线算法1)
Preface椭圆曲线的研究可以被追溯至十九世纪中叶,那是代数学家、几何代数学家、以及数论专家都在研究。本书描绘了椭圆曲线中一些完美的特性。1984年,Hendrik Lenstra阐述了一个依据于椭圆曲线的因数分解算法。这就导致了研究者重新去研究椭圆曲线在密码学以及数论算法的新应用。 1976年,WhitfieldDiffie和Martin Hellman开创了公钥密码学的先河;翻译 2017-06-03 10:14:08 · 13652 阅读 · 0 评论 -
签名算法中rsa_pss_pss_*和rsa_pss_rsae_*的区别
rsa_pss_pss_* 和 rsa_pss_rsae_* 的区别对于签名来说首先,对于签名来说,没区别。都是使用PSS流程进行签名。对于公钥来说有区别说先,加签方需要判断自己的 public key 什么类型,如果 public key是rsaEncryption类型,则用rsa_pss_rsae_表示对应私钥的签名算法OID; 如果自己的public key是 id...原创 2018-07-19 16:44:19 · 2877 阅读 · 1 评论