WO2012062023A1 - 一种提高soc系统安全的总线监视器及其实现方法 - Google Patents

一种提高soc系统安全的总线监视器及其实现方法 Download PDF

Info

Publication number
WO2012062023A1
WO2012062023A1 PCT/CN2011/000326 CN2011000326W WO2012062023A1 WO 2012062023 A1 WO2012062023 A1 WO 2012062023A1 CN 2011000326 W CN2011000326 W CN 2011000326W WO 2012062023 A1 WO2012062023 A1 WO 2012062023A1
Authority
WO
WIPO (PCT)
Prior art keywords
bus
unit
monitor
monitoring
data
Prior art date
Application number
PCT/CN2011/000326
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 US13/322,086 priority Critical patent/US8601536B2/en
Priority to EP11784403.5A priority patent/EP2472408B1/en
Publication of WO2012062023A1 publication Critical patent/WO2012062023A1/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/82Protecting input, output or interconnection devices
    • G06F21/85Protecting input, output or interconnection devices interconnection devices, e.g. bus-connected or in-line devices

Definitions

  • Bus monitor for improving safety of SOC system and implementation method thereof
  • the invention relates to the security of the S0C system chip, in particular to a bus monitor for improving the security of the SOC system and an implementation method thereof. Background technique
  • Secure S0C chips are widely used in various fields of the information society. Their main functions include secure storage of user-critical data, electronic signature, identity authentication, and data encryption and decryption.
  • Safety The S0C chip is at the heart of the system's safety control, so its own safety is critical. Because of the importance of data in security S0C chips, various attacks against secure S0C chips are emerging. The security strategy currently corresponding to various attack methods has been deeply researched and implemented. Security initialization, storage encryption protection, storage integrity checking, bus protection, etc. are the most common security policies.
  • Common attack methods include attack methods such as jump instruction attack, interrupt attack, and stack overflow attack; or directly perform fault attack to destroy security initialization or security program execution. Causes the chip to run abnormally.
  • attack methods such as jump instruction attack, interrupt attack, and stack overflow attack
  • fault attack to destroy security initialization or security program execution. causess the chip to run abnormally.
  • the behavior of the bus sequence embodied in these security policies should be detected. It is a pity that the scheme for real-time monitoring of the data transmission channel system bus through a certain security algorithm is temporarily blank.
  • the object of the present invention is to solve the above problems in the prior art and propose an improved SOC system.
  • the present invention detects errors by monitoring the correctness and integrity of the corresponding bus access sequence behavior on the S0C bus during the security configuration process or the security program operation process, and generates system warnings, thereby effectively preventing information leakage.
  • the technical solution adopted by the present invention is to provide a bus monitor for improving the security of the SOC system.
  • the bus monitor is disposed between the system bus and the system control unit, and includes a configuration unit, a condition judging unit, and a valid data selecting unit. a hardware algorithm unit and a comparison output unit, where:
  • the configuration unit is configured to set and store configuration information that the bus control signal needs to be monitored, and update the state of the bus monitor;
  • the condition determining unit determines whether it is necessary to start the monitoring operation according to the configuration information of the configuration unit, combined with the current bus behavior information given by the bus control signal, and generates a control signal to the effective data selecting unit when the monitoring is required;
  • the valid data selection unit selects a bus monitor from a bus address accessed by the bus, a bus master device number, a bus read data or a write data, and a key in the configuration unit according to the control information of the condition determination unit and the configuration information of the configuration unit.
  • the data to be calculated is sent to the hardware algorithm unit, and the hardware algorithm unit is notified to perform calculation on the calculated data;
  • the hardware algorithm unit performs operation on the data to be calculated output by the effective data selection unit according to the control signal sent by the configuration unit and the condition determination unit, and sends the final calculation result to the comparison output unit;
  • the comparison output unit compares the output of the hardware algorithm unit with the condition preset by the configuration unit, and triggers the “ ⁇ alarm signal when it is inconsistent, and sends the signal to the system control unit.
  • the invention also proposes a bus monitoring method for improving the security of the S0C system, comprising the following steps: Step 1. setting configuration information required in the bus monitoring process in the configuration unit;
  • Step 2 The condition judging unit ⁇ according to the configuration information of the configuration unit, combined with the current bus behavior information given by the bus control signal, determines whether to monitor the bus, and generates a control signal to the control effective data unit, and sends it to the hardware algorithm unit. calculate data;
  • Step 3 The valid data selection unit selects the data to be calculated from the bus address, the bus master number, the bus read data or the write data, and the configuration unit output key according to the control information of the condition judgment unit, and sends the data to be calculated.
  • Step 4 The hardware algorithm unit performs the operation according to the algorithm selected by the configuration unit according to the control signal sent by the effective data selection unit, and the final calculation result Send to the comparison output unit;
  • the present invention has the following beneficial effects:
  • the present invention focuses on the behavior of protecting important data, and pays insufficient attention to the effect of protection.
  • One possible risk is that the protection behavior fails under malicious attack or unexpected failure, the system
  • remedial security measures cannot be taken in time, resulting in information leakage.
  • the invention can promptly warn the system of abnormal bus sequence access behavior, which helps the system to take remedial security measures in time, and realizes a bus monitor for improving information security of the SOC system. .
  • the invention can effectively improve the resistance of the S0C system to the fault attack, and can timely warn the system about the security configuration or the wrong behavior of the critical program under the malicious fault or the unintentional fault, so as to ensure that the system can take remedial security measures in time.
  • the present invention can solve the integrity and authenticity of the security configuration process and key procedures from the final bus transmission channel, and improve the system's ability to prevent security changes from security configuration data and key procedures.
  • the present invention realizes real-time monitoring of bus behavior by taking into account the complexity of the bus timing itself, the configurability of the data to be monitored, and the configurability of the monitoring length.
  • the present invention performs an integrity algorithm operation on the bus address and data of a specific access sequence during the operation of the secure S0C system, and compares the final operation result with the expected score to determine whether the particular access sequence has been tampered with.
  • the present invention prevents bus addresses or important data from being forged or attacked.
  • the present invention prevents a bus master from impersonating another bus master to initiate bus access.
  • the user can decide whether to repeat the monitoring according to the system security requirements.
  • the present invention does not affect system bus behavior.
  • the present invention considers that there is a crash or crash in the system, causing the bus to wait for a timeout, and the user can configure the maximum timeout waiting period.
  • the bus waits for more than the preset maximum waiting period, the bus that has timed out is recorded. Behavior, and gives a timeout warning signal.
  • the S0C system can force a recovery of the bus transmission based on the timeout warning message and perform exception handling. This mechanism effectively prevents the abnormal behavior of the secure S0C system from being in an unexpected timeout waiting condition for a long time, improves the efficiency of the bus, and ensures the timely execution of some key tasks.
  • the invention is particularly suitable for a secure SOC system with multiple data-sensitive and vulnerable application scenarios, and is easy to integrate, and does not burden the entire SOC chip timing and performance.
  • Figure 3 is a working flow chart of the bus monitor
  • the core idea of the present invention is: real-time monitoring of a bus transmission sequence involving safety-critical, if the behavior of the bus transmission sequence to be monitored does not conform to the expected behavior, it is determined that the bus transmission sequence is abnormal due to unintentional failure or malicious failure or tampering attack. , promptly issue a warning to the system to ensure that the system can handle this exception in time.
  • FIG. 1 is a schematic diagram showing the internal structure of a built-in bus monitor in a secure SOC (System on Chip) chip according to the present invention.
  • S0C system bus 1 is a key channel for data transfer in a secure S0C chip.
  • the master device such as CPU, DMA
  • the slave device such as the chip memory RAM
  • the S0C system bus 1 plays a very important role in the secure S0C chip.
  • the bus monitor 21 proposed by the present invention includes a valid data selecting unit 201, a condition judging unit 202, a timeout detecting unit 203, a configuring unit 204, a hardware algorithm unit 205, and a comparison output unit 206.
  • a valid data selecting unit 201 the bus monitor 21 proposed by the present invention includes a valid data selecting unit 201, a condition judging unit 202, a timeout detecting unit 203, a configuring unit 204, a hardware algorithm unit 205, and a comparison output unit 206.
  • the design implementation of each unit module can be properly adjusted at the right time.
  • the configuration unit 204 is configured to store bus monitor configuration information, mainly by a control register, a monitor start address register, a monitor length register, a master device register, a preset key register, a desired monitor result register, a bus status register, a timeout register, and a fault.
  • the address register and the like are composed. The functions implemented by each register component are described in detail as follows:
  • the control register is used to record the general configuration information of the master device to the bus monitor 21, and the bus monitor 21 needs to operate according to the configuration information, including the monitor enable bit, which is the global control bit of the bus monitor 21, which is available to the user. Configure this bit to be active or inactive to enable or disable the bus view bus monitor 21; the trigger mode control bit of the bus monitor 21, by configuring this bit to implement the monitor boot mode from the following two modes: Immediate Start monitoring or start monitoring from the specified address; Repeat the monitoring enable control bit, determine whether to start the repeat monitoring function by configuring this bit to different status. If the repeat monitoring function is started, after the specified effective length sequence monitoring is completed, the next bus behavior is satisfied.
  • the timeout monitoring control bit is configured to determine whether to monitor the bus timeout behavior; monitoring the condition control bit, It is used to determine which bus access is the bus access sequence that needs to be monitored.
  • the monitoring algorithm selects bits. According to the security requirements, the designer can program to decide which algorithm to use to monitor the bus behavior.
  • the data selection bit to be calculated indicates that the monitoring is satisfied. Some or all of the conditional bus master number, bus address, bus read data, bus write data, and preset key are selected as data to be calculated.
  • the monitor start address register is used to record the start monitor address of the bus monitor 21.
  • the trigger mode control bit is selected to start monitoring from the specified address, if the monitor condition is satisfied, the monitor is started when the bus monitor 21 monitors that the bus operation address matches the start address, otherwise the bus monitor is not performing monitoring. Idle state.
  • the master device register is used to configure the bus monitor 21 master number to be monitored. If the monitoring condition configures the major device number match, the monitoring condition is satisfied only if the bus monitor 21 detects that the master device of the current bus operation matches one or more master device numbers in the master device register. This feature prevents a non-secure bus master from impersonating another bus master to initiate bus access. When the bus monitor 21 detects that the master device currently performing the operation is illegal, a warning message is issued in time to prevent the key information from being acquired or destroyed by the illegal device.
  • the Preset Key Register is used to configure the key used in the monitoring process, which is not readable.
  • the key can participate in the operation at a fixed point, and can participate in the operation in real time, which can effectively prevent the attacker from tampering with the desired result according to the bus monitor principle, further ensuring Monitor the integrity and security of the process.
  • the desired monitor result register is used to configure the result of the operation of the monitor data desired by the user after the end of the specified length bus sequence monitoring.
  • the bus status register is used for recording. After the specified length bus effective sequence monitoring is completed, the comparison output unit 206 writes the final comparison result (normal or error), and the user can query whether a certain bus operation is performed through the bus status register in the configuration unit 204. normal. At the same time, other bus behaviors such as timeouts monitored by the bus monitor will also be reflected in the bus status register. The presence of this register ensures that the master can know the bus behavior at any time.
  • the timeout register is used to record the maximum bus device wait period. Users can make proper configuration in the system itself, for example, when a device exists in the system, it often takes a long waiting period. When you can configure a timeout register with a large value. Generally, when configuring the timeout register, the S0C system device needs to be evaluated to obtain an appropriate value, that is, the timeout behavior will not be falsely reported, and the timeout behavior will not be missed, thereby ensuring the working efficiency of the bus. When the bus times out, the bus monitor will issue a timeout warning signal in time to instruct the system to force the end of the current bus access to prevent the system from a safety hazard or system failure due to bus timeout.
  • the fault address register is used to record the address at which the bus has a timeout fault. After the timeout detecting unit 203 detects the bus timeout behavior, the bus address in which the timeout state occurs is written to the fault address register, and the master device can obtain by reading the register. Bus timeout information.
  • the configuration unit 204 is equivalent to a slave device in the SOC system.
  • the accuracy of its configuration is related to whether or not the bus monitoring function designed in advance can be realized.
  • the condition judging unit 202 is the main control unit of the present invention and is mainly used to judge whether or not the bus operation satisfies the monitoring condition of the bus monitor 21. It monitors the control information including the address of the bus in real time according to the monitoring condition control bit given by the configuration unit 203.
  • the valid data selection unit 201 is instructed to acquire the valid content and sent to the hardware algorithm unit 205 for calculation; if the bus operation does not satisfy the monitoring condition, the bus operation is ignored.
  • the filter condition of the conditional evaluation unit for the bus operation may be one or more of the following conditions: a master device number match or no, an instruction fetch operation or a data transfer operation, a read access or write access, a privileged access or a normal access, and the like.
  • a master device number match condition the bus operation of the specified master device number can be monitored; with the instruction fetch operating condition, the microprocessor instruction execution process can be monitored. If you do not care about the major device number, you can disable the master device number matching function so that all access operations on the bus can be monitored.
  • the condition judging unit also judges whether or not the bus sequence monitoring of the prescribed length is completed, and transmits the completion indication signal to the hardware algorithm unit 205.
  • the valid data selecting unit 201 selects the data to be calculated from the bus address, the bus master number, the bus read data or the write data, and the configuration unit output key according to the control information of the condition judging unit for the bus operation satisfying the monitoring condition. And the data to be calculated is organized into a convenient operation form and sent to the hardware algorithm unit 205, instructing the hardware algorithm unit to operate thereon.
  • the hardware algorithm unit 205 is the core unit of the present invention, and the speed of its work is directly related to the real-time performance of the bus monitoring.
  • the hardware algorithm unit After receiving the calculation indication signal sent by the valid data selection unit 201, the hardware algorithm unit is started, and the appropriate hardware algorithm is selected according to the algorithm selection control bit given by the configuration unit 204 to calculate the data to be calculated sent by the effective data selection unit 205. .
  • the hardware algorithm unit Upon receiving the instruction signal indicating the end of the monitoring sent by the condition judging unit 202, the hardware algorithm unit completes the operation and transmits the operation result to the comparison output unit 206, after which the hardware algorithm unit 205 returns to the initial state and waits for the start of the next monitoring.
  • the hardware algorithm unit includes but is not limited to the following algorithms: Cyclic Redundancy Check (CRC) algorithm (such as CRC- 16, CRC-32), Hash (HASH) algorithm (such as SHA-1, SHA-256), symmetric encryption algorithm (such as AES, DES) and so on.
  • CRC Cyclic Redundancy Check
  • HASH Hash
  • SHA-1, SHA-256 SHA-1, SHA-256
  • symmetric encryption algorithm such as AES, DES
  • the hardware algorithm unit chooses to support those hardware algorithms, depending on the bus frequency of the system bus and the processing power of the hardware algorithms.
  • the security chip designer can decide to integrate one or several algorithms based on the chip timing and area requirements.
  • the comparison output unit 206 is responsible for implementing the result of the final operation of the hardware algorithm unit 205 in the present invention and comparing the expected monitoring result register value in the configuration unit 204. If the two are inconsistent, the bus sequence behavior is considered to be abnormal due to an attack or a failure.
  • the warning message is sent to the system control unit 22 in time, and the system control unit 22 makes a reasonable response to the bus sequence error according to the user's previous configuration, such as requesting a CPU reset or partial master or slave device to stop working.
  • This real-time processing mechanism ensures that important data of the system can be system-level responsive according to the security level of the information in the case of attack and destruction, which ensures the security of the entire security system to the greatest extent.
  • the timeout detecting unit 203 is used to detect whether the S0C bus has timed out. It monitors whether the bus operation has a timeout behavior in real time according to the current bus control signal and the maximum bus waiting period set by the timeout register in the configuration unit 204. When the bus waiting period exceeds the maximum bus waiting period set by the timeout register, the timeout detecting unit 203 triggers The timeout warning message is sent to the system control unit 22, which makes a reasonable response to the bus timeout behavior based on the user's prior configuration.
  • a common timeout response mechanism is: The system first forces the end of the current bus overrun, and then the exception handler handles the timeout behavior.
  • This mechanism effectively prevents the abnormal behavior of the S0C system from being in an unexpected timeout waiting condition for a long time, ensuring the timely execution of some critical tasks, and ensuring that the system does not cause a safety hazard or system failure due to an unexpected timeout.
  • this is a flowchart of the operation of the bus monitor 21 of the present invention, and specifically includes the following steps:
  • Step 1 Set the configuration information required during the bus monitoring process in the configuration unit
  • Step 1 The condition judging unit judges whether to monitor the bus according to the configuration information of the configuration unit, combined with the current bus behavior information given by the bus control signal, and generates a control signal to the control valid data unit, and sends the data to be calculated to the hardware algorithm unit. ;
  • Step 3 The valid data selection unit selects the data to be calculated from the bus address, the bus master number, the bus read data or the write data, and the configuration unit output key according to the control information of the condition judgment unit, and sends the data to be calculated.
  • Step 4 The hardware algorithm unit performs the operation according to the algorithm selected by the configuration unit according to the control signal sent by the effective data selection unit, and the final calculation result Send to the comparison output unit;
  • Step 5 The comparison output unit compares the output of the hardware algorithm unit with the expected result preset by the configuration unit, and when not, triggers an alarm signal and sends it to the system control unit.
  • Step 6 When the bus monitor completes a valid access operation, its internal counter is automatically incremented and returns to step 2 for repeated monitoring; when the bus monitor completes the effective number of accesses defined by the configuration unit monitor length register, The control register can be stopped by monitoring, or when the next bus access meeting the monitoring start condition occurs, the monitoring is repeated.
  • the bus monitor first determines whether to monitor the bus and monitor what information (data, address, etc.) on the bus according to the register configuration in the configuration unit 204, combined with the working behavior of the current bus, and the bus control information is sent as data to be monitored.
  • the hardware algorithm circuit performs the operation, and the key can participate in the operation in real time according to the security requirement. After completing the sequence monitoring of the specified length, the operation result is compared with the expected value. If the result is consistent, the transmission is correct, otherwise the warning information is given by the system.
  • the controller completes the subsequent processing. If the register is configured for repeated monitoring, the bus monitor repeats the data flow shown in Figure 3 after completing this monitoring.
  • the default configuration of the hive can be set to start monitoring immediately, and the watch length register is set to a reasonable non-zero value by default.
  • the length of the bus sequence and the expected result of the bus sequence being monitored after the reset should be updated to the configuration unit in time. In this way, the system monitor resets, the bus monitor will immediately monitor the bus sequence behavior after reset; if the monitor monitor length and expected result registers of the bus monitor are not configured in time, the system will issue a warning to the system after monitoring the bus sequence monitoring of the default length;
  • the monitor length register and the desired result register are configured in time, and the monitor monitors whether the specified length bus access sequence after the system reset is abnormal due to an attack or failure.
  • this is a typical single bus structure secure SOC chip system, including a plurality of master devices such as a processor 401, a DMA 402, and an on-chip RAM 407, a memory interface 405, and a bus monitor 21 proposed by the present invention ( 1)
  • the master device and the slave device are connected to the slave device such as the bus monitor 21 (2) and the system bus 404 as a data transmission channel.
  • two separate bus monitors 21 of the present invention are integrated in the system, and the S0C bus is directly monitored in real time, and the security performance of the secure S0C chip is greatly improved.
  • this is a typical multi-bus structure secure SOC chip system, which also includes a plurality of master devices such as a processor 501, a DMA 402, and an on-chip RAM 509, a high-bandwidth memory interface 508, and a bus monitor of the present invention.
  • 21 (1), bus monitor 21 (2) and other slave devices, system bus 50 and system bus 506 constitute a multi-bus data transmission channel, and bus control matrix 503 enables multiple buses to cross-access different address areas in parallel.
  • the number of bus monitors 21 is changed correspondingly according to the number of buses, and is used to monitor each bus respectively.
  • the bus monitor 21 (1) is used.
  • the bus monitor ( 2 ) is used to monitor the system bus 506 , the individual bus monitors 21 are independent of each other, and other behaviors are consistent with the single bus S0C system, which ensures all the buses in the secure S0C chip system. Security.
  • the present invention can also monitor S0C bus protocol errors and report such errors to the system to make an appropriate response.
  • the present invention also monitors the bus timeout of the S0C bus due to improper operation or other reasons, and reports the timeout to the system; the system can take appropriate measures to resume the bus operation in time to prevent some critical tasks from being performed due to bus timeout.
  • the present invention provides a bus monitor for improving information security of a SOC system and an implementation method thereof, thereby ensuring integrity, real-time and security of a secure S0C chip in the process of transporting key information via a bus, and improving the system.

Description

一种提高 SOC系统安全的总线监视器及其实现方法 技术领域
本发明涉及 S0C系统芯片安全, 特别涉及一种提高 S0C系统安全的总线 监视器及其实现方法。 背景技术
随着社会信息化进程的加快, 信息的安全性越来越成为关注、 研究的重要 课题。 安全 S0C芯片在信息社会的各个领域中应用广泛, 其主要功能包括对用 户关键数据的安全存储、 电子签名、 身份鉴别以及数据加解密等。 安全 S0C芯 片是其所处的系统安全控制的核心, 因此其本身的安全性至关重要。 正因为安 全 S0C芯片中数据的重要性, 各种针对安全 S0C芯片的攻击手段层出不穷。 目 前对应于各种攻击手段的安全策略得到了深入的研究与实现。 安全初始化、 存 储加密保护、 存储完整性校验、 总线保护等是最常见的安全策略。 这些安全策 略的目的都是期望安全芯片按一种安全的方式进行运行,但它们的缺陷是侧重 保护的行为, 对保护的效果关注不够。 而且很多安全措施只局限于某一独立的 保护行为, 比如存储器保护可以限制对存储器特定区域的保护。 很多时候, 系 统的安全保护机制需要由一系列操作来完成, 比如执行一段不可分割的特定安 全程序,安全保护机制需要这个安全程序能完整地不可被中止或插入其它程序 地被执行。 目前安全 S0C芯片针对数据传输通道上序列操作行为是否异常的检 测保护措施研究不多。有经验的攻击者能利用程序漏洞修改安全芯片的运行行 为, 其中常见攻击方式包括跳转指令攻击、 中断攻击、 堆栈溢出攻击等攻击方 式; 或直接进行故障攻击破坏安全初始化或安全程序的执行, 导致芯片运行异 常。 为了弥补这个缺陷, 在传统的安全保护策略下, 应增加对这些安全策略最 终的所体现总线序列行为进行检测。 很可惜, 直接对数据的传输通道系统总线 通过一定的安全算法进行实时监控的方案暂时空白。
因此, 如何对数据的传输通道系统总线进行实时监控, 如何判断总线序列 题。 、 、、 、 ' ' 。 Λ " ' 口
发明内容
本发明的目的是解决上述现有技术中存在的问题,提出一种提高 S0C系统 安全的总线监视器及其实现方法。
本发明通过监视安全配置过程或安全程序运行过程在 S0C总线上对应的特 定总线访问序列行为的正确性和完整性来发现错误, 并产生系统警告, 从而有 效防止信息泄漏。
本发明采用的技术方案是, 提出一种提高 S0C系统安全的总线监视器, 所 述的总线监视器设置于系统总线和系统控制单元之间, 包括配置单元、 条件判 断单元、 有效数据选择单元、 硬件算法单元和比较输出单元, 其中:
所述的配置单元用于设置和存储总线控制信号需要监控的配置信息, 并更 新总线监视器的状态;
所述的条件判断单元根据配置单元的配置信息, 结合总线控制信号给出的 当前总线行为信息, 判断是否需要启动监视操作, 当需要监控时, 向有效数据 选择单元生成控制信号;
所述的有效数据选择单元根据条件判断单元的控制信息和配置单元的配 置信息, 从总线访问的总线地址、 总线主设备号、 总线读数据或写数据及配置 单元中的密钥选择出总线监视待计算的数据, 并送入硬件算法单元, 通知硬件 算法单元对待计算数据进行运算;
所述的硬件算法单元根据配置单元、条件判断单元发送的控制信号对有效 数据选择单元输出的待计算数据进行运算, 并将最终计算结果发送到比较输出 单元;
所述的比较输出单元将硬件算法单元输出的结果与配置单元预置的条件 进行比较, 当不一致时触发 "^警信号, 并发送至系统控制单元。
本发明还提出一种提高 S0C系统安全的总线监视方法, 包括下列步骤: 步骤 1. 在配置单元中设置总线监视过程中需要的配置信息;
步骤 2. 条件判断单元^^据配置单元的配置信息, 结合总线控制信号给出 的当前总线行为信息, 判断是否对总线进行监视, 并向控制有效数据单元生成 控制信号, 向硬件算法单元发送待计算数据;
步骤 3. 有效数据选择单元根据条件判断单元的控制信息, 从总线地址、 总线主设备号、 总线读数据或写数据、 配置单元输出密钥中选择出的待计算数 据, 并将待计算数据发送至硬件算法单元, 指示硬件算法单元对其进行运算; 步骤 4. 所述的硬件算法单元根据有效数据选择单元发送的控制信号对待 计算数据按配置单元选定的算法进行运算, 并将最终计算结果发送到比较输出 单元;
步骤 5. 所述的比较输出单元将硬件算法单元输出的结果与配置单元预置 的期望结果进行比较, 当不一致时触发报警信号并发送至系统控制单元。
步骤 6. 当总线监视器完成一次有效的访问运算后, 其内部的计数器自动 递增, 并返回步骤 2重复进行监视; 当总线监视器完成配置单元监视长度寄存 器定义的有效访问次数后, 根据控制寄存器的控制方式可以停止监视, 或等下 一次满足监视起始条件的总线访问发生时, 重复进行监视。
与现有技术相比, 本发明具有如下有益效果:
1、 本发明在考虑到传统的安全 S0C芯片中, 侧重对重要数据保护的行为, 对保护的效果关注不够, 一种可能的风险是 ·. 保护行为在恶意攻击或意外故障 下失效了, 系统却不能及时采取补救安全措施, 从而导致信息泄漏。 本发明通 过监视安全 S0C芯片总线序列访问行为, 能对非正常的总线序列访问行为及时 向系统提出警告, 有助于系统及时采取补救安全措施, 实现了一种提高 S0C系 统信息安全的总线监视器。
2、本发明能有效提高 S0C系统对故障攻击的抵抗能力, 能及时对安全配置 或关键程序在恶意故障或无意故障下的错误行为向系统发出警告,保证系统能 及时采取补救的安全措施。
3、本发明能从最终的总线传输通道上解决安全配置过程和关键程序的完整 性和真实性, 提高系统对安全配置数据和关键程序防墓改能力。
4、 本发明在考虑到总线时序本身的复杂性, 待监视数据的可配置性, 以及 监视长度的可配置性, 实现了对总线行为的实时监视。
5、本发明对安全 S0C系统运行过程中特定访问序列的总线地址和数据与可 配置的密钥一起进行完整性算法运算,通过比较最终运算结果和期望结杲来判 断特定访问序列是否被篡改。
6、 本发明可防止总线地址或重要数据被伪造或被攻击。
7、 本发明可防止一个总线主设备冒充另一个总线主设备发起总线访问。
8、 本发明在完成规定的总线序列监视后, 根据系统安全需要, 用户可决定 是否重复监视。
9、 本发明不影响系统总线行为。
1 0、 本发明在考虑到系统存在死机或崩溃的情形, 而造成总线等待超时, 用户可配置最大超时等待周期, 当总线等待超过预设的最大等待周期时, 则记 录下发生超时的总线一切行为, 并给出超时警告信号。 S0C系统可以根据超时 警告信息强制恢复总线传输,并进行异常处理。这种机制有效的防止了安全 S0C 系统长期处于意外超时等待状况的非正常行为, 提高了总线的工作效率, 确保 一些关键任务的及时执行。
1 1、本发明特别适应于数据敏感、易受攻击的多应用场景的安全 S0C系统, 且易于集成, 不对整个 S0C芯片时序和性能造成负担。 附图说明 下面结合附图和较佳实施例对本发明进行详细地说明, 其中:
图 1为本发明的总线监视器在安全 S0C芯片中的内部结构示意图; 图 2为图 1中总线监视器的原理框图;
图 3是总线监视器的工作流程图;
图 4是单总线安全 S0C芯片中总线监视器的连接示意框图;
图 5是多总线安全 S0C芯片中总线监视器的连接示意框图。 具体实施方式
本发明的核心思想是: 对涉及安全关键的总线传输序列的进行实时监视, 如果需要监视的总线传输序列行为不符合预期行为 , 则判断总线传输序列因为 无意故障或恶意故障或篡改攻击等原因异常, 及时向系统发出警告, 保证系统 能及时处理此异常。
图 1为本发明提出的安全 SOC ( Sys tem on Chip ) 芯片中内置总线监视器 的内部结构示意图。 其中包括: S0C系统总线 1、 安装在 S0C芯片 2中的总线 监视器 21和系统控制单元 22。 S0C系统总线 1是安全 S0C芯片中数据搬运的 关键通道, 主设备 (如 CPU、 DMA )对从设备(如片内存 RAM等)进行数据的操 作都是通过 S0C系统总线 1来完成传输的, 因此 S0C系统总线 1在安全 S0C芯 片中扮演着非常重要的角色。
如图 2所示, 本发明提出的总线监视器 21包括有效数据选择单元 201、 条 件判断单元 202、超时检测单元 203、 配置单元 204、硬件算法单元 205以及比 较输出单元 206。 根据设计需求, 每个单元模块的设计实现都可适时地做出恰 当的调整。
配置单元 204用于存储总线监视器配置信息, 主要由控制寄存器、 监视起 始地址寄存器、 监视长度寄存器、 主设备寄存器、 预置密钥寄存器、 期望监视 结果寄存器、 总线状态寄存器、 超时寄存器以及故障地址寄存器等组成。 各个 寄存器部件所实现的功能详细描述如下:
控制寄存器用来记录主设备对总线监视器 21的常规配置信息,总线监视器 21需要依据这些配置信息进行动作, 包括监视器使能位, 这是总线监视器 21 的全局控制位, 用户可通过配置该位为有效或无效状态, 以使能或不使能总线 检视总线监视器 21; 总线监视器 21的触发模式控制位, 通过配置该位实现监 视启动模式从以下两种模式进行选择: 立即开始监视或从指定地址开始监视; 重复监视使能控制位, 通过配置该位为不同状态决定是否启动重复监视功能, 如果启动重复监视功能, 在完成指定有效长度序列监视后, 当下次总线行为满 足监视条件时, 再次启动监视, 否则在完成有效长度序列监视后停止监视; 超 时监视控制位, 通过配置该位决定是否监视总线超时行为; 监视条件控制位, 用来决定哪些总线访问才是需要监视的总线访问序列; 监视算法选择位, 根据 安全需要, 设计者可自行编程决定使用何种算法对总线行为进行监视; 待计算 数据选择位, 指示从满足监视条件的总线主设备号、 总线地址、 总线读数据、 总线写数据以及预置密钥中选择部分或全部内容作为待计算数据。
监视起始地址寄存器用于记录总线监视器 21的起始监视地址。当触发模式 控制位选择为从指定地址开始监视后, 在监视条件满足的情况下, 当总线监视 器 21监视到总线操作地址匹配该起始地址, 才启动监视, 否则总线监视器处 于不执行监视的空闲状态。
监视长度寄存器用于记录用户需要总线监视器 21 监视的有效总线访问序 列长度。 当监视功能启动后, 每监视到一次满足监视条件的总线访问, 监视长 度寄存器递增一次, 直到完成监视长度寄存器所指定的长度后, 本次总线序列 监视完成。 总线监视器 21的有效数据选择单元 201根据待计算数据选择位和 条件判断单元 202的控制条件, 从满足监视条件的总线主设备号、 总线地址、 总线读数据、 总线写数据以及预置密钥中选择部分或全部内容作为待计算数 据, 送至硬件算法单元 205进行运算, 比较输出单元 206启动比较功能, 并将 比较结果送至系统控制单元 22。
主设备寄存器用于配置总线监视器 21待监视的主设备号。如果监视条件配 置主设备号匹配, 则只有总线监视器 21检测到当前总线操作的主设备同主设 备寄存器中一个或多个主设备号匹配时, 才满足监视条件。 该功能可以防止某 个非安全的总线主设备冒充另一个总线主设备发起总线访问。当总线监视器 21 检测到当前执行操作的主设备非法时, 及时发出警告信息, 阻止关键信息被非 法设备获取或破坏。
预置密钥寄存器用于配置监视过程中用到的密钥, 该密钥不可读。 在本发 明设计的总线监视器 21 中, 密钥可以在某个固定的点参与运算, 也可以实时 地参与运算, 能有效防止攻击者 f艮据总线监视器原理对期望结果进行篡改, 进 一步保证了监视过程的完整性和安全性。
期望监视结果寄存器用于配置在指定长度总线序列监视结束后, 用户期望 的监视数据的运算结果。
总线状态寄存器用于记录在完成规定长度总线有效序列监视后, 比较输出 单元 206把最终比较结果(正常或出错)写入其中, 用户可通过配置单元 204 中的总线状态寄存器查询某段总线操作是否正常。 同时, 总线监视器监视到的 其它总线行为如超时等也将在总线状态寄存器中反映。 该寄存器的存在, 保证 了主设备能随时获知总线行为。
超时寄存器用于记录最大的总线设备等待周期。 用户可以 居系统本身的 需要做出恰当的配置, 比如当系统中存在某个设备经常需要较长的等待周期 时, 可以给超时寄存器配置一个较大的值。 一般地, 在配置超时寄存器时, 需 要对 S0C系统设备进行评估, 得出一个合适的值, 即不会误报超时行为也不会 漏报超时行为, 保证总线的工作效率。 当总线超时时, 总线监视器将及时发出 超时警告信号, 指示系统强制结束当前总线访问, 防止系统因总线超时导致安 全隐患或系统故障。
故障地址寄存器用于记录总线发生超时故障的地址, 在超时检测单元 203 检测到总线超时行为后, 将把发生超时状态的总线地址写入到故障地址寄存 器, 主设备可通过读取该寄存器, 获取总线超时信息。
配置单元 204相当于 S0C 系统中的一个从设备, 在本发明的总线监视器 21中, 其配置的准确与否关系到能否实现事先设计的总线监视功能。
条件判断单元 202是本发明的主要控制单元, 主要用来判断总线操作是否 满足总线监视器 21的监视条件。 它 4艮据配置单元 203给出的监视条件控制位 实时地对总线包括地址在内的控制信息进行过滤。 当总线操作满足监视条件时 指示有效数据选择单元 201获取有效内容送入硬件算法单元 205进行计算; 如 果总线操作不满足监视条件, 则忽略该总线操作。 条件判断单元对总线操作的 过滤条件可以是下列条件的一个或多个: 主设备号匹配或否、 取指令操作或数 据传输操作、 读访问或写访问、 特权访问或普通访问等等。 利用主设备号匹配 条件, 可以监视指定主设备号的总线操作; 利用取指令操作条件, 可以监视微 处理器指令执行过程。 如果不关心主设备号, 可以不启用主设备号匹配功能, 这样可以把总线上所有的访问操作都监视到。条件判断单元还判断规定长度的 总线序列监视是否完成, 并把完成指示信号发送给硬件算法单元 205。
有效数据选择单元 201 , 根据条件判断单元的控制信息, 对满足监视条件 的总线操作, 从总线地址、 总线主设备号、 总线读数据或写数据、 配置单元输 出密钥中选择出的待计算数据, 并将待计算数据组织成方便运算的形式发送至 硬件算法单元 205, 指示硬件算法单元对其进行运算。
硬件算法单元 205是本发明的核心单元,其工作速度的快慢直接关系到能 否对总线监视的实时性。在接收到有效数据选择单元 201送出计算指示信号后, 硬件算法单元即启动,根据配置单元 204给出的算法选择控制位选择合适的硬 件算法对有效数据选择单元 205送来的待计算数据进行运算。在收到条件判断 单元 202送出的监视结束的指示信号后, 硬件算法单元完成运算, 并把运算结 果传给比较输出单元 206, 之后硬件算法单元 205回到初始状态, 等待下次监 视的开始。 硬件算法单元包括但不限于以下算法: 循环冗余校验(CRC ) 算法 (如 CRC- 16, CRC-32 ), 哈希 (HASH )算法(如 SHA-1 , SHA-256 ), 对称加密 算法(如 AES,DES )等。 CRC算法比较简单, 能快速地完成计算, 实时性最好。 HASH算法计算复杂, 但其保证总线序列的完整性效果比 CRC算法要好。 对 称加密算法介于 CRC算法和 HASH算法之间。 硬件算法单元选择支持那些硬 件算法, 取决于系统总线的总线频率和硬件算法处理能力。 安全芯片设计者可 以根据芯片时序和面积等指标要求, 决定集成其中的一种或几种算法。
比较输出单元 206在本发明中负责实现对硬件算法单元 205最终运算所得 结果与配置单元 204中期望监视结果寄存器值进行比较, 若二者不一致, 即认 为总线序列行为因为攻击或故障等原因发生异常, 及时发出警告信息, 送至系 统控制单元 22, 系统控制单元 22根据用户预先的配置, 针对总线序列错误做 出合理的响应, 比如要求 CPU复位或部分主、 从设备停止工作等。 这种实时的 处理机制保证了系统重要数据在受到攻击、 破坏的情况下, 能够根据信息的安 全等级, 做出系统级的响应, 最大程度上保证了整个安全系统的安全。
超时检测单元 203用来检测 S0C总线是否超时。 它依据当前总线控制信号 及配置单元 204中超时寄存器设置的最大总线等待周期, 实时地监视总线操作 是否存在超时行为; 当总线等待周期超过超时寄存器所设置的最大总线等待周 期, 超时检测单元 203触发超时警告信息, 送至系统控制单元 22 , 系统控制单 元 22根据用户预先的配置, 针对总线超时行为做出合理的响应。 一种常见的 超时响应机制是: 系统先强制结束当前的总线超作, 然后进行异常处理程序对 该超时行为进行处理。这种机制有效防止了安全 S0C系统长期处于意外超时等 待状况的非正常行为, 确保一些关键任务的及时执行, 确保系统不因意外超时 导致安全隐患或系统故障。
以上过程都是在不影响安全 S0C系统正常工作的前提下进行的, 既保证了 系统工作的完整性, 又实现了系统的安全功能。
如图 3所示,这是本发明的总线监视器 21的工作流程图,具体包括下列步 骤:
步骤 1. 在配置单元中设置总线监视过程中需要的配置信息;
步骤 1. 条件判断单元根据配置单元的配置信息, 结合总线控制信号给出 的当前总线行为信息, 判断是否对总线进行监视, 并向控制有效数据单元生成 控制信号, 向硬件算法单元发送待计算数据;
步骤 3. 有效数据选择单元根据条件判断单元的控制信息, 从总线地址、 总线主设备号、 总线读数据或写数据、 配置单元输出密钥中选择出的待计算数 据, 并将待计算数据发送至硬件算法单元, 指示硬件算法单元对其进行运算; 步骤 4. 所述的硬件算法单元根据有效数据选择单元发送的控制信号对待 计算数据按配置单元选定的算法进行运算, 并将最终计算结果发送到比较输出 单元;
步骤 5. 所述的比较输出单元将硬件算法单元输出的结果与配置单元预置 的期望结果进行比较, 当不一致时触发报警信号并发送至系统控制单元。 步骤 6. 当总线监视器完成一次有效的访问运算后, 其内部的计数器自动 递增, 并返回步骤 2重复进行监视; 当总线监视器完成配置单元监视长度寄存 器定义的有效访问次数后, 才艮据控制寄存器的控制方式可以停止监视, 或等下 一次满足监视起始条件的总线访问发生时, 重复进行监视。
工作中, 总线监视器首先根据配置单元 204中有关寄存器配置, 结合当前 总线的工作行为, 判断是否对总线进行监视以及监视总线上哪些信息(数据、 地址等), 总线控制信息作为待监视数据送到硬件算法电路进行运算, 密钥可 以根据安全需要实时地参与运算, 在完成指定长度的序列监视后, 将运算结果 与期望值进行比较, 若结果一致, 说明传输无误, 否则给出警告信息由系统控 制器完成后续处理。 若寄存器配置为重复监视, 则在完成本次监视后, 总线监 视器重复执行图 3所示数据流程。如果需要对系统复位后的一段总线序列行为 进行监视, 配置单元的默认配置可以设置为立即开始监视, 监视长度寄存器默 认设置为一个合理的非零值。 系统开始工作后, 应及时向配置单元更新复位后 正在监视的这段总线序列的长度和期望结果。 这样系统复位, 总线监视器将立 即监视复位后的总线序列行为; 如果不及时配置总线监视器的监视长度寄存器 和期望结果寄存器, 则监视完成默认长度的总线序列监视后将向系统发出警 告; 如果及时配置了监视长度寄存器和期望结果寄存器, 监视器将监视系统复 位后指定长度总线访问序列是否因为攻击或故障发生异常。
如图 4所示, 这是一个典型的单总线结构的安全 S0C芯片系统, 其中包括 了处理器 401、 DMA402等多个主设备以及片上 RAM407、 存储器接口 405、 本发 明提出的总线监视器 21 ( 1 )和总线监视器 21 ( 2 )等从设备, 系统总线 404 作为数据的传输通道, 将主设备与从设备连接起来。 与一般的安全 S0C芯片系 统不同的是,该系统中集成了两个相互独立的本发明的总线监视器 21,直接对 S0C总线进行实时监视, 安全 S0C芯片的安全性能将大大提高。
如图 5所示, 这是一个典型的多总线结构的安全 S0C芯片系统, 其中同样 包括了处理器 501 , DMA402等多个主设备以及片上 RAM509、 高带宽存储器接口 508、 本发明的总线监视器 21 ( 1 )、 总线监视器 21 ( 2 )等从设备, 系统总线 50 和系统总线 506构成了多总线数据传输通道, 总线控制矩阵 503实现多个 总线并行交叉访问不同地址区域。
在多总线结构的安全 S0C芯片系统中, 根据总线数量的不同, 总线监视器 21的数量做相应变更, 分别用来对每条总线进行监视, 在图 5中, 总线监视器 21 ( 1 )用来监视系统总线 505 , 总线监视器 ( 2 )用来监视系统总线 506, 各个总线监视器 21之间互相独立, 其他行为同单总线 S0C系统一致, 这就保 证了安全 S0C芯片系统中所有总线的安全。
根据本发明的方法, 在不影响总线访问效率的情况下实时对总线行为进行 监视,检测系统关注特定总线访问序列行为是否因为意外或恶意故障攻击发生 改变; 如果特定的总线访问序列行为发生改变, 本发明将向系统提出警告, 由 系统采取适当的安全措施预防安全隐患 , 防止机密信息因为系统安全操作未正 确进行而泄漏。
本发明也可以监视 S0C总线协议错误, 并将这种错误报告给系统以做出适 当的响应。 本发明也监视 S0C总线因为操作不当或其它原因导致的总线超时, 并将超时情况报告给系统; 系统可以采取适当措施及时恢复总线操作, 防止一 些关键任务因为总线超时得不到执行。
综上所述, 本发明提供了一种提高 S0C系统信息安全的总线监视器及其实 现方法, 确保安全 S0C芯片在关键信息经由总线的 运过程中的完整性、 实时 性及安全性, 提高系统总线的工作效率, 提高信息安全系统稳定性和抗故障攻 击的能力。
尽管本发明及其一些优点已在上述的实施方式中做了详细描述, 然而, 所 属技术领域的技术人员应该认识到, 在本发明的精神和原则之内, 可以做出任 意修改、 改进、 扩展等, 这些修改、 改进、 扩展均涵盖在本发明的保护范围之 内。

Claims

权 利 要 求 书
1、 一种提高 soc系统安全的总线监视器, 其特征在于, 所述的总线监视 器设置于系统总线和系统控制单元之间, 包括配置单元、 条件判断单元、 有 效数据选择单元、 硬件算法单元和比较输出单元, 其中:
所述的配置单元用于设置和存储总线控制信号需要监控的配置信息, 并 更新总线监视器的状态;
所述的条件判断单元 4艮据配置单元的配置信息, 结合总线控制信号给出 的当前总线行为信息, 判断是否需要启动监视操作, 当需要监控时, 向有效 数据选择单元生成控制信号;
所述的有效数据选择单元根据条件判断单元的控制信息和配置单元的配 置信息, 从总线访问的总线地址、 总线主设备号、 总线读数据或写数据及配 置单元中的密钥选择出总线监视待计算的数据, 并送入硬件算法单元, 通知 硬件算法单元对待计算数据进行运算;
所述的硬件算法单元根据配置单元、 条件判断单元发送的控制信号对有 效数据选择单元输出的待计算数据进行运算, 并将最终计算结果发送到比较 输出单元;
所述的比较输出单元将硬件算法单元输出的结果与配置单元预置的条件 进行比较, 当不一致时触发^ ^警信号, 并发送至系统控制单元。
1、 根据权利要求 1所述的总线监视器, 其特征在于: 还包括超时检测单 元, 该单元实时监视总线控制信号是否超时, 并当出现超时情况时, 向系统 控制单元发送信号。
3、 根据权利要求 1所述的总线监视器, 其特征在于: 所述的配置单元包 括控制寄存器, 用于实现对总线监视器工作行为的不同控制; 监视起始地址 寄存器, 用于存储总线监视器开始监视的总线访问起始地址; 监视长度寄存 器, 用于配置总线监视器监视的有效总线访问的次数; 至少一个主设备寄存 器, 用于配置监视指定总线主设备的总线访问; 预置密钥寄存器, 用于存储 预置密钥; 期望监视结果寄存器, 用于存储期望的监视结果; 超时寄存器, 用于存储总线的最大等待周期, 当总线等待周期超过该寄存器配置的值时向 系统控制单元发出警告信息。
4、 根据权利要求 3所述的总线监视器, 其特征在于: 还包括一个总线状 态寄存器, 用于主设备实时查询总线状态。
5、 根据权利要求 3所述的总线监视器, 其特征在于: 还包括一个故障地 址寄存器, 用于总线监视器监视到总线超时后, 将总线超时的地址存储起来, 供主设备查询。
6、 根据权利要求 1所述的总线监视器, 其特征在于: 所述的总线访问中 满足监视条件的待计算内容包括但不仅限于总线地址、 总线主设备号、 总线 读数据或写数据、 配置单元输出的预置密钥; 有效数据选择单元根据配置单 元输出的配置信息选择这些内容的部分或全部作为待计算的数据。
7、 根据权利要求 1所述的总线监视器, 其特征在于: 所述的硬件算法单 元选择 CRC算法、 HASH算法, 或对称加密算法对待计算数据进行运算。
8、 一种提高 S0C系统安全的总线监视方法, 其特征在于包括下列步骤: 步骤 1. 在配置单元中设置总线监视过程中需要的配置信息;
步骤 2. 条件判断单元根据配置单元的配置信息, 结合总线控制信号给出 的当前总线行为信息, 判断是否对总线进行监视, 并向控制有效数据单元生 成控制信号, 向硬件算法单元发送待计算数据;
步骤 3. 有效数据选择单元根据条件判断单元的控制信息, 从总线地址、 总线主设备号、 总线读数据或写数据、 配置单元输出密钥中选择出的待计算 数据, 并将待计算数据发送至硬件算法单元, 指示硬件算法单元对其进行运 算;
步骤 4. 所述的硬件算法单元根据有效数据选择单元发送的控制信号对待 计算数据按配置单元选定的算法进行运算, 并将最终计算结果发送到比较输 出单元;
步骤 5. 所述的比较输出单元将硬件算法单元输出的结果与配置单元预置 的期望结果进行比较, 当不一致时触发报警信号并发送至系统控制单元。
步骤 6. 当总线监视器完成一次有效的访问运算后, 其内部的计数器自动 递增, 并返回步骤 2 重复进行监视; 当总线监视器完成配置单元监视长度寄 存器定义的有效访问次数后, 根据控制寄存器的控制方式可以停止监视, 或 等下一次满足监视起始条件的总线访问发生时, 重复进行监视。
9、 根据权利要求 8所述的方法, 其特征在于: 所述的配置信息包括监视 器使能位、 触发模式控制位、 监视条件、 重复监视使能控制位、 超时监视控 制位、 监视算法选择位、 待计算数据选择位、 预置密钥、 监视起始地址、 和 / 或期望结果。
PCT/CN2011/000326 2010-11-12 2011-02-28 一种提高soc系统安全的总线监视器及其实现方法 WO2012062023A1 (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US13/322,086 US8601536B2 (en) 2010-11-12 2011-02-28 Bus monitor for enhancing SOC system security and realization method thereof
EP11784403.5A EP2472408B1 (en) 2010-11-12 2011-02-28 Bus monitor for improving system safety of system on chip (soc) and realizing method thereof

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN2010105409948A CN101989242B (zh) 2010-11-12 2010-11-12 一种提高soc系统安全的总线监视器及其实现方法
CN201010540994.8 2010-11-12

Publications (1)

Publication Number Publication Date
WO2012062023A1 true WO2012062023A1 (zh) 2012-05-18

Family

ID=43745781

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2011/000326 WO2012062023A1 (zh) 2010-11-12 2011-02-28 一种提高soc系统安全的总线监视器及其实现方法

Country Status (4)

Country Link
US (1) US8601536B2 (zh)
EP (1) EP2472408B1 (zh)
CN (1) CN101989242B (zh)
WO (1) WO2012062023A1 (zh)

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102508750A (zh) * 2011-10-27 2012-06-20 青岛海信信芯科技有限公司 Soc内部模块检测装置及方法
CN102592083B (zh) * 2011-12-27 2014-12-10 深圳国微技术有限公司 用于提高soc芯片系统安全的存储保护控制器及方法
CN102662782B (zh) * 2012-04-17 2014-09-03 华为技术有限公司 一种监控系统总线的方法及装置
CN103810074B (zh) * 2012-11-14 2017-12-29 华为技术有限公司 一种片上系统芯片及相应的监控方法
CN103856364A (zh) * 2012-12-04 2014-06-11 鸿富锦精密工业(深圳)有限公司 总线信号监测装置及方法
DE102013203365A1 (de) * 2013-02-28 2014-08-28 Siemens Aktiengesellschaft Verfahren und Schaltungsanordnung für kontrollierte Zugriffe auf Slave-Einheiten in einem Ein-Chip-System
KR20140113175A (ko) * 2013-03-15 2014-09-24 삼성전자주식회사 버스 프로토콜 검사기, 이를 포함하는 시스템 온 칩 및 버스 프로토콜 검사 방법
DE102013216699A1 (de) * 2013-08-22 2015-02-26 Siemens Ag Österreich Verfahren und Schaltungsanordnung zur Absicherung gegen Scannen eines Adressraums
CN104572515B (zh) * 2013-10-28 2019-05-31 锐迪科(重庆)微电子科技有限公司 跟踪模块、方法、系统和片上系统芯片
US9268970B2 (en) 2014-03-20 2016-02-23 Analog Devices, Inc. System and method for security-aware master
CN104219573A (zh) * 2014-09-01 2014-12-17 联想(北京)有限公司 一种数据处理方法及芯片级系统
CN104268487B (zh) * 2014-09-23 2017-04-26 杭州晟元数据安全技术股份有限公司 一种安全芯片的复位和自毁管理系统
CN107358123B (zh) * 2016-05-10 2020-11-03 中国科学院微电子研究所 一种安全检测方法及装置
CN108009065B (zh) * 2016-10-31 2020-02-07 深圳市中兴微电子技术有限公司 监控axi总线的方法和装置
KR20180074197A (ko) 2016-12-23 2018-07-03 삼성전자주식회사 버스 트래픽 컨트롤 장치 및 이를 갖는 버스 시스템
CN108416220B (zh) * 2017-02-09 2021-02-09 深圳市中兴微电子技术有限公司 一种访问控制方法及装置
CN109491856B (zh) * 2017-09-12 2022-08-02 中兴通讯股份有限公司 总线监控系统、方法及装置
DE102017219242A1 (de) 2017-10-26 2019-05-02 Audi Ag Ein-Chip-System, Verfahren zum Betrieb eines Ein-Chip-Systems und Kraftfahrzeug
WO2019112606A1 (en) * 2017-12-08 2019-06-13 Hewlett-Packard Development Company, L.P. Blocking systems from responding to bus mastering capable devices
KR102600704B1 (ko) * 2018-12-05 2023-11-08 현대자동차주식회사 전기차 전력 전송 시스템에서 기밀 정보 보호 방법 및 장치
CN111078492B (zh) * 2019-10-25 2023-07-21 芯创智(上海)微电子有限公司 一种SoC内部总线的状态监控系统及方法
DE102021200411A1 (de) 2021-01-18 2022-07-21 Robert Bosch Gesellschaft mit beschränkter Haftung Bussystem mit Fehlererkennungsfunktion
CN113190400B (zh) * 2021-04-19 2022-11-04 思澈科技(上海)有限公司 一种适用于ahb协议的总线监控模块与监控方法
CN113761560B (zh) * 2021-09-15 2022-09-02 北京中科胜芯科技有限公司 一种适用于Soc FPGA的片内总线系统安全传输装置
US20240095367A1 (en) * 2022-05-09 2024-03-21 Amazon Technologies, Inc. Verifying encryption of data traffic
CN115391132B (zh) * 2022-06-14 2024-03-29 北京中科昊芯科技有限公司 一种监控诊断的装置以及芯片
CN116938451B (zh) * 2023-09-14 2023-12-22 飞腾信息技术有限公司 一种密码运算方法、装置、片上系统及设备
CN117009185A (zh) * 2023-09-14 2023-11-07 飞腾信息技术有限公司 一种总线监测方法、装置、片上系统及设备
CN117130668B (zh) * 2023-10-27 2023-12-29 南京沁恒微电子股份有限公司 一种处理器取指重定向时序优化电路
CN117521570B (zh) * 2024-01-05 2024-04-02 北京凯芯微科技有限公司 总线的超时检测电路、方法、芯片及电子设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1928843A (zh) * 2006-08-01 2007-03-14 山东浪潮电子设备有限公司 提高金融税控专用soc芯片安全性的方法
CN101334760A (zh) * 2007-06-26 2008-12-31 展讯通信(上海)有限公司 监控总线非法操作的方法、装置及包含该装置的系统
CN101454783A (zh) * 2006-06-27 2009-06-10 英特尔公司 用于芯片上系统器件中数据通路安全的系统和技术

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2191331C (en) * 1994-05-26 2005-12-20 Mark Stephen Anderson Secure computer architecture
JP4008086B2 (ja) * 1998-02-04 2007-11-14 沖電気工業株式会社 データモニタ回路
US6141757A (en) * 1998-06-22 2000-10-31 Motorola, Inc. Secure computer with bus monitoring system and methods
US6986052B1 (en) * 2000-06-30 2006-01-10 Intel Corporation Method and apparatus for secure execution using a secure memory partition
KR100448709B1 (ko) * 2001-11-29 2004-09-13 삼성전자주식회사 데이터 버스 시스템 및 그 제어방법
US7277972B2 (en) * 2002-03-08 2007-10-02 Freescale Semiconductor, Inc. Data processing system with peripheral access protection and method therefor
US20030221030A1 (en) * 2002-05-24 2003-11-27 Timothy A. Pontius Access control bus system
AU2003278491A1 (en) * 2002-11-27 2004-06-18 Koninklijke Philips Electronics N.V. Chip integrated protection means.
US20050204155A1 (en) * 2004-03-09 2005-09-15 Nec Laboratories America, Inc Tamper resistant secure architecture
EP1619572A1 (en) * 2004-07-23 2006-01-25 Texas Instruments Incorporated System and method of identifying and preventing security violations within a computing system
US8160244B2 (en) * 2004-10-01 2012-04-17 Broadcom Corporation Stateless hardware security module
US7958396B2 (en) * 2006-05-19 2011-06-07 Microsoft Corporation Watchdog processors in multicore systems
JP2007328403A (ja) * 2006-06-06 2007-12-20 Matsushita Electric Ind Co Ltd バス監視回路および情報処理検査システム
US20090094702A1 (en) * 2007-10-04 2009-04-09 Mediatek Inc. Secure apparatus, integrated circuit, and method thereof
CN101667152A (zh) * 2009-09-23 2010-03-10 华为技术有限公司 计算机系统及计算机系统的总线监控方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101454783A (zh) * 2006-06-27 2009-06-10 英特尔公司 用于芯片上系统器件中数据通路安全的系统和技术
CN1928843A (zh) * 2006-08-01 2007-03-14 山东浪潮电子设备有限公司 提高金融税控专用soc芯片安全性的方法
CN101334760A (zh) * 2007-06-26 2008-12-31 展讯通信(上海)有限公司 监控总线非法操作的方法、装置及包含该装置的系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP2472408A4 *

Also Published As

Publication number Publication date
CN101989242B (zh) 2013-06-12
EP2472408A1 (en) 2012-07-04
EP2472408A4 (en) 2013-07-31
US20130219452A1 (en) 2013-08-22
EP2472408B1 (en) 2015-07-29
CN101989242A (zh) 2011-03-23
US8601536B2 (en) 2013-12-03

Similar Documents

Publication Publication Date Title
WO2012062023A1 (zh) 一种提高soc系统安全的总线监视器及其实现方法
US7739517B2 (en) Hardware-based authentication of a software program
US20220222387A1 (en) Methods and Systems to Restrict Usage of a DMA Channel
JP5607546B2 (ja) 保護された動作モードの間にシステムアクセスを制御するための方法および装置
CN1925926B (zh) 包含协作嵌入式代理的装置及有关系统和方法
US20080034350A1 (en) System and Method for Checking the Integrity of Computer Program Code
CN103268277B (zh) 一种输出日志信息的方法及系统
US20070005992A1 (en) Signed manifest for run-time verification of software program identity and integrity
US20080163212A1 (en) Paralleled management mode integrity checks
JP2007501477A (ja) アクセス許可を決定するための方法および装置
US9542557B2 (en) Snoop-based kernel integrity monitoring apparatus and method thereof
US20220067165A1 (en) Security measurement method and security measurement device for startup of server system, and server
WO2006086302A1 (en) Method and system for validating a computer system
CN110659498A (zh) 可信计算度量方法及其系统、计算机可读存储介质
WO2022028057A1 (zh) 一种基于tpm服务器资产信息多层保护的装置及方法
CN107766734A (zh) 安全启动raid卡方法、装置、设备及计算机可读存储介质
EP1843250B1 (en) System and method for checking the integrity of computer program code
JP2013101550A (ja) 情報処理空間管理方法、外部デバイス及び情報処理装置
CN206649517U (zh) 服务器可信平台度量控制系统及包括该系统的服务器
WO2022077388A1 (zh) 一种处理器的安全度量装置及方法
JP7005676B2 (ja) システム起動を監視するための安全装置及び安全方法
TWI769399B (zh) 具有除錯記憶體介面之晶片及其除錯方法
CN107179911A (zh) 一种重启管理引擎的方法和设备
US20230161599A1 (en) Redundant data log retrieval in multi-processor device
EP1862908B1 (en) Integrated circuit arrangement, a method for monitoring access requests to an integrated circuit arrangement component of an integrated circuit arrangement and a computer program product

Legal Events

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

Ref document number: 13322086

Country of ref document: US

WWE Wipo information: entry into national phase

Ref document number: 2011784403

Country of ref document: EP

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

Ref document number: 11784403

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE