WO2018107595A1 - 一种基于度量机制的可信plc启动方法 - Google Patents

一种基于度量机制的可信plc启动方法 Download PDF

Info

Publication number
WO2018107595A1
WO2018107595A1 PCT/CN2017/076532 CN2017076532W WO2018107595A1 WO 2018107595 A1 WO2018107595 A1 WO 2018107595A1 CN 2017076532 W CN2017076532 W CN 2017076532W WO 2018107595 A1 WO2018107595 A1 WO 2018107595A1
Authority
WO
WIPO (PCT)
Prior art keywords
verification
plc
file
startup
trusted
Prior art date
Application number
PCT/CN2017/076532
Other languages
English (en)
French (fr)
Inventor
尚文利
赵剑明
万明
李殿博
李世超
曾鹏
于海斌
Original Assignee
中国科学院沈阳自动化研究所
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 中国科学院沈阳自动化研究所 filed Critical 中国科学院沈阳自动化研究所
Priority to US15/572,624 priority Critical patent/US11093258B2/en
Publication of WO2018107595A1 publication Critical patent/WO2018107595A1/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4416Network booting; Remote initial program loading [RIPL]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0426Programming the control sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/44Program or device authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/575Secure boot
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44589Program code verification, e.g. Java bytecode verification, proof-carrying code
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/05Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts

