椭圆曲线密码学导论pdf_讨厌数学的椭圆曲线密码学

这篇博客介绍了椭圆曲线密码学的基础知识,适合不熟悉数学的读者。内容包括椭圆曲线密码学的原理和应用,提供了一篇导论的PDF资源。
摘要由CSDN通过智能技术生成

椭圆曲线密码学导论pdf

Elliptic curve cryptography is one of the most powerful but sadly least understood types of cryptography that is in wide use today. For those just looking for a quick answer:

椭圆曲线密码术是当今最广泛使用的功能最强大但最令人遗憾的密码学类型之一。 对于那些只想快速找到答案的人:

TL:DR : Elliptic Curve Cryptography is the next generation of public key cryptography and based on the current understanding of maths, provides a significantly more secure foundation than the first generation of public key cryptographic systems such as RSA and Diffe-Hellman.

TL:DR:椭圆曲线密码术是下一代的公钥密码术,它基于对数学的当前理解,比第一代公钥密码系统(例如RSA和Diffe-Hellman)提供了更为安全的基础。

Image for post

An Elliptic curve is a set of points to satisfies a specific math equation. The equation for an elliptic curve looks like this (This is the only math i promise).

椭圆曲线是一组点,它们满足特定的数学方程式。 椭圆曲线的方程式如下所示(这是我保证的唯一数学运算)。

Y² = X³ + ax + b

Y²=X³+ 斧头 + b

Whilst there are other representations of elliptic curves, technically an elliptic curve is a set of points satisfying an equation in two variables with degrees two in one of the variables and three in the other. Whilst the elliptic curve does look a lot like a pushed over LuluLemon logo, it does also have some properties that makes it a very good setting for cryptography.

椭圆曲线还有其他表示形式,从技术上讲,椭圆曲线是一组点,它们满足两个变量中一个方程的等式,其中一个变量为2,另一个变量为3。 椭圆曲线看上去确实很像LuluLemon徽标上的推键,但它也具有一些属性,使其成为密码学的一个很好的设置。

The curve above has many interesting points. One of then is the horizontal symmetry. Any point on the curve can be reflected over the X axis and remain the same curve. A more interesting property is that any-non vertical line will intersect the curve in at most three places.

上面的曲线有很多有趣的地方。 其中之一是水平对称。 曲线上的任何点都可以在X轴上反射并保持不变。 一个更有趣的特性是,任何非垂直线都将在最多三个位置与曲线相交。

Breaking this down into a super simple metaphor, lets imagine this curve as a very crazy game of pool. Take any two points on the curve and draw a line through them, it will intersect the curve at exactly 1 more place. In this game of pool, if you take a ball at point A and shoot it towards point B. When it hits the curve, the ball bounced either straight up (if it was below the x axis) or straight down (f it was above the x axis) to the other side of the curve as can be seen in this image below.

将其分解成一个超级简单的隐喻,让我们想象一下这条曲线是一场非常疯狂的撞球游戏。 沿曲线上的任意两个点绘制一条线,它们将与曲线在另外1个位置处相交。 在此撞球游戏中,如果您在A点拿一个球并将其射向B点。当它撞到曲线时,球会弹起而直线弹起(如果它在x轴以下)或直线弹起(f则在上方) x轴)到曲线的另一侧,如下图所示。

Image for post

Calling this pool move on two points “dot”. Any two points on the curve can in fact be dotted together.

将该池称为两点“点”。 实际上,曲线上的任何两个点都可以点在一起。

A dot B = CA dot A = BA dot C = D

点B = CA点A = BA点C = D

Now if you have two points, an initial point “dotted” with itself n times to arrive at the final point, finding out n when you only know the final point and the first point is hard. Furthering on the metaphor, imagine one person is playing pool alone in a room for a random period of time. It is easy for them to hit the ball over and over again following the rules described above, if someone is then to walk into the room and sees where the ball has ended up, even if they know the rules of the game and where the ball started, they cannot determine the number of times the ball was actually hit. They would have to run through the entire game again until they returned to the same place. This is easy to do but very very hard to undo, which is the basis for a great backdoor.

现在,如果您有两个点,则初始点本身会“点” n次到达最终点,当您仅知道最终点而第一个点很困难时才找出n。 进一步加深这个隐喻,想象一个人在一个房间里一个人在随机范围内打台球。 即使有人知道比赛规则和球的位置,如果有人随后走进房间并看到球的结局,他们也很容易按照上述规则一遍又一遍地击球。开始时,他们无法确定实际击球的次数。 他们将不得不重新运行整个游戏,直到他们回到同一个地方。 这很容易做到,但是却很难撤消,这是建立后门的基础。

