CN112235268B - 安全通信方法、系统及装置 - Google Patents
安全通信方法、系统及装置 Download PDFInfo
- Publication number
- CN112235268B CN112235268B CN202011048705.2A CN202011048705A CN112235268B CN 112235268 B CN112235268 B CN 112235268B CN 202011048705 A CN202011048705 A CN 202011048705A CN 112235268 B CN112235268 B CN 112235268B
- Authority
- CN
- China
- Prior art keywords
- buffer
- value
- service
- data
- sequence number
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
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/20—Network architectures or network communication protocols for network security for managing network security; network security policies in general
-
- 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/06—Network architectures or network communication protocols for network security for supporting key management in a packet data network
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Communication Control (AREA)
Abstract
本发明提供一种安全通信方法、系统及装置,属于通信技术领域。所述方法包括:接收业务请求,并获得所述业务请求中的命令字和业务号;确定与所述命令字的类型对应的接收缓冲区和发送缓冲区的联合空闲状态;按所述业务号对所述接收缓冲区和所述发送缓冲区执行空闲状态查询;在所述接收缓冲区和所述发送缓冲区的空闲状态符合所述联合空闲状态时,执行与所述业务号和所述命令字的类型匹配的业务数据响应,或者,在所述接收缓冲区和所述发送缓冲区的空闲状态不符合所述联合空闲状态时,响应状态字。本发明用于实现多安全业务的融合。
Description
技术领域
本发明涉及通信技术领域,具体地涉及一种安全通信方法、一种用于数据缓冲区的数据处理方法、一种安全通信系统、一种安全通信装置、一种电子设备和一种计算机可读存储介质。
背景技术
随着国家电网公司抢抓“新基建”政策机遇,加快形成能源互联网产业集群,推动产业向高端化、绿色化、智能化、融合化发展的目标越来越清晰。信息化重要支撑的供电服务一体化信息平台,打通了营销管理、调度管理、生产管理、调度自动化、配电自动化、用电信息采集、生产实时管控、地理信息系统、故障指示器等系统接口,实现了数据共享。同时密码统一服务平台、物联管理平台等平台也逐渐建成,起到关键核心作用的安全芯片,在存储器容量、处理能力、工艺水平等方面的不断提升,逐渐满足了以上业务融合的需求。
以配电台区为例,低压台区位于整个电网的末端,直接与用户向量并向用户供电。低压台区用于标配的监测和采集类终端一般有以下三类:用于配电变压器运行监测的配变监测终端、用于台区线损考核的台区总表以及用户台区智能电表计费抄表的集中器,配电台区信息采集终端融合技术上可行,经济上节约,业务上必要。在上述的三类终端中,分别配备独立的安全模块负责数据安全传输。为配合上述终端的融合,终端上的安全模块也需要进行融合,如图1。
在此方案中,业务数据通过数据接口进入MCU(控制单元或单片机),MCU会根据业务号进行转发,将不同的业务放入不同的安全模块中进行处理,3个安全模块可同时独立处理属于自己的业务。
对于业务数据交互格式,业务号的值占用一个字节,如果支持3种业务,值取1、2、3,写入命令占用一个字节值为1,读取命令占用一个字节值为0。写入指令后面要携带数据,读取指令不携带数据。MCU在收到写入命令后要给出“指令接收成功”等响应状态字,在接收到读取命令后,返回响应状态字或者写入命令的数据处理结果。业务交互流程如图2,流程中的响应状态字及含义如图3。
对于数据接收过程,MCU收到“写入命令”指令后,如果当前业务对应的安全模块空闲,MCU会将该业务指令进行缓存,并返回“指令接收成功”的响应,如果当前安全模块被占用,则返回“当前模块通讯忙”的响应。对于数据处理过程,MCU将缓存的业务指令发送给安全模块,并将安全模块的响应保存。对于数据发送过程,MCU收到“读取命令”指令后,如果与安全模块的交互已经完成,则将缓存的响应发送出去,如果交互未完成,则返回“当前模块通讯忙”响应。
现有的技术是将分散在多个终端的安全模块集成到一块硬件电路板上,MCU通过对不同业务配置不同的业务号进行区分,将数据发送至对应的安全模块进行处理,这种方案中MCU只作为硬件接口和数据转发的通道,逻辑简单,但是整体硬件成本高;另外安全模块密钥发行相互独立,密钥管理复杂,发行成本较高。
发明内容
本发明的目的是提供一种安全通信方法、系统及装置,避免终端中安全模块等独立硬件众多而导致的密钥管理复杂、通信过程复杂,进而改善模块面积、成本,实现多安全业务的融合。
为了实现上述目的,本发明实施例提供一种安全通信方法,该安全通信方法包括:
接收业务请求,并获得所述业务请求中的命令字和业务号;
确定与所述命令字的类型对应的接收缓冲区和发送缓冲区的联合空闲状态;
按所述业务号对所述接收缓冲区和所述发送缓冲区执行空闲状态查询;
在所述接收缓冲区和所述发送缓冲区的空闲状态符合所述联合空闲状态时,执行与所述业务号和所述命令字的类型匹配的业务数据响应,或者,
在所述接收缓冲区和所述发送缓冲区的空闲状态不符合所述联合空闲状态时,响应状态字。
具体的,在所述获得所述业务请求中的命令字和业务号之后,且在所述确定与所述命令字的类型对应的接收缓冲区和发送缓冲区的联合空闲状态之前,还包括以下一项或多项:
确定所述业务请求的数据格式正确,或不正确时,响应状态字;
确定所述业务号的记录正确,或不正确时,响应状态字;
确定所述命令字的记录正确,或不正确时,响应状态字。
具体的,所述确定与所述命令字的类型对应的接收缓冲区和发送缓冲区的联合空闲状态,包括:
在确定所述命令字的类型为读取命令时,
以确定接收缓冲区为有数据和发送缓冲区为空闲的判断返回为否,作为第一联合空闲状态,然后,
以确定所述接收缓冲区为空闲和所述发送缓冲区为空闲的判断返回为否,作为第二联合空闲状态,其中,
所述第一联合空闲状态和所述第二联合空闲状态为与所述读取命令对应的联合空闲状态。
具体的,所述在所述接收缓冲区和所述发送缓冲区的空闲状态符合所述联合空闲状态时,执行与所述业务号和所述命令字的类型匹配的业务数据响应,包括:
置所述业务请求的处理状态为正常态;
搬移所述发送缓冲区内的数据至应用协议数据单元的发送队列;
在所述发送队列中,封装所述业务号、命令字、搬移的数据和数据校验符为发送数据;
发送所述发送数据,发送完成后将所述发送缓冲区的空闲状态置为空闲。
具体的,所述确定与所述命令字的类型对应的接收缓冲区和发送缓冲区的联合空闲状态,包括:
在确定所述命令字的类型为写入命令时,
以确定接收缓冲区为空闲的判断返回为否,和确定发送缓冲区为空闲的判断返回为否,作为与所述写入命令对应的联合空闲状态。
具体的,所述在所述接收缓冲区和所述发送缓冲区的空闲状态符合所述联合空闲状态时,执行与所述业务号和所述命令字的类型匹配的业务数据响应,包括:
置所述业务请求的处理状态为正常态,并允许接收与所述业务号对应的接收数据;
确定与接收获得的数据处理命令的数量对应的顺序号记录值,并在所述接收缓冲区中记录所述业务号和所述顺序号记录值;
搬移接收获得的待处理的业务数据至所述接收缓冲区内;
响应所述接收数据已被接收成功的状态字。
具体的,所述确定与接收获得的数据处理命令的数量对应的顺序号记录值,包括:
在确定接收获得了任意一个数据处理命令时,在两个数值边界的范围内对接收命令列表内对象数量变量的前次值加固定值或减所述固定值,获得所述接收命令列表内对象数量变量的当前值,其中,
所述接收命令列表内对象包括已接收获得的数据处理命令;
将所述当前值作为所述任意一个数据处理命令的顺序号记录值,其中,
所述前次值和所述当前值属于在所述两个数值边界的范围内。
具体的,所述确定与接收获得的数据处理命令的数量对应的顺序号记录值,其中,
在所述前次值等于所述两个数值边界的范围内的两个数值边界中一者时,在加所述固定值或减所述固定值后,所述当前值置为另一者。
具体的,该安全通信方法中,
所述接收缓冲区和所述发送缓冲区,具有相同的数据结构。
具体的,该安全通信方法中,所述数据结构包括:
业务号,具有与业务分类对应的记录值;
状态号,具有与所述发送缓冲区为空闲或为有数据对应的记录值,或者具有与所述接收缓冲区为空闲对应的记录值,或者具有与所述接收缓冲区为有数据对应的顺序号记录值,其中,所述顺序号记录值为所述接收缓冲区中数据处理命令的接收顺序对应的数值;
缓冲区,具有接收数据或发送数据的存储地址空间。
本发明实施例提供一种用于数据缓冲区的数据处理方法,该数据处理方法包括:
确定接收缓冲区为空闲的判断返回为否;
确定所述接收缓冲区中顺序号记录值的相对大小顺序,其中,
所述接收缓冲区具有通过业务请求获得的多个业务号、以及与各个业务号对应的顺序号记录值和待处理的业务数据;
查询与相对最小的顺序号记录值对应的业务号的指令列表,执行所述指令列表的指令分发,放置指令分发后所述业务数据的处理结果于发送缓冲区;
将所述接收缓冲区更新为空闲,将所述发送缓冲区更新为有数据,将与相对最小的顺序号记录值对应的业务号记录至所述发送缓冲区。
具体的,所述确定所述接收缓冲区中顺序号记录值的相对大小顺序,包括:
确定所述接收缓冲区中顺序号记录值是否存在等于两个数值边界中最小值的顺序号记录值,
若存在等于所述最小值的顺序号记录值,则确定所述接收缓冲区中顺序号记录值是否存在等于所述两个数值边界中最大值的顺序号记录值,
若存在等于所述最大值的顺序号记录值,则以所述最大值为所述接收缓冲区中顺序号记录值的相对最小者,或,以存在的、所述最大值的相邻较小值为所述接收缓冲区中顺序号记录值的相对最小者,
若不存在等于所述最大值的顺序号记录值,则以所述最小值为所述接收缓冲区中顺序号记录值的相对最小者,
若不存在等于所述最小值的顺序号记录值,则直接按所述接收缓冲区中顺序号记录值的大小,获得相对大小顺序,
其中,任意一个顺序号记录值属于所述两个数值边界的范围。
本发明实施例提供一种安全通信系统,该安全通信系统包括:
接收模块,用于接收业务请求,并获得所述业务请求中的命令字和业务号;
状态确定模块,用于确定与所述命令字的类型对应的接收缓冲区和发送缓冲区的联合空闲状态;
状态查询模块,用于按所述业务号对所述接收缓冲区和所述发送缓冲区执行空闲状态查询;
响应模块,用于在所述接收缓冲区和所述发送缓冲区的空闲状态符合所述联合空闲状态时,执行与所述业务号和所述命令字的类型匹配的业务数据响应,或者,
在所述接收缓冲区和所述发送缓冲区的空闲状态不符合所述联合空闲状态时,响应状态字。
具体的,该安全通信系统还包括:数据处理模块;
所述数据处理模块,用于:
确定所述接收缓冲区为空闲的判断返回为否,
确定所述接收缓冲区中顺序号记录值的相对大小顺序,其中,
所述接收缓冲区具有通过业务请求获得的多个业务号、以及与各个业务号对应的顺序号记录值和待处理的业务数据,
查询与相对最小的顺序号记录值对应的业务号的指令列表,执行所述指令列表的指令分发,放置指令分发后的处理结果于所述发送缓冲区,
将所述接收缓冲区更新为空闲,将所述发送缓冲区更新为有数据,将与相对最小的顺序号记录值对应的业务号记录至所述发送缓冲区。
本发明实施例提供一种安全通信装置,该安全通信装置包括:
安全控制单元,被配置为具有接收业务请求和/或执行业务数据响应的功能,其中,
所述安全控制单元被配置为具有获得所述业务请求中的命令字和业务号的功能,
所述安全控制单元具有存储介质,所述存储介质被配置有接收缓冲区和发送缓冲区,
所述安全控制单元被配置为具有确定与所述命令字的类型对应的接收缓冲区和发送缓冲区的联合空闲状态的功能,
所述安全控制单元被配置为具有按所述业务号对所述接收缓冲区和所述发送缓冲区执行空闲状态查询的功能,
所述安全控制单元被配置为具有在所述接收缓冲区和所述发送缓冲区的空闲状态符合所述联合空闲状态时,执行与所述业务号和所述命令字的类型匹配的业务数据响应,或者,在所述接收缓冲区和所述发送缓冲区的空闲状态不符合所述联合空闲状态时,响应状态字的功能。
具体的,所述存储介质被配置有指令列表和文件系统;
所述指令列表存储有与数据处理命令对应的多个指令,其中,所述数据处理命令属于在所述接收缓冲区中与所述业务号对应的接收数据;
所述多个指令被配置为具有在所述文件系统中执行与所述业务号对应的待处理的业务数据处理的功能。
具体的,所述存储介质被配置有至少两个具有顺序号记录值的缓冲单元,所述缓冲单元包括一个接收缓冲区和一个发送缓冲区。
具体的,所述安全控制单元被配置为具有根据所述存储介质的存储空间初始化或删除一个或多个缓冲单元的功能。
具体的,所述安全控制单元被配置为具有根据与所述业务号对应的接收数据或发送数据的数据量初始化或删除一个或多个缓冲单元的功能。
具体的,所述安全控制单元被配置为具有在两个数值边界的范围内对前一个缓冲单元的顺序号记录值加固定值或减所述固定值,获得当前的缓冲单元的顺序号记录值的功能,其中,
任意一个顺序号记录值属于两个数值边界的范围。
具体的,所述安全控制单元被配置为具有在所述前一个缓冲单元的顺序号记录值等于所述两个数值边界的范围内的两个数值边界中一者时,在加所述固定值或减所述固定值后,所述当前的缓冲单元的顺序号记录值置为另一者的功能。
具体的,所述安全控制单元被配置为具有确定与所述业务号对应的缓冲单元的顺序号记录值的相对最小者的功能。
具体的,所述安全控制单元被配置为具有:
确定与所述业务号对应的缓冲单元中顺序号记录值是否存在等于两个数值边界中最小值的顺序号记录值,
若存在等于所述最小值的顺序号记录值,则确定与所述业务号对应的缓冲单元中顺序号记录值是否存在等于所述两个数值边界中最大值的顺序号记录值,
若存在等于所述最大值的顺序号记录值,则以所述最大值为与所述业务号对应的缓冲单元中顺序号记录值的相对最小者,或,以存在的、所述最大值的相邻较小值为与所述业务号对应的缓冲单元中顺序号记录值的相对最小者,
若不存在等于所述最大值的顺序号记录值,则以所述最小值为与所述业务号对应的缓冲单元中顺序号记录值的相对最小者,
若不存在等于所述最小值的顺序号记录值,则直接按与所述业务号对应的缓冲单元中顺序号记录值的大小,获得相对大小顺序。
具体的,所述安全控制单元被配置为具有优先处理与所述业务号对应的缓冲单元中的接收数据或发送数据的功能,其中,
被优先处理的缓冲单元的顺序号记录值为与所述业务号对应的缓冲单元的顺序号记录值的相对最小者。
具体的,任意一个缓冲单元中接收缓冲区和发送缓冲区的数据结构相同。
具体的,所述数据结构包括:
业务号,具有与业务分类对应的记录值;
状态号,具有与所述任意一个缓冲单元中发送缓冲区为空闲或为有数据对应的记录值,或者具有与所述任意一个缓冲单元中接收缓冲区为空闲对应的记录值,或者具有与所述任意一个缓冲单元中接收缓冲区为有数据对应的顺序号记录值,其中,所述顺序号记录值为所述任意一个缓冲单元中接收缓冲区中数据处理命令的接收顺序对应的数值;
缓冲区,具有接收数据或发送数据的存储地址空间。
具体的,所述安全控制单元具有掉电保护功能和密钥管理功能。
再一方面,本发明实施例提供一种电子设备,该电子设备包括:
至少一个处理器;
存储器,与所述至少一个处理器连接;
其中,所述存储器存储有能被所述至少一个处理器执行的指令,所述至少一个处理器通过执行所述存储器存储的指令,所述至少一个处理器通过执行所述存储器存储的指令实现前述的方法。
又一方面,本发明实施例提供一种计算机可读存储介质,存储有计算机指令,当所述计算机指令在计算机上运行时,使得计算机执行前述的方法。
本发明实施例的其它特征和优点将在随后的具体实施方式部分予以详细说明。
附图说明
附图是用来提供对本发明实施例的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本发明实施例,但并不构成对本发明实施例的限制。在附图中:
图1为常规的业务请求与终端交互流程示意图;
图2为常规的业务的请求方式与终端响应方式示意图;
图3为通用的业务的状态字与定义对照示意图;
图4为本发明实施例的主要步骤示意图;
图5为本发明实施例的示例性交互过程和安全MCU主要模块示意图;
图6为本发明实施例的与写入命令对应的接收缓冲区和发送缓冲区的状态和定义对照示意图;
图7为本发明实施例的与读取命令对应的接收缓冲区和发送缓冲区的状态和定义对照示意图;
图8为本发明实施例的示例性安全MCU数据接收和发送流程示意图;
图9为本发明实施例的示例性安全MCU数据处理流程示意图。
具体实施方式
以下结合附图对本发明实施例的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本发明实施例,并不用于限制本发明实施例。
实施例1
本发明实施例提供了安全通信方法,如图4,该安全通信方法包括:
接收业务请求,并获得所述业务请求中的命令字和业务号;
确定与所述命令字的类型对应的接收缓冲区和发送缓冲区的联合空闲状态;
按所述业务号对所述接收缓冲区和所述发送缓冲区执行空闲状态查询;
在所述接收缓冲区和所述发送缓冲区的空闲状态符合所述联合空闲状态时,执行与所述业务号和所述命令字的类型匹配的业务数据响应,或者,
在所述接收缓冲区和所述发送缓冲区的空闲状态不符合所述联合空闲状态时,响应状态字。
在一些具体实施中,可以使用一颗带安全功能的MCU,通过软件逻辑的处理,执行前述的方法,实现单芯片多安全业务的融合安全MCU;如图5(N为正整数,XX~XX标记表示同一个业务号对应的指令列表可以是多个指令列表),根据不同的业务,安全MCU设置不同的指令列表,对应不同的业务处理和文件系统,可以共用一套掉电保护功能,安全MCU对指令列表内容不做限制,即允许多个列表使用相同的指令,但指令的处理函数要做区分,例如明确所处理的业务号。以下介绍以支持3个业务为例。
具体的,空闲状态或联合空闲状态可以包括有数据的状态、或空闲状态,联合空闲状态中还可以包括有数据的状态和空闲状态,联合空闲状态中还可以有接收缓冲区和发送缓冲区中一者不受关注的状态(如图6和图7中,XX标记),也即对于一些情况中,可以只关注接收缓冲区和发送缓冲区中另一者的状态是有数据的状态或空闲状态。
对于业务数据响应,可以包括对待处理的业务数据接收的处理,对接收缓冲区中的接收数据的处理,对发送缓冲区中的发送数据的处理,以及三种处理过程中或完成后响应状态字
进一步地,所述接收缓冲区和所述发送缓冲区,具有相同的数据结构。所述数据结构包括:业务号,具有与业务分类对应的记录值;状态号,具有与所述发送缓冲区为空闲或为有数据对应的记录值,或者具有与所述接收缓冲区为空闲对应的记录值,或者具有与所述接收缓冲区为有数据对应的顺序号记录值,其中,所述顺序号记录值为所述接收缓冲区中数据处理命令的接收顺序对应的数值;缓冲区,具有接收数据或发送数据的存储地址空间。
对于数据结构,为实现业务的区分和数据的缓存,提供了一种数据格式(或结构),可被接收缓冲区和发送缓冲区共用,该数据格式具体可以为:
其中,list_num:长度1个字节,代表业务号,比如支持3类业务,该值为1~3;
list_status:长度1个字节,作为发送缓冲区数据结构,该值为0表示,无响应数据可取,为1表示有响应数据待取走;作为接收缓冲区数据结构,该值为0表示芯片空闲可以接收数据,为0x1~0xFF(16进制数,两个数值边界分别为0x1和0xFF)的循环表示芯片忙,并且代表接收数据的顺序(顺序号记录值),主程序按照顺序处理命令,保证命令“先进入先处理”;
list_buf:长度0x8d0+10,作为接收/发送数据的缓冲区。
MCU接收到数据后,可以检查数据帧格式和业务号是否正确,具体可以包括:
确定所述业务请求的数据格式正确,或不正确时,响应状态字;
确定所述业务号的记录正确,或不正确时,响应状态字;
确定所述命令字的记录正确,或不正确时,响应状态字。
进一步地,可以根据命令的类型,区分是“写入命令”还是“读取命令”。
具体可以包括:在确定所述命令字的类型为读取命令时,
以确定接收缓冲区为有数据和发送缓冲区为空闲的判断返回为否,作为第一联合空闲状态,然后,
以确定所述接收缓冲区为空闲和所述发送缓冲区为空闲的判断返回为否,作为第二联合空闲状态,其中,
所述第一联合空闲状态和所述第二联合空闲状态为与所述读取命令对应的联合空闲状态。
如果是读取命令,根据业务号查询接收和发送缓冲区的状态,如图6。
对于“无待读取数据”和“当前模块通讯忙”,安全MCU直接返回状态字。对于“有待读取的数据”则将响应数据发送出去,并将发送缓冲区的状态置为“空闲”。
此外,在确定所述命令字的类型为写入命令时,
以确定接收缓冲区为空闲的判断返回为否,和确定发送缓冲区为空闲的判断返回为否,作为与所述写入命令对应的联合空闲状态。
如果是写入命令,根据业务号查询接收和发送缓冲区是否为“空闲”状态,如果接收缓冲区为非空闲或者发送缓冲区为非空闲,安全MCU直接返回“当前模块通讯忙”状态字。都为空闲状态,则表示安全MCU可以正常接收数据,返回“指令接收成功”状态字,状态说明如图7。
具体的,数据接收和发送的流程如图8,此流程中,业务号是指数据结构中的list_num,状态号是指数据结构中的list_status,apdu_snd_buf为应用协议数据单元的发送队列。
对于与所述读取命令对应的联合空闲状态,可以根据业务号,查询接收缓冲区有数据并且发送缓冲区的状态为空闲,然后可以根据业务号,查询接收缓冲区空闲并且发送缓冲区的状态为空闲。
对于读取命令,相应的处理或响应,具体可以包括:
置所述业务请求的处理状态为正常态;
搬移所述发送缓冲区内的数据至应用协议数据单元的发送队列;
在所述发送队列中,封装所述业务号、命令字、搬移的数据(data)和数据校验符(如LRC,Longitudinal Redundancy Check,纵向冗余校验)为发送数据;
发送所述发送数据,发送完成后将所述发送缓冲区的空闲状态置为空闲;其中,任意的记录值可以包括无记录(空)、有数值或有数据。
对于与所述写入命令对应的联合空闲状态,可以根据业务号,查询接收和发送缓冲区的状态是否都为空闲。
对于写入命令,相应的处理或响应,具体可以包括:
置所述业务请求的处理状态为正常态,并允许接收与所述业务号对应的接收数据;
确定与接收获得的数据处理命令的数量对应的顺序号记录值,并在所述接收缓冲区中记录所述业务号和所述顺序号记录值;
搬移接收获得的待处理的业务数据至所述接收缓冲区内;
响应所述接收数据已被接收成功的状态字。
上述内容中,正常态可以用于表达安全MCU当前正在处理的业务或业务分类的执行完成度(如完成或未完成进行中等),期间如果有该业务的业务请求再次发送,可以反馈一个预定的正常态的状态字。
进一步地,在确定接收获得了任意一个数据处理命令时,在两个数值边界的范围内对接收命令列表内对象数量变量(如g_list_rcvcmd_num)的前次值加固定值或减所述固定值,获得所述接收命令列表内对象数量变量的当前值,其中,
所述接收命令列表内对象包括已接收获得的数据处理命令;
将所述当前值作为所述任意一个数据处理命令的顺序号记录值,其中,
所述前次值和所述当前值属于在所述两个数值边界的范围内;
其中,数据处理命令可以包括前述的命令字对应的命令、或后续进一步接收的数据处理命令,数据处理命令可以包括MCU可用的或预配置的指令,或MCU可通过函数main将数据处理命令映射为一个或多个指令;接收命令列表可以放置在接收缓冲区中,也可以单独指定存储空间的地址位置。
对于顺序号记录值,可以以循环方式,在所述前次值等于所述两个数值边界的范围内的两个数值边界中一者时,在加所述固定值或减所述固定值后,所述当前值置为另一者,例如两个数值边界为0x1(或1或0x01)至0xFF,在两者之间进行循环(清零可以是0xFF的下一个数值置为0x1),配置各个命令的顺序号记录值。
本发明实施例还提供了用于数据缓冲区的数据处理方法,数据缓冲区可以是前述的通信方法中的缓冲区,如可以是前述的接收缓冲区或发送缓冲区,如图9,该数据处理方法可以包括:
确定接收缓冲区为空闲的判断返回为否;
确定所述接收缓冲区中顺序号记录值的相对大小顺序,其中,
所述接收缓冲区具有通过业务请求获得的多个业务号、以及与各个业务号对应的顺序号记录值和待处理的业务数据;
查询与相对最小的顺序号记录值对应的业务号的指令列表,执行所述指令列表的指令分发,放置指令分发后所述业务数据的处理结果于发送缓冲区;
将所述接收缓冲区更新为空闲,将所述发送缓冲区更新为有数据,将与相对最小的顺序号记录值对应的业务号记录至所述发送缓冲区。
数据处理过程是程序main函数处理流程,在完成初始化(如将上次函数计算中的值复原)后,访问接收缓冲区,找到顺序号(顺序号占用一个字节,从1~0xFF循环)最小的业务,代表是接收数据中最先进入安全MCU中的业务数据。
对于确定所述接收缓冲区中顺序号记录值的相对大小顺序,具体可以包括:
确定所述接收缓冲区中顺序号记录值是否存在等于两个数值边界中最小值的顺序号记录值,该最小值可以就是数值边界(如0x1),
若存在等于所述最小值的顺序号记录值,则确定所述接收缓冲区中顺序号记录值是否存在等于所述两个数值边界中最大值的顺序号记录值,该最大值可以就是数值边界(如0xFF),
若存在等于所述最大值的顺序号记录值,则以所述最大值为所述接收缓冲区中顺序号记录值的相对最小者,或,以存在的、所述最大值的相邻较小值为所述接收缓冲区中顺序号记录值的相对最小者,该相邻较小值可以是大的数值边界减固定值后的值(如0xFE),
若不存在等于所述最大值的顺序号记录值,则以所述最小值为所述接收缓冲区中顺序号记录值的相对最小者,
若不存在等于所述最小值的顺序号记录值,则直接按所述接收缓冲区中顺序号记录值的大小,获得相对大小顺序,
其中,任意一个顺序号记录值属于所述两个数值边界的范围。
对于顺序号中有边界值0x1、0xFE、0xFF,或者0x1、0x2、0xFF的情况特殊处理,按照0xFE、0xFF、0x01,或者0xFF、0x1、0x2的顺序执行,其他情况取三个值中的最小值。
找到最先进入安全MCU的业务之后,按照业务号找到对应的指令列表进行指令分发,当指令执行完毕后,将处理后的数据放入发送缓冲区,并将接收缓冲区的状态置为“空闲”,即可以接收新的业务包。将发送缓冲区的状态置为忙,即“读取命令”可得到该业务的响应。将处理完的业务号也写入发送缓冲区,组成“业务号+状态+数据”的格式。
本发明实施例不同业务通过跳转不同的指令列表进行业务分发处理,配合独立的文件系统,以软件逻辑替代硬件实现;
本发明实施例在MCU资源充足的前提下,能实现连续的业务收发指令处理,以空间换取时间,如果支持业务数量为M,单业务缓冲区数量为N,则单次能接收的业务指令数量的最大值为M*N*2;
本发明实施例将所有的业务指令进行排队,值为1~0xFF的循环,所有业务数据遵循“先进入先处理”原则;
本发明实施例的数据存储格式,对于数据的接收和发送通用,发送时list_status值0与1代表无和有响应待取走,接收时list_status值0与1~0xFF代表可接收和芯片忙,非0值还可代表接收指令的先后顺序。
实施例2
本发明实施例与实施例1属于同一发明构思,本发明实施例提供了安全通信系统,该安全通信系统包括:
接收模块,用于接收业务请求,并获得所述业务请求中的命令字和业务号;
状态确定模块,用于确定与所述命令字的类型对应的接收缓冲区和发送缓冲区的联合空闲状态;
状态查询模块,用于按所述业务号对所述接收缓冲区和所述发送缓冲区执行空闲状态查询;
响应模块,用于在所述接收缓冲区和所述发送缓冲区的空闲状态符合所述联合空闲状态时,执行与所述业务号和所述命令字的类型匹配的业务数据响应,或者,
在所述接收缓冲区和所述发送缓冲区的空闲状态不符合所述联合空闲状态时,响应状态字。
具体的,该安全通信系统还包括:数据处理模块;
所述数据处理模块,用于:
确定所述接收缓冲区为空闲的判断返回为否,
确定所述接收缓冲区中顺序号记录值的相对大小顺序,其中,
所述接收缓冲区具有通过业务请求获得的多个业务号、以及与各个业务号对应的顺序号记录值和待处理的业务数据,
查询与相对最小的顺序号记录值对应的业务号的指令列表,执行所述指令列表的指令分发,放置指令分发后的处理结果于所述发送缓冲区,
将所述接收缓冲区更新为空闲,将所述发送缓冲区更新为有数据,将与相对最小的顺序号记录值对应的业务号记录至所述发送缓冲区。
实施例3
本发明实施例与实施例1和2均属于同一发明构思,本发明实施例提供了安全通信装置,该安全通信装置包括:
安全控制单元,被配置为具有接收业务请求和/或执行业务数据响应的功能,其中,
所述安全控制单元被配置为具有获得所述业务请求中的命令字和业务号的功能,
所述安全控制单元具有存储介质,所述存储介质被配置有接收缓冲区和发送缓冲区,
所述安全控制单元被配置为具有确定与所述命令字的类型对应的接收缓冲区和发送缓冲区的联合空闲状态的功能,
所述安全控制单元被配置为具有按所述业务号对所述接收缓冲区和所述发送缓冲区执行空闲状态查询的功能,
所述安全控制单元被配置为具有在所述接收缓冲区和所述发送缓冲区的空闲状态符合所述联合空闲状态时,执行与所述业务号和所述命令字的类型匹配的业务数据响应,或者,在所述接收缓冲区和所述发送缓冲区的空闲状态不符合所述联合空闲状态时,响应状态字的功能。
具体的,所述安全控制单元具有掉电保护功能和密钥管理功能,例如,掉电保护功能(或断电保护功能)可以通过设置统一的接口和选用具有掉电不丢失的存储器供不同的业务共用该功能,密钥管理功能可以是密钥的生成、存储、分类、更新的方法,可以至少使用一套任意的成熟的密钥管理方法实现该功能。
具体的,所述存储介质被配置有指令列表和文件系统;
所述指令列表存储有与数据处理命令对应的多个指令,其中,所述数据处理命令属于在所述接收缓冲区中与所述业务号对应的接收数据;
所述多个指令被配置为具有在所述文件系统中执行与所述业务号对应的待处理的业务数据处理的功能,其中,执行过程可以根据具体业务需求,按照预置的指令分发、业务处理规则或流程步骤进行。
具体的,所述存储介质被配置有至少两个具有顺序号记录值的缓冲单元,所述缓冲单元包括一个接收缓冲区和一个发送缓冲区。
具体的,任意一个缓冲单元中接收缓冲区和发送缓冲区的数据结构相同。
具体的,所述数据结构包括:
业务号,具有与业务分类(每个业务分类可以与业务号一一对应)对应的记录值;
状态号,具有与所述任意一个缓冲单元中发送缓冲区为空闲或为有数据对应的记录值,或者具有与所述任意一个缓冲单元中接收缓冲区为空闲对应的记录值,或者具有与所述任意一个缓冲单元中接收缓冲区为有数据对应的顺序号记录值,其中,所述顺序号记录值为所述任意一个缓冲单元中接收缓冲区中数据处理命令的接收顺序对应的数值;
缓冲区,具有接收数据或发送数据的存储地址空间。
具体的,所述安全控制单元被配置为具有根据所述存储介质的存储空间初始化或删除一个或多个缓冲单元的功能,其中,初始化可以是按实施例1中定义的数据格式分配一对数据格式相同的接收缓冲区和发送缓冲区。
具体的,所述安全控制单元被配置为具有根据与所述业务号对应的接收数据或发送数据的数据量初始化或删除一个或多个缓冲单元的功能,如业务1数据量多,则初始化增加与其业务号对应的缓冲单元的个数,实现用空间占用换取业务1的更多的处理时间。
缓冲单元也可以有顺序号记录值,获得值方式和处理优先顺序与接收缓冲区的顺序号记录值思路一致,具体的,所述安全控制单元被配置为具有在两个数值边界的范围内对前一个缓冲单元的顺序号记录值加固定值或减所述固定值,获得当前的缓冲单元的顺序号记录值的功能,其中,
任意一个顺序号记录值属于两个数值边界的范围。
所述安全控制单元被配置为具有在所述前一个缓冲单元的顺序号记录值等于所述两个数值边界的范围内的两个数值边界中一者时,在加所述固定值或减所述固定值后,所述当前的缓冲单元的顺序号记录值置为另一者的功能。
所述安全控制单元被配置为具有确定与所述业务号对应的缓冲单元的顺序号记录值的相对最小者的功能。
所述安全控制单元被配置为具有:
确定与所述业务号对应的缓冲单元中顺序号记录值是否存在等于两个数值边界中最小值的顺序号记录值,
若存在等于所述最小值的顺序号记录值,则确定与所述业务号对应的缓冲单元中顺序号记录值是否存在等于所述两个数值边界中最大值的顺序号记录值,
若存在等于所述最大值的顺序号记录值,则以所述最大值为与所述业务号对应的缓冲单元中顺序号记录值的相对最小者,或,以存在的、所述最大值的相邻较小值为与所述业务号对应的缓冲单元中顺序号记录值的相对最小者,
若不存在等于所述最大值的顺序号记录值,则以所述最小值为与所述业务号对应的缓冲单元中顺序号记录值的相对最小者,
若不存在等于所述最小值的顺序号记录值,则直接按与所述业务号对应的缓冲单元中顺序号记录值的大小,获得相对大小顺序。
如业务1接收缓冲区和发送缓冲区成对增加,这样可以缓存更多的同一业务的数据,并将所有业务所有接收缓冲区进行从1到0xFF的循环排序,值越小代表最先进入,如果有3个队列,0xFE、0xFF、0x01或者0xFF、0x01、0x02都存在时,做特殊处理,处理顺序为0xFE-0xFF-0x01,0xFF-0x01-0x02,保证在处理过程中遵循“先进入先处理”的原则,也即,所述安全控制单元被配置为具有优先处理与所述业务号对应的缓冲单元中的接收数据或发送数据的功能,其中,被优先处理的缓冲单元的顺序号记录值为与所述业务号对应的缓冲单元的顺序号记录值的相对最小者。
在具体实施中,可以对安全MCU也作出了相应的要求,相对于硬件集成方案中MCU只作为接口和业务分发功能,在本发明实施中对安全MCU提出了更高的要求,一是可以携带安全功能,可以加载国密算法,可以兼容硬件集成方案里的安全模块算法功能;二是可以选用大存储容量,如包含闪存FLASH和内存RAM,支持的业务数量越多,代码量、文件系统都会增加,也需要更大的FLASH,数据缓冲区增多,需要更多RAM空间;三是MCU主频可以选用高主频,即处理速度要快。在数据处理过程和以多个缓冲单元实现空间占用换取处理时间的步骤中,可以要求安全MCU去查询顺序号和状态,这个过程消耗的时间会跟安全MCU的主频密切相关;四是业务的接收可以采用中断方式,相比于现有“MCU+安全模块”的安全模块同时处理,安全MCU在处理业务时同一时间段可以优选为处理一种业务,其他业务可以只能处于缓存状态,等待处理,频繁地发送的读响应指令可以打断安全MCU的处理。
本发明实施例安全模块少且硬件成本低,能用1颗带安全功能的MCU可以替代1颗MCU+3颗安全模块,缩减硬件数量,减少硬件电路板面积,对MCU与安全模块支持的接口数也不做要求。
本发明实施例统一了密钥管理,3颗安全模块的密钥管理需要3套密钥管理方法,变成1颗带安全功能的MCU后可以统一为共用1套密钥管理方法。
本发明实施例可扩展性更强,随着业务种类的增加,本发明实施例安全MCU的存储容量足够大,即可通过软件逻辑实现业务的扩展,而无需对硬件电路进行扩展改造。
本发明实施例节省接口传输时间,安全MCU对外只有一个数据输入输出接口,不再外接安全模块后,减少了MCU和安全模块接口通信时间。
以上结合附图详细描述了本发明实施例的可选实施方式,但是,本发明实施例并不限于上述实施方式中的具体细节,在本发明实施例的技术构思范围内,可以对本发明实施例的技术方案进行多种简单变型,这些简单变型均属于本发明实施例的保护范围。
另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合。为了避免不必要的重复,本发明实施例对各种可能的组合方式不再另行说明。
本领域技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序存储在一个存储介质中,包括若干指令用以使得单片机、芯片或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
此外,本发明实施例的各种不同的实施方式之间也可以进行任意组合,只要其不违背本发明实施例的思想,其同样应当视为本发明实施例所公开的内容。
Claims (29)
1.一种安全通信方法,应用于单颗安全MCU芯片,其特征在于,该安全通信方法包括:
接收业务请求,并获得所述业务请求中的命令字和业务号;
确定与所述命令字的类型对应的接收缓冲区和发送缓冲区的联合空闲状态;
按所述业务号对所述接收缓冲区和所述发送缓冲区执行空闲状态查询;
在所述接收缓冲区和所述发送缓冲区的空闲状态符合所述联合空闲状态时,执行与所述业务号和所述命令字的类型匹配的业务数据响应,或者,
在所述接收缓冲区和所述发送缓冲区的空闲状态不符合所述联合空闲状态时,响应状态字。
2.根据权利要求1所述的安全通信方法,其特征在于,在所述获得所述业务请求中的命令字和业务号之后,且在所述确定与所述命令字的类型对应的接收缓冲区和发送缓冲区的联合空闲状态之前,还包括以下一项或多项:
确定所述业务请求的数据格式正确,或不正确时,响应状态字;
确定所述业务号的记录正确,或不正确时,响应状态字;
确定所述命令字的记录正确,或不正确时,响应状态字。
3.根据权利要求1所述的安全通信方法,其特征在于,所述确定与所述命令字的类型对应的接收缓冲区和发送缓冲区的联合空闲状态,包括:
在确定所述命令字的类型为读取命令时,
以确定接收缓冲区为有数据和发送缓冲区为空闲的判断返回为否,作为第一联合空闲状态,然后,
以确定所述接收缓冲区为空闲和所述发送缓冲区为空闲的判断返回为否,作为第二联合空闲状态,其中,
所述第一联合空闲状态和所述第二联合空闲状态为与所述读取命令对应的联合空闲状态。
4.根据权利要求3所述的安全通信方法,其特征在于,所述在所述接收缓冲区和所述发送缓冲区的空闲状态符合所述联合空闲状态时,执行与所述业务号和所述命令字的类型匹配的业务数据响应,包括:
置所述业务请求的处理状态为正常态;
搬移所述发送缓冲区内的数据至应用协议数据单元的发送队列;
在所述发送队列中,封装所述业务号、命令字、搬移的数据和数据校验符为发送数据;
发送所述发送数据,发送完成后将所述发送缓冲区的空闲状态置为空闲。
5.根据权利要求1所述的安全通信方法,其特征在于,所述确定与所述命令字的类型对应的接收缓冲区和发送缓冲区的联合空闲状态,包括:
在确定所述命令字的类型为写入命令时,
以确定接收缓冲区为空闲的判断返回为是,和确定发送缓冲区为空闲的判断返回为是,作为与所述写入命令对应的联合空闲状态。
6.根据权利要求5所述的安全通信方法,其特征在于,所述在所述接收缓冲区和所述发送缓冲区的空闲状态符合所述联合空闲状态时,执行与所述业务号和所述命令字的类型匹配的业务数据响应,包括:
置所述业务请求的处理状态为正常态,并允许接收与所述业务号对应的接收数据;
确定与接收获得的数据处理命令的数量对应的顺序号记录值,并在所述接收缓冲区中记录所述业务号和所述顺序号记录值;
搬移接收获得的待处理的业务数据至所述接收缓冲区内;
响应所述接收数据已被接收成功的状态字。
7.根据权利要求6所述的安全通信方法,其特征在于,所述确定与接收获得的数据处理命令的数量对应的顺序号记录值,包括:
在确定接收获得了任意一个数据处理命令时,在两个数值边界的范围内对接收命令列表内对象数量变量的前次值加固定值或减所述固定值,获得所述接收命令列表内对象数量变量的当前值,其中,
所述接收命令列表内对象包括已接收获得的数据处理命令;
将所述当前值作为所述任意一个数据处理命令的顺序号记录值,其中,
所述前次值和所述当前值属于在所述两个数值边界的范围内。
8.根据权利要求7所述的安全通信方法,其特征在于,所述确定与接收获得的数据处理命令的数量对应的顺序号记录值,其中,
在所述前次值等于所述两个数值边界的范围内的两个数值边界中一者时,在加所述固定值或减所述固定值后,所述当前值置为另一者。
9.根据权利要求1至8中任意一项所述的安全通信方法,其特征在于,该安全通信方法中,
所述接收缓冲区和所述发送缓冲区,具有相同的数据结构。
10.根据权利要求9所述的安全通信方法,其特征在于,该安全通信方法中,所述数据结构包括:
业务号,具有与业务分类对应的记录值;
状态号,具有与所述发送缓冲区为空闲或为有数据对应的记录值,或者具有与所述接收缓冲区为空闲对应的记录值,或者具有与所述接收缓冲区为有数据对应的顺序号记录值,其中,所述顺序号记录值为所述接收缓冲区中数据处理命令的接收顺序对应的数值;
缓冲区,具有接收数据或发送数据的存储地址空间。
11.一种用于数据缓冲区的数据处理方法,该数据缓冲区是权利要求1至10中任意一项所述的安全通信方法中的接收缓冲区和发送缓冲区,其特征在于,该数据处理方法包括:
确定接收缓冲区为空闲的判断返回为否;
确定所述接收缓冲区中顺序号记录值的相对大小顺序,其中,
所述接收缓冲区具有通过业务请求获得的多个业务号、以及与各个业务号对应的顺序号记录值和待处理的业务数据;
查询与相对最小的顺序号记录值对应的业务号的指令列表,执行所述指令列表的指令分发,放置指令分发后所述业务数据的处理结果于发送缓冲区;
将所述接收缓冲区更新为空闲,将所述发送缓冲区更新为有数据,将与相对最小的顺序号记录值对应的业务号记录至所述发送缓冲区。
12.根据权利要求11所述的用于数据缓冲区的数据处理方法,其特征在于,所述确定所述接收缓冲区中顺序号记录值的相对大小顺序,包括:
确定所述接收缓冲区中顺序号记录值是否存在等于两个数值边界中最小值的顺序号记录值,
若存在等于所述最小值的顺序号记录值,则确定所述接收缓冲区中顺序号记录值是否存在等于所述两个数值边界中最大值的顺序号记录值,
若存在等于所述最大值的顺序号记录值,则以所述最大值为所述接收缓冲区中顺序号记录值的相对最小者,或,以存在的、所述最大值的相邻较小值为所述接收缓冲区中顺序号记录值的相对最小者,
若不存在等于所述最大值的顺序号记录值,则以所述最小值为所述接收缓冲区中顺序号记录值的相对最小者,
若不存在等于所述最小值的顺序号记录值,则直接按所述接收缓冲区中顺序号记录值的大小,获得相对大小顺序,
其中,任意一个顺序号记录值属于所述两个数值边界的范围。
13.一种安全通信系统,应用于单颗安全MCU芯片,其特征在于,该安全通信系统包括:
接收模块,用于接收业务请求,并获得所述业务请求中的命令字和业务号;
状态确定模块,用于确定与所述命令字的类型对应的接收缓冲区和发送缓冲区的联合空闲状态;
状态查询模块,用于按所述业务号对所述接收缓冲区和所述发送缓冲区执行空闲状态查询;
响应模块,用于在所述接收缓冲区和所述发送缓冲区的空闲状态符合所述联合空闲状态时,执行与所述业务号和所述命令字的类型匹配的业务数据响应,或者,
在所述接收缓冲区和所述发送缓冲区的空闲状态不符合所述联合空闲状态时,响应状态字。
14.根据权利要求13所述的安全通信系统,其特征在于,该安全通信系统还包括:数据处理模块;
所述数据处理模块,用于:
确定所述接收缓冲区为空闲的判断返回为否,
确定所述接收缓冲区中顺序号记录值的相对大小顺序,其中,
所述接收缓冲区具有通过业务请求获得的多个业务号、以及与各个业务号对应的顺序号记录值和待处理的业务数据,
查询与相对最小的顺序号记录值对应的业务号的指令列表,执行所述指令列表的指令分发,放置指令分发后的处理结果于所述发送缓冲区,
将所述接收缓冲区更新为空闲,将所述发送缓冲区更新为有数据,将与相对最小的顺序号记录值对应的业务号记录至所述发送缓冲区。
15.一种安全通信装置,应用于单颗安全MCU芯片,其特征在于,该安全通信装置包括:
安全控制单元,被配置为具有接收业务请求和/或执行业务数据响应的功能,其中,
所述安全控制单元被配置为具有获得所述业务请求中的命令字和业务号的功能,
所述安全控制单元具有存储介质,所述存储介质被配置有接收缓冲区和发送缓冲区,
所述安全控制单元被配置为具有确定与所述命令字的类型对应的接收缓冲区和发送缓冲区的联合空闲状态的功能,
所述安全控制单元被配置为具有按所述业务号对所述接收缓冲区和所述发送缓冲区执行空闲状态查询的功能,
所述安全控制单元被配置为具有在所述接收缓冲区和所述发送缓冲区的空闲状态符合所述联合空闲状态时,执行与所述业务号和所述命令字的类型匹配的业务数据响应,或者,在所述接收缓冲区和所述发送缓冲区的空闲状态不符合所述联合空闲状态时,响应状态字的功能。
16.根据权利要求15所述的安全通信装置,其特征在于,所述存储介质被配置有指令列表和文件系统;
所述指令列表存储有与数据处理命令对应的多个指令,其中,所述数据处理命令属于在所述接收缓冲区中与所述业务号对应的接收数据;
所述多个指令被配置为具有在所述文件系统中执行与所述业务号对应的待处理的业务数据处理的功能。
17.根据权利要求15所述的安全通信装置,其特征在于,所述存储介质被配置有至少两个具有顺序号记录值的缓冲单元,所述缓冲单元包括一个接收缓冲区和一个发送缓冲区。
18.根据权利要求17所述的安全通信装置,其特征在于,所述安全控制单元被配置为具有根据所述存储介质的存储空间初始化或删除一个或多个缓冲单元的功能。
19.根据权利要求17所述的安全通信装置,其特征在于,所述安全控制单元被配置为具有根据与所述业务号对应的接收数据或发送数据的数据量初始化或删除一个或多个缓冲单元的功能。
20.根据权利要求17所述的安全通信装置,其特征在于,所述安全控制单元被配置为具有在两个数值边界的范围内对前一个缓冲单元的顺序号记录值加固定值或减所述固定值,获得当前的缓冲单元的顺序号记录值的功能,其中,
任意一个顺序号记录值属于两个数值边界的范围。
21.根据权利要求20所述的安全通信装置,其特征在于,所述安全控制单元被配置为具有在所述前一个缓冲单元的顺序号记录值等于所述两个数值边界的范围内的两个数值边界中一者时,在加所述固定值或减所述固定值后,所述当前的缓冲单元的顺序号记录值置为另一者的功能。
22.根据权利要求21所述的安全通信装置,其特征在于,所述安全控制单元被配置为具有确定与所述业务号对应的缓冲单元的顺序号记录值的相对最小者的功能。
23.根据权利要求22所述的安全通信装置,其特征在于,所述安全控制单元被配置为具有:
确定与所述业务号对应的缓冲单元中顺序号记录值是否存在等于两个数值边界中最小值的顺序号记录值,
若存在等于所述最小值的顺序号记录值,则确定与所述业务号对应的缓冲单元中顺序号记录值是否存在等于所述两个数值边界中最大值的顺序号记录值,
若存在等于所述最大值的顺序号记录值,则以所述最大值为与所述业务号对应的缓冲单元中顺序号记录值的相对最小者,或,以存在的、所述最大值的相邻较小值为与所述业务号对应的缓冲单元中顺序号记录值的相对最小者,
若不存在等于所述最大值的顺序号记录值,则以所述最小值为与所述业务号对应的缓冲单元中顺序号记录值的相对最小者,
若不存在等于所述最小值的顺序号记录值,则直接按与所述业务号对应的缓冲单元中顺序号记录值的大小,获得相对大小顺序。
24.根据权利要求22所述的安全通信装置,其特征在于,所述安全控制单元被配置为具有优先处理与所述业务号对应的缓冲单元中的接收数据或发送数据的功能,其中,
被优先处理的缓冲单元的顺序号记录值为与所述业务号对应的缓冲单元的顺序号记录值的相对最小者。
25.根据权利要求17至24中任意一项所述的安全通信装置,其特征在于,任意一个缓冲单元中接收缓冲区和发送缓冲区的数据结构相同。
26.根据权利要求25所述的安全通信装置,其特征在于,所述数据结构包括:
业务号,具有与业务分类对应的记录值;
状态号,具有与所述任意一个缓冲单元中发送缓冲区为空闲或为有数据对应的记录值,或者具有与所述任意一个缓冲单元中接收缓冲区为空闲对应的记录值,或者具有与所述任意一个缓冲单元中接收缓冲区为有数据对应的顺序号记录值,其中,所述顺序号记录值为所述任意一个缓冲单元中接收缓冲区中数据处理命令的接收顺序对应的数值;
缓冲区,具有接收数据或发送数据的存储地址空间。
27.根据权利要求15所述的安全通信装置,其特征在于,所述安全控制单元具有掉电保护功能和密钥管理功能。
28.一种电子设备,其特征在于,该电子设备包括:
至少一个处理器;
存储器,与所述至少一个处理器连接;
其中,所述存储器存储有能被所述至少一个处理器执行的指令,所述至少一个处理器通过执行所述存储器存储的指令实现权利要求1至12中任意一项权利要求所述的方法。
29.一种计算机可读存储介质,存储有计算机指令,当所述计算机指令在计算机上运行时,使得计算机执行权利要求1至12中任意一项权利要求所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011048705.2A CN112235268B (zh) | 2020-09-29 | 2020-09-29 | 安全通信方法、系统及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011048705.2A CN112235268B (zh) | 2020-09-29 | 2020-09-29 | 安全通信方法、系统及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112235268A CN112235268A (zh) | 2021-01-15 |
CN112235268B true CN112235268B (zh) | 2023-01-24 |
Family
ID=74121218
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011048705.2A Active CN112235268B (zh) | 2020-09-29 | 2020-09-29 | 安全通信方法、系统及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112235268B (zh) |
Citations (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5594868A (en) * | 1994-03-24 | 1997-01-14 | Hitachi, Ltd. | Processor unit for a parallel processor system discards a received packet when a reception buffer has insufficient space for storing the packet |
US6463072B1 (en) * | 1999-12-28 | 2002-10-08 | Intel Corporation | Method and apparatus for sharing access to a bus |
CN1427598A (zh) * | 2001-12-21 | 2003-07-02 | 深圳市中兴通讯股份有限公司上海第二研究所 | 多通道数据链路协议处理器及其处理方法 |
CN101335667A (zh) * | 2007-06-26 | 2008-12-31 | 中兴通讯股份有限公司 | 数据传输方法 |
CN101778492A (zh) * | 2009-12-29 | 2010-07-14 | 深圳市远望谷信息技术股份有限公司 | 移动通信终端射频识别的方法及其设备 |
JP2010166138A (ja) * | 2009-01-13 | 2010-07-29 | Hitachi Ltd | バッファ制御方法およびパケット転送装置 |
CN101815034A (zh) * | 2010-03-26 | 2010-08-25 | 迈普通信技术股份有限公司 | 任务间消息发送方法及通信设备 |
CN102201938A (zh) * | 2011-06-14 | 2011-09-28 | 浙江大学 | 基于通道的CanTp层通信管理方法 |
CN102932275A (zh) * | 2012-11-20 | 2013-02-13 | 中国空间技术研究院 | 一种应用于容延时网络的优先级报文转发方法 |
CN105024936A (zh) * | 2015-06-02 | 2015-11-04 | 贵阳语玩科技有限公司 | 一种数据处理方法及装置 |
CN105743811A (zh) * | 2014-10-27 | 2016-07-06 | 三星Sds株式会社 | 数据发送装置及利用该装置的数据通信方法 |
CN105812346A (zh) * | 2015-12-12 | 2016-07-27 | 重庆川仪自动化股份有限公司 | 一种串口设备和以太网设备的数据交互方法 |
CN109388590A (zh) * | 2018-09-28 | 2019-02-26 | 中国电子科技集团公司第五十二研究所 | 提升多通道dma访问性能的动态缓存块管理方法和装置 |
CN109391929A (zh) * | 2018-11-23 | 2019-02-26 | 深圳时空壶技术有限公司 | 低功耗蓝牙数据传输方法及电子设备 |
CN109726983A (zh) * | 2018-12-19 | 2019-05-07 | 平安国际融资租赁有限公司 | 审批任务分配方法、装置、计算机设备和存储介质 |
CN109739482A (zh) * | 2018-12-28 | 2019-05-10 | 杭州东信北邮信息技术有限公司 | 一种基于动态语言的业务逻辑执行系统及方法 |
CN111245743A (zh) * | 2020-01-09 | 2020-06-05 | 浙江吉利汽车研究院有限公司 | 一种信息处理方法、存储介质、网关及汽车 |
CN111274173A (zh) * | 2020-03-26 | 2020-06-12 | 四川鸿创电子科技有限公司 | 一种基于zynq的多节点srio通信设计方法及装置 |
CN111416778A (zh) * | 2020-03-16 | 2020-07-14 | 南京荣泰电气自动化有限公司 | 用于多设备物联网的单串口网关平台 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10826964B2 (en) * | 2018-09-05 | 2020-11-03 | At&T Intellectual Property I, L.P. | Priority-based tile transmission system and method for panoramic video streaming |
-
2020
- 2020-09-29 CN CN202011048705.2A patent/CN112235268B/zh active Active
Patent Citations (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5594868A (en) * | 1994-03-24 | 1997-01-14 | Hitachi, Ltd. | Processor unit for a parallel processor system discards a received packet when a reception buffer has insufficient space for storing the packet |
US6463072B1 (en) * | 1999-12-28 | 2002-10-08 | Intel Corporation | Method and apparatus for sharing access to a bus |
CN1427598A (zh) * | 2001-12-21 | 2003-07-02 | 深圳市中兴通讯股份有限公司上海第二研究所 | 多通道数据链路协议处理器及其处理方法 |
CN101335667A (zh) * | 2007-06-26 | 2008-12-31 | 中兴通讯股份有限公司 | 数据传输方法 |
JP2010166138A (ja) * | 2009-01-13 | 2010-07-29 | Hitachi Ltd | バッファ制御方法およびパケット転送装置 |
CN101778492A (zh) * | 2009-12-29 | 2010-07-14 | 深圳市远望谷信息技术股份有限公司 | 移动通信终端射频识别的方法及其设备 |
CN101815034A (zh) * | 2010-03-26 | 2010-08-25 | 迈普通信技术股份有限公司 | 任务间消息发送方法及通信设备 |
CN102201938A (zh) * | 2011-06-14 | 2011-09-28 | 浙江大学 | 基于通道的CanTp层通信管理方法 |
CN102932275A (zh) * | 2012-11-20 | 2013-02-13 | 中国空间技术研究院 | 一种应用于容延时网络的优先级报文转发方法 |
CN105743811A (zh) * | 2014-10-27 | 2016-07-06 | 三星Sds株式会社 | 数据发送装置及利用该装置的数据通信方法 |
CN105024936A (zh) * | 2015-06-02 | 2015-11-04 | 贵阳语玩科技有限公司 | 一种数据处理方法及装置 |
CN105812346A (zh) * | 2015-12-12 | 2016-07-27 | 重庆川仪自动化股份有限公司 | 一种串口设备和以太网设备的数据交互方法 |
CN109388590A (zh) * | 2018-09-28 | 2019-02-26 | 中国电子科技集团公司第五十二研究所 | 提升多通道dma访问性能的动态缓存块管理方法和装置 |
CN109391929A (zh) * | 2018-11-23 | 2019-02-26 | 深圳时空壶技术有限公司 | 低功耗蓝牙数据传输方法及电子设备 |
CN109726983A (zh) * | 2018-12-19 | 2019-05-07 | 平安国际融资租赁有限公司 | 审批任务分配方法、装置、计算机设备和存储介质 |
CN109739482A (zh) * | 2018-12-28 | 2019-05-10 | 杭州东信北邮信息技术有限公司 | 一种基于动态语言的业务逻辑执行系统及方法 |
CN111245743A (zh) * | 2020-01-09 | 2020-06-05 | 浙江吉利汽车研究院有限公司 | 一种信息处理方法、存储介质、网关及汽车 |
CN111416778A (zh) * | 2020-03-16 | 2020-07-14 | 南京荣泰电气自动化有限公司 | 用于多设备物联网的单串口网关平台 |
CN111274173A (zh) * | 2020-03-26 | 2020-06-12 | 四川鸿创电子科技有限公司 | 一种基于zynq的多节点srio通信设计方法及装置 |
Non-Patent Citations (3)
Title |
---|
Research On Embedded Streaming Media Real-Time Transmission Synchronization Control Strategy;Guo Hai-Tao;《2013 International Conference on Computational and Information Sciences》;20130623;全文 * |
一种新型1553B备份总线控制器设计与实现;范祥辉等;《现代电子技术》;20130701(第13期);全文 * |
基于RTL8019以太网实验板的软件设计;魏权利等;《实验室研究与探索》;20130515(第05期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN112235268A (zh) | 2021-01-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101616083B (zh) | 一种报文转发方法和装置 | |
US20160132541A1 (en) | Efficient implementations for mapreduce systems | |
CN107133109A (zh) | 一种模块间通信的方法、装置及计算设备 | |
CN111538694B (zh) | 一种用于网络接口支持多链接和重传的数据缓存方法 | |
CN114710571A (zh) | 数据包处理系统 | |
CN112235268B (zh) | 安全通信方法、系统及装置 | |
CN115766044A (zh) | 一种基于用户态协议栈的通信方法及相应装置 | |
CN1829231B (zh) | 直接接收入站数据的方法和装置 | |
CN108833200A (zh) | 一种大数据文件自适应单向传输方法及装置 | |
CN103714059A (zh) | 一种更新数据的方法及装置 | |
CN113590666B (zh) | 一种ai集群中数据缓存方法、系统、设备及计算机介质 | |
CN114884883A (zh) | 一种流量转发方法、装置、设备及存储介质 | |
CN115509644A (zh) | 算力卸载方法、装置、电子设备和存储介质 | |
CN105912477B (zh) | 一种目录读取的方法、装置及系统 | |
CN111338567B (zh) | 一种基于Protocol Buffer的镜像缓存方法 | |
CN106407307A (zh) | 一种分布式数据库节点数据交互方法及装置 | |
CN105072047A (zh) | 一种报文传输及处理方法 | |
CN105659216A (zh) | 多核处理器系统的缓存目录处理方法和目录控制器 | |
CN111506518B (zh) | 一种数据存储控制方法及装置 | |
CN113849129B (zh) | 一种存储控制器间的io请求转发方法、装置及设备 | |
CN118276773A (zh) | 内存访问方法、系统及装置 | |
CN102637153B (zh) | 耦合设备、处理器装置、数据处理装置、传输数据的方法 | |
CN113379548A (zh) | 一种基于tuxedo中间件的智能分流方法 | |
CN117234707A (zh) | 一种基于异构架构的Char类型条件判断方法及系统 | |
CN114153773A (zh) | 一种基于axi总线传输数据的方法、设备、系统及可读介质 |
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 |