Definitions

  • the invention relates to the field of computer programmable logic controller application technology, in particular to a trusted PLC startup method based on a measurement mechanism.
  • ICS Industrial Control Systems
  • SCADA data acquisition and monitoring systems
  • DCS distributed control systems
  • PLCs programmable logic controllers
  • RTUs remote terminals
  • IEDs intelligent electronic devices
  • CNVD National Information Security Vulnerability Library
  • CVE Common Vulnerabilities & Exposures
  • ICS-CERT The Industrial Control Systems Cyber Emergency Response Team
  • Network perimeter protection measures are weak. In most enterprises, due to the diversification of industrial control system types and the unclear awareness of security management and responsibilities, on the one hand, data transmission and authorization management between networks does not implement a clear security policy. On the other hand, enterprise management connects to the Internet. As a result, Internet users can use the loopholes of the enterprise management network system to directly obtain the operational control data of the key equipment of the production control network through the “tunnel” method, which brings significant safety hazards to the operation of the industrial control system.
  • Industrial control system terminal security is mainly due to the fact that the existing platform architecture is open, malicious programs are easy to be embedded in the software system, and all methods that attempt to detect malicious code through software cannot prove the security of the detection software itself. It is manifested in that the malicious code hidden in the firmware chip of the terminal device is remotely controlled by the attacker, and the industrial control system performs attacks such as information stealing, deleting data, and destroying the system.
  • the technical problem to be solved by the present invention is to provide a trusted PLC startup method based on a measurement mechanism.
  • the method of the invention adopts an industrial-grade chip with a trusted function as a core of hardware calculation, and the PLC expands its Flash bus to be loaded by the hardware of the method of the invention, and the hardware of the method of the invention identifies necessary startup information, and the PLC is verified by the integrity verification method.
  • the system's necessary startup files are used for integrity verification to ensure that the PLC system is trusted after startup.
  • the invention can construct a safe and credible industrial control system operating environment on the basis of ensuring the correctness and feasibility of the terminal device security.
  • the present invention provides a trusted PLC startup method based on a measurement mechanism, comprising the following steps: performing self-verification by designing a firmware verification method in a factory initialization phase; and authenticating by reading specific firmware information The storage area is filled; after the startup phase, the firmware verification method is first required, and then the specific firmware storage area is trustedly authenticated to implement the LC system startup and trust.
  • the present invention also provides a trusted PLC startup method based on a measurement mechanism, comprising the following steps:
  • Self-firmware verification initialization step based on the trusted root provided by the chip hardware, the overall firmware information of the storage area is verified, and the verification result is stored one by one;
  • Step-by-step verification and storage steps In the factory initialization phase, the firmware information of the verified verification PLC is calculated by the integrity verification algorithm, and the results are stored one by one until the specified firmware information completes the overall verification;
  • Run startup phase verification step In the operation phase, the device is powered on, first call its own firmware verification method, and self-test verification.
  • the reading and verifying the firmware information of the PLC preferably in the running phase, calling the method of reading and calculating the firmware information of the PLC, and performing the one-to-one correspondence verification on the content in the trusted storage area, failing to run the prompt to find the incorrect prompt, If all verification is successful, the prompt is successful.
  • the verifying and storing one by one may include: completing an integrity check algorithm; the firmware information of the storage area includes: startup information and an original program MD5 value of the operation.
  • the integrity verification method preferably includes: software and hardware co-design, software provides grouping, and hardware is called in parallel for calculation.
  • the verifying and storing one by one may further include: during the startup process of the system, the process design is performed according to the startup file loading process of the system.
  • the verifying and storing one by one preferably further comprises: storing the location as a secure, trusted location.
  • the order of starting the reading preferably includes: starting the boot file BOOT.BIN, the device tree devicetree.dtb, the kernel file uImage, the file system uramdisk.image; the verification method of the running startup phase includes verifying Value matching method.
  • the integrity check may further include:
  • the system calls the hash function in the corresponding file to check whether the standard value stored before is the same by calculating the digest value;
  • the present invention further provides an integrity verification method used in a trusted PLC startup method based on the measurement mechanism according to any one of the preceding claims, the integrity verification method comprising:
  • the system calls the hash function in the corresponding file to check whether the standard value stored before is the same by calculating the digest value;
  • the beneficial effects produced by the invention include: the trusted PLC starting method based on the measurement mechanism of the invention, adopting the industrial level chip to build the hardware environment, the cooperative processing method realizes the fast hardware encryption and decryption verification, and uses the integrity algorithm to perform the PLC system startup file. Integrity verification ensures a trusted start of the PLC system.
  • the beneficial effects produced by the invention include: the trusted PLC starting method based on the measurement mechanism of the invention, adopting the industrial level chip to build the hardware environment, the cooperative processing method realizes the fast hardware encryption and decryption verification, and uses the integrity algorithm to perform the PLC system startup file. Integrity verification ensures a trusted start of the PLC system.
  • FIG. 1 is a schematic diagram of a functional structure of a trusted PLC startup method Zynq-7030 according to a measurement mechanism according to an embodiment of the present invention
  • FIG. 2 is a flowchart of a system startup file verification method of a trusted PLC startup method based on a measurement mechanism according to an embodiment of the present invention
  • FIG. 3 is a schematic diagram of a startup environment configuration according to an embodiment of the present invention.
  • FIG. 4 is a schematic diagram of file integrity verification based on a hash algorithm according to an embodiment of the present invention.
  • FIG. 5 is a flowchart of a method for starting a trusted PLC based on a measurement mechanism according to an embodiment of the present invention.
  • PLC Programmable Logic Controller
  • Programmable logic controllers are divided into two types according to the structure: integral type and module type. According to the application environment, they are divided into two types: field installation and control room installation. According to the CPU word length, they are divided into 1 bit, 4 bits, 8 bits, 16 bits, 32 bits. Bit, 64 bit, etc. From the application point of view, it is usually possible to select the control function or the number of input and output points.
  • the overall programmable logic controller has a fixed number of I/O points, so the user has less room for small control systems; the modular programmable logic controller provides multiple I/O cards or cards, so the user can It is more reasonable to select and configure the number of I/O points of the control system, and the function expansion is convenient and flexible, and is generally used for large and medium-sized control systems.
  • the invention is based on the trusted PLC startup method of the measurement mechanism, adopts the industrial level chip to build the hardware environment, realizes the fast hardware encryption and decryption verification by the cooperative processing method, and uses the integrity algorithm to verify the integrity of the PLC system startup file to ensure the PLC system. Trusted startup.
  • a trusted PLC startup method based on a measurement mechanism.
  • the method performs self-verification by designing its own firmware verification method in the factory initialization phase, and performs trusted storage by reading specific firmware information. Area padding (the trusted storage area is to open a section of the user invisible in the flash for storing the check value); afterwards, in the running phase, it is first necessary to pass its own firmware verification method (the system is restarted, or the user is booting)
  • the method is its own firmware verification method, its own firmware verification method corresponds to its own firmware verification initialization, and then the specific firmware storage area is trustedly authenticated, and finally the PLC system is started. Trustworthy.
  • the self-firmware verification method adopts the check value matching method.
  • the specific firmware information refers to the firmware information of the industrial control device, and the embodiment refers to the firmware information of the PLC. Since the firmware information of different industrial control devices is not completely the same, it is necessary to perform specific processing for the firmware information startup process.
  • the method mainly includes the following parts:
  • Self-firmware verification initialization Based on the trusted root provided by the FPGA chip hardware, the overall firmware information of the storage area is verified (including the boot file BOOT.BIN, device tree devicetree.dtb, kernel file uImage, and file system uramdisk.image). The firmware information of the FPGA itself and the calculated check value are stored one by one. If so, the FPGA starts up smoothly.
  • Read and calculate the firmware information of the PLC In the factory initialization phase, load the PLC's flash memory onto the hardware carrier of the method, and then mainly read the firmware information in the flash memory (including the PLC boot file BOOT.BIN, device tree devicetree) .dtb, kernel file uImage and file system uramdisk.image, and control application).
  • the firmware information in the flash memory including the PLC boot file BOOT.BIN, device tree devicetree) .dtb, kernel file uImage and file system uramdisk.image, and control application).
  • the chip calculates the firmware information (that is, the firmware information in the flash memory) read by the integrity verification algorithm for verifying the PLC, and verifies the firmware information of the PLC and the firmware information.
  • the verification results are stored in the trusted storage area one by one until the specified firmware information completes the overall verification.
  • Run start phase In the run phase, the FPGA device powers up, first calls its own firmware verification method, and performs self-test verification.
  • Trusted authentication for a specific firmware storage area read and verify the firmware information of the PLC, calculate the firmware information for verifying the PLC read by the integrity check algorithm, and compare the result with the contents of the trusted storage area (PLC verification) Result)
  • PLC verification calculate the firmware information for verifying the PLC read by the integrity check algorithm
  • PLC Result One-to-one correspondence verification is performed, and the failure to find the incorrect prompt fails, and if all the verification is successful, the prompt operation is successful.
  • the verification method is mainly to complete the integrity verification algorithm, and the firmware information of the storage area mainly includes the startup information and the running original program MD5 value.
  • the firmware information used to verify the PLC mainly includes: boot boot file BOOT.BIN, device tree devicetree.dtb, kernel file uImage, file system uramdisk.image, and control application.
  • the implementation of the integrity verification method adopts software and hardware collaborative design, the software provides grouping, and the hardware is called in parallel for calculation: two chips are used for calculation; the firmware information of the verification PLC is divided into two parts and respectively output to two security encryptions in the FPGA.
  • the integrity check method can adopt one of HASH, SHA, and MD5 algorithms.
  • One by one verification is reflected in the startup process of the system, and the process design is carried out according to the startup file loading process of the system.
  • the storage location is a secure, trusted location, and this embodiment is a trusted storage area.
  • the order in which the reads are initiated includes: booting the boot file BOOT.BIN, the device tree devicetree.dtb, the kernel file uImage, and the file system uramdisk.image.
  • the verification method can adopt the check value matching method.
  • the BOOT.BIN file consists of fsbl, uboot, and bitstream files.
  • a trusted PLC startup method based on a measurement mechanism including:
  • the firmware initialization is initialized first, and the trusted root function model provided by the chip hardware is used as a trusted base, and the firmware startup information of the storage area is calculated, and the calculation result is stored securely.
  • the verification method mainly completes the integrity verification algorithm
  • the firmware information of the storage area mainly includes the startup information and the original program MD5 value of the operation.
  • the PLC's flash memory is loaded onto the hardware carrier of the method, and then the firmware information in the flash memory is mainly read, mainly including: starting the boot file BOOT.BIN, device tree devicetree.dtb, kernel file uImage, and file system uramdisk.image.
  • the implementation of the integrity verification method adopts software and hardware collaborative design, the software provides grouping, and the hardware is called in parallel for calculation.
  • the verification process is embodied as the startup process of the system, and the process design is carried out according to the startup file loading process of the system.
  • the storage location is a secure, trusted location.
  • the device is powered on, first calling its own firmware verification method, and self-test verification.
  • the order of starting the reading is the same as the order of reading the PLC firmware information in the initialization phase, calculating the firmware information of the PLC, and verifying the contents in the trusted storage area one by one, and the discovery is incorrect.
  • the prompt fails to run, and if all the verifications are successful, the prompt runs successfully.
  • Trusted chain delivery By first measuring and then transferring control rights, the trust relationship will be transferred at the first level, ensuring the safe start of the PLC system.
  • Integrity check The system (this embodiment uses the embedded linux4.0.0 system) calls the hash function in the corresponding file (the function library of the hash function), and checks whether the previously stored standard value, that is, the check value, is the same by calculating the digest value. If the same, the file is complete, the file authorization is executable; if it is not the same, the file has been modified, there may be potential attacks, then the corresponding processing mechanism is to delete the file directly, and then continue to verify The integrity of a file.
  • FIG. 1 it is a schematic diagram of a functional structure of a trusted PLC startup method Zynq-7030 based on a measurement mechanism according to an embodiment of the present invention, and the PLC of the unit adopts a Zynq-7030 chip as a high-end.
  • the main controller core chip, so the picozed 7030 development board is used as the hardware platform for the functional verification work of this patent; as shown in FIG. 2, the trusted PLC startup method based on the measurement mechanism according to the embodiment of the present invention starts the file school. Check the flow chart.
  • the main flow of the work is as follows: Referring to the overall flow chart of FIG. 5, the trusted startup method of the picozed 7030 development board is introduced:
  • Step 1 On the basis of the system-on-chip SoC, the hardware module such as the security checksum algorithm chip when the embedded operating system is started, and the driver, the interface, etc. are used.
  • the SDC32A12 security chip is adopted, and the general embedded linux-2.6 is used.
  • the .34 version is implemented, and the security chip driver is packaged in the national standard SKF package.
  • Step 2 At the factory initialization, first perform its own firmware verification initialization, and use the trusted root function model provided by the security chip hardware as a trusted base to calculate the firmware startup information of its own storage area, refer to the firmware name provided in FIG. 2, and The calculation result is stored in the security chip of this embodiment.
  • fsbl is the first stage boot loader
  • wrapper.Bit is the hardware configuration bit stream file (wrapper has no special meaning)
  • uboot is the Universal Boot Loader for system boot.
  • Step 3 When the PLC starts, start the environment configuration. As shown in Figure 3, the picozed7030 startup environment configuration. When the system is powered on, the system startup hardware environment will be initialized first, and the file startup environment is configured with the addition of each file. The address, PLC boot operating system boot required files are boot boot file BOOT.BIN, device tree devicetree.dtb, kernel uImage and file system uramdisk.image.
  • Step 4 During the operation phase, the device is powered on, first calling its own firmware verification method, and self-test verification. Read and verify the firmware information of the PLC. The order of starting the reading is the same as the order of reading the PLC firmware information in the initialization phase. The hash code segment in each file is called according to the predetermined execution sequence for integrity verification, and the firmware information of the PLC is calculated. The result is verified in the trusted storage area by one-to-one correspondence. As shown in FIG. 4, the system calls the hash function in the corresponding file, and calculates the digest value to check whether it is the same as the previously stored standard value. If the same, the description file is Complete, grant file authorization executable; if not, the file has been modified, there may be potential attacks, then the corresponding processing mechanism is to delete the file directly, and then continue to verify the integrity of the next file.

