• 回答数

    4

  • 浏览数

    354

泡沫鱼头
首页 > 学术期刊 > 比特币论文文献参考

4个回答 默认排序
  • 默认排序
  • 按时间排序

电锯小天王

已采纳

参加比特币源码研读班后首次写作,看到前辈black写的有关密钥,地址写的很好了,就选了他没有写的椭圆曲线,斗胆写这一篇。 在密码学上有两种加密方式,分别是对称密钥加密和非对称密钥加密。 对称加密:加密和解密使用的同样的密钥。 非对称加密:加密和解密是使用的不同的密钥。 二战中图灵破解德军的恩尼格码应该就是用的对称加密,因为他的加密和解密是同一个密钥。比特币的加密是非对称加密,而且用的是破解难度较大的椭圆曲线加密,简称ECC。非对称加密的通用原理就是用一个难以解决的数学难题做到加密效果,比如RSA加密算法。RSA加密算法是用求解一个极大整数的因数的难题做到加密效果的。就是说两个极大数相乘,得到乘积很容易,但是反过来算数一个极大整数是由哪两个数乘积算出来的就非常困难。下面简要介绍一下椭圆曲线加密算法ECC。 首先椭圆曲线的通式是这个样子的:一般简化为这个样子:()发公式必须吐槽一下,太麻烦了。) 其中 这样做就排除了带有奇点的椭圆曲线,可以理解为所有的点都有一条切线。 图像有几种,下面列举几个:[1] 椭圆曲线其实跟椭圆关系不大,也不像圆锥曲线那样,是有圆锥的物理模型为基础的。在计算椭圆曲线的周长时,需要用到椭圆积分,而椭圆曲线的简化通式: ,周长公式在变换后有一项是这样的:,平方之后两者基本一样。我们大体了解了椭圆曲线,就会有一个疑问,这个东西怎么加密的呢?也就是说椭圆曲线是基于怎样的数学难题呢?在此之前还得了解一些最少必要知识:椭圆曲线加法,离散型椭圆曲线。椭圆曲线加法数学家门从普通的代数运算中,抽象出了加群(也叫阿贝尔群或交换群),使得在加群中,实数的算法和椭圆曲线的算法得到统一。数学中的“群”是一个由我们定义了一种二元运算的集合,二元运算我们称之为“加法”,并用符号“+”来表示。为了让一个集合G成为群,必须定义加法运算并使之具有以下四个特性: 1. 封闭性:如果a和b是集合G中的元素,那么(a + b)也是集合G中的元素。 2. 结合律:(a + b) + c = a + (b + c); 3. 存在单位元0,使得a + 0 = 0 + a =a; 4. 每个元素都有逆元,即:对于任意a,存在b,使得a + b = 0. 如果我们增加第5个条件: 5. 交换律: a + b = b + a 那么,称这个群为阿贝尔群。[1] 运算法则:任意取椭圆曲线上两点P、Q (若P、Q两点重合,则做P点的切线)做直线交于椭圆曲线的另一点R’,过R’做y轴的平行线交于R。我们规定P+Q=R。(如图)[2]特别的,当P和Q重合时,P+Q=P+P=2P,对于共线的三点,P,Q,R’有P+Q+R’=0∞. 这里的0∞不是实数意义的0,而是指的无穷远点(这里的无穷远点就不细说了,你可以理解为这个点非常遥远,遥远到两条平行线都在这一点相交了。具体介绍可以看参考文献[2])。注意这里的R与R’之间的区别,P+Q=R,R并没有与P,Q共线,是R’与P,Q共线,不要搞错了。 法则详解: 这里的+不是实数中普通的加法,而是从普通加法中抽象出来的加法,他具备普通加法的一些性质,但具体的运算法则显然与普通加法不同。 根据这个法则,可以知道椭圆曲线无穷远点O∞与椭圆曲线上一点P的连线交于P’,过P’作y轴的平行线交于P,所以有无穷远点 O∞+ P = P 。这样,无穷远点 O∞的作用与普通加法中零的作用相当(0+2=2),我们把无穷远点 O∞ 称为零元。同时我们把P’称为P的负元(简称,负P;记作,-P)。(参见下图) 离散型椭圆曲线 上面给出的很好看的椭圆曲线是在实数域上的连续曲线,这个是不能用来加密的,原因我没有细究,但一定是连续曲线上的运算太简单。真正用于加密的椭圆曲线是离散型的。要想有一个离散型的椭圆曲线,先得有一个有限域。 域:在抽象代数中,域(Field)之一种可进行加、减、乘、除运算的代数结构。它是从普通实数的运算中抽像出来的。这一点与阿贝尔群很类似。只不过多了乘法,和与乘法相关的分配率。 域有如下性质[3]: 1.在加法和乘法上封闭,即域里的两个数相加或相乘的结果也在这个域中。 2.加法和乘法符合结合律,交换率,分配率。 3.存在加法单位,也可以叫做零元。即存在元素0,对于有限域内所有的元素a,有a+0=a。 4.存在乘法单位,也可以叫做单位元。即存在元素1,对于有限域内所有的元素a,有1*a=a。 5.存在加法逆元,即对于有限域中所有的元素a,都存在a+(-a)=0. 6.存在乘法逆元,即对于有限域中所有的元素a,都存在a*=0. 在掌握了这些知识后,我们将椭圆曲线离散化。我们给出一个有限域Fp,这个域只有有限个元素。Fp中只有p(p为素数)个元素0,1,2 …… p-2,p-1; Fp 的加法(a+b)法则是 a+b≡c (mod p);它的意思是同余,即(a+b)÷p的余数与c÷p的余数相同。 Fp 的乘法(a×b)法则是 a×b≡c (mod p); Fp 的除法(a÷b)法则是 a/b≡c (mod p);即 a×b∧-1≡c (mod p);(也是一个0到p-1之间的整数,但满足b×b∧-1≡1 (mod p); Fp 的单位元是1,零元是 0(这里的0就不是无穷远点了,而是真正的实数0)。 下面我们就试着把 这条曲线定义在Fp上: 选择两个满足下列条件的小于p(p为素数)的非负整数a、b,且a,b满足 则满足下列方程的所有点(x,y),再加上无穷远点O∞ ,构成一条椭圆曲线。 其中 x,y属于0到p-1间的整数,并将这条椭圆曲线记为Ep(a,b)。图是我手画的,大家凑合看哈。不得不说,p取7时,别看只有10个点,但计算量还是很大的。Fp上的椭圆曲线同样有加法,法则如下:         1. 无穷远点 O∞是零元,有O∞+ O∞= O∞,O∞+P=P         2. P(x,y)的负元是 (x,-y),有P+(-P)= O∞ 3. P(x1,y1),Q(x2,y2)的和R(x3,y3) 有如下关系: x3≡-x1-x2(mod p) y3≡k(x1-x3)-y1(mod p) 其中若P=Q 则 k=(3+a)/2y1 若P≠Q,则k=(y2-y1)/(x2-x1) 通过这些法则,就可以进行离散型椭圆曲线的计算。 例:根据我画的图,(1,1)中的点P(2,4),求2P。 解:把点带入公式k=(3*x∧2+a)/2y1 有(3*2∧2+1)/2*4=6(mod 7). (注意,有些小伙伴可能算出13/8,这是不对的,这里是模数算数,就像钟表一样,过了12点又回到1点,所以在模为7的世界里,13=6,8=1). x=6*6-2-2=4(mod 7) y=6*(2-4)-4=2 (mod 7) 所以2P的坐标为(2,4) 那椭圆曲线上有什么难题呢?在模数足够大的情况下,上面这个计算过程的逆运算就足够难。 给出如下等式: K=kG (其中 K,G为Ep(a,b)上的点,k为小于n(n是点G的阶)的整数)不难发现,给定k和G,根据加法法则,计算K很容易;但给定K和G,求k就相对困难了。 这就是椭圆曲线加密算法采用的难题。我们把点G称为基点(base point),k称为私钥,K称为公钥。 现在我们描述一个利用椭圆曲线进行加密通信的过程[2]: 1、用户A选定一条椭圆曲线Ep(a,b),并取椭圆曲线上一点,作为基点G。 2、用户A选择一个私钥k,并生成公钥K=kG。 3、用户A将Ep(a,b)和点K,G传给用户B。 4、用户B接到信息后 ,将待传输的明文编码到Ep(a,b)上一点M(编码方法很多,这里不作讨论),并产生一个随机整数r(r

228 评论

周一小姐

2008 年,中本聪在网上发表了一篇名为《比特币:一种点对点式的电子现金系统》(Bitcoin: A Peer-to-Peer Electronic Cash System)的论文,这为比特币的出现打下了基础。后来,到了 2009 年,他开发出了第一版比特币客户端程序 Bitcoin v0.1,获得了自己的第一笔比特币,这也标志着比特币金融体系的诞生。到当年年底,世界上一共产生了 160 多万枚比特币。

扩展资料:

2015年,加州大学洛杉矶分校金融学教授Bhagwan Chowdhry曾提名中本聪为2016年诺贝尔奖经济学奖的候选人。

Bhagwan Chowdhry说:“比特币的发明简直可以说是革命性的。中本聪的贡献不仅将会彻底改变我们对金钱的思考方式,很可能会颠覆央行在货币政策方面所扮演的角色,并且将会破坏如西联这样高成本汇款的服务,彻底消除如Visa,MasterCard、PayPal他们收取2-4%的中间人交易税,消除费事且昂贵的公证和中介服务,事实上它将彻底改变法律合约的方式。”

参考资料来源:百度百科—比特币

参考资料来源:百度百科—中本聪

80 评论

miss樱桃小米虫

中本聪,其实是一个网名,2008年11月,中本聪在一个隐秘密码学讨论小组中发布了他撰写的名为《比特币:一种点对点式的电子现金系统》论文。之后,2009年1月,中本聪成功开发出了比特币系统,并进行了首次“挖矿”试验,获得了世界上第一个比特币。

144 评论

蓝色琴弦

关于:为什么比特币的私钥无法被破解?以下为正文: 破解比特币私钥,实际上就是要在 1 到 2²⁵⁶ 之间找到一个数,这个数对应的钱包里面有比特币。 2²⁵⁶ 约等于 10⁷⁷,这是个巨大的数字,对比的话,人类可观测宇宙的基本粒子也就是在 10⁸⁰ 这个数量级上。 人类现有的超级计算机,前 500 强加起来的算力,大约是每秒进行 10¹⁸ 次浮点运算,有兴趣的人可以算一算,就算每次浮点运算能完成一次破解比特币的尝试,那完成破解需要多少时间。简单说,一年约有 3.1536 × 10⁷ 秒,按上文的假设,破解一个比特币需要的时间在 10⁵¹ 年这个数量级上。 实际上要花的时间比这多的多,比特币网络计算的是哈希值,现在比特币全网每秒可以做约 1.51 × 10¹⁸ 次哈希运算,这差不多相当于每秒做 1.91 × 10²² 次浮点运算,这远超过现有的超级计算机的算力(换句话说就是超级计算机没法对比特币网络进行攻击,能力差距太大,这和比特币网络解决的是一个专门问题,超级计算机要解决的是各种不同问题有关系)。 无论如何,我觉得超过 10⁴ 年(也就是一万年)的时间对我们的意义都不大了,甚至超过 10² 年(也就是一百年)的时间对我们都没有多大意义。想想,要花那么多年,只是破解一个钱包的私钥,还不知道这钱包里有多少比特币,这事情实在没有做的意义,就算是知道某个钱包里有很多比特币,投入产出也不可能合算。 这些年间,被盗的比特币都是从人类这边搞的,都是什么从持币人手里盗取了私钥之类的事情,直接攻击比特币网络尝试破解私钥的,闻所未闻,未来估计也不可能有了。 有些人担心量子计算机,首先,量子计算机现在还是早期,解决的都是特定问题,没有针对处理比特币网络的问题,其次,量子计算机的算力现在还是比较低的,远远威胁不到比特币网络,第三,就算量子计算机将来发展起来了,比特币网络也会一并演进的,到时肯定会有针对性的升级。总之,量子计算机并不是比特币的一个威胁。以下为该文的参考文献; How Hard Is It to Brute Force a Bitcoin Private Key? 超级计算机 500 强 PetaFLOPS and how it relates to Bitcoin Bitcoin Total Hash Rate(比特币全网算力) Observable universe(可观测宇宙)

178 评论

相关问答

  • 比特币问题研究论文

    行情就是一个大舞台,不是所有的故事都可以陈述,人是需要的某种信念来激励和约束的,人静而后安,安而能后定。过去, 在 无憾中微笑,才美丽;博弈,在眼泪中微笑,

    Mikewen126 4人参与回答 2023-12-07
  • 比特币论文开题报告

    行情就是一个大舞台,不是所有的故事都可以陈述,人是需要的某种信念来激励和约束的,人静而后安,安而能后定。过去, 在 无憾中微笑,才美丽;博弈,在眼泪中微笑,

    甜甜婉儿 3人参与回答 2023-12-06
  • 比特币的文献综述论文

    比特币它最基本的功能就是没有中间机构的 P2P ,或者说的更专业一点,比特币就是一个去中心化的 P2P。

    爬爬的蜜糖 4人参与回答 2023-12-12
  • 比特币论文文献参考

    参加比特币源码研读班后首次写作,看到前辈black写的有关密钥,地址写的很好了,就选了他没有写的椭圆曲线,斗胆写这一篇。 在密码学上有两种加密方式,分别是对

    泡沫鱼头 4人参与回答 2023-12-10
  • 毕业论文写比特币还是余额宝好

    意义:比特币于2008年11月1日由中本聪首次提出,2009年1月3日正式诞生。按照中本聪的想法,设计并发布开源软件,并在其上构建P2P网络。比特币是一种P2P

    小傻求好运 3人参与回答 2023-12-10