Image for post

The curve we have been looking at currently is a simplified curve it is great to explain the general concept of how elliptic curves work, but it doesn't greatly represent what the curves used in cryptography look like.

目前,我们一直在查看的曲线是一条简化的曲线,可以很好地解释椭圆曲线如何工作的一般概念,但是它并不能很好地代表密码学中使用的曲线的样子。

Image for post
This curve above is an example of a cryptographic elliptic curve for all numbers.
上面的曲线是所有数字的加密椭圆曲线的示例。

For this it needed to be restricted into a fixed range, like in RSA rather than allow any value for the points on the curve, we stick to whole numbers in a fixed range. When computing the formula for elliptic curve, the same trick is used of rolling over numbers when they hit the maximum. If we pick a maximum to be a prime number, the elliptic curve is now called a prime curve and has incredible cryptographic properties.

为此,需要将其限制在固定范围内(例如在RSA中),而不是允许曲线上的点具有任何值,我们将整数固定在固定范围内。 在计算椭圆曲线的公式时,使用相同的技巧将数字达到最大值时翻转数字。 如果我们选择一个最大值作为素数,则椭圆曲线现在称为素数曲线,并具有令人难以置信的加密特性。

Image for post

Whilst this doesn't look like a curve in the boring traditional sense, it is in fact a curve, it’s very much like the original curve was wrapped around at the edges and only the parts of the curve that hit whole number coordinates coloured in. You can even still see the horizontal symmetry.

虽然这看上去不像是无聊的传统意义上的曲线,但实际上它是一条曲线,它非常像原始曲线缠绕在边缘,并且仅将撞到整数坐标的曲线部分涂上了颜色。您甚至还可以看到水平对称。

Returning back to our imaginary game of pool, it still applies on this curve and dot points. The equation for the line on the curve still have the same properties. More excitingly the dot operation can be efficiently computed.You can visualise the lines between the two points are a line that wraps around the borders until a point is hit. It’s as if in our game of pool, when a ball is hit the cushion on the edge of table it is magically transported to the opposite side of the table and continues in its path until reaching its point.

回到我们想象中的撞球游戏,它仍然适用于该曲线和点。 曲线上直线的方程式仍具有相同的属性。 更令人兴奋的是,可以高效地计算点运算。您可以形象地看到两点之间的线是一条环绕边界直到碰到点的线。 就像在我们的撞球游戏中,当一个球被撞到桌子边缘的垫子上时,它被神奇地运送到桌子的另一侧,并一直沿其路径前进直至到达终点。

Image for post

With this new crazy and cool curve representation you can take messages and represent them as points on the curve. Now imagine taking a message and setting it as the x coordinate, and solving for y to get a point on the curve, whilst in practise it is more complicated than this, that is the general idea.

使用这种新的疯狂而酷炫的曲线表示,您可以获取消息并将其表示为曲线上的点。 现在想象一下接收一条消息并将其设置为x坐标,并求解y以在曲线上获得一个点,而实际上,这比这更复杂,这是一般的想法。

So the output is : (71, 6), “-”, (78, 44), (80, 4), 64, 24)

因此输出为:(71,6),“-”,(78,44),(80,4),64,24)

An elliptic curve cryptosystem can be defined by picking a prime number as a maximum, a curve equation and a public point on the curve. A private key is a number priv, and a public key is the public point dotted with itself priv times. Computing the private key from the public key in this kind of cryptosystem is called the elliptic curve discrete logarithm function. This turns out to be the Trapdoor Function we were looking for.

可以通过选择素数作为最大值,曲线方程式和曲线上的公共点来定义椭圆曲线密码系统。 私钥是数字priv,公钥是点缀有私有时间的公钥。 在这种密码系统中从公钥计算私钥称为椭圆曲线离散对数函数。 事实证明这就是我们正在寻找的活板门功能。

Image for post

那么,这意味着什么 (So what does this all mean)

The elliptic curve discrete logarithm is the hard problem underpinning elliptic curve cryptography. Despite having three decades worth of research behind it mathematicians still have not been able to find an algorithm to solve this problem that improves upon a naive approach. Unlike with factoring, based on currently understood maths there isn’t a shortcut that is narrowing the gap in a trapdoor function based around this problem. This means that for number of the same size, solving the elliptic curve discrete logarithms is significantly harder than factoring. Since its a more computationally intensive hard problem thus a stronger cryptographic system, it means that elliptic curve cryptosystems are harder to break than RSA or Diffe-Hellman.