Abstract

本发明公开了一种基于度量机制的可信PLC启动方法,包括以下步骤:自身固件验证初始化步骤;读取计算PLC的固件信息步骤;逐一校验并存储步骤;运行启动阶段验证步骤。本发明方法采用工业级具有可信功能的芯片作为硬件计算的核心,PLC扩展其Flash总线为可被本发明方法硬件加载,本发明方法硬件识别必要的启动信息,通过完整性校验方法对PLC系统必要的启动文件进行完整性验证,确保PLC系统在启动之后是可信的状态。本发明在保证终端设备安全的正确性及可行性的基础上,能够构建安全可信的工控系统运行环境。

Description

一种基于度量机制的可信PLC启动方法 技术领域
本发明涉及计算机可编程逻辑控制器应用技术领域,特别涉及一种基于度量机制的可信PLC启动方法。
背景技术
工业控制系统(Industrial Control Systems,ICS),是由各种自动化控制组件和实时数据采集、监测的过程控制组件共同构成。其组件包括数据采集与监控系统(SCADA)、分布式控制系统(DCS)、可编程逻辑控制器(PLC)、远程终端(RTU)、智能电子设备(IED),以及确保各组件通信的接口技术。
截至2015年9月10日,中国国家信息安全漏洞库(CNNVD)、Common Vulnerabilities & Exposures(CVE)、The Industrial Control Systems Cyber Emergency Response Team(ICS-CERT美国工业控制系统应急响应小组)三大组织公开发布的与工业控制系统相关漏洞数量为568个,涉及国内外相关厂商120个。
目前工业控制系统使用的现场控制设备、过程控制自动化软件、工程师站、操作员站、OPC接口机等设备中大量使用了标准的信息网络技术或产品。这些技术和产品并没有针对工控系统的应用环境进行优化和专门设计,导致为工控系统引入了大量的“冗余功能和配置”。工控系统的设计、实施、工程人员并没有意识到这些“冗余功能和配置”所引发的安全问题,仍然按照老思路实现控制功能。也有一部分工控厂家、控制系统开发人员注意到了信息安全,但由于相关知识和技能的缺乏,控制系统自身设计、实现的安全功能不仅没能充分利用信息系统所提供的基础安全技术和功能,而且还存在一些设计上的错误和缺陷(如:不正确的密钥管理、口令保护措施等)。
网络边界防护措施薄弱。大部分企业中,因为工业控制系统类型的多样化以及安全管理意识和职责不明确等原因,一方面网络间的数据传输和授权管理未实施明确的安全策略,另一方面企业管理层连接互联网,从而导致互联网用户可以利用企业管理网络系统的漏洞,通过“隧道”方式直接获取生产控制网关键设备的运行控制数据,对工业控制系统运行带来造成重大安全隐患。
工业控制系统计算机最大特点是相对固定,各工程师站、操作员站和OPC接口计算机等大都采用WINDOWS系统,这些系统常年无法升级补丁,也没有相应的病毒防护措施。一旦移动介质管理出现疏忽,则会导致病毒等感染事件频发。部分企业在工业控制系统检修或排除故障过程中,使用远程维护或诊断,或者使用外部移动终端,同时未采取严格的安全措施,可能导致系统的非授权访问。同时移动终端自身的安全问题(如病毒、木马等恶意程序),也可能感染整个系统。对于使用国外品牌而开放远程诊断维护的工业控制系统,这一 问题显得尤为突出。
智能制造与工业4.0战略的背景下,工业生产的数字化和信息化成为未来发展的必然趋势,高度融合IT技术的工业自动化也得到广泛应用。通过Woo-yun平台、ICS-CERT以及国家信息安全漏洞共享平台,可以看到越来多的工业控制系统(PLC、DCS、SCADA)乃至应用软件的安全漏洞被公布出来,包括诸如ABB、Schneider Electric、Siemens、Rockwell Automation等知名工业控制系统厂商的产品的各种安全漏洞。
工业控制系统终端安全主要由于现有平台架构是开放式的,恶意程序很容易植入软件系统中,而且所有试图通过软件检测恶意代码的方法都无法证明检测软件自身的安全性。其表现形式为隐藏在终端设备固件芯片中的恶意代码被攻击者远程控制,对工业控制系统进行诸如信息窃取、删除数据、破坏系统等攻击行为。
目前针对工业控制系统终端安全研究方面,主要集中在一下三个方面:
(1)基于传统PIN码的身份认证、基于生物特征的身份认证,解决移动平台缺少域隔离机制可能导致用户敏感信息泄露、接口未受保护等问题;
(2)基于口令和指纹的双因素认证解决平台是否安全可信、用户不能认证终端以及缺乏用户隐私保护机制等问题;
(3)基于移动可信模块(MTM)的可信移动平台体系结构,研究了不同身份标志域中用户与服务提供者之间的信任关系建立问题。
总体来说,工业控制系统终端可信安全研究已经取得了一些阶段性成果,但对于嵌入式设备可信启动研究仍处于起步阶段。
发明内容
本发明所要解决的技术问题在于,提供了一种基于度量机制的可信PLC启动方法。本发明方法采用工业级具有可信功能的芯片作为硬件计算的核心,PLC扩展其Flash总线为可被本发明方法硬件加载,本发明方法硬件识别必要的启动信息,通过完整性校验方法对PLC系统必要的启动文件进行完整性验证,确保PLC系统在启动之后是可信的状态。本发明在保证终端设备安全的正确性及可行性的基础上,能够构建安全可信的工控系统运行环境。
为解决上述技术问题,本发明提供了一种基于度量机制的可信PLC启动方法,包括以下步骤:在出厂初始化阶段通过设计自身固件验证方法进行自身验证;通过读取特定固件信息,进行可信存储区填充;之后在运行启动阶段,首先需要通过自身固件验证方法,再对特定固件存储区进行可信认证,实现LC系统启动可信。
为解决上述技术问题,本发明还提供了一种基于度量机制的可信PLC启动方法,包括以下步骤:
自身固件验证初始化步骤:通过芯片硬件提供的可信根为基础,整体校验自身存储区域的固件信息,一一对应存储校验结果;
读取计算PLC的固件信息步骤:在出厂初始化阶段,将PLC的flash存储器加载到硬 件载体上,之后读取flash存储器中的固件信息;
逐一校验并存储步骤:在出厂初始化阶段,通过完整性校验算法计算读取的验证PLC的固件信息,并将结果一一对应存储,直到所指定的固件信息完成整体校验;
运行启动阶段验证步骤:在运行阶段,设备加电启动,首先调用自身固件验证方法,自检验证。
所述读取验证PLC的固件信息,优选在运行阶段,调用读取计算PLC的固件信息方法,将结果于可信存储区中内容进行一一对应验证,对发现不正确的提示运行失败,对全部验证成功的,提示运行成功。
所述逐一校验并存储可以包括:完成完整性校验算法;存储区的固件信息包括:启动信息和运行的原始程序MD5值。
所述完整性校验方法优选包括:软硬件协同设计,软件提供分组,并行调用硬件进行计算。
所述逐一校验并存储可以进一步包括:系统的启动过程中,按照系统的启动文件加载过程进行流程设计。
所述逐一校验并存储优选进一步包括:存储位置为一个安全、可信的位置。
所述运行启动阶段验证时,启动读取的顺序优选包括:启动引导文件BOOT.BIN、设备树devicetree.dtb、内核文件uImage、文件系统uramdisk.image;所述运行启动阶段的验证方法包括校验值匹配方式。
所述完整性校验可以进一步包括:
系统调用相应文件中的hash函数,通过计算摘要值查看与之前存储的标准值是否相同;
如果相同,则说明文件是完整的,给予文件授权可执行;
如果不相同,则说明文件被修改过,直接删除该文件,然后继续验证下一个文件的完整性。
为解决上述技术问题,本发明还提供了一种如前述任一项所述基于度量机制的可信PLC启动方法中使用的完整性校验方法,所述完整性校验方法包括:
系统调用相应文件中的hash函数,通过计算摘要值查看与之前存储的标准值是否相同;
如果相同,则说明文件是完整的,给予文件授权可执行;
如果不相同,则说明文件被修改过,直接删除该文件,然后继续验证下一个文件的完整性。
本发明产生的有益效果包括:本发明基于度量机制的可信PLC启动方法,采用工业级芯片搭建硬件环境,协同处理的方式实现快速的硬件加解密验证,并用完整性算法对PLC系统启动文件进行完整性验证,确保PLC系统的可信启动。
本发明产生的有益效果包括:本发明基于度量机制的可信PLC启动方法,采用工业级芯片搭建硬件环境,协同处理的方式实现快速的硬件加解密验证,并用完整性算法对PLC系统启动文件进行完整性验证,确保PLC系统的可信启动。
附图说明
图1为本发明实施例所述基于度量机制的可信PLC启动方法Zynq-7030功能结构示意图;
图2为本发明实施例所述基于度量机制的可信PLC启动方法系统启动文件校验流程图;
图3为本发明实施例所述启动环境配置图;
图4为本发明实施例所述基于hash算法进行文件完整性验证示意图;
图5为本发明实施例所述基于度量机制的可信PLC启动方法流程图。
具体实施方式
为使本发明的目的、技术方案及优点更加清楚、明确,以下参照附图并举实施例对本发明进一步详细说明,但本发明并不局限于这些实施例。
PLC(Programmable Logic Controller)可编程逻辑控制器,是一种采用一类可编程的存储器,用于其内部存储程序,执行逻辑运算、顺序控制、定时、计数与算术操作等面向用户的指令,并通过数字或模拟式输入/输出控制各种类型的机械或生产过程。
可编程逻辑控制器按结构分为整体型和模块型两类,按应用环境分为现场安装和控制室安装两类;按CPU字长分为1位、4位、8位、16位、32位、64位等。从应用角度出发,通常可按控制功能或输入输出点数选型。
整体型可编程逻辑控制器的I/O点数固定,因此用户选择的余地较小,用于小型控制系统;模块型可编程逻辑控制器提供多种I/O卡件或插卡,因此用户可较合理地选择和配置控制系统的I/O点数,功能扩展方便灵活,一般用于大中型控制系统。
本发明基于度量机制的可信PLC启动方法,采用工业级芯片搭建硬件环境,协同处理的方式实现快速的硬件加解密验证,并用完整性算法对PLC系统启动文件进行完整性验证,确保PLC系统的可信启动。
在本发明的一实施例中,提供了一种基于度量机制的可信PLC启动方法,该方法在出厂初始化阶段通过设计自身固件验证方法进行自身验证,通过读取特定固件信息,进行可信存储区填充(可信存储区为在flash中开辟一段用户不可见的区域,用于存储校验值);之后在运行阶段,首先需要通过自身固件验证方法(系统在重启的情况下,或者用户开机使用的情况下,首先要对自身的可信性进行认证,方法为自身固件验证方法,自身固件验证方法对应自身固件验证初始化),再对特定固件存储区进行可信认证,最终实现PLC系统启动可信。
其中,自身固件验证方法采用校验值匹配方式。特定固件信息指工控设备的固件信息,本实施例指PLC的固件信息。由于不同工控设备的固件信息不完全一样的,需要针对自身固件信息启动流程进行特定处理。
该方法主要包括以下几个部分:
自身固件验证初始化:通过FPGA芯片硬件提供的可信根为基础,整体校验自身存储区域的固件信息(包括引导文件BOOT.BIN、设备树devicetree.dtb、内核文件uImage和文件系统uramdisk.image),将FPGA自身固件信息以及算出来的校验值一一对应存储校验结 果,如果通过,则FPGA顺利启动。
读取计算PLC的固件信息:在出厂初始化阶段,将PLC的flash存储器加载到本方法的硬件载体上,之后主要读取flash存储器中的固件信息(包括PLC的引导文件BOOT.BIN、设备树devicetree.dtb、内核文件uImage和文件系统uramdisk.image、以及控制应用程序)。
逐一校验并存储:在出厂初始化阶段,芯片通过完整性校验算法计算读取的用于验证PLC的固件信息(即flash存储器中的固件信息),并将验证PLC的固件信息与该固件信息的校验结果一一对应存储于可信存储区中,直到所指定的固件信息完成整体校验。
运行启动阶段:在运行阶段,FPGA设备加电启动,首先调用自身固件验证方法,进行自检验证。
对特定固件存储区进行可信认证:读取验证PLC的固件信息,通过完整性校验算法计算读取的用于验证PLC的固件信息,将结果与可信存储区中内容(PLC的校验结果)进行一一对应验证,对发现不正确的提示运行失败,对全部验证成功的,提示运行成功。
所述的校验方法主要是完成完整性校验算法,存储区的固件信息主要包括启动信息和运行的原始程序MD5值。
用于验证PLC的固件信息主要包括:启动引导文件BOOT.BIN、设备树devicetree.dtb、内核文件uImage、文件系统uramdisk.image、以及控制应用程序。
完整性校验方法的实现采用软硬件协同设计,软件提供分组,并行调用硬件进行计算:采用两个芯片进行计算;将验证PLC的固件信息分成两部分、分别输出给FPGA内的两个安全加密芯片TPM,根据固件信息的大小以及每个TPM的最大计算量,控制两个芯片的计算次数。根据固件信息的大小比如芯片最多能算16Byte的字符块,如果计算固件信息为256Byte,则需要2个芯片分别算256/16*2=8次,如果一个芯片需要算16次,这个需要软件来控制分组情况。完整性校验方法可采用HASH、SHA、MD5算法中的一种。
逐一验证体现为系统的启动过程,按照系统的启动文件加载过程进行流程设计。
存储位置为一个安全、可信的位置,本实施例为可信存储区。
启动读取的顺序包括:启动引导文件BOOT.BIN、设备树devicetree.dtb、内核文件uImage和文件系统uramdisk.image。
验证方法可采用校验值匹配方式。
BOOT.BIN文件由fsbl、uboot、比特流文件组成。
在本发明的另一实施例中,提供了如下一种基于度量机制的可信PLC启动方法,包括:
初始化阶段,首先进行自身固件验证初始化,通过芯片硬件提供的可信根功能模型为可信基,计算自身存储区域的固件启动信息,并将计算结果进行安全的存储。
优先地,校验方法主要是完成完整性校验算法,存储区的固件信息主要包括启动信息和运行的原始程序MD5值。
之后对PLC固件验证初始化,在出厂初始化阶段,将PLC的flash存储器加载到本方法的硬件载体上,之后主要读取flash存储器中的固件信息,主要包括:启动引导文件 BOOT.BIN、设备树devicetree.dtb、内核文件uImage和文件系统uramdisk.image。
对读取信息进行可信链传递逐一校验并存储,分阶段计算读取的验证PLC的固件信息的完整性校验算法的校验值,并将结果一一对应存储,直到所指定的固件信息完成整体校验。
优先地,完整性校验方法的实现采用软硬件协同设计,软件提供分组,并行调用硬件进行计算。
优先地,逐一验证体现为系统的启动过程,按照系统的启动文件加载过程进行流程设计。
优先地,存储位置为一个安全、可信的位置。
运行阶段,设备加电启动,首先调用自身固件验证方法,自检验证。
读取验证PLC的固件信息,启动读取的顺序与初始化阶段读取PLC固件信息的顺序一致,计算PLC的固件信息,将结果于可信存储区中内容进行一一对应验证,对发现不正确的提示运行失败,对全部验证成功的,提示运行成功。
可信链传递:通过先度量再移交控制权的方式,信任关系将一级一级的传递下去,保证了PLC系统的安全启动。
完整性校验:系统(本实施例使用嵌入式linux4.0.0系统)调用相应文件(hash函数的函数库)中的hash函数,通过计算摘要值查看与之前存储的标准值即校验值是否相同,如果相同,则说明文件是完整的,给予文件授权可执行;如果不相同,则说明文件被修改过,可能存在潜在的攻击,这时相应的处理机制是直接删除该文件,然后继续验证下一个文件的完整性。
在本发明的再一实施例中,如图1所示,为本发明实施例所述基于度量机制的可信PLC启动方法Zynq-7030功能结构示意图,本单位的PLC采用Zynq-7030芯片作为高端主控器核心芯片,所以采用picozed 7030开发板做此专利的功能性验证工作的硬件平台;如图2所示,为本发明实施例所述基于度量机制的可信PLC启动方法系统启动文件校验流程图。本发明的方法在具体实施时,工作主要流程如下,参考图5整体流程图进行介绍本picozed 7030开发板的可信启动方法:
步骤一:在片上系统SoC的基础上提供嵌入式操作系统启动时的安全校验和算法芯片等硬件模块,以及驱动、接口等,本专利实施例中采用SDC32A12安全芯片,通用嵌入式linux-2.6.34版本进行,安全芯片驱动采用国密标准SKF封装。
步骤二,在出厂初始化时,首先进行自身固件验证初始化,通过安全芯片硬件提供的可信根功能模型为可信基,计算自身存储区域的固件启动信息,参考图2提供的固件名,并将计算结果存储于本实施例的安全芯片中。其中,fsbl为第一阶段启动文件(first stage boot loader),wrapper.Bit为硬件配置比特流文件(wrapper没有特殊含义),uboot为Universal Boot Loader为系统引导。
步骤三:在PLC启动时,启动环境配置,如图3所示为picozed7030启动环境配置,当在系统上电之后,首先系统启动硬件环境会被初始化,系统启动环境中配置了各文件的加 载地址,PLC嵌入式操作系统启动需要的文件有启动引导文件BOOT.BIN、设备树devicetree.dtb、内核uImage和文件系统uramdisk.image。
对读取信息进行可信链传递逐一校验并存储,分阶段计算读取的验证PLC的固件信息的完整性校验值,并将结果一一对应存储,存储内容包括启动信息和运行原始程序的MD5值,直到所指定的固件信息完成整体校验。
步骤四:运行阶段,设备加电启动,首先调用自身固件验证方法,自检验证。读取验证PLC的固件信息,启动读取的顺序与初始化阶段读取PLC固件信息的顺序一致,按照预定的执行顺序调用各文件中的hash代码段进行完整性校验,计算PLC的固件信息,将结果于可信存储区中内容进行一一对应验证,如图4所示系统调用相应文件中的hash函数,通过计算摘要值查看与之前存储的标准值是否相同,如果相同,则说明文件是完整的,给予文件授权可执行;如果不相同,则说明文件被修改过,可能存在潜在的攻击,这时相应的处理机制是直接删除该文件,然后继续验证下一个文件的完整性。
通过先度量再移交控制权的方式,信任关系将一级一级的传递下去,对发现不正确的提示运行失败,对全部验证成功的,提示运行成功。
待所有文件完整性验证完成之后,如果有文件被修改,系统会因为缺少启动所必需文件而无法启动,需要等待管理员重新加载文件,进行新一轮校验,直至校验成功,方可启动。
以上所述,仅是本发明的几个实施例,并非对本发明做任何形式的限制,虽然本发明以较佳实施例揭示如上,然而并非用以限制本发明,任何熟悉本专业的技术人员,在不脱离本发明技术方案的范围内,利用上述揭示的技术内容做出些许的变动或修饰均等同于等效实施案例,均属于技术方案范围内。

Claims (10)

  1. 一种基于度量机制的可信PLC启动方法,其特征在于,包括以下步骤:在出厂初始化阶段通过设计自身固件验证方法进行自身验证;通过读取特定固件信息,进行可信存储区填充;之后在运行启动阶段,首先需要通过自身固件验证方法,再对特定固件存储区进行可信认证,实现LC系统启动可信。
  2. 一种基于度量机制的可信PLC启动方法,其特征在于,包括以下步骤:
    自身固件验证初始化步骤:通过芯片硬件提供的可信根为基础,整体校验自身存储区域的固件信息,一一对应存储校验结果;
    读取计算PLC的固件信息步骤:在出厂初始化阶段,将PLC的flash存储器加载到硬件载体上,之后读取flash存储器中的固件信息;
    逐一校验并存储步骤:在出厂初始化阶段,通过完整性校验算法计算读取的验证PLC的固件信息,并将结果一一对应存储,直到所指定的固件信息完成整体校验;
    运行启动阶段验证步骤:在运行阶段,设备加电启动,首先调用自身固件验证方法,自检验证。
  3. 根据权利要求2所述的基于度量机制的可信PLC启动方法,其特征在于,所述读取验证PLC的固件信息,在运行阶段,调用读取计算PLC的固件信息方法,将结果于可信存储区中内容进行一一对应验证,对发现不正确的提示运行失败,对全部验证成功的,提示运行成功。
  4. 根据权利要求2所述的基于度量机制的可信PLC启动方法,其特征在于,所述逐一校验并存储包括:完成完整性校验算法;存储区的固件信息包括:启动信息和运行的原始程序MD5值。
  5. 根据权利要求2所述的基于度量机制的可信PLC启动方法,其特征在于,所述完整性校验方法包括:软硬件协同设计,软件提供分组,并行调用硬件进行计算。
  6. 根据权利要求2所述的基于度量机制的可信PLC启动方法,其特征在于,所述逐一校验并存储进一步包括:系统的启动过程中,按照系统的启动文件加载过程进行流程设计。
  7. 根据权利要求2所述的基于度量机制的可信PLC启动方法,其特征在于,所述逐一校验并存储进一步包括:存储位置为一个安全、可信的位置。
  8. 根据权利要求1或2所述的基于度量机制的可信PLC启动方法,其特征在于,所述运行启动阶段验证时,启动读取的顺序包括:启动引导文件BOOT.BIN、设备树devicetree.dtb、内核文件uImage、文件系统uramdisk.image;所述运行启动阶段的验证方法包括校验值匹配方式。
  9. 根据权利要求1或2所述的基于度量机制的可信PLC启动方法,其特征在于,所述完整性校验进一步包括:
    系统调用相应文件中的hash函数,通过计算摘要值查看与之前存储的标准值是否相同;
    如果相同,则说明文件是完整的,给予文件授权可执行;
    如果不相同,则说明文件被修改过,直接删除该文件,然后继续验证下一个文件的完整性。
  10. 一种如权利要求1~8中任一项所述基于度量机制的可信PLC启动方法中使用的完整性校验方法,其特征在于,所述完整性校验方法包括:
    系统调用相应文件中的hash函数,通过计算摘要值查看与之前存储的标准值是否相同;
    如果相同,则说明文件是完整的,给予文件授权可执行;
    如果不相同,则说明文件被修改过,直接删除该文件,然后继续验证下一个文件的完整性。
