CN106789047B - 一种区块链身份系统 - Google Patents
一种区块链身份系统 Download PDFInfo
- Publication number
- CN106789047B CN106789047B CN201710121981.9A CN201710121981A CN106789047B CN 106789047 B CN106789047 B CN 106789047B CN 201710121981 A CN201710121981 A CN 201710121981A CN 106789047 B CN106789047 B CN 106789047B
- Authority
- CN
- China
- Prior art keywords
- user
- random number
- block chain
- identity
- information
- 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
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0807—Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0853—Network architectures or network communication protocols for network security for authentication of entities using an additional device, e.g. smartcard, SIM or a different communication terminal
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- 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/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0618—Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer And Data Communications (AREA)
Abstract
一种区块链身份系统,包含客户端、云端,所述客户端由射频读取模块、计算平台、触摸屏模块、通信模块、智能身份卡组成,云端由区块链多节点网络组成,区块链多节点网络包括数据区块链以及多节点网络,多节点网络负责与客户端之间协调完成身份的生成过程以及身份认证过程。本认证系统使用智能身份卡保证用户身份的安全性,将传输的信息加密后再进行传输,保证不会在传输的过程中泄漏信息,保证两次认证的有效性,避免认证过程中遭受不必要的攻击。
Description
技术领域
本发明涉及互联网上的身份生成以及认证,一种区块链身份系统。
背景技术
在互联网中,区块链身份需要依靠网络数据的形式进行颁发,与传统的身份不同,互联网上的身份对生成及认证过程的难度更大。对于目前广泛使用的基于口令的认证机制或基于短消息的身份认证中,如果口令一旦泄漏或者手机不慎丢失,其他用户同样可以使用该终端进行认证交易。另外近年来开始出现结合生物特征信息(例如指纹、虹膜等)来增加认证安全性的技术。然而就当前环境下,如果在要进行身份认证之前必须要先接受自己的指纹等生物特征信息被一个第三方系统采集保存,对于一个普通大众用户来说尚不容易接受,用户很可能因为担心个人信息泄漏。因此,现今亟需一种安全性高、可操作性高、方便的区块链身份系统。
发明内容
有鉴于此,本发明提供一种解决或部分解决上述问题的区块链身份系统。
为达到上述技术方案的效果,本发明的技术方案为:一种区块链身份系统,包含客户端、云端,客户端由射频读取模块、计算平台、触摸屏模块、通信模块、智能身份卡组成,云端由区块链多节点网络组成,区块链多节点网络包括数据区块链以及多节点网络,多节点网络负责与客户端之间协调完成身份的生成过程以及身份认证过程;
计算平台的内部包含触摸屏控制器、通信控制器及微型计算芯片;
触摸屏控制器用于控制触摸屏模块的显示,将需要显示的信息发送给所述触摸屏模块;
通信控制器以串口通信的方式调度射频读取模块、触摸屏模块及通信模块之间的交互通信;
微型计算芯片用于处理所述身份的生成过程以及身份认证过程中的信息;
智能身份卡内含内置集成电路的芯片,芯片包含存有用户ID编号,每个智能身份卡的用户ID编号都是惟一的,用于识别用户身份,智能身份卡由专门的厂商通过专门的设备生产,是不可复制的硬件,智能身份卡由注册过的合法用户携带,认证时必须将智能身份卡经过射频读取模块扫描读入其中的用户ID编号,以验证用户的身份;
触摸屏模块采用五线电阻屏,依靠压力感应原理,用于显示以及输入在身份的生成过程以及身份认证过程中所需的信息;
通信模块用于接收和发送相关信息,内含网络传输过滤器及专用编码芯片以实现计算平台与云端之间的通信,并以数据帧的方式实现网络数据的接收和发送,并且还要在接收和发送时避免背景噪声及干扰,数据帧的编码方式为相位编码,并采取同步时钟编码技术,在传输数据信息的同时,也将时钟同步信号一起传输到对方;
在云端的所述区块链多节点网络中,区块链多节点网络中的数据区块链由一串按创建的时间顺序相连的数据区块组成,区块链多节点网络中的多节点网络是由多个节点构成的P2P网络,节点之间通过网络共享及互相传输信息,数据区块链对多节点网络中所有所述节点都是开放的,数据区块由区块头以及区块主体组成,区块头包含前一数据区块的哈希值、时间戳、当前数据区块的哈希值,前一数据区块的哈希值用于不同数据区块的连接,时间戳记录当前数据区块连接的时间,当前数据区块的哈希值用于确保数据区块的内容不会被篡改,区块主体记录了用户身份的账户信息,其中合法的用户身份的账户信息为:用户名、用户身份信息、加密后的用户口令、加密后的用户ID编号、用户公钥;
节点中包含伪随机数生成器;
身份生成过程如下:
1)用户在触摸屏模块上输入用户名、用户身份信息、用户口令,并将用户名、用户身份信息、用户口令传输给多节点网络,多节点网络检验用户名在数据区块链中是否存在,如果用户名不存在,进行下一步,如果用户名存在,传送反馈信息经由通信模块传送给计算平台,计算平台将反馈信息处理,在触摸屏模块上显示“用户存在,重新输入”,用户在触摸屏模块上重新输入用户名,多节点网络重新检验用户名在数据区块链是否存在;
2)计算平台验证所述用户口令是否符合要求,如果用户口令符合要求,进行下一步,如果不符合要求传输给触摸屏模块,在触摸屏模块上显示“用户口令不符合要求,重新输入”,用户在触摸屏模块上重新输入用户口令;
3)多节点网络产生随机数S1,并且随机数S1经过IDEA加密算法进行加密生成加密后的随机数S1,将加密后的随机数S1广播给多节点网络中所有节点,所有节点利用IDEA解密算法解密加密后的随机数S1,最先解密出随机数S1的节点作为负责构建数据区块链的节点;
4)负责构建数据区块链的节点分配给用户一个用户公钥,并通过哈希算法将用户身份信息生成唯一的身份标识,负责构建数据区块链的节点将生成后的唯一的身份标识进行数字签名生成唯一的用户ID编号,将的用户ID编号写入智能身份卡,由用户公钥进行加密生成加密后的用户ID编号,把当前时间保存为当前数据区块的时间戳,前一数据区块的哈希值通过安全散列算法生成当前数据区块的哈希值,并且生成加密后的用户口令,生成加密后的用户口令的具体过程为:使用负责构建数据区块链的节点中的伪随机数生成器生成的随机数作为盐值,将盐值混入用户口令,并使用所述加密哈希函数进行加密,生成加密后的用户口令;将用户名、用户身份信息、加密后的用户口令、加密后的用户ID编号、用户公钥组成用户身份的账户信息,与产生的盐值一起写入当前数据区块的区块主体中;
伪随机数生成器的工作原理如下:
伪随机数生成器基于数据加密标准,包含三重数据加密标准算法,可以循环地产生随机数;用变量i表示第i轮随机数的产生计算,主要有3个组成部分:
1)输入部分:输入部分是两个64比特的伪随机数Datei及Vi,其中,Datei表示第i轮计算开始时的日期和时间,每产生一个随机数Ri后,Datei需要更新一次,Vi是产生第i个随机数时需要输入的种子,其初值可任意设定,以后每轮计算都会自动更新;
2)密钥产生器:用于每轮的具体计算,每轮计算都使用了三重数据算法加密,每次加密使用两个固定的56比特的密钥K1和密钥K2,这两个密钥必须保密,由伪随机数生成器指定;
3)输出部分:输出为一个64比特的伪随机数Ri和一个64比特的新种子Vi+1;
伪随机数生成器具有很高的安全强度,因为其采用了总共112比特长的密钥和3个密钥加密的数据算法加密,同时还由于有两个伪随机数输入驱动,两个伪随机数输入一个是当前的日期和时间Datei,另一个是上一轮产生的种子Vi,每轮都产生随机数Ri,但是每轮种子不同,产生的随机数都不相同,因此,为每个用户产生的盐值也不相同,所以无法通过上一轮产生的盐值来推断下一轮产生的盐值;
身份认证过程如下:
第一步,客户端向云端发出认证请求,将智能身份卡中所存的用户ID编号经由射频读取模块读入,多节点网络检测在数据区块链中是否存在,如果存在再进行第二步,如果不存在结束身份认证过程;
第二步,初次认证,云端经由通信模块反馈给计算平台开始认证的信息,计算平台处理开始认证的信息,开始认证的信息在触屏模块显示提示用户输入,用户在触摸屏模块输入用户名和用户口令后,初步验证用户,根据收到的用户名,多节点网络判断其合法性,如果是合法用户,再检验用户口令是否正确,从区块链多节点网络中取出用户的盐值,将盐值混入用户输入的密码,并且使用加密哈希函数进行加密,比较结果和对应数据区块储存的加密后的用户口令是否相同,如果相同那么初步判断用户输入的口令正确,进入第三步,如果不相同则判断用户输入的口令不一致;
第三步,二次认证,计算平台选取大素数p及整数a,并将这两个数公开,即这两个数对客户端与多节点网络都可见,多节点网络选取随机的大素数x,大素数x满足x<p-1,计算axmod p,大素数x的值保密,只对多节点网络可见;客户端将用户口令及对应的盐值级联,计算散列值Z1,并生成随机数S1,将计算后的散列值Z1与将计算后的axmod p的值、随机数S1级联再进行一次散列运算得到散列值Z2,客户端连同随机数S1、将计算后的axmod p的值和散列值Z2一起发送给多节点网络;
第四步,多节点网络取出存储在数据区块链的加密后的用户口令;与收到的随机数S1、将计算后的axmod p级联再进行散列运算得到散列值Z3,与散列值Z2进行比较,相等则继续,否则判断不一致,多节点网络随机选取大素数y,满足y<q,计算aymod p,并将大素数y的值保密;多节点网络将加密后的用户口令、随机数S1和计算后的aymod p的值再次级联进行散列运算得到散列值Z4,并且将散列值Z4、将计算后的aymod p的值发送给客户端;
第五步,客户端将在第三步得到的散列值Z1、将计算后的aymod p和随机数S1级联进行散列运算,将计算结果和第四步收到的消息中的散列值Z4进行比较,相等则回送给云端一个认证成功的应答信号,否则返回认证失败的消息;
经过以上五个步骤,云端与客户端都成功地验证了对方的身份;
区块链身份系统采用的通信模式是一种开放系统结构的网络方式,由客户端首先向云端提出请求,云端对请求做相应的处理并执行请求中包含的任务,然后将结果返回给客户端。
本区块链身份系统的优点如下:
(1)使用智能身份卡,以保证用户身份的安全性。
(2)将口令信息及智能身份卡的ID信息都加密,而不传输信息明文,这样即使入侵者人通过网络侦听等手段获得信道的传输信息,也无需担心用户口令和身份证信息被泄漏。
(3)身份生成过程以及身份认证过程使用了复杂的加密过程,可以有效防止重放攻击。而且客户端和云端采用了二次认证,提高了认证过程中的可靠性与安全性。
附图说明
图1为区块链身份系统的结构图。
具体实施方式
为了使本发明所要解决的技术问题、技术方案及有益效果更加清楚明白,以下结合附图及实施例,对本发明进行详细的说明。应当说明的是,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明,能实现同样功能的产品属于等同替换和改进,均包含在本发明的保护范围之内。具体方法如下:
实施例1:认证系统的工作流程
认证系统的工作过程如下:用户在客户终端的触摸屏模块显示的登陆窗口上输入用户名口令登陆系统,进入认证系统后,触摸屏模块上显示读卡认证界面,通过发送命令给射频读取模块,射频读取模块将用户的智能身份卡中的信息读取进来,智能身份卡的身份读入到计算平台后,在处理平台根据所身份认证协议进行相应的密码学运算,得到加密后的认证请求信息,通信模块通过网络通讯的方式将加密后的认证请求信息传送到云端的认证服务器,经过客户端跟云端的一系列的认证交互过程之后,云端得到认证结果,并将相应的认证结果返回到客户端进行显示。
实施例2:身份认证协议设计
为身份认证系统安全与否的关键,身份认证协议的设计是整个系统的关键组成部分。首先介绍本文中所用符号约定:
U表示用户;
S表示第三方认证服务器;
ID表示射频读取模块读入的身份信息;
UserN、Password分别代表用户名和对应登录口令;
KuR、KuS分别代表移动用户的公钥和私钥;
KsR、Kss分别代表认证服务器的公钥和私钥;
EK(m)表示用密钥k对明文m加密;
DK(C)表示用密钥k对密文c解密;
Rl、N2为系统产生的随机数;
K作为双方身份认证成功后的会话密钥。
首先,用户须在第三方注册中心进行用户信息注册。注册的时候,要求第三方注册中心具有射频读取模块,以便确认用户身份信息,并根据从射频装置读出的信息完成用户的注册。注册过程是在这样的一个前提下进行的:整个过程都是在一个用户完全信赖的中心完成,且注册信息都是通过安全信道进行的。
注册过程如下:
(1)用户持自己的第二代居民身份证在官方指定的场所请求注册。注册中心人员采用认证系统的射频装置扫描用户的智能身份卡,读取智能身份卡中用户的身份ID。在认证系统读取用户的ID后,系统会自动查询用户是否己经注册过该系统。若用户己经注册过此系统返回提示信息并结束用户注册子协议。
(2)在确认用户的ID没有注册而且符合注册条件后,认证系统会请求用户输入登录口令。用户输入完口令后,系统首先使用用户的口令信息生成对应于该ID的公钥,然后根据椭圆曲线密码算法使用用户公钥加密用户口令,并将用户的公钥和用公钥加密后的口令和加密后的ID信息存储到第三方认证服务器上。
(3)在认证服务器将用户的身份信息存储到服务器后。第三方注册人员将认证系统安装程序通过移动存储设备或者安全信道传送安装到用户的移动终端。
注册成功之后即可使用移动终端进行身份认证,具体认证过程如下:
步骤一:认证开始,首先需要在客户端进行登陆,验证用户身份和对应口令,若云端验证无此用户或者用户名和口令不符,则返回出错信息,用户需要注册或者重新输入帐号和正确口令。如用户名和与之对应的口令正确,则进入接下来认证过程。通信模块中的网络信道传输的是验证用户的名称与用户的密码信息,云端验证从数据库中提取这两个信息。
步骤二:登陆成功之后,进入扫描智能身份卡认证阶段,用户U使用移动终端设备将用户身份证获得身份卡ID信息读取到认证系统中,具体过程如下:
(1)用户通过射频读卡设备读入身份卡信息ID后,首先在移动设备终端进行以下计算:
①使用用户公钥KuR加密身份ID得到加密后的用户ID,利用随机序列发生器产生随机数N1,并使用服务器的公钥计算认证请求,并暂存随机数Rl。
②发送消息认证请求,认证请求中包含加密后的用户ID信息及随机数N1,并且需要将随机数RI暂时保存。
(2)服务器收到用户发送的认证请求后:
①云端用私钥根据椭圆曲线密码算法模块解密认证请求,得到用户的ID加密后信息和用户发送的随机数Rl,然后服务器查找该ID加密信息是否跟认证数据库中userN用户所对应的EncipherID表项相符;若不相符,则返回出错信息,认证失败,即每个用户名跟其身份ID信息是一对应绑定的,即使入侵者窃取到用户名密码登陆系统由于不能扫入与之相对应的ID加密信息,亦不能通过认证。
②若①中得到的ID加密信息验证正确,此时服务器保存用户发送的随机数N1。同时服务器利用随机序列发生器产生随机数N2,然后利用椭圆曲线密码算法模块和用户的公钥计算应答信息,并发送至客户端进行验证。
(3)用户收到服务器的应答信息,会进行一下计算
①首先用户用自己的私钥解密应答信息,此时用户将获得的N1与以前保存Rl相比较,若两者不相等,则用户对服务器的认证失败(服务器可能被冒充),拒绝服务器,认证结束。
②若随机数N1相等,则用户认证服务器成功。同时用户生成会话对称密钥K,计算伴随着随机数N2的响应信息,然后发送响应信息至服务器请求验证。
(4)服务器接收到用户的响应信息后,进行如下计算:
①首先服务器用自己的私钥解密得到随机数N2。
②服务器首先比较随机数N2与保存的是否相等,若两者不相等,则服务器验证用户失败。
本区块链身份系统的优点如下:
(1)使用智能身份卡,以保证用户身份的安全性。
(2)将口令信息及智能身份卡的ID信息都加密,而不传输信息明文,这样即使入侵者人通过网络侦听等手段获得信道的传输信息,也无需担心用户口令和身份证信息被泄漏。
(3)身份生成过程以及身份认证过程使用了复杂的加密过程,可以有效防止重放攻击。而且客户端和云端采用了二次认证,提高了认证过程中的可靠性与安全性。
以上所述仅为本发明之较佳实施例,并非用以限定本发明的权利要求保护范围。同时以上说明,对于相关技术领域的技术人员应可以理解及实施,因此其他基于本发明所揭示内容所完成的等同改变,均应包含在本权利要求书的涵盖范围内。
Claims (1)
1.一种区块链身份系统,其特征在于,包含客户端、云端,所述客户端由射频读取模块、计算平台、触摸屏模块、通信模块、智能身份卡组成,所述云端由区块链多节点网络组成,所述区块链多节点网络包括数据区块链以及多节点网络,所述多节点网络负责与所述客户端之间协调完成身份的生成过程以及身份认证过程,并且在其中调用所述数据区块链;
所述计算平台的内部包含触摸屏控制器、通信控制器及微型计算芯片;
所述触摸屏控制器用于控制所述触摸屏模块的显示,将需要显示的信息发送给所述触摸屏模块;
所述通信控制器以串口通信的方式调度所述射频读取模块、所述触摸屏模块及所述通信模块之间的交互通信;
所述微型计算芯片用于处理所述身份的生成过程以及所述身份认证过程中的信息;
所述智能身份卡内置集成电路的芯片,所述芯片存有用户ID编号,每个所述智能身份卡的所述用户ID编号都是惟一的,用于识别用户身份,所述智能身份卡由专门的厂商通过专门的设备生产,是不可复制的硬件,所述智能身份卡由注册过的合法用户携带,认证时必须将所述智能身份卡经过所述射频读取模块扫描读入其中的所述用户ID编号,以验证用户的身份;
所述触摸屏模块采用五线电阻屏,依靠压力感应原理,用于显示以及输入在所述身份的生成过程以及所述身份认证过程中所需的信息;
所述通信模块用于接收和发送相关信息,内含网络传输过滤器及专用编码芯片以实现所述计算平台与所述云端之间的通信,并以数据帧的方式实现网络数据的接收和发送,并且还要在接收和发送时避免背景噪声及干扰,所述数据帧的编码方式为相位编码,并采取同步时钟编码技术,在传输数据信息的同时,也将时钟同步信号一起传输到对方;
在所述区块链多节点网络中,所述数据区块链由一串按创建的时间顺序相连的数据区块组成,所述多节点网络是由多个节点构成的P2P网络,所述节点之间通过网络共享信息及互相传输信息,所述数据区块链对所述多节点网络中所有所述节点都是开放的,所述数据区块由区块头以及区块主体组成,所述区块头包含前一数据区块的哈希值、时间戳、当前数据区块的哈希值,所述前一数据区块的哈希值用于不同所述数据区块的连接,所述时间戳记录当前所述数据区块连接的时间,当前所述数据区块的哈希值用于确保所述数据区块的内容不会被篡改,所述区块主体记录了用户身份的账户信息,其中合法的所述用户身份的账户信息为:用户名、用户身份信息、加密后的用户口令、加密后的所述用户ID编号、用户公钥;
每个所述节点包含伪随机数生成器;
所述身份生成过程如下:
1)用户在所述触摸屏模块上输入所述用户名、所述用户身份信息、所述用户口令,并将所述用户名、所述用户身份信息、所述用户口令传输给所述多节点网络,所述多节点网络检验所述用户名在所述数据区块链中是否存在,如果所述用户名不存在,进行下一步,如果所述用户名存在,传送反馈信息经由所述通信模块传送给所述计算平台,所述计算平台将所述反馈信息处理,在所述触摸屏模块上显示“用户存在,重新输入”,用户在所述触摸屏模块上重新输入所述用户名,所述多节点网络重新检验用户名在所述数据区块链是否存在;
2)所述计算平台验证所述用户口令是否符合要求,如果所述用户口令符合要求,进行下一步,如果不符合要求传输给所述触摸屏模块,在所述触摸屏模块上显示“用户口令不符合要求,重新输入”,用户在所述触摸屏模块上重新输入所述用户口令;
3)所述多节点网络产生随机数S1,并且所述随机数S1经过IDEA加密算法进行加密生成加密后的所述随机数S1,将所述加密后的所述随机数S1广播给所述多节点网络中所有所述节点,所有所述节点利用IDEA解密算法解密加密后的所述随机数S1,最先解密出所述随机数S1的节点作为负责构建数据区块链的节点;
4)所述负责构建数据区块链的节点分配给用户一个用户公钥,并通过哈希算法将所述用户身份信息生成唯一的身份标识,所述负责构建数据区块链的节点将生成后的所述唯一的身份标识进行数字签名生成唯一的所述用户ID编号,将所述用户ID编号写入所述智能身份卡,由所述用户公钥进行加密生成所述加密后的所述用户ID编号,把当前时间保存为所述当前数据区块的时间戳,所述前一数据区块的哈希值通过安全散列算法生成所述当前数据区块的哈希值,并且生成所述加密后的用户口令,所述生成所述加密后的用户口令的具体过程为:使用所述负责构建数据区块链的节点,利用其包含的所述伪随机数生成器生成随机数,所述随机数作为用户的盐值,将所述用户的盐值混入所述用户口令,并使用加密哈希函数进行加密,生成所述加密后的用户口令;将所述用户名、所述用户身份信息、所述加密后的用户口令、所述加密后的用户ID编号、所述用户公钥组成所述用户身份的账户信息,与所述用户的盐值一起写入所述当前数据区块的所述区块主体中;
所述伪随机数生成器的工作原理如下:
所述伪随机数生成器基于数据加密标准,包含三重数据加密标准算法,可以循环地产生随机数;i为自然数的变量;用于表示第i轮随机数的产生计算,主要有3个组成部分:
1)输入部分:所述输入部分是两个64比特的伪随机数Datei及Vi,其中,Datei表示第i轮计算开始时的日期和时间,每产生一个随机数Ri后,Datei需要更新一次,Vi是产生第i个随机数时需要输入的种子,其初值可任意设定,以后每轮计算都会自动更新;
2)密钥产生器:所述用于每轮的具体计算,每轮计算都使用了三重数据算法加密,每次加密使用两个固定的56比特的密钥K1和密钥K2,这两个密钥必须保密,由所述伪随机数生成器指定;
3)输出部分:输出为一个64比特的随机数Ri和一个64比特的新种子Vi+1;
所述伪随机数生成器具有很高的安全强度,因为其采用了总共112比特长的密钥和3个密钥加密的数据算法加密,同时还由于有两个伪随机数输入驱动,所述两个伪随机数输入一个是当前的日期和时间Datei,另一个是上一轮产生的种子Vi,每轮都产生随机数Ri,但是由于每轮种子不同,产生的随机数都不相同,因此,为每个用户产生的随机数也不相同,所以无法通过上一轮产生的随机数来推断下一轮产生的随机数;
所述身份认证过程如下:
第一步,所述客户端向所述云端发出认证请求,将所述智能身份卡中所存的所述用户ID编号经由所述射频读取模块读入,所述多节点网络检测其在所述数据区块链中是否存在,如果存在再进行第二步,如果不存在结束所述身份认证过程;
第二步,初次认证,所述云端经由所述通信模块反馈给所述计算平台开始认证的信息,所述计算平台处理所述开始认证的信息,所述开始认证的信息在所述触摸屏模块显示提示用户输入所述用户名以及所述用户口令,用户在所述触摸屏模块输入后,初步验证用户,根据收到的输入的所述用户名,所述多节点网络判断其合法性,如果是合法用户,再检验输入的所述用户口令是否正确,从所述区块链多节点网络中取出所述用户的盐值,将所述用户的盐值混入所述输入的所述用户口令,并且使用所述加密哈希函数进行加密,比较结果和对应数据区块储存的所述加密后的用户口令是否相同,如果相同那么初步判断所述输入的所述用户口令正确,进入第三步,如果不相同则判断所述输入的所述用户口令不正确;
第三步,二次认证,所述计算平台选取大素数p及整数a,并将这两个数公开,即这两个数对所述客户端与所述多节点网络都可见,所述多节点网络选取随机的大素数x,所述大素数x满足x<(p-1),计算axmod p,所述大素数x的值保密,只对所述多节点网络可见;所述客户端将所述用户口令及所述用户的盐值级联,计算散列值Z1,并生成随机数S1,将计算后的散列值Z1与计算后的所述axmod p的值、所述随机数S1级联再进行一次散列运算得到散列值Z2,所述客户端连同所述随机数S1、计算后的所述axmod p的值和所述散列值Z2一起发送给所述多节点网络;
第四步,所述多节点网络取出存储在所述数据区块链的所述加密后的用户口令;与收到的所述随机数S1、计算后的所述axmod p的值级联再进行散列运算得到散列值Z3,与所述散列值Z2进行比较,相等则继续,否则判断不一致,所述多节点网络随机选取大素数y,计算aymod p,并将所述大素数y的值保密;所述多节点网络将所述加密后的用户口令、所述随机数S1和计算后的所述aymod p的值再次级联进行散列运算得到散列值Z4,并且将所述散列值Z4、计算后的所述aymod p的值发送给所述客户端;
第五步,所述客户端将在第三步得到的所述散列值Z1、将计算后的所述aymod p的值和所述随机数S1级联并进行散列运算,将计算结果和第四步收到的消息中的所述散列值Z4进行比较,相等则回送给所述云端一个认证成功的应答信号,否则返回认证失败的消息;
经过以上五个步骤,所述云端与所述客户端都成功地验证了对方的身份;
所述区块链身份系统采用的通信模式是一种开放系统结构的网络方式,由所述客户端首先向所述云端提出请求,所述云端对所述请求做相应的处理并执行所述请求中包含的任务,然后将结果返回给所述客户端。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710121981.9A CN106789047B (zh) | 2017-03-03 | 2017-03-03 | 一种区块链身份系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710121981.9A CN106789047B (zh) | 2017-03-03 | 2017-03-03 | 一种区块链身份系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106789047A CN106789047A (zh) | 2017-05-31 |
CN106789047B true CN106789047B (zh) | 2019-09-10 |
Family
ID=58960762
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710121981.9A Active CN106789047B (zh) | 2017-03-03 | 2017-03-03 | 一种区块链身份系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106789047B (zh) |
Families Citing this family (38)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107330720B (zh) * | 2017-06-12 | 2021-01-26 | 中国联合网络通信集团有限公司 | 基于区块链的积分处理方法和系统 |
CN107331012A (zh) * | 2017-07-04 | 2017-11-07 | 济南浪潮高新科技投资发展有限公司 | 一种基于区块链的指静脉门禁系统 |
CN107547514A (zh) * | 2017-07-17 | 2018-01-05 | 招商银行股份有限公司 | 身份认证方法、系统及计算机可读存储介质 |
CN107493162A (zh) * | 2017-07-25 | 2017-12-19 | 中国联合网络通信集团有限公司 | 区块链节点的实现方法及装置 |
CN109413645B (zh) * | 2017-08-16 | 2022-08-19 | 华为技术有限公司 | 接入认证的方法和装置 |
CN107483181B (zh) * | 2017-08-28 | 2021-05-04 | 北京金股链科技有限公司 | 合同管理方法、装置及终端 |
CN107454110A (zh) * | 2017-09-26 | 2017-12-08 | 武汉斗鱼网络科技有限公司 | 一种数据校验方法及服务器 |
CN107786547A (zh) * | 2017-09-30 | 2018-03-09 | 厦门快商通信息技术有限公司 | 一种基于区块链的身份验证方法、装置及计算机可读存储介质 |
CN108154243B (zh) * | 2017-12-27 | 2021-12-07 | 上海唯链信息科技有限公司 | 一种基于区块链技术的汽车保养信息系统 |
CN108197262A (zh) * | 2017-12-30 | 2018-06-22 | 惠龙易通国际物流股份有限公司 | 一种交易记录存储方法、设备及计算机存储介质 |
CN108200174B (zh) * | 2018-01-04 | 2019-10-25 | 成都理工大学 | 基于区块链分布式的手机保护平台及其实现方法 |
CN108471510A (zh) * | 2018-01-29 | 2018-08-31 | 东莞理工学院 | 一种基于区块链的视频操作记录保护方法及系统 |
CN108259622B (zh) * | 2018-02-07 | 2020-12-22 | 福建南威软件有限公司 | 一种电子证照数据的跨区域共享方法 |
CN108537047B (zh) * | 2018-02-09 | 2024-06-18 | 北京京东尚科信息技术有限公司 | 基于区块链生成信息的方法及装置 |
CN108733351A (zh) * | 2018-05-21 | 2018-11-02 | 北京泛融科技有限公司 | 一种基于区块链的随机数生成方法 |
CN110633198A (zh) * | 2018-06-22 | 2019-12-31 | 中链科技有限公司 | 基于区块链的软件测试数据的存储方法及系统 |
CN110719172B (zh) * | 2018-07-13 | 2021-08-10 | 北京京东尚科信息技术有限公司 | 区块链系统中的签名方法、签名系统以及相关设备 |
CN108900531A (zh) * | 2018-07-31 | 2018-11-27 | 温州市图盛科技有限公司 | 一种适用于电力企业内部网络的数据保密工具 |
CN110839002B (zh) * | 2018-08-15 | 2022-05-17 | 华为云计算技术有限公司 | 云的开户、认证及访问方法和设备 |
CN109145540B (zh) * | 2018-08-24 | 2022-02-11 | 广州大学 | 一种基于区块链的智能终端身份认证方法及装置 |
CN109361738A (zh) * | 2018-09-25 | 2019-02-19 | 安徽灵图壹智能科技有限公司 | 一种基于区块链网络的身份认证系统及方法 |
CN109460211A (zh) * | 2018-09-29 | 2019-03-12 | 成都捕风数据科技有限公司 | 区块链网络中通过随机结果池达到可信内源随机实现方法 |
CN109447029B (zh) * | 2018-11-12 | 2022-09-02 | 公安部第三研究所 | 电子身份证照生成系统及方法 |
CN110865793B (zh) * | 2018-12-29 | 2023-05-12 | 北京版全家科技发展有限公司 | 一种基于区块链智能合约生成随机数的方法 |
CN109788465B (zh) * | 2019-01-22 | 2020-04-14 | 西安电子科技大学 | 用于区块链上基于射频识别的双向身份认证方法 |
CN110213263B (zh) * | 2019-05-30 | 2021-10-22 | 全链通有限公司 | 基于联盟区块链的身份验证方法、设备及存储介质 |
CN110245192A (zh) * | 2019-06-20 | 2019-09-17 | 京东方科技集团股份有限公司 | 身份信息查询方法和系统 |
CN110636040B (zh) * | 2019-08-05 | 2021-03-26 | 南京中诚区块链研究院有限公司 | 一种基于区块链通信的信息流认证系统及方法 |
CN110545273B (zh) * | 2019-08-29 | 2022-05-03 | 广东昭阳信息技术有限公司 | 一种基于区块链应用的资源分配方法及系统 |
CN111191157A (zh) * | 2019-12-24 | 2020-05-22 | 中国建设银行股份有限公司 | 课程资源输出方法、装置、电子设备及存储介质 |
CN111199036B (zh) * | 2020-01-06 | 2022-06-07 | 北京三快在线科技有限公司 | 身份验证方法、装置及系统 |
KR102094705B1 (ko) * | 2020-01-17 | 2020-03-30 | 주식회사 에프엔에스벨류 | 블록 체인을 기반으로 한 다중 노드 인증 방법 및 이를 위한 장치 |
CN111770089B (zh) * | 2020-06-29 | 2022-04-08 | 福建福链科技有限公司 | 一种用于区块链传感器的认证方法及区块链网络 |
CN112153151B (zh) * | 2020-09-28 | 2024-02-02 | 山西万佳印业有限公司 | 一种基于区块链的智能制造车间安全管理方法及系统 |
CN112749409B (zh) * | 2021-01-06 | 2024-03-08 | 上海零数众合信息科技有限公司 | 一种区块链中基于随机数的加密方法 |
CN112887098B (zh) * | 2021-01-08 | 2022-07-22 | 深圳前海用友力合科技服务有限公司 | 一种基于区块链的数据保全方法 |
CN113141348B (zh) * | 2021-03-17 | 2023-04-28 | 重庆扬成大数据科技有限公司 | 一种基于四网合一数据政务安全保障工作方法 |
CN113112219A (zh) * | 2021-03-22 | 2021-07-13 | 黄健 | 一种基于区块链的网络招聘平台构建方法和装置 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1633072A (zh) * | 2005-01-10 | 2005-06-29 | 虞淑瑶 | 一种支持弱口令的双服务器认证方案 |
US10346814B2 (en) * | 2014-06-04 | 2019-07-09 | MONI Limited | System and method for executing financial transactions |
CN105701372B (zh) * | 2015-12-18 | 2019-04-09 | 布比(北京)网络技术有限公司 | 一种区块链身份构建及验证方法 |
CN106375317A (zh) * | 2016-08-31 | 2017-02-01 | 北京明朝万达科技股份有限公司 | 一种基于区块链的大数据安全认证方法和系统 |
CN106357640B (zh) * | 2016-09-18 | 2019-11-08 | 江苏通付盾科技有限公司 | 基于区块链网络的身份认证方法、系统及服务器 |
-
2017
- 2017-03-03 CN CN201710121981.9A patent/CN106789047B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN106789047A (zh) | 2017-05-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106789047B (zh) | 一种区块链身份系统 | |
TWI749061B (zh) | 區塊鏈身份系統 | |
CN108270571B (zh) | 基于区块链的物联网身份认证系统及其方法 | |
CN109962784B (zh) | 一种基于数字信封多证书的数据加解密及恢复方法 | |
US10015154B2 (en) | Un-password: risk aware end-to-end multi-factor authentication via dynamic pairing | |
CN109728909A (zh) | 基于USBKey的身份认证方法和系统 | |
CN102026195B (zh) | 基于一次性口令的移动终端身份认证方法和系统 | |
US20060256961A1 (en) | System and method for authentication seed distribution | |
US20020166048A1 (en) | Use and generation of a session key in a secure socket layer connection | |
EP0661845B1 (en) | System and method for message authentication in a non-malleable public-key cryptosystem | |
CN110247881A (zh) | 基于可穿戴设备的身份认证方法及系统 | |
CN103684798B (zh) | 一种用于分布式用户服务间认证方法 | |
CN101819614A (zh) | 利用语音核验USBKey增强网络交易安全性的系统和方法 | |
JP6751545B1 (ja) | 電子署名システム及び耐タンパ装置 | |
CN106789032A (zh) | 服务器与移动设备间秘密共享的单一口令三方认证方法 | |
CN109936552A (zh) | 一种密钥认证方法、服务器及系统 | |
CN106059764B (zh) | 基于终止密钥导出函数的口令及指纹三方认证方法 | |
CN111416712B (zh) | 基于多个移动设备的量子保密通信身份认证系统及方法 | |
CN107104792B (zh) | 一种便携式移动口令管理系统及其管理方法 | |
CN109299618A (zh) | 基于量子密钥卡的抗量子计算云存储方法和系统 | |
CN116112242B (zh) | 面向电力调控系统的统一安全认证方法及系统 | |
JP2003152716A (ja) | 可変認証情報を用いる資格認証方法 | |
JP2001344214A (ja) | 端末の認証方法と暗号通信システム | |
Davaanaym et al. | A ping pong based one-time-passwords authentication system | |
EP3185504A1 (en) | Security management system for securing a communication between a remote server and an electronic device |
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 | ||
CB03 | Change of inventor or designer information |
Inventor after: Lu Yang Inventor before: Qian Dejun |
|
CB03 | Change of inventor or designer information | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20171009 Address after: 200040 Shanghai Jingan District Yuyuan Road 546 No. 4 Building 4 Building Shanghai only chain Mdt InfoTech Ltd Applicant after: Shanghai chain Mdt InfoTech Ltd Address before: 200131 Shanghai Fengxian District Shanghai free trade experimentation area, plus Road 39, 1, four, 39 parts Applicant before: Qian Dejun |
|
TA01 | Transfer of patent application right | ||
GR01 | Patent grant | ||
GR01 | Patent grant |