CN113094686A - 认证方法及相关设备、计算机可读存储介质 - Google Patents
认证方法及相关设备、计算机可读存储介质 Download PDFInfo
- Publication number
- CN113094686A CN113094686A CN201911340207.2A CN201911340207A CN113094686A CN 113094686 A CN113094686 A CN 113094686A CN 201911340207 A CN201911340207 A CN 201911340207A CN 113094686 A CN113094686 A CN 113094686A
- Authority
- CN
- China
- Prior art keywords
- identity
- message queue
- equipment
- request
- public key
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
- G06F21/33—User authentication using certificates
Abstract
本申请实施例公开了一种认证方法及相关设备。其中,一种认证方法包括:第一设备向认证系统发送第二设备的身份标识和第二设备的消息队列的标识以使认证系统能查找到访问对象,以及第一设备向认证系统发送第一设备的公钥和私钥签名以使认证系统计算出第一设备的身份标识,并验证该计算出的第一设备的身份标识和第二设备的身份标识,以授权第一设备访问第二设备的权限。验证成功后,认证系统使用第一设备的公钥,将第二设备的消息队列中的数据内容加密后发送给第一设备,完成第一设备对第二设备的消息队列的安全访问。通过本申请的一种认证方法及相关设备,能够为设备提供一种安全且简便的认证方式。
Description
技术领域
本申请涉及通信网络领域,尤其涉及一种认证方法及相关设备、计算机可读存储介质。
背景技术
身份认证是指计算机及网络系统确认操作者身份的过程,身份认证技术是在计算机网络中确认操作者身份的过程而产生的有效解决方法。计算机网络世界中一切信息包括用户的身份信息都是用一组特定的数据来表示的,计算机只能识别用户的数字身份,所有对用户的授权也是针对用户数字身份的授权。如何保证以数字身份进行操作的操作者就是这个数字身份合法拥有者,也就是说保证操作者的物理身份与数字身份相对应,是一个很重要的问题。
在现有技术中,一种方式是采用公私钥进行加密解密认证,利用公钥对数据内容进行加密,然后利用私钥进行解密,公钥私钥需要双方保存,对于海量的IOT设备,就涉及到海量秘钥的安全存储。如果设备存在两两之间的数据同步例如车联网,安全存储的问题就更严重了。还有一种方式是采用证书认证,采用证书认证,需要CA系统进行颁发对应证书,IOT场景下需要认证海量设备,同时证书具有时效性,证书的时效和更新会影响设备的运行,对CA系统造成了严重的压力。
因此,如何提供一种安全且简便的认证方式,是本领域技术人员正在研究的问题。
发明内容
本申请实施例提供一种认证方法及相关设备、计算机可读存储介质,能够提供一种安全且简便的认证方式。
第一方面,本申请实施例提供了一种认证方法,可包括:接收第一设备发送的第一请求,所述第一请求用于请求访问第二设备的消息队列,所述第一请求包括第一设备的公钥、私钥签名、所述第二设备的身份标识以及所述第二设备的消息队列的标识;所述私钥签名包括用于计算所述第一设备的身份标识的信息;通过所述第一请求中的公钥解密所述私钥签名,根据所述私钥签名计算所述第一设备的身份标识;根据所述第一设备的身份标识,判断所述第一设备是否具有针对所述第二设备的访问权限;若具有针对所述第二设备的访问权限,则根据所述第二设备的身份标识以及所述第二设备的消息队列的标识,将所述第二设备的消息队列中的数据发送给所述第一设备。
实施第一方面所描述的方法,当第一设备想要访问第二设备的消息队列时,第一设备向认证系统发送第二设备的身份标识和第二设备的消息队列的标识以使认证系统能查找到访问对象,以及第一设备向认证系统发送第一设备的公钥和私钥签名以使认证系统计算出第一设备的身份标识,并验证该计算出的第一设备的身份标识和第二设备的身份标识,以授权第一设备访问第二设备的权限。授权成功后,认证系统将第二设备的消息队列中的数据内容发送给第一设备,完成第一设备对第二设备的消息队列的安全访问。通过本申请的认证方法,第一设备主动提供自身的公钥,无需认证系统查询下载公钥信息,然后认证系统通过获取的公钥等信息计算出第一设备的身份标识,通过该身份标识认证第一设备的身份,无需使用证书认证,提供了一种安全且简便的认证方式。
在一种可能的实现方式中,所述用于计算所述第一设备的身份标识的信息包括所述第一设备的消息队列的标识;所述根据所述私钥签名计算所述第一设备的身份标识包括:根据所述第一设备的公钥、所述第一设备的消息队列的标识以及所述第一设备的网络地址,计算出所述第一设备的身份标识。这种实现方式将第一设备的公钥信息直接发送到认证系统,无需认证系统对大量设备的公钥进行查询和存储,根据第一设备的身份标识来对设备进行认证,提供了一种安全且简便的认证方式。
在一种可能的实现方式中,所述根据所述第一设备的身份标识,判断所述第一设备是否具有针对所述第二设备的访问权限,包括:根据所述第一设备的身份标识,验证所述身份标识是否已经注册;在验证所述身份标识已经注册的情况下,根据所述第一设备的身份标识以及所述第二设备的身份标识,通过预设规则判断所述第一设备是否具有针对所述第二设备的访问权限。这种实现方式通过第一设备的身份标识以及第二设备的身份标识实现身份认证,无需使用具有时效性的证书,即可完成对设备之间的访问授权。
在一种可能的实现方式中,所述根据所述第二设备的身份标识以及所述第二设备的消息队列的标识,将所述第二设备的消息队列中的数据发送给所述第一设备,包括:根据所述第二设备的身份标识以及所述第二设备的消息队列的标识,将所述第二设备的消息队列中的数据使用所述第一设备的公钥加密,发送给所述第一设备。这种实现方式在授权成功后,将第二设备的消息队列中的数据使用第一设备的公钥加密再发送,提高了数据内容的安全性。
在一种可能的实现方式中,所述接收第一设备发送的第一请求之前,还包括:接收所述第二设备发送的第二请求,所述第二请求用于请求创建所述第二设备的消息队列;所述第二请求包括所述第二设备的公钥和私钥签名;根据所述第二设备的公钥解密所述私钥签名,以获取所述第二设备的消息队列的标识;根据所述第二设备的公钥、所述第二设备的消息队列的标识以及所述第二设备的网络地址,计算出所述第二设备的身份标识;验证所述计算出的第二设备的身份标识是否已经注册;若验证成功,创建所述第二设备的消息队列。这种实现方式描述了认证系统对第二设备进行身份验证,验证成功后创建第二设备的消息队列的过程,第二设备主动提供自身的公钥,无需认证系统查询下载公钥信息,然后认证系统通过获取的公钥等信息计算出第二设备的身份标识,通过该身份标识认证第二设备的身份,无需使用证书认证,提供了一种安全且简便的认证方式。
在一种可能的实现方式中,所述接收所述第二设备发送的第二请求之前,还包括:接收所述第二设备发送的第三请求,所述第三请求用于请求注册所述第二设备;所述第三请求包括所述第二设备的身份标识和所述第二设备的消息队列的标识;所述第二设备的身份标识为所述第二设备根据所述第二设备的公钥、所述第二设备的网络地址以及所述第二设备的消息队列的标识计算得到的所述第二设备的唯一标识;根据所述第二设备的身份标识和所述第二设备的消息队列的标识注册所述第二设备。这种实现方式描述了第二设备在认证系统中的注册过程,通过第二设备的身份标识和第二设备的消息队列的标识完成注册,为后续的安全验证提供前提。
第二方面,本申请实施例提供了一种认证装置,包括:接收单元,用于接收第一设备发送的第一请求,所述第一请求用于请求访问第二设备的消息队列,所述第一请求包括第一设备的公钥、私钥签名、所述第二设备的身份标识以及所述第二设备的消息队列的标识;所述私钥签名包括用于计算所述第一设备的身份标识的信息;计算单元,用于通过所述第一请求中的公钥解密所述私钥签名,根据所述私钥签名计算所述第一设备的身份标识;判断单元,用于根据所述第一设备的身份标识,判断所述第一设备是否具有针对所述第二设备的访问权限;发送单元,用于若具有针对所述第二设备的访问权限,则根据所述第二设备的身份标识以及所述第二设备的消息队列的标识,将所述第二设备的消息队列中的数据发送给所述第一设备。
在一种可能的实现方式中,所述用于计算所述第一设备的身份标识的信息包括所述第一设备的消息队列的标识;所述计算单元中根据所述私钥签名计算所述第一设备的身份标识,具体包括根据所述第一设备的公钥、所述第一设备的消息队列的标识以及所述第一设备的网络地址,计算出所述第一设备的身份标识。
在一种可能的实现方式中,所述判断单元,具体包括:验证单元,用于根据所述第一设备的身份标识,验证所述身份标识是否已经注册;所述判断单元,还用于在验证所述身份标识已经注册的情况下,根据所述第一设备的身份标识以及所述第二设备的身份标识,通过预设规则判断所述第一设备是否具有针对所述第二设备的访问权限。
在一种可能的实现方式中,所述发送单元,具体用于根据所述第二设备的身份标识以及所述第二设备的消息队列的标识,将所述第二设备的消息队列中的数据使用所述第一设备的公钥加密,发送给所述第一设备。
在一种可能的实现方式中,所述装置还包括:所述接收单元,还用于在接收第一设备发送的第一请求之前,接收所述第二设备发送的第二请求,所述第二请求用于请求创建所述第二设备的消息队列;所述第二请求包括所述第二设备的公钥和私钥签名;解密单元,用于根据所述第二设备的公钥解密所述私钥签名,以获取所述第二设备的消息队列的标识;所述计算单元,还用于根据所述第二设备的公钥、所述第二设备的消息队列的标识以及所述第二设备的网络地址,计算出所述第二设备的身份标识;所述验证单元,还用于验证所述计算出的第二设备的身份标识是否已经注册;创建单元,用于若验证成功,创建所述第二设备的消息队列。
在一种可能的实现方式中,所述装置还包括:所述接收单元,还用于在接收所述第二设备发送的第二请求之前,接收所述第二设备发送的第三请求,所述第三请求用于请求注册所述第二设备;所述第三请求包括所述第二设备的身份标识和所述第二设备的消息队列的标识;所述第二设备的身份标识为所述第二设备根据所述第二设备的公钥、所述第二设备的网络地址以及所述第二设备的消息队列的标识计算得到的所述第二设备的唯一标识;注册单元,用于根据所述第二设备的身份标识和所述第二设备的消息队列的标识注册所述第二设备。
第三方面,本申请实施例提供一种服务设备,该服务设备中包括处理器,处理器被配置为支持该服务设备实现第一方面提供的认证方法中相应的功能。该服务设备还可以包括存储器,存储器用于与处理器耦合,其保存该服务设备必要的程序指令和数据。该服务设备还可以包括通信接口,用于该服务设备与其他设备或通信网络通信。应当理解的是,本申请的第三方面与本申请的第一方面的技术方案一致,各方面及对应的可行实施方式所取得的有益效果相似,不再赘述。
第四方面,本申请实施例提供一种计算机存储介质,用于储存为上述第三方面或第四方面提供的一种认证装置中的处理器中所用的计算机软件指令,其包含用于执行上述方面所设计的程序。
第五方面,本申请实施例提供一种计算机程序产品,当所述计算机程序产品被计算机读取并执行时,上述第一方面任意一项所述的方法将被执行。
第六方面,本申请实施例公开了一种计算机程序,当所述计算机程序在计算机上执行时,将会使所述计算机实现上述第一方面任意一项所述的方法。
第七方面,本申请提供了一种芯片系统,该芯片系统包括处理器,用于支持网络设备实现上述第一方面或第二方面中所涉及的功能,例如,生成或处理上述认证方法中所涉及的信息。在一种可能的设计中,所述芯片系统还包括存储器,所述存储器,用于保存数据发送设备必要的程序指令和数据。该芯片系统,可以由芯片构成,也可以包含芯片和其他分立器件。
附图说明
为了更清楚地说明本申请实施例或背景技术中的技术方案,下面将对本申请实施例或背景技术中所需要使用的附图进行说明。
图1是本申请实施例提供的一种认证方法的现有技术的流程示意图;
图2是本申请实施例提供的一种认证方法的系统架构图;
图3是本申请实施例提供的一种认证方法的应用流程示意图;
图4是本申请实施例提供的又一种认证方法的应用流程示意图;
图5是本申请实施例提供的一种认证装置的结构示意图;
图6是本申请实施例提供的一种认证设备的结构示意图;
图7是本申请实施例提供的一种芯片的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例进行描述。
本申请的说明书和权利要求书及所述附图中的术语“第一”、“第二”、“第三”、“第四”、“第五”、“第六”、“第七”和“第八”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
在本说明书中使用的术语“部件”、“模块”、“系统”等用于表示计算机相关的实体、硬件、固件、硬件和软件的组合、软件、或执行中的软件。例如,部件可以是但不限于,在处理器上运行的进程、处理器、对象、可执行文件、执行线程、程序和/或计算机。通过图示,在计算设备上运行的应用和计算设备都可以是部件。一个或多个部件可驻留在进程和/或执行线程中,部件可位于一个计算机上和/或分布在2个或更多个计算机之间。此外,这些部件可从在上面存储有各种数据结构的各种计算机可读介质执行。部件可例如根据具有一个或多个数据分组(例如来自与本地系统、分布式系统和/或网络间的另一部件交互的二个部件的数据,例如通过信号与其它系统交互的互联网)的信号通过本地和/或远程进程来通信。
应当理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
首先,对本申请中的部分用语进行解释说明,以便于本领域技术人员理解。
(1)hash算法:又称哈希算法,杂凑算法,是一种从任意文件中创造小的数字的方法。与指纹一样,散列算法就是一种以较短的信息来保证文件唯一性的标志,这种标志与文件的每一个字节都相关,而且难以找到逆向规律。因此,当原有文件发生改变时,其标志值也会发生改变,从而告诉文件使用者当前的文件已经不是你所需求的文件。hash算法最重要的用途在于给证书、文档、密码等高安全系数的内容添加加密保护。在密码学中,hash算法的作用主要是用于消息摘要和签名,即对整个消息的完整性进行校验。
(2)密钥:有公开密钥(publickey,简称公钥)和私有密钥(privatekey,简称私钥)。公钥与私钥是一对,如果用公钥对数据进行加密,只有用对应的私钥才能解密;如果使用私钥对数据进行加密,只有公钥才能解密,俗称“不对称加密方式”。因为加密和解密使用的是两个不同的密钥,所以这种算法叫作非对称加密算法。公钥和私钥可以用于身份认证,鉴别用户的真伪;也可以用于加密信息。
(3)证书:证书是一种保存公钥的形式,数字证书就是经过CA认证过的公钥。数字证书则是由证书认证机构(CA)对证书申请者真实身份验证之后,用CA的根证书对申请人的一些基本信息以及申请人的公钥进行签名(相当于加盖发证书机构的公章)后形成的一个数字文件。CA完成签发证书后,会将证书发布在CA的证书库(目录服务器)中,任何人都可以查询和下载,因此数字证书和公钥一样是公开的。
(4)消息队列:在消息的传输过程中保存消息的容器。对消息队列有写权限的进程可以向消息队列中按照一定的规则添加新消息;对消息队列有读权限的进程则可以从消息队列中读走消息。消息队列是随内核持续的。
其次,为了便于理解本申请实施例,以下具体分析本申请实施例所需要解决的技术问题以及对应的应用场景。在设备进行安全认证的过程中,绝大多数都采用以下三种认证方案:
方案一,证书认证:如图1所示,IOT设备向CVM服务器申请IOT设备证书;CVM服务器接收到请求后,访问MySQL数据库校验请求合法性;确认当前请求合法之后,CVM服务器通过API的形式,向IOT平台发起获取IOT设备证书的请求;IOT平台返回当前IoT设备对应的证书,以及当前证书的Certificate ID;CVM服务器通过查找MySQL中预先创建的对应关系,根据产品序列号,为当前证书附加对应的Thing Name(产品属性)以及Policy(权限);CVM更新MySQL的关联关系表中的当前设备的所有关联信息以及证书状态标识符;最终CVM将IOT设备的CA根证书和设备证书返回给IOT设备。采用证书认证的方式,需要IOT平台进行颁发对应证书,IOT场景下需要认证海量设备,同时证书具有时效性,证书的时效和更新会影响设备的运行,也对IOT平台造成了严重的压力。
方案二,采用公私钥进行加密解密认证:公钥与私钥是一对,公钥是公开的,私钥只有设备自己有。如果用公钥对数据进行加密,只有用对应的私钥才能解密,如果使用私钥对数据进行加密,只有用公钥才能解密。采用公私钥进行加密解密认证的方式,在设备进行交互的过程中,公钥私钥需要双方保存,IOT海量设备,就涉及到海量秘钥的安全存储。如果设备存在两两之间的数据同步例如车联网,安全问题就更严重了。
方案三,SFS(Self-Certifying File System)设计一整套互联网共用的文件系统,全球的SFS系统都在同一个命名空间下。在SFS中,分享文件会变得十分简单,只需要提供文件名就行了。要实现一个全球共享的文件系统,最大的一个障碍莫过于如何让服务端为客户端提供认证。一个最简单的思路,所有服务器都生成一对公钥和私钥,然后让每个客户端用公开的公钥来验证服务器的安全。SFS使用一种新的解决思路,将公钥信息嵌入到文件名中,这种命名为“自验证文件名”。这样就没必要在文件系统内部实现密钥管理了。秘钥管理的功能就加入到用户对文件命名的规则中。用户可以根据自己需要选择加密方式。然而,SFS基于文件系统提出了一种认证的理念,并在IPFS的对SFS设计简单举了一个例子,但是没有给出具体的方法以及对应的算法。
因此,针对上述技术问题,本申请主要解决的问题为提供了一种安全且简便的设备认证方式,采用自认证的方式进行身份的认证,不涉及到海量秘钥的安全存储,不需要CA中心,客户端不需要下载及保存证书。减少在公有云场景下海量IOT设备接入需要申请、更新证书对系统以及设备的运行产生的资源耗损和流量压力。
图2示出了本申请实施例涉及的系统架构。下面结合本申请中提供的认证系统架构,以及基于认证系统架构提供的一种认证方法流程,针对上述方案中所出现的技术问题进行具体分析和解决。
参考附图2,图2是本申请实施例提供的一种认证系统架构示意图,该系统可以包括第一设备201、第二设备202和认证系统203。其中,认证系统203包括第一模块204和第二模块205,第一模块204和第二模块205可以部署在一个设备上,也可以部署在多个设备上,可以以虚拟机的形态部署,也可以以容器的形态进行部署,不限部署形态。在本系统中可以有一个或多个第一设备201以及一个或多个第二设备202。如附图2,其中,
第一设备201和第二设备202可以是服务器或终端设备,服务器可以包括但不限于后台服务器、组件服务器、数据处理服务器、存储服务器或计算服务器等,服务器可以通过互联网与多个设备进行通信。终端设备可以是通信终端、移动设备、用户终端、移动终端、无线通信设备、便携式终端、用户代理、用户装置、服务设备或用户设备(User Equipment,UE)等计算机网络中处于网络最外围的设备,主要用于数据的输入以及处理结果的输出或显示等,也可以是安装于或运行于上述任意一个设备上的软件客户端、应用程序等。例如,终端可以是移动电话、无绳电话、智能手表、可穿戴设备、平板设备、具备无线通信功能的手持设备、计算设备、车载通信模块、智能电表或连接到无线调制解调器的其它处理设备等。第一设备201和第三设备203用于发送和接收报文。
认证系统203为用于统一用户管理和身份认证的系统,认证系统为用户进行身份认证和鉴权。第一设备201和第二设备202在认证系统203上进行注册以及创建消息队列,其中,
第一模块204,具备交换路由以及创建消息队列的功能,是连接设备(例如第一设备201和第二设备202等)到云端的Hub通道,可以用于创建第一设备201和第二设备202的消息队列以及转发第一设备201和第二设备202发送的消息。其中,该每个第一设备201和第三设备203可以分配有唯一的互联网协议(英文:internet protocol,IP)地址,每个交换设备可以根据转发消息中的目的IP地址确定该消息的接收端服务器,以实现消息的转发。第二模块205,具备权限管理以及设备管理的功能,是云端的控制器,可以用于注册以及认证第一设备201和第二设备202的身份信息,并对设备之间进行授权管理,还可以实现消息的转发等功能。
上述认证系统架构可以应用于认证系统203面向公有云接入海量IOT设备(例如第一设备201、第二设备202等)的应用场景下。下面示例性的说明认证系统203创建第二设备202的消息队列以及对第一设备201访问第二设备202的消息队列的授权过程。首先,第二设备202发送第二设备202的身份标识以及消息队列的标识到第二模块205进行注册,然后第二设备202发送自身的公钥和私钥签名向第一模块204请求创建第二设备202的消息队列,第一模块204通过公钥解密私钥签名以获取私钥签名中的第二设备202的消息队列的标识,然后根据第二设备202的公钥和消息队列的标识生成第二设备的身份标识,发送到第二模块205以验证该身份标识是否已经注册成功,若验证成功,则第一模块204建立第二设备202的消息队列,完成认证系统203与第二设备202的连接。当第一设备201想要访问第二设备202的消息队列时,第一设备201向第一模块204发送第二设备202的身份标识和第二设备202的消息队列的标识以使认证系统203能查找到访问对象,以及第一设备201向第一模块204发送第一设备201的公钥和私钥签名以使第一模块204计算出第一设备201的身份标识,并通过第二模块205验证该计算出的第一设备201的身份标识和第二设备202的身份标识,若验证成功,第二模块205授权第一设备201访问第二设备202的权限。授权成功后,第一模块204使用第一设备201的公钥,将第二设备202的消息队列中的数据内容加密后发送给第一设备201,完成第一设备201对第二设备202的消息队列的安全访问。
可以理解的是,图2中的系统架构只是本申请实施例中的一种示例性的实施方式,本申请实施例中的系统包括但不仅限于以上系统架构。
参考附图3,图3是本申请实施例提供的在认证系统上一种身份认证方法流程的示意图。可应用于上述图2中的认证系统203,并结合图3对本申请实施例提供的一种认证方法进行描述。该方法可以包括以下步骤S301-步骤S305。
步骤S301:发送第一请求,以请求访问第二设备的消息队列中的数据。
具体地,第一设备向认证系统中的第一模块发送第一请求,该第一请求用于请求访问第二设备的消息队列。其中该第一请求包括第一设备的公钥、私钥签名、第二设备的身份标识以及第二设备的消息队列的标识。第二设备的身份标识和第二设备的消息队列的标识用于认证系统查找到被访问的第二设备和消息队列。私钥签名是利用私钥将数据内容进行加密而得到的签名,第一设备的私钥签名中的数据内容包括用于计算第一设备的身份标识的信息。该第一请求还可以包括第一设备的网络地址。
步骤S302:接收第一请求,根据第一请求中的私钥签名计算第一设备的身份标识。
具体地,认证系统中的第一模块接收第一请求,利用第一请求中第一设备的公钥解密私钥签名,获取私钥签名中的数据内容,以及数字签名,通过数字签名可以判断私钥签名里面的数据内容是否有篡改。认证系统中的第一模块使用第一设备的公钥解密私钥签名后,将里面的数据内容进行hash计算后对比数字签名,对比是否相同,若相同表示没有篡改,则获取私钥签名中用于计算第一设备的身份标识的信息。根据第一设备的公钥以及私钥签名中的用于计算第一设备的身份标识的信息,通过hash算法计算得到第一设备的身份标识。
在其中一种实施方式中,私钥签名中的用于计算第一设备的身份标识的信息可以为第一设备的消息队列的标识。认证系统中的第一模块使用第一设备的公钥解密该私钥签名,可以获取第一设备的消息队列的标识。然后根据第一设备的公钥、第一设备的消息队列的标识以及第一设备的网络地址,通过hash算法计算得到第一设备的身份标识。其中第一设备的网络地址的获取方式可以是通过第一请求中得到,也可以是根据链接查询到的源端的地址。
步骤S303:发送校验权限请求,以请求获取访问第二设备的权限,该校验权限请求包括计算出的第一设备的身份标识。
具体地,认证系统中的第一模块计算出第一设备的身份标识后,向认证系统中的第二模块发送校验权限请求,该校验权限请求用于请求获取访问第二设备的权限。其中,该校验权限请求包括上述计算出的第一设备的身份标识。该校验权限请求还可以包括第一请求中包含的第二设备的身份标识,若上述计算出的第一设备的身份标识验证成功后,根据该第二设备的身份标识,认证系统中的第二模块校验第二设备的身份标识,授权第一设备访问第二设备的权限。该校验权限请求还可以包括第一设备的网络地址。
步骤S304:根据该计算出的第一设备的身份标识,判断所述第一设备是否具有针对所述第二设备的访问权限。
具体地,认证系统中的第二模块接收到校验权限请求,根据该计算出的第一设备的身份标识,判断所述第一设备是否具有针对所述第二设备的访问权限。认证系统中的第二模块首先根据该校验权限请求中计算出的第一设备的身份标识,验证该身份标识是否已经注册。若该身份标识与第一设备注册时的第一设备的身份标识相同,则验证成功,则认证系统中的第二模块根据第一设备的身份标识和第二设备的身份标识,授权第一设备访问第二设备的权限。
在其中一种实施方式中,认证系统中的第二模块接收到校验权限请求后,首先根据该校验权限请求中计算出的第一设备的身份标识,验证该身份标识是否已经注册。验证成功后,然后根据预设规则验证第一设备是否具有访问第二设备的消息队列的权限。该预设规则可以是基于ACL规则或者IP规则,例如第二设备只允许特定网段的设备进行访问。若第一设备的网络地址不符合预设规则,则第一设备不具有所述第二设备的访问权限。其中第一设备的网络地址的获取方式可以是通过校验权限请求中得到,也可以是根据链接查询到的源端的地址。
步骤S305:若有,则发送第二设备的消息队列中的数据。
具体地,若认证系统中的第二模块判定第一设备具有针对第二设备的访问权限,则向认证系统中的第一模块发送该授权成功消息。认证系统中的第一模块接收到授权第一设备访问第二设备的消息队列的消息后,认证系统中的第一模块根据第二设备的身份标识以及第二设备的消息队列的标识,查找到第二设备以及第二设备的消息队列,由于第二设备已经注册且与认证系统建立了连接,则认证系统中的第一模块将第二设备的消息队列中的数据内容发送给第一设备,完成第一设备对第二设备的消息队列的访问。
在其中一种实施方式中,认证系统中的第二模块判定第一设备具有针对第二设备的访问权限后,认证系统中的第一模块使用第一请求中的第一设备的公钥,将第二设备的消息队列中的数据内容加密后发送给第一设备,完成第一设备对第二设备的消息队列的访问。第一设备收到后使用自己的私钥解密获取数据内容,提高了数据内容的安全性。
上述步骤S301-S305介绍了该认证系统对第一设备访问第二设备的过程进行身份认证,从而消息授权的操作。下面描述第二设备在认证系统中进行设备注册以及创建消息队列的过程。任何一个设备想要访问其他设备或被其他设备访问,都需要提前进行注册和创建消息队列的操作,在创建消息队列的过程中,第二设备主动提供公钥,利用公钥生成设备的身份标识,无需认证系统对第二设备的公钥进行保存。参考附图4,图4是本申请实施例提供的在认证系统上一种身份注册并认证,从而创建消息队列的方法流程的示意图。可应用于上述图2中的认证系统203,并结合图4对本申请实施例提供的一种认证方法进行描述。该方法可以包括以下步骤S401-步骤S406。
步骤S401:第二设备发送第三请求,以请求注册第二设备。
具体地,第二设备向认证系统中的第二模块发送第三请求,该第三请求用于请求注册第二设备。其中,第三请求包括第二设备的身份标识和第二设备的消息队列的标识。第二设备的消息队列的标识为用户自定义的消息队列的名称。第二设备的身份标识可以唯一的对应第二设备,第二设备的身份标识是根据第二设备的公钥、以及用于计算第二设备的身份标识的信息,通过hash算法计算得到的。举例来说,用于计算第二设备的身份标识的信息可以包括第二设备的网络地址、第二设备的消息队列的标识等等。根据第二设备的公钥、第二设备的网络地址以及第二设备的消息队列的标识,通过hash算法计算得到第二设备的身份标识,即第二设备的身份标识=hash(公钥,网络地址,消息队列的标识)。其中第二设备的网络地址可以是根据链接查询到的源端的地址,或者第三请求还可以包括第二设备的网络地址。
步骤S402:接收第二设备发送的第三请求,对第二设备进行注册。
具体的,认证系统中的第二模块接收到第二设备发送的第三请求后,根据第三请求中第二设备的身份标识和第二设备的消息队列的标识对第二设备进行注册。还可以根据第三请求中第二设备的身份标识和第二设备的消息队列的标识、以及第二设备的网络地址对第二设备进行注册,其中第二设备的网络地址的获取方式可以是通过第三请求发送到认证系统中的第二模块,也可以是根据链接查询到的源端的地址。
步骤S403:第二设备发送第二请求,以创建第二设备的消息队列。
具体的,第二设备向认证系统中的第一模块发送第二请求,该第二请求用于请求创建第二设备的消息队列。其中,第二请求包括第二设备的公钥和私钥签名;私钥签名是利用私钥将数据内容进行加密而得到的签名,第二设备的私钥签名中的数据内容包括用于计算第二设备的身份标识的信息。
步骤S404:接收第二请求,根据第二请求中的私钥签名计算第二设备的身份标识。
具体的,认证系统中的第一模块接收第二请求,使用第二请求中第二设备的公钥解密私钥签名,获取私钥签名里面的数据内容,以及数字签名,通过数字签名可以判断私钥签名里面的数据内容是否有篡改。认证系统中的第一模块使用第二设备的公钥解密私钥签名后,将里面的数据内容进行hash计算后对比数字签名,对比是否相同,若相同表示没有篡改,则获取私钥签名中用于计算第二设备的身份标识的信息。根据第二设备的公钥以及私钥签名中的用于计算第二设备的身份标识的信息,通过hash算法计算得到第二设备的身份标识。
在其中一种实施方式中,私钥签名中的用于计算第二设备的身份标识的信息可以为第二设备的消息队列的标识。认证系统中的第一模块使用第二设备的公钥解密该私钥签名,可以获取第二设备的消息队列的标识。然后根据第二设备的公钥、第二设备的消息队列的标识以及第二设备的网络地址,通过hash算法计算得到第二设备的身份标识。其中第二设备的网络地址的获取方式可以是通过第二请求中得到,也可以是根据链接查询到的源端的地址。
步骤S405:根据计算出的第二设备的身份标识,以验证第二设备是否注册。
具体的,认证系统中的第一模块计算出第二设备的身份标识后,将该计算出的身份标识发送到认证系统中的第二模块,认证系统中的第二模块根据该身份标识验证第二设备是否已经注册,若该身份标识与第二设备注册时的第二设备的身份标识相同,则验证成功。
步骤S406:若验证成功,创建第二设备的消息队列。
具体地,若认证系统中的第二模块根据上述计算出的身份标识,验证第二设备已经注册,则认证系统中的第一模块根据第二设备的身份标识和消息队列的标识,创建第二设备的消息队列。同时,认证系统中的第一模块向第二设备发送同意创建消息队列的消息,并启动第二设备的消息队列,第二设备可以在自己的消息队列中写入数据。
综上所述,认证系统用于对设备进行注册以及创建消息队列,以及对设备之间的消息进行授权和转发,实施本申请实施例,第二设备发送第二设备的身份标识以及消息队列的标识向认证系统进行注册,然后发送自身的公钥和私钥签名向认证系统请求创建第二设备的消息队列,认证系统通过公钥解密私钥签名以获取私钥签名中的第二设备的消息队列的标识,然后根据第二设备的公钥和消息队列的标识生成第二设备的身份标识,以验证该身份标识是否已经注册成功,若验证成功,则认证系统建立第二设备的消息队列,完成与第二设备的连接。当第一设备想要访问第二设备的消息队列时,第一设备向认证系统发送第二设备的身份标识和第二设备的消息队列的标识以使认证系统能查找到访问对象,以及第一设备向认证系统发送第一设备的公钥和私钥签名以使认证系统计算出第一设备的身份标识,并验证该计算出的第一设备的身份标识和第二设备的身份标识,以授权第一设备访问第二设备的权限。授权成功后,认证系统使用第一设备的公钥,将第二设备的消息队列中的数据内容加密后发送给第一设备,完成第一设备对第二设备的消息队列的安全访问。本申请的认证方法,通过设备自身的公钥而生成的身份标识进行注册和身份认证,设备通过自身的身份标识以及消息队列的标识可以接入该认证系统,再通过主动提供公钥以及私钥签名,计算出身份标识进行身份认证和鉴权,提供了一种安全且简便的认证方式。
上述详细阐述了本申请实施例的方法,下面提供了与本申请实施例的相关认证装置。认证装置可以是具备部分计算功能、可连接智能终端或各类终端设备的以便携式配件形式存在的电子设备。请参见附图5,图5是本申请实施例提供的一种认证装置示意图,认证装置50包括接收单元501,计算单元502,判断单元503和发送单元504,其中,
接收单元501,用于接收第一设备发送的第一请求,所述第一请求用于请求访问第二设备的消息队列,所述第一请求包括第一设备的公钥、私钥签名、所述第二设备的身份标识以及所述第二设备的消息队列的标识;所述私钥签名包括用于计算所述第一设备的身份标识的信息;
计算单元502,用于通过所述第一请求中的公钥解密所述私钥签名,根据所述私钥签名计算所述第一设备的身份标识;
判断单元503,用于根据所述第一设备的身份标识,判断所述第一设备是否具有针对所述第二设备的访问权限;
发送单元504,用于若具有针对所述第二设备的访问权限,则根据所述第二设备的身份标识以及所述第二设备的消息队列的标识,将所述第二设备的消息队列中的数据发送给所述第一设备。
在一种可能的实现方式中,所述用于计算所述第一设备的身份标识的信息包括所述第一设备的消息队列的标识;所述计算单元502中根据所述私钥签名计算所述第一设备的身份标识,具体包括根据所述第一设备的公钥、所述第一设备的消息队列的标识以及所述第一设备的网络地址,计算出所述第一设备的身份标识。
在一种可能的实现方式中,所述判断单元503,具体包括:验证单元505,用于根据所述第一设备的身份标识,验证所述身份标识是否已经注册;所述判断单元503,还用于在验证所述身份标识已经注册的情况下,根据所述第一设备的身份标识以及所述第二设备的身份标识,通过预设规则判断所述第一设备是否具有针对所述第二设备的访问权限。
在一种可能的实现方式中,所述发送单元504,具体用于根据所述第二设备的身份标识以及所述第二设备的消息队列的标识,将所述第二设备的消息队列中的数据使用所述第一设备的公钥加密,发送给所述第一设备。
在一种可能的实现方式中,所述装置还包括:所述接收单元501,还用于在接收第一设备发送的第一请求之前,接收所述第二设备发送的第二请求,所述第二请求用于请求创建所述第二设备的消息队列;所述第二请求包括所述第二设备的公钥和私钥签名;解密单元506,用于根据所述第二设备的公钥解密所述私钥签名,以获取所述第二设备的消息队列的标识;所述计算单元502,还用于根据所述第二设备的公钥、所述第二设备的消息队列的标识以及所述第二设备的网络地址,计算出所述第二设备的身份标识;所述验证单元506,还用于验证所述计算出的第二设备的身份标识是否已经注册;创建单元507,用于若验证成功,创建所述第二设备的消息队列。
在一种可能的实现方式中,所述装置还包括:所述接收单元501,还用于在接收所述第二设备发送的第二请求之前,接收所述第二设备发送的第三请求,所述第三请求用于请求注册所述第二设备;所述第三请求包括所述第二设备的身份标识和所述第二设备的消息队列的标识;所述第二设备的身份标识为所述第二设备根据所述第二设备的公钥、所述第二设备的网络地址以及所述第二设备的消息队列的标识计算得到的所述第二设备的唯一标识;注册单元508,用于根据所述第二设备的身份标识和所述第二设备的消息队列的标识注册所述第二设备。
需要说明的是,本申请实施例中所描述的认证装置50中各功能单元的功能可参见上述图3或图4中所述的方法实施例中的相关描述,此处不再赘述。
图6所示,为本申请的实施例提供的上述实施例中所涉及的电子设备的一种可能的硬件结构示意图。如图6所示,电子设备600可包括:一个或多个处理器601、一个或多个存储器602以及一个或多个通信接口603。这些部件可通过总线604或者其他方式连接,图6以通过总线连接为例。其中:
通信接口603可用于电子设备600与其他通信设备,例如其他电子设备,进行通信。具体的,通信接口603可以是有线接口。
存储器602可以和处理器601通过总线604或者输入输出端口耦合,存储器602也可以与处理器601集成在一起。存储器602用于存储各种软件程序和/或多组指令或者数据。具体的,存储器602可以是只读存储器(read-only memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,RAM)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(ElectricallyErasable Programmable Read-Only Memory,EEPROM)、只读光盘(Compact Disc Read-Only Memory,CD-ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。,存储器602可包括高速随机存取的存储器,并且也可包括非易失性存储器,例如一个或多个磁盘存储设备、闪存设备或其他非易失性固态存储设备。存储器602可以存储操作系统(下述简称系统),例如uCOS、VxWorks、RTLinux等嵌入式操作系统。存储器602还可以存储网络通信程序,该网络通信程序可用于与一个或多个附加设备,一个或多个用户设备,一个或多个电子设备进行通信。存储器可以是独立存在,通过总线与处理器相连接。存储器也可以和处理器集成在一起。
其中,所述存储器602用于存储执行以上方案的应用程序代码,并由处理器601来控制执行。所述处理器601用于执行所述存储器602中存储的应用程序代码。
处理器601可以是中央处理器单元,通用处理器,数字信号处理器,专用集成电路,现场可编程门阵列或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。所述处理器也可以是实现确定功能的组合,例如包含一个或多个微处理器组合,数字信号处理器和微处理器的组合等等。
本申请实施例中,处理器601可用于读取和执行计算机可读指令。具体的,处理器601可用于调用存储于存储器602中的程序,例如本申请的一个或多个实施例提供的图像检测方法在电子设备600侧的实现程序,并执行该程序包含的指令。
可以理解的,电子设备600可以是图2示出的认证方法的系统中的认证系统203所搭载的实体设备,可实施为一个基本服务集(BSS)、一个扩展服务集(ESS)、移动手机或电脑终端等等。其中,图6所示的电子设备600仅仅是本申请实施例的一种实现方式,实际应用中,电子设备600还可以包括更多或更少的部件,这里不作限制。关于电子设备600的具体实现可以参考前述图3或图4所示方法实施例中的相关描述,此处不再赘述。
参见图7,本申请实施例还提供的一种芯片700,包括一个或多个处理器701以及接口电路702。可选的,所述芯片700还可以包含总线703。其中:
处理器701可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器701中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器701可以是通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其它可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
接口电路702可以完成数据、指令或者信息的发送或者接收,处理器701可以利用接口电路702接收的数据、指令或者其它信息,进行加工,可以将加工完成信息通过接口电路702发送出去。
可选的,芯片还包括存储器,存储器可以包括只读存储器和随机存取存储器,并向处理器提供操作指令和数据。存储器的一部分还可以包括非易失性随机存取存储器(NVRAM)。
可选的,存储器存储了可执行软件模块或者数据结构,处理器可以通过调用存储器存储的操作指令(该操作指令可存储在操作系统中),执行相应的操作。
可选的,芯片可以使用在本申请实施例涉及的电子设备或网络设备中。可选的,接口电路702可用于输出处理器701的执行结果。关于本申请的一个或多个实施例提供的认证方法可参考前述各个实施例,这里不再赘述。
需要说明的,处理器701、接口电路702各自对应的功能既可以通过硬件设计实现,也可以通过软件设计来实现,还可以通过软硬件结合的方式来实现,这里不作限制。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可能可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置,可通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如上述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性或其它的形式。
上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
上述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以为个人计算机、服务端或者网络设备等,具体可以是计算机设备中的处理器)执行本申请各个实施例上述方法的全部或部分步骤。其中,而前述的存储介质可包括:U盘、移动硬盘、磁碟、光盘、只读存储器(Read-OnlyMemory,缩写:ROM)或者随机存取存储器(RandomAccessMemory,缩写:RAM)等各种可以存储程序代码的介质。
本申请实施例还公开了一种计算机程序产品,当所述计算机程序产品被计算机读取并执行时,上述图3或图4以及可能的实施方式所述的方法将被执行。
本申请实施例还公开了一种计算机程序,当所述计算机程序在计算机上执行时,将会使所述计算机实现上述图3或图4以及可能的实施方式所述的方法。
以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。
Claims (16)
1.一种认证方法,其特征在于,包括:
接收第一设备发送的第一请求,所述第一请求用于请求访问第二设备的消息队列,所述第一请求包括第一设备的公钥、私钥签名、所述第二设备的身份标识以及所述第二设备的消息队列的标识;所述私钥签名包括用于计算所述第一设备的身份标识的信息;
通过所述第一请求中的公钥解密所述私钥签名,根据所述私钥签名计算所述第一设备的身份标识;
根据所述第一设备的身份标识,判断所述第一设备是否具有针对所述第二设备的访问权限;
若具有针对所述第二设备的访问权限,则根据所述第二设备的身份标识以及所述第二设备的消息队列的标识,将所述第二设备的消息队列中的数据发送给所述第一设备。
2.根据权利要求1所述方法,其特征在于,所述用于计算所述第一设备的身份标识的信息包括所述第一设备的消息队列的标识;所述根据所述私钥签名计算所述第一设备的身份标识包括:
根据所述第一设备的公钥、所述第一设备的消息队列的标识以及所述第一设备的网络地址,计算出所述第一设备的身份标识。
3.根据权利要求1所述方法,其特征在于,所述根据所述第一设备的身份标识,判断所述第一设备是否具有针对所述第二设备的访问权限,包括:
根据所述第一设备的身份标识,验证所述身份标识是否已经注册;
在验证所述身份标识已经注册的情况下,根据所述第一设备的身份标识以及所述第二设备的身份标识,通过预设规则判断所述第一设备是否具有针对所述第二设备的访问权限。
4.根据权利要求1所述方法,其特征在于,所述根据所述第二设备的身份标识以及所述第二设备的消息队列的标识,将所述第二设备的消息队列中的数据发送给所述第一设备,包括:
根据所述第二设备的身份标识以及所述第二设备的消息队列的标识,将所述第二设备的消息队列中的数据使用所述第一设备的公钥加密,发送给所述第一设备。
5.根据权利要求1所述方法,其特征在于,所述接收第一设备发送的第一请求之前,还包括:
接收所述第二设备发送的第二请求,所述第二请求用于请求创建所述第二设备的消息队列;所述第二请求包括所述第二设备的公钥和私钥签名;
根据所述第二设备的公钥解密所述私钥签名,以获取所述第二设备的消息队列的标识;
根据所述第二设备的公钥、所述第二设备的消息队列的标识以及所述第二设备的网络地址,计算出所述第二设备的身份标识;
验证所述计算出的第二设备的身份标识是否已经注册;
若验证成功,创建所述第二设备的消息队列。
6.根据权利要求5所述方法,其特征在于,所述接收所述第二设备发送的第二请求之前,还包括:
接收所述第二设备发送的第三请求,所述第三请求用于请求注册所述第二设备;所述第三请求包括所述第二设备的身份标识和所述第二设备的消息队列的标识;所述第二设备的身份标识为所述第二设备根据所述第二设备的公钥、所述第二设备的网络地址以及所述第二设备的消息队列的标识计算得到的所述第二设备的唯一标识;
根据所述第二设备的身份标识和所述第二设备的消息队列的标识注册所述第二设备。
7.一种认证装置,其特征在于,包括:
接收单元,用于接收第一设备发送的第一请求,所述第一请求用于请求访问第二设备的消息队列,所述第一请求包括第一设备的公钥、私钥签名、所述第二设备的身份标识以及所述第二设备的消息队列的标识;所述私钥签名包括用于计算所述第一设备的身份标识的信息;
计算单元,用于通过所述第一请求中的公钥解密所述私钥签名,根据所述私钥签名计算所述第一设备的身份标识;
判断单元,用于根据所述第一设备的身份标识,判断所述第一设备是否具有针对所述第二设备的访问权限;
发送单元,用于若具有针对所述第二设备的访问权限,则根据所述第二设备的身份标识以及所述第二设备的消息队列的标识,将所述第二设备的消息队列中的数据发送给所述第一设备。
8.根据权利要求7所述装置,其特征在于,所述用于计算所述第一设备的身份标识的信息包括所述第一设备的消息队列的标识;所述计算单元中根据所述私钥签名计算所述第一设备的身份标识,具体包括根据所述第一设备的公钥、所述第一设备的消息队列的标识以及所述第一设备的网络地址,计算出所述第一设备的身份标识。
9.根据权利要求7所述装置,其特征在于,所述判断单元,具体包括:
验证单元,用于根据所述第一设备的身份标识,验证所述身份标识是否已经注册;
所述判断单元,还用于在验证所述身份标识已经注册的情况下,根据所述第一设备的身份标识以及所述第二设备的身份标识,通过预设规则判断所述第一设备是否具有针对所述第二设备的访问权限。
10.根据权利要求7所述装置,其特征在于,所述发送单元,具体用于根据所述第二设备的身份标识以及所述第二设备的消息队列的标识,将所述第二设备的消息队列中的数据使用所述第一设备的公钥加密,发送给所述第一设备。
11.根据权利要求7所述装置,其特征在于,所述装置还包括:
所述接收单元,还用于在接收第一设备发送的第一请求之前,接收所述第二设备发送的第二请求,所述第二请求用于请求创建所述第二设备的消息队列;所述第二请求包括所述第二设备的公钥和私钥签名;
解密单元,用于根据所述第二设备的公钥解密所述私钥签名,以获取所述第二设备的消息队列的标识;
所述计算单元,还用于根据所述第二设备的公钥、所述第二设备的消息队列的标识以及所述第二设备的网络地址,计算出所述第二设备的身份标识;
所述验证单元,还用于验证所述计算出的第二设备的身份标识是否已经注册;
创建单元,用于若验证成功,创建所述第二设备的消息队列。
12.根据权利要求11所述装置,其特征在于,所述装置还包括:
所述接收单元,还用于在接收所述第二设备发送的第二请求之前,接收所述第二设备发送的第三请求,所述第三请求用于请求注册所述第二设备;所述第三请求包括所述第二设备的身份标识和所述第二设备的消息队列的标识;所述第二设备的身份标识为所述第二设备根据所述第二设备的公钥、所述第二设备的网络地址以及所述第二设备的消息队列的标识计算得到的所述第二设备的唯一标识;
注册单元,用于根据所述第二设备的身份标识和所述第二设备的消息队列的标识注册所述第二设备。
13.一种服务设备,其特征在于,包括一个或多个处理器、存储器以及通信接口,其中,所述存储器用于存储信息发送程序代码,所述一个或多个处理器用于调用所述程序代码来执行权利要求1-6中任意一项所述的方法。
14.一种芯片,其特征在于,所述芯片包括至少一个处理器,存储器和接口电路,所述存储器、所述接口电路和所述至少一个处理器通过线路互联,所述至少一个存储器中存储有指令;所述指令被所述处理器执行时,权利要求1-6中任意一项所述的方法得以实现。
15.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,该计算机程序被处理器执行时实现上述权利要求1-6任意一项所述的方法。
16.一种计算机程序产品,其特征在于,当所述计算机程序产品被计算机读取并执行时,如权利要求1至6任意一项所述的方法将被执行。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911340207.2A CN113094686A (zh) | 2019-12-23 | 2019-12-23 | 认证方法及相关设备、计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911340207.2A CN113094686A (zh) | 2019-12-23 | 2019-12-23 | 认证方法及相关设备、计算机可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113094686A true CN113094686A (zh) | 2021-07-09 |
Family
ID=76663158
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911340207.2A Pending CN113094686A (zh) | 2019-12-23 | 2019-12-23 | 认证方法及相关设备、计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113094686A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113221188A (zh) * | 2021-04-25 | 2021-08-06 | 亿海蓝(北京)数据技术股份公司 | Ais数据存证方法、取证方法、装置和存储介质 |
CN115664852A (zh) * | 2022-12-14 | 2023-01-31 | 金钱猫科技股份有限公司 | 一种基于区块链技术的数据管理方法与系统 |
CN116431335A (zh) * | 2023-03-21 | 2023-07-14 | 哈尔滨工业大学 | 一种基于控制组的容器消息队列资源配额控制方法 |
CN116522323A (zh) * | 2023-03-17 | 2023-08-01 | 哈尔滨工业大学 | 一种基于命名空间的容器消息队列读写管理方法 |
-
2019
- 2019-12-23 CN CN201911340207.2A patent/CN113094686A/zh active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113221188A (zh) * | 2021-04-25 | 2021-08-06 | 亿海蓝(北京)数据技术股份公司 | Ais数据存证方法、取证方法、装置和存储介质 |
CN115664852A (zh) * | 2022-12-14 | 2023-01-31 | 金钱猫科技股份有限公司 | 一种基于区块链技术的数据管理方法与系统 |
CN116522323A (zh) * | 2023-03-17 | 2023-08-01 | 哈尔滨工业大学 | 一种基于命名空间的容器消息队列读写管理方法 |
CN116522323B (zh) * | 2023-03-17 | 2023-11-24 | 哈尔滨工业大学 | 一种基于命名空间的容器消息队列读写管理方法 |
CN116431335A (zh) * | 2023-03-21 | 2023-07-14 | 哈尔滨工业大学 | 一种基于控制组的容器消息队列资源配额控制方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107493273B (zh) | 身份认证方法、系统及计算机可读存储介质 | |
KR102018971B1 (ko) | 네트워크 액세스 디바이스가 무선 네트워크 액세스 포인트를 액세스하게 하기 위한 방법, 네트워크 액세스 디바이스, 애플리케이션 서버 및 비휘발성 컴퓨터 판독가능 저장 매체 | |
WO2018050081A1 (zh) | 设备身份认证的方法、装置、电子设备及存储介质 | |
JP6896940B2 (ja) | 第1のアプリケーションと第2のアプリケーションとの間の対称型相互認証方法 | |
US10972272B2 (en) | Providing high availability computing service by issuing a certificate | |
CN113094686A (zh) | 认证方法及相关设备、计算机可读存储介质 | |
CN108880821B (zh) | 一种数字证书的认证方法及设备 | |
CN109714176B (zh) | 口令认证方法、装置及存储介质 | |
CN111416807A (zh) | 数据获取方法、装置及存储介质 | |
JP2013516685A (ja) | コンピューターポリシーを施行するためのシステムおよび方法 | |
KR20160127167A (ko) | 다중 팩터 인증 기관 | |
CN109495268B (zh) | 一种二维码认证方法、装置及计算机可读存储介质 | |
CN110650478B (zh) | Ota方法、系统、设备、se模块、程序服务器和介质 | |
CN105409186A (zh) | 用于用户认证的系统及方法 | |
EP4231680A1 (en) | Identity authentication system, method and apparatus, device, and computer readable storage medium | |
JP2021145205A (ja) | 認証システム | |
CN111241492A (zh) | 一种产品多租户安全授信方法、系统及电子设备 | |
KR20200016506A (ko) | 익명 디지털 아이덴티티 수립 방법 | |
US20240064011A1 (en) | Identity authentication method and apparatus, device, chip, storage medium, and program | |
KR101256114B1 (ko) | 다수의 mac검증서버에 의한 메시지인증코드 검증 방법 및 시스템 | |
CN114065170A (zh) | 平台身份证书的获取方法、装置和服务器 | |
CN114390478A (zh) | 设备认证系统、方法及终端设备 | |
KR20170111809A (ko) | 대칭키 기반의 보안 토큰을 이용한 양방향 인증 방법 | |
CN110557365A (zh) | 一种基于消息认证码的安全单点登录方法 | |
CN113079506A (zh) | 网络安全认证方法、装置及设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
TA01 | Transfer of patent application right | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20220208 Address after: 550025 Huawei cloud data center, jiaoxinggong Road, Qianzhong Avenue, Gui'an New District, Guiyang City, Guizhou Province Applicant after: Huawei Cloud Computing Technology Co.,Ltd. Address before: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen Applicant before: HUAWEI TECHNOLOGIES Co.,Ltd. |
|
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |