比特币私钥公钥作用 比特币 私钥 公钥
一、什么是比特币私钥,公钥和地址
比特币私钥、公钥和地址的定义及关系
私钥:
定义:私钥是比特币中最核心的部分,它是一个由32个字节(256位)组成的数组,通常被转换成一种易于识别和输入的格式(如Base58编码),形如5KYZdUEo39z3FPrtuX2QbbwGnNP5zTd7yyr2SC1j299sBCnWjss的字符串就是一个私钥的示例。功能:私钥是比特币安全性的基础,它用于对交易进行签名,以证明交易是由私钥的持有者发出的。只有拥有私钥的人才能花费对应地址上的比特币。生成:私钥的生成需要依赖密码学上安全的随机性,以确保私钥的唯一性和安全性。私钥的总数非常大(2^256个),因此通过遍历所有私钥来找到有比特币的私钥在现实中是不可能的。
公钥:
定义:公钥是由私钥通过椭圆曲线算法生成的,它是一个65个字节(未压缩)或33个字节(压缩)的数组,通常被转换成16进制格式显示,如04a34b99f22c790c4e36b2b3c2c35a36db06226e41c692fc82b8b56ac1c540c5bd5b8dec5235a0fa8722476c7709c02559e3aa73aa03918ba2d492eea75abea235。功能:公钥用于验证私钥签名的正确性。在比特币交易中,发送方会使用私钥对交易进行签名,并将公钥一起发送给接收方和矿工。矿工可以使用公钥来验证签名的有效性,从而确认交易是由私钥的持有者发出的。压缩:公钥可以被压缩,压缩后的公钥只有33个字节,而未压缩的公钥有65个字节。压缩公钥可以减少交易数据的大小,对整个比特币网络有益。
地址:
定义:地址是由公钥生成的,它是一个经过Base58编码的字符串,形如1HZwkjkeaoZfTSaJxDw6aKkxp45agDiEzN或1F3sAm6ZtwLAUnj7d38pGFxtP3RVEvtsbV。功能:地址是比特币网络中用于接收比特币的唯一标识。用户可以将比特币发送到对方的地址上,而无需知道对方的私钥或公钥。地址的生成过程涉及对公钥进行SHA-256和RIPEMD-160哈希运算,并在结果前添加一个版本字节,然后进行Base58编码。与私钥、公钥的关系:一个私钥可以生成一个压缩的公钥和一个未压缩的公钥,每个公钥都会生成一个对应的地址。因此,一个私钥实际上对应两个地址(一个由未压缩公钥生成,一个由压缩公钥生成)。然而,这两个地址上的比特币都可以使用同一个私钥来花费。
总结:
私钥是比特币安全性的基础,用于对交易进行签名。公钥用于验证私钥签名的正确性。地址是由公钥生成的,用于接收比特币。一个私钥可以生成两个地址(一个由未压缩公钥生成,一个由压缩公钥生成),但两个地址上的比特币都可以使用同一个私钥来花费。(注:此图展示了比特币私钥、公钥和地址之间的生成关系及流程)
二、比特币的地址、公钥、私钥,你都了解了吗
了解比特币,就不可避免地要掌握什么是比特币的地址、公钥、私钥。下面我们逐一解释这些概念。
1.地址:类似于银行的账户号码,是在创建数字钱包时自动生成的。简单来说,创建钱包时会生成一对私钥和公钥,然后公钥通过特定算法生成地址。这个地址实质上是一串字符,例如1QCXRuoxWo5bYa9NxhaVBArBQYHatHJrU3。地址用于接收比特币,就像银行账户用于接收存款一样。
2.公钥:可以看作是比特币地址的“密码”。它是一串很长的由钱包生成的随机数,例如4KeZdDEu11z3gPrtuX3phjwGnNP4RFd7yyrCVC1j2W LBB9ZXMCJ。公钥用于验证比特币的所有权,并且是公开的。
3.私钥:相当于银行密码,也是一串很长的随机数。私钥是唯一能够证明你拥有比特币的密钥,只有使用私钥才能进行比特币的转账、交易和使用。私钥必须保密,绝不能泄露给他人。
4.比特币的交易是透明的,所有的交易记录都存储在一个公开的账本中。每个交易记录包括交易流水单号、发币人的发币地址、收币人地址以及发币人的找零地址。
5.在比特币交易中,私钥会被加密成签名,并与公钥一起写入交易信息中。矿工会将这些信息放入验证函数中,如果结果为“true”,则交易被认为是真实有效的;如果结果为“false”,则交易存在问题,无法通过验证。
通过以上解释,希望能帮助您对比特币的地址、公钥和私钥有一个初步的了解。感谢您的阅读!
三、入门科普:比特币的私钥、公钥和地址是什么
上一篇,我们讲到了币圈要注意防范传销、洗钱等一类的骗局,保护好自己的资产。这一篇,我要告诉大家,进行比特币交易时,都会用到的私钥、公钥与地址,如果你还不了解它们的重要性,随便交易,很容易弄丢自己的资产。那什么是私钥、公钥与地址?三者之间有着什么样的关系呢?
01
私钥
1.导出:
创建钱包后,输入密码可以导出私钥,私钥由很长的字符串组成,且是随机生成的,一个地址只有一个私钥。
2.用途:
用于控制交易时的签名,拥有私钥才能控制账户的资金,相当于银行账户的交易密码,用来解密公钥加密的信息。
3.注意事项:
私钥是用来证明这笔交易的发起人确实是比特币的所有者。所以私钥一定不能曝光,私钥一旦泄露,你的比特币将会有被盗的风险。用户必须保管好私钥,防止泄露或丢失。
02
公钥
1.导出:
公钥是由私钥通过算法生成的,使用了椭圆曲线加密,通过私钥可以计算出唯一的公钥。
2.用途:
公钥是用来验证交易的签名,一个私钥签名的数据,只有对应的公钥才能对其进行验证,公钥相当于银行账户,公开后无风险。
03
地址
1.导出:
地址由公钥生成的,使用了哈希运算。创建钱包后会生成一个以“0x”开头的 42位字符串,这个字符串就是钱包地址,一个钱包对应一个钱包地址,地址唯一且不能修改,也就是说一个钱包中所有代币的转账收款地址都是一样的。
2.用途:
由于公钥太长,在交易中不方便使用,所以就有了地址,地址是由公钥生成的,地址相当于银行卡号,用来发送和接收比特币。
3.注意事项:
平台上不同代币的转账收款地址一般都不同,因此,转币到交易平台前一定要确认好地址。
总结
私钥→公钥→钱包地址(不可逆)
私钥用来签名交易,公钥用来验证私钥签名的交易,地址用来收款。
公钥、私钥以及地址都在比特币交易中起到了不同的作用,所以才能顺利的完成一笔数字货币的交易。所以用户必须好好保存,防止泄露重要信息。
四、公钥与私钥的区别与应用。
现实生活中,我要给依依转1个比特币,我需要在比特币交易平台、比特币钱包或者比特币客户端里面,输入我的比特币钱包地址、依依的钱包地址、转出比特币的数量、手续费。然后,我们等十分钟左右,矿工处理完交易信息之后,这1个比特币就成功地转给依依了。
这个过程看似很简单也很便捷,跟我们现在的银行卡转账没什么区别,但是,你知道这个过程是怎样在比特币系统里面实现的吗?它隐藏了哪些原理呢?又或者,它是如何保证交易能够在一个安全的环境下进行呢?
我们今天就来讲一讲。
对于转出方和接收方来讲,也就是我和依依(我是转出方,依依是接收方)我们都需要出具两个东西:钱包地址、私钥。
我们先说钱包地址。比特币钱包地址其实就相当于银行卡、支付宝账号、微信钱包账号,是比特币支付转账的“凭证”,记录着平台与平台、钱包与钱包、钱包与平台之间的转账信息。
我们在使用银行卡、支付宝、微信转账时都需要密码,才能够支付成功。那么,在比特币转账中,同样也有这么一个“密码”,这个“密码“被称作“私钥”。掌握了私钥,就掌握了其对应比特币地址上的生杀大权。
“私钥”是属于“非对称加密算法”里面的概念,与之对应的还有另一个概念,名叫:“公钥”。
公钥和私钥,从字面意思我们就可以理解:公钥,是可以公开的;而私钥,是私人的、你自己拥有的、需要绝对保密的。
公钥是根据私钥计算形成的,比特币系统使用的是椭圆曲线加密算法,来根据私钥计算出公钥。这就使得,公钥和私钥形成了唯一对应的关系:当你用了其中一把钥匙加密信息时,只有配对的另一把钥匙才能解密。所以,正是基于这种唯一对应的关系,它们可以用来验证信息发送方的身份,还可以做到绝对的保密。
我们举个例子讲一下,在非对称加密算法中,公钥和私钥是怎么运作的。
我们知道,公钥是可以对外公开的,那么,所有人都知道我们的公钥。在转账过程中,我不仅要确保比特币转给依依,而不会转给别人,还得让依依知道,这些比特币是我转给她的,不是鹿鹿,也不是韭哥。
比特币系统可以满足我的上述诉求:比特币系统会把我的交易信息缩短成固定长度的字符串,也就是一段摘要,然后把我的私钥附在这个摘要上,形成一个数字签名。因为数字签名里面隐含了我的私钥信息,所以,数字签名可以证明我的身份。
完成之后,完整的交易信息和数字签名会一起广播给矿工,矿工用我的公钥进行验证、看看我的公钥和我的数字签名能不能匹配上,如果验证成功,都没问题,那么,就能够说明这个交易确实是我发出的,而且信息没有被更改。
接下来,矿工需要验证,这笔交易花费的比特币是否是“未被花费”的交易。如果验证成功,则将其放入“未确认交易”,等待被打包;如果验证失败,则该交易会被标记为“无效交易”,不会被打包。
其实,公钥和私钥,简单理解就是:既然是加密,那肯定是不希望别人知道我的消息,所以只能我才能解密,所以可得出:公钥负责加密,私钥负责解密;同理,既然是签名,那肯定是不希望有人冒充我的身份,只有我才能发布这个数字签名,所以可得出:私钥负责签名,公钥负责验证。
到这里,我们简单概括一下上面的内容。上面我们主要讲到这么几个词:私钥、公钥、钱包地址、数字签名,它们之间的关系我们理一下:
(1)私钥是系统随机生成的,公钥是由私钥计算得出的,钱包地址是由公钥计算得出的,也就是:私钥——公钥——钱包地址,这样一个过程;
(2)数字签名,是由交易信息+私钥信息计算得出的,因为数字签名隐含私钥信息,所以可以证明自己的身份。
私钥、公钥都是密码学范畴的,属于“非对称加密”算法中的“椭圆加密算法”,之所以采用这种算法,是为了保障交易的安全,二者的作用在于:
(1)公钥加密,私钥解密:公钥全网公开,我用依依的公钥给信息加密,依依用自己的私钥可以解密;
(2)私钥签名,公钥验证:我给依依发信息,我加上我自己的私钥信息形成数字签名,依依用我的公钥来验证,验证成功就证明的确是我发送的信息。
只不过,在比特币交易中,加密解密啦、验证啦这些都交给矿工了。
至于我们现在经常用的钱包APP,只不过是私钥、钱包地址和其他区块链数据的管理工具而已。钱包又分冷钱包和热钱包,冷钱包是离线的,永远不联网的,一般是以一些实体的形式出现,比如小本子什么的;热钱包是联网的,我们用的钱包APP就属于热钱包。
-
芝麻开门交易所官方下载最新版 芝麻交易 11-09