CN108881261B - 一种容器环境下基于区块链技术的服务认证方法及系统 - Google Patents

一种容器环境下基于区块链技术的服务认证方法及系统 Download PDF

Info

Publication number
CN108881261B
CN108881261B CN201810707259.8A CN201810707259A CN108881261B CN 108881261 B CN108881261 B CN 108881261B CN 201810707259 A CN201810707259 A CN 201810707259A CN 108881261 B CN108881261 B CN 108881261B
Authority
CN
China
Prior art keywords
information
target
service
service information
container
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
CN201810707259.8A
Other languages
English (en)
Other versions
CN108881261A (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.)
Inspur Cloud Information Technology Co Ltd
Original Assignee
Inspur Cloud Information 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 Inspur Cloud Information Technology Co Ltd filed Critical Inspur Cloud Information Technology Co Ltd
Priority to CN201810707259.8A priority Critical patent/CN108881261B/zh
Publication of CN108881261A publication Critical patent/CN108881261A/zh
Application granted granted Critical
Publication of CN108881261B publication Critical patent/CN108881261B/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
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network 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
    • 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/0823Network architectures or network communication protocols for network security for authentication of entities using certificates

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Storage Device Security (AREA)

Abstract

本发明提供了一种容器环境下基于区块链技术的服务认证方法及系统,该方法包括:接收第一目标用户输入的待访问容器服务的服务信息和访问信息;利用访问信息对服务信息进行加密,形成加密服务信息,并将加密服务信息上传到区块链节点中;接收第二目标用户输入的访问请求;从区块链节点中查找与访问请求相对应的目标加密服务信息;确定访问请求中携带的目标用户信息是否与加密服务信息对应的目标访问信息相匹配;如果是,利用目标用户信息对加密服务信息进行解密,得到目标服务信息;将目标服务信息输出给第二目标用户,以使第二目标用户根据目标服务信息访问目标待访问容器服务。本方案减轻了认证节点的压力,同时提供了容器服务的可信环境。

Description

