风险提示:理性看待区块链,提高风险意识!
如何为区块链生成公钥和私钥
首页 > 币界资讯 > 区块链知识 2019-03-02 18:01:41
币界网报道:

公钥加密或称非对称加密体制,是一种使用公钥和私钥对的加密体制。它是加密货币协议中最重要的部分之一,它被用于几个地方:加密货币钱包的创建,以确保加密货币只能由所有者使用,交易签名(数字签名),这是加密货币协议的核心组件。简而言之,如果您将加密货币发送给其他人,则使用您的私钥(或使用私钥生成的签名密钥)对该事务进行签名,并且使用您的公钥验证事务。所以,如果黑客获得了你的私钥,他们就可以把你的加密货币发给自己。

生成公钥和私钥有两种算法。例如,比特币协议使用椭圆曲线数字签名算法(ECDSA)。在本文中,我将解释rivests - shamir - adleman (RSA),并与ECDSA进行比较。RSA是最早、应用最广泛的公钥密码系统之一。它以其创始人Ron Rivest、AdiShamir和Leonard Adleman的名字命名,几乎成为公钥密码的同义词。

RSA算法

RSA使用模-n (mod n)算法广泛地使用算术运算。对n取余就是x除以n后的余数。例如,17取余5 = 2。RSA通常由三个主要部分组成(有时添加公钥共享是有意义的):· 生成公钥和私钥· 使用生成的公钥加密数据· 使用生成的私钥解密数据

生成公钥和私钥

为了生成RSA的公钥和私钥,Alice和Bob(这两个虚构的角色已经成为讨论密码学的行业标准)执行以下步骤:1. 选择两个较大的素数p和q,数值越大,RSA越难破解,但编码解码的时间越长。2. 计算n = pq和z = (p - 1)(q - 1)。3. 选择一个小于n的数e,除1外没有公因数,z或它们的最大公约数(gcd)等于1,gcd(e, z)等于1。在这种情况下,e和z是相对素数。e将用于加密。4. 求一个数d,使ed - 1能被z整除,另一种方法是对z = 1取余。d将用于解密。5. Bob或Alice提供给世界的公钥是一对数字(n, e),而私有密钥必须是秘密的,是一对数字(n, d)。

使用生成的公钥加密数据

假设Alice想传递一个讯息给Bob,由“位”模式表示整数m(明文消息),其中m < n。加密的明文消息m c m ^ = e mod n密文c将发送给Bob。注意,Alice使用的是Bob的公钥加密消息。使用生成的私钥解密数据要解密收到的密文,Bob计算m =c^d mod这需要使用他的私钥(N,d)。RSA的安全性依赖于这样一个事实:对于快速分解(素因子分解)数字,没有已知的算法。在本例中,公共值n放入p和q中。

RSA与ECDSA的比较

在ECDA中,私钥是随机生成的整数。在比特币协议中,它是256位(32字节)整数。ECDSA还可以使用相同的算法,使用不同的椭圆曲线生成公钥。比特币协议使用Secp256k1。在RSA中,密钥(公钥、私钥和签名)很大,密钥生成很慢。另一方面,RSA易于实现,而ECDSA难以实现。2010年12月,PlayStation 3遭到黑客攻击,原因是索尼没有正确实施该算法。这就是为什么建议使用已经测试过的库(如OpenSSL)来生成ECDSA密钥对的原因。大约一年前,我实现了一个名为eccpem的开源库,并安装了GitHub,它生成ECDSA密钥对,并使用OpenSSL库将它们存储在.pem文件中。

结论

大多数加密货币协议使用ECDSA(我认为这是有意义的)而不是RSA。至少有两个原因:· ECDSA使用的内存比RSA少得多。

· ECDSA比RSA快。

上一篇: 什么是公有链、联盟链和私有链?
下一篇: 数据外逃:为什么“胖协议”没有意义
推荐专栏
Boss Wallet Web3 Econom Pass
专注币圈最新资讯
通俗浅显地聊透Web3大事小情
读懂区块链生态与未来,尽在币界网!
热门币种
更多
币种
美元价格
24H涨跌幅
BTC比特币
60,963.61 USDT
¥435,103.38
-2.72%
ETH以太坊
3,368.69 USDT
¥24,042.67
-0.3%
BNB币安币
570.68 USDT
¥4,073.00
-0.28%
USDT泰达币
1.02 USDT
¥7.25
-0.19%
SOL
135.96 USDT
¥970.36
+7.66%
USDC
1.00 USDT
¥7.15
-0.01%
TON
7.59 USDT
¥54.14
+4.55%
XRP瑞波币
0.47720 USDT
¥3.41
+0.48%
DOGE狗狗币
0.12210 USDT
¥0.87140
+2.43%
ADA艾达币
0.39050 USDT
¥2.79
+3.88%
热搜币种
更多
币种
美元价格
24H涨跌幅
比特币
60962.19 USDT
¥442,884.21
-1.67%
Solana
137 USDT
¥995.29
-1.28%
Filecoin
4.3427 USDT
¥31.55
-2.63%
柚子
0.5716 USDT
¥4.15
-0.8%
Curve
0.2963 USDT
¥2.15
-6.88%
Terra Classic
8.216E-5 USDT
¥0.00
-0.98%
Shiba Inu
1.72E-5 USDT
¥0.00
-3.91%
Conflux
0.1563 USDT
¥1.14
-1.76%
狗狗币
0.1221 USDT
¥0.89
-4.16%
dYdX
1.3771 USDT
¥10.00
-1.76%
Arweave
25.8763 USDT
¥187.99
-10.41%
Uniswap
9.3568 USDT
¥67.98
-1.93%
最新快讯
更多
Symbiotic:sUSDe已达质押上限
2024-06-27 11:05:48
全网BTC期权未平仓头寸为209.2亿美元,ETH期权未平仓头寸为92.4亿美元
2024-06-27 11:04:11
全网ETH合约未平仓头寸超150亿美元
2024-06-27 11:02:28
币安完成MetalDAO(MTL)主网置换,并开放充提业务
2024-06-27 11:01:27
DeFianceCapital联创称BLASTFDV远不及其至少50亿美元的预期
2024-06-27 11:00:51
Gate.io首席安全官提出5项用户必知安全措施,共筑安全防线
2024-06-27 10:57:30
澳大利亚广播公司的YouTube账号遭劫持用来推销加密骗局
2024-06-27 10:52:09
下载币界网APP