椭圆曲线离散对数是基于椭圆曲线密码学的难题。 尽管进行了数十年的研究,但数学家仍然无法找到一种解决这一问题的算法,而该算法在幼稚的方法上得到了改进。 与因式分解不同,基于当前理解的数学,没有一个捷径可以基于此问题来缩小活板门函数中的差距。 这意味着对于相同大小的数字,求解椭圆曲线离散对数要比分解困难得多。 由于它的计算量更大,难题也更强大,因此密码系统更强大,这意味着椭圆曲线密码系统比RSA或Diffe-Hellman更难破解。

With elliptic curve cryptography, you can use smaller keys to get the same levels of security. Small keys are becoming increasingly more important, especially in a world where more and more cryptography is done on less powerful devices such as mobile phones and IOT devices.

使用椭圆曲线加密,您可以使用较小的密钥来获得相同级别的安全性。 小钥匙变得越来越重要,尤其是在当今这样的世界中,越来越多的密码在功能不强的设备(例如手机和IOT设备)上进行。

A great way to visualise how much harder it is to break, Lenstra introduced a concept of “Global Security”. In this paper you can compute how much energy is needed to break a cryptographic algorithm, and compare that with how much water that energy could boil. Using this measure, breaking a 228-bit RSA key requires less energy than it takes to boil a teaspoon of water. In a drastic comparison breaking a 228-bit elliptic curve key requires enough energy to boil all the water on earth.

Lenstra提出了一种可视化破解难度的好方法,它引入了“全球安全”的概念。 在本文中,您可以计算出破解一个加密算法所需的能量,并将其与该能量可以沸腾的水进行比较。 使用此措施,破坏228位RSA密钥所需的能量少于煮沸一茶匙水所需的能量。 在激烈的比较中,打破228位的椭圆曲线键需要足够的能量来煮沸地球上的所有水。

(Finish)

Now whilst this is a super light introduction into Elliptic curve cryptography is is something that you can now build upon. If you’re interested you can look further into the math or Elliptic Curve parings which is very interesting. But it is your decision if you want to dance with the devil like that.

现在,尽管这是对椭圆曲线密码学的简要介绍,但是您现在可以在上面进行构建。 如果您有兴趣,可以进一步研究数学或椭圆曲线配对,这很有趣。 但是,如果您想与魔鬼共舞,这是您的决定。

Image for post

翻译自: https://medium.com/swlh/elliptic-curve-cryptography-for-those-who-hate-maths-c68c5970ff87

椭圆曲线密码学导论pdf

MMX-密码学书籍包-共3部分.zip.003 注意:本资源一共三部分,只有把三部分都下载了放在同一目录下才能完全解压缩成功! 详细内容见这里: http://blog.csdn.net/bjarnecpp/article/details/79012425 本压缩包包含书籍 计算机安全和密码学.Computer.Security.And.Cryptography.pdf 英文版 《深入浅出密码学——常用加密技术原理与应用》-有书签.pdf 程序员密码学.pdf 计算机加密解密200例-带书签.pdf 计算密码学+卢开澄-走向数学丛书.pdf 经典密码学与现代密码学.pdf 带自制 书签 密码学数学基础-英文版-Jeffrey+Hoffstein.pdf 密码编码学:加密方法的C与C++实现.pdf -带书签 密码编码学与网络安全 原理与实践(原书第5版)和习题解答 共2本.pdf 密码学基础[以色列]Oded.Goldreich 中英文三本书.zip 密码学-加密演算法-带目录.pdf 密码学原理与实践-冯登国译-带书签.pdf密码学实践》电子工业出版社,作者是(美)弗格森 椭圆曲线及其在密码学中的应用(英文).pdf 椭圆曲线密码学导论.pdf 应用密码学:协议、算法与c源程序.PDF(两本,一本完整版,一本不完整高清文字版).zip 应用密码学(英文版 Applied Cryptography - Bruce Schneier 2nd ed).pdf 应用密码学——协议、算法、C源程序.pdf 战争中的数学——军事密码学,李长生,邹祁编著.pdf 信息论、编码与密码学 田丽华.pdf 应用密码学手册 英文版 Handbook of Applied Cryptography.pdf -有书签 文字版
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值