链资讯 链资讯
Ctrl+D收藏链资讯
首页 > BTC > 正文

极简椭圆曲线密码学入门:公钥密码学ECC

作者:

时间:

本文旨在简单介绍椭圆曲线密码学(elliptic curve cryptography)。本文预设读者的阅读目的是想知道为什么 ECC 是一个有效的密码学工具及其基本原理。我的目标是给出广义的解释,我将省略一些证明和实现细节,聚焦于抽象的原理。

- 椭圆曲线示例 -

ECC 是一种加密数据的方法,只有特定的人才能对其进行解密。在现实生活中,ECC 有一些常见的用例,但是最主要的用途是加密互联网数据和流量。例如,ECC 可以用来确保在发送电子邮件时,除收件人以外没人可以阅读邮件内容。

公钥密码学的类型有很多,ECC 只是其中一种。此外还有 RSA、Diffie-Helman 等算法。首先,我要简单介绍一下公钥密码学的背景,然后再讨论 ECC 以及这些概念基础上的高层建筑。请各位读者在有空时深入学习一下关于公钥密码学的知识。

公钥密码学的运作方式如下图所示:

-?Wikia.org?-

上图显示了两个密钥:公钥和私钥。这两个密钥分别用来加密和解密数据。这样一来,加密数据在传输的过程中,全世界的人都可以看到(密文),却无法知道其内容。

假设 Facebook 将要收到来自特朗普的私信。Facebook 需要确保特朗普在通过互联网发送私信时,没有中间方(国家安全局、互联网服务提供商)能够读取该私信。在使用公钥密码学的情况下,整个过程如下:

STEPN已上线NFT市场OpenSea:4月28日消息,据OpenSea官方消息,Move to Earn应用STEPN已上线NFT市场OpenSea,并以SOL计价,当前地板价暂报20SOL。[2022/4/28 2:36:40]

特朗普通知 Facebook 说他想发送一封私信给 Facebook

Facebook 将自己的公钥发送给了特朗普

特朗普使用该公钥加密了私信:“I love Fox and Friends” + Public Key = “s80s1s9sadjds9s”

特朗普将加密后的私信发送给 Facebook

Facebook 使用私钥解密该私信 “s80s1s9sadjds9s” + Private Key = “I love Fox and Friends”

如你所见,公钥密码学是一个非常有用的技术。以下是一些关键点。

公钥可以发送给任何人,它是公开的。

必须保护好私钥。如果中间方获得私钥,他们就能解密私信。

计算机可以使用公钥快速加密消息,使用私钥快速解密消息。

如果没有私钥,计算机需要很长一段时间(数百万年)才能暴力破解加密消息。

对于所有公钥密码学算法来说,最关键的是它们都有自己独特的陷门函数(Trapdoor Function)。陷门函数是一种只能单向计算,至少是只在一个方向上易于计算的函数。(如果使用现代计算机从另一个方向暴力破解,需要数百万年时间。)

非陷门函数的例子:A + B = C

Tether将于几小时内进行10亿枚USDT迁移工作:Tether官方刚刚发推称,在几小时内,Tether将与第三方进行合作,将10亿枚USDT从TRON迁移至ERC20协议。在此过程中,USDT总供给量不会改变。Tether首席技术官PaoloArdoino透露,转移的原因是一个加密货币交易所愿意将其部分Tether从TRC20转移至ERC20。[2020/8/20]

已知 A 和 B,我就能计算出 C 。问题在于,在已知 B 和 C 的情况下,我也能计算出 A 。这就是非陷门函数。

陷门函数:

已知 “I love Fox and Friends” 和公钥,我可以计算出 “s80s1s9sadjds9s” ,但是已知 “s80s1s9sadjds9s” 和公钥,我无法计算出 “I love Fox and Friends” 。

在 RSA 算法(可能是最受欢迎的公钥系统)中,陷门函数取决于将一个巨大的数分解成质因数的难易程度。

公钥:944,871,836,856,449,473 私钥:961,748,941 和 982,451,653

在上述例子中,公钥是一个很大的数,私钥是公钥的两个质因数。这是一个很好的例子,因为将私钥中的数相乘,很容易就能算出公钥,但是你只有公钥的话,需要很长时间才能使用计算机算出私钥。

注:在真正的密码学实践中,私钥的长度必须超过 200 位才能被视为是安全的。

ECC 与 RSA 的用途相同。ECC 会生成一个公钥和私钥,允许双方安全通信。不过,ECC 相比 RSA 有一大优势。一个 256 位的 ECC 密钥与一个 3072 位的 RSA 密钥安全性相同。也就是说,在资源有限的系统(如智能手机、嵌入式计算机和加密货币网络)中,ECC 密钥需占用的硬盘空间和带宽是 RSA 密钥的 10% 不到。

重点来了。ECC 与 RSA 的主要区别在于陷门函数。ECC 的陷门函数类似于数学版的台球游戏。我们先在曲线上找到一个特定的点,然后使用函数(通常称为点函数)在曲线上找到一个新的点,接着重复使用点函数,在曲线上不断跳跃,直到找到最后一个点为止。我们来看一下该算法的具体步骤:

