CN109886679A - 一种基于区块链的密钥扫码签名*** - Google Patents
一种基于区块链的密钥扫码签名*** Download PDFInfo
- Publication number
- CN109886679A CN109886679A CN201910070188.XA CN201910070188A CN109886679A CN 109886679 A CN109886679 A CN 109886679A CN 201910070188 A CN201910070188 A CN 201910070188A CN 109886679 A CN109886679 A CN 109886679A
- Authority
- CN
- China
- Prior art keywords
- key
- signature
- barcode scanning
- block chain
- trustship
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Landscapes
- Telephonic Communication Services (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明公开一种基于区块链的密钥扫码签名***,包括:管理模块,用于公私密钥对的创建、命名与签名记录管理;扫码模块,用于私钥对交易及对合约的部署与调用的私钥签名;备份模块,用于公私密钥对的备份与安全保护;托管模块,用于将密钥存储在浏览器端,完成密钥签名托管。该***提供了一种便利的公私钥对在浏览器端托管的方法,通过一次扫码签名的方式,帮助用户更便捷的完成短时间内多笔交易的密钥签名托管的操作。
Description
技术领域
本发明涉及区块链的密钥安全领域,具体涉及一种基于区块链的密钥扫码签名***。
背景技术
区块链技术,是比特币的底层技术,是一种去中心化的分布式账本技术,能安全存储数据,信息不可篡改、公开透明。区块链的交易确认由区块上的所有节点共识完成,共识成功后打包写入区块。区块链存储区块链网络上所有交易,任意节点都有一本完整的账本,从而保证信息不可篡改,实现信息共享、提高信息流通的效率。
公私钥
在现代密码体制中加密和解密是采用不同的密钥(公开密钥),也就是非对称密钥密码***,每个通信方均需要两个密钥,即公钥和私钥,这两把密钥可以互为加解密。公钥是公开的,不需要保密,而私钥是由个人自己持有,并且必须妥善保管和注意保密。在区块链网络中,公私钥对用于完成区块链上交易的数字签名与验证。
数字签名
所谓数字签名是一种类似写在纸上的普通的物理签名,但是使用了公钥加密领域的技术实现,用于鉴别数字信息的方法。一套数字签名通常定义两种互补的运算,一个用于签名,另一个用于验证。而在区块链交易应用公私钥对完成数字签名的场景中,私钥用于签名,公钥用于验证。
当前,现有技术没有提供安全可靠便捷的移动端密钥管理工具,用户无法随时随地使用自己的密钥完成签名;且现有技术没有提供一种通过移动端验证的扫码签名托管方法,用户每次签名均需通过繁琐的流程进行密钥的上传和密码的确认,效率低下。
发明内容
本发明的目的是针对现有技术的不足,提出一种基于区块链的密钥扫码签名***。
本发明的目的是通过如下技术方案实现的:一种基于区块链的密钥扫码签名***,该***提供了一种便利的公私钥对管理工具,通过扫码签名的方式,帮助用户更便捷的完成交易签名操作,具体包括如下模块:
(1)管理模块,用于公私密钥对的创建、命名与签名记录管理,该模块分为密钥创建单元和签名记录管理单元:密钥创建单元,用于密钥对的创建,首先生成私钥,基于加密算法生成相应的公钥,储存在手机移动端本地;签名记录管理单元用于记录每一次通过使用用户移动端密钥完成如智能合约部署,智能合约调用,交易等操作时在区块链网络中的详情记录;
(2)扫码模块,用于私钥对交易及对合约的部署与调用的私钥签名;
(3)备份模块,用于公私密钥对的备份与安全保护;该模块通过助记词、Keystore文件以及私钥明文的方式,帮助用户将密钥备份在本地或用户指定的位置;
(4)密钥托管模块,用于将密钥在一定时间内通过存储在浏览器端的方式,完成密钥签名托管。
进一步地,所述扫描模块中,扫码流程如下:
(2.1)二维码生成;
(2.2)手机端扫码签名;
(2.3)回传签名字符串上链。
进一步地,所述步骤(2.1)中二维码生成包含秘钥的生成和分发,具体包括以下步骤:
(2.1.1)PC端的平台用户选择操作,例如合约操作部署、调用、升级等;
(2.1.2)基于用户操作,生成一个回调网址,一组待签名字符串;
(2.1.3)将上述数据组合,生成二维码.
进一步地,所述步骤(2.2)中手机端扫码签名具体包括以下步骤:
(2.2.1)手机端从二维码中获取信息;
(2.2.2)手机端通过网址组合参数的形式,获取用户该次操作所生成参数;
(2.2.3)手机端对获取参数进行拼接,使用手机本地的用户私钥进行签名.
进一步地,所述步骤(2.3)中回传签名字符串具体包括以下步骤:
(2.3.1)手机端通过回调地址将已签名字符串回传后端服务器;
(2.3.2)后端对参数以及收到的已签名字符创进行请求头封装;
(2.3.3)后端对区块链建立RPC通信;
(2.3.4)后端通过RPC通信令区块链接收交易;
(2.3.5)区块链底层对于接收到的交易进行共识验证,并把结果返回给后端;
(2.3.6)后端展示最终结果给用户。
进一步地,所述密钥托管模块中,托管流程如下:
(4.1)基于扫码流程中扫码签名的方式,扫描“托管二维码”;
(4.2)用户同意相关托管协议,完成第一次托管扫码签名,完成后密钥将自动存储在用户扫码的网页浏览器端;
(4.3)之后在该浏览器完成每一笔需要密钥签名的操作时均可自动完成密钥签名,每一笔签名记录会在移动端App上自动记录;
(4.4)密钥托管在用户关闭浏览器或有效时间结束后自动结束,如需再次托管,需重新由流程(4.1)开始。
进一步地,所述的密钥不存储在需使用该密钥签名应用的后端及电脑本地,仅存储在浏览器端。
本发明的有益效果:本发明提供了一种便利的公私钥对托管方法,帮助用户可以通过移动端的一次签名确认,安全便利地完成多次操作的密钥签名,省去多次签名多次密码确认的繁琐程序。
附图说明
图1密钥扫码签名流程
图2密钥扫码签名托管流程
具体实施方式
下面结合具体实施方式对本发明作进一步说明。
一种基于区块链的密钥扫码签名***,该***提供了一种便利的公私钥对管理工具,通过扫码签名的方式,帮助用户更便捷的完成交易签名操作,具体包括如下模块:
(1)管理模块,用于公私密钥对的创建、命名与签名记录管理,该模块分为密钥创建单元和签名记录管理单元:密钥创建单元,用于密钥对的创建,首先生成私钥,基于加密算法生成相应的公钥,储存在手机移动端本地;签名记录管理单元用于记录每一次通过使用用户移动端密钥完成如智能合约部署,智能合约调用,交易等操作时在区块链网络中的详情记录;
(2)扫码模块,用于私钥对交易及对合约的部署与调用的私钥签名;
(3)备份模块,用于公私密钥对的备份与安全保护;该模块通过助记词、Keystore文件以及私钥明文的方式,帮助用户将密钥备份在本地或用户指定的位置;
(4)密钥托管模块,用于将密钥在一定时间内通过存储在浏览器端的方式,完成密钥签名托管。
如图2所示,所述扫描模块中,扫码流程如下:
(2.1)二维码生成;
(2.2)手机端扫码签名;
(2.3)回传签名字符串上链。
进一步地,所述步骤(2.1)中二维码生成包含秘钥的生成和分发,具体包括以下步骤:
(2.1.1)PC端的平台用户选择操作,例如合约操作部署、调用、升级等;
(2.1.2)基于用户操作,生成一个回调网址,一组待签名字符串;
(2.1.3)将上述数据组合,生成二维码.
进一步地,所述步骤(2.2)中手机端扫码签名具体包括以下步骤:
(2.2.1)手机端从二维码中获取信息;
(2.2.2)手机端通过网址组合参数的形式,获取用户该次操作所生成参数;
(2.2.3)手机端对获取参数进行拼接,使用手机本地的用户私钥进行签名.
进一步地,所述步骤(2.3)中回传签名字符串具体包括以下步骤:
(2.3.1)手机端通过回调地址将已签名字符串回传后端服务器;
(2.3.2)后端对参数以及收到的已签名字符创进行请求头封装;
(2.3.3)后端对区块链建立RPC通信;
(2.3.4)后端通过RPC通信令区块链接收交易;
(2.3.5)区块链底层对于接收到的交易进行共识验证,并把结果返回给后端;
(2.3.6)后端展示最终结果给用户。
所述密钥托管模块中,托管流程如下:
(4.1)基于扫码流程中扫码签名的方式,扫描“托管二维码”;
(4.2)用户同意相关托管协议,完成第一次托管扫码签名,完成后密钥将自动存储在用户扫码的网页浏览器端;
(4.3)之后在该浏览器完成每一笔需要密钥签名的操作时均可自动完成密钥签名,每一笔签名记录会在移动端App上自动记录;
(4.4)密钥托管在用户关闭浏览器或有效时间结束后自动结束,如需再次托管,需重新由流程(4.1)开始。
进一步地,所述的密钥不存储在需使用该密钥签名应用的后端及电脑本地,仅存储在浏览器端。
本领域普通技术人员可以理解,以上所述仅为发明的流程介绍而已,并不用于限制发明,尽管参照前述实例对发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实例记载的技术方案进行修改,或者对其中部分技术特征进行等同替换。凡在发明的精神和原则之内,所做的修改、等同替换等均应包含在发明的保护范围之内。
Claims (7)
1.一种基于区块链的密钥扫码签名***,其特征在于,该***提供了一种便利的公私钥对管理工具,通过扫码签名的方式,帮助用户更便捷的完成交易签名操作,具体包括如下模块:
(1)管理模块,用于公私密钥对的创建、命名与签名记录管理,该模块分为密钥创建单元和签名记录管理单元:密钥创建单元,用于密钥对的创建,首先生成私钥,基于加密算法生成相应的公钥,储存在手机移动端本地;签名记录管理单元用于记录每一次通过使用用户移动端密钥完成如智能合约部署,智能合约调用,区块链链上交易,区块链写入,密钥签名操作时在区块链网络中的详情记录。
(2)扫码模块,用于私钥对交易及对合约的部署与调用的私钥签名。
(3)备份模块,用于公私密钥对的备份与安全保护;该模块通过助记词、Keystore文件以及私钥明文的方式,帮助用户将密钥备份在本地或用户指定的位置。
(4)密钥托管模块,用于将密钥在一定时间内通过存储在浏览器端的方式,完成密钥签名托管。
2.如权利要求1所述的一种基于区块链的密钥扫码签名***,其特征在于,所述扫描模块中,扫码流程如下:
(2.1)二维码生成。
(2.2)手机端扫码签名。
(2.3)回传签名字符串上链。
3.如权利要求2所述的一种基于区块链的密钥扫码签名***,其特征在于,所述步骤(2.1)中二维码生成包含秘钥的生成和分发,具体包括以下步骤:
(2.1.1)PC端的平台用户选择操作,如智能合约部署,智能合约调用,区块链链上交易,区块链写入,密钥签名;
(2.1.2)基于用户操作,生成一个回调网址,一组待签名字符串;
(2.1.3)将上述数据组合,生成二维码。
4.如权利要求2所述的一种基于区块链的密钥扫码签名***,其特征在于,所述步骤(2.2)中手机端扫码签名具体包括以下步骤:
(2.2.1)手机端从二维码中获取信息;
(2.2.2)手机端通过网址组合参数的形式,获取用户该次操作所生成参数;
(2.2.3)手机端对获取参数进行拼接,使用手机本地的用户私钥进行签名。
5.如权利要求2所述的一种基于区块链的密钥扫码签名***,其特征在于,所述步骤(2.3)中回传签名字符串具体包括以下步骤:
(2.3.1)手机端通过回调地址将已签名字符串回传后端服务器;
(2.3.2)后端对参数以及收到的已签名字符创进行请求头封装;
(2.3.3)后端对区块链建立RPC通信;
(2.3.4)后端通过RPC通信令区块链接收交易;
(2.3.5)区块链底层对于接收到的交易进行共识验证,并把结果返回给后端;
(2.3.6)后端展示最终结果给用户。
6.如权利要求1所述的一种基于区块链的密钥扫码签名***,其特征在于,所述密钥托管模块中,托管流程如下:
(4.1)基于扫码流程中扫码签名的方式,扫描“托管二维码”;
(4.2)用户同意相关托管协议,完成第一次托管扫码签名,完成后密钥将自动存储在用户扫码的网页浏览器端;
(4.3)之后在该浏览器完成每一笔需要密钥签名的操作时均可自动完成密钥签名,每一笔签名记录会在移动端App上自动记录;
(4.4)密钥托管在用户关闭浏览器或有效时间结束后自动结束,如需再次托管,需重新由流程(4.1)开始。
7.根据权利要求1所述的基于区块链的扫码签名托管方法,其特征在于,所述的密钥不存储在需使用该密钥签名应用的后端及电脑本地,仅存储在浏览器端。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910070188.XA CN109886679B (zh) | 2019-01-24 | 2019-01-24 | 一种基于区块链的密钥扫码签名*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910070188.XA CN109886679B (zh) | 2019-01-24 | 2019-01-24 | 一种基于区块链的密钥扫码签名*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109886679A true CN109886679A (zh) | 2019-06-14 |
CN109886679B CN109886679B (zh) | 2021-02-23 |
Family
ID=66926903
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910070188.XA Active CN109886679B (zh) | 2019-01-24 | 2019-01-24 | 一种基于区块链的密钥扫码签名*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109886679B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103067174A (zh) * | 2012-12-27 | 2013-04-24 | 飞天诚信科技股份有限公司 | 一种在移动操作***中完成数字签名的方法和*** |
CN104573554A (zh) * | 2014-12-30 | 2015-04-29 | 北京奇虎科技有限公司 | 加载安全密钥存储硬件的方法和浏览器客户端装置 |
CN105323062A (zh) * | 2014-06-03 | 2016-02-10 | 北京收付宝科技有限公司 | 移动终端数字证书电子签名方法 |
CN106548345A (zh) * | 2016-12-07 | 2017-03-29 | 北京信任度科技有限公司 | 基于密钥分割实现区块链私钥保护的方法及*** |
CN107528695A (zh) * | 2017-09-14 | 2017-12-29 | 合肥拓普网络***工程有限责任公司 | 一种基于包含摘要信息二维码的电子签名方法 |
CN107566117A (zh) * | 2017-07-14 | 2018-01-09 | 浙商银行股份有限公司 | 一种区块链密钥管理***及方法 |
CN107832624A (zh) * | 2017-10-25 | 2018-03-23 | 济南浪潮高新科技投资发展有限公司 | 一种基于区块链的可视化签名***和方法 |
-
2019
- 2019-01-24 CN CN201910070188.XA patent/CN109886679B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103067174A (zh) * | 2012-12-27 | 2013-04-24 | 飞天诚信科技股份有限公司 | 一种在移动操作***中完成数字签名的方法和*** |
CN105323062A (zh) * | 2014-06-03 | 2016-02-10 | 北京收付宝科技有限公司 | 移动终端数字证书电子签名方法 |
CN104573554A (zh) * | 2014-12-30 | 2015-04-29 | 北京奇虎科技有限公司 | 加载安全密钥存储硬件的方法和浏览器客户端装置 |
CN106548345A (zh) * | 2016-12-07 | 2017-03-29 | 北京信任度科技有限公司 | 基于密钥分割实现区块链私钥保护的方法及*** |
CN107566117A (zh) * | 2017-07-14 | 2018-01-09 | 浙商银行股份有限公司 | 一种区块链密钥管理***及方法 |
CN107528695A (zh) * | 2017-09-14 | 2017-12-29 | 合肥拓普网络***工程有限责任公司 | 一种基于包含摘要信息二维码的电子签名方法 |
CN107832624A (zh) * | 2017-10-25 | 2018-03-23 | 济南浪潮高新科技投资发展有限公司 | 一种基于区块链的可视化签名***和方法 |
Also Published As
Publication number | Publication date |
---|---|
CN109886679B (zh) | 2021-02-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107566117B (zh) | 一种区块链密钥管理***及方法 | |
CN101394615B (zh) | 一种基于pki技术的移动支付终端及支付方法 | |
CN111787530B (zh) | 一种基于sim卡的区块链数字身份管理方法 | |
US6529886B1 (en) | Authenticating method for an access and/or payment control system | |
CN107705125A (zh) | 一种基于区块链的支付标记化方法 | |
CN110417750A (zh) | 基于区块链技术的文件读取和存储的方法、终端设备和存储介质 | |
CN103107995A (zh) | 一种云计算环境数据安全存储***和方法 | |
CN105022966A (zh) | 数据库数据加密解密方法和*** | |
CN110135175A (zh) | 基于区块链的信息处理、获取方法、装置、设备及介质 | |
CN109816383A (zh) | 一种区块链签名方法、区块链钱包和区块链 | |
CN107070896B (zh) | 一种安全高效的区块链网络客户化登录方法及安全加固*** | |
CN109274837A (zh) | 基于区块链技术的电话来源可追溯方法及装置 | |
CN109146683A (zh) | 一种利用区块链的信息管理和认证*** | |
CN110351292A (zh) | 私钥管理方法、装置、设备和存储介质 | |
CN110098925A (zh) | 基于非对称密钥池对和随机数的量子通信服务站密钥协商方法和*** | |
WO2020076234A1 (en) | Apparatus and method for controlling data access | |
KR100338434B1 (ko) | 스마트카드를 이용한 뱅킹방법 | |
CN109886679A (zh) | 一种基于区块链的密钥扫码签名*** | |
CN103916237A (zh) | 对用户加密密钥恢复进行管理的方法和*** | |
CN106779645B (zh) | 信息加密方法及装置 | |
CN111914308B (zh) | 一种利用智能卡内ca证书进行移动数据签名的方法 | |
CN114154185A (zh) | 一种基于国密算法实现的数据加密存储方法 | |
CN109767221A (zh) | 一种面向区块链安全的移动跨平台签名方法 | |
KR102475434B1 (ko) | 암호화폐 보안 방법 및 시스템 | |
JP3549657B2 (ja) | 秘密鍵の保持管理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |