以太坊BBA以太坊合并
这篇文章给大家聊聊关于以太坊BBA,以及以太坊合并对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。
本文目录
SuperCell--超级细胞密码学系统SuperCell--超级细胞超级细胞
一.前言:
2100万枚,总量固定永远不通胀,这是比特币最鲜明特征之一。与“总量固定”的比特币不同,以太坊和EOS等加密币都保留了一定速率的通胀。从而超级细胞(SuperCell)横空而世。
二.介绍:
英文名:SuperCell中文名:超级细胞代币名称:“SC”“超级细胞(SC)”是一种基于ERC20智能合约的通货紧缩类自销毁的加密货币SC。SC得到国际知名区块链研发团队R4,区块链联盟,超级账本linux基金会的支持。SC作为一项社会实验和金融案例研究而出现在ERC20智能合约,来探索衡量通货紧缩类加密货币的可行性。
“超级细胞”的主要特征:
1.代币初始发行量666万
2.每次ERC20链上转账时,百分之1的交易量会被像细胞分裂怡亚通销毁
3.永远不会有代币增发
4.IBO在交易平台上线后,以IBO总数量的90%的ETH在交易平台以单价不低于0.00275ETH回购。参与IBO的矿工会有稳地收益,直至IBO完成,流通总量达到2000000SC。IBO总数量的10%用于应用开发。
三.项目背景:
“销毁代币”相信这4个字在ERC20智能合约加密货币中已经非常常见,不少交易所、项目方为了提升代币价值,都会通过回购代币销毁的方法,来减少流通量从而提高代币市场价格,如此研发团队提出大胆的设想与创新:通过智能合约自动销毁代币,每一次转账都会自动销毁1%的交易量。而之前很多加密货币的销毁模式,大都是基于人为主动操作,带有明显的人治色彩,无论是透明度还是可信任度都不高。“超级细胞(SC)”研发团队表示:超级细胞出来的意图不是仅仅用于日常交易,而是用作对传统加密货币通货膨胀工具的一种去中心化对冲方案,一种分散的价值储存,它作为一项社会实验和金融案例研究,来探索衡量通货紧缩货币的可行性。
四.token经济模型
总发行量666万(永不增发)
社区生态激励200万(每月糖果计划)
基金会200万(锁仓,每年释放百分之20%)
矿工IBO200万(参与SC矿工计划)
创史团队奖励66万(上线知名交易所奖励团队)
五.ERC20智能合约地址:
0xe54b868443af0f48e18c722f2261841c7718cd41
六.团队人员
大卫Vyravipillai,是一名新加坡基金会的主席校长,自1985 年以来37年投资管理经历,毕业于哈佛大学,圣安德烈斯大学,大卫Vyravipillai是现超级细胞首席执行官创始人,负责超级细胞整个项目运营与发展。
乔什·肖尔斯,北卡罗来纳大学哲学与计算机研究学士,主修计算机专业。曾是虚拟货币在线/国际支付和欺诈方面的专家,也是Kraken的创始人兼首席执行官,Kraken是世界上最值得信赖和最大的比特币交易所之一,是深入虚拟货币行业15年的资深人士,现为超级细胞首席技术官CTO,主攻技术研究与开发。
ManishSharma,中文名:曼尼什·沙玛.曾是美国facebook工程师,拥有丰富的交易系统开发经验,能够做到精细化控制事物;并精通主流开源框架,如rocketmq,iBatis,netty,dubbo,zookeeper,cat,mycat等,熟悉微服务化开发,大数据量、高并发系统,拥有大型网站构建经验。现为超级细胞分布式工程师。
BrandonArrindell中文名:布兰登·阿林德尔,BBAHons(会计与金融)新加坡国立大学出身,美国企业家、投资者、软件工程师。布兰登·阿林德尔是著名的Mosaic浏览器共同开发者,第一个被广泛使用的浏览器;网景通讯公司的创始人;硅谷风险投资公司AndreessenHorowitz创始人和普通合伙人,现为超级细胞顾问。
超级细胞(SC)将打造智能合约加密货币,第一可实用性通货紧缩类加密货币,打开加密货币通往世界的另一扇大门。
密码学系统本文分为7个部分,第1部分介绍密码学的基本概念,第2部分讲解常见的对称加密算法,第3部分讲解常见的非对称加密算法,第4部分讲解数字签名,第5部分讲解PKI(PublicKeyInfrastructure),第6部分讲解哈希函数加密,第7部分讲解密码学在区块链里的应用,最后一部分会讲解随机数。
比较常见的对称加密算法有:DigitalEncryptionStandard(DES),Triple-DES,IDEA,BLOWFISH。
对称加密的挑战:
非对称加密的挑战:
比较常见的非对称加密算法有:RSA,ElGamal,ECC。
菲斯特尔结构的块加密算法是著名的一个分组密码加密的设计模型。
1990年后对DES进行彻底的密钥搜索的速度开始引起DES用户的不适。然而,用户并不想取代DES,因为它需要花费大量的时间和金钱来改变广泛采用并嵌入到大型安全架构中的加密算法。
务实的做法不是完全放弃DES,而是改变DES的使用方式。这导致了三重DES(3DES)的修改方案。
三重DES
在使用3TDES之前,用户首先生成并分配一个3TDES密钥K,它由三个不同的DES密钥K1,K2和K3组成。
详细可以看Triple-DES
高级加密标准(AdvancedEncryptionStandard,AES)是目前比较流行和广泛采用的对称加密算法。发现至少比三重DES快6倍。
AES的功能如下:
对称密钥对称分组密码
128位数据,128/192/256位密钥
比Triple-DES更强更快
提供完整的规格和设计细节
详细可以看AES
这个密码系统是最初的系统之一。即使在今天,它仍然是最多被使用的密码系统。该系统由三位学者RonRivest,AdiShamir和LenAdleman发明,因此被称为RSA密码系统。
下面给出生成RSA密钥对的一个例子(为了便于理解,这里采用的素数p&q值很小,实际上这些值非常高)。
设两个素数为p=7且q=13。因此,模数n=pq=7×13=91。
选择e=5,这是一个有效的选择,因为没有数字是公因子5和(p-1)(q-1)=6×12=72,除了1。
这对数字(n,e)=(91,5)形成公钥,可以让任何我们希望能够向我们发送加密消息的人使用。
向扩展欧几里德算法输入p=7,q=13和e=5。输出将是d=29。
因此,公钥是(91,5),私钥是(91,29)。
假设发送者希望发送一些文本消息给公钥为(n,e)的人。然后发件人将明文表示为一系列小于n的数字。
为了加密第一个明文P,它是一个模n的数字。加密过程是简单的数学步骤:
C=Pemodn
换句话说,密文C等于明文P乘以自己e次,然后减去模n。这意味着C也是一个小于n的数字。
回到我们的密钥生成例子,明文P=10,我们得到密文C:
C=105mod91
属于ECC的一种变化。加密的核心理念与RSA相似,也是利用离散对数很难求解。
但与RSA不同的是公钥的组成部分,EIGamal的公钥有三部分组成,质模数p,生成元素g,以及公共的Y=gx(g的x次方)modp。
详细可以看ElGamalCrytosystem
椭圆曲线密码术(ECC)是用来描述一套密码工具和协议的术语,其安全性基于特殊版本的离散对数问题。它不使用数字模p。ECC基于与称为椭圆曲线的数学对象相关联的数字集合。有这些数字的加法和计算倍数的规则,就像数字模p一样。
ECC包含许多最初为模块化数字设计的密码方案的变体,如ElGamal加密和数字签名算法。
相信当应用于椭圆曲线上的点时,离散对数问题更加困难。这会提示从数字模p切换到椭圆曲线上的点。如果我们使用基于椭圆曲线的变体,也可以用较短的密钥获得等效的安全级别。
较短的密钥有两个好处:
易于管理
高效的计算
这些优点使基于椭圆曲线的加密方案变体对计算资源受到限制的应用程序非常有吸引力。
详细可以看EllipticCurveCryptography
^符号表示为多少次方
签名=消息^DmodN(D和N为签名者的私钥,计算消息的D次方并求modN,所得余数即为签名)
消息=签名^EmodN(E和N为签名者的公钥,计算签名的E次方并求modN)
举个例子:
私钥:D=29;N=323
公钥:E=5;N=323
消息:123
由于N的值为323,因此消息需要为0~322这个范围内的整数.假设需要对123这个消息进行签名.
用私钥(D,N)=(29,323)对消息123进行签名.
消息^DmodN=123^29mod323=157
因此(消息,签名)=(123,157)
用公钥(E,N)=(5,323)对消息进行验证
签名^EmodN=157^5mod323=123
得到消息123与发送者发送过来的消息123是一致的,因此签名验证成功.
https://andrea.corbellini.name/2015/05/17/elliptic-curve-cryptography-a-gentle-introduction/
加法逆:a在集合中,-a在集合中的定义为使a+(-a)=0,这就是加法逆元运算
乘法逆:a在集合中,且不为0,a^-1在集合中定位为使a*a^-1=1,这就是乘法逆元运算
在聊椭圆曲线前,我们先打一些基础然后再讨论一下对数问题.
在一个集合上定义一个二元运算,这就是数学中的群。一个集合G要成为一个群,必须满足下面4个条件:
从平常的加法概念来看,整数集Z是一个群(而且是阿贝尔群).自然数集N不是一个群.
我们可以在椭圆曲线上定义一个群:
https://andrea.corbellini.name/ecc/interactive/reals-add.html
如下图:点A的自我相加过程就是做乘法的过程这个过程叫PointDoubling
计算nP需要做n次加法如果n为k位二进制时间复杂度为O(2^k)
倍加算法比如n=151二进制为10010111
用倍加算法时间复杂度有了很大的改进O(logN)orO(k)
Q=nP
这只是p=211,像Secp256k1这条椭圆曲线的p=115792089237316195423570985008687907853269984665640564039457584007908834671663一个78位的数字要怎么求出n?
一个通俗的比喻:假设这些点是有个人A在一个很大的房间里玩弹珠的游戏玩了两年两年后A的朋友B来了B看到了最后的点以及A告诉B起点但是B怎么能知道A是弹了多少次才从起点弹到终点?
上面这两张图是椭圆曲线-Secp256K1:y^2=x^3+7
第一张图:定义在实数域
第二张图:定义在有限域Zp
是用下面的参数(p,a,b,G,n,h)形成的:
p=FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFC2F=2^256-2^32-997
a=0
b=7
G=[0x79BE667E_F9DCBBAC_55A06295_CE870B07_029BFCDB_2DCE28D9_59F2815B_16F81798,
0x483ADA77_26A3C465_5DA4FBFC_0E1108A8_FD17B448_A6855419_9C47D08F_FB10D4B8]
n=0xFFFFFFFF_FFFFFFFF_FFFFFFFF_FFFFFFFE_BAAEDCE6_AF48A03B_BFD25E8C_D0364141
h=1
如果椭圆曲线上一点P,存在最小的正整数n使得数乘nP=O∞,则将n称为P的阶
计算可得27P=-P=(3,13)所以28P=0∞P的阶为28
如何签名?
Sig=Fsig(Fkeccak256(m),k)
如何计算r
如何计算s
s≡q^-1(Keccak256(m)+r*k)(modp)
如何验证签名?
P.S.上述验证签名的过程中没有用到发送者的私钥
RSA密钥大小(bits)ECC密钥大小(bits)
1024160
2048224
3072256
7680384
15360521
有一个研究例子同一台计算能力的计算机
为什么比特币和以太坊要选择Secp256k1这条椭圆曲线?
假如有人提供一条椭圆曲线比如Secp256r1如何验证这条曲线的安全性?
因为公钥是公开的,很容易被破坏或者篡改,因此需要建立和维持一种可信的基础机制来管理公钥。
PKI由5部分组成:
作为比喻,证书可以被视为发给该人的身份证。人们使用驾照,护照等身份证来证明自己的身份。数字证书在电子世界中具有相同的基本功能。
但有一点不同,数字证书不仅发给人,还可以发给电脑,软件包或任何其他需要证明电子世界身份的东西。
数字证书基于ITU标准X.509,该标准定义了公钥证书和认证验证的标准证书格式。因此数字证书有时也被称为X.509证书。
与用户客户端相关的公钥与证书颁发机构(CA)一起存储在数字证书中,以及其他相关信息,例如客户信息,到期日期,使用情况,发行者等。
CA对此整个信息进行数字签名并在证书中包含数字签名。
任何需要对客户的公共密钥和相关信息进行保证的人,他都会使用CA的公钥进行签名验证过程。成功的验证可确保证书中给出的公钥属于在证书中给出详细信息的人员。
下图了展示了个人/实体获取数字证书的过程:
如图所示,CA接受来自客户端的申请以证明其公钥。CA在适当验证客户身份后,向该客户发出数字证书。
如上所述,CA向客户颁发证书并协助其他用户验证证书。CA负责正确识别要求颁发证书的客户的身份,并确保证书中包含的信息是正确的并对其进行数字签名。
CA的关键功能:
证书类别
有四种典型的证书类别:
第1类-通过提供电子邮件地址可轻松获取这些证书。
第2类-这些证书要求提供额外的个人信息。
第3类-这些证书只有在对请求者的身份进行检查后才能购买。
第4类-它们被需要高度信任的政府和金融机构使用。
CA可以使用第三方注册机构(RA)对要求证书确认其身份的人或公司进行必要的检查。RA可能在客户端看起来像一个CA,但它们实际上并不签署发布的证书。
这是发布证书的管理系统,暂时或永久暂停,续订或撤销证书。证书管理系统通常不会删除证书,因为可能有必要在某个时间点证明其身份,这是出于法律原因。CA和相关RA运行证书管理系统,以便能够跟踪他们的责任。
虽然客户端的公钥存储在证书中,但关联的私钥可以存储在密钥所有者的计算机上。这种方法一般不采用。如果攻击者能够访问计算机,他可以轻松访问私钥。出于这个原因,私钥存储在通过密码保护的安全可移动存储令牌上。
不同的供应商经常使用不同的专有的存储格式来存储密钥。例如,Entrust使用专有的.epf格式,而Verisign,GlobalSign和Baltimore使用标准的.p12格式。
1.6HierarchyofCA:
由于拥有庞大的网络和全球通信的要求,所有用户从唯一一个可信的CA获得证书是不切实际的。其次,只有一个CA的可用性可能会导致大的阻碍,如果CA受到影响。
在这种情况下,层次认证模型很受关注,因为它允许在两个通信方与相同CA没有信任关系的环境中使用公钥证书。
根CA位于CA层次结构的顶部,根CA的证书是自签名证书。
直接隶属于根CA(例如,CA1和CA2)的CA具有由根CA签名的CA证书。
层次结构中下级CA(例如,CA5和CA6)下的CA具有由上级下级CA签名的CA证书。
证书颁发机构(CA)层次体现在证书链中。证书链跟踪从层次结构中的分支到层次结构根的证书路径。
下图显示了具有从实体证书到两个从属CA证书(CA6和CA3)到根证书颁发机构CA证书的证书链的CA层次结构:
验证证书链是确保特定证书链有效,正确签署和可信的过程。以下过程验证证书链,从提供验证的证书开始-
一个正在验证其真实性的客户端提供他的证书,通常连同证书链一直到根CA.
验证者获取证书并使用发行者的公钥进行验证。发行人的公钥在发行人的证书中找到,该证书位于客户证书旁边的链中。
现在,如果已签署发行人证书的较高的CA由验证方信任,则验证成功并在此停止。
否则,发行人证书的验证方式与客户在上述步骤中完成的相似。此过程将继续进行,直到在其中找到可信的CA,否则它将持续到根CA。
哈希函数非常有用,并且出现在几乎所有信息安全应用程序中。
哈希函数是将数字输入值转换为另一个压缩数值的数学函数。哈希函数的输入具有任意长度,但输出始终为固定长度。
哈希函数返回的值称为消息摘要或简单的散列值。下面的图片说明了哈希函数:
为了成为一个有效的加密工具,哈希函数具有以下属性:
散列的核心是一个数学函数,该函数在两个固定大小的数据块上运行以创建散列码。这个哈希函数构成哈希算法的一部分。
每个数据块的大小因算法而异。通常块大小从128位到512位。下图演示了哈希函数:
哈希算法涉及上述哈希函数,如分组密码。每一轮都会输入一个固定的大小,通常是最近消息块和最后一轮输出的组合。
这个过程重复进行多次,以散列整个消息。哈希算法的示意图如下图所示:
因为第一消息块的散列值变成第二散列操作的输入,其输出改变第三操作的结果,等等。这种效应被称为散列的雪崩效应。雪崩效应对两个即使是单个数据位也不相同的消息产生明显不同的散列值。理解哈希函数和算法之间的区别。哈希函数通过对两个固定长度的二进制数据块进行操作来生成哈希码。哈希算法是一个使用哈希函数的过程,指定如何分解消息以及如何将先前消息块的结果链接在一起。
后来在1995年,SHA-1被设计用于纠正SHA-0的所谓弱点。SHA-1是现有SHA哈希函数中使用最广泛的。它被用于几个广泛使用的应用程序和协议,包括安全套接字层(SSL)安全。
2005年,发现了一种在实际时间框架内发现SHA-1冲突的方法,使SHA-1的长期可用性受到怀疑。
SHA-2系列具有四个更进一步的SHA变体,SHA-224,SHA-256,SHA-384和SHA-512,取决于其散列值中的位数。还没有成功的攻击报道过SHA-2哈希函数。
虽然SHA-2是一个强大的哈希函数。虽然有很大的不同,但其基本设计仍然遵循SHA-1的设计。因此,NIST要求提供新的竞争性散列函数设计。
2012年10月,NIST选择Keccak算法作为新的SHA-3标准。Keccak提供了许多好处,例如高效的表现和良好的攻击抵抗力。
该集包括RIPEND,RIPEMD-128和RIPEMD-160。此算法还有256位和320位版本。
原始的RIPEMD(128位)基于MD4中使用的设计原则,并且发现提供可疑的安全性。RIPEMD128位版本是解决原始RIPEMD漏洞的快速修复替代品。
RIPEMD-160是一个改进版本,是使用最广泛的版本。与RIPEMD-128和RIPEMD-160相比,256和320位版本分别减少了意外冲突的可能性,但没有更高的安全等级。
MerkleTree默克尔树
哈希算法的一个重要应用是默克尔树(Merkletree),默克尔树是一种数据结构,通常是一个二叉树,也有可能是多叉树,它以特定的方式逐层向上计算,直到顶部,最顶层叫做默克尔根(MerkleRoot),默克尔树最为常见和最简单的是二叉默克尔树。
END,本文到此结束,如果可以帮助到大家,还望关注本站哦!
BitgetAPP如何下载?BitgetAPP如何购买以太经典