区块链数字钱包——未来世界的银行卡

简介: “区块链数字钱包”就是未来世界的银行卡,认识和保护它就是在守卫我们自己的财产。

云栖号资讯:【点击查看更多行业资讯
在这里您可以找到不同行业的第一手的上云资讯,还在等什么,快来!

“区块链数字钱包”就是未来世界的银行卡,认识和保护它就是在守卫我们自己的财产。

钱包本质上是一个工具,目前绝大多数的钱包都是在网络中建立了属于用户的单独区块空间,它是去中心化的。

image

如果在你的印象里,区块链钱包就仅仅是数字资产的管理软件,那么就显得有些狭隘了。试想如果我们现在每个人手机里的支付宝APP只是人民币资产管理平台,只能用来转账和收款,还会有那么多人用吗?

人们之所以频繁使用支付宝,而不是现金和银行卡,最重要的原因是支付宝让支付和交易变得更加简单便捷了,少了纸币的携带、假钞和找零烦恼,同样也少了银行卡复杂繁琐的支付流程,仅仅通过一个二维码就可以轻松完成所有的支付流程。也正是因为支付宝极大地降低了交易成本,提升了交易效率,才使得不管是五星级酒店,还是街边卖红薯的商贩,都接受支付宝支付。

image

在区块链领域同样存在类似的问题,大家都知道私钥对于数字资产意味着什么,任何时候只要私钥丢失,就意味着所有的数字资产很容易就可以被人盗走,所以私钥通常都是保存在本地,比如手机APP、互联网的硬件等,而不会像支付宝那样将密码保存在服务端。私钥保存在本地的代价就是任何区块链交易都需要在本地完成私钥签名,才能将整个交易流程走通,这就使得现有的很多DAPP无法做到无缝地体验,换言之区块链钱包之于DAPP,就如同支付宝之于各种电商APP。

image

“区块链数字钱包”就是未来世界的银行卡,认识和保护它就是在守卫我们自己的财产。在各大聊天平台交流中和相关数字货币的报道中,我们看到了不少人由于对“区块链数字钱包”的理解不清而至私钥保护不善造成个人数字资产损失的情况,这真的不应该。

每当进行数字资产投资时,我们不能仅仅依靠交易所来存储数字资产,我们更需要有个自己的数字钱包,来存储属于我们个人的数字资产,了解“区块链数字钱包”(以下简称钱包)的相关知识更是我们投资前就应该弄清楚的。

初识“区块链数字钱包”

钱包本质上是一个工具,目前绝大多数的钱包都是在网络中建立了属于用户的单独区块空间,它是去中心化的。一般意义上的银行卡是由中心化的银行发放,并进行其中的资产管理,我们密码丢失,可以通过相关证明来让银行帮忙找回,我们银行卡遗失,别人拿到银行卡没有密码也取不走我们的资产,我们更可以通过银行冻结个人银行卡账户,重新办理新的银行卡废除旧的银行卡;钱包则不然,丢失了打开钱包的钥匙谁也没法帮我们找回钱包。

1. 区块链钱包(Block Chain Wallet)

区块链钱包(Block Chain Wallet):是密钥的管理工具,它只包含密钥而不是确切的某一个代币;钱包中包含成对的私钥和公钥,用户用私钥来签名交易,从而证明该用户拥有交易的输出权;而输出的交易信息则存储在区块链中;用户在使用钱包时, 你的 Keystore, 助记词, 明文私钥, 都是钱包;Keystore 是你加了”锁”的钱包,而助记词和明文私钥是完全暴露在外的钱包,没有任何安全性可言,所以在使用助记词和明文私钥时,一定要注意保密。

区块链钱包在2011年8月诞生,并此后在代币交易中发挥着巨大的作用;由于该平台被密码学严格保护,因此基本不用担心被黑客袭击。区块链钱包本身就相当于个人银行账户,在银行中我们创建存款账户并且存取现金,那么类似地,在区块链钱包中我们创建区块链账号并且存取比特币。在该平台上,用户可以在任何时间段将比特币转换成现金或用现金来支付比特币,下图比较了区块链钱包和银行的区别,左边的区块链钱包识别码对应右边银行的客户ID,左边的比特币地址对应右边银行的存款账号。

image

2. 钱包需要先理解几个概念

