冷钱包,简单点说,就是不连网的钱包,也叫离线钱包。热钱包,就是连网的钱包。
满足什么条件的的钱包可以称之为冷钱包?
小编认为它必须具备以下条件,首先,为了确保私钥不泄露,它应该具备没有任何联网、或者硬件层面的通信功能。在创建私钥或者助记词及存储上,为了确保钱包创建之初就是在冷钱包中生成的且隔离网络。
接着,具备私钥的强加密存储及锁定(最好是销毁),此行目的在于确保防止钱包丢失被他人窃取或被非法盗取后使用,个人认为锁定或销毁功能是密码输入错误次数在5次左右。
其次,具备由私钥为核心的公私钥、地址衍生功能,确保钱包能够通过既定算法获取对应的地址,用来收付款。需具备交易签名功能,从未确保能够生成可用的交易串,具备使用钱包资产的能力。
另外,具备图形显示、信息输入功能,能够提供用户交互,比如能够在创建钱包时提供助记词的显示,便于用户抄写在纸质或者其它媒介上存储,能够提供收款地址的输出,能够将用户输入的交易信息签名后并将交易串反馈给用户,由用户进行交易串的发送等等,
最后,还需要能够通过助记词进行恢复,防止钱包丢失后钱包资产丢失。

什么样的钱包可以称之为热钱包?
简而言之,在热钱包开发时,它可以具备冷钱包的所有功能,还具有实时连网功能,在获取区块,进行区块同步、数据分析、资产管理、交易记录生成等方面也是必不可少,并且能够联网进行交易发送。
冷钱包or热钱包,谁才是交易所的最佳之选?
通过上述的描述应该不难看出,冷钱包较热钱包,冷钱包更加的安全,除非人为的泄露,其它基本无丢失的可能性,热钱包拥有冷钱包的功能却不是很安全,存在被窃取的风险。
对于交易所这种业务型系统,选择钱包的时候需要考虑的问题,应该是安全的同时也需要快速的业务对接。
相关业务上的难点:
1.安全
2.跨链整合
一般交易所会需要对接很多币种,此时就需要对多币种进行跨链整合
3.庞大的数据量
随着时间的推移和币种的增加,数据量将会越来越大,普通的解决方案完全无法应对
4.复杂的业务需求
生成地址、地址管理、资金管理、交易记录管理、充提币及回调等等
以优盾钱包为例,以上的难点都得到了解决,且业务上有主流语言的SDK可实现快速的对接:
①Java版 https://github.com/uduncloud/udun-sdk-java
②.Net版 https://github.com/uduncloud/udun-sdk-csharp
③Php版 https://github.com/uduncloud/udun-sdk-php
就安全而言,提供了Client-Gateway Solution(CGS)、Hareware-Gateway Solution(HGS)两套解决方案。