CN106487821B - 一种基于互联网区块链技术的数字签名方法 - Google Patents

一种基于互联网区块链技术的数字签名方法 Download PDF

Info

Publication number
CN106487821B
CN106487821B CN201710004756.7A CN201710004756A CN106487821B CN 106487821 B CN106487821 B CN 106487821B CN 201710004756 A CN201710004756 A CN 201710004756A CN 106487821 B CN106487821 B CN 106487821B
Authority
CN
China
Prior art keywords
node
nodes
algorithm
digital signature
chain
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.)
Active
Application number
CN201710004756.7A
Other languages
English (en)
Other versions
CN106487821A (zh
Inventor
杨帆
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Reindeer Technology Co ltd
Original Assignee
Beijing Reindeer Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Reindeer Technology Co ltd filed Critical Beijing Reindeer Technology Co ltd
Priority to CN201710004756.7A priority Critical patent/CN106487821B/zh
Publication of CN106487821A publication Critical patent/CN106487821A/zh
Application granted granted Critical
Publication of CN106487821B publication Critical patent/CN106487821B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • H04L63/062Network architectures or network communication protocols for network security for supporting key management in a packet data network for key distribution, e.g. centrally by trusted party
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • H04L9/3249Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures using RSA or related signature schemes, e.g. Rabin scheme

Abstract

本发明涉及一种基于互联网区块链技术的数字签名方法,包括以下步骤:S1、密钥的生成与分发;S2、签名过程;以及S3、签名验证。本发明的有益效果在于,提供一种安全可靠的基于互联网区块链技术的数字签名方法。

Description

一种基于互联网区块链技术的数字签名方法
技术领域
本发明涉及一种基于互联网区块链技术的数字签名方法。
背景技术
基于数字证书的数字签名技术已经发展多年,并且在很多行业进行了广泛的应用。目前的数字签名技术按照证书的载体主要分为两大类:
一类是以专用硬件为载体,如U盾等设备。这种类型的技术安全性较高,证书与网络物理隔离,验证计算在专有设备上进行,专有设备由所有人持有,在妥善保管的前提下,无法被他人篡改。但是随着移动设备以及移动互联网的普及,这种专有硬件形式的电子签名方法逐渐暴露出了使用不方便的缺点。用户在进行电子签名的时候,必须保证随身携带U盾等设备,这在移动互联时代变的很不合时宜。
另一类是仅依靠软件算法进行数字签名,证书保存在公共的网络环境中,并依靠中心服务器进行认证验算。纯软件形式的数字签名在安全性上有比较大的缺陷,首先数字证书的存储没有与公共网络环境进行物理隔离,容易被盗用。其次,验算结果存储在中心服务器,一旦中心服务器被攻破数据容易遭到篡改。
发明内容
鉴于现有技术中存在的上述问题,本发明的主要目的在于解决现有技术的缺陷,本发明提供一种安全可靠的基于互联网区块链技术的数字签名方法。
本发明提供了一种基于互联网区块链技术的数字签名方法,包括以下步骤:
S1、密钥的生成与分发;
S2、签名过程;
S3、签名验证。
可选的,所述步骤S1中秘钥的生成和分发具体包括以下步骤:
S11:用户生成秘钥;
S12:用户输入口令码;
S13:用户确认口令码;
S14:节点程序根据口令码生成RSA密钥对;
S15:判断节点中是否已存在密钥对;
S16:根据步骤S15的判断结果,如果节点中存在密钥对,则需要替换已有密钥对,如果节点中不存在密钥对,将存储密封对存储在节点中;
S17:在节点网络中通过P2P的方式分层分发公钥,每层分发n个节点,其他节点存储该公钥。
可选的,所述节点为运行在一台设备上的一份客户端软件,且称为一个节点;同一台设备上只允许运行一份客户端软件。
可选的,所述步骤S2中签名过程具体包括以下步骤:
S21:用户签名;
S22:用户在所属节点(发起节点)输入生成秘钥时的口令码;
S23:发起节点从系统中随机选取m个非自身节点,用这m个节点的公钥分别对目标数据摘要进行加密,在对加密后的密文用发起节点的私钥进行加密;
S24:将m份密文与目标数据摘要明文打包,分别通过P2P发送给这m个节点,同时发起节点在算法链的最后创建一个新的单元起始片段;
S25:m个节点分别收到数据后,按照相同的过程和算法再分发m个节点,同时m个节点分别在发起节点创建的算法链新单元的起始片段后,添加本轮验算的算法片段;
S26:重复上述过程,一直分发m层后不再继续分发,同时每一层在验算结束后都将本轮验算记录在算法链中,并把签名结构记录到数据链;
S27:最后一层节点验算后将结果按照原路返回发起节点,同时,发起节点收到m/2个节点返回后,将算法链的新单元封闭,签名过程结束。
可选的,所述步骤S3中签名验证的具体步骤为:需要进行验证的节点,查询节点中存储的数据链即可,再查询前可以请求更新到最新的数据链。
可选的,所述算法链为:数字签名验证算法是分布在各个不同节点中的,不同的节点按顺序分别执行算法的一个片段,所有片段组合起来实现完整的数字签名验证算法。所有的这些算法片段按顺序链接起来保存在每个节点中。
可选的,所述数据链为:各个节点应用数字签名算法进行签名的结果数据,将按照时间的先后顺序完整的保存在每个节点中,组成一个链式结构。
本发明具有以下优点和有益效果:本发明提供一种基于互联网区块链技术的数字签名方法,这种数字签名方法无需利用专有硬件,并且利用节点网络的人为不可复制与不可修改特性,让更多的节点参与进行冗余的验证计算和结果存储,这样即使部分节点被非法控制也无法对算法和数据进行篡改,从而提高数字签名的安全性。
附图说明
图1为本发明实施例提供的基于互联网区块链技术的数字签名方法中密钥的生成与分发的流程图;
图2为本发明实施例提供的基于互联网区块链技术的数字签名方法中签名过程的流程图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本发明的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
在本发明的描述中,还需要说明的是,除非另有明确的规定和限定,术语“设置”、“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
下面将参照附图和具体实施例对本发明作进一步的说明。
如图1和图2所示:本发明实施例的一种基于互联网区块链技术的数字签名方法,包括以下步骤:
S1、密钥的生成与分发;
S2、签名过程;
S3、签名验证。
作为上述实施例的优选实施方式,步骤S1中秘钥的生成和分发具体包括以下步骤:
S11:用户生成秘钥;
S12:用户输入口令码;
S13:用户确认口令码;
S14:节点程序根据口令码生成RSA密钥对;
S15:判断节点中是否已存在密钥对;
S16:根据步骤S15的判断结果,如果节点中存在密钥对,则需要替换已有密钥对,如果节点中不存在密钥对,将存储密封对存储在节点中;
S17:在节点网络中通过P2P的方式分层分发公钥,每层分发n个节点,其他节点存储该公钥。
作为上述实施例的优选实施方式,节点为运行在一台设备上的一份客户端软件,且称为一个节点;同一台设备上只允许运行一份客户端软件。
作为上述实施例的优选实施方式,步骤S2中签名过程具体包括以下步骤:
S21:用户签名;
S22:用户在所属节点(发起节点)输入生成秘钥时的口令码;
S23:发起节点从系统中随机选取m个非自身节点,用这m个节点的公钥分别对目标数据摘要进行加密,在对加密后的密文用发起节点的私钥进行加密;
S24:将m份密文与目标数据摘要明文打包,分别通过P2P发送给这m个节点,同时发起节点在算法链的最后创建一个新的单元起始片段;
S25:m个节点分别收到数据后,按照相同的过程和算法再分发m个节点,同时m个节点分别在发起节点创建的算法链新单元的起始片段后,添加本轮验算的算法片段;
S26:重复上述过程,一直分发m层后不再继续分发,同时每一层在验算结束后都将本轮验算记录在算法链中,并把签名结构记录到数据链;
S27:最后一层节点验算后将结果按照原路返回发起节点,同时,发起节点收到m/2个节点返回后,将算法链的新单元封闭,签名过程结束。
作为上述实施例的优选实施方式,步骤S3中签名验证的具体步骤为:需要进行验证的节点,查询节点中存储的数据链即可,再查询前可以请求更新到最新的数据链。
作为上述实施例的优选实施方式,算法链为:数字签名验证算法是分布在各个不同节点中的,不同的节点按顺序分别执行算法的一个片段,所有片段组合起来实现完整的数字签名验证算法。所有的这些算法片段按顺序链接起来保存在每个节点中。
作为上述实施例的优选实施方式,数据链为:各个节点应用数字签名算法进行签名的结果数据,将按照时间的先后顺序完整的保存在每个节点中,组成一个链式结构。
最后应说明的是:以上所述的各实施例仅用于说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述实施例所记载的技术方案进行修改,或者对其中部分或全部技术特征进行等同替换;而这些修改或替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

Claims (6)

1.一种基于互联网区块链技术的数字签名方法,其特征在于,包括以下步骤:
S1、密钥的生成与分发;
S2、签名过程;
S3、签名验证;
所述步骤S2中签名过程具体包括以下步骤:
S21:用户签名;
S22:用户在所属节点输入生成密钥时的口令码,所属节点为发起节点;
S23:发起节点从系统中随机选取m个非自身节点,用这m个节点的公钥分别对目标数据摘要进行加密,再对加密后的密文用发起节点的私钥进行加密;
S24:将m份密文与目标数据摘要明文打包,分别通过P2P发送给这m个节点,同时发起节点在算法链的最后创建一个新的单元起始片段;
S25:m个节点分别收到数据后,按照相同的过程和算法再分发m个节点,同时m个节点分别在发起节点创建的算法链新单元的起始片段后,添加本轮验算的算法片段;
S26:重复上述过程,一直分发m层后不再继续分发,同时每一层在验算结束后都将本轮验算记录在算法链中,并把签名结构记录到数据链;
S27:最后一层节点验算后将结果按照原路返回发起节点,同时,发起节点收到m/2个节点返回后,将算法链的新单元封闭,签名过程结束。
2.根据权利要求1所述的基于互联网区块链技术的数字签名方法,其特征在于:所述步骤S1中密钥的生成和分发具体包括以下步骤:
S11:用户生成密钥;
S12:用户输入口令码;
S13:用户确认口令码;
S14:节点程序根据口令码生成RSA密钥对;
S15:判断节点中是否已存在密钥对;
S16:根据步骤S15的判断结果,如果节点中存在密钥对,则需要替换已有密钥对,如果节点中不存在密钥对,将密钥对存储在节点中;
S17:在节点网络中通过P2P的方式分层分发公钥,每层分发n个节点,其他节点存储该公钥。
3.根据权利要求1所述的基于互联网区块链技术的数字签名方法,其特征在于:所述节点为运行在一台设备上的一份客户端软件,且称为一个节点;同一台设备上只允许运行一份客户端软件。
4.根据权利要求1所述的基于互联网区块链技术的数字签名方法,其特征在于:所述步骤S3中签名验证的具体步骤为:需要进行验证的节点,查询节点中存储的数据链即可,在查询前可以请求更新到最新的数据链。
5.根据权利要求1所述的基于互联网区块链技术的数字签名方法,其特征在于:所述算法链为:数字签名验证算法是分布在各个不同节点中的、不同的节点按顺序分别执行算法的一个片段,所有片段组合起来实现完整的数字签名验证算法,所有的这些算法片段按顺序链接起来保存在每个节点中。
6.根据权利要求1所述的基于互联网区块链技术的数字签名方法,其特征在于:所述数据链为:各个节点应用数字签名算法进行签名的结果数据,将按照时间的先后顺序完整的保存在每个节点中,组成一个链式结构。
CN201710004756.7A 2017-01-04 2017-01-04 一种基于互联网区块链技术的数字签名方法 Active CN106487821B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710004756.7A CN106487821B (zh) 2017-01-04 2017-01-04 一种基于互联网区块链技术的数字签名方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710004756.7A CN106487821B (zh) 2017-01-04 2017-01-04 一种基于互联网区块链技术的数字签名方法

Publications (2)

Publication Number Publication Date
CN106487821A CN106487821A (zh) 2017-03-08
CN106487821B true CN106487821B (zh) 2020-07-03

Family

ID=58285341

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710004756.7A Active CN106487821B (zh) 2017-01-04 2017-01-04 一种基于互联网区块链技术的数字签名方法

Country Status (1)

Country Link
CN (1) CN106487821B (zh)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106960165B (zh) * 2017-03-13 2020-12-22 广东网金控股股份有限公司 一种基于区块链智能合约实现电子合同多方会签的方法
CN108632037B (zh) * 2017-03-17 2020-04-14 中国移动通信有限公司研究院 公钥基础设施的公钥处理方法及装置
CN107395557B (zh) 2017-03-28 2020-05-15 创新先进技术有限公司 一种业务请求的处理方法及装置
CN107172016B (zh) * 2017-04-25 2021-05-18 中国联合网络通信集团有限公司 安全信任处理方法及装置
CN107426452B (zh) * 2017-05-05 2020-03-13 中国联合网络通信集团有限公司 互联网通话方法及装置
CN107241196A (zh) * 2017-06-30 2017-10-10 杰创智能科技股份有限公司 基于区块链技术的数字签名方法及系统
CN107181599B (zh) * 2017-07-18 2020-01-21 天津理工大学 基于区块链的路由位置数据保密存储及共享方法
CN107659610B (zh) * 2017-08-02 2020-08-21 北京瑞卓喜投科技发展有限公司 基于区块链技术的著作权保护方法、装置和系统
CN107395349A (zh) * 2017-08-16 2017-11-24 深圳国微技术有限公司 一种基于自认证公钥体制的区块链网络密钥分发方法
CN109428722A (zh) * 2017-08-30 2019-03-05 上海策赢网络科技有限公司 一种内容发布方法及装置
CN108632018A (zh) * 2018-05-09 2018-10-09 合肥达朴汇联科技有限公司 一种包括作为发出方的区块链节点的装置
CN109299942A (zh) * 2018-09-28 2019-02-01 新明华区块链技术(深圳)有限公司 一种应用于区块链及互联网的密钥管理方法、装置及系统
CN109472166B (zh) * 2018-11-01 2021-05-07 恒生电子股份有限公司 一种电子签章方法、装置、设备及介质
CN109447606A (zh) * 2018-12-06 2019-03-08 上海欢昶网络科技有限公司 一种大师钱包区块链私钥存储与加密方法
CN112866241A (zh) * 2021-01-15 2021-05-28 迅鳐成都科技有限公司 一种基于区块链的数字身份更新方法、设备及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101291216A (zh) * 2007-04-16 2008-10-22 华为技术有限公司 P2p网络系统及其认证方法
CN106055993A (zh) * 2016-08-13 2016-10-26 深圳市樊溪电子有限公司 一种用于区块链的加密存储系统及其使用方法
CN106506170A (zh) * 2016-12-15 2017-03-15 北京三未信安科技发展有限公司 一种基于rsa的分布式签名方法与系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101291216A (zh) * 2007-04-16 2008-10-22 华为技术有限公司 P2p网络系统及其认证方法
CN106055993A (zh) * 2016-08-13 2016-10-26 深圳市樊溪电子有限公司 一种用于区块链的加密存储系统及其使用方法
CN106506170A (zh) * 2016-12-15 2017-03-15 北京三未信安科技发展有限公司 一种基于rsa的分布式签名方法与系统

Also Published As

Publication number Publication date
CN106487821A (zh) 2017-03-08

Similar Documents

Publication Publication Date Title
CN106487821B (zh) 一种基于互联网区块链技术的数字签名方法
CN109309565B (zh) 一种安全认证的方法及装置
JP6547079B1 (ja) 登録・認可方法、装置及びシステム
CN106899410B (zh) 一种设备身份认证的方法及装置
CN104980477B (zh) 云存储环境下的数据访问控制方法和系统
CN107846282A (zh) 一种基于区块链技术的电子数据分布式保管方法及系统
CN101409619B (zh) 闪存卡及虚拟专用网密钥交换的实现方法
CN106790261B (zh) 分布式文件系统及用于其中节点间认证通信的方法
KR20170139093A (ko) 네트워크 액세스 디바이스가 무선 네트워크 액세스 포인트를 액세스하게 하기 위한 방법, 네트워크 액세스 디바이스, 애플리케이션 서버 및 비휘발성 컴퓨터 판독가능 저장 매체
CN113553574A (zh) 一种基于区块链技术的物联网可信数据管理方法
CN111435913B (zh) 一种物联网终端的身份认证方法、装置和存储介质
CN110971411B (zh) 一种基于sotp技术对私钥乘加密的sm2同态签名方法
CN109525565B (zh) 一种针对短信拦截攻击的防御方法及系统
CN109478214A (zh) 用于证书注册的装置和方法
CN110635901A (zh) 用于物联网设备的本地蓝牙动态认证方法和系统
KR20170045134A (ko) 비대칭 키 유도를 위한 방법 및 시스템
CN113204757A (zh) 一种信息交互方法、装置和系统
JP2022540653A (ja) データ保護及び回復システム及び方法
CN113783686A (zh) 一种基于区块链的sdn及nfv网络安全管理系统及方法
CN110933112B (zh) 一种入网认证方法、装置和存储介质
Tanveer et al. Towards a secure and computational framework for internet of drones enabled aerial computing
CN103138923B (zh) 一种节点间认证方法、装置及系统
CN105430649B (zh) Wifi接入方法及设备
CN111245611B (zh) 基于秘密共享和可穿戴设备的抗量子计算身份认证方法及系统
CN109361681A (zh) 国密证书认证方法、装置及设备

Legal Events

Date Code Title Description
C06 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