PCT/CN2017/076532 2016-12-15 2017-03-14 一种基于度量机制的可信plc启动方法 WO2018107595A1 (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US15/572,624 US11093258B2 (en) 2016-12-15 2017-03-14 Method for trusted booting of PLC based on measurement mechanism

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201611162151.2A CN106775716B (zh) 2016-12-15 2016-12-15 一种基于度量机制的可信plc启动方法
CN201611162151.2 2016-12-15

Publications (1)

Publication Number Publication Date
WO2018107595A1 true WO2018107595A1 (zh) 2018-06-21

Family

ID=58892604

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2017/076532 WO2018107595A1 (zh) 2016-12-15 2017-03-14 一种基于度量机制的可信plc启动方法

Country Status (3)

Country Link
US (1) US11093258B2 (zh)
CN (1) CN106775716B (zh)
WO (1) WO2018107595A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109104458A (zh) * 2018-06-30 2018-12-28 深圳中软华泰信息技术有限公司 一种用于云平台可信性验证的数据采集方法及系统
CN112131537A (zh) * 2020-09-25 2020-12-25 北京计算机技术及应用研究所 一种对zynq芯片程序镜像文件的加解密的方法

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3428756B1 (de) * 2017-07-10 2019-06-19 Siemens Aktiengesellschaft Integritätsüberwachung bei automatisierungssystemen
JP6942601B2 (ja) * 2017-10-18 2021-09-29 キヤノン株式会社 情報処理装置、その制御方法、及びプログラム
CN109840430B (zh) 2017-11-28 2023-05-02 中国科学院沈阳自动化研究所 Plc的安全处理单元及其总线仲裁方法
CN109993002B (zh) 2017-12-29 2023-12-22 西门子公司 一种数据完整性保护方法和装置
CN109388474A (zh) * 2018-09-25 2019-02-26 郑州云海信息技术有限公司 一种Qemu虚拟可信根数据完整性的检测方法及系统
CN109684839A (zh) * 2018-12-19 2019-04-26 Oppo广东移动通信有限公司 自定义模型防篡改方法、装置、终端设备及存储介质
CN111814205B (zh) * 2019-04-12 2023-11-14 阿里巴巴集团控股有限公司 计算处理方法、系统、设备、存储器、处理器及计算机设备
CN112578763B (zh) * 2019-09-30 2023-01-17 北京国双科技有限公司 安全授权方法、故障诊断方法、系统及相关产品
CN110837390B (zh) * 2019-11-05 2023-04-07 易思维(杭州)科技有限公司 一种Zynq平台远程升级方法
CN110851188B (zh) * 2019-12-18 2023-08-29 宁波和利时信息安全研究院有限公司 一种基于双体架构的国产plc可信链实现装置及方法
CN110826075A (zh) * 2019-12-20 2020-02-21 宁波和利时信息安全研究院有限公司 Plc动态度量方法、装置、系统、存储介质及电子设备
CN111177708A (zh) * 2019-12-30 2020-05-19 山东超越数控电子股份有限公司 基于tcm芯片的plc可信度量方法、系统及度量装置
CN111241548B (zh) * 2020-01-07 2022-09-09 飞腾信息技术有限公司 计算机启动方法
CN112035152B (zh) * 2020-08-24 2023-10-10 成都三零嘉微电子有限公司 一种SoC芯片固件升级的安全处理系统及方法
US11797680B2 (en) * 2020-08-28 2023-10-24 Micron Technology, Inc. Device with chain of trust
CN112149800A (zh) * 2020-09-08 2020-12-29 北京工业大学 一种反馈神经网络可信执行方法及装置
CN112241141B (zh) * 2020-11-12 2022-08-09 上海电气风电集团股份有限公司 Plc控制系统的硬件配置方法、系统、设备及介质
CN112632562B (zh) * 2020-12-28 2024-01-26 四川虹微技术有限公司 设备启动方法、设备管理方法和嵌入式设备
CN112948086B (zh) * 2021-03-04 2023-11-03 浙江中控研究院有限公司 一种可信plc控制系统
CN113987599B (zh) * 2021-12-28 2022-03-22 苏州浪潮智能科技有限公司 一种固件可信根的实现方法、装置、设备和可读存储介质
CN115062330B (zh) * 2022-08-18 2022-11-11 麒麟软件有限公司 基于tpm的智能密码钥匙密码应用接口的实现方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103645672A (zh) * 2013-12-16 2014-03-19 华南理工大学 一种plc固件完整性验证装置及验证方法

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5606660A (en) * 1994-10-21 1997-02-25 Lexar Microsystems, Inc. Method and apparatus for combining controller firmware storage and controller logic in a mass storage system
US8667580B2 (en) * 2004-11-15 2014-03-04 Intel Corporation Secure boot scheme from external memory using internal memory
US7774596B2 (en) * 2005-02-02 2010-08-10 Insyde Software Corporation System and method for updating firmware in a secure manner
EP2030124A4 (en) * 2006-05-24 2012-12-12 Safend Ltd METHOD AND SYSTEM FOR DEFENSE OF SECURITY SOFTWARE IN A USER'S COMPUTER
JP2008102618A (ja) * 2006-10-17 2008-05-01 Toshiba Corp 電子機器およびファームウェア保護方法
US9367328B2 (en) * 2012-06-28 2016-06-14 Intel Corporation Out-of-band host OS boot sequence verification
US9940069B1 (en) * 2013-02-27 2018-04-10 EMC IP Holding Company LLC Paging cache for storage system
CN103559591B (zh) * 2013-11-20 2016-10-26 北京可信华泰信息技术有限公司 基于可信计算的软件管理系统和管理方法
CN104318142A (zh) * 2014-10-31 2015-01-28 山东超越数控电子有限公司 一种计算机可信启动方式
US9652570B1 (en) * 2015-09-03 2017-05-16 Xilinx, Inc. Automatic implementation of a customized system-on-chip

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103645672A (zh) * 2013-12-16 2014-03-19 华南理工大学 一种plc固件完整性验证装置及验证方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
LIU, GUIXIONG ET AL.: "Embedded system firmware security verification method based on Hash algorithm", CHINA MEASUREMENT & TEST, vol. 40, no. 5, 30 September 2014 (2014-09-30) *
ZHANG, XIANGHONG ET AL.: "The Study on the Security Architecture of Industrial Control based on Trusted Computing", SECRECY SCIENCE AND TECHNOLOGY, 8 October 2014 (2014-10-08) *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109104458A (zh) * 2018-06-30 2018-12-28 深圳中软华泰信息技术有限公司 一种用于云平台可信性验证的数据采集方法及系统
CN109104458B (zh) * 2018-06-30 2022-09-06 深圳可信计算技术有限公司 一种用于云平台可信性验证的数据采集方法及系统
CN112131537A (zh) * 2020-09-25 2020-12-25 北京计算机技术及应用研究所 一种对zynq芯片程序镜像文件的加解密的方法
CN112131537B (zh) * 2020-09-25 2023-10-20 北京计算机技术及应用研究所 一种对zynq芯片程序镜像文件的加解密的方法

Also Published As

Publication number Publication date
CN106775716B (zh) 2020-04-17
US11093258B2 (en) 2021-08-17
US20180285127A1 (en) 2018-10-04
CN106775716A (zh) 2017-05-31

Similar Documents

Publication Publication Date Title
WO2018107595A1 (zh) 一种基于度量机制的可信plc启动方法
US9690498B2 (en) Protected mode for securing computing devices
US11843705B2 (en) Dynamic certificate management as part of a distributed authentication system
CN104160403B (zh) 使用单个可信平台模块测量平台部件
LeMay et al. Cumulative attestation kernels for embedded systems
US8850212B2 (en) Extending an integrity measurement
US7921286B2 (en) Computer initialization for secure kernel
KR101229148B1 (ko) 소프트웨어 신뢰성 검증 방법, 장치 및 컴퓨터 판독가능 매체
KR20170095161A (ko) 시큐어 시스템 온 칩
CN113039545A (zh) 设备的安全引导辅助及相关系统、方法和设备
EP4116851A1 (en) Trusted measurement method and related apparatus
US20110131420A1 (en) Computing entities, platforms and methods operable to perform operations selectively using different cryptographic algorithms
US11416604B2 (en) Enclave handling on an execution platform
Francillon et al. Systematic treatment of remote attestation
CN110674494B (zh) 进程的保护方法、系统及数据处理方法
Grisafi et al. {PISTIS}: Trusted Computing Architecture for Low-end Embedded Systems
US20170180139A1 (en) Key revocation
CN112016090B (zh) 安全计算卡,基于安全计算卡的度量方法及系统
CN111597560B (zh) 一种安全可信模组启动方法及系统
Yao et al. Building Secure Firmware
CN112948086A (zh) 一种可信plc控制系统
De Oliveira Nunes et al. Casu: Compromise avoidance via secure update for low-end embedded systems
CN114095227A (zh) 一种数据通信网关可信认证方法、系统及电子设备
CN113641463A (zh) 虚拟化系统可信认证方法、系统及计算机可读存储介质
Shang et al. The research and application of trusted startup of embedded TPM

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 15572624

Country of ref document: US

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 17880616

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 17880616

Country of ref document: EP

Kind code of ref document: A1