-?arstechnica.com?-

从 A 点开始:

A dot B = -C(从 A 点至 B 点画一条直线,与曲线相交于 -C 点)

-C 点经过 X 轴反射到曲线上的 C 点

A dot C = -D (从 A 点至 C 点画一条直线,与曲线相交于 -D 点)

-D 点经过 X 轴反射到曲线上的 D 点

A dot D = -E (在 A 点至 D 点画一条直线,与曲线相交于 -E 点)

-E 点经过 X 轴反射到曲线上的 E 点

这是一个很棒的陷门函数,因为如果你知道起点(A)在哪里,以及到达终点(E)需要经历多少次跳跃,很容易就能找到终点。但是,如果你只知道起点 A 和终点 E 在哪里,几乎不可能知道中间经历了几次跳跃。

公钥:起点 A 、终点 E 私钥:从 A 点至 E 点需要经历几次跳跃

以下是我初次学习 ECC 时遇到的几点疑问,以及我的解答。希望能给各位读者带来帮助。

回答:不需要,因为第二个点(假设是 -R)实际上是 P dot P(假设第一个点是 P)得出的结果。

P dot P= -R

那什么是 P dot P?它实际上就是一条经过 P 点的切线。参见下图:

-?f5.com?-

如果直线与曲线的交点距离原点太远,我们可以定义一个最大值 X 。如果超过 X 值,直线就会绕回来,从 Y 轴重新开始。如下图所示:

这是一个很好的问题,但是需要更深入的解答。在本文中,我只想简单解释 RSA 和 ECC 。各位读者可以查阅更多技术资料来了解具体细节。

(译者注:虽然作者在原文中自述学习椭圆曲线密码学是出于自己对比特币和数字货币的兴趣,但此处所讲述的原理集中在加解密上,还未涉及椭圆曲线在数字货币(至少是以太坊)中的主要用途:验证交易的权威性。在以太坊中,用户发送交易的过程并不是使用公钥或私钥加密交易数据,而是使用私钥对交易数据签名,这些签名信息随交易发送,得到这些签名信息的节点可使用椭圆曲线算法恢复出一个地址,与交易原始数据比对即可知该笔交易是不是由有权使用该地址的用户发出的。)

原文链接:

https://blog.goodaudience.com/very-basic-elliptic-curve-cryptography-16c4f6c349ed

作者:?Lane Wagner

翻译&校对:?闵敏?&?阿剑

标签:CEBBOOKETHEETHERAllianceBlock NexerabookchainSethertogetherbnb礼物好感度

BTC热门资讯
晚间荐读5篇 | 甄选优质DeFi项目 挖矿教程全合集

金色好文合辑 | 甄选优质DeFi项目 挖矿教程全合集 DeFi流动性挖矿火爆一时,吸引了大量投资者参与。为了方便投资者及时了解DeFi挖矿项目的相关信息和挖矿流程,金色财经推出了“金色说明书”系列挖矿教程。点击阅读 邹传伟:区块链在数据要素市场中的应用 本文在之前研究的基础上,讨论区块链在数据价值链的不同环节能发挥的作用。

谷燕西:从今天的游戏行业 看未来的数字金融生态

目前游戏公司Fortnite正在向苹果和安卓进行挑战。Fortnite在自己的应用中装了直接支付功能,以避免向苹果和安卓的应用商店支付30%的服务费用。这两个应用商店立即将Fortnite的应用下架。Fortnite因此向法院起诉这两家公司。现在这个官司的结果如何不得而知,但我认为很难对苹果和安卓的收费策略有很大的改变。

将分片作为数据可用性层的可能性

每当情况突然偏离预期,人们就开始思考如何更改已有系统。 随着以太坊上 DeFi 的兴起,人们就开始思考以太坊的区块空间问题。以太坊的 gas 价格达到了前所未有的高点。

Moonswap剧情反转:锁仓量近5亿美金 价格从2.6美元飞过10美元

这两天最热的DeFi挖矿项目,属moon了。它的挖矿有啥特别的地方呢?在挖矿上没有特别的地方,还是大家熟悉的sushi那一套挖矿模式,提供流动性做市,抵押凭证挖矿。

被吸血的 Uniswap 怎么办?

幸好 Uniswap 已经宣布在开发 V3 版本的协议,Hayden Adams 公开表示过,下一版将解决目前 AMM 遇到的所有问题。 一个仅仅上线两周的分叉项目,沉淀资金的体量已经远超运营了两年的原版项目。在商业世界里无法想象的事情,在 DeFi 的世界里就自然发生了。

9.11晚间行情:BTC 的横盘震荡期何时结束

文章系金色财经专栏作者币圈北冥供稿,发表言论仅代表其个人观点,仅供学习交流!金色盘面不会主动提供任何交易指导,亦不会收取任何费用指导交易,请读者仔细甄别,谨防上当。