钱包一般包含以下内容:公钥、私钥、助记词、keystore、密码;这里的内容就稍微有点烧脑了,本质上,钱包和钥匙是一一对应的,固定的钥匙直接就可以在网络上打开属于自己的钱包,但为了避免在网络传输过程中的泄密,密码学家运用非对称加密技术,发明了公钥和私钥,公钥用于传输,私钥用于解密,简单的看,我们可以认为公钥就是银行卡号,而私钥就是银行密码。

私钥=keystore 密码,私钥是由五六十位包含数字和区分大小写的字母所组成。为了方便数字资产交易,用简单的密码加上keystore我们就能便捷的转移数字资产。助记词是加密了的私钥,基本也就是私钥,它是为了便于导出keystore而发明的。

“区块链钱包”的技术颠覆在哪里?

在使用钱包的时候,大家一定要多学习多研究。因为区块链是有匿名性的,使用各种钱包是不需要实名认证。虽然你可以看到交易转账的地址,但是你并不知道地址的使用者是谁。

而且,区块链的信息是不可逆转的,万一你小心把币打错地址了,可就找不回来了。我们把币存在钱包里,到底是放在哪里了呢?是不是就在钱包里呢?

我们使用的去中心化的区块链货币钱包,其实只是一个区块链的软件。你的币不是存在钱包公司,也不是存在你的手机设备上的,币还是在区块链网络的地址中的。钱包只是通过服务器来把区块链的各种代码展现给你,建立了一个通道,把你的各种操作指令发到区块链上。所以,区块链钱包是不存在银行冻结你账户或者公司冻结你账户的情况,只要丢失了私钥,你就再也无法打开钱包,损失你钱包中的币。从这个角度来看,其实钱包安不安全与你私钥保管有很大的关系,因为钱包服务商是不会保存你的私钥的,不会放在服务器上;即使是钱包出现问题无法登陆,或者版本更新,再或者被黑客攻击等等各种问题,都不会影响你的资产。这么来看,其实私钥是保存加密货币最重要的东西。

1. 钱包背后的密码学原理

数字钱包的生成可以简单的分解为三个步骤:

创建随机私钥(64位16进制字符/256比特/32字节);从私钥推导出公钥(128位16进制字符/512比特/64字节);从公钥中导出地址(40位16进制字符/160比特/20字节)。

简单的步骤背后已经囊括了密码学中大多数的技术:随机数生成器、非对称加密、单向散列函数等。

image

2. 区块链钱包“私钥”、“公钥”、“地址”间的智能合约

(1)私钥

通常是由随机算法生成的,说白了,就是一个巨大的随机整数,以太坊钱包的私钥就是64 位的 16 进制哈希值字符串。

(2)助记词

这么多个字节可怎么记呢?所以有的钱包就就出现了助记词,一般情况下,助记词由一些单词组成,只要你记住这些单词,按照顺序在钱包中输入,也能打开钱包,对吧,单词可比一串代码好记多了。

(3)keystore

有的钱包会采取把私钥制作成keystore让用户导出保存,这个Keystore就是私钥经过加密过后的一个文件,需要你自己设置的密码才能打开文件。这样的好处是就算keystore文件被盗,只要你额外设置的密码够长够随机,那么短时间内私钥也不会泄露,有充足的时间转移地址里面的加密货币到其他地址。

(4)公钥

那么,别人要给你转账怎么办呢?但是你肯定不能把私钥告诉别人,对吧,私钥就代表了你对钱包的所有权,这是用密码学来保护的。所以,我们需要另一个东西,就是别人能给你转账,同时又不会泄露你的私钥,我们用到了哈希加密技术,把私钥转换一下得到一串字符,我们把它叫做公钥。哈希加密技术目前的技术水平是不可逆的,也就是说通过公钥几乎不可以倒推出来私钥,所以可以认为这种方法比较安全。一般情况,我们转账都用一个收币地址,这是通过公钥转化过来的,是公钥的缩减版本,公钥和收币地址之间是可以相互转换的。

image

  1. 钱包的单向、不可逆特性

钱包生成私钥,通过椭圆曲线算法可以从私钥计算得到公钥。注意:它是单向的,不可逆的。

下图可知私钥是可以生成公钥,公钥可以生成比特币地址的,相反则不行,因为比特币是由一个不可逆的算法完成这个流程的。所以,我们可以放心的把钱包地址给别人看而不用担心自己财产的丢失。但如果你的私钥泄露,那别人就有可能复制一份跟你一摸一样的钱包,你的资产就有安全问题了。其实,加密货币保管只需要一个“私钥”,谁掌握了私钥,就掌握了你的钱包财产,所以你的私钥一定要保管好。

