CN114172747A - 一种基于数字证书的群成员获得认证证书的方法和系统 - Google Patents
一种基于数字证书的群成员获得认证证书的方法和系统 Download PDFInfo
- Publication number
- CN114172747A CN114172747A CN202210124806.6A CN202210124806A CN114172747A CN 114172747 A CN114172747 A CN 114172747A CN 202210124806 A CN202210124806 A CN 202210124806A CN 114172747 A CN114172747 A CN 114172747A
- Authority
- CN
- China
- Prior art keywords
- certificate
- group
- group member
- information
- user
- 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
- 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/0823—Network architectures or network communication protocols for network security for authentication of entities using certificates
-
- 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
Abstract
本申请涉及一种基于数字证书的群成员获得认证证书的方法和系统,应用在分布式群管理场景下,基于私有云设备实现,该方法包括:获取群成员发送的群成员证书请求和签名信息,其中,签名信息是在群成员证书请求上,采用本设备保存的群成员用户CA证书的私钥签名得到;从云端获取群成员用户CA证书并提取其中的公钥,通过公钥校验签名信息以核验群成员身份;在签名信息校验正确的情况下,获取群CA证书以及群CA证书对应的私钥,通过私钥签发群成员证书请求得到群成员证书;获取群主设备的群主用户CA证书,将群主用户CA证书、群CA证书和群成员证书,组合为证书链文件发送至群成员设备。通过本申请,可以在分布式设备中实现高效安全的群管控。
Description
技术领域
本申请涉及信息安全领域,特别是涉及一种基于数字证书的群成员获得认证证书的方法和系统。
背景技术
在公有云中为所有用户建立账户,并按照用户意愿将多个账户放入一个共同的边界内实现群共享、群聊天等功能。在公有云基础上,群的生成、添加、删除都是在云内部实现,由于所有群都在一朵云中,一旦发生公有云泄露或者存在漏洞,则所有群都将面临数据安全问题,诸如数据拖库、三方漏洞等。
在分布式设备中,群的生成、添加、删除都是在群主自己的设备中实现,由自己的设备进行对外管控。与公有云不同,采用分布式方式,用户具备对自己设备的完全控制能力,在自己设备上可以随意创建群组用于资料文件管理以及管理与他人的分享边界等,安全性也随之提升。
但是,在分布式设备中,如何进行安全高效的群管理是本领域技术人员急需解决的技术问题。
发明内容
本申请实施例提供了一种基于数字证书的群成员获得认证证书的方法、系统、计算机设备和计算机可读存储介质,以至少解决相关技术中在分布式设备中无法安全高效的实现群管理的问题。
第一方面,本申请实施例提供了一种基于数字证书的群成员获得认证证书的方法,应用在分布式群管理场景下,基于私有云设备实现,且每个私有云设备的对应的用户CA证书在云端有且仅有一份预存,所述方法包括:
获取群成员发送的网络交互请求、群成员证书请求和签名信息,其中,所述签名信息是群成员设备采用本地保存的群成员用户CA证书的私钥,在所述群成员证书请求上写入的签名;
分别校验所述网络交互请求中的群ID、网络信息和节点信息,与所述群成员证书请求中的群ID、网络信息和节点信息是否一致,若是,
获取与存在云端的群成员用户CA证书并提取其中的公钥,通过所述公钥校验所述签名信息以核验群成员身份;
在所述签名信息校验正确的情况下,获取群CA 证书以及所述群CA证书对应的私钥,通过所述私钥签发所述群成员证书请求,得到群成员证书;
获取群主设备的群主用户CA证书,将所述群主用户CA证书、所述群CA证书和所述群成员证书,组合为证书链文件发送至所述群成员设备。
通过上述实施例,各群成员获得各自的证书链文件,通过该证书链文件,各群成员之间,可以在分布式群管理场景下,实现安全高效的点对点认证。另外,由于通过从云端的群成员用户CA证书,对群成员证书请求进行校验,而该校验流程在设备后台自动运行。区别于传统方法中借助运营商网络实现请求认证的方法,本申请采用上述方式,用户的应用端并不感知校验流程,也不需要用户手动执行验证操作,从而提升了用户的操作便捷性。
在其中一些实施例中,获取预先存在云端的群成员用户CA证书之后,所述方法还包括:
解析所述群成员用户CA证书并进行校验,在校验成功之后,提取其中的公钥,
其中,所述群成员用户CA证书的校验流程包括:
校验所述群成员用户CA证书是否在有效期内,以及,
校验所述群成员用户CA证书中的网络信息ID是否与群成员信息一致,以及,
校验所述群成员用户CA证书是否为根证书,
若三者都是,指示从所述云端获取的群成员用户CA证书校验成功。
在其中一些实施例中,证书链文件发送至所述群成员设备之后,所述方法还包括:
所述群成员设备对所述证书链文件进行校验,在校验成功的情况下,输出认证证书获得成功信息,
其中,所述证书链文件的校验流程包括:
校验所述群成员证书的群ID、网络信息和节点信息,是否与本地创建的所述群成员证书请求中的群ID、网络信息和节点信息一致,以及,
校验所述群成员证书中的公钥,是否与本地创建所述群成员证书请求时生成的私钥匹配,
若两者都是,指示所述证书链文件中的群成员证书校验成功。
在其中一些实施例中,证书链文件的校验流程还包括:
校验所述群CA证书中的群ID和网络信息是否与群主信息一致,以及,
校验所述群CA证书是否在时间有效期之内,以及,
校验所述群CA证书是否非根证书,
若三者都是,指示所述证书链文件中的群CA证书校验成功。
在其中一些实施例中,证书链文件校验流程还包括:
校验所述群主用户CA证书中的网络信息是否与群主信息一致,以及,
校验所述群主用户CA证书是否为根证书,以及,
判断本地是否具备群主用户CA证书,若是,校验所述群主用户CA证书与本地保存的群主用户CA证书是否一致,
若三者都是,指示所述证书链文件中的群主用户CA证书校验成功。
通过以上实施例,群成员设备对获得的证书链进行校验,从而保证了本地证书链文件的安全性和有效性,提升了方案整体安全性。
在其中一些实施例中,在核验群成员身份时,所述方法还包括:
群主设备在将所述群成员设备添加为群成员时,生成随机数并通过第三方通讯网络将其发送至所述群成员设备;
所述群主设备获取群成员设备发送的群成员证书请求,其中,所述群成员证书请求是采用对称密码加密得到的密文,所述对称密码通过预设算法,基于所述随机数生成;
所述群主设备基于所述随机数,通过所述预设算法在本地生成对称密码,
判断本地生成的对称密码,是否能够解密所述群成员证书请求的密文,若是,指示群成员身份核验成功。
通过上述实施例,提供了另外一种可选方案,群主设备也可以采用随机数字的方式对群成员身份进行核验。
在其中一些实施例中,在核验群成员身份时,所述方法还包括:
所述群主设备在获取到所述群成员证书请求的情况下,指示所述群成员设备的应用端采集用户的生物识别信息;
所述群主设备从所述群成员设备获取所述生物识别信息,通过将所述生物识别信息与数据库中预存的用户数据对比,以核验所述群成员身份。
通过上述实施例,还提供了另外一种可选方案,群主设备还可以生物特征识别的方式对群成员的身份进行核验。
在其中一些实施例中,所述群成员证书请求以所述群成员设备的网络信息、节点信息和群ID作为扩展信息。
在其中一些实施例中,所述群成员用户CA证书以所述群成员设备的应用信息、网络信息和集群信息作为扩展项;
所述群主用户CA证书以所述群主设备的应用信息、网络信息和集群信息作为扩展项。
在其中一些实施例中,所述群CA证书以所述群ID和所述群主设备的节点信息、网络信息作为扩展项。
在其中一些实施例中,所述应用信息是应用层为用户分配的全网唯一ID;
所述节点信息是设备接入在网络时对其配置的用于表示节点位置的节点ID;
所述网络信息是用于标识设备网络角色的全网唯一ID;
所述集群信息是所述私有云设备对应的集群号。
第二方面,本申请实施例提供了一种基于数字证书的群成员获得认证证书的系统,其特征在于,应用在分布式群管理场景下,基于私有云设备实现,且每个私有云设备对应的用户CA证书在云端有且仅有一份预存,所述系统包括:信息获取模块、证书校验模块、证书签发模块和证书下发模块,其中;
所述信息获取模块用于,获取群成员发送的网络交互请求、群成员证书请求和签名信息,其中,所述签名信息是群成员设备采用本地保存的群成员用户CA证书的私钥,在所述群成员证书请求上写入的签名;
所述证书校验模块用于,分别校验所述网络交互请求中的群ID、网络信息和节点信息,与所述群成员证书请求中的群ID、网络信息和节点信息是否一致,以及,获取预存在云端的用户CA证书并提取其中的公钥,通过所述公钥校验所述签名信息以核验群成员身份;
所述证书签发模块用于,在所述签名信息校验正确的情况下,获取群CA 证书以及所述群CA证书对应的私钥,通过所述私钥签发所述群成员证书请求,得到群成员证书;
所述证书下发模块用于,获取群主设备的群主用户CA证书,将所述群主用户CA证书、所述群CA证书和所述群成员证书,组合为证书链文件发送至所述群成员设备。
第三方面,本申请实施例提供了一种计算机设备,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述第一方面所述的一种基于数字证书的群成员获得认证证书的方法。
第四方面,本申请实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述第一方面所述的一种基于数字证书的群成员获得认证证书的方法。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1是根据本申请实施例的基于数字证书的群成员获得认证证书方法的应用环境示意图;
图2是根据本申请实施例的一种基于数字证书的群成员获得认证证书的方法的流程图;
图3是根据本申请实施例的另一种核验群成员身份的流程图;
图4是根据本申请实施例的一种具体交互场景的示意图;
图5是根据本申请实施例的一种基于数字证书的群成员获得认证证书的系统的结构框图;
图6是根据本申请实施例的电子设备的内部结构示意图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行描述和说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。基于本申请提供的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
显而易见地,下面描述中的附图仅仅是本申请的一些示例或实施例,对于本领域的普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图将本申请应用于其他类似情景。此外,还可以理解的是,虽然这种开发过程中所作出的努力可能是复杂并且冗长的,然而对于与本申请公开的内容相关的本领域的普通技术人员而言,在本申请揭露的技术内容的基础上进行的一些设计,制造或者生产等变更只是常规的技术手段,不应当理解为本申请公开的内容不充分。
在本申请中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域普通技术人员显式地和隐式地理解的是,本申请所描述的实施例在不冲突的情况下,可以与其它实施例相结合。
本申请提供的基于数字证书的群成员获得认证证书的方法可以应用在可信通信场景下,图1是根据本申请实施例的基于数字证书的群成员获得认证证书方法的应用环境示意图。
如图1所示,可以以用户CA证书为根证书,并通过根证书的逐级签发得到群CA证书、群成员证书;进一步的,可以将上述根证书、群CA证书和群成员证书,应用在分布式群管理场景中,从而可以在各用户的私有云设备10之间,进行高效且精准的群认证。另外,各用户可以通过应用端设备11向私有云设备10发送消息数据,经其转发后,可以在群组内进行数据共享和群聊天等。通过本申请实施例提供的一种基于数字证书的群成员获得认证证书的方法,可以安全高效的实现分布式群管理。需要说明的是,应用端11可以是智能手机或平板电脑等移动设备,也可以是PC设备;私有云设备10可以是用于可信通信场景定制的个人私有云设备或家庭私有云设备。
图2是根据本申请实施例的一种基于数字证书的群成员获得认证证书的方法的流程图,如图2所示,该流程包括如下步骤:
需要说明的是,该方法应用在分布式群管理场景下,基于私有云设备实现,且在满足前置条件下运行:即每个私有云设备对应的用户CA证书在云端有且仅有一份预存。
S201,获取群成员发送的网络交互请求、群成员证书请求和签名信息,其中,签名信息是群成员设备采用本地保存的群成员用户CA证书的私钥,在群成员证书请求上写入的签名;其中,
需要说明的是,本步骤及后续S202至S204步骤都在群主设备上执行。群主设备具备群成员证书的签发能力以及群CA证书的生成能力。进一步的,由于本申请技术方案针对于分布式群管理场景设计,因此,理论上任何一台分布式设备都可作为群主设备,群主设备相比较于群成员设备,只是多了一个控制群成员证书分发的功能/角色。
区别于集中式群管控,各设备/或用户只能通过唯一认证中心进行认证。在分布式群管理场景下,群的生成、添加、删除都是在群主自己的设备中实现,由自己的设备进行对外管控,从而可以充分高效的利用资源。在本实施例中,群管控方式基于数字证书来实现,可以完美匹配点对点认证的需求。
上述群成员证书请求是群成员需要加入群组,成为群成员的请求。进一步的,该群成员证书请求,以预先获取的群ID和群成员设备本身的网络信息和节点信息作为扩展项。当然,该群成员证书请求中还应包括一些生成证书所必要的信息,例如,公钥、有效期、和其他主体信息等,由于其并不影响本申请核心发明点,故对此不再赘述。另外需要说明的是,由于证书中额外添加了上述三项信息作为扩展项,对应的,证书的主体信息中应同样包含用于与扩展项匹配的辅助信息。
可以理解的是,本步骤的签名,其释义与生活常识中的字面意思接近,即将一串特定的标识符写在文件的某个位置,只是场景由实体变成了电子数据。对应的,由于群成员用户CA证书的私钥并未公开且只在本设备保存,因此,通过该私钥进行签名,可以在证书请求中标识自己的身份。
S202,分别校验网络交互请求中的群ID、网络信息和节点信息,与群成员证书请求中的群ID、网络信息和节点信息是否一致,若是,获取预存在云端的群成员用户CA证书并提取其中的公钥,通过公钥校验签名信息以核验群成员身份;
如前置条件所阐述,每个私有云设备在生成其用户CA证书时,会将该用户CA证书上传至云端做备份,云端中针对一台私有云设备,有且仅有一份用户CA证书保存,其中,上述云端是私有云设备发行方自建的云端,以该云端作为第三方认证中心。
需要说明的是,在分布式群群管控场景中,群主也是群内的群成员,任何群成员也都可以成为群主。当一个设备作为群主设备时,该设备对应的用户CA证书可称为群主用户CA证书,当一个设备仅为群成员设备时,该设备对应的用户CA证书可称为群成员用户CA证书。
对应的,本步骤中即可从云端获取上述群成员的用户CA证书,而群成员证书请求中,又包含了采用相同用户CA证书产生的签名信息,因此可以采用云端获取的证书中的公钥对签名信息进行校验,来核验证书请求发出者的身份是否可信。可以理解的是,由于上述公钥和私钥是一对公私钥对,因此,若群成员身份核验无误,则上述公钥和私钥是互相匹配的。
需要说明的是,结合本领域公知常识,本实施例中的所有的根证书以及采用根证书签发的其他证书,在将这些证书转发及上传时,都只是发送公钥和证书信息,私钥并不会一同被发送,且一直保存在生成私钥的设备中。
进一步的,若云端的群成员CA证书被篡改,群成员身份核验也是无法通过的。因为黑客不仅要破解云端程序,另外还需破解设备端与证书相关的程序。因此,与中心化群管控方式只需要破解云端即可获得数据的方式相比,难度要大很多,对应的,本申请的安全性也会有较大提升。
S203,在签名信息校验正确的情况下,获取群CA 证书以及群CA证书对应的私钥,通过私钥签发群成员证书请求,得到群成员证书;
签名信息校验正确,即指示群成员的身份可信,此后,群主设备即开始生成群成员证书:通过群CA证书的私钥签发群成员证书请求之后即得到群成员证书。
需要说明的是,上述群CA证书是群主设备中以本身的用户CA证书作为根证书,并结合群ID和其设备本身的网络信息和节点信息生成。进一步的,群CA证书中,以上述群ID、网络信息和节点信息作为扩展项,同时也包括公钥、有效期等其他信息,另外,与用户CA证书相同,群CA证书的主体信息中也同样做了改进处理,用于适配该扩展项。
S204,获取群主设备的群主用户CA证书,根据群主用户CA证书、群CA证书和群成员证书生成证书链文件,发送至群成员设备。
通过上述步骤S201至S204,各私有云设备可以从群主设备获得证书链文件,从而成为分布式管理群组中的成员。此后,群主中的成员之间可以基于上述证书链文件进行相互认证,以及进行文件分享、群聊互动等活动。从而通过本实施例,提升了分布式群管控的安全性和高效性。
在其中一些实施例中,除采用通过自建云端,基于用户CA证书核验群成员身份之外,本申请实施例中,还可以通过非设备发行方的第三方认证中心对群成员身份进行核验,图3是根据本申请实施例的另一种核验群成员身份的流程图,如图3所示,该流程包括如下步骤:
S301,群主设备在将群成员设备添加为群成员时,生成随机数并通过第三方认证中心将其发送至群成员设备;
可选的,可以通过运营商网络将随机数以短信形式发送至群成员设备的应用端;也可以通过其他即时通讯软件或邮件等形式将该随机数发送至群成员设备的应用端;进一步的,还可以由多个设备集成蜂窝网络,由群主应用端直接调用蜂窝网络信道发送到群成员的蜂窝网络上,即相当于在设备上集成短信收发能力。
S302,群主设备获取群成员设备发送的群成员证书请求,其中,群成员证书请求是采用对称密码加密得到的密文,该对称密码基于随机数通过预设算法生成;
步骤S301中,群主设备将随机数发送至群成员设备,群成员设备会将上述随机数通过预设算法生成一个对称密码,并采用该对称密码将群成员证书请求加密发送至群主设备,群主设备在接收数据时,得到的将是密文形式的群成员证书请求。
S303,群主设备基于随机数,通过预设算法在本地生成对称密码,判断本地生成的对称密码,是否能够解密群成员证书请求的密文,若是,指示群成员身份核验成功。
本步骤中,在群主设备一侧,同样采用与步骤S302相同的预设算法,并基于随机数生成对称密码。基于对称密码的特性,若群主设备能够使用本地生成的对称密码解密上述群成员证书请求的密文,且得到合法有效的证书请求,即指示群成员的身份可信。
通过上述步骤S301至S303,借助随机数进行群成员身份的核验。由于设备发行方无法直接控制该第三方认证中心,因此对于用户的可信度也将进一步提升。
在其中一些实施例中,还可以通过生物识别的方式核验用户身份,具体包括:
群主设备在获取到群成员证书请求的情况下,指示群成员设备的应用端采集用户的生物识别信息;
群主设备从群成员设备获取生物识别信息,通过将生物识别信息与数据库中预存的用户数据对比,以核验群成员身份。
其中,用户的生物信息可以是人脸信息、指纹信息和虹膜信息等具有唯一性的用户信息。
在其中一些实施例中,群成员设备生成群成员证书请求的过程包括:
首先,通过非对称算法生成第一公私钥对,并获取群ID(groupid)、以及本设备的网络信息(networkid)和节点信息(nodeid),以上述群ID、网络信息和节点信息结合为群成员证书扩展信息;
进一步的,基于上述公钥、证书扩展项和其他必须的主体信息生成上述群成员证书请求,将上述私钥加密保存在设备中。
在其中一些实施例中,群成员设备生成群成员用户CA证书的过程包括:
首先,通过非对称加密算法生成第二公私钥对,并获取本设备对应的应用信息(userid)、网络信息(networkid)和集群信息(clusterid),以上述用户信息、网络信息和集群信息组成群成员用户证书扩展信息;
进一步的,将第二公钥、用户证书扩展信息和其他必须的主体信息组合生成群成员用户CA证书请求,之后,通过第二私钥签发该群成员用户CA证书请求生成群成员用户CA证书。
需要说明的是,群主用户CA证书的生成方式,与群成员用户CA证书的生成方式相同,区别仅在于两者的ID值不同,因此不再赘述。
在其中一些实施例中,群主设备生成群CA证书的过程包括:
首先,通过非对称算法生成第三公私钥对,并生成群ID,以及获取本设备的网络信息(networkid)和节点信息(nodeid),以上述网络信息、节点信息和群ID组成群CA证书扩展项;
进一步的,将第三公钥、群证书扩展项和常规的主体信息组合生成群证书请求;
最后,获取本设备的用户CA证书,通过用户CA证书签发群证书请求生成群CA证书。
在其中一些实施例中,群主设备在从云端获取群成员用户CA证书之后,为了保证该群成员用户CA证书的合法性,还应对群成员用户CA证书进行校验,具体包括:
校验群成员用户CA证书是否在有效期内,以及,校验群成员用户CA证书中的网络ID是否群成员信息是否一致,以及,校验群成员用户CA证书是否为根证书;若上述三项校验的结果都为“是”,则指示从云端获取的群成员用户CA证书校验成功。
在其中一些实施例中,群成员设备在接收到证书链文件之后,为保证证书链文件的合法性,同样也需要对证书链文件进行校验,具体包括:
群成员证书校验:校验群成员证书,与本地创建的群成员证书请求中的群ID、网络信息和节点信息是否一致,以及,校验群成员证书中的公钥,是否与本地创建群成员证书请求生成的私钥匹配;若上述两项校验的结果都为“是”,指示群成员证书校验成功;
群CA证书校验:校验群CA证书中的群ID和网络信息是否与群主信息一致,以及,校验群CA证书是否在时间有效期之内,以及,校验群CA证书是否非根证书;若上述校验的结果都为“是”,指示群CA证书校验成功;
群主用户CA证书校验:校验群主用户CA证书中的网络信息是否与群主信息一致,以及,校验群主用户CA证书是否为根证书,以及,判断本地是否具备群主用户CA证书,若是,校验群主用户CA证书与本地保存的群主用户CA证书是否一致(即群成员设备已加入群主设备创建的其他群);若上述校验的结果都为“是”,指示证书链文件中的群主用户CA证书校验成功。
在其中一些实施例中,本申请中的应用信息是应用层为用户分配的全网唯一ID,节点信息是设备接入在网络时对其配置的用于表示节点位置的节点ID,网络信息是用于标识设备网络角色的全网唯一ID,集群信息是私有云设备对应的集群号,其中,用户的多个私有云设备可以组成集群,该集群的ID即上述集群号。在实际应用中,对于一个集群下的多个私有云设备,可以将其视为逻辑上的一个设备,能够达到扩容的目的。
具体的,图4是根据本申请实施例的一种具体交互场景的示意图,如图4所示,包括如下步骤:
步骤1:群成员设备应用端收到被添加入群的信息,群成员接受并点击确认相关加群处理,则应用端将该加群信息以及对象信息(包括群ID(groupid),群主的网络ID(networkid),群主节点ID(nodeid))发送给设备中的网络端;
步骤2:群成员设备中的网络端收到信息后通过groupid,以及本用户的networkid,和nodeid向设备中的安全模块查找特定的群成员证书信息;
步骤3:群成员设备中的安全模块根据上述群成员证书信息查找本地的数据,如果发现对应的群成员证书,进行后续证书交互处理;如果未查找到则继续下一步;
步骤4:群成员设备中的安全模块为该信息创建一对公私钥,将groupid、和本设备的networkid、nodeid作为证书请求的扩展信息插入到证书请求中,并在证书请求中放入刚创建的公钥,生成有效的证书请求;
步骤5:在得到上述证书请求后,安全模块获得本设备该群成员的用户CA证书对应的私钥,并用该私钥对步骤4生成的证书请求进行签名得到签名信息;
步骤6:将步骤4生成的证书请求和步骤5生成的签名信息按照预设格式,合并为一个封装数据,并将该数据返回给网络端;
步骤7:群成员网络端将该封装数据发送到群主设备,群主设备的网络端接收到该封装数据后,获取其中的群ID,群成员的网络ID和节点ID,并将上述信息和封装数据发送给群主设备中的安全模块;
步骤8:群主设备的安全模块首先解析封装数据,获得群成员证书请求和证书请求的签名信息;进一步的,再解析证书请求中的数据获取群ID、群成员的网络ID、群成员的节点ID,并与步骤7中网络端得到的信息进行比对是否一致,不一致返回错误,一致则继续;
步骤9:群主设备通过群成员的网络ID查找本地是否有该群成员的用户CA证书,如果查找到,则指示群主设备本地已保存安全可靠的群成员用户CA证书,直接跳到步骤15进行签发,如果未查找到则继续;
步骤10:群主设备安全模块返回网络端,本地没有查找到该成员的用户CA证书;
步骤11:群主设备的网络端将返回信息返回给应用端,应用端收到信息后,向公开的云端获取该群成员的用户CA证书(云端有且仅有存一个副本),云端如果不存在,返回不存在该信息,群主设备收到该信息后返回网络端签发群成员证书失败;如果存在则返回群成员用户CA证书给群主设备的应用端;
步骤12:群主设备的应用端将该群成员的用户CA证书发送到本地安全模块,并调用网络端重新签发;
步骤13:群主设备的安全模块查找到本地具备该成员的用户CA证书后,解析该用户CA证书,校验该用户CA证书的信息,校验失败,返回证书签发失败;
步骤14:群主设备的安全模块校验通过后,将群成员用户CA证书存入本地。需要说明的是,群主设备本地有且仅有一本该成员的用户CA证书,如果涉及群成员解绑设备等不再使用的情况,会进行数据同步处理;
步骤15:群主设备的安全模块提取该群成员用户CA证书的公钥信息,并用公钥校验封装数据中的签名信息是否正确,失败则返回签发群成员证书失败,成功则继续;
步骤16:群主设备的安全模块通过群ID,群主的网络ID,群主本设备的节点ID,在本地查找针对群ID生成的群CA证书,以及群CA证书对应的私钥;
步骤17:群主设备的安全模块利用群CA证书对应的私钥对群成员证书请求按照标准终端证书方式进行签发;
步骤18:群主设备的安全模块获取本设备的群主用户CA证书,并连同步骤16获取的群CA证书与步骤17签发的群成员证书组合成一本带有完整证书链的证书返回给网络端,网络端将证书链发送到群成员设备;
步骤19:群成员设备收到证书后,拆解证书链,获得签发好的群成员证书、群CA证书,群主的用户CA证书,首先校验证书链是否匹配,不匹配返回错误,而后对证书信息独立校验;
步骤20:校验完成后,将证书链保存到本地,群成员至此获得了在该群中的群成员证书;
本实施例还提供了一种基于数字证书的群成员获得认证证书的系统,该系统用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”、“单元”、“子单元”等可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图5是根据本申请实施例的一种基于数字证书的群成员获得认证证书的系统的结构框图,应用在分布式群管理场景下,基于私有云设备实现,且每个私有云设备的用户CA证书在云端有且仅有一份预存,该系统包括:信息获取模块50、证书校验模块51、证书签发模块52和证书下发模块53,其中;
信息获取模块50用于,获取群成员发送的群成员证书请求和签名信息,其中,签名信息是群成员设备采用本地保存的群成员用户CA证书的私钥,在群成员证书请求上写入的签名;
证书校验模块51用于,获取与存在云端的群成员用户CA证书并提取其中的公钥,通过公钥校验签名信息以核验群成员身份;
证书签发模块52用于,在签名信息校验正确的情况下,获取群CA 证书以及群CA证书对应的私钥,通过私钥签发群成员证书请求,得到群成员证书;
证书下发模块53用于,获取群主设备的群主用户CA证书,根据群主用户CA证书、群CA证书和群成员证书,生成证书链文件,并发送至群成员设备。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种基于数字证书的群成员获得认证证书的方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
在一个实施例中,图6是根据本申请实施例的电子设备的内部结构示意图,如图6所示,提供了一种电子设备,该电子设备可以是服务器,其内部结构图可以如图6所示。该电子设备包括通过内部总线连接的处理器、网络接口、内存储器和非易失性存储器,其中,该非易失性存储器存储有操作系统、计算机程序和数据库。处理器用于提供计算和控制能力,网络接口用于与外部的终端通过网络连接通信,内存储器用于为操作系统和计算机程序的运行提供环境,计算机程序被处理器执行时以实现一种基于数字证书的群成员获得认证证书的方法,数据库用于存储数据。
本领域技术人员可以理解,图6中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的电子设备的限定,具体的电子设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,该计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink) DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (14)
1.一种基于数字证书的群成员获得认证证书的方法,其特征在于,应用在分布式群管理场景下,基于私有云设备实现,且每个私有云设备对应的用户CA证书在云端有且仅有一份预存,所述方法包括:
获取群成员发送的网络交互请求、群成员证书请求和签名信息,其中,所述签名信息是群成员设备采用本地保存的群成员用户CA证书的私钥,在所述群成员证书请求上写入的签名;
分别校验所述网络交互请求中的群ID、网络信息和节点信息,与所述群成员证书请求中的群ID、网络信息和节点信息是否一致,若是,获取预存在云端的群成员用户CA证书并提取其中的公钥,通过所述公钥校验所述签名信息,以核验群成员身份;
在所述签名信息校验正确的情况下,获取群CA 证书以及所述群CA证书对应的私钥,通过所述私钥签发所述群成员证书请求,得到群成员证书;
获取群主设备的群主用户CA证书,并利用所述群主用户CA证书、所述群CA证书和所述群成员证书,生成证书链文件,并发送至所述群成员设备。
2.根据权利要求1所述的方法,其特征在于,获取预先存在云端的群成员用户CA证书之后,所述方法还包括:
解析所述群成员用户CA证书并进行校验,在校验成功之后,提取其中的公钥,
其中,所述群成员用户CA证书的校验流程包括:
校验所述群成员用户CA证书是否在有效期内,以及,
校验所述群成员用户CA证书中的网络信息是否与群成员信息一致,以及,
校验所述群成员用户CA证书是否为根证书,
若三者均是,指示从所述云端获取的群成员用户CA证书校验成功。
3.根据权利要求1所述的方法,其特征在于,证书链文件发送至所述群成员设备之后,所述方法还包括:
所述群成员设备对所述证书链文件进行校验,在校验成功的情况下,输出认证证书获得成功信息,
其中,所述证书链文件的校验流程包括:
校验所述群成员证书的群ID、网络信息和节点信息,是否与本地创建的所述群成员证书请求中的群ID、网络信息和节点信息一致,以及,
校验所述群成员证书中的公钥,是否与本地创建所述群成员证书请求时生成的私钥匹配,
若两者均是,指示所述证书链文件中的群成员证书校验成功。
4.根据权利要求3所述的方法,其特征在于,证书链文件的校验流程还包括:
校验所述群CA证书中的群ID和网络信息是否与群主信息一致,以及,
校验所述群CA证书是否在时间有效期之内,以及,
校验所述群CA证书是否非根证书,但具备签发下级证书的能力
若三者均是,指示所述证书链文件中的群CA证书校验成功。
5.根据权利要求4所述的方法,其特征在于,证书链文件校验流程还包括:
校验所述群主用户CA证书中的网络信息是否与群主信息一致,以及,
校验所述群主用户CA证书是否为根证书,以及,
判断本地是否具备群主用户CA证书,若是,校验所述群主用户CA证书与本地保存的群主用户CA证书是否一致,
若三者均是,指示所述证书链文件中的群主用户CA证书校验成功。
6.根据权利要求1所述的方法,其特征在于,在核验群成员身份时,所述方法还包括:
群主设备在将所述群成员设备添加为群成员时,生成随机数并通过第三方通讯网络将其发送至所述群成员设备;
所述群主设备获取群成员设备发送的群成员证书请求,其中,所述群成员证书请求是采用对称密码加密得到的密文,所述对称密码通过预设算法,基于所述随机数生成;
所述群主设备基于所述随机数,通过所述预设算法在本地生成对称密码,
判断本地生成的对称密码,是否能够解密所述群成员证书请求的密文,若是,指示群成员身份核验成功。
7.根据权利要求1所述的方法,其特征在于,在核验群成员身份时,所述方法还包括:
所述群主设备在获取到所述群成员证书请求的情况下,指示所述群成员设备的应用端采集用户的生物识别信息;
所述群主设备从所述群成员设备获取所述生物识别信息,通过将所述生物识别信息与数据库中预存的用户数据对比,以核验所述群成员身份。
8.根据权利要求1至7任一项所述的方法,其特征在于,所述群成员证书请求以所述群成员设备的网络信息、节点信息和群ID作为扩展信息。
9.根据权利要求1至7任一项所述的方法,其特征在于,
所述群成员用户CA证书以所述群成员设备的应用信息、网络信息和集群信息作为扩展项;
所述群主用户CA证书以所述群主设备的应用信息、网络信息和集群信息作为扩展项。
10.根据权利要求1至7任一项所述的方法,其特征在于,所述群CA证书以所述群ID和所述群主设备的节点信息、网络信息作为扩展项。
11.根据权利要求1至7中任意一项所述的方法,其特征在于,
所述应用信息是应用层为用户分配的全网唯一ID;
所述节点信息是设备接入在网络时对其配置的用于表示节点位置的节点ID;
所述网络信息是用于标识用户网络角色的全网唯一ID;
所述私有云设备的集群信息是所述私有云设备对应的集群ID。
12.一种基于数字证书的群成员获得认证证书的系统,其特征在于,应用在分布式群管理场景下,基于私有云设备实现,且每个私有云设备对应的用户CA证书在云端有且仅有一份预存,所述系统包括:信息获取模块、证书校验模块、证书签发模块和证书下发模块,其中;
所述信息获取模块用于,获取群成员发送的网络交互请求、群成员证书请求和签名信息,其中,所述签名信息是群成员设备采用本地保存的群成员用户CA证书的私钥,在所述群成员证书请求上写入的签名;
所述证书校验模块用于,分别校验所述网络交互请求中的群ID、网络信息和节点信息,与所述群成员证书请求中的群ID、网络信息和节点信息是否一致,以及,获取预存在云端的群成员用户CA证书并提取其中的公钥,通过所述公钥校验所述签名信息以核验群成员身份;
所述证书签发模块用于,在所述签名信息校验正确的情况下,获取群CA 证书以及所述群CA证书对应的私钥,通过所述私钥签发所述群成员证书请求,得到群成员证书;
所述证书下发模块用于,获取群主设备的群主用户CA证书,并利用所述群主用户CA证书、所述群CA证书和所述群成员证书,生成证书链文件,并发送至所述群成员设备。
13.一种计算机设备,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至11中任一项所述的方法。
14.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1至11中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210124806.6A CN114172747B (zh) | 2022-02-10 | 2022-02-10 | 一种基于数字证书的群成员获得认证证书的方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210124806.6A CN114172747B (zh) | 2022-02-10 | 2022-02-10 | 一种基于数字证书的群成员获得认证证书的方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114172747A true CN114172747A (zh) | 2022-03-11 |
CN114172747B CN114172747B (zh) | 2022-07-12 |
Family
ID=80489573
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210124806.6A Active CN114172747B (zh) | 2022-02-10 | 2022-02-10 | 一种基于数字证书的群成员获得认证证书的方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114172747B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115022090A (zh) * | 2022-08-04 | 2022-09-06 | 亿次网联(杭州)科技有限公司 | 一种数据分享方法、系统、电子设备和计算机存储介质 |
WO2023221891A1 (zh) * | 2022-05-16 | 2023-11-23 | 华为技术有限公司 | 安全通信的方法与装置 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101192928A (zh) * | 2006-12-01 | 2008-06-04 | 华为技术有限公司 | 移动自组织网络的认证方法、网络和系统 |
US20110087883A1 (en) * | 2009-05-05 | 2011-04-14 | Certicom Corp. | Self-signed implicit certificates |
CN104168114A (zh) * | 2014-08-07 | 2014-11-26 | 河海大学 | 一种分布式的基于(k,n)门限证书加密方法及系统 |
CN108696553A (zh) * | 2017-04-06 | 2018-10-23 | 北京算云联科科技有限公司 | 一种基于混合云的物联网控制系统 |
CN109992953A (zh) * | 2019-02-18 | 2019-07-09 | 深圳壹账通智能科技有限公司 | 区块链上的数字证书签发、验证方法、设备、系统及介质 |
CN110034935A (zh) * | 2019-04-04 | 2019-07-19 | 郑州师范学院 | 一种云计算跨域身份认证方法 |
CN110061846A (zh) * | 2019-03-14 | 2019-07-26 | 深圳壹账通智能科技有限公司 | 对区块链中用户节点进行身份认证的方法及相关设备 |
CN111884815A (zh) * | 2020-08-07 | 2020-11-03 | 上海格尔安全科技有限公司 | 一种基于区块链的分布式数字证书认证系统 |
CN112435024A (zh) * | 2020-11-17 | 2021-03-02 | 浙江大学 | 基于群签名和ca多方认证的联盟链跨链隐私保护方法 |
CN113256297A (zh) * | 2021-07-02 | 2021-08-13 | 腾讯科技(深圳)有限公司 | 基于区块链的数据处理方法、装置、设备及可读存储介质 |
CN113392413A (zh) * | 2021-05-26 | 2021-09-14 | 亿次网联(杭州)科技有限公司 | 一种数据安全存储方法、装置、系统和存储介质 |
-
2022
- 2022-02-10 CN CN202210124806.6A patent/CN114172747B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101192928A (zh) * | 2006-12-01 | 2008-06-04 | 华为技术有限公司 | 移动自组织网络的认证方法、网络和系统 |
US20110087883A1 (en) * | 2009-05-05 | 2011-04-14 | Certicom Corp. | Self-signed implicit certificates |
CN104168114A (zh) * | 2014-08-07 | 2014-11-26 | 河海大学 | 一种分布式的基于(k,n)门限证书加密方法及系统 |
CN108696553A (zh) * | 2017-04-06 | 2018-10-23 | 北京算云联科科技有限公司 | 一种基于混合云的物联网控制系统 |
CN109992953A (zh) * | 2019-02-18 | 2019-07-09 | 深圳壹账通智能科技有限公司 | 区块链上的数字证书签发、验证方法、设备、系统及介质 |
CN110061846A (zh) * | 2019-03-14 | 2019-07-26 | 深圳壹账通智能科技有限公司 | 对区块链中用户节点进行身份认证的方法及相关设备 |
CN110034935A (zh) * | 2019-04-04 | 2019-07-19 | 郑州师范学院 | 一种云计算跨域身份认证方法 |
CN111884815A (zh) * | 2020-08-07 | 2020-11-03 | 上海格尔安全科技有限公司 | 一种基于区块链的分布式数字证书认证系统 |
CN112435024A (zh) * | 2020-11-17 | 2021-03-02 | 浙江大学 | 基于群签名和ca多方认证的联盟链跨链隐私保护方法 |
CN113392413A (zh) * | 2021-05-26 | 2021-09-14 | 亿次网联(杭州)科技有限公司 | 一种数据安全存储方法、装置、系统和存储介质 |
CN113256297A (zh) * | 2021-07-02 | 2021-08-13 | 腾讯科技(深圳)有限公司 | 基于区块链的数据处理方法、装置、设备及可读存储介质 |
Non-Patent Citations (1)
Title |
---|
舒军等: "一种应用于Ad hoc网络的分布式CA系统", 《网络安全技术与应用》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023221891A1 (zh) * | 2022-05-16 | 2023-11-23 | 华为技术有限公司 | 安全通信的方法与装置 |
CN115022090A (zh) * | 2022-08-04 | 2022-09-06 | 亿次网联(杭州)科技有限公司 | 一种数据分享方法、系统、电子设备和计算机存储介质 |
CN115022090B (zh) * | 2022-08-04 | 2022-12-16 | 亿次网联(杭州)科技有限公司 | 一种数据分享方法、系统、电子设备和计算机存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN114172747B (zh) | 2022-07-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108768664B (zh) | 密钥管理方法、装置、系统、存储介质和计算机设备 | |
CN109951489B (zh) | 一种数字身份认证方法、设备、装置、系统及存储介质 | |
US11349674B2 (en) | Digital certificate management method and apparatus, computer device, and storage medium | |
CN109862041B (zh) | 一种数字身份认证方法、设备、装置、系统及存储介质 | |
US20200382326A1 (en) | Digital certificate verification method and apparatus, computer device, and storage medium | |
CN108064440B (zh) | 基于区块链的fido认证方法、装置及系统 | |
CN111949953B (zh) | 基于区块链的身份认证方法、系统、装置和计算机设备 | |
CN110581860B (zh) | 基于区块链的身份认证方法、装置、存储介质和设备 | |
CN109325342B (zh) | 身份信息管理方法、装置、计算机设备和存储介质 | |
US10630488B2 (en) | Method and apparatus for managing application identifier | |
CN114172747B (zh) | 一种基于数字证书的群成员获得认证证书的方法和系统 | |
CN112559993B (zh) | 身份认证方法、装置、系统及电子设备 | |
US11972637B2 (en) | Systems and methods for liveness-verified, biometric-based encryption | |
CN113067699B (zh) | 基于量子密钥的数据共享方法、装置和计算机设备 | |
CN111010367A (zh) | 数据存证方法、装置、计算机设备和存储介质 | |
CN112822255B (zh) | 基于区块链的邮件处理方法、邮件发送端、接收端及设备 | |
CN109347813B (zh) | 物联网设备登录方法、系统、计算机设备和存储介质 | |
CN114168923B (zh) | 一种基于数字证书的群ca证书生成方法和系统 | |
WO2021190197A1 (zh) | 生物支付设备的认证方法、装置、计算机设备和存储介质 | |
CN114168922B (zh) | 一种基于数字证书的用户ca证书生成方法和系统 | |
CN114500069A (zh) | 一种电子合同的存储及共享的方法与系统 | |
CN112446050B (zh) | 应用于区块链系统的业务数据处理方法及装置 | |
CN112583588B (zh) | 一种通信方法及装置、可读存储介质 | |
CN114168924B (zh) | 一种基于数字证书的群成员相互认证的方法和系统 | |
CN111628985A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |