钱包密钥存储
㈠ 区块链钱包的私钥如何备份有哪几种方法
当你在创建一个区块链钱包的时候,创建成功之后,系统会自动生成钱包地址、公钥、私钥,然而这些需要你自己去备份,钱包不会帮你保存,那么大家应该如何备份这些信息呢?又有几种方法?
第一,具备双倍安全性的钱包,并把私钥导入到Armory客户端(1)进行冷储存(2) ,用户可以在客户端中快速从冷储存中找到所需私钥,还有一个优点就是方便离线交易转账,不必每次都重新导入私钥。同时电脑的操作系统需要设置密码。
第二,可以把钱包的私钥和公钥制作成电子版备份,同步到云端。 你可以把它们复制粘贴为一个文档,标记好名字,文档可以以拼音的形式命名,可以乱码,但是要额外的保存在另一个文档里注明该文件是干什么用的。但是这样做的结果就是可能会忘记储存的文件是哪个,因此你需要在手机备注好信息,同时需要把复习私钥这件事安排为按时间重复的(如2个月复习一次)日程事件,时间到了手机或电脑提醒复习。而且不仅仅是回忆几遍就可以了,是要到备份上打开那个生成私钥的钱包中,重新登录一遍,看看私钥(和地址)是否正确。
第三,用户可以在文档上写下钱包的私钥和公钥以及地址, 命名的话,你自己看得懂就好,接着就把后缀名为jpg图片格式,使其看起来就像一个坏掉的打不开的图片,或者更甚,我们可以把这打不开的假图片压缩为zip格式并伪装为一个真正的图片,需要的时候再还原出来。具体更改方法可以上网络查找。
第四,以上三种方法都是电子版的备份方法,还有一种简单粗暴的方法就是在 日记本手抄私钥公钥, 使其看起来不那么刻意、唐突,不过大家需要注意的是,抄写的时候记得要写得字体清晰、工整,避免字迹潦草而导致输入私钥错误。同时,保存的地方也是需要注意的,可以藏在家里隐私的地方(有条件可以存银行保险柜)。
备份区块链钱包私钥的方法有以上4种方法,当然如果你有更好的备份方法,也可以分享出来,不必按部就班地使用上述备份方法的哦。最后,给一个备份建议:可以结合上述2到4种方法来备份私钥,避免遗忘。
注释:
(1)Armory客户端:Armory 是一个功能齐全的比特币客户端,提供了许多其他客户端软件所没有的创新功能!管理多个钱包(确定性和仅观看)、打印永久工作的纸张备份、导入或删除私钥等。
(2)冷储存:即比特币钱包的冷储存(Cold storage)。是指将钱包进行离线保存的一种方法。
㈡ 私钥保存要点
各种名词解释建议关注币圈金马奖学习:
不论何种方式保存私钥,一定要尝试多次导入私钥成功后再往这个账户里转钱,一定要有纸质的介质来保存私钥,数码设备都存在损坏的风险。
PS.使用硬件钱包注意防范硬件厂商等给硬件安装后面获取你的私钥,不要购买二手硬件钱包,注意购买成熟的知名厂商的硬件钱包。
使用不常用的设备(手机或电脑)制作“硬件钱包”,即通过不接触网络的设备保存私钥,使用时通过热钱包扫描冷钱包的离线签名达到不使私钥暴露在网络中的左右。这种办法便宜,安全性高,就是使用起来比较麻烦。
冷钱包使用教程:
ImToken进阶│使用冷钱包和观察钱包,提高你的资金安全
PS.个人觉得这个方法有一定危险性,虽然分三处保存,但是还是会暴露,黑客简单的排列组合几次就能破解。
这个办法相对来说比较靠谱,就是时间长了自己容易忘记插入在哪个位置和几个字符。
㈢ 账户、密钥、钱包、权限,它们之间是什么关系
因为多次用到了账户(account)和权限(permission)的概念,
还有钱包(wallet)和密钥(keys)。
在EOS中,它们之间是什么关系呢?
什么是账户?
1、账户(account)是存储在区块链上的人类可读的标识符;
2、账户可以被个人或组织拥有,具体取决于权限配置;
3、发送交易或者转移代币,都需要有账户才能完成;
4、通过导入(import)密钥,一个钱包可以和一个或多个账户相关联。
账户、密钥、钱包的关系
在钱包是open且unlock的状态下,可以通过如下命令获取导入到这个钱包中所有密钥:
cleos wallet keys
在前几篇文章中,我在测试链上创建了“sg”、“currency”两个账户,加上系统默认的“eosio”账户,共有3个账户。
这3个账户共同使用一个钱包(default),下面这张图展示了它们之间的关系:
因此,账户、密钥、钱包三者的关系可以总结为 :
密钥(公钥)可以创建账户;
密钥(私钥)可以导入钱包;
账户和钱包通过密钥联系起来。
账户的权限
1、在EOS中,每个账户都有两个本地权限:owner权限 和 active权限;
owner
owner权限代表着对一个账户的所有权,是最高权限,只有少数交易会用到这种权限;
EOS建议账户的拥有者把owner权限的密钥冷存储,且不要与任何人共享;
owner权限可以用来恢复已经被破坏的另一个权限。
active
active权限可以用来转移资金、给生产者投票、账户相关信息更改等;
一般情况下使用active权限就够用了。
2、账户还可拥有自定义权限,用于进一步扩展账户的管理;
3、权限可以分配给一个或多个公钥(public keys),也可以分配给有效的账户。
单一签名(Single-Sig)
EOS的默认账户权限配置采用单一签名的方式。
这里有两个重要的概念:
权重(weight)
权限拥有者在整个权限中的相对重要程度
阈值(threshold)
能够成功push事务所需要的权重值门槛
下面是一个例子:
权限
账户或公钥
权重
阈值
owner
1
EOS5EzTZZQQ...
1
active
1
EOS61chK8GbH...
1
某账户有两个公钥,分别拥有owner权限和active权限,每种权限的权重和阈值都是1。
权重达到阈值才能授权。
对于这个账户,因为单一权限的权重就已经达到阈值,所以如果该账户要push交易,只需要使用对应的密钥对交易进行签名即可,即单一签名就能完成交易。
多重签名(Multi-sig)和自定义权限
再看下面这个例子
权限
账户或公钥
权重
阈值
owner
2
@alice
1
@bob
1
active
1
@alice
1
@bob
1
publish
2
@alice
2
@bob
2
EOS7VtcvWo1...
1
在这个例子中,
owner权限
owner权限分配给了alice和bob两个账户,owner权限的阈值为2,alice和bob的权重均为1。 因此,alice或bob单个账户都不能获得授权,必须一起对交易签名才能获得完全授权。
active权限
active权限的阈值为1,alice和bob的权重均为1。 因此,alice或bob单个账户就可以签名获取授权。
publish权限 (自定义权限)
publish是一个自定义权限,阈值为2,给alice和bob的权重均为2,给一个公钥的权重为1。 结果是,alice和bob因为权重达到阈值,可以直接签名获得授权;
这个公钥因为权重不够,需要和alice或bob一起,才能获取授权。
从多重签名和自定义权限,以及可以使用账户名和公钥两种方式设置权限,可以看出,EOS的权限系统具有很高的灵活性。
㈣ imtoken钱包私钥导入格式64进16什么意思
私钥=银行卡+银行卡密码。
私钥是一个长度为64位的字符串,一个钱包只能拥有一个私钥并且不能修改。为什么说私钥=银行卡+银行卡密码呢?因为在imToken中直接导入私钥可以生成新的密码,将所有的区块链资产全部转移走。私钥作为最高保密级别,应该妥善保管在物理设备上,例如抄在纸上,备份多份并且存放在安全的地方,万万不可将私钥在联网设备上进行传输,避免被黑客截取。
助记词=私钥。
助记词又是什么东西呢?助记词既然等于私钥,那么其应该是私钥的另外一种表现形式,并且具有私钥同等的功能。在imToken中创建钱包,会出来一个助记词,助记词的个数一般为12、15、18、21个单词构成。这些词都取自一个固定词库,其生成顺序也是按照一定的算法得到,且助记词不能修改。助记词的主要作用是帮助用户记忆繁琐的私钥。同样助记词也要妥善保管好,切勿在联网设备中传输,任何人得到了你的助记词都可以轻松的转移你的区块链资产。
keystore+密码=私钥。
keyStore文件是以太坊钱包存储私钥的一种文件格式(JSON格式)。它使用用户自定义密码对私钥进行加密,在一定程度上keystore=加密后的私钥,拿到keystore和密码后照样可以转移走所有的区块链资产。keystore密码是唯一不可修改的,那么钱包密码修改之后,keystore也会相应修改。一定要记住加密keystore的密码,一旦忘记密码,就相当于遗失了该钱包所有的区块链资产。
————————————————
版权声明:本文为CSDN博主“懒区块”的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/lanqukuai/article/details/81035995
㈤ 4. 比特币的密钥、地址和钱包 - 精通比特币笔记
比特币的所有权是通过密钥、比特币地址和数字签名共同确定的。密钥不存在于比特币网络中,而是用户自己保存,或者利用管理私钥的软件-钱包来生成及管理。
比特币的交易必须有有效签名才会被存储在区块中,因此拥有密钥就拥有对应账户中的比特币。密钥都是成对出现的,由一个公钥和一个私钥组成。公钥相当于银行账号,私钥就相当于银行卡密码。通常情况下密钥由钱包软件管理,用户不直接使用密钥。
比特币地址通常是由公钥计算得来,也可以由比特币脚本得来。
比特币私钥通常是数字,由比特币系统随机( 因为算法的可靠性与随机性正相关,所以随机性必须是真随机,不是伪随机,因此比特币系统可以作为随机源来使用 )生成,然后将私钥作为输入,使用椭圆曲线算法这个单向加密函数生成对应的公钥,再将公钥作为输入,使用单向加密哈希函数生成地址。例如,通过公钥K得到地址A的计算方式为:
其中SHA256和PIPEMD160被称为双哈希或者HASH160,Base58Check是带有验证功能的Base58编码,验证方式为先计算原始数据(编码前)的验证码,再比较编码后数据的验证码,相同则地址有效,否则无效。而在使用Base58Check编码前,需要对数据做处理。
处理方式为: 版本前缀 + 双哈希后的数据 + 校验码
其中版本前缀是自定义的,如比特币私钥的前缀是0x80,校验码是把版本前缀和双哈希后的数据拼接起来,进行两次SHA256计算,取前4字节。得到处理的数据后,再进行Base58编码,得到最终的结果。
下图是Base58Check版本前缀和Base58编码后的结果
密钥可以采用不同的编码格式,得到的编码后结果虽然不同,但密钥本身没有任何变化,采用哪种编码格式,就看情况而论了,最终目的都是方便人们准确无误的使用和识别密钥。
下图是相同私钥采用不同编码方式的结果:
公钥也有很多种格式,不过最重要的是公钥被分为压缩格式和非压缩格式,带04前缀的公钥为非压缩格式的公钥,而03,02开头的标识压缩格式的公钥。
前面说过,公钥是椭圆曲线上的一个点,由一对坐标(x, y)表示,再加上前缀,公钥可以表示为:前缀 x y。
比如一个公钥的坐标为:
以非压缩格式为例,公钥为(略长):
压缩格式的公钥可以节省一定的存储,对于每天成千上万的比特币交易记录来说,这一点点的节省能起到很大效果。
因为椭圆曲线实际上是一个方程(y2 mod p = (x3 + 7)mod P, y2是y的平方,x3是x的立方),而公钥是椭圆曲线上的一个点,那么公钥即为方程的一个解,如果公钥中只保留x,那么可以通过解方程得到y,而压缩公钥格式有两个前缀是因为对y2开方,会得到正负两个解,在素数p阶的有限域上使用二进制算术计算椭圆曲线的时候,y坐标或奇或偶,所以用02表示y为奇数,03表示y为偶数。
所以压缩格式的公钥可以表示为:前缀x
以上述公钥的坐标为准,y为奇数为例,公钥K为:
不知道大家发现没有,这种压缩方式存在一个问题,即一个私钥可以得出两个公钥,压缩和非压缩公钥,而这两个公钥都对应同一个私钥,都合法,但生成的比特币地址却不相同,这就涉及到钱包软件的实现方式,是使用压缩公钥还是非压缩公钥,或者二者皆用,这个问题后面来介绍。
比特币钱包最主要的功能就是替用户保管比特币私钥,比特币钱包有很多种,比如非确定性(随机)钱包,确定性(种子)钱包。所谓的非确定性是指钱包运行时会生成足够的私钥(比如100个私钥),每个私钥仅会使用一次,这样私钥管理就很麻烦。确定性钱包拥有一个公共种子,单向离散方程使用种子生成私钥,种子足够回收所有私钥,所以在钱包创建时,简单备份下,就可以在钱包之间转移输入。
这里要特别介绍下助记码词汇。助记码词汇是英文单词序列,在BIP0039中提出。这些序列对应着钱包中的种子,种子可以生成随机数,随机数生成私钥,私钥生成公钥,便有了你需要的一切。所以单词的顺序就是钱包的备份,通过助记码词汇能重建钱包,这比记下一串随机数要强的多。
BIP0039定义助记码和种子的创建过程如下:
另外一种重要的钱包叫做HD钱包。HD钱包提供了随机(不确定性) 钥匙有两个主要的优势。
第一,树状结构可以被用来表达额外的组织含义。比如当一个特定分支的子密钥被用来接收交易收入并且有另一个分支的子密钥用来负责支付花费。不同分支的密钥都可以被用在企业环境中,这就可以支配不同的分支部门,子公司,具体功能以及会计类别。
第二,它可以允许让使用者去建立一个公共密钥的序列而不需要访问相对应的私钥。这可允许HD钱包在不安全的服务器中使用或者在每笔交易中发行不同的公共钥匙。公共钥匙不需要被预先加载或者提前衍生,但是在服务器中不具有可用来支付的私钥。
BIP0038提出了一个通用标准,使用一个口令加密私钥并使用Base58Check对加密的私钥进行编码,这样加密的私钥就可以安全地保存在备份介质里,安全地在钱包间传输,保持密钥在任何可能被暴露情况下的安全性。这个加密标准使用了AES,这个标准由NIST建立,并广泛应用于商业和军事应用的数据加密。
BIP0038加密方案是: 输入一个比特币私钥,通常使用WIF编码过,base58chek字符串的前缀“5”。此外BIP0038加密方案需要一个长密码作为口令,通常由多个单词或一段复杂的数字字母字符串组成。BIP0038加密方案的结果是一个由base58check编码过的加密私钥,前缀为6P。如果你看到一个6P开头的的密钥,这就意味着该密钥是被加密过,并需个口令来转换(解码) 该密钥回到可被用在任何钱包WIF格式的私钥(前缀为5)。许多钱包APP现在能够识别BIP0038加密过的私钥,会要求用户提供口令解码并导入密钥。
最通常使用BIP0038加密的密钥用例是纸钱包一一张纸张上备份私钥。只要用户选择了强口令,使用BIP0038加密的私钥的纸钱包就无比的安全,这也是一种很棒的比特币离线存储方式(也被称作“冷存储”)。
P2SH函数最常见的实现时用于多重签名地址脚本。顾名思义,底层脚本需要多个签名来证明所有权,然后才能消费资金。这类似在银行开设一个联合账户。
你可以通过计算,生成特殊的比特币地址,例如我需要一个Hello开头的地址,你可以通过脚本来生成这样一个地址。但是每增加一个字符,计算量会增加58倍,超过7个字符,需要专门的硬件或者矿机来生成,如果是8~10个字符,那么计算量将无法想象。
㈥ 【区块链课程】3.1—数字钱包的概念、特点
一、 钱包的概念
生活中的传统钱包相当于一个容器,可用来存放现金,但对于数字货币钱包而言,它不是用来储存数字货币的,而是用来储存和管理(包含私钥和公钥) 的管理容器,数字钱包里有地址(类似于你的银行卡账号)、私钥(类似于你银行卡的密码)。
私钥: 用户使用私钥进行签名交易,从而证明拥有该交易的输出权,其交易信息并不是存储在该钱包内,而是存储在区块链中。
公钥: 用来生成地址,储存交易,信息由私钥通过非对称加密算法生成。
钱包地址: 是一个以双字母开头(代表币种)的42位16进制哈希值字符串。ETH的地址是以 0x 开头的 42 位 16 进制哈希值字符串。例如: 如果将钱包比作银行卡, 那么钱包地址就是银行卡号。
三者之间的关系,简单说就是: 私钥生成公钥,公钥生成地址。 简而言之,地址就是你的账户,银行卡号,私钥就是你的账户密码。所以如果别人盗取了你的私钥,也就绝对拥有你账户的拥有权。
二、 钱包的特点
类比银行卡,私钥好比我们的银行卡密码+银行卡账号,而根据公钥生成的数字货币地址,就好比我们的银行卡账号,用作交易的转账地址。数字货币是保存在交易市场的,钱包这张银行卡保管着我们的地址和密码信息,让我们拥有地址上对应的数字货币的支配权。
三、钱包之于区块链的价值
加密数字货币是一种基于区块链技术的数字货币,数字货币钱包是专门用来管理这些资产的应用。钱包应用按照密码学原理创建1个或多个钱包地址,每个钱包地址都对应1个密钥对:私钥和公钥。
公钥是根据私钥进行一定的数学运算生成,与私钥一一对应。公钥主要是对外交易使用,每次交易都必须使用私钥对交易记录进行签名以证明对相关钱包地址里面的资产有控制权。
私钥是唯一能够证明对于数字资产有控制权的凭证,对于数字资产钱包来说,私钥是最重要的。私钥的生成和存储方式决定了资产安全与否。
所以钱包的目的就是用来保存私钥的。只要有私钥,就代表了你拥有了对应的token。
但目前数字货币市场上存在着数字管理不便、交易和兑换门槛高、区块链性能不足以及设计不合理、区块链开发成本高、连接现实难、缺乏应用场景等问题。说的简单点,就是基于不同公链开发的token都需要各自的钱包,于是我们的手机就被多种钱包的App占满。
四、数字钱包的几大关键词:
1、钱包名:
数字货币钱包的钱包名就是你创建钱包时的账号名或者昵称,每个钱包地址对应一个账号名,因为通常数字钱包都可以创建多个钱包地址,为了便于分辨和管理,给每个钱包地址设置一个名字还是很有必要的。
2、密码:
当你创建数字货币钱包账号的时候,需要设置一个密码,当你转账支付时需要使用这个密码确认;当你对钱包的私钥或者keystore进行备份导出时也需要密码确认;另外,如果你使用keystore导入钱包时也需要密码确认,而使用私钥导入时可以重置密码。
3、助记词:
当你创建钱包的时候,会要求你记录一串助记词,通常是由多个(12,15,18,21位)不规则的英文单词毫无规律的组成的,相当于你数字钱包的密码+支付密码。助记词在创建钱包的时候会提示你进行保存,请务必保存好,建议用笔记录在单独的笔记本上,并保管好你的笔记本。
4、keystore:
keystore是钱包存储私钥的一个文件(json),这个文件使用时要用到钱包的密码。选择导出或者导入keystore时,都需要输入密码,这个密码是你原来设置的本钱包密码, 这一点和用私钥或助记词导入钱包不一样,用私钥或助记词导入钱包,不需要知道原密码,可以直接重置密码。
㈦ 数字钱包 私钥
数字钱包相当于银行账户,用户可以通过分散的方式存储、接收和向他人发送数字化资产。任何拥有互联网连接的人都可以创建自己独特的钱包,该钱包在与此类资产的加密网络交互时注册自己的私钥和公钥。私钥是所有者获得访问此类钱包的唯一身份或密码。公钥是所有者用来发送或接收数字资产的地址。由于每笔交易都记录在具有加密安全性的分布式账本中,因此网络中的任何人都可以在保留发送方的匿名组件的同时对其进行审计。这增强了为用户提供更透明、更可跟踪和更安全的网络体验,从而使他们能够在银行中寻找更分散的选项。
创建一个数字钱包非常容易。这就是为什么人们相信区块链应用程序可以解决银行无存款的问题,因为世界上有更多的人可以使用互联网,而不是银行账户。区块链提供的新会计系统简化了价值转移的过程,而不需要中介机构。
私钥加密算法使用单个私钥来加密和解密数据。
由于具有密钥的任意一方都可以使用该密钥解密数据,因此必须保护密钥不被未经授权的代理得到。
私钥加密又称为对称加密,因为同一密钥既用于加密又用于解密。
私钥加密算法非常快(与公钥算法相比),特别适用于对较大的数据流执行加密转换。
通常,私钥算法(称为块密码)用于一次加密一个数据块。
块密码(如 RC2、DES、TripleDES 和 Rijndael)通过加密将 n 字节的输 入块转换为加密字节的输出块。
如果要加密或解密字节序列,必须逐块进行。
由于 n 很小(对于 RC2、DES 和 TripleDES,n = 8 字 节;n = 16 [默认值];n = 24;对于 Rijndael,n = 32),因此必须对大于 n 的数据值一次加密一个块。
㈧ 如何保证钱包私钥安全
对于数字货币钱包来说,它并不是装钱的,而是装密钥的工具,准确来说,就是装私钥的工具。有了私钥就可以拥有根据其对应公钥计算出的地址上的数字货币的支配权。
作为钱包开发者,如何存储和使用用户私钥便是钱包安全的关键所在。
下面是使用imToken钱包App创建钱包的截图。从截图上可以清楚的看到我们在钱包的时候需要输入密码来保护私钥。那这个私钥究竟是如何被保护的呢?私钥的生成和输入的密码有没有关系呢?
这里一般有两种误解:
如果钱包应用开发者真的这么做的话,估计大家每天都是排着队丢币了 :)。
你想啊,如果是第一种情况,那如果两个人用同样的密码不就可以互相看到对方钱包了么。
如果是第二种情况,在你输入密码进入钱包应用后,私钥就要被加载并驻留在内存里。你在网上搜一下“从内存提取密码工具”,保证可以搜到一大把。另外一个风险是,用户输入的密码都不是太长并且很多时候有规律可循,这样当加密后的私钥数据泄漏后,黑客通过暴力破解结合彩虹表等工具将私钥破解的几率还是比较高的。
事实上,私钥的生成永远和你输入的密码没有半毛钱关系,要么是随机生成,要么是根据助记符(一串随机生成的英文或其它语言词组)生成,保证每个人的私钥都是唯一的。
私钥的加密过程一般来说是下面这样的:
第一步:钱包应用会生成一个32字节随机数,我们称之为主密钥。
第二步:使用用户输入的密码对主密钥加密,生成主密钥密文。
第三步:使用主密钥对钱包私钥进行加密,生成私钥密文。
第四步:清除主密钥和私钥,保留主密钥密文和私钥密文。
你可以会有疑问,这样黑客拿到密文后先暴力破解主密钥,再破解私钥不也很容易么?其实在具体实现的时候,每个密文在生成的时候不只是用输入的密码,还有相应的密文生成参数,想通过密文和密码直接解密得到明文没那么容易的。
从上一部分的解释我们知道,钱包应用里保存的是主密钥密文和私钥密文。
当我们登录钱包后,钱包应用会通过我们输入的密码对主密钥密文解密,将解密后的主密钥驻留内存。
当我们进行转账等需要私钥签名的操作时,通过主密钥解密私钥密文得到私钥,使用后立即将私钥从内存清除。
当我们需要修改密码时,实际上只是修改了主密钥密文,并不会触碰私钥相关部分。
这样,基本上将私钥明文暴露的几率降到最低,最大限度的保证私钥的安全。
还有疑问?欢迎加入我的知识星球,尽我所能为你答疑解惑。
㈨ 如何尽可能的保证钱包安全,带你囤币穿越熊市
转自 Daniel
手把手教学怎么尽可能的保证钱包安全
非常适合囤币党如何保护自己的币
理论小知识:什么是助记词,私钥,钱包
现在常见的钱包基本上都是用助记词生成私钥,私钥可以计算出公钥,进而转化成钱包地址。常见公链钱包的助记词基本上都是根据BTC的BIP-32协议,由12-24个单词组成,然后生成HD钱包。HD钱包区别于单个私钥钱包不同的点在于,可以根据助记词+derivation_path生成多个钱包,这也是为什么钱包软件可以直接根据一个身份钱包直接生成多个钱包的逻辑。
基于这些理论,几乎所有公链都可以用同一个助记词去生成多个钱包,也就是有一个助记词几乎通用所有公链,保管好一个助记词即可玩遍所有链。在这种情况下如果想多账号撸空投,多开测试账号等,不需要记住额外的助记词,专门弄一个薅羊毛助记词,就可以适用所有场景。
理论小知识:什么硬件钱包
硬件钱包一般是将私钥存储在安全的硬件设备中,与网络计算机等环境隔离起来,使用过程中就是硬件钱包用私钥负责消息发送的签名,私钥不外漏,直接将签名好的消息发送到计算机然后上链。硬件钱包一般都有专用的芯片级加密私钥,在私钥保管上是绝对安全,但是区块链安全问题不仅仅是私钥管理,所以也不能保证绝对安全。
硬件钱包推荐
Ledger x:如果想玩的链多的话,并且链上交互很多,推荐Ledger x,单个硬件钱包能装很多个应用,可以同时支持很多条链,基本上有一个Ledger x不用担心玩链的钱包问题了。也有手机和桌面客户端,也支持各种浏览器钱包。
Ledger s: 支持同时安全2-3个应用,价格便宜,适合玩的链少,链上交互也比较方便。
oneKey : 国内购买方便,支持evm,有自己的应用和钱包,对链上交互友好,非evm公链支持较少。链玩的少可以考虑这款。
imkey: imtoken的硬件钱包,国内购买也方便,适合当冷钱包。
总结:硬件钱包有很多款,适合自己的才是最好的。但是购买硬件钱包一定要注意风险,只能去官网购买,严禁去淘宝等过一手平台购买。像Ledger这种无国内官方渠道的,需要走海淘自己转运。硬件钱包到手后需要确保无拆封,一般都有防拆封的包装,到自己手上一定要是原装。
理论小知识:什么是冷钱包,热钱包
通俗来讲,热钱包就是将私钥存储在手机电脑等设备中,很方便就能进行交互,冷钱包就是私钥离线储存,无论你是写在纸上,使用硬件钱包都算。但是我个人觉得,这样划分不一定有效。如果要保证绝对安全,最有效的冷热钱包之分应该是这样的
冷钱包: 私钥,助记词不联网, 没有公链上面的任何授权,不进行任何合约交互等,仅作为当前公链币的存储,和必要时的转账 。
如何尽可能保证币的安全方法:
钱包分级: 将自己手上的钱包进行分级,每一级别只能干这个级别的事情,并且严格执行。举例说明,我一般分为这几种,冷钱包,主要热钱包,小钱包,测试钱包。
冷钱包 上面已经说明了,基本上就是存币用的,而且只存原生币,一般我会选择硬件钱包作为冷钱包,然后币存进去之后直接锁在保险柜,正常情况也不会怎么使用,基本上放里面拿个几年轻轻松松。
大 热钱包 ,这个可能就是与链上大额交互比较多,或者存一些常用的高价值的币,这个时候我一般也是使用硬件钱包,而且只做安全靠谱的交互,一般来说就是一些大dapp项目,然后在使用完之后,也会取消所有合约授权。
小钱包 ,这个一般就放价值不多的币,直接使用私钥钱包,方便交互,在一些新项目试试水,临时的小金额交易,做做各种测试交互之类的。
测试钱包 ,这个我一般就用助记词生成一堆钱包,成百上千个随便用用,看到好的测试网撸空投之类的,也会批量去操作一波,保管好助记词即可。
钱包软件: 尽可能选择知名度高,用户多的钱包。大资金量的钱包不要轻易尝试新钱包软件等。
助记词保管:
硬件钱包的助记词尽量记在纸上(或者有专用的助记词保管钢板),建议将同一个助记词保管两份,分在两个不同的地方保管。最重要的钱包可以少记录1-2个单词,然后用脑子记住剩下的,或者打乱1-2个顺序,脑子记住正确顺序,或者用自己的算法转化,反正只要自己脑子能记住一部分,就更加的安全了。(如果容易忘事建议不要这么操作)
因为做了钱包分级,所以可以根据自己的钱包来用不同的方式管理助记词,钱包安全级别越高,助记词越需要安全的保管。像测试钱包助记词,一般来说保存在电脑上都行。
注意:
1.除了刚生成钱包或者导入钱包的时候,任何地方都不要输入自己的助记词,凡是要求输入助记词的网站一律诈骗。
2.导入钱包输入助记词不能用复制粘贴等,必须手打。现在各种app都能读取剪贴版,在复制的过程中基本已经泄漏。私钥同理。
3.纸质助记词别忘了放哪了。放的地方也要保证安全。
链上安全:
链上没有绝对的安全,只要操作就可能有风险。但是我们可以尽可能的降低风险。在做好钱包分级之后,如果被盗,损失已经可以降到最低。
交易所安全:
交易所不要放大量资金,做一下资金配置,一般熊市少操作,所以也不需要那么多钱放交易所。尽量认准大所,二线交易所资金也尽可能的少放。一定要配置google两步验证,如果可以的话,两个手机,一个手机交易所,一个手机负责谷歌验证码。我一般的想法是,如果这个交易所跑路了,会不会有极大的损失,损失多少你能够接受。这样放多少资金在交易所自己就能评估了。
总结: 世上没有绝对的安全,但是可以尽可能的降低风险,不被黑被盗留有本金才有更多的可能性。留得青山在,不怕没柴烧。
㈩ 区块链密匙文件怎么获取
1.一种区块链系统密钥的找回方法,其特征在于,包括以下步骤:步骤1、创建原始密钥对;步骤2、根据原始密钥对演算业务密钥对;步骤3、根据业务密钥对演算地址和账号;步骤4、当业务密钥丢失,执行步骤2。2.根据权利要求1所述的区块链系统密钥的找回方法,其特征在于,所述原始密钥对包括原始私钥和原始公钥。3.根据权利要求2所述的区块链系统密钥的找回方法,其特征在于,所述步骤1中,创建原始密钥对包括以下步骤:步骤11、采用一个随机数生成一个原始种子;步骤12、由所述原始种子经非对称加密算法演算生成原始密钥对,所述原始密钥对包括原始私钥与原始公钥。4.根据权利要求1中的所述的区块链系统密钥的找回方法,其特征在于,所述步骤2中,业务密钥对包括业务私钥和业务公钥。5.据权利要求4中的所述的区块链系统密钥的找回方法,其特征在于,所述步骤2中,具体为,根据种子制作数据生成业务种子,根据业务种子生成业务密钥对,具体包括以下步骤:步骤21、以原始私钥作为加密密钥,对种子制作数据进行种子生成运算,得到具有唯一性的密文作为业务种子,;步骤22、由所述业务种子经称非对加密算法演算生成业务密钥对,所述密钥对包括业务私钥与业务公钥。6.据权利要求5中的所述的区块链系统密钥的找回方法,其特征在于,所述步骤21中,种子制作数据包括原始公钥或者其它选定的任何数据。7.据权利要求权利5中的所述的区块链系统密钥的找回方法,其特征在于,所述步骤21中,种子生成运算包括hmac加密算法运算、加盐哈希加密算法运算、对称加密算法运算或非对称加密算法运算。8.据权利要求3或5中的所述的区块链系统密钥的找回方法,其特征在于,所述非对称加密算法包括rsa算法、ecc算法、ecdsa算法、sm2算法和sm9算法的其中任一种。9.据权利要求5中的所述的区块链系统密钥的找回方法,其特征在于,所述唯一性的密文如非哈希值则对所述密文进行哈希运算,得到所述密文的哈希值作为业务种子;密文如为哈希值则可直接作为业务种子,或者可再次或多次进行哈希运算,得到的哈希值作为业务种子。10.据权利要求7中的所述的区块链系统密钥的找回方法,其特征在于,所述对称加密算法包括des算法、3des算法、rc2算法、rc4算法、rc5算法、aes算法、sm1算法、sm4算法、sm7算法和zuc算法的其中任一种。