image

你得先有个钱包,才叫入了区块链的门!

不从技术和系统层面谈各类钱包风险,重点强调大家一定要保护好区块链的私钥。秘钥绝不能丢,也不要轻易告诉别人,因为它代表了钱包的所有权和对它的操作权,不同于银行卡的密码,忘记了还可以先冻结凭身份证去重置。在区块链的世界里,一旦你弄丢私人秘钥,钱包就永远也不再属于你了,没有中心机构可以追溯,也没有法律可以对你进行保护。

【云栖号在线课堂】每天都有产品技术专家分享!
课程地址:https://yqh.aliyun.com/zhibo

立即加入社群,与专家面对面,及时了解课程最新动态!
【云栖号在线课堂 社群】https://c.tb.cn/F3.Z8gvnK

原文发布时间:2020-04-01
本文作者:通证经济
本文来自:“51CTO”,了解相关信息可以关注“51CTO

相关文章
|
1月前
|
安全 JavaScript 前端开发
区块链钱包系统开发解决方案/需求设计/功能逻辑/案例详细/源码步骤
The development of a blockchain wallet system involves multiple aspects, and the following is the detailed logic for developing a blockchain wallet system:
|
5月前
|
存储 Go 区块链
|
5月前
|
供应链 安全 区块链
区块链钱包合约代币质押系统开发(模式详情)
一组条件在时间的推移中不可能一直正确的,而智能合约是不可变的,更新当前的预编程条件几乎是不可能的
|
8月前
|
存储 JavaScript 前端开发
区块链代币支付钱包(trx/trc20代币/usdt)对接开发
区块链代币支付钱包(trx/trc20代币/usdt)对接开发
|
8月前
|
存储 安全 区块链
区块链Web3质押理财钱包系统开发技术
随着元宇宙的火热,Web3概念也被不断的提起,一些投资用户为了增加自己的资产安全性,通过数字钱包来储存自己的数字资产,因而钱包也就成了投资用户进入Web3的重要入口
|
10月前
|
安全 API 区块链
区块链钱包交易所系统开发详细逻辑丨数字货币交易所钱包系统开发(开发案例)及源码部署
  在区块链中,每个块包含了一定数量的交易信息和该块的唯一标识符,同时还包含了前一个块的哈希值。这样的设计保证了区块之间的顺序和完整性,一旦一个块被添加到区块链中,它就不可更改。这使得区块链成为一个安全可信的分布式账本,可用于记录和验证各种类型的交易。
|
前端开发 算法 Go
新版以太坊Ethereum库ethersV5.0配合后端Golang1.18实时链接区块链钱包(Metamask/Okc)以及验签操作
区块链去中心化思想无处不在,比如最近使用个体抗原自检替代大规模的中心化核酸检测,就是去中心化思想的落地实践,避免了大规模聚集导致的交叉感染,提高了检测效率,本次我们使用Ethereum最新的ethersV5.0以上版本链接去中心化区块链钱包,并且通过后端Golang1.18服务进行验签。
新版以太坊Ethereum库ethersV5.0配合后端Golang1.18实时链接区块链钱包(Metamask/Okc)以及验签操作
|
存储 监控 安全
区块链(DAPP)去中心化多币种钱包系统开发案例
区块链(DAPP)去中心化多币种钱包系统开发案例
313 0
区块链(DAPP)去中心化多币种钱包系统开发案例
|
负载均衡 前端开发 算法
鲜衣怒马散尽千金,Vue3.0+Tornado6前后端分离集成Web3.0之Metamask钱包区块链虚拟货币三方支付功能
不得不承认,大多数人并不拥有或者曾经拥有加密货币。是的,Web3.0、加密货币、区块链,对于大多数的互联网用户来说,其实是一些过于轻佻的词汇。如果你是为了追求暴利投机而研究区块链和加密货币,那你多半会失望,因为盐在哪里都是咸的;而如果你是为了摆脱知识桎梏而学习区块链,那你几乎一定能满足,因为懵懂决不是编程界的常态。
|
存储 算法 安全
对区块链钱包的简单认识
对区块链钱包的简单认识
262 0
对区块链钱包的简单认识