1.本技术涉及继电保护领域,特别是涉及一种继电保护安全芯片操作系统及其通信方法。
背景技术:2.继电保护装置是电力系统中常用的器件,继电保护装置的工作状态直接影响到整个电力系统,担负着保护电力系统安全稳定运行的重要使命。继电保护装置中,通常配置有安全芯片以确保装置的安全性。
3.传统的继电保护安全芯片操作系统,在接收到apdu(application protocol data unit,应用协议数据单元)命令报文后,直接进行鉴权处理,即判断该apdu命令报文是否符合预设命令执行权限的规定,并在鉴权通过后,进行响应操作,反馈响应结果。因此,传统的继电保护安全芯片操作系统,可能会受到携带密钥的非法命令报文的攻击,具有安全性差的问题。
技术实现要素:4.基于此,有必要针对上述技术问题,提供一种运行安全性好的继电保护安全芯片操作系统及其通信方法。
5.一种继电保护安全芯片操作系统,包括通信管理模块、安全管理模块、命令处理模块和文件管理模块;所述命令处理模块连接所述通信管理模块、所述安全管理模块和所述文件管理模块;所述通信管理模块还连接终端;
6.所述通信管理模块用于接收所述终端发送的apdu命令报文,并将所述apdu命令报文发送至所述命令处理模块;
7.所述命令处理模块用于对所述apdu命令报文进行合法性校验,并在所述合法性校验通过后将所述apdu命令报文发送至所述安全管理模块,以及在所述apdu命令报文符合预设命令执行权限的规定时,将所述apdu命令报文发送至所述文件处理模块;所述合法性校验包括cla指令类别校验、cla哈希校验和ins校验;
8.所述安全管理模块用于判断所述apdu命令报文是否符合预设命令执行权限的规定,并将判断结果反馈至所述命令处理模块;
9.所述文件处理模块用于对所述apdu命令报文进行响应操作,并将响应结果反馈至所述命令处理模块;所述响应结果依次经过所述命令处理模块和所述通信管理模块后,被所述终端接收。
10.在其中一个实施例中,所述通信管理模块包括atr发送单元、pps协商单元和apdu管理单元;
11.所述atr发送单元用于获取所述终端和继电保护安全芯片的通信电气参数信息,并进行比对;
12.所述pps协商单元用于在所述终端和继电保护安全芯片的通信电气参数信息不一
致时,根据预设的协商模式确定通信参数;
13.所述apdu管理单元用于基于所述通信参数,进行所述终端与所述继电保护安全芯片之间的数据传输。
14.在其中一个实施例中,所述安全管理模块包括安全属性管理子模块、安全状态管理子模块和安全机制管理子模块;
15.所述安全属性管理子模块用于确定apdu命令报文与安全状态的对应关系;
16.所述安全状态管理子模块用于确定当前安全状态;
17.所述安全机制管理子模块用于根据所述apdu命令报文,以及apdu命令报文与安全状态的对应关系,判断所述apdu命令报文是否符合预设命令执行权限的规定,将判断结果反馈至所述命令处理模块。
18.在其中一个实施例中,所述安全属性管理子模块具体用于确定apdu命令报文与操作类型的对应关系,以及操作类型与安全状态的对应关系;所述安全机制管理子模块包括数据加解密单元、鉴别核实单元和文件访问安全控制单元;
19.所述数据加解密单元用于对所述apdu命令报文进行解密,并在解密后根据apdu命令报文与操作类型的对应关系,确定所述apdu命令报文可执行的操作类型;
20.所述鉴别核实单元用于根据所述操作类型和所述当前安全状态,以及操作类型与安全状态的对应关系,进行安全状态配置;
21.所述文件访问安全控制单元用于基于配置后的安全状态,判断所述apdu命令报文是否符合预设命令执行权限的规定,将判断结果反馈至所述命令处理模块。
22.在其中一个实施例中,所述文件管理模块包括文件查询单元、上级文件管理单元、下级文件管理单元和同级文件管理单元;
23.所述文件查询单元用于根据所述apdu命令报文进行文件目录查询,得到待处理文件名称及其级别;
24.所述上级文件管理单元、所述下级文件管理单元和所述同级文件管理单元用于根据所述待处理文件名称及其级别,分别对对应级别的待处理文件进行响应操作,并将响应结果反馈至所述命令处理模块。
25.在其中一个实施例中,所述文件管理模块还包括磨损均衡管理单元,用于对继电保护安全芯片的擦写次数进行管理。
26.在其中一个实施例中,所述文件管理模块还包括掉电保护单元,用于在接收到数据擦写指令时,先将待擦除数据备份再进行相应的擦写操作。
27.在其中一个实施例中,所述命令处理模块包括cla处理单元和ins处理单元;
28.所述cla处理单元用于依次进行cla指令类别校验和cla哈希校验,并在所述cla指令类别校验和cla哈希校验通过后,对所述apdu命令报文进行解析,得到ins指令码并发送至所述ins处理单元;
29.所述ins处理单元用于对所述ins指令码进行ins合法性校验和ins逻辑校验,并在校验通过后将所述apdu命令报文发送至所述安全管理模块。
30.在其中一个实施例中,所述cla处理单元还用于在所述cla指令类别校验和cla哈希校验通过之后,在对所述apdu命令报文进行解析,得到ins指令码并发送至所述ins处理单元之前,进行cla重复校验。
31.一种继电保护安全芯片操作系统通信方法,基于上述的继电保护安全芯片操作系统实现,包括:
32.接收终端发送的apdu命令报文;
33.对所述apdu命令报文进行合法性校验;所述合法性校验包括cla指令类别校验、cla哈希校验和ins校验;
34.在所述合法性校验通过时,判断所述apdu命令报文是否符合预设命令执行权限的规定;
35.若是,对所述apdu命令报文进行响应操作,并将响应结果反馈至所述终端。
36.上述继电保护安全芯片操作系统,配置命令处理模块对apdu命令报文进行cla指令类别校验、cla哈希校验和ins校验等合法性校验,配置安全管理模块对apdu命令报文的进行执行权限确认,只有在合法性校验全部通过且确认具备对应命令执行权限时,才进行相应的响应操作,有利于提高继电保护安全芯片操作系统的安全性。
附图说明
37.图1为一实施例中继电保护安全芯片操作系统的组成框图;
38.图2为另一实施例中继电保护安全芯片操作系统的组成框图;
39.图3为一实施例中命令处理模块的组成框图;
40.图4为一实施例中通信管理模块的组成框图;
41.图5为一实施例中安全管理模块的组成框图;
42.图6为一实施例中安全机制管理子模块的组成框图;
43.图7为一实施例中文件管理模块的组成框图;
44.图8为一实施例中继电保护安全芯片操作系统的文件系统逻辑结构图;
45.图9为一实施例中继电保护安全芯片操作系统通信方法的流程图。
具体实施方式
46.为了便于理解本技术,下面将参照相关附图对本技术进行更全面的描述。附图中给出了本技术的实施例。但是,本技术可以以许多不同的形式来实现,并不限于本文所描述的实施例。相反地,提供这些实施例的目的是使本技术的公开内容更加透彻全面。
47.除非另有定义,本文所使用的所有的技术和科学术语与属于本技术的技术领域的技术人员通常理解的含义相同。本文中在本技术的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本技术。
48.需要说明的是,当一个元件被认为是“连接”另一个元件时,它可以是直接连接到另一个元件,或者通过居中元件连接另一个元件。此外,以下实施例中的“连接”,如果被连接的对象之间具有电信号或数据的传递,则应理解为“电连接”、“通信连接”等。
49.在此使用时,单数形式的“一”、“一个”和“所述/该”也可以包括复数形式,除非上下文清楚指出另外的方式。还应当理解的是,术语“包括/包含”或“具有”等指定所陈述的特征、整体、步骤、操作、组件、部分或它们的组合的存在,但是不排除存在或添加一个或更多个其他特征、整体、步骤、操作、组件、部分或它们的组合的可能性。
50.本技术第一方面,提供了一种继电保护安全芯片操作系统,应用于继电保护装置
内部的安全芯片。该继电保护装置,为继电保护soc(system on chip,片上系统)芯片。在一个实施例中,如图1所示,该继电保护安全芯片操作系统包括通信管理模块100、命令处理模块200、安全管理模块300和文件管理模块400。命令处理模块200连接通信管理模块100、安全管理模块300和文件管理模块400;通信管理模块100还连接终端。
51.通信管理模块100用于接收终端发送的apdu命令报文,并将该apdu命令报文发送至命令处理模块200。命令处理模块200用于对apdu命令报文进行合法性校验,并在合法性校验通过后将apdu命令报文发送至安全管理模块300,以及在apdu命令报文符合预设命令执行权限的规定时,将apdu命令报文发送至文件处理模块200;该合法性校验包括cla指令类别校验、cla哈希校验和ins校验。安全管理模块300用于判断apdu命令报文是否符合预设命令执行权限的规定,并将判断结果反馈至命令处理模块200。文件处理模块400用于对apdu命令报文进行响应操作,并将响应结果反馈至命令处理模块200;响应结果依次经过命令处理模块200和通信管理模块100后,被终端接收。
52.其中,继电保护安全芯片操作系统(chip operating system,cos)是运行在继电保护安全芯片中的专用系统,用于控制继电保护安全芯片与外界的信息交换。终端包括但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备。终端与继电保护安全芯片之间的交互报文采用apdu协议的形式。根据iso7816标准的定义,终端使用的apdu报文为apdu命令报文,即c
‑
apdu;安全芯片使用的apdu报文为apdu响应报文,即r
‑
apdu。
53.具体的,通信管理模块100基于预设的信息传输协议,接收终端发送的apdu命令报文并转发至命令处理模块200;以及接收将该apdu命令报文对应的响应结果,按照信息传输协议所对应的格式,发送至终端。关于交换命令规范、安全管理规范等,可以参考现行的iso7816
‑
4、8、9标准,此处不进行详细说明。
54.进一步的,apdu命令报文中包括命令头和命令体,命令头中包括cla字段、ins字段、p1字段和p2字段。其中,cla字段用来表示apdu的类别,ins指示要执行的指令,p1和p2字段为参数。命令处理模块200接收通信管理模块100转发的apdu命令报文,对接收到的apdu命令报文进行解析和合法性校验,提取报文中的cla字段信息和ins字段信息,依次进行cla指令类别校验、cla哈希校验和ins校验等合法性校验,并在并在合法性校验通过后将apdu命令报文发送至安全管理模块300。
55.安全管理模块300涉及对继电保护安全芯片内部数据进行访问的权限控制和机密信息保密相关机制,用于判断apdu命令报文是否符合预设命令执行权限的规定,并将判断结果反馈至命令处理模块200。文件管理模块400负责对存储空间进行管理,具体用于对apdu命令报文进行响应操作,并将响应结果反馈至命令处理模块200,包括进行文件选择、创建、删除、读取和写入等。响应结果依次经过命令处理模块200和通信管理模块100后,以apdu响应报文的形式被终端接收。
56.可以理解,命令处理模块200还用于在合法性校验不通过时,通过通信管理模块100向终端或显示装置反馈对应的校验失败信息,安全管理模块300还用于在判断apdu命令报文不符合预设命令执行权限的规定,依次通过命令处理模块200和通信管理模块100向终端或显示装置反馈校验失败信息。
57.进一步的,上述继电保护安全芯片操作系统中的各个模块可全部或部分通过软
件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于继电保护soc芯片的处理器中,也可以以软件形式存储于继电保护soc芯片的存储器中,以便于处理器调用执行以上各个模块对应的操作。
58.进一步的,如图2所示,继电保护安全芯片操作系统还包括用于实现对继电保护安全芯片底层进行控制的底层驱动模块500。具体的,底层驱动模块500连接通信管理模块100、命令处理模块200、安全管理模块300和文件管理模块400,用于对各功能模块工作过程中涉及的硬件进行控制,例如驱动i/o接口以便通信管理模块100可以与终端建立通信链路;驱动存储器以便文件管理模块400顺利进行报文响应操作。其中,通信管理模块100、命令处理模块200、安全管理模块300和文件管理模块400位于系统的功能模块层,底层驱动模块500位于系统的微内核。
59.上述继电保护安全芯片操作系统,配置命令处理模块对apdu命令报文进行cla指令类别校验、cla哈希校验和ins校验等合法性校验,配置安全管理模块对apdu命令报文的进行执行权限确认,只有在合法性校验全部通过且确认具备对应命令执行权限时,才进行相应的响应操作,有利于提高继电保护安全芯片操作系统的安全性。
60.在一个实施例中,如图3所示,命令处理模块200包括cla处理单元210和ins处理单元220。cla处理单元210用于依次进行cla指令类别校验和cla哈希校验,并在cla指令类别校验和cla哈希校验通过后,对apdu命令报文进行解析,得到ins指令码并发送至ins处理单元220。ins处理单元220用于对ins指令码进行ins合法性校验和ins逻辑校验,并在校验通过后将apdu命令报文发送至安全管理模块300。
61.具体的,cla处理单元210提取apdu命令报文中的cla字段信息,与cos系统中预存的可以执行的指令类别进行比对,若不一致,则判断apdu命令报文的cla指令类型不合法,结束本次命令处理。若一致,则计算cla字段的哈希值,与预存的白名单进行比对,若该哈希值在白名单内,则判断cla哈希值校验通过,进行后续处理,否则结束本次命令处理。在cla指令类别校验和cla哈希校验均通过后,cla处理单元210对apdu命令报文进行解析,得到ins指令码并发送至ins处理单元220。进一步的,cla处理单元210还用于在校验不通过时,经由通信管理模块100,向终端或显示装置反馈对应的cla错误状态信息。
62.ins处理单元220接收ins指令码,对ins指令码进行ins合法性校验,判断该指令码是否是cos系统可执行的指令,若否,则结束本次命令处理;若是,则进行后续的ins逻辑校验,检查指令码对应的前置逻辑判断条件是否满足,若是则将apdu命令报文发送至安全管理模块300,否则结束本次命令处理。同样的,ins处理单元220还用于在校验不通过时,经由通信管理模块100,向终端或显示装置反馈对应的ins错误状态信息。
63.上述实施例中,配置cla处理单元210和ins处理单元220依次对apdu命令报文进行cla指令类别校验、cla哈希校验、ins合法性校验和ins逻辑校验,有利于进一步提高继电保护安全芯片操作系统的安全性。
64.进一步的,在一个实施例中,cla处理单元210还用于进行cla重复校验。具体的,cla处理单元210在cla指令类别校验和cla哈希校验通过之后,在对apdu命令报文进行解析,得到ins指令码并发送至ins处理单元220之前,进行cla重复校验,校验该cla字段与收到的前一条apdu命令报文中的cla字段是否重复,如果不重复则进行后续工作,如果重复则放弃执行,以避免同一命令报文的重复响应,提升工作效率。
65.在一个实施例中,如图4所示,通信管理模块100包括atr(answer to replay,复位应答)发送单元110、pps(protocol parameters selection,协议选择和参数设置)协商单元120和apdu管理单元130。atr发送单元110用于获取终端和继电保护安全芯片的通信电气参数信息,并进行比对;pps协商单元120用于在终端和继电保护安全芯片的通信电气参数信息不一致时,根据预设的协商模式确定通信参数;apdu管理单元130用于基于该通信参数,进行终端与继电保护安全芯片之间的数据传输。
66.其中,atr是安全芯片与终端之间进行沟通的第一条字符串,该字符串是安全芯片告知终端自己本身所遵循的通信物理参数、电气特性等通信电气参数信息,具体包括分频值、时钟频率、工作等待时间等。具体的,先由atr发送单元110获取终端和继电保护安全芯片的通信电气参数信息,并进行比对。在二者的通信电气信息不一致时,由pps协商单元120根据预设的协商模式确定通信参数,便于双方后续的通信交流。该协商模式,可以参考现有的读卡技术,由终端对安全芯片atr中的参数进行修改,以使二者通信电气参数信息一致,进而确定通信协议、传输速度等通信参数。在pps协商完成后,再由apdu管理单元130用于基于确定的通信参数,进行终端与继电保护安全芯片之间的数据传输,具体包括接收到终端发送的报文时,将该报文转换为符合安全芯片中命令处理模块200接收的报文格式并发送至命令处理模块200;以及在接收到命令处理模块200发送的报文时,将报文转换为符合终端的报文的格式并发送至终端。
67.需要说明的是,在终端和继电保护安全芯片的通信电气参数信息一致时,直接根据通信电气参数确定通信协议、传输速度等通信参数,进行后续的数据传输。进一步的,根据继电保护安全芯片的应用场景需要,选择t=0的字符传输协议进行数据传输。
68.上述实施例中,配置不同的单元分别进行atr发送、pps协商和apdu管理,可以确保终端和安全芯片之间的通信可靠性,进一步提高继电保护安全芯片操作系统的工作效率。
69.在一个实施例中,如图5所示,安全管理模块300包括安全属性管理子模块310、安全状态管理子模块320和安全机制管理子模块330。安全属性管理子模块310用于确定apdu命令报文与安全状态的对应关系;安全状态管理子模块320用于确定当前安全状态;安全机制管理子模块330用于根据apdu命令报文,以及apdu命令报文与安全状态的对应关系,判断apdu命令报文是否符合预设命令执行权限的规定,将判断结果反馈至命令处理模块200。
70.其中,安全状态是指继电保护安全芯片所处的安全级别,即安全状态寄存器的值,这种状态是安全芯片进行初始化或在处理完某种命令之后的状态。安全属性,用于定义执行某个命令所需要的条件,即在进行某种操作时所要求的安全状态。对于apdu命令报文的安全属性,在具体的cla相关域中定义,如显示该报文中有哪些信息加密的,只有在验证通过后才能执行该命令的具体动作。本实施例中,规定0
‑
f共16种不同的安全状态,这些安全状态可以通过执行pin验证、外部鉴别等命令进行更改。
71.具体地,安全属性管理子模块310用于确定apdu命令报文与安全状态的对应关系;安全状态管理子模块320用于确定当前安全状态;安全机制管理子模块330用于根据apdu命令报文,以及apdu命令报文与安全状态的对应关系,判断apdu命令报文是否符合预设命令执行权限的规定,将判断结果反馈至命令处理模块200。
72.在一个实施例中,安全属性管理子模块310具体用于确定apdu命令报文与操作类型的对应关系,以及操作类型与安全状态的对应关系。如图6所示,安全机制管理子模块330
包括数据加解密单元331、鉴别核实单元332和文件访问安全控制单元333。数据加解密单元331用于对apdu命令报文进行解密,并在解密后根据apdu命令报文与操作类型的对应关系,确定apdu命令报文可执行的操作类型。鉴别核实单元332用于根据操作类型和当前安全状态,以及操作类型与安全状态的对应关系,进行安全状态配置。文件访问安全控制单元333用于基于配置后的安全状态,判断apdu命令报文是否符合预设命令执行权限的规定,将判断结果反馈至命令处理模块200。
73.继电保护安全芯片cos中的安全机制主要考虑三个方面的信息:数据加解密、鉴别与核实、文件访问安全控制。在每一个中间件下建立一个密钥文件,只有在通过了当前目录下的密钥验证之后才能对该中间件下的文件做进一步的操作。具体的,数据加解密单元331基于密钥文件,对接收到的密钥验证数据进行密钥验证后,对apdu命令报文进行解密,并在解密后根据apdu命令报文与操作类型的对应关系,确定apdu命令报文可执行的操作类型。鉴别核实单元332用于根据操作类型和当前安全状态,以及操作类型与安全状态的对应关系,通过终端、安全芯片与用户三者之间相互验证的过程,进行安全状态配置,以确保后续操作的合法性。最后再由文件访问安全控制单元333用于基于配置后的安全状态,采用鉴别寄存器方式,判断apdu命令报文是否符合预设命令执行权限的规定,将判断结果反馈至命令处理模块200。
74.本实施例中,使用两个4位的寄存器来表示安全状态,其中一个寄存器作为mf(main file,主文件)的安全状态寄存器,另一个寄存器作为当前专用中间件的安全状态寄存器。将每个寄存器的初始值设置为0,设定的取值范围为0~f,表示不同的安全状态级别,对于文件的操作,都有读权限和写权限,可各用一个byte来表示,当安全状态寄存器的值大于访问控制权限的低半字节而小于其高半字节时,说明该文件的相应读写权限在该安全状态级别是满足的,符合预设命令执行权限的规定,可以进行相应操作。此时,由文件访问安全控制单元333向命令处理模块200反馈apdu命令报文符合预设命令执行权限的规定的判断结果。
75.进一步的,数据加解密模块331还用于在密钥验证不通过时,反馈验证不通过的结果至命令处理模块200;鉴别核实模块332还用于在安全状态配置失败时,反馈配置失败的结果至命令处理模块200;文件访问安全控制模块333还用于当安全状态寄存器的值小于访问控制权限的低半字节,以及安全状态寄存器的值大于访问控制权限的高半字节时,反馈apdu命令报文不符合命令执行权限规定的判断结果至命令处理模块200。上述不通过结果,最终均由通信管理模块100反馈至终端或显示装置。
76.上述实施例中,即是提供了安全管理模块300的具体构成,有利于进一步提高继电保护安全芯片操作系统的安全性。
77.在一个实施例中,如图7所示,文件管理模块400包括文件查询单元410、上级文件管理单元420、下级文件管理单元430和同级文件管理单元440。文件查询单元410用于根据apdu命令报文进行文件目录查询,得到待处理文件名称及其级别;上级文件管理单元420、下级文件管理单元430和同级文件管理单元440用于根据待处理文件名称及其级别,分别对对应级别的待处理文件进行响应操作,并将响应结果反馈至命令处理模块200。
78.具体的,继电保护安全芯片采用树形结构的文件系统,所有的文件都有一个唯一的文件标识符,因此通过文件标识符就可以直接查找所需的文件。在文件管理实现方面,可
采用链表方式构建文件之间的联系架构,如图8所示,其中parent pointer(对应上级文件管理模块420)用来寻找上级目录文件,child pointer(对应下级文件管理模块430)与下一级目录文件建立联系,next pointer(对应同级文件管理模块440)指示同级目录文件的保存位置信息。文件查询单元410用于根据apdu命令报文进行文件目录查询,得到待处理文件名称及其级别;上级文件管理单元420、下级文件管理单元430和同级文件管理单元440用于根据待处理文件名称及其级别,分别对对应级别的待处理文件进行存储、读取、删除等响应操作,并将响应结果反馈至命令处理模块200。
79.上述实施例中,配置不同的文件管理单元,对相应级别的待处理文件进行处理,可以确保继电保护芯片能够长时间安全、稳定地工作,有利于提高工作效率。
80.在一个实施例中,文件管理模块400还包括磨损均衡管理单元,用于对继电保护安全芯片的擦写次数进行管理。具体地,对于继电保护安全芯片中的flash存储器,磨损均衡控制是延长其使用寿命的有效手段。安全芯片中的文件数据可以分为两类:冷数据和热数据。冷数据是更新频率较低或从不更新的数据,热数据是更新频繁的数据内容。那么,如何实现“冷热”数据存放位置的交换是磨损均衡处理中不容忽视的问题。例如,可以采用动态磨损均匀或静态磨损均匀的方法进行磨损均匀管理。其中,动态磨损均匀的具体过程为:记录存储器中每个块的擦写次数,当需要覆盖写的时候,新的数据写到free的page上,而旧的数据被标记为invalid,等待垃圾回收擦除。静态磨损均匀具体过程为:记录存储器中每个块的擦写次数,当检测到一个块的擦写次数超过所有块的平均擦除次数时,将擦写次数少的块中数据与擦写次数多的块中数据进行交换。
81.上述实施例中,配置磨损均衡管理单元对继电保护安全芯片的擦写次数进行管理,可以有效延长继电保护安全芯片中存储器的使用寿命,进而提升系统的稳定性。
82.在一个实施例中,文件管理模块400还包括掉电保护单元,用于在接收到数据擦写指令时,先将待擦除数据备份再进行相应的擦写操作。
83.具体地,在存储器中设置固定大小的缓冲区作为备份区域,在开始进行擦除数据之前,将要被擦除的数据备份至该区域,并设置该区域为“已备份状态”。若写入成功,则将备份区域中的对应数据设置为“失效数据”,若写入不成功,则将备份区域中的对应数据设置为“有效数据”。当系统重新上电后,将首先读取备份区域数据的状态标识,如果存在有效数据,则将该有效数据恢复至被擦除位置,并将备份区域中的对应数据设置为“失效数据”,以便下一次使用该备份区域。为了进一步备份区域的擦写负担,可将该缓冲区设置为多个备份区域,采用循环利用的使用方式。可以理解,只有处于非“已备份状态”的备份区域,以及虽处于“已备份状态”,但区域中的数据为“失效数据”的备份区域,才能用于进行当前的数据备份。
84.上述实施例中,配置掉电保护单元在接收到数据擦写指令时,先将待擦除数据备份再进行相应的擦写操作,可以避免因掉电导致数据丢失。
85.本技术第二方面,如图9所示,提供了一种继电保护安全芯片操作系统通信方法,基于上述的继电保护安全芯片操作系统实现,包括步骤s200至步骤s800。
86.步骤s200:接收终端发送的apdu命令报文。
87.步骤s400:对apdu命令报文进行合法性校验;该合法性校验包括cla指令类别校验、cla哈希校验和ins校验。
88.步骤s600:在合法性校验通过时,判断apdu命令报文是否符合预设命令执行权限的规定。
89.步骤s800:若是,对apdu命令报文进行响应操作,并将响应结果反馈至终端。
90.其中,继电保护安全芯片操作系统是运行在继电保护安全芯片中的专用系统,用于控制继电保护安全芯片与外界的信息交换。终端包括但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备。终端与继电保护安全芯片之间的交互报文多采用apdu协议的形式。根据iso7816标准的定义,终端使用的apdu报文为apdu命令报文,即c
‑
apdu;安全芯片使用的apdu报文为apdu响应报文,即r
‑
apdu。
91.具体的,通信管理模块基于预设的信息传输协议,接收终端发送的apdu命令报文并转发至命令处理模块;以及接收将该apdu命令报文对应的响应结果,按照信息传输协议所对应的格式,发送至终端。关于交换命令规范、安全管理规范等,请参考现行的iso7816
‑
4、8、9标准,本技术不进行详细说明。
92.进一步的,apdu命令报文中包括命令头和命令体,命令头中包括cla字段、ins字段、p1字段和p2字段。cla字段用来表示apdu的类别,ins指示要执行的指令,p1和p2字段为参数。命令处理模块接收通信管理模块转发的apdu命令报文,对接收到的apdu命令报文进行解析和合法性校验,提取报文中的cla信息和ins信息,依次进行cla指令类别校验、cla哈希校验和ins校验等合法性校验,并在并在合法性校验通过后将apdu命令报文发送至安全管理模块。
93.安全管理模块涉及对继电保护安全芯片内部数据进行访问的权限控制和机密信息保密相关机制,用于判断apdu命令报文是否符合预设命令执行权限的规定,并将判断结果反馈至命令处理模块。文件管理模块负责对存储空间进行管理,用于对apdu命令报文进行响应操作,并将响应结果反馈至命令处理模块,具体包括进行文件选择、创建、删除、读取和写入等。响应结果依次经过命令处理模块和通信管理模块后,以apdu响应报文的形式被终端接收。
94.可以理解,命令处理模块还用于在合法性校验不通过时,通过通信管理模块向终端或显示装置反馈对应的校验失败信息,安全管理模块还用于在判断apdu命令报文不符合预设命令执行权限的规定,依次通过命令处理模块和通信管理模块向终端或显示装置反馈校验失败信息。
95.需要说明的是,上述继电保护安全芯片操作系统中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于继电保护soc芯片的处理器中,也可以以软件形式存储于继电保护soc芯片的存储器中,以便于处理器调用执行以上各个模块对应的操作。
96.进一步的,继电保护安全芯片操作系统还包括用于实现对继电保护安全芯片底层进行控制的底层驱动模块。具体的,底层驱动模块用于对各模块工作过程中涉及的硬件进行控制,例如驱动i/o接口以便通信管理模块可以与终端建立通信链路;驱动存储器以便文件管理模块顺利进行报文响应操作。
97.上述继电保护安全芯片操作系统通信方法,只有在cla指令类别校验、cla哈希校验和ins校验等合法性校验通过且确认具备对应命令执行权限时,才进行相应的响应操作,有利于提高继电保护安全芯片操作系统的安全性。
98.以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
99.以上该实施例仅表达了本技术的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。因此,本技术专利的保护范围应以所附权利要求为准。