【技术实现步骤摘要】
去中心化的智能合约托管钱包的方法及系统
本公开涉及区块链
,尤其涉及一种去中心化的智能合约托管钱包的方法及系统。
技术介绍
区块链技术中最重要的一个组成部分就是公私钥,在《比特币:一种点对点的电子现金系统》一文中,中本聪提到了椭圆加密算法(ECDSA)来产生比特币的私钥和公钥。基于椭圆加密的原理,由私钥是可以计算出公钥的,再由公钥经过一系列数字签名运算就会得到比特币钱包地址。以太坊和比特币产生公私钥的方法是一样的,都是生成随机私钥,由椭圆曲线计算公钥,不同点在于生成的钱包地址是不一样的,以太坊使用Keccak-256对公钥进行哈希,最后20个字节,加上0x作为以太坊钱包的地址,例如0xCA35b7d915458EF540aDe6068dFe2F44E8fa733c。私钥是由随机种子生成的,公钥是将私钥通过算法推导出来的,由于公钥太长,为了简便实用,就出现了“地址”,地址是公钥推导出来的。这些推导过程是单向不可逆的,也就是地址不能推导出公钥,公钥不能推导出私钥。公钥加密,私钥解密,也就是用公钥加密原数据,只有对应的私钥才能解开原数据,这样才能使得原数据在网络传播中不被窃取,从而保护隐私。私钥签名,公钥验签,用私钥对原数据进行签名,只有对应的公钥才能验证签名串与原数据是匹配的。地址类似于银行卡号,用户通过区块链钱包使用私钥签名将自己账户的金额转给对应账户的钱包地址,完成转账交易。私钥由用户自己保管,对用户十分重要,一旦丢失用户的资产也找不回来,用户可以将自己的私钥进行备份以防丢失,但备份有泄 ...
【技术保护点】
1.一种去中心化的智能合约托管钱包的方法,其特征在于,包括智能合约钱包的创建及其拥有者变更;/n所述智能合约钱包的创建过程包括:/n创建智能合约钱包,所述智能合约钱包包括钱包合约和钱包管理合约,所述钱包合约包括钱包名称和钱包地址;/n使用普通钱包账户的私钥对所述智能合约钱包进行签名后部署到公链上,则所述智能合约钱包的拥有者即发起调用的所述普通钱包账户的地址;/n通过所述钱包合约设置谜题,所述谜题包括提示和答案;/n通过所述钱包管理合约设置所述钱包名称和所述钱包地址的对应关系;/n所述智能合约钱包的拥有者变更过程包括:/n调用所述钱包管理合约,通过所述钱包名称获取所述钱包地址,然后判断交易的发起者和所述智能合约钱包的拥有者的账户地址是否相同,相同则更改所述智能合约钱包的拥有者,并删除所述钱包合约中存储的所述谜题,不同则:/n根据所述谜题的提示,调用所述智能合约钱包并根据所述谜题的答案计算哈希值,判断所述哈希值与所述钱包合约中存储的哈希值是否相同,相同则更改所述智能合约钱包的拥有者,并删除所述钱包合约中存储的所述谜题;不同则返回错误。/n
【技术特征摘要】
1.一种去中心化的智能合约托管钱包的方法,其特征在于,包括智能合约钱包的创建及其拥有者变更;
所述智能合约钱包的创建过程包括:
创建智能合约钱包,所述智能合约钱包包括钱包合约和钱包管理合约,所述钱包合约包括钱包名称和钱包地址;
使用普通钱包账户的私钥对所述智能合约钱包进行签名后部署到公链上,则所述智能合约钱包的拥有者即发起调用的所述普通钱包账户的地址;
通过所述钱包合约设置谜题,所述谜题包括提示和答案;
通过所述钱包管理合约设置所述钱包名称和所述钱包地址的对应关系;
所述智能合约钱包的拥有者变更过程包括:
调用所述钱包管理合约,通过所述钱包名称获取所述钱包地址,然后判断交易的发起者和所述智能合约钱包的拥有者的账户地址是否相同,相同则更改所述智能合约钱包的拥有者,并删除所述钱包合约中存储的所述谜题,不同则:
根据所述谜题的提示,调用所述智能合约钱包并根据所述谜题的答案计算哈希值,判断所述哈希值与所述钱包合约中存储的哈希值是否相同,相同则更改所述智能合约钱包的拥有者,并删除所述钱包合约中存储的所述谜题;不同则返回错误。
2.如权利要求1所述的去中心化的智能合约托管钱包的方法,其特征在于,调用所述钱包管理合约可以添加、删除、查询所述智能合约钱包。
3.如权利要求2所述的去中心化的智能合约托管钱包的方法,其特征在于,所述谜题至少为三个,所述答案为原文内容的哈希值。
4.一种去中心化的智能合约托管钱包的系统,其特征在于,包括创建模块和变更模块;
所述创建模块包括:
创建单元,创建智能合约钱包,所述智...
【专利技术属性】
技术研发人员:刘迎宾,陈勇良,
申请(专利权)人:马上游科技股份有限公司,
类型:发明
国别省市:江苏;32
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。