一种容器环境下基于区块链技术的服务认证方法及系统
技术领域
本发明涉及计算机技术领域,特别涉及一种容器环境下基于区块链技术的服务认证方法及系统。
背景技术
继虚拟化技术出现后,容器技术逐渐成为云计算领域越来越重要的力量。在访问容器服务时,一般需要通过认证服务器对用户身份进行认证,以保证访问安全性。
目前,认证服务器一般以中心化形式设置,访问每一个容器服务的每一个用户需首先向该中心化认证服务器发送验证信息,认证服务器对每一个验证信息进行验证,验证通过时允许发送该验证信息的用户访问对应的容器服务。
由于认证服务器需要对访问每一个容器服务的每一个验证信息进行验证,因此认证服务器的数据处理量较大,导致其认证效率较低。
发明内容
本发明实施例提供了一种容器环境下基于区块链技术的服务认证方法及系统,能提高认证效率。
第一方面,本发明实施例提供了一种容器环境下基于区块链技术的服务认证方法,包括:
接收第一目标用户输入的待访问容器服务的服务信息,以及所述待访问容器服务对应的访问信息;
利用所述访问信息对所述服务信息进行加密,形成加密服务信息,并将所述加密服务信息上传到区块链节点中;
接收第二目标用户输入的访问请求;
从所述区块链节点中查找与所述访问请求相对应的目标加密服务信息;
确定所述访问请求中携带的目标用户信息是否与所述加密服务信息对应的目标访问信息相匹配;
如果是,利用所述目标用户信息对所述加密服务信息进行解密,得到目标服务信息;
将所述目标服务信息输出给所述第二目标用户,以使所述第二目标用户根据所述目标服务信息访问目标待访问容器服务。
可选地,
所述确定所述访问请求中携带的目标用户信息是否与所述加密服务信息对应的目标访问信息相匹配,包括:
利用哈希算法分别计算所述目标用户信息与所述目标访问信息的摘要值;
根据以下计算公式,计算所述目标用户信息对应的第一摘要值与所述目标访问信息对应的第二摘要值之间的差异系数;
当所述差异系数小于预设阈值时,确定所述目标用户信息与所述目标访问信息相匹配;
Figure BDA0001715685840000021
其中,A表征所述差异系数,a表征所述摘要值对应的字符串长度,M表征所述第一摘要值对应的十进制ASCII值,N表征所述第二摘要值对应的十进制ASCII值;
可选地,
进一步包括:
获取至少一个用户分别输入的容器注册信息;
根据所述容器注册信息,为每一个所述用户分配对应的用户信息以及对应的认证证书;
则,在所述接收第一目标用户输入的待访问容器服务的服务信息之前,进一步包括:
获取所述第一目标用户输入的登录请求;
确定所述登录请求中携带的用户信息与认证证书是否相符,如果是,则执行所述接收第一目标用户输入的待访问容器服务的服务信息。
可选地,
在所述接收第二目标用户输入的访问请求之后,在所述从所述区块链节点中查找与所述访问请求相对应的目标加密服务信息之前,进一步包括:
确定所述访问请求中是否携带有与目标用户信息相符的目标认证证书,如果是,则执行所述从所述区块链节点中查找与所述访问请求相对应的目标加密服务信息。
可选地,
进一步包括:根据预设的检测周期,确定每一个容器服务的工作状态,并对所述工作状态进行存储;
在所述将所述目标服务信息输出给所述第二目标用户之后,进一步包括:
在当前检测周期确定所述目标待访问容器服务的当前状态;
从存储的各个所述工作状态中,确定所述当前检测周期对应的上一个检测周期的目标待访问容器服务的历史状态;
确定所述当前状态与所述历史状态是否相同,如果否,根据所述当前状态生成更新服务信息,并利用所述更新服务信息替换所述区块链节点中存储的所述目标加密服务信息。
第二方面,本发明实施例提供了一种容器环境下基于区块链技术的服务认证系统,包括:智能系统和区块链节点;其中,
所述智能系统包括:信息上传模块、验证模块和信息输出模块;
所述信息上传模块,用于接收第一目标用户输入的待访问容器服务的服务信息,以及所述待访问容器服务对应的访问信息;利用所述访问信息对所述服务信息进行加密,形成加密服务信息,并将所述加密服务信息上传到所述区块链节点中;
所述验证模块,用于接收第二目标用户输入的访问请求,从所述区块链节点中查找与所述访问请求相对应的目标加密服务信息,并确定所述访问请求中携带的目标用户信息是否与所述加密服务信息对应的目标访问信息相匹配,如果是,触发所述输出模块;
所述输出模块,用于利用所述目标用户信息对所述加密服务信息进行解密,得到目标服务信息,并将所述目标服务信息输出给所述第二目标用户,以使所述第二目标用户根据所述目标服务信息访问目标待访问容器服务;
所述区块链节点,用于对所述智能系统上传的加密服务信息进行存储。
可选地,
所述验证模块,用于利用哈希算法分别计算所述目标用户信息与所述目标访问信息的摘要值;根据以下计算公式,计算所述目标用户信息对应的第一摘要值与所述目标访问信息对应的第二摘要值之间的差异系数;当所述差异系数小于预设阈值时,确定所述目标用户信息与所述目标访问信息相匹配;
Figure BDA0001715685840000041
其中,A表征所述差异系数,a表征所述摘要值对应的字符串长度,M表征所述第一摘要值对应的十进制ASCII值,N表征所述第二摘要值对应的十进制ASCII值;
可选地,
所述目标用户信息包括:用户角色信息和用户所属组信息中的任意一个或两个。
可选地,
进一步包括:认证中心;其中,
所述认证中心,用于获取至少一个用户分别输入的容器注册信息;根据所述容器注册信息,为每一个所述用户分配对应的用户信息;
可选地,
所述智能系统和所述区块链节点部署在容器服务所属的主机中。
可选地,
所述认证中心,进一步用于为每一个所述用户提供与所述智能系统对应的认证证书;
所述信息上传模块,进一步用于获取第一目标用户输入的登录请求,确定所述登录请求中携带的用户信息和认证证书是否相符,如果是,则接收所述第一目标用户输入的服务信息和访问信息;
可选地,
所述验证模块,用于接收到第二目标用户输入的访问请求时,确定所述访问请求中是否携带有与目标用户信息相符的目标认证证书,如果是,则从所述区块链节点中查找与所述访问请求相对应的目标加密服务信息。
可选地,
所述智能系统进一步包括:更新模块;其中,
所述更新模块,用于根据预设的检测周期,确定每一个容器服务的工作状态,并对所述工作状态进行存储;在当前检测周期确定所述目标待访问容器服务的当前状态;从存储的各个所述工作状态中,确定所述当前检测周期对应的上一个检测周期的目标待访问容器服务的历史状态;确定所述当前状态与所述历史状态是否相同,如果否,根据所述当前状态生成更新服务信息,并利用所述更新服务信息替换所述区块链节点中存储的所述目标加密服务信息。
本发明实施例提供了一种容器环境下基于区块链技术的服务认证方法及系统,当接收到第一目标用户(服务创建者)输入的待访问容器服务的服务信息,以及待访问容器服务对应的访问信息,利用访问信息将服务信息进行加密,然后将形成的加密服务信息上传至区块链节点,利用区块链节点对加密服务信息进行存储。当接收到第二目标用户(服务访问者)输入的访问请求时,从区块链节点中查找与访问请求相对应的目标加密服务信息,并确定该第二目标用户的用户信息是否与目标加密服务信息对应的目标访问信息相匹配,如果是,则利用用户信息对目标加密服务信息进行解密,使得第二目标用户根据解密得到的目标服务信息对相应的目标待访问容器服务进行访问。由此通过区块链的高度安全性为容器内以及容器间的服务访问提供了可信的环境,而无需采用中心化的认证服务器对用户身份进行验证,从而提高了服务访问的认证效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一个实施例提供的一种容器环境下基于区块链技术的服务认证方法的流程图;
图2是本发明一个实施例提供的一种容器环境下基于区块链技术的服务认证系统的结构示意图;
图3是本发明另一个实施例提供的一种容器环境下基于区块链技术的服务认证系统的结构示意图;
图4是本发明又一个实施例提供的一种容器环境下基于区块链技术的服务认证系统的结构示意图;
图5是本发明另一个实施例提供的一种容器环境下基于区块链技术的服务认证方法的流程图;
图6是本发明一个实施例提供的一种容器环境下基于区块链技术的服务认证系统中的信息交互示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,本发明实施例提供了一种容器环境下基于区块链技术的服务认证方法,该方法可以包括以下步骤:
步骤101:接收第一目标用户输入的待访问容器服务的服务信息,以及所述待访问容器服务对应的访问信息;
步骤102:利用所述访问信息对所述服务信息进行加密,形成加密服务信息,并将所述加密服务信息上传到区块链节点中;
步骤103:接收第二目标用户输入的访问请求;
步骤104:从所述区块链节点中查找与所述访问请求相对应的目标加密服务信息;
步骤105:判断所述访问请求中携带的目标用户信息是否与所述加密服务信息对应的目标访问信息相匹配,如果是,执行步骤106,否则结束当前流程;
步骤106:利用所述目标用户信息对所述加密服务信息进行解密,得到目标服务信息;
步骤107:将所述目标服务信息输出给所述第二目标用户,以使所述第二目标用户根据所述目标服务信息访问目标待访问容器服务。
上述实施例中,当接收到第一目标用户(服务创建者)输入的待访问容器服务的服务信息,以及待访问容器服务对应的访问信息,利用访问信息将服务信息进行加密,然后将形成的加密服务信息上传至区块链节点,利用区块链节点对加密服务信息进行存储。当接收到第二目标用户(服务访问者)输入的访问请求时,从区块链节点中查找与访问请求相对应的目标加密服务信息,并确定该第二目标用户的用户信息是否与目标加密服务信息对应的目标访问信息相匹配,如果是,则利用用户信息对目标加密服务信息进行解密,使得第二目标用户根据解密得到的目标服务信息对相应的目标待访问容器服务进行访问。由此通过区块链的高度安全性为容器内以及容器间的服务访问提供了可信的环境,而无需采用中心化的认证服务器对用户身份进行验证,从而提高了服务访问的认证效率。
本发明一个实施例中,步骤105的具体实施方式,可以包括:
利用哈希算法分别计算所述目标用户信息与所述目标访问信息的摘要值;
根据以下计算公式,计算所述目标用户信息对应的第一摘要值与所述目标访问信息对应的第二摘要值之间的差异系数;
当所述差异系数小于预设阈值时,确定所述目标用户信息与所述目标访问信息相匹配;
Figure BDA0001715685840000081
其中,A表征所述差异系数,a表征所述摘要值对应的字符串长度,M表征所述第一摘要值对应的十进制ASCII值,N表征所述第二摘要值对应的十进制ASCII值。
用户信息主要包括用户角色信息和/或用户所属组信息。在这里以用户信息主要包括用户角色信息和用户所属组信息为例,则服务创建者在存储服务信息时,设定的访问信息主要为服务访问者所需要的角色以及其所属组信息,利用访问信息作为加密密钥对服务信息进行加密,例如,secretKey=md5(role,group)。另外,这些服务信息主要包括容器服务的访问地址和服务创建时间等。
当服务访问者想访问目标容器服务时,需向智能系统输入访问请求,该访问请求中携带有自身的目标用户信息,即其对应的目标用户角色信息和目标用户所属组信息。智能系统则利用哈希算法计算出目标用户角色信息和目标用户所属组信息对应的第一摘要值,并利用哈希算法计算该服务访问者想访问的目标容器服务对应的访问信息的第二摘要值。由于第一摘要值和第二摘要值均采用相同的哈希算法计算得到,则二者的字符串长度相等。由此可利用上述公式对第一摘要值和第二摘要值进行逐位比较,以确定二者的差异系数。例如,第一摘要值为“12345”,第二摘要值为“12346”,即可利用上述计算公式计算二者的差异系数,根据公式可计算出二者的差异系数为1,若预设阈值为2,则可确定该服务访问者的目标用户信息与其想访问的目标容器服务对应的目标访问信息相匹配。
本发明一个实施例中,该方法可以进一步包括:
获取至少一个用户分别输入的容器注册信息;
根据所述容器注册信息,为每一个所述用户分配对应的用户信息以及对应的认证证书;
则在步骤101之前,可以进一步包括:
获取所述第一目标用户输入的登录请求;
确定所述登录请求中携带的用户信息与认证证书是否相符,如果是,则执行所述接收第一目标用户输入的待访问容器服务的服务信息。
容器服务的用户在访问容器服务前,需先在容器中进行注册,然后用户根据在容器中注册得到的容器注册信息,向认证中心进行注册,认证中心则为根据该用户提供的容器注册信息,为该用户分配用户角色信息以及用户所属组信息等用户信息,例如{user,role,group…}等用户信息,以及该用户用于访问智能系统的认证证书。
由此,服务创建者在登录智能系统时,需向智能系统提供用户信息与认证证书,智能系统确定出该用户信息与认证证书相符时,才允许该服务创建者输入相应的服务信息。由此有利于进一步保证服务信息的数据安全性。
相应的,本发明一个实施例中,在步骤103之后,在步骤104之前,可以进一步包括:
确定所述访问请求中是否携带有与目标用户信息相符的目标认证证书,如果是,则执行所述从所述区块链节点中查找与所述访问请求相对应的目标加密服务信息。
当服务访问者访问智能系统时,智能系统也需验证该服务访问者的用户信息是否与其认证证书相符,当验证出该服务访问者的用户信息与其认证证书符合时,才从区块链节点中查找相应的目标加密服务信息。由此,通过认证证书对服务访问者进行身份验证,有利于进一步保证服务信息的安全性。
本发明一个实施例中,该方法可以进一步包括:根据预设的检测周期,确定每一个容器服务的工作状态,并对所述工作状态进行存储;
在步骤107之后,可以进一步包括:
在当前检测周期确定所述目标待访问容器服务的当前状态;
从存储的各个所述工作状态中,确定所述当前检测周期对应的上一个检测周期的目标待访问容器服务的历史状态;
确定所述当前状态与所述历史状态是否相同,如果否,根据所述当前状态生成更新服务信息,并利用所述更新服务信息替换所述区块链节点中存储的所述目标加密服务信息。
例如,在不同检测周期中,容器服务的状态发生了变化,例如容器服务所属容器崩溃,或者是容器服务所属节点漂移到其他主机中,则智能系统对区块链中的相应加密服务信息进行更新,以保证服务访问者能根据获取的服务信息,顺利的访问相应的容器服务,有利于提高用户体验。
如图2、图3所示,本发明实施例提供了一种容器环境下基于区块链技术的服务认证系统。系统实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。从硬件层面而言,如图2所示,为本发明实施例提供的容器环境下基于区块链技术的服务认证系统所在设备的一种硬件结构图,除了图2所示的处理器、内存、网络接口、以及非易失性存储器之外,实施例中装置所在的设备通常还可以包括其他硬件,如负责处理报文的转发芯片等等。以软件实现为例,如图3所示,作为一个逻辑意义上的装置,是通过其所在设备的CPU将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。本实施例提供的容器环境下基于区块链技术的服务认证系统,包括:智能系统301和区块链节点302;其中,
所述智能系统301包括:信息上传模块、验证模块和信息输出模块;
所述信息上传模块,用于接收第一目标用户输入的待访问容器服务的服务信息,以及所述待访问容器服务对应的访问信息;利用所述访问信息对所述服务信息进行加密,形成加密服务信息,并将所述加密服务信息上传到所述区块链节点302中;
所述验证模块,用于接收第二目标用户输入的访问请求,从所述区块链节点中302查找与所述访问请求相对应的目标加密服务信息,并确定所述访问请求中携带的目标用户信息是否与所述加密服务信息对应的目标访问信息相匹配,如果是,触发所述输出模块;
所述输出模块,用于利用所述目标用户信息对所述加密服务信息进行解密,得到目标服务信息,并将所述目标服务信息输出给所述第二目标用户,以使所述第二目标用户根据所述目标服务信息访问目标待访问容器服务;
所述区块链节点302,用于对所述智能系统上传的加密服务信息进行存储。
本发明一个实施例中,所述验证模块,用于利用哈希算法分别计算所述目标用户信息与所述目标访问信息的摘要值;根据以下计算公式,计算所述目标用户信息对应的第一摘要值与所述目标访问信息对应的第二摘要值之间的差异系数;当所述差异系数小于预设阈值时,确定所述目标用户信息与所述目标访问信息相匹配;
Figure BDA0001715685840000111
其中,A表征所述差异系数,a表征所述摘要值对应的字符串长度,M表征所述第一摘要值对应的十进制ASCII值,N表征所述第二摘要值对应的十进制ASCII值;
本发明一个实施例中,所述目标用户信息包括:用户角色信息和用户所属组信息中的任意一个或两个。
本发明一个实施例中,所述智能系统301和所述区块链节点302部署在容器服务所属的主机中。
如图4所示,本发明一个实施例中,该认证系统可以进一步包括:认证中心401;其中,
所述认证中心401,用于获取至少一个用户分别输入的容器注册信息;根据所述容器注册信息,为每一个所述用户分配对应的用户信息,以及与所述智能系统对应的认证证书;
所述信息上传模块,进一步用于获取第一目标用户输入的登录请求,确定所述登录请求中携带的用户信息和认证证书是否相符,如果是,则接收所述第一目标用户输入的服务信息和访问信息;
本发明一个实施例中,所述验证模块,用于接收到第二目标用户输入的访问请求时,确定所述访问请求中是否携带有与目标用户信息相符的目标认证证书,如果是,则从所述区块链节点中查找与所述访问请求相对应的目标加密服务信息。
本发明一个实施例中,所述智能系统可以进一步包括:更新模块;其中,
所述更新模块,用于根据预设的检测周期,确定每一个容器服务的工作状态,并对所述工作状态进行存储;在当前检测周期确定所述目标待访问容器服务的当前状态;从存储的各个所述工作状态中,确定所述当前检测周期对应的上一个检测周期的目标待访问容器服务的历史状态;确定所述当前状态与所述历史状态是否相同,如果否,根据所述当前状态生成更新服务信息,并利用所述更新服务信息替换所述区块链节点中存储的所述目标加密服务信息。
下面以图4提供的容器环境下基于区块链技术的服务认证系统为例,对本发明实施例提供的容器环境下基于区块链技术的服务认证方法进行详细说明,如图5所示,该方法可以包括以下步骤:
步骤501:在容器服务所属的主机中部署智能系统和区块链节点。
其中,部署的智能系统可以为智能agent系统,智能agent系统包括业务交互模块以及合约管理模块。其中业务交互模块主要具有对服务信息存储、服务信息查询和服务信息管理等功能,合约管理模块提供底层区块链的智能合约接口,其包括合约生成模块以及合约执行模块。合约生成模块负责将智能合约代码提交存储到区块链节点中。另外,当有添加或查询等操作时,合约执行模块负责运行智能合约代码。
步骤502:认证中心根据用户输入的容器注册信息,为用户分配角色和组信息,并为用户提供访问智能系统的认证证书。
步骤503:智能系统接收服务创建者输入的登录请求,确定登录请求中携带的用户信息与认证证书相符,允许服务创建者进行登录。
服务创建者同样作为用户,需先向认证中心注册,即向认证中心提供自己的详细信息,以获取自身的角色和组信息和访问智能系统的认证证书,认证证书中包含了用户的详细信息以及认证中心对其信息的校验,认证证书一般具有时效性。之后,服务创建者即可携带该认证证书访问容器服务主机中的智能系统。服务创建者访问智能系统时,智能系统验证出其认证证书与其用户信息相符即允许其登录。
步骤504:智能系统获取服务创建者输入的容器服务的服务信息,以及容器服务对应的访问信息。
步骤505:利用访问信息对服务信息进行加密,生成加密服务信息,并将加密服务信息上传到区块链节点中。
服务创建者使用服务访问者所需要的角色和所属组信息等访问信息生成加密密钥,通过加密密钥对容器服务的访问地址和服务创建时间等进行加密。然后,智能agent系统的合约执行模块负责将服务创建者请求的服务信息存储到区块链当中,具体地,服务创建者通过认证中心提供的认证证书,调用智能agent系统的合约执行模块,将加密服务信息存储到区块链节点当中。
步骤506:智能系统获取服务访问者输入的访问请求,所述访问请求中携带有目标用户信息和与目标用户信息相符的目标认证证书。
服务访问者向认证中心请求服务访问,提供用户自身的角色以及所属组信息,然后认证中心根据请求者信息提供访问智能agent系统的认证证书,之后服务访问者可使用该认证证书访问智能agent系统。
步骤507:利用智能系统从区块链节点中查找与访问请求相对应的目标加密服务信息。
智能agent系统的服务查询系统通过调用合约执行模块,查询区块链当中的服务信息,例如serviceInformation=getService(serviceName),以查找到与访问请求相对应的目标加密服务信息。
步骤508:根据服务访问者输入的目标用户信息对目标加密服务信息进行解密,得到目标服务信息。
服务访问者根据角色以及所属组信息生成解密密钥,例如secretKey=md5(role,group),使用该解密密钥对目标加密服务信息进行解密,即可得到目标服务信息。
步骤509:将目标服务信息输出给服务访问者,以使服务访问者根据目标服务信息请求目标容器服务。
以上用户、智能系统和区块链节点之间的信息交互过程可如图6所示。综上所述,本发明实施例提供了一种去中心化的安全认证方式,减轻了认证节点的压力,同时区块链提供了容器间以及容器内服务相互访问的高度可信环境。
本发明实施例提供了一种可读介质,包括执行指令,当存储控制器的处理器执行所述执行指令时,所述存储控制器执行本发明上述任一实施例提供的方法。
本发明实施例提供了一种存储控制器,包括:处理器、存储器和总线;所述存储器用于存储执行指令,所述处理器与所述存储器通过所述总线连接,当所述存储控制器运行时,所述处理器执行所述存储器存储的所述执行指令,以使所述存储控制器执行本发明上述任一实施例提供的方法。
综上所述,本发明以上各个实施例至少具有如下有益效果:
1、在本发明实施例中,上述实施例中,当接收到第一目标用户(服务创建者)输入的待访问容器服务的服务信息,以及待访问容器服务对应的访问信息,利用访问信息将服务信息进行加密,然后将形成的加密服务信息上传至区块链节点,利用区块链节点对加密服务信息进行存储。当接收到第二目标用户(服务访问者)输入的访问请求时,从区块链节点中查找与访问请求相对应的目标加密服务信息,并确定该第二目标用户的用户信息是否与目标加密服务信息对应的目标访问信息相匹配,如果是,则利用用户信息对目标加密服务信息进行解密,使得第二目标用户根据解密得到的目标服务信息对相应的目标待访问容器服务进行访问。由此通过区块链的高度安全性为容器内以及容器间的服务访问提供了可信的环境,而无需采用中心化的认证服务器对用户身份进行验证,从而提高了服务访问的认证效率。
2、在本发明实施例中,服务创建者在登录智能系统时,需向智能系统提供用户信息与认证证书,智能系统确定出该用户信息与认证证书相符时,才允许该服务创建者输入相应的服务信息。由此有利于进一步保证服务信息的数据安全性。
3、在本发明实施例中,当服务访问者访问智能系统时,智能系统也需验证该服务访问者的用户信息是否与其认证证书相符,当验证出该服务访问者的用户信息与其认证证书符合时,才从区块链节点中查找相应的目标加密服务信息。由此,通过认证证书对服务访问者进行身份验证,有利于进一步保证服务信息的安全性。
4、在本发明实施例中,当容器服务的状态发生变化时,智能系统对区块链中的相应加密服务信息进行更新,以保证服务访问者能根据获取的服务信息,顺利的访问相应的容器服务,有利于提高用户体验。
5、在本发明实施例提供了一种去中心化的安全认证方式,减轻了认证节点的压力,同时区块链提供了容器间以及容器内服务相互访问的高度可信环境。
需要说明的是,在本文中,诸如第一和第二之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个······”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同因素。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储在计算机可读取的存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质中。
最后需要说明的是:以上所述仅为本发明的较佳实施例,仅用于说明本发明的技术方案,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所做的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

Claims (2)

1.一种容器环境下基于区块链技术的服务认证方法,其特征在于,包括:
接收第一目标用户输入的待访问容器服务的服务信息,以及所述待访问容器服务对应的访问信息;
利用所述访问信息对所述服务信息进行加密,形成加密服务信息,并将所述加密服务信息上传到区块链节点中;
接收第二目标用户输入的访问请求;
从所述区块链节点中查找与所述访问请求相对应的目标加密服务信息;
确定所述访问请求中携带的目标用户信息是否与所述加密服务信息对应的目标访问信息相匹配;
如果是,利用所述目标用户信息对所述加密服务信息进行解密,得到目标服务信息;
将所述目标服务信息输出给所述第二目标用户,以使所述第二目标用户根据所述目标服务信息访问目标待访问容器服务;
所述确定所述访问请求中携带的目标用户信息是否与所述加密服务信息对应的目标访问信息相匹配,包括:
利用哈希算法分别计算所述目标用户信息与所述目标访问信息的摘要值;
根据以下计算公式,计算所述目标用户信息对应的第一摘要值与所述目标访问信息对应的第二摘要值之间的差异系数;
当所述差异系数小于预设阈值时,确定所述目标用户信息与所述目标访问信息相匹配;
Figure FDA0002692171340000011
其中,A表征所述差异系数,a表征所述摘要值对应的字符串长度,M表征所述第一摘要值对应的十进制ASCII值,N表征所述第二摘要值对应的十进制ASCII值;
进一步包括:
获取至少一个用户分别输入的容器注册信息;
根据所述容器注册信息,为每一个所述用户分配对应的用户信息以及对应的认证证书;
则,在所述接收第一目标用户输入的待访问容器服务的服务信息之前,进一步包括:
获取所述第一目标用户输入的登录请求;
确定所述登录请求中携带的用户信息与认证证书是否相符,如果是,则执行所述接收第一目标用户输入的待访问容器服务的服务信息;
在所述接收第二目标用户输入的访问请求之后,在所述从所述区块链节点中查找与所述访问请求相对应的目标加密服务信息之前,进一步包括:
确定所述访问请求中是否携带有与目标用户信息相符的目标认证证书,如果是,则执行所述从所述区块链节点中查找与所述访问请求相对应的目标加密服务信息;
进一步包括:根据预设的检测周期,确定每一个容器服务的工作状态,并对所述工作状态进行存储;
在所述将所述目标服务信息输出给所述第二目标用户之后,进一步包括:
在当前检测周期确定所述目标待访问容器服务的当前状态;
从存储的各个所述工作状态中,确定所述当前检测周期对应的上一个检测周期的目标待访问容器服务的历史状态;
确定所述当前状态与所述历史状态是否相同,如果否,根据所述当前状态生成更新服务信息,并利用所述更新服务信息替换所述区块链节点中存储的所述目标加密服务信息。
2.一种容器环境下基于区块链技术的服务认证系统,其特征在于,包括:智能系统和区块链节点;其中,
所述智能系统包括:信息上传模块、验证模块和信息输出模块;
所述信息上传模块,用于接收第一目标用户输入的待访问容器服务的服务信息,以及所述待访问容器服务对应的访问信息;利用所述访问信息对所述服务信息进行加密,形成加密服务信息,并将所述加密服务信息上传到所述区块链节点中;
所述验证模块,用于接收第二目标用户输入的访问请求,从所述区块链节点中查找与所述访问请求相对应的目标加密服务信息,并确定所述访问请求中携带的目标用户信息是否与所述加密服务信息对应的目标访问信息相匹配,如果是,触发所述输出模块;
所述输出模块,用于利用所述目标用户信息对所述加密服务信息进行解密,得到目标服务信息,并将所述目标服务信息输出给所述第二目标用户,以使所述第二目标用户根据所述目标服务信息访问目标待访问容器服务;
所述区块链节点,用于对所述智能系统上传的加密服务信息进行存储;
所述验证模块,用于利用哈希算法分别计算所述目标用户信息与所述目标访问信息的摘要值;根据以下计算公式,计算所述目标用户信息对应的第一摘要值与所述目标访问信息对应的第二摘要值之间的差异系数;当所述差异系数小于预设阈值时,确定所述目标用户信息与所述目标访问信息相匹配;
Figure FDA0002692171340000031
其中,A表征所述差异系数,a表征所述摘要值对应的字符串长度,M表征所述第一摘要值对应的十进制ASCII值,N表征所述第二摘要值对应的十进制ASCII值;
和/或,
所述目标用户信息包括:用户角色信息和用户所属组信息中的任意一个或两个;
进一步包括:认证中心;其中,
所述认证中心,用于获取至少一个用户分别输入的容器注册信息;根据所述容器注册信息,为每一个所述用户分配对应的用户信息;
和/或,
所述智能系统和所述区块链节点部署在容器服务所属的主机中;
所述认证中心,进一步用于为每一个所述用户提供与所述智能系统对应的认证证书;
所述信息上传模块,进一步用于获取第一目标用户输入的登录请求,确定所述登录请求中携带的用户信息和认证证书是否相符,如果是,则接收所述第一目标用户输入的服务信息和访问信息;
和/或,
所述验证模块,用于接收到第二目标用户输入的访问请求时,确定所述访问请求中是否携带有与目标用户信息相符的目标认证证书,如果是,则从所述区块链节点中查找与所述访问请求相对应的目标加密服务信息;
所述智能系统进一步包括:更新模块;其中,
所述更新模块,用于根据预设的检测周期,确定每一个容器服务的工作状态,并对所述工作状态进行存储;在当前检测周期确定所述目标待访问容器服务的当前状态;从存储的各个所述工作状态中,确定所述当前检测周期对应的上一个检测周期的目标待访问容器服务的历史状态;确定所述当前状态与所述历史状态是否相同,如果否,根据所述当前状态生成更新服务信息,并利用所述更新服务信息替换所述区块链节点中存储的所述目标加密服务信息。
CN201810707259.8A 2018-07-02 2018-07-02 一种容器环境下基于区块链技术的服务认证方法及系统 Active CN108881261B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810707259.8A CN108881261B (zh) 2018-07-02 2018-07-02 一种容器环境下基于区块链技术的服务认证方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810707259.8A CN108881261B (zh) 2018-07-02 2018-07-02 一种容器环境下基于区块链技术的服务认证方法及系统

Publications (2)

Publication Number Publication Date
CN108881261A CN108881261A (zh) 2018-11-23
CN108881261B true CN108881261B (zh) 2021-01-12

Family

ID=64298002

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810707259.8A Active CN108881261B (zh) 2018-07-02 2018-07-02 一种容器环境下基于区块链技术的服务认证方法及系统

Country Status (1)

Country Link
CN (1) CN108881261B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111639362B (zh) * 2019-02-19 2023-12-22 创新先进技术有限公司 区块链中实现隐私保护的方法、节点和存储介质
CN113449568A (zh) * 2020-03-27 2021-09-28 富泰华工业(深圳)有限公司 身份验证方法、计算机装置、可读存储介质
CN111427609A (zh) * 2020-04-01 2020-07-17 山东汇贸电子口岸有限公司 一种基于多节点服务器的应用自动升级方法
CN113468517A (zh) * 2021-09-02 2021-10-01 北京交研智慧科技有限公司 一种基于区块链的数据共享方法、系统及存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102457377A (zh) * 2011-08-08 2012-05-16 中标软件有限公司 基于角色的Web远程认证与授权方法及系统
CN103179086A (zh) * 2011-12-21 2013-06-26 中国电信股份有限公司 数据的远程存储处理方法与系统
CN107257340A (zh) * 2017-06-19 2017-10-17 阿里巴巴集团控股有限公司 一种认证方法、基于区块链的认证数据处理方法及设备
CN107426223A (zh) * 2017-08-01 2017-12-01 中国工商银行股份有限公司 云文档加密及解密方法、加密及解密装置、以及处理系统
CN107786639A (zh) * 2017-09-28 2018-03-09 山东鲁能智能技术有限公司 一种基于区块链技术的电动汽车车联网系统及其工作方法
CN107968763A (zh) * 2016-10-19 2018-04-27 巽风数位工程有限公司 群组档案管理系统与方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102457377A (zh) * 2011-08-08 2012-05-16 中标软件有限公司 基于角色的Web远程认证与授权方法及系统
CN103179086A (zh) * 2011-12-21 2013-06-26 中国电信股份有限公司 数据的远程存储处理方法与系统
CN107968763A (zh) * 2016-10-19 2018-04-27 巽风数位工程有限公司 群组档案管理系统与方法
CN107257340A (zh) * 2017-06-19 2017-10-17 阿里巴巴集团控股有限公司 一种认证方法、基于区块链的认证数据处理方法及设备
CN107426223A (zh) * 2017-08-01 2017-12-01 中国工商银行股份有限公司 云文档加密及解密方法、加密及解密装置、以及处理系统
CN107786639A (zh) * 2017-09-28 2018-03-09 山东鲁能智能技术有限公司 一种基于区块链技术的电动汽车车联网系统及其工作方法

