CN111277414A - 基于rsa算法和智能合约的分布式公钥生成方法及装置 - Google Patents
基于rsa算法和智能合约的分布式公钥生成方法及装置 Download PDFInfo
- Publication number
- CN111277414A CN111277414A CN202010052550.3A CN202010052550A CN111277414A CN 111277414 A CN111277414 A CN 111277414A CN 202010052550 A CN202010052550 A CN 202010052550A CN 111277414 A CN111277414 A CN 111277414A
- Authority
- CN
- China
- Prior art keywords
- key
- intelligent contract
- public key
- key generation
- rsa algorithm
- 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
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
- H04L9/3006—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters
- H04L9/302—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters involving the integer factorization problem, e.g. RSA or quadratic sieve [QS] schemes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0869—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0894—Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y04—INFORMATION OR COMMUNICATION TECHNOLOGIES HAVING AN IMPACT ON OTHER TECHNOLOGY AREAS
- Y04S—SYSTEMS INTEGRATING TECHNOLOGIES RELATED TO POWER NETWORK OPERATION, COMMUNICATION OR INFORMATION TECHNOLOGIES FOR IMPROVING THE ELECTRICAL POWER GENERATION, TRANSMISSION, DISTRIBUTION, MANAGEMENT OR USAGE, i.e. SMART GRIDS
- Y04S40/00—Systems for electrical power generation, transmission, distribution or end-user application management characterised by the use of communication or information technologies, or communication or information technology specific aspects supporting them
- Y04S40/20—Information technology specific aspects, e.g. CAD, simulation, modelling, system security
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开一种基于RSA算法和智能合约的分布式公钥生成方法,区块链智能合约预置触发条件,满足预制条件,触发智能合约执行;获取到触发交易者地址,智能合约的密钥管理单元调用密钥生成单元通过密钥生成算法根据当前系统时间和、交易者地址和合约执行次数为参数生成公私密钥对;将交易者地址、公钥私钥对存储于智能合约密钥存储单元;智能合约密钥管理单元将密钥对的公钥输出,交易确认后,全网可查看交易结果获取公钥信息。
Description
技术领域
本发明涉及一种基于RSA算法和智能合约的分布式公钥生成方法及装置,属于物联网和区块链信息安全领域。
背景技术
区块链被认为是下一代核心技术,与物联网技术融合,在智能物流、医疗及工业等领域具有广阔的发展前景。物联网是完全开放的环境,面对着各种安全威胁,诸如身份欺骗、数据伪造和窃取、非法访问等针对物联网环境的恶意攻击,也可能是设备技术自生引起的安全威胁,如物联网的滥用、不安全的应用程序、不安全的底层设备等。要解决物联网存在的安全威胁,首先就要建立一套安全的密钥保护体系,为物联网安全提供最基础的保护。
公钥体制是目前研究与应用最为深入的密码体制之一,RSA算法是其中最典型、最具有影响力的代表。从最早的E-mail、电子信用卡系统、网络安全协议的认证,到现在的车辆管理和云计算等各种安全或认证领域,这种密码算法可以抵御大多数的恶意攻击方式,因此也被推荐为公钥加密的行业标准。
区块链技术的出现,为智能合约进行了新的定义并使其成为了可能。合约封装了各类脚本、算法,是区块链可编程的体现。智能合约将网络看成是一台“分布式计算机”,任何节点都可以上传和执行任意的应用程序,并且程序的执行能得到保障。智能合约作为区块链特征之一,是运行在区块链上的单元化、可重用性、自动执行的脚本,能够实现数据处理、数据管理等一系列功能。在部署的时候,合约被虚拟机编译成代码存储在区块链上,对应的会有个存储机制。当预定的条件发生时,就会发送一笔交易到智能合约地址上,全网节点都会执行合约脚本编译成的代码,作为一种嵌入式的程序化合约,智能合约可以在任何区块链数据中,形成由程序自行控制的系统。
发明内容
发明目的:为了克服现有技术的不足,本发明提供一种基于RSA算法和智能合约的分布式公钥生成方法,用以解决基于区块链的物联网的信息安全问题。
本发明的另以目的是提供一种基于RSA算法和智能合约的分布式公钥生成装置。
技术方案:为实现上述目的,本发明的目的在于提供一种基于RSA算法和智能合约的分布式公钥生成方法及装置,用以解决基于区块链的物联网的信息安全问题。
为解决上述问题,本发明所采用的技术方案为:一种基于RSA算法和智能合约的分布式公钥生成方法及装置,其特征在于,包括:
S1:区块链智能合约预置条件被触发,满足预制条件,触发智能合约执行;
S2:获取到交易触发者地址,智能合约的密钥管理单元调用密钥生成单元通过密钥生成算法根据当前系统时间和、交易者地址和合约执行次数为参数生成公钥、私钥;
S3:将公钥、私钥及交易触发者地址存储于智能合约密钥存储单元;
S4:智能合约密钥管理单元将密钥对的公钥输出,交易确认后,全网即可查看交易结果获取公钥信息。
上述方案中,所述智能合约由密钥生成单元、密钥存储单元、密钥管理单元组成。
上述方案中,所述密钥生成单元采用经典RSA密钥算法生成公钥、私钥。
进一步地,所述RSA密钥生成算法中大素数选取是根据系统时间、交易触发者地址和合约调用次数为参数经过以太坊的加密函数Keccak-256计算HASH值生成的随机数以内的任意大素数。算法中随机数以内的大素数筛选采用埃拉托斯特尼筛法。
上述方案中,所述密钥存储单元是将公钥私钥成对匹配存储,再将密钥对与交易者地址对应存储于系统中。
进一步地,所述公钥私钥成对匹配存储是将公钥与私钥以映射方式存储。
更进一步地,所述密钥对与交易触发者地址存储于系统中是将映射形式的密钥对与交易者触发者地址以映射方式存储。
上述方案中,所述密钥管理单元默认密钥对拥有者以是交易触发者,密钥管理单元是将公钥输出,交易确认后,全网可通过查询交易查看该公钥。
进一步地,所述密钥管理单元是以交易者身份判断密钥对拥有者。
有益效果:本发明的一种基于RSA算法和智能合约的分布式公钥生成方法及装置,与现有技术相比,具有以下优点:
1.基于RSA算法和智能合约的分布式公钥生成方法利用原生的去中心化技术及物联网网络中的节点共同存贮密钥的优势,将密钥的存贮嵌入到网络的组成节点中,相较于传统的中心化公钥系统能够提供较好的响应性能和抗干扰能力。
2.基于RSA算法和智能合约的分布式公钥生成方法利用区块链的分布式特性,相较于传统的中心化公钥系统能够提高密钥的更新效率。
3.基于RSA算法和智能合约的分布式公钥生成方法及装置促进物联网密钥系统的建立,节点间相互通信可根据一方所提供的公钥加密信息,在收到加密信息后根据交易者地址及公钥获取私钥即可解密,增加数据传递的安全性。
4.基于RSA算法和智能合约的分布式公钥生成方法及装置根据交易触发者地址判断密钥拥有者,确保被加密数据不被恶意者解密获取。
附图说明
图1为一种基于RSA算法和智能合约的分布式公钥生成方法的流程图;
图2为一种基于RSA算法和智能合约的分布式公钥生成装置的结构图。
具体实施方式
本发明实施例提供了一种基于RSA算法和智能合约的分布式公钥生成方法及装置,可以给基于区块链的物联网设备提供安全的密钥保护体系,一定程度地解决物联网存在的安全威胁,为物联网安全提供最基础的保护。
如图1所示,一种基于RSA算法和智能合约的分布式公钥生成方法的一个实施例,包括:
101、获取交易触发者地址,获取当前系统时间及合约调用次数,以交易触发者地址,系统时间及合约调用次数为参数通过以太坊的加密函数Keccak-256计算HASH值生成随机数;
102、获取生成的随机数,根据埃拉托斯特尼筛法获得随机数以内的素数;
进一步地,随机选取第一大素数、第二大素数;
103、获取第一大素数、第二大素数,通过RSA加密算法生成公钥、私钥;
104、获取公钥、私钥,将公钥、私钥以映射的方式匹配存储;
进一步地,获取交易触发者地址与存储的密钥对以映射的方式匹配存储;
105、获取公钥,交易确认后,打印公钥,全网可以通过交易结果获取公钥。
上面是对一种基于RSA算法和智能合约的分布式公钥生成方法进行的详细说明,下面将一具体应用场景对基于RSA算法和智能合约的分布式公钥生成方法的应用进行说明,应用例包括:
(1)交易触发者发起交易,合约获取交易触发者地址。
(2)获取交易触发者地址、当前系统时间及合约调用总次数为参数,通过以太坊的(Keccak-256)计算HASH值生成随机数;
(3)在随机数内利用埃拉托斯特尼筛法获得所有素数,选取两个大素数;
(4)利用两个大素数,根据RSA加密算法生成公钥、私钥;
(5)算法:
选取两个大素数p、q;
计算n=pq,欧拉函数φ(n)=(p-1)(q-1);
随机选取一个正整数e,使其满足e与φ(n)的最大公约数GCD(e,φ(n))=1,且1<e<φ(n),公钥即为(e,n);
计算解密密钥d,使其满足ed≡1(modφ(n)),且0<d<φ(n),私钥为(d,n);
(6)交易确认,打印公钥,全网可查看交易结果获得公钥。
如图2所示,一种基于RSA算法和智能合约的分布式公钥生成装置的一个实施例,包括:
密钥管理单元201,用于获取交易触发者地址,触发密钥生成单元;
密钥生成单元202,用于生成随机数,选取随机数内的两个任意大素数,根据两个大素数生成公钥私钥对,触发密钥存储单元;
密钥存储单元203,用于将公钥私钥对以映射方式匹配存储,再将交易触发者地址与密钥对以映射方式匹配存储;
密钥管理单元204,用于获取公钥,在交易结果中打输出公钥。
因此,在开放环境的物联网系统中,基于RSA算法和智能合约的公钥生成方法不仅可以避免恶意行为对合约正常执行的干扰,还可以解决数据窃取及非法访问等针对物联网环境的恶意威胁。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (8)
1.一种基于RSA算法和智能合约的分布式公钥生成方法,其特征在于,包括:
S1:区块链智能合约预置触发条件,满足预制条件,触发智能合约执行;
S2:获取到触发交易者地址,智能合约的密钥管理单元调用密钥生成单元通过密钥生成算法根据当前系统时间和、交易者地址和合约执行次数为参数生成公私密钥对;
S3:将交易者地址、公钥私钥对存储于智能合约密钥存储单元;
S4:智能合约密钥管理单元将密钥对的公钥输出,交易确认后,全网可查看交易结果获取公钥信息。
2.一种基于RSA算法和智能合约的分布式公钥生成装置,其特征在于:所述的智能合约包括密钥生成单元、密钥存储单元、密钥管理单元。
3.根据权利要求2所述的基于RSA算法和智能合约的分布式公钥生成装置,其特征在于:所述的智能合约密钥生成单元采用RSA算法生成公私密钥对。
4.根据权利要求3所述的基于RSA算法和智能合约的分布式公钥生成装置,其特征在于:所述的RSA密钥生成算法中大素数选取根据系统时间、交易触发者地址和合约调用次数为参数经过以太坊的加密函数Keccak-256计算HASH值生成的随机数以内的任意大素数。
5.根据权利要求4所述的基于RSA算法和智能合约的分布式公钥生成装置,其特征在于:所述的RSA密钥生成算法中随机数以内的大素数筛选采用埃拉托斯特尼筛法。
6.根据权利要求2所述的基于RSA算法和智能合约的分布式公钥生成装置,其特征在于:所述的密钥存储单元用于将公钥私钥匹配存储于映射中,再将映射形式存储的密钥对与交易触发者地址以映射方式存储于系统中。
7.根据权利要求2所述的基于RSA算法和智能合约的分布式公钥生成装置,其特征在于:密钥管理单元默认密钥对所有者是交易触发者,密钥管理单元将公钥输出,交易确认后,全网通过查询交易结果查看公钥。
8.根据权利要求7所述的基于RSA算法和智能合约的分布式公钥生成装置,其特征在于:所述密钥管理单元通过交易者身份判断密钥对拥有者。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010052550.3A CN111277414B (zh) | 2020-01-17 | 2020-01-17 | 基于rsa算法和智能合约的分布式公钥生成方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010052550.3A CN111277414B (zh) | 2020-01-17 | 2020-01-17 | 基于rsa算法和智能合约的分布式公钥生成方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111277414A true CN111277414A (zh) | 2020-06-12 |
CN111277414B CN111277414B (zh) | 2023-06-20 |
Family
ID=71001101
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010052550.3A Active CN111277414B (zh) | 2020-01-17 | 2020-01-17 | 基于rsa算法和智能合约的分布式公钥生成方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111277414B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111736783A (zh) * | 2020-06-23 | 2020-10-02 | 湖南天河国云科技有限公司 | 一种基于区块链的自助打印方法 |
CN112437089A (zh) * | 2020-11-26 | 2021-03-02 | 交控科技股份有限公司 | 基于区块链的列控系统密钥管理方法及装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110008736A (zh) * | 2019-01-31 | 2019-07-12 | 阿里巴巴集团控股有限公司 | 区块链中实现隐私保护的方法及节点、存储介质 |
CN110245506A (zh) * | 2019-05-30 | 2019-09-17 | 阿里巴巴集团控股有限公司 | 基于区块链的智能合约管理方法及装置、电子设备 |
CN110430039A (zh) * | 2019-07-19 | 2019-11-08 | 瑞纳智能设备股份有限公司 | 一种基于区块链的生产管理系统及方法 |
-
2020
- 2020-01-17 CN CN202010052550.3A patent/CN111277414B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110008736A (zh) * | 2019-01-31 | 2019-07-12 | 阿里巴巴集团控股有限公司 | 区块链中实现隐私保护的方法及节点、存储介质 |
CN110245506A (zh) * | 2019-05-30 | 2019-09-17 | 阿里巴巴集团控股有限公司 | 基于区块链的智能合约管理方法及装置、电子设备 |
CN110430039A (zh) * | 2019-07-19 | 2019-11-08 | 瑞纳智能设备股份有限公司 | 一种基于区块链的生产管理系统及方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111736783A (zh) * | 2020-06-23 | 2020-10-02 | 湖南天河国云科技有限公司 | 一种基于区块链的自助打印方法 |
CN112437089A (zh) * | 2020-11-26 | 2021-03-02 | 交控科技股份有限公司 | 基于区块链的列控系统密钥管理方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN111277414B (zh) | 2023-06-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11714622B2 (en) | Secure cloud-based system, and security application distribution method to be automatically executed therein | |
CN101479984B (zh) | 用于身份管理、验证服务器、数据安全和防止中间人攻击的动态分发密钥系统和方法 | |
CN107302438B (zh) | 一种基于密钥更新的私钥保护方法、系统及装置 | |
CN113301022B (zh) | 基于区块链和雾计算的物联网设备身份安全认证方法 | |
US20160182230A1 (en) | Secure token-based signature schemes using look-up tables | |
CN110505055B (zh) | 基于非对称密钥池对和密钥卡的外网接入身份认证方法和系统 | |
CN110601855B (zh) | 一种根证书管理方法、装置及电子设备、存储介质 | |
CN106657002A (zh) | 一种新型防撞库关联时间多密码的身份认证方法 | |
CN111277414B (zh) | 基于rsa算法和智能合约的分布式公钥生成方法及装置 | |
Kvarda et al. | Software implementation of secure firmware update in IoT concept | |
CN115001775B (zh) | 数据处理方法、装置、电子设备及计算机可读存储介质 | |
CN101997835A (zh) | 网络安全通讯方法、数据安全处理装置和用于金融的系统 | |
CN107026729B (zh) | 用于传输软件的方法和装置 | |
Mishra et al. | MPoWS: Merged proof of ownership and storage for block level deduplication in cloud storage | |
Mishra et al. | RCDSD: RSA based cross domain secure deduplication on cloud storage | |
EP3836478A1 (en) | Method and system of data encryption using cryptographic keys | |
CN115396443B (zh) | 基于时间因子的联盟链共识方法、装置、设备及存储介质 | |
CN116797227A (zh) | 基于同态加密的客户隐私信息安全交换保护方法及系统 | |
CN110086627B (zh) | 基于非对称密钥池对和时间戳的量子通信服务站密钥协商方法和系统 | |
CN110113152B (zh) | 基于非对称密钥池对和数字签名的量子通信服务站密钥协商方法和系统 | |
CN114117471A (zh) | 机密数据管理方法、电子设备、存储介质及程序产品 | |
Kaur et al. | Fortification of transport layer security protocol by using password and fingerprint as identity authentication parameters | |
CN108833449B (zh) | 基于RAS算法的Web通信加密传输方法、装置及系统 | |
Akram et al. | Coopetitive architecture to support a dynamic and scalable NFC based mobile services architecture | |
CN113726740B (zh) | 面向海工装备二级节点的数据存储方法、防护方法及系统 |
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 | ||
CB02 | Change of applicant information |
Address after: 210003 Gulou District, Jiangsu, Nanjing new model road, No. 66 Applicant after: NANJING University OF POSTS AND TELECOMMUNICATIONS Address before: Yuen Road Qixia District of Nanjing City, Jiangsu Province, No. 9 210000 Applicant before: NANJING University OF POSTS AND TELECOMMUNICATIONS |
|
CB02 | Change of applicant information | ||
GR01 | Patent grant | ||
GR01 | Patent grant |