发布信息

用于低吞吐量通信链路的系统的相互认证协议及用于执行该协议的设备的制作方法

作者:admin      2022-07-29 19:39:51     325



电子通信装置的制造及其应用技术用于低吞吐量通信链路的系统的相互认证协议及用于执行该协议的设备1.相关专利申请的交叉引用2.本专利申请要求于2019年12月17日提交的标题为“mutual authentication protocol for systems with low-throughput communication links and devices for performing the same”的美国临时专利申请62/948,951的优先权,该美国临时专利申请的全部公开内容据此以引用方式并入本文。技术领域3.本文所论的实施方案通常涉及设备之间的认证。更具体地,一些实施方案涉及设备之间使用公钥/私钥技术的相互认证协议。背景技术:4.相互认证是指双方基本上同时对彼此进行认证的过程。通常使用相互认证,使得双方可以参与信任很重要的一些活动,诸如两个计算设备(例如,移动设备、可穿戴设备、汽车、控制器、基础设施设备、医疗设备、服务器和服务器客户端等)之间的通信或协作。用于执行相互认证的特定规则通常在相互认证协议中进行定义。在计算方面,此类协议通常定义了:在各方试图进行认证时,各方所交换的消息和数据的特定数量和质量。本公开的发明人认识到,在计算中,通过低吞吐量连接进行相互认证可能很困难,诸如有时在物联网(iot)网络边缘中发现的连接类型,其中,作为非限制性示例,在网络之间进行移动数据的传输、处理、路由、过滤、转化或存储之前,各方进行相互认证。附图说明5.虽然本公开以特别指出并清楚地要求保护具体实施方案的权利要求书作为结尾,但当结合附图阅读时,通过以下描述可更容易地确定本公开范围内的实施方案的各种特征和优点,在附图中:6.图1示出了根据一个或多个实施方案的认证协议。7.图2示出了根据一个或多个实施方案的过程。8.图3示出了根据一个或多个实施方案的过程。9.图4示出了根据一个或多个实施方案的计算系统。10.图5示出了根据一个或多个实施方案的加密信息。11.图6示出了根据一个或多个实施方案的证书。12.图7示出了根据一个或多个实施方案的相互认证系统。13.图8示出了用于认证协议的握手消息传送阶段的示例性消息传送。14.图9示出了根据一个或多个实施方案的主题的一方面。具体实施方式15.在以下具体实施方式中,参考了形成本公开的一部分的附图,并且在附图中以举例的方式示出了可实施本公开的实施方案的特定示例。充分详细地描述了这些实施方案,以使本领域的普通技术人员能够实践本公开。然而,可利用本文已启用的其他实施方案,并且可在不脱离本公开内容的范围的情况下进行结构、材料和流程变化。16.本文所呈现的图示并不旨在为任何特定方法、系统、装置或结构的实际视图,而仅仅是用于描述本公开的实施方案的理想化表示。在一些情况下,为了读者的方便,各附图中的类似结构或部件可保持相同或相似的编号;然而,编号的相似性并不一定意味着结构或部件在尺寸、组成、构造或任何其他属性方面是相同的。17.以下描述可包括示例以帮助本领域的普通技术人员实践本发明所公开的实施方案。使用术语“示例性的”、“通过示例”和“例如”是指相关描述是说明性的,虽然本公开的范围旨在涵盖示例和法律等同形式,但使用此类术语并不旨在将实施方案或本公开的范围限制于指定的部件、步骤、特征或功能等。18.应当容易理解,如本文一般所述并且在附图中示出的实施方案的部件可以许多种不同的配置来布置和设计。因此,对各种实施方案的以下描述并不旨在限制本公开的范围,而是仅代表各种实施方案。虽然这些实施方案的各个方面可在附图中给出,但附图未必按比例绘制,除非特别指明。19.此外,所示出和描述的特定实施方式仅为示例,并且不应理解为实施本公开的唯一方式,除非本文另外指明。元件、电路和功能可以框图形式示出,以便不以不必要的细节模糊本公开。相反,所示出和描述的特定实施方式仅为示例性的,并且不应理解为实施本公开的唯一方式,除非本文另外指明。另外,块定义和各个块之间逻辑的分区是特定实施方式的示例。对于本领域的普通技术人员将显而易见的是,本公开可通过许多其他分区解决方案来实践。在大多数情况下,已省略了关于定时考虑等的细节,其中此类细节不需要获得本公开的完全理解,并且在相关领域的普通技术人员的能力范围内。20.本领域的普通技术人员将会理解,可使用多种不同技术和技法中的任何一者来表示信息和信号。为了清晰地呈现和描述,一些附图可以将信号示出为单个信号。本领域的普通技术人员应当理解,信号可表示信号总线,其中总线可具有多种位宽度,并且本公开可在包括单个数据信号在内的任意数量的数据信号上实现。21.结合本文所公开的实施方案描述的各种示例性逻辑块、模块和电路可以用被设计用来执行本文所描述的功能的通用处理器、专用处理器、数字信号处理器(dsp)、集成电路(ic)、专用集成电路(asic)、现场可编程门阵列(fpga)或其他可编程逻辑设备、分立栅极或晶体管逻辑、分立硬件部件或其任意组合来实现或执行。通用处理器(在本文还可称为“主机处理器”或简称“主机”)可以是微处理器,但在替代方案中,该处理器可以是任何常规的处理器、控制器、微控制器或状态机。处理器也可实现为计算装置的组合,诸如dsp和微处理器的组合、多个微处理器、与dsp核结合的一个或多个微处理器或任何其他此类配置。在通用计算机被配置为执行与本公开的实施方案相关的计算指令(例如,软件代码)时,包括处理器的通用计算机被认为是专用计算机。22.实施方案可根据被描绘为流程图、流程示意图、结构图或框图的过程来描述。虽然流程图可将操作动作描述为连续过程,但是这些动作中的许多动作可按照另一序列、并行地或基本上同时地执行。此外,可重新安排动作的顺序。本文中的过程可对应于方法、线程、函数、过程(procedure)、子例程、子程序、其他结构或它们的组合。此外,本文公开的方法可通过硬件、软件或这两者来实施。如果在软件中实现,这些函数可作为一个或多个指令或代码存储或传输到计算机可读介质上。计算机可读介质包括计算机存储介质和通信介质两者,该通信介质包括有利于将计算机程序从一个位置传递到另一个位置的任何介质。23.使用诸如“第一”、“第二”等名称对本文的元件的任何引用不限制那些元件的数量或顺序,除非明确陈述此类限制。相反,这些名称可在本文中用作在两个或更多个元件或元件的实例之间进行区分的便利方法。因此,提及第一元件和第二元件并不意味着在那里只能采用两个元件,或者第一元件必须以某种方式在第二元件之前。此外,除非另外指明,一组元件可包括一个或多个元件。24.如本文所用,涉及给定参数、属性或条件的术语“基本上”是指并且包括在本领域的普通技术人员将会理解的给定参数、属性或条件满足小程度的方差的程度,诸如例如在可接受的制造公差内。以举例的方式,取决于基本上满足的具体参数、属性或条件,参数、属性或条件可至少满足90%、至少满足95%、或甚至至少满足99%。25.如本文所用,为了在理解本公开和附图时的清楚性和方便性而使用任何关系术语(诸如“在……上方”、“在……下方”、“在……上”、“在……下”、“上部”、“下部”等),并且该关系术语并不暗示或取决于任何特定偏好、取向或顺序,除非上下文另有明确指示。26.这里,术语“耦接”及其派生词可用于表示两个或多个元件彼此协作或交互。当将元件描述为“耦接”至另一元件时,那么该元件可直接物理或电接触,或者可存在居间元件或层。相比之下,当将元件描述为“直接耦接”至另一元件时,那么不存在居间元件或层。术语“连接”在本说明书中可与术语“耦接”可互换地使用,并且具有相同的含义,除非另有明确指示或者上下文将以其他方式向本领域普通技术人员指示。27.当用于本文时,术语“消息”包括但不限于使用一个或多个数据包所传送的消息。28.低吞吐量有线和无线连接(“低吞吐量连接”)在“简单”设备(例如,在处理核心、电源或可用存储器等方面受限的设备)的系统中是有利的,因为与更高吞吐量连接相比,它们需要密集性更低的处理并且运行功率更低。因此,与被配置用于更高吞吐量连接的设备相比,低吞吐量连接通常用在以下设备中:作为非限制性示例,按更低电池电量、更简单核心以及更大规模来运行的设备。29.低吞吐量连接上的通信易受网络攻击,因为所连接的设备通常不支持相互设备认证。相互认证通常需要:进行复杂处理,这超出了这些设备的适度能力;以及繁重的消息有效载荷,这不适合于低吞吐量连接。因此,通过低吞吐量连接而耦接的设备的系统可能不适合于需要相互认证的应用,但是通过高吞吐量连接而耦接且具有更复杂核心和可用存储器的设备的系统适合于需要相互认证的应用。30.本公开的发明人认识到,低吞吐量相关设备的且其上具有移动的通信的系统易受网络攻击,包括但不限于所谓的中间人(mitm)攻击,其中攻击者转发并修改两个设备之间的合法通信,并且该修改可以使攻击者能够获得对系统、网络或设备等的访问权。31.一些本公开发明人已知且据称为通过低吞吐量连接而耦接的设备提供相互认证的常规协议通常放弃了公认安全支柱中的至少一项:认证、完整性或机密性。其他本公开发明人已知且据称为通过低吞吐量连接而耦接的设备提供相互认证的常规协议可能太慢而无法确保适当的适用性。32.本公开的发明人认识到,需要可在低吞吐量相关设备的系统中使用的相互认证协议以及可实现该协议的设备。更具体地,本公开的发明人认识到,需要可用于低吞吐量连接中以及包括低吞吐量连接的应用中的相互认证协议,由此双方(例如,两个设备等)可以确保它们与之通信的一方的身份并且建立安全会话用于交换加密数据。虽然低吞吐量连接是特定应用场景,但是将本文所论的相互认证协议与吞吐量并非限制性设计考虑因素的连接(例如,快速吞吐量连接等)一起使用没有超出本公开的范围。33.在一个或多个实施方案中,当双方或多方希望通信时,通过椭圆曲线数字签名算法(ecdsa)验证过程,验证每一方的身份。作为ecdsa验证过程的一部分,有利地,各方以有限的方式(即,就所交换的消息数量和数据大小(以字节为单位)而言)交换身份信息。虽然有限,但身份信息本身或结合各方已知的其他信息足以成功地执行ecdsa验证过程。一旦验证通过,各方交换(例如,执行密钥交换协商协议等)适当签名的椭圆曲线迪菲-赫尔曼(ecdh)会话密钥,该会话密钥用于导出会话密钥以供通信。会话密钥可用于根据加密密码来加密通信(例如,消息、证书、代码等),诸如对称加密算法(例如,高级加密标准(aes)128、aes 256等)、流密码(例如,salsa20、rivest cipher(rc)4、rc5、或rc6等)、或对称密钥可调分组密码(例如,threefish等)等。34.图1是描绘了根据一个或多个实施方案的认证协议100的泳道图。在图1所绘的特定非限制性示例中,第一方102和第二方104执行认证协议100,这可以包括两个阶段:握手消息传送阶段118和成功执行握手消息传送阶段118之后的加密通信阶段130。35.在握手消息传送阶段118期间,第一方102和第二方104交换信息,作为就各方在各方之间的安全通信会话期间将用于加密和解密消息的一组(或多组)加密密钥达成一致的尝试的一部分。此类加密密钥在本文中可称为“会话密钥”。更具体地,各方试图就可以从中导出多个会话密钥的中间密钥达成一致,此类中间密钥在本文中称为“会话密文”。36.执行握手消息传送阶段118在本文中也可表征为:各方(本文为第一方102和第二方104)之间交换用于“建立安全通信会话”的消息。37.在操作106中,通过执行握手消息传送阶段118的第一消息传送,第一方102和第二方104交换各自的身份信息。第一消息传送可以包括第一方102和第二方104中的每一方发送具有其各自身份信息(其可以包括可选的加密临时数)的消息(分别为第一消息和第二消息),该消息由另一方接收。38.身份信息可以包括用于共享关于该方、关于该方的公钥、关于该方证书的签名者、以及关于认证该签名者的证书管理机构的信息的一个或多个数字证书,或者可以呈该一个或多个数字证书的形式。公钥证书是认证公钥所有权的数字证书。一方的公钥证书在本文中可以称为“设备证书”。由于除认证公钥所有权之外的原因而对实体身份进行认证的数字证书的用途没有超出本公开的范围。39.通常,签名者的作用是引入已由证书管理机构所认证(签名)的实体,并因此使设备(诸如第一方102和第二方104)能够用签名者所提供的私钥来签名(认证),该私钥由此类设备携带(例如,存储等),其风险比携带证书管理机构的私钥更小,因为携带证书管理机构的私钥将不得作出大量努力来保护它并保证其安全。40.签名者的证书可以由证书管理机构签名(即,认证),并且设备证书可以由签名者签名(即,认证)。在一些实施方案中,身份信息可以包括所签名的设备证书部分以及安排在证书链中的签名者所签名的公钥证书。41.各方所交换的身份信息可以包括设备证书的一部分,该部分由证书管理机构所认证的签名者来签名。作为非限制性示例,身份信息可以包括在与设备证书的一部分对应且格式为x.509的证书中。x.509目前由itu电信标准化部门(itu-t)定义。在各种实施方案中,所签名的设备证书部分可以包括一些而非全部在传输层安全(tls)证书、安全套接层(ssl)证书、或相似类型证书中使用的信息。所签名或未签名的设备证书部分可以具有诸如根据x.509格式(包括其扩展形式)的公钥证书格式。此类公钥证书格式可以包括特定的证书结构,该证书结构定义了用于特定信息的特定字段以及以字节为单位的相应字段的大小。虽然可以将各方所交换的签名设备证书部分的一些或全部信息进行压缩,但是所签名或未签名的设备证书部分与所压缩的公钥证书相反,在所压缩的公钥证书中,仅能够通过解码所压缩的公钥证书的比特来恢复全部公钥证书。42.每一方可以由签名设备证书部分来恢复另一方的设备证书,如下文进一步所述,并且作为非限制性示例,通过ecdsa验证过程,使用所恢复的相应设备证书以验证另一方的身份。43.在一些实施方案中,所签名或未签名的设备证书或设备证书部分可以包括用于向发送者请求公钥的指令,即,第一方102所提供的设备证书部分可以包括用于向第一方102请求公钥的指令,并且第二方104所提供的设备证书部分可以包括用于向第二方104请求公钥的指令。在一些实施方案中,指令可以用设备证书或设备证书部分来编码,并且可以作为ecdsa验证过程的一部分来恢复和/或执行(非限制性示例)。44.在操作108和操作110中,使用所交换的身份信息,作为非限制性示例,使用ecdsa验证过程,每一方验证另一方的身份。在设备证书和签名者证书被安排在证书链中的情况下,对于每一方,操作108和110中的验证过程可以包括:使用ecdsa验证以及包括在证书管理机构所签名的签名者公钥证书中的签名者公钥,来验证应用于所签名的设备证书部分的签名者签名。可以使用ecdsa验证来验证应用于签名者公钥证书的证书管理机构的签名,并且可以使用可信传递过程来验证与认证协议100分开传递的证书管理机构公钥。45.如果第一方102和第二方104都验证另一方,则他们获得另一方的相应公钥(在另一方所签名的设备证书部分中发送),并且可以进行到操作112。如果任何一方都没有验证另一方,则认证协议100可以重新执行操作108、110和112,直到验证了双方各自的身份(或者已经执行了某阈值次数的验证尝试),或者认证协议100可以结束。46.在操作112中,经由握手消息传送阶段118的第二消息传送,第一方102和第二方104交换关于签名密钥协商交换的签名密钥协商交换信息。第二消息传送可以包括每一方发送具有其签名的密钥协商交换信息的消息(分别为第三消息和第四消息),该消息由另一方接收。该签名密钥协商交换信息可以包括每一方所签名的临时公钥,该临时公钥的生成过程将在下文进行讨论。47.在一些实施方案中,在操作106和过程200中交换的第一加密临时数和第二加密临时数可以由各方用于执行签名密钥协商交换操作中的一些操作。作为非限制性示例,加密临时数,包括但不限于过程200的第一加密临时数和第二加密临时数,可以是分别由第一方102和第二方104提供的一次性使用数(例如,任意数,诸如时变数、随机数、伪随机数、或它们的组合等)。第一方102和第二方104分别使用第一加密临时数和第二加密临时数来识别特定认证会话(即,与认证协议100的特定执行过程对应的认证会话)、特定通信或特定安全通信会话,并且将消息与之相关联。攻击者无法或至少发现更加难以复制和重发一方将接受的加密消息,即所谓的“重发攻击”,在该攻击中,接收者将攻击者的消息看作是由经认证的发送者发送的消息。48.在操作114和操作116中,第一方102和第二方104各自执行一项或多项协议计算而用于签名密钥协商交换。在一些实施方案中,操作114和操作116的计算过程包括获得会话密文。在各种实施方案中,会话密文可由一方或双方使用以获得或以恢复会话密钥。作为非限制性示例,可以通过执行椭圆曲线迪菲-赫尔曼(ecdh)算法来获得会话密文,并将其称为“ecdh会话密钥”。ecdh会话密钥类会话密文的非限制性示例是预主密钥,该预主密钥能够通过以下方式获得:使用第一方102和第二方104在操作112中所交换的签名临时公钥和第一方102和第二方104所生成的临时私钥的组合,来执行特定ecdh算法。49.在一些实施方案中,通过在第一方102和第二方104处使用该签名公钥和相应私钥的组合来执行特定ecdh算法(例如,ecdh密钥协商协议),认证协议100获得一个或多个会话密钥。能够从ecdh会话密钥中获得的会话密钥的非限制性示例包括:通过对ecdh会话密钥执行hkdf导出函数而获得的aes组合32字节密钥、由aes组合32字节密钥所导出的16字节aes和16字节aesiv密钥、以及hmac 32字节密钥。50.在一些实施方案中,执行认证协议100的每一方可被配置为,通过将基于散列的简单密钥导出函数(hkdf)应用于在过程200期间获得的会话密文(例如edch会话密钥)以及第一加密临时数和第二加密临时数中的一者或两者,获得基于散列的消息认证码(hmac)密钥或加盐hmac密钥。获得会话密钥和hmac密钥中的一者或多者之后,第一方102和第二方104中的每一方可以使用这些会话密钥和hmac密钥以加密数据,并且执行加密通信作为安全通信会话的一部分。51.值得注意的是,认证协议100的握手消息传送阶段118的操作可以通过在第一方102与第二方104之间交换特定数量或最大数量的消息和字节来执行。在图1所绘的特定非限制性示例中,四个消息(即,每一方发送包括身份信息和加密临时数的消息,并且每一方发送包括签名临时公钥的消息)和总共960个字节(第一消息和第二消息,每个消息:320字节证书链+32字节加密临时数;(第二消息和第三消息,每个消息:64字节临时公钥和64字节数字签名一起形成签名临时公钥)于操作106和操作112期间,在第一方102与第二方104之间交换。本公开的发明人已知的典型tls协议使用几千字节的数据以执行与握手消息传送阶段118等效的握手阶段。52.值得注意的是,在认证协议100的实施方案中,可以获得至少三个会话密钥用于每个安全通信会话。53.如上所论,操作106、操作108、操作110、操作112、操作114和操作116形成认证协议100的握手消息传送阶段118中的一些或全部阶段。下文将进一步所述的操作120、操作122、操作124和操作126以及操作128包括认证协议100的加密通信阶段130的一些或全部操作。54.在操作120中,认证协议100在第一方102与第二方104之间建立安全通信会话。作为非限制性示例,可以认为安全通信会话是响应于第一方102和第二方104成功地执行握手消息传送阶段118而建立。55.在操作122中,第一方102和第二方104使用安全通信链路来通信,并且更具体地,使用通过加密算法所加密的消息,以及使用通过执行操作112、操作114和操作116而导出的会话密钥来通信。每一方可以使用所导出的会话密钥以解密从另一方所收到的加密消息。56.在一些实施方案中,使用aes 128来加密消息。在一些实施方案中,密码块链接(cbc)(或其他链接机制)可用于将消息相关性引入编码中,然后可使用所选加密算法(例如,aes 128等)来加密每个密文块。57.在可选操作124中,认证协议100可以传送如参考操作122所述而加密的消息,其中该消息可选地包括hmac。58.在可选操作126中,认证协议100可以周期性地或随机地对在认证协议100期间获得的一个或多个代码和/或密钥执行密钥轮换,包括但不限于会话密文和会话密钥的轮换、会话密钥的轮换、第一加密临时数和第二加密临时数的轮换、以及hmac密钥和hmac的轮换。会话密文和会话密钥的此类轮换、会话密钥的此类轮换、第一加密临时数和第二加密临时数的此类轮换、以及hmac密钥和hmac的此类轮换可以通过发起至少一部分握手消息传送阶段118的第二实例来实现,特别是操作112、114和116。59.在一些实施方案中,操作124或126可以包括用于确保每个消息的“渐进”和“唯一”hmac密钥的多个操作。可以将hmac用作一种类型的签名:假定某消息具有任意长度,首先用散列算法(例如,sha256等)对消息进行散列,然后与会话密文以及第一加密临时数和第二加密临时数中的一者或多者进行组合,以获得与该特定消息相关联的指纹类型‑‑hmac。该指纹与特定消息相关联,因为散列算法将指纹与消息本身的内容(类似于纯sha)以及可选地hmac密钥(其增加了一些强度,因为为了正确地计算消息,hmac密钥是必需的)相关联。60.假定消息长度恒定,用给定hmac密钥所算出的hmac将始终相同。因此,为了获得针对每个消息(即使针对内容相同的消息)的不同hmac,将“盐”加入hmac的计算过程中,使得hmac取决于盐、消息和hmac密钥。为了使用“盐”,盐的计算方式预先为各方所知。因此,在一些实施方案中,将已知的“盐”(例如,会话密文等)应用于hmac的第一计算过程中,然后使用前一hmac和hmac密钥来计算每个后续hmac‑‑这里称为“渐进的”hmac生成过程。在操作128中,认证协议100结束在握手消息传送阶段118建立的安全通信会话。作为一个非限制性示例,安全通信会话可响应于一方指示(例如,指示或通知等)另一方结束通信会话的肯定消息而结束。作为另一非限制性示例,安全通信会话可响应于各方之间所传送的消息的阈值数量而结束。作为另一非限制性示例,安全通信会话可响应于任何一方检测到加密信息的过期(例如,使用时间或消息计数器等)而结束,而无需一方或多方进行轮换,诸如会话密文、会话密钥、hmac密钥或hmac的过期。61.图2是描绘了根据一个或多个实施方案的过程200的流程图,该过程用于交换身份信息并且作为认证协议的握手消息传送阶段的一部分来验证身份,诸如在认证协议100的操作106、操作108和操作110中等。62.在操作202中,过程200选择存储在一方的第一设备证书的一个或多个特定字段中的信息。63.在操作204中,过程200生成第一设备证书部分,其包括所选信息、由一方的私钥所生成的一方自己的公钥(即,第一公钥)、以及关于该方的信息。所选信息、第一公钥和关于该方的信息可以存储在与操作202的第一设备证书的一个或多个特定字段相对应的字段中。64.在操作206中,响应于可信第三方的数字签名(诸如,由证书管理机构认证的签名者),过程200对第一设备证书部分进行签名,以获得第一签名设备证书部分。65.在操作208中,过程200发送认证协议的握手消息传送阶段(例如,握手消息传送阶段118)的第一消息。第一消息包括该方自己的加密临时数(即,第一加密临时数)以及在操作206中获得的第一签名设备证书部分。66.在操作210中,过程200接收认证协议的握手消息传送阶段(例如,握手消息传送阶段118)的第二消息。第二消息包括针对握手消息传送阶段的第二(其他)方的第二加密临时数和第二签名设备证书部分。操作210和210由此在第一方与第二方之间交换身份信息。67.在操作212中,过程200通过如下方式获得第二方的设备证书:将操作210所收到的第二消息的第二签名设备证书部分与本地存储且预填充了至少一些信息的部分预填充的设备证书进行组合。在一些实施方案中,该组合可以牵涉将第二签名设备证书部分中的信息传送到部分预填充的设备证书,直到获得适当完整的设备证书。至少部分地基于与预填充的设备证书的空字段相对应的设备证书部分的字段,在本文中可以将预填充的设备证书表征为与第一签名设备证书部分和第二签名设备证书部分“互补”。68.在操作214中,响应于在操作212中获得的设备证书中的身份信息,过程200验证第二方的身份,从而获得第二方的公钥,如操作204所示,该公钥包括在第二方的设备证书部分中。69.图3是描绘了根据一个或多个实施方案的用于执行签名密钥协商交换的过程300的流程图,诸如认证协议100的操作112、操作114和/或操作116。70.在操作302中,通过执行协议所指定的私钥/公钥生成算法,过程300生成第一临时私钥和第一临时公钥,用于由各方(例如,迪菲-赫尔曼等)执行签名密钥协商交换。71.在操作304中,过程300使用第一方的私钥对第一临时公钥进行签名,以获得第一签名临时公钥。每一方可使用其自己的私钥来生成其数字签名,并由此对第一临时公钥进行“签名”,只要各方已由过程200认证。可选地,通过使用第二方的加密临时数(即,在操作210中与第二消息一起收到的第二加密临时数)对生成的数字签名进行编码,过程200可以生成数字编码签名,并且使用该数字编码签名对第一临时公钥进行签名,从而获得更大的安全性。72.在操作306中,过程300发送包括第一签名临时公钥的第三消息。73.在操作308中,过程300接收包括由第二(其他)方使用其自己的私钥所签名的第二签名临时公钥的第四消息。可以使用第二签名临时公钥,因为接收器在过程200中获得了第二方的公钥。74.值得注意的是,操作306和308的第三消息和第四消息形成了与握手消息传送阶段的一方交换关于所执行的签名密钥协商交换的签名密钥协商交换信息。75.在一些实施方案中,一方可以在签名设备证书部分中传送第一签名临时公钥和第二签名临时公钥。此类设备证书部分的一些字段可以对应于协议所指定的字段,用于由各方执行所签名的密钥协商交换。76.在操作310中,响应于第二方的第二临时公钥(其对应于第二签名临时公钥)和第一方的第一临时私钥,过程300生成会话密文。77.在操作312中,响应于会话密文,过程300获得会话密钥。通过由双方交换并分别由双方用来生成会话密文的第一签名临时密钥和第二签名临时密钥,这些会话密钥与特定通信会话相关联。操作310、312表示如上文关于操作114、116所述的密钥协商交换计算。78.在可选操作314中,通过丢弃当前会话密文、临时私钥和临时公钥、以及会话密钥并发起认证协议的至少一部分第二握手消息传送阶段118,过程300轮换当前安全通信会话的会话密钥。通过成功地执行第二握手消息传送阶段‑‑过程200和过程300,可以获得新的临时公钥/私钥、会话密文或会话密钥。79.图4是描绘了根据一个或多个实施方案的用于执行认证协议100的操作的示例性计算系统400(或计算装置)的框图。计算系统400可包括经由i/o保护链路436而耦接到密码元件408的片上系统(soc)处理器或微控制器402。80.在图4所绘的特定非限制性示例中,soc处理器或微控制器402包括:用于非安全固件404的定制应用414的机器可执行指令;以及用于安全固件406的通信协议412、系统应用416、安全存储装置418、以及密码学算法(验证、签名)和应用编程接口(api)410的机器可执行指令。81.密码学算法(验证、签名)和api410可以是协议的机器可执行指令,用于与支持通信协议412的密码元件408通信。通信协议412可以包括用于根据相互认证协议420进行通信以及用于消息加密/解密422的机器可执行指令。在一些实施方案中,消息加密/解密422可包括用于执行与诸如密码元件408等设备的安全i/o通信的机器可执行指令。82.密码元件408通常可被配置为支持各种加密功能,诸如安全存储和加密计算等。如图4所绘,密码元件408包括密钥存储装置426和硬件加速数学函数424。83.密钥存储装置426可以包括用于存储本文所论的认证协议100、过程200和过程300的临时私钥、会话密钥和会话密文中的一项或多项的存储器和机器可执行指令。根据所公开的实施方案,硬件加速数学函数424可以包括用于执行密码验证428、临时密钥计算430(例如,用于根据迪菲-赫尔曼协议生成临时公钥的密钥导出函数)、hkdf导出函数432(即,使用基于散列的简单密钥导出函数的密钥导出函数)、以及可选地其他算法特定导出项434的机器可执行指令。84.虽然未包括在图4所绘的特定非限制性示例中,但是在一些实施方案中,可以将针对基于散列的函数的机器可执行指令包括在安全固件406或硬件加速数学函数424中,该基于散列的函数用于基于消息和hmac密钥,生成基于散列的消息认证码(hmac)而用于消息认证计算。85.图5是描绘了根据一个或多个实施方案所存储、产生或使用的加密信息500的示例的框图。加密信息500中的一项或多项信息可存储在非安全固件404或安全固件406所用的易失性或非易失性存储器、或与密钥存储装置426相关联的密码元件408的安全存储器处。如图5所绘,设备信息可以包括预存储的证书部分502、设备的签名证书504、和i/o保护密钥506(例如,用于建立i/o保护链路436)。86.会话特定信息可以包括加密信息,该加密信息与响应于认证协议100的握手消息传送阶段118而建立的特定通信会话(例如,加密通信阶段130)相关联。如图5所绘,会话特定信息的加密信息可以包括另一方完成签名的设备证书510、设备自己签名的证书部分516、另一方的加密临时数520、自己的临时私钥524、另一方的临时公钥526、会话密文528、会话密钥530和hmac密钥522。87.如图5所绘,另一方完成签名的设备证书510可以包括预填充字段512,即,预填充有已经本地存储的信息。在图5所绘的特定示例中,使用预存储证书部分502的对应字段的信息来填充预填充字段512,并且使用签名设备证书部分508中的信息来填充完成字段514,该签名设备证书部分接收自认证协议的握手消息传送阶段的另一方。本地设备自己签名的设备证书部分516可以包括使用设备签名证书504中的信息所填充的字段518。根据上文所论的认证协议100、过程200和过程300的操作,可以生成会话特定信息的剩余加密信息。88.图6是描绘了设备证书600的非限制性示例的框图。示例性设备证书600包括其中指定的可被传送到设备证书部分的字段和信息,诸如用于指定发行者信息606、关于一方的信息610(即,所有者信息)和一方的公钥614(即,所有者公钥)的字段。用于指定不必传送到证书部分的其他信息的字段包括版本信息602、签名算法604、有效期608和所有者公钥算法612的字段。89.图7示出了根据一个或多个实施方案的相互认证系统700的框图。在此示例中,客户端702与预配服务器704通信,该预配服务器被配置为,在执行认证过程706(例如,认证协议100)之后,依据预配过程708,向客户端702提供用于加入相关设备的系统的预配信息,二者均通过通信链路710。作为非限制性示例,预配信息可以包括针对正在加入低吞吐量相关设备的系统或作为该系统的一部分的设备的配置信息。90.通信链路710可以是用于低吞吐量数据传输的连接(例如,低吞吐量连接),诸如有线点对点(p2p)连接、无线p2p连接、或它们的组合等。用于低吞吐量数据传输的有线和/或无线连接可以包括以下一项或多项:蓝牙低能量(ble)、lora、2.4ghz无线、sub-ghz无线、通用异步接收器发射器(usart)总线、串行外围接口(spi)总线、两线式串行(i2c)总线、控制器局域网(can)总线、本地互连网络(lin)总线和通用串行总线(usb)等。作为非限制性示例,低吞吐量通信链路可以是被配置用于每秒10千字节或更少的通信链路。91.在执行认证过程706的同时,通信链路710可以是握手消息传送阶段118期间的不安全连接,然后是加密通信阶段130期间的安全连接。预配过程708可以在至少一部分加密通信阶段130期间执行。在预配过程708完成之后,则加密通信阶段130可以结束(例如,结束与加密通信阶段130相关联的安全通信会话)。92.作为本公开的发明人已知的常规方法的缺点的一个非限制性示例,此类方法是复杂的,并且需要超出本公开发明人已知的低功率微控制器和低吞吐量连接能够实现的速度(例如,数据吞吐量等)。作为本公开的发明人已知的常规方法的缺点的另一非限制性示例,诸如椭圆曲线密码术(ecc)等安全元件可以帮助数学运算和存储,但不用于使系统自身保持安全‑‑它们通常用于加速和保护操作并且必须通过协议来适当地使用。93.本领域的普通技术人员应当理解,本文所公开的实施方案的功能元件(例如,功能、操作、动作、过程和/或方法)可在任何合适的硬件、软件、固件或它们的组合中实现。图8示出了本文所公开的功能元件的实现方式的非限制性示例。在一些实施方案中,本文所公开的功能元件的一些或所有部分可由专门配置用于执行这些功能元件的硬件来执行。94.图8是描绘了用于认证协议的握手消息传送阶段的示例性消息传送800的框图。作为身份信息交换的一部分,诸如图1的操作106的身份信息交换,第一消息802和第二消息804被发送。如所绘,每个消息包括由“签名者”签名的设备证书部分(这里是电话证书)、由证书管理机构签名的签名者证书、以及加密临时数(本文是32字节随机数)。作为图1的操作112的签名密钥协商交换协议的密钥协商交换信息的交换的一部分,第三消息806和第四消息808被发送。如所绘,每个消息包括签名的临时公钥(即,用数字签名来签名,该数字签名使用发送者的临时私钥而生成)。95.图9是在一些实施方案中可用于实现本文所公开的各种功能、操作、动作、过程和/或方法的电路900的框图。电路900包括可操作地耦接到一个或多个数据存储设备(本文有时称为“存储装置904”)的一个或多个处理器902(本文有时称为“处理器902”)。存储装置904包括存储在其上的机器可执行代码906,并且处理器902包括逻辑电路908。机器可执行代码906包括描述了可由逻辑电路908来实现(例如,执行)的功能元件的信息。逻辑电路908适于实现(例如,执行)机器可执行代码906所述的功能元件。当执行机器可执行代码906所述的功能元件时,电路900应当被视作被配置用于执行本文公开的功能元件的专用硬件。在一些实施方案中,处理器902可被配置为按序、同时(例如,在一个或多个不同的硬件平台上)、或在一个或多个并行过程流中,执行机器可执行代码906所述的功能元件。96.当由处理器902的逻辑电路908来实现时,机器可执行代码906被配置为使处理器902适于执行本文公开的实施方案的操作。例如,机器可执行代码906可被配置为使处理器902适于执行参考计算系统400所论的至少一部分或全部特征和功能,并且更明确地说,适于执行参考以下项所论的至少一部分或全部特征和功能:soc处理器或微控制器402、非安全固件404、安全固件406、定制应用414、系统应用416、安全存储装置418、通信协议412、相互认证协议420、消息加密/解密422、密码学算法(验证、签名)和api 410、密码元件408、密钥存储装置426、硬件加速数学函数424、密码验证428、临时密钥计算430、hmac密钥计算434、以及其他算法特定导出项。作为另一示例,机器可执行代码906可被配置为,使处理器902适于执行针对认证协议100、过程200和过程300所论的操作的至少一部分或全部操作。作为再一示例,机器可执行代码906可被配置为,使处理器902适于执行针对相互认证系统700、客户端702和预配服务器704所论的操作的至少一部分或全部操作。97.处理器902可包括通用处理器、专用处理器、中央处理单元(cpu)、微控制器、可编程逻辑控制器(plc)、数字信号处理器(dsp)、专用集成电路(asic)、现场可编程门阵列(fpga)或其他可编程逻辑设备、分立栅极或晶体管逻辑、分立硬件部件、其他可编程设备、或被设计成执行本文公开的功能的它们的任何组合。包括处理器的通用计算机被视作专用计算机,而该通用计算机被配置为执行对应于与本公开的实施方案相关的机器可执行代码906(例如,软件代码、固件代码、硬件描述)的功能元件。应注意,通用处理器(在本文也可称为主机处理器或简称主机)可以是微处理器,但在替代方案中,处理器902可包括任何常规处理器、控制器、微控制器或状态机。处理器902也可实现为计算设备的组合,诸如dsp与微处理器的组合、多个微处理器的组合、一个或多个微处理器与dsp核心的组合、或任何其他此类配置。98.在一些实施方案中,存储装置904包括易失性数据存储装置(例如,随机存取存储器(ram))、非易失性数据存储装置(例如,闪存存储器、硬盘驱动器、固态驱动器、可擦除可编程只读存储器(eprom)等)。在一些实施方案中,处理器902和存储装置904可以实现为单个设备(例如,半导体设备产品、片上系统(soc)等)。在一些实施方案中,处理器902和存储装置904可以实现为单独的设备。99.在一些实施方案中,机器可执行代码906可以包括计算机可读指令(例如,软件代码、固件代码)。作为非限制性示例,计算机可读指令可由存储装置904存储,由处理器902直接访问,并且由处理器902至少使用逻辑电路908来执行。同样作为非限制性示例,计算机可读指令可以存储在存储装置904上,传送到存储器设备(未示出)以供执行,并且由处理器902至少使用逻辑电路908来执行。因此,在一些实施方案中,逻辑电路908包括电可配置型逻辑电路908。100.在一些实施方案中,机器可执行代码906可描述将在逻辑电路908中实现以执行功能元件的硬件(例如,电路)。该硬件可以从低级晶体管布局到高级描述语言的各种抽象级别中的任何一种进行描述。在高级抽象下,可使用硬件描述语言(hdl),诸如ieee标准硬件描述语言(hdl)。作为非限制性示例,可以使用verilogtm、systemverilogtm或超大规模集成(vlsi)硬件描述语言(vhdltm)。101.hdl描述可根据需要以多种其他抽象级别中的任一种转换成描述。作为非限制性示例,高级描述可被转换为逻辑级描述诸如寄存器传送语言(rtl)、栅极级(gl)描述、布局级描述或掩模级描述。作为非限制性示例,可以将逻辑电路908的硬件逻辑电路(例如,栅极、触发器、寄存器等)所执行的微操作描述于rtl中,然后通过合成工具转换成gl描述,并且gl描述可通过安置和路由工具转换成布局级描述,该布局级描述对应于可编程逻辑设备的集成电路、分立栅极或晶体管逻辑部件、分立硬件部件或它们的组合的物理布局。因此,在一些实施方案中,机器可执行代码906可包括hdl、rtl、gl描述、掩码级描述、其他硬件描述、或它们的任何组合。102.在机器可执行代码906包括硬件描述(以任何抽象级别)的实施方案中,系统(未示出,但包括存储装置904)可被配置为实现机器可执行代码906所述的硬件描述。作为非限制性示例,处理器902可包括可编程逻辑设备(例如,fpga或plc),并且逻辑电路908可被电控制以将对应于硬件描述的电路实现到逻辑电路908中。同样作为非限制性示例,逻辑电路908可包括根据机器可执行代码906的硬件描述而由制造系统(未示出,但包括存储装置904)制造的硬连线逻辑部件。103.无论机器可执行代码906是否包括计算机可读指令或硬件描述,逻辑电路908都适于在实现机器可执行代码906的功能元件时,执行机器可执行代码906所述的功能元件。需注意,虽然硬件描述可能不直接描述功能元件,但硬件描述间接描述了由硬件描述所描述的硬件元件能够执行的功能元件。104.本领域普通技术人员将认识到所公开的实施方案的许多益处和优点。作为一个非限制性示例,所公开的实施方案可用于通过低吞吐量硬件(例如,网络设备)而对复杂栈进行端口连接。作为另一非限制性示例,所公开的实施方案可以包括:与本公开的发明人已知的常规协议(例如,tls等)相比,压缩(例如,减少等)握手阶段所交换的消息的数量和长度。作为另一非限制性示例,通过每秒80千比特的连接,所公开的实施方案可以确保,在基本上一秒内(作为特定的非限制性示例),通过ecdh进行相互认证和安全的预主秘文交换。作为另一非限制性示例,可以仅发送两个x.509证书,以建立每一方的身份。作为另一非限制性示例,所公开的实施方案可以为每个安全通信会话生成一组三(3)个不同的导出密钥,以执行aes、cbc和加盐hmac来实现机密性和完整性。作为另一非限制性示例,所公开的实施方案可以按周期性或随机间隔,自动执行会话密钥轮换。作为另一非限制性示例,所公开的实施方案可用于网络中以供:访问控制、医疗设备、患者监测、数字健康、家庭和建筑物自动化、报警系统、汽车和军事应用等。105.如在本公开中使用的,术语“模块”或“部件”可以是指被配置为执行可以存储在计算系统的通用硬件(例如,计算机可读介质、处理设备,非限制地)上并且/或者由通用硬件执行的模块或部件和/或软件对象或软件例程的动作的特定硬件实施方式。在一些实施方案中,本公开所述的不同部件、模块、发动机和服务可以实现为在计算系统上执行的对象或过程(例如,实现为单独的线程等)。虽然本公开中描述的系统和方法中的一些系统和方法通常被描述为在软件中实现(存储在通用硬件上并且/或者由通用硬件执行),但是特定硬件实施方式或软件和特定硬件实施方式的组合也是可能且可以预期的。106.如本公开内容所用,涉及多个元件的术语“组合”可包括所有元件的组合或某些元件的各种不同子组合中的任何一种组合。例如,短语“a、b、c、d或它们的组合”可指a、b、c或d中的任一个;a、b、c和d中的每一个的组合;以及a、b、c或d的任何子组合,诸如a、b和c;a、b和d;a、c和d;b、c和d;a和b;a和c;a和d;b和c;b和d;或c和d。107.本公开且特别是所附权利要求中所用的术语(例如,所附权利要求的主体等)通常旨在作为“开放式”术语(例如,术语“包括(including)”应解释为“包括但不限于”,术语“具有”应解释为“至少具有”,术语“包括(includes)”应解释为“包括但不限于”,等等)。如本文所用,术语“各个”意指一些或全部。如本文所用,术语“每一个”是指全部。108.另外,如果预期特定数量的引入的权利要求表述,则在权利要求中将明确叙述此类意图,并且在不进行此类表述的情况下,不存在此类意图。例如,作为对理解的辅助,以下所附权利要求书可包含使用引入性短语“至少一个”和“一个或多个”来引入权利要求叙述。然而,使用此类短语不应理解为暗示由不定冠词“一个”或“一种”引入的权利要求表述将包含此类引入的权利要求表述的任何特定权利要求限定于仅包含一个此类表述的实施方案,即使当相同的权利要求包括介绍性短语“一个或多个”或“至少一个”和不定冠词,诸如“一个”或“一种”(例如,“一个”和/或“一种”可被解释为指的是“至少一个”或“一个或多个”);使用定冠词来引入权利要求叙述也是如此。109.另外,即使明确叙述了特定数量的所引入的权利要求叙述,本领域技术人员也将认识到,此类叙述应被解译为意味着至少所叙述的数量(例如,无修饰的叙述“两项叙述”在没有其他修饰成分的情况下意味着至少两项叙述,或两项或更多项叙述)。此外,在使用类似于“a、b和c等中的至少一个”或“a、b和c等中的一个或多个”的惯例的那些情况下,通常此类构造旨在仅包括a、仅包括b、仅包括c、包括a和b两者、包括a和c两者、包括b和c两者或包括a、b和c三者等等。110.此外,无论在说明书、权利要求书或附图中,呈现两个或更多个替代性术语的任何分离的词或措辞应当理解为考虑包括该术语中的一个术语、该术语中的任意一个术语或两个术语的可能性。例如,短语“a或b”应理解为包括“a”或“b”或“a和b”的可能性。111.本公开的附加非限制性实施方案包括:112.实施方案1:一种执行一侧的相互认证握手的方法,该方法包括:经由握手消息传送阶段的第一消息传送,与一方交换身份信息,第一消息传送包括:发送第一消息,第一消息包括第一加密临时数和第一签名设备证书部分;以及接收第二消息,第二消息包括第二加密临时数和第二签名设备证书部分,并且经由握手消息传送阶段的第二消息传送,与该方交换关于签名密钥协商交换的签名密钥协商交换信息,第二消息传送包括:发送第三消息,第三消息包括第一签名临时公钥;以及接收第四消息,第四消息包括第二签名临时公钥。113.实施方案2:根据实施方案1所述的方法,该方法还包括:选择存储在第一设备证书的一个或多个特定字段中的信息;生成包括所选信息的第一设备证书部分;以及响应于可信第三方的数字签名,对第一设备证书部分进行签名,以生成第一签名设备证书部分。114.实施方案3:根据实施方案1和2中任一项所述的方法,该方法还包括:通过将第二签名设备证书部分和部分预填充的设备证书进行组合,获得该方的设备证书。115.实施方案4:根据实施方案1至3中任一项所述的方法,其中将第二签名设备证书部分和部分预填充的设备证书进行组合包括:将第二签名设备证书部分与预填充的设备证书中与第二公钥签名的设备证书部分互补的部分进行组合。116.实施方案5:根据实施方案1至4中任一项所述的方法,该方法还包括:响应于所获得的该方的设备证书,验证该方的身份。117.实施方案6:根据实施方案1至5中任一项所述的方法,该方法还包括:通过响应于第二加密临时数对第一数字签名进行编码,生成第一数字编码签名;以及响应于第一数字编码签名,对第三消息进行签名。118.实施方案7:根据实施方案1至6中任一项所述的方法,该方法还包括:响应于第二签名临时公钥和临时私钥,生成会话密文。119.实施方案8:根据实施方案1至7中任一项所述的方法,该方法还包括:响应于发起第二握手消息传送阶段,轮换安全通信会话的会话密钥。120.实施方案9:一种计算装置,该计算装置包括:处理器;以及其上具有机器可执行指令的存储器,这些机器可执行指令当由处理器执行时,将计算装置配置为:经由第一握手消息,与一方交换身份信息,第一握手消息包括:第一消息,第一消息包括第一加密临时数和第一签名设备证书部分;和第二消息,第二消息包括第二加密临时数和第二签名设备证书部分,并且经由第二握手消息,与该方交换第一签名密钥协商交换信息,第二握手消息包括:第三消息,第三消息包括第一签名临时公钥;和第四消息,第四消息包括第二签名临时公钥。121.实施方案10:根据实施方案9所述的计算装置,其中这些机器可执行指令包括另外的机器可执行指令,这些另外的机器可执行指令当由处理器执行时,将该装置配置为:选择存储在第一设备证书的一个或多个特定字段中的信息;生成包括所选信息的第一设备证书部分;以及响应于可信第三方的数字签名,对第一设备证书部分进行签名,以生成第一签名设备证书部分。122.实施方案11:根据实施方案9和10中任一项所述的计算装置,其中这些机器可执行指令包括另外的机器可执行指令,这些另外的机器可执行指令当由处理器执行时,将该装置配置为:通过将第二签名设备证书部分和部分预填充的设备证书进行组合,获得该方的设备证书。123.实施方案12:根据实施方案9至11中任一项所述的计算装置,其中部分预填充的设备证书与第二签名设备证书部分互补。124.实施方案13:根据实施方案9至12中任一项所述的计算装置,其中这些机器可执行指令包括另外的机器可执行指令,这些另外的机器可执行指令当由处理器执行时,将该装置配置为:响应于所获得的该方的设备证书,验证该方的身份。125.实施方案14:根据实施方案9至13中任一项所述的计算装置,其中这些机器可执行指令包括另外的机器可执行指令,这些另外的机器可执行指令当由处理器执行时,将该装置配置为:通过响应于第二加密临时数对第一数字签名进行编码,生成第一数字编码签名;以及响应于第一数字编码签名,对第三消息进行签名。126.实施方案15:根据实施方案9至14中任一项所述的计算装置,其中这些机器可执行指令包括另外的机器可执行指令,这些另外的机器可执行指令当由处理器执行时,将该装置配置为:响应于第二签名临时公钥和临时私钥,生成会话密文。127.实施方案16:根据实施方案9至15中任一项所述的计算装置,其中这些机器可执行指令包括另外的机器可执行指令,这些另外的机器可执行指令当由处理器执行时,将该装置配置为:响应于发起第二握手消息传送阶段,轮换安全通信会话的会话密钥。128.实施方案17:一种数据存储设备,该数据存储设备包括指令,这些指令当由处理器执行时,使处理器:经由第一握手消息,与一方交换身份信息,第一握手消息包括:第一消息,第一消息包括第一加密临时数和第一签名设备证书部分;和第二消息,第二消息包括第二加密临时数和第二签名设备证书部分,并且经由第二握手消息,与该方交换第一签名密钥协商交换信息,第二握手消息包括:第三消息,第三消息包括第一签名临时公钥;和第四消息,第四消息包括第二签名临时公钥。129.虽然本文关于某些图示实施方案描述了本发明,但本领域的普通技术人员将认识到并理解本发明不受此限制。相反,在不脱离下文所要求保护的本发明的范围及其法律等同形式的情况下,可对图示实施方案和所述实施方案进行许多添加、删除和修改。此外,来自一个实施方案的特征可与另一个实施方案的特征组合,同时仍被包括在发明人所设想的本发明的范围内。









图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!




内容声明:本文中引用的各种信息及资料(包括但不限于文字、数据、图表及超链接等)均来源于该信息及资料的相关主体(包括但不限于公司、媒体、协会等机构)的官方网站或公开发表的信息。部分内容参考包括:(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供参考使用,不准确地方联系删除处理!本站为非盈利性质站点,发布内容不收取任何费用也不接任何广告!




免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理,本文部分文字与图片资源来自于网络,部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理!的,若有来源标注错误或侵犯了您的合法权益,请立即通知我们,情况属实,我们会第一时间予以删除,并同时向您表示歉意,谢谢!

相关内容 查看全部