Also Published As

Publication number Publication date
CN108881261A (zh) 2018-11-23

Similar Documents

Publication Publication Date Title
US11127097B2 (en) Method, apparatus, and system for copyright rights defense detection
US10747721B2 (en) File management/search system and file management/search method based on block chain
CN109074434B (zh) 使用分布式散列表和点对点分布式分类账验证数字资产所有权的方法和系统
CN108369622B (zh) 软件容器注册表服务
CN108881261B (zh) 一种容器环境下基于区块链技术的服务认证方法及系统
US10911538B2 (en) Management of and persistent storage for nodes in a secure cluster
US12052259B2 (en) Blockchain folding
CN109284603B (zh) 一种配置数据处理方法、装置及存储介质
CN112671720B (zh) 一种云平台资源访问控制的令牌构造方法、装置及设备
CN109344631B (zh) 区块链的数据修改及区块验证方法、装置、设备和介质
EP3314521A2 (en) Cryptographic assurances of data integrity for data crossing trust boundaries
WO2020238238A1 (zh) 创建区块链账户及验证区块链交易的方法及装置
US10783277B2 (en) Blockchain-type data storage
US8977857B1 (en) System and method for granting access to protected information on a remote server
WO2018017609A1 (en) Secure asynchronous communications
US11108545B2 (en) Creating a blockchain account and verifying blockchain transactions
WO2018233051A1 (zh) 数据发布方法、装置、服务器和存储介质
CN111597567B (zh) 数据处理方法、装置、节点设备及存储介质
JP7053031B2 (ja) 情報処理システム、情報処理装置、情報処理方法及び情報処理プログラム
CN104182418A (zh) 节点元数据获取方法与装置
US20210203650A1 (en) Data message authentication based on a random number
CN109284622B (zh) 联系人信息处理方法、装置及存储介质
US20230169045A1 (en) System and method for information storage using blockchain databases combined with pointer databases
KR102511570B1 (ko) 블록체인 네트워크의 프로세스를 처리하기 위한 방법, 장치, 시스템, 방법 및 컴퓨터 판독가능 저장매체
US11592999B2 (en) Information processing system and information processing method

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: Zhang Jianwei

Inventor after: Zhang Hui

Inventor after: Yu Shenke

Inventor after: Li Ke

Inventor after: Ning Sheng

Inventor before: Zhang Jianwei

Inventor before: Yu Shenke

Inventor before: Li Ke

Inventor before: Ning Sheng

CB03 Change of inventor or designer information
TA01 Transfer of patent application right

Effective date of registration: 20201217

Address after: 250100 No. 1036 Tidal Road, Jinan High-tech Zone, Shandong Province, S01 Building, Tidal Science Park

Applicant after: Inspur cloud Information Technology Co., Ltd

Address before: Floor S06, Inspur Science Park, No. 1036, Inspur Road, hi tech Zone, Jinan City, Shandong Province

Applicant before: SHANDONG HUIMAO ELECTRONIC PORT Co.,Ltd.

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant