区块链研习社区块链开发区块链资讯

区块链安全钱包是如何设计与实现的?

2019-01-12  本文已影响5人  edcc5469dba8

  钱包大家最关注的点是什么?毫无疑问是“安全”,汉全科技为您带来区块链安全钱包的设计与实现:

  1、方案概述

  设计并实现一款基于国密算法的区块链安全钱包,首先完成基于国密算法的区块链开发的设计和实现,然后完成工作在此区块链上的区块链安全钱包。基于国密算法SM2、SM3和SM4实现区块链安全钱包最主要的功能,即密钥生成、密钥存储、交易查询和记账分发。另外,我们提出使用门限秘密共享方案来保护钱包私钥,实现了Shamir门限方案并集成到安全钱包中,为用户私钥多加一层保护措施。

  2、功能介绍

  使用国密算法实现钱包的基本功能,使用本地账户来管理用户的私钥。用户需要注册本地账户来使用区块链钱包,钱包构造Shamir的秘密门限方案通过用户的私钥为用户生成3个秘密共享密钥,其中一个密钥将存储在密钥文件中,另外两个密钥交由用户保管,在需要使用用户私钥的场合,钱包将要求用户输入他所持有的密钥,通过Lagrange差值公式由两个密钥重构出用户的私钥。

  钱包使用SM2算法实现用户密钥对的生成,然后使用Shamir门限方案生成秘密共享密钥,使用SM3密码杂凑算法通过用户公钥生成钱包地址,实现地址生成功能。SM4分组密码算法用于将用户信息加密存储在本地,实现密钥存储功能。获得用户的钱包地址后,即可与区块链节点通信获得区块信息实现余额查询以及账单查询的功能。发起交易时,使用SM2数字签名算法对生成的交易进行签名后提交给区块链节点等待确认。

  区块链安全钱包总体设计方案:

  模块功能和算法的调用过程:

  区块链结构设计:

  第三方工具库bouncycastle实现SM2数字签名算法:

  从用户公钥生成用户地址过程:

  密钥存储于密钥文件:

  登录存储文件过程:

  总结:

  使用国家密码算法实现的区块链安全钱包,其运行在基于国密算法实现的区块链上,实现了钱包的主要功能。用户可以使用钱包在该区块链网络中互相进行交易、生成和管理自己的密钥,以及查看区块链账本。加密货币及区块链技术非常全面地挖掘了密码学技术的优点,大量使用了密码学的相关算法保证了一个去中心化网络的安全性,该钱包的实现使得国家商用密码算法应用于加密货币和区块链技术上成为可能。

  本文链接:http://www.a6shop.cn/wiki/1188.html

上一篇下一篇

猜你喜欢

热点阅读