CN106485162A - 存储模块上安全保护的写和/或读过程的方法和存储模块 - Google Patents

存储模块上安全保护的写和/或读过程的方法和存储模块 Download PDF

Info

Publication number
CN106485162A
CN106485162A CN201610712131.1A CN201610712131A CN106485162A CN 106485162 A CN106485162 A CN 106485162A CN 201610712131 A CN201610712131 A CN 201610712131A CN 106485162 A CN106485162 A CN 106485162A
Authority
CN
China
Prior art keywords
memory module
security information
data
user data
storage region
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201610712131.1A
Other languages
English (en)
Inventor
R.法尔克
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Siemens AG
Original Assignee
Siemens AG
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 Siemens AG filed Critical Siemens AG
Publication of CN106485162A publication Critical patent/CN106485162A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1408Protection against unauthorised use of memory or access to memory by using cryptography
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1416Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • 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/78Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/123Applying verification of the received information received data contents, e.g. message integrity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3271Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1052Security improvement

Abstract

本发明涉及一种用于在存储模块(200、300、400)上安全保护的写过程和/或读过程的方法(500),其中实施以下方法步骤。第一方法步骤,用于传输(505)用户数据给存储模块(200、300、400)。第二方法步骤,用于确定(510)存储模块(200、300、400)的第一存储区域(230)中的安全信息。第三方法步骤,用于在存储模块(200、300、400)上的用户数据的写访问时和/或在预给定的触发时自动共同更新(515)安全信息的至少一个预定义部分,其中存储模块(200、300、400)自动确定共同更新的安全信息。

Description

存储模块上安全保护的写和/或读过程的方法和存储模块
技术领域
本发明涉及一种用于在存储模块上安全保护的写过程和/或读过程的方法和存储模块。
背景技术
存储组件用于数据的持久存储,以便除了程序数据、诸如固件或运行系统之外将配置数据或用户数据存储在装置上。该装置例如可以是现场装置或控制装置。在此在实践中经常单独的存储模块例如用于存储固件和配置数据。
这样的存储模块可以在装置中固定安装或是可更换的。固定安装的存储模块的例子是焊接的串行EEPROM。可更换的存储模块例如是所谓的组态插件(C-Plug)、ID插件、SD卡(英语:SD- Card,安全数字存储卡)或者USB存储器。这些存储模块在装置的持续使用期间经常部分或完全被覆盖,以便例如改变现场装置的配置数据。为了保护例如现场装置上的安全相关的数据、特别是安全相关的配置数据,经常使用存储模块,所述存储模块仅仅当用户之前已经认证时才允许访问存储模块。所述安全保护的存储组件特别是具有以下缺点,即其制造显著更复杂并且更昂贵并且使用是麻烦的。
发明内容
本发明的任务在于,提供一种用于提供存储器内容的安全信息的方法和具有可简单实现的安全功能的存储模块。
该任务通过在独立权利要求中说明的特征解决。在从属权利要求中是本发明的有利的改进方案。
根据第一方面,本发明涉及一种用于在存储模块上安全保护的写过程和/或读过程的方法,其中实施以下方法步骤:
- 在第一方法步骤中,传输用户数据给存储模块;
-在第二方法步骤中,确定在存储模块的第一存储区域中的安全信息;
- 在第三方法步骤中,在用于在存储模块上的用户数据的写访问时和/或在预给定的触发时自动共同更新安全信息的至少一个预定义部分。
在此第一存储区域以及以下所述的第二和第三存储区域例如位于存储模块的共同的地址空间或存储芯片中或者分别位于自身保护的地址空间或存储芯片中。存储芯片或地址空间优选具有如下特征,所述特征考虑相应存储区域的安全要求。这些特征例如是仅仅一次可写入的存储器、仅仅存储模块内部可访问的存储器或只读存储器(英语:ROM,只读存储器)。
优选将“装置”可理解为如下装置,例如配备有主处理器的现场装置,该现场装置使用存储模块。优选将应用可理解为应用程序,该应用程序安装在装置上并且与存储模块通信,或者通过装置或存储模块的接口通信。
通过在第一存储区域中安全信息或安全信息的至少一个预定义的部分的自动共同更新明确可理解的是,发生写访问。特别是不必加密地保护完整性地、亦即在其完整性上保护整个存储内容,因为无论如何根据共同更新的安全信息可理解的是,发生写访问。使用存储模块的装置例如能够查询该安全信息,以便确定是否发生无权的写访问。由此一方面可以实现简单可实现的完整性保护,并且另一方面可以实现特别高度地保护用户数据、优选配置数据或安全相关的数据。
存储模块不必确定与写入的数据相关的信息,例如关于存储内容的加密的校验和。在这样的校验和方法中,根据应用情景的实现可以是非常昂贵的。此外相比于提出的解决方案是不太灵活的,在所提出的解决方案中借助于安全信息确定可检查的信息,也称为检验信息。以例如校验值形式的安全信息可以通过外部应用或通过使用存储模块的装置查询。安全信息——其例如也可以是校验和或简单的计数器——的重要性没有通过存储模块预先给定。因此实现该方法的高度灵活性,因为查询方、优选应用或装置可以自身解读安全信息。
在第一实施方式中,存储的安全信息在共同更新期间被覆盖。
原则上可以的是,存储模块将安全信息的历史保存在存储器或存储模块的存储区域中。然而为了尽可能少地保持安全信息的存储需求,优选分别在共同更新时覆盖安全信息。但是也可以设想的是,例如将预定义数量的安全信息作为历史存储。例如存储模块可以保存安全信息的最后五个值。由此装置或应用方具有如下可能,即安全信息由之前的、更过去的写过程调用。
在该方法的另外的实施方式中,除了用户数据之外还传输标记信息,其中标记信息特别是包括存储器地址和/或文件名,其中安全信息特别是包括标记信息。
由此可以通过应用方或装置附加地确定:哪些数据潜在在无权的写访问中改变。这特别是允许系统管理者在失败的检查中借助于安全信息准确分析实施的操纵。
在该方法另外的实施方式中,安全信息的共同更新根据传输的标记信息实现。
假如存储模块存储安全关键和安全不关键的信息,那么例如不必要的是,在安全不关键的数据的写过程中更新安全信息。这特别是具有如下优点,即存储模块可以用于安全关键和安全不关键的应用并且装置仅仅必须具有存储模块,因为该装置覆盖两个应用情景。
在该方法另外的实施方式中,安全信息和/或用户数据由存储模块提供。
通过提供安全信息对于使用存储模块的应用方或装置可能的是,查询安全信息并且自身处理该安全信息。
在该方法另外的实施方式中附加地实施以下方法步骤:借助于检查算法根据预定义的检查标准实施用于检查安全信息的自动共同更新的部分的另一方法步骤。检查算法可以特别是加密的算法,例如加密的校验和、亦即消息认证码或数字签名的检查。附加地,在另一方法步骤中,假如检查算法已经确定与预定义的检查标准的关键偏差,那么提供信号。
存储模块可以附加地配备如下能力,即自身检查安全信息。假如确定与预定义的检查标准的关键偏差,那么可以通过例如编码控制信息的信号告知系统管理者。替代地例如可以将装置置于安全保护的模式下,使得通过未授权的第三者的另外的操纵是不可能的。
在该方法的另外的实施方式中,安全信息包括用于存储模块的识别信息。
通过识别信息可由例如系统管理者容易地识别所使用的存储模块,假如其已经将操纵例如经由无线通信接口通知管理者。
在该方法另外的实施方式中,信号使安装有存储模块的装置处于安全模式。
由此在识别的操纵时阻止:在装置上进行另外的操纵。特别是对于安全关键的设备重要的是,立刻以自动化形式对识别的操纵做出反应。
在该方法另外的实施方式中,该信号经由接口传输给中央存储器监控装置。
由此可以的是,中央监控和分析设备、例如风力发电设备的安全保护的存储模块。
在该方法另外的实施方式中,预给定的触发是对存储模块的每次写访问和/或结束对存储模块的写过程和/或激活用于存储模块的写模式,其中写模式优选借助于密码输入开始。
由此实现,可以通过尽可能灵活的方式共同更新安全信息。
在该方法另外的实施方式中,安全信息的要共同更新的部分包括写周期计数值,该写周期计数值特别是实现为递增计数器。
写周期计数值可以非常简单地实现。附加地,计数值的更新是节省资源的,使得不必将昂贵的运算构件安装到存储模块中。
作为递增计数器的实现可以特别简单地实现,因为为此不必安装用于存储模块的昂贵的附加的系统构件。
在该方法另外的实施方式中,安全信息的要共同更新的部分包括随机值,该随机值优选由存储模块内部的随机生成器产生。
通过随机值还进一步提高方法的安全性,因为该随机值例如可以在请求-应答协议中(英语:Challenge-Response-Protocol)在查询方、例如应用方或装置与存储模块之间使用。由此可以特别是阻止所谓的重放攻击以及回滚攻击。
在该方法另外的实施方式中,安全信息的要共同更新的部分包括时间信息,该时间信息优选由存储模块内部的实时时钟提供。
通过时间信息可以以简单的方式确定最后的写访问。特别是可以由此确定:何时例如无权的第三者将数据写到存储模块上。
在该方法另外的实施方式中,用于检查用户数据的第一校验和通过存储模块提供。
通过第一校验和不仅仅可以确定是否无权的第三者将数据写到存储模块上。附加地可以确定是否数据自身被操纵。
在该方法另外的实施方式中,加密的密钥处于第二存储区域中,其中第二存储区域优选可一次写入。
利用加密的密钥例如可以通过简单的方式实施存储模块和/或应用方或装置的认证。应用方或装置为此必须同样具有加密的密钥或分配给加密的密钥的第二加密的密钥或者借助于对称或非对称的加密的密钥对实施基于证书的认证。在这样的应用情景下,例如装置创建用于如下数据的第一数字签名,所述数据应写到存储模块上。存储模块优选使用加密的密钥,例如公共密钥,以便认证数字签名或数字证书。为了实现该方法的尽可能高的安全性,第二存储区域优选仅仅一次地可利用加密的密钥写入。第二存储区域因此例如可以是只读存储器。
在该方法另外的实施方式中,借助于加密的密钥实施存储模块和/或用户数据的认证。附加地,为了认证优选使用请求-应答协议,其中第二校验和借助于加密的密钥通过用户数据的一部分或者通过全部用户数据计算。为了认证,对请求-应答协议的请求的应答优选地包括请求自身和/或加密的密钥和/或安全信息的一部分或者完全的安全信息或据此计算的应答值。由此可以的是,操纵保护地确定存储模块的共同更新的安全信息的当前值。
通过这些特征实现在存储模块上的用户数据的显著更高的完整保护。由此不仅可以确定对存储模块的未允许的写访问,而且可以基本上确定对传输数据的操纵,所述操纵可以潜在地在数据传输期间进行。
在该方法另外的实施方式中,关于存储模块的特别是用户数据的所有数据或数据的一部分的完整性值存储在存储模块的第三存储区域中,其中完整性值特别是自动通过存储模块也在存储模块上存储用户数据时产生,其中完整性值特别是通过存储模块提供。
由此可以的是,提供关于存储模块的安全相关数据的完整性值。对于应用方或装置、例如现场装置可以的是,通过以下方式以简单方式检查数据完整性,即由存储模块调用该完整性值。这例如在以下工作环境中是有意义的,在所述工作环境中潜在存在高的如下可能,即数据在存储模块上可能损坏或不期望地改变。
在该方法另外的实施方式中,在完整性值变化时实施共同更新。附加地,数据的完整性优选在读出时通过以下方式被检查,即形成关于全部数据或数据的一部分的另一完整性值。附加地,如果完整性值和另一完整性值优选足够一致,那么确认完整性。
由此,存储模块能够自身检查用户数据的完整性。如果该装置确定:用户数据的完整性不再得出或者完整性是无效的,那么例如可以将用于数据保护或数据修复的功能或者装置置于自身安全的状态中。
在该方法另外的实施方式中,应答附加地包括完整性值。
由此可以特别是显著提高请求-应答协议的安全性,因为用户数据的完整性同样包含在应答中。
在该方法另外的实施方式中,形成关于完整性值的第一校验和和/或第二校验和。
这特别是具有如下优点,完整性值以非常快速的方式和方法形成。假如存储模块应该应用于高性能应用,这是特别重要的,因为关于全部用户数据的完整性值的形成太昂贵。
在该方法另外的实施方式中,第一存储区域和/或第二存储区域和/或第三存储区域完全或部分位于受保护的存储区域中,其中通过第三者仅仅读取访问受保护的存储区域。
存储模块优选包括多个存储组件,所述存储组件通过不同的存储区域是可寻址的。就此而言存在如下可能,即第一存储区域是存储模块中独立的存储芯片。通过从存储模块外部仅仅读取地访问这些存储区域或这些单个的存储芯片,保护这些存储区域或这些单个的存储芯片免于由第三者的改变或无权的改变。
根据另一方面,本发明涉及一种存储模块,其包括:用于存储用户数据的用户数据存储器、第一存储区域以及至少一个控制机构。控制机构确定存储模块的第一存储区域中的安全信息。控制机构在存储模块上的用户数据的写访问时和/或在预给定的触发时自动共同更新安全信息的至少一个预定义部分,其中存储模块自动确定共同更新的安全信息。
在第一实施方式中,存储模块附加地具有检查机构,该检查机构用于根据预定义的检查标准检查安全信息的自动更新的部分。附加地,存储模块包括提供机构,该提供机构用于在检查得出与预定义的检查结果的足够偏差的情况下提供信号。
在该存储模块另外的实施方式中,存储模块附加地包括随机生成器和/或实时时钟。
在该存储模块另外的实施方式中,存储模块是EEPROM。
根据另一方面,本发明涉及一种计算机系统,例如现场装置,其具有根据上述特征的存储模块。
根据另一方面,本发明涉及一种根据上述特征的虚拟化存储模块。
此外要求保护一种计算机程序产品,其具有用于实施上述根据本发明的方法的程序命令。附加地要求保护一种用于存储和/或提供数据结构的提供装置,该提供装置包括计算机程序产品。提供装置例如是数据载体,该数据载体存储和/或提供计算机程序产品。替代地,提供装置例如是计算机系统、服务器系统、网络、基于云的运算系统和/或虚拟运算系统,其存储和/或提供计算机程序产品。该提供优选实现为整个计算机程序产品的下载,但是例如也可以实现为部分下载,该下载由多个部分组成并且特别是通过对等网络下载。这样的计算机程序产品例如在使用数据载体形式的提供装置的情况下被读入系统中并且执行程序命令,使得根据本发明的方法在计算机上实施。
附图说明
本发明的上述特性、特征和优点以及其如何实现的方式和方法结合实施例的以下描述变得更清楚和更明白地理解,所述实施例结合附图进一步描述。在此:
图1示出根据现有技术的现场装置的示意图;
图2示出存储模块的第一实施例的示意图;
图3示出存储模块的第二实施例的示意图;
图4示出存储模块的第三实施例的示意图;
图5示出用于在存储模块上安全保护的写和/或读过程的方法的一个实施例的流程图;以及
图6示出具有存储模块的现场装置的示意图。
在附图中,只要没有另外说明,功能相同的元件配备有相同附图标记。
具体实施方式
图1示出现场装置100的示意图,如其由现有技术所已知的那样。现场装置首先被分为称为子系统110的未受保护的区域和称为安全子系统150的受保护的子系统。子系统110利用通信总线111与安全子系统150连接。此外,现场装置100的子系统110具有第一输入/输出接口112、网络接口113、主处理器114、例如以EPROM存储器的形式的配置存储器115、双端口工作存储器(DPRAM)116、第一工作存储器117、第一闪存存储器118、时钟119以及电源120。安全子系统150包括安全配置存储模块151、第二输入/输出接口152、安全处理器153、第二工作存储器154以及第二闪存存储器155。
主处理器114经由内部接口访问配置存储器115。在此例如涉及串行EEPROM。此外,主处理器114使用易失性存储器(RAM)作为第一工作存储器117、以及第一闪存存储器118用于例如运行系统、控制程序或其他程序命令的加载。现场装置100的子系统110例如具有如下任务,即利用网络接口113与网络、例如TCP/IP网络(传输控制协议/因特网协议)通信,但是也可以执行监控和诊断功能。主处理器114通过双端口工作存储器116借助于安全总线121与安全子系统150的安全处理器153通信。该通信在图1中单通道(主处理器)地示出,然而也可以设有多个冗余通道。通过第二输入/输出接口或安全接口152可以连接例如安全关键的传感器或执行器。这例如可以是转辙驱动传感器或轴计数传感器。
此外,安全子系统115包括安全接口,安全配置存储模块151可插入到该安全接口中。在安全配置存储模块151上例如包含规划数据。根据现场装置100的安全配置,安全处理器153实施安全相关的控制操作。
为此安全处理器153可以产生或处理安全协议的安全协议消息。与另一现场装置或中央运算器的通信于是例如通过子系统110的双端口工作存储器116和主处理器114实现。为此例如经由网络接口113发送和接收数据包。
在图1中所述的现场装置原则上具有三个存储器。这是配置存储器(EEPROM)、闪存存储器和安全配置存储模块。原则上这些存储器中的每个、这些存储器的子集或者所有存储器可以是如在图2至4中所述的存储模块。
图2示出用于安全保护的写过程和/或读过程的存储模块200的第一实施例的示意图。
存储模块200包括具有处理器的控制单元210、内部总线、存储器接口220、第二总线221、在第一存储区域230中的安全信息、识别信息232、写周期识别信息234、访问表格250、装置密钥260以及用户数据存储器270,该用户数据存储器永久存储数据。存储器控制单元210经由内部总线与第一存储区域230、访问表格250、装置密钥260以及用户存储器270连接,该内部总线例如可以分为第一子总线211、第二子总线212、第三子总线213、第四子总线214、第五子总线215以及第六子总线216。例如是存储模块100的识别符的身份信息232和写周期识别信息234是安全信息的部分,安全信息保存在存储模块100的第一存储区域230中并且优选分别经由自身子总线、第五子总线215和第六子总线216与存储器控制单元210连接。
存储器接口220和总线221用于与处理器、例如装置或现场装置的主处理器通信。经由存储器接口220或总线221可以将命令、诸如读命令、写命令、用于读取识别符的命令、检查命令或密码输入命令传输给存储模块200。
存储模块200于是应答这些命令,例如以查询的确认或者发送数据给查询方。存储器控制单元210在此访问原本的用户数据存储器270,其中例如可保存配置数据。利用装置密钥260可以通过存储模块200进行用户、例如装置的主处理器的认证。在访问表格250中例如可预先规定,在何种条件下用户数据存储器270的存储区域是可读取或可写入的。
在写访问时更新写周期识别信息234。这可以在每次写访问时进行,在借助于命令、例如通过密码输入激活写访问可能时进行,在预给定的时间间隔结束之后通过复位命令(英语:Reset命令)例如对于确定的存储器地址结束写过程时进行,或者在结束写访问可能时进行,该写访问可能通过命令、如用于密码输入的命令优选利用空密码参数实施。同样可以的是,在每次写访问(亦即写命令)时进行更新。
写周期识别信息234可以通过不同方式实现。例如可以的是计数器递增。
在另一变型方案中,写周期识别信息234利用随机值设置。在该情况下,存储模块200附加地具有随机生成器。
替代地,存储模块200包括内部实时时钟,使得写周期识别信息234可以根据当前时间确定。
以下阐明在现场装置的处理器与存储模块200之间通信的原理上的流程。
首先,处理器、例如现场装置的主处理器向存储模块200发送用于确定的存储器地址的读命令。只要该存储器地址位于非关键的或者未受保护的区域中,那么存储模块将数据和确认通知发送回给处理器。处理器在另一步骤中利用命令从存储模块200查询安全信息230,亦即识别信息和写周期识别信息234。处理器检查该信息,并且只要该信息是正确的,那么该处理器传送密码给存储模块200,以便激活存储模块200的写模式。如果存储模块200已经确认密码的正确性,那么现场装置的处理器发送写命令连同数据和期望的存储器地址给存储模块200,数据应写入到该期望的存储器地址。存储模块200在数据写入期间自动更新写周期识别信息234。在成功结束数据的写入和写周期识别信息234的更新之后,这相对于处理器被确认。处理器现在又可以从存储模块200查询安全信息。存储模块提供更新的安全信息、亦即更新的写周期识别信息234给处理器。处理器或现场装置可以检查安全信息,以便确定是否数据正确写入。
图3示出存储模块300的第二实施例的示意图。在该实施例中,在图2的描述中阐明的存储模块被扩展了用于加密的密钥存储器的第二存储区域310。第二存储区域310例如经由第七子总线317与存储器控制单元210连接。
详细地,存储模块300借助于第二存储区域310具有在其中保存的加密的密钥。该第二存储区域优选实现为可一次写入的存储器,例如OTP存储器(英语:一次可编程的)。利用该存储器可以实现存储模块300的认证。为此,使用存储模块300的装置(或用户)例如发送如下认证命令,该认证命令使用请求-应答协议(英语:Challenge-Response-Protocol)。对此,存储器控制单元210优选在使用加密的密钥的情况下计算加密的校验和、例如消息认证码(英语:Message Authentication Code)。
为了计算消息认证码,可以使用如下方法,如HMAC-SHA256(Keyed-Hash MessageAuthentication Code- Secure Hash Algorithm:加密哈希消息认证码-安全哈希算法)、AES-CBCMAC(Advanced Encryption Standard - Cipher Block Chaining MessageAuthentication Code:高级加密标准-密码块链接消息认证码),或者数字签名EC-DSA(Elliptic Curve Digital Signature Algorithm:椭圆曲线数字签名算法)。加密的校验和可以或者仅仅通过存储模块300的确定的存储区域、通过所有用户数据或者通过被查询的用户数据计算。
在认证中,存储模块300借助于请求-应答协议从查询方接收请求(英语:Challenge)。存储器控制单元210于是产生应答(英语:Response),作为参数优选请求和/或加密的校验和和/或识别信息232和/或写周期识别信息234进入到该应答中。所确定的应答于是由存储模块300提供,使得该应答可以由现场装置、系统或应用来检查。
图4示出存储模块400的第三实施例的示意图。在该实施例中,通过图3的描述阐明的存储模块被扩展了用于完整性校验和存储器的第三存储区域410。第三存储区域410例如经由第八子总线418与存储器控制单元210连接。
该第三存储区域410被设置用于存储优选以完整性校验和形式的完整性值。详细地,仅仅在写入该第三存储区域410时更新写周期识别信息234。
优选地,系统、应用方或装置的处理器可以将关于存储模块的数据、例如用户数据的完整性值优选以配置文件、安全信息或配置数据的形式写入到第三存储区域410中。完整性值例如可以利用SHA256 (Secure Hash Algorithm:安全哈希算法)算法形成。在写入该第三存储区域410时更新写周期识别信息234,以便使得在该完整性值上的变化是可检查的。
在例如通过装置的处理器从存储模块400读取数据时,处理器确定所读取的数据的完整性值并且将其与第三存储区域410中的值比较。这些完整性值必须一致,以便所读取的数据识别为有效的。
此外,例如装置的处理器利用认证命令和请求-应答协议的请求认证存储模块400。存储模块400计算应答,该应答作为参数包括完整性值,该完整性值存储在第三存储区域410中。附加地,应答同样可以包括请求和/或加密的校验和和/或识别信息232和/或写周期识别信息234。
换言之,为了认证存储模块400如下信息进入应答中,所述信息在图3的描述中阐明。附加地,但是完整性值也还进入应答中。
存储模块400的该实施例具有如下优点,即关于存储器内容的认证的未操纵的完整性值是可存储的。在此必须仅仅在小范围中实施加密计算。存储模块400必须仅仅通过固定的小的数据量实施加密的校验和并且因此不必通过原本的存储器内容自身确定完整性值。例如装置的处理器可以实施这一点,该装置使用存储模块400。为此处理器使用存储模块400的通过存储模块400保护的第三存储区域410,以便存储完整性值。
如果第三存储区域410的存储器内容已经被写入,那么通过使用写周期识别信息234可以视为现实信息的安全信息是可用的。特别是根据变化的写周期识别信息234可识别的是:是否进行了写过程。
在一个应用情景下,其中存储模块400用作安全配置存储器,因此根据变化的写周期识别信息234可识别的是,已经发生写过程。这例如可以由安全子系统的安全处理器检查。假如已经发生写过程,那么使用存储模块400的装置的通过用户的重新安全释放可能与是否或如何改变存储器内容无关地在写过程之后是必需的。
在一个变型方案中,第三存储区域的写周期识别信息234也可以用于例如控制装置或现场装置的装置识别符的存储。为此由用户可选择的识别符、例如可自由选择的字符串被写入到第三存储区域410中。该字符串被补充由存储模块400随机选择的写周期识别信息234,以便形成可认证的识别信息。该字符串通过硬件机制保护地由通过用户可选择的部分和不可预给定的部分组成。由此用户不可以复制另一装置的相同的装置识别符,即使该识别符在其他方面是可自由选择的。
在另一变型方案中,对第三存储区域的读访问和/或写访问通过安全功能、例如密码输入或利用加密的密钥的认证来保护。
图5示出用于在存储模块上安全保护的写和/或读过程的方法的一个实施例的流程图。
在此提出,存储模块的安全信息在写过程中共同更新。安全信息优选由固定不变的部分、例如存储模块的识别信息和/或由可变的部分、例如写周期识别信息组成,该写周期识别信息在对存储模块或存储模块的用户数据存储器的内容的写过程中自动更新。
在写过程中安全信息的更新在此可以借助不同触发控制。在最简单情况下,例如在所有涉及整个存储器内容的写过程中更新安全信息。但是优选地,仅仅当在存储模块的全部存在的存储区域的、也称为受保护的存储区域的特定子区域上写入时,才触发更新。
在一个变型方案中可以配置该受保护的存储区域。通过这种方式保护的存储区域的这样的配置可以或者可一次性地配置,例如在第一次使用存储模块时,或者该受保护的存储区域可以在特定运行模式下被配置。该运行模式例如可以通过用户名和密码输入、存储模块的特定的软件或硬件开关、例如跳线或者通过配置信息来配置,该配置信息连同数字签名被存储,其中用于检查签名的密钥例如保存在第二存储区域中。
附加地,第三存储区域可以被设置为完整性校验和存储器。完整性值被写入到该第三存储区域中。例如传输的用户数据、特别是配置参数或者存储模块上的数据的校验和值。
在此更新存储器的安全信息、例如特别是写周期计数值形式的写周期识别信息。写周期识别信息和其更新可以通过不同方式实现。例如计数值可以递增或随机地选择。附加地或者自身单独考虑地也可以形成关于旧的写周期识别信息或者关于旧的写周期识别信息和新的写周期识别信息的校验和。
于是可以检查完整性值。为此,存储模块确定加密的校验和、例如消息认证码,写周期计数值的当前值进入其中。该写周期计数值例如可以是简单的计数器,该计数器在每次写入访问时递增。
在一个变型方案中,区别不同写访问,例如利用写命令的覆盖、删除存储器或者用于篡改删除的命令。更新在此可以在一个变型方案中仅仅在确定的写访问方式下实现。
在另一变型方案中,写周期识别信息被结构化成多个部分。在确定的写访问中,在此可以更新写周期识别信息的确定的部分。
通过检查写周期识别信息可识别的是,是否进行了写访问。通过加密的校验和的检查也可以随后关于操纵检查完成的写访问。
写周期识别信息可以由使用存储模块的装置自身检查。在有别于检查标准时,例如在覆盖安全配置时,该装置可以关断,使得首先又必须由管理者释放。
此外可以的是,写周期识别信息由装置传输给中央监控系统,例如作为诊断数据或日志数据的一部分。由此,如果描述存储模块的存储器内容,那么可以中央地识别。这当最初的存储器内容例如在设备的操纵之后重新建立时仍旧是可识别的,因为存储模块的安全信息、特别是写周期识别信息和识别信息仅仅可以通过存储模块自身改变并且不可以通过第三者、例如应用程序、用户或装置从外部改变。
换言之,本发明涉及一种用于在存储模块上安全保护的写过程和/或读过程的方法。
在该方法中,在第一方法步骤505中将用户数据、例如配置数据从使用存储模块的装置传输给存储模块。
在第二方法步骤510中,确定存储模块的第一存储区域中的安全信息。该确定例如可以在存储模块的制造期间发生或者在存储模块的第一次使用中通过管理者配置。
在第三方法步骤515中,在存储模块上的用户数据的写访问时和/或在预给定的触发时自动共同更新安全信息的至少一个预定义部分,其中存储模块自动确定共同更新的安全信息。
图6示出具有存储模块的现场装置600的示意图。
现场装置具有根据上述实施例之一的存储模块。附加地,现场装置600包括传感器610、例如以转辙驱动形式的执行器620和显示装置630,其中现场装置600的这些元件经由数据总线605相互通信连接。
虽然本发明详细地通过实施例进一步阐明和描述,但是本发明不由公开的例子限制,并且其他变型方案可以由本领域内技术人员由此导出,而不脱离本发明的保护范围。

Claims (28)

1.用于在存储模块(200、300、400)上安全保护的写过程和/或读过程的方法(500),其中实施以下方法步骤:
- 传输(505)用户数据给存储模块(200、300、400);
- 确定(510)存储模块(200、300、400)的第一存储区域(230)中的安全信息;以及
- 在存储模块(200、300、400)上的用户数据的写访问时和/或在预给定的触发时自动共同更新(515)安全信息的至少一个预定义部分,其中存储模块(200、300、400)自动确定共同更新的安全信息,
其中关于存储模块(400)的特别是用户数据的所有数据或数据的一部分的完整性值被存储在存储模块(400)的第三存储区域(410)中,其中完整性值特别是自动通过存储模块(400)在存储模块(400)上存储用户数据时产生,其中完整性值特别是由存储模块(400)提供。
2. 根据权利要求1所述的方法(500),其中所存储的安全信息在共同更新(515)期间被覆盖。
3.根据权利要求1或2所述的方法(500),其中
- 除了用户数据之外还传输标记信息;
- 标记信息特别是包括存储器地址和/或文件名;以及
- 安全信息特别是包括标记信息。
4.根据权利要求3所述的方法(500),其中安全信息的共同更新(515)根据所传输的标记信息进行。
5.根据以上权利要求中任一项所述的方法(500),其中安全信息和/或用户数据通过存储模块(200、300、400)提供。
6. 根据以上权利要求中任一项所述的方法(500),其中所述方法附加地具有以下方法步骤:
- 借助于检查算法根据预定义的检查标准检查安全信息的自动共同更新的部分;以及
- 假如检查算法确定与预定义的检查标准的关键偏差,那么提供信号。
7.根据以上权利要求中任一项所述的方法(500),其中安全信息包括用于存储模块(200、300、400)的识别信息(232)。
8.根据权利要求6或7所述的方法(500),其中所述信号将安装有存储模块(200、300、400)的装置(600)置于安全模式。
9.根据权利要求6-8中任一项所述的方法(500),其中所述信号经由接口传输给中央存储器监控装置。
10.根据以上权利要求中任一项所述的方法(500),其中预给定的触发是对存储模块(200、300、400)的每次写访问和/或结束对存储模块(200、300、400)的写过程和/或激活用于存储模块的写模式,其中写模式优选借助于密码输入开始。
11.根据以上权利要求中任一项所述的方法(500),其中安全信息的要共同更新的部分包括写周期识别信息(234),所述要共同更新的部分特别是实现为递增计数器。
12.根据以上权利要求中任一项所述的方法(500),其中安全信息的要共同更新的部分包括随机值,该随机值优选由存储模块内部的随机生成器产生。
13.根据以上权利要求中任一项所述的方法(500),其中安全信息的要共同更新的部分包括时间信息,该时间信息优选由存储模块内部的实时时钟提供。
14.根据以上权利要求中任一项所述的方法(500),其中用于检查用户数据的第一校验和通过存储模块(300、400)提供。
15. 根据以上权利要求中任一项所述的方法(500),其中加密的密钥位于第二存储区域中,其中第二存储区域(310)优选可一次写入。
16.根据权利要求15所述的方法(500),其中
- 借助于加密的密钥实施存储模块(300、400)和/或用户数据的认证;
- 为了认证优选使用请求-应答协议,其中第二校验和借助于加密的密钥通过用户数据的一部分或者通过全部用户数据计算;以及
- 为了认证优选对请求-应答协议的请求的应答包括请求和/或加密的密钥和/或安全信息的一部分或者完全的安全信息。
17.根据以上权利要求中任一项所述的方法(500),其中
- 在完整性值变化时实施共同更新(515);
- 数据的完整性优选在读出时通过以下方式被检查,即形成关于全部数据或数据的一部分的另一完整性值;以及
- 如果完整性值和另一完整性值优选足够一致,那么确认完整性。
18.根据以上权利要求中任一项所述的方法(500),其中应答附加地包括完整性值。
19.根据权利要求14-18中任一项所述的方法(500),其中形成仅仅关于完整性值的第一校验和和/或第二校验和。
20.根据以上权利要求中任一项所述的方法(500),其中第一存储区域(230)和/或第二存储区域(310)和/或第三存储区域(410)完全或部分位于受保护的存储区域中,并且其中通过第三者仅仅读取访问受保护的存储区域。
21.一种存储模块(200、300、400),具有:
- 用于存储用户数据的用户数据存储区域(270);
- 第一存储区域(230);
- 至少一个控制机构(210),用于确定存储模块(200、300、400)的第一存储区域(230)中的安全信息并且用于在存储模块(200、300、400)上的用户数据的写访问时和/或在预给定的触发时自动共同更新安全信息的至少一个预定义部分,
其中存储模块自动确定共同更新的安全信息,其中关于存储模块(400)的特别是用户数据的所有数据或数据的一部分的完整性值被存储在存储模块(400)的第三存储区域(410)中,其中完整性值特别是自动通过存储模块(400)在存储模块(400)上存储用户数据时产生,其中完整性值特别是通过存储模块(400)提供。
22. 根据权利要求21所述的存储模块(200、300、400),附加地具有:
- 检查机构,用于根据预定义的检查标准检查安全信息的自动更新的部分;以及
- 提供机构,用于在检查得出与预定义的检查结果的足够偏差时提供信号。
23. 根据权利要求21-22中任一项所述的存储模块(200、300、400),附加地具有:
- 随机生成器;和/或
- 实时时钟。
24.根据权利要求21-23中任一项所述的存储模块(200、300、400),其中存储模块是EEPROM。
25.计算机系统(600),具有根据权利要求21-24中任一项所述的存储模块。
26.根据权利要求21-24中任一项所述的虚拟化存储模块。
27.计算机程序产品,具有用于实施根据权利要求1-20中任一项所述的方法的程序命令。
28.用于根据权利要求27所述的计算机程序产品的提供装置,其中提供装置存储和/或提供计算机程序产品。
CN201610712131.1A 2015-08-24 2016-08-24 存储模块上安全保护的写和/或读过程的方法和存储模块 Pending CN106485162A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102015216082.3 2015-08-24
DE102015216082.3A DE102015216082A1 (de) 2015-08-24 2015-08-24 Verfahren und Speichermodul für sicherheitsgeschützte Schreibvorgänge und/oder Lesevorgänge auf dem Speichermodul

Publications (1)

Publication Number Publication Date
CN106485162A true CN106485162A (zh) 2017-03-08

Family

ID=56289310

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610712131.1A Pending CN106485162A (zh) 2015-08-24 2016-08-24 存储模块上安全保护的写和/或读过程的方法和存储模块

Country Status (4)

Country Link
US (1) US10353830B2 (zh)
EP (1) EP3136285B1 (zh)
CN (1) CN106485162A (zh)
DE (1) DE102015216082A1 (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102016106003A1 (de) * 2016-04-01 2017-10-05 Sick Ag Anzeige- und Bedieneinheit und Verfahren zur Bedienung eines Feldgeräts mit einer Anzeige- und Bedieneinheit
WO2018053537A1 (en) 2016-09-19 2018-03-22 Pindrop Security, Inc. Improvements of speaker recognition in the call center
WO2018053518A1 (en) 2016-09-19 2018-03-22 Pindrop Security, Inc. Channel-compensated low-level features for speaker recognition
CN108171041B (zh) * 2016-12-07 2020-03-27 澜起科技股份有限公司 用于对访问存储器的应用程序进行身份验证的方法和装置
US10397398B2 (en) * 2017-01-17 2019-08-27 Pindrop Security, Inc. Authentication using DTMF tones
CN110490008B (zh) * 2018-05-14 2021-08-10 英韧科技(上海)有限公司 安全装置及安全芯片
US11210238B2 (en) 2018-10-30 2021-12-28 Cypress Semiconductor Corporation Securing data logs in memory devices
WO2020163624A1 (en) 2019-02-06 2020-08-13 Pindrop Security, Inc. Systems and methods of gateway detection in a telephone network
DE102022111925A1 (de) 2022-05-12 2023-11-16 Infineon Technologies Ag Halbleiterchipvorrichtung und verfahren zum prüfen der integrität eines speichers

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040059925A1 (en) * 2002-09-20 2004-03-25 Benhammou Jean P. Secure memory device for smart cards
CN1581110A (zh) * 2003-08-13 2005-02-16 国际商业机器公司 安全存储应用
CN1985229A (zh) * 2004-06-17 2007-06-20 纳格拉卡德股份有限公司 安全更新安全模块中的程序块的方法
CN102307193A (zh) * 2011-08-22 2012-01-04 北京宏基恒信科技有限责任公司 动态令牌的密钥更新及同步方法、系统及装置
US20140137271A1 (en) * 2012-11-15 2014-05-15 Elwha LLC, a limited liability corporation of the State of Delaware Data security and access tracking in memory
US20140173294A1 (en) * 2012-12-14 2014-06-19 Broadcom Corporation Techniques for emulating an eeprom device

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003513388A (ja) * 1999-10-29 2003-04-08 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 安全性が確保されたカウンタによりデータ信頼性を保証するシステム及び方法
US20100318746A1 (en) * 2009-06-12 2010-12-16 Seakr Engineering, Incorporated Memory change track logging
US8566940B1 (en) * 2009-11-25 2013-10-22 Micron Technology, Inc. Authenticated operations and event counters
JP5624510B2 (ja) * 2011-04-08 2014-11-12 株式会社東芝 記憶装置、記憶システム及び認証方法
US9118467B2 (en) * 2013-03-13 2015-08-25 Atmel Corporation Generating keys using secure hardware
US20150012974A1 (en) * 2013-07-06 2015-01-08 Newvoicemedia, Ltd. System and methods for tamper proof interaction recording and timestamping
US9569638B2 (en) * 2014-12-31 2017-02-14 Google Inc. Trusted computing

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040059925A1 (en) * 2002-09-20 2004-03-25 Benhammou Jean P. Secure memory device for smart cards
CN1581110A (zh) * 2003-08-13 2005-02-16 国际商业机器公司 安全存储应用
CN1985229A (zh) * 2004-06-17 2007-06-20 纳格拉卡德股份有限公司 安全更新安全模块中的程序块的方法
CN102307193A (zh) * 2011-08-22 2012-01-04 北京宏基恒信科技有限责任公司 动态令牌的密钥更新及同步方法、系统及装置
US20140137271A1 (en) * 2012-11-15 2014-05-15 Elwha LLC, a limited liability corporation of the State of Delaware Data security and access tracking in memory
US20140173294A1 (en) * 2012-12-14 2014-06-19 Broadcom Corporation Techniques for emulating an eeprom device

Also Published As

Publication number Publication date
EP3136285A1 (de) 2017-03-01
US20170060779A1 (en) 2017-03-02
EP3136285B1 (de) 2018-09-26
DE102015216082A1 (de) 2017-03-02
US10353830B2 (en) 2019-07-16

Similar Documents

Publication Publication Date Title
CN106485162A (zh) 存储模块上安全保护的写和/或读过程的方法和存储模块
CN106168899B (zh) 用于更新嵌入式控制设备的方法和更新网关
ES2869395T3 (es) Procedimiento y sistema de control para controlar y/o supervisar equipos
CN111492624B (zh) 用于控制和/或监控装置的方法和控制系统
US20160057134A1 (en) Updating of a Digital Device Certificate of an Automation Device
KR102639075B1 (ko) 차량용 진단기 및 그 인증서 관리 방법
WO2019104988A1 (zh) Plc的安全处理单元及其总线仲裁方法
EP3284003A1 (en) Paravirtualized security threat protection of a computer-driven system with networked devices
CN105094082B (zh) 用于执行在控制设备之间的通信的方法
CN112313908B (zh) 用于控制和/或监控装置的方法和控制系统
CN105892348B (zh) 用于运行控制设备的方法
US8930710B2 (en) Using a manifest to record presence of valid software and calibration
CN107534551B (zh) 提供加密数据的方法、计算设备和计算机可读介质
CN112134956A (zh) 一种基于区块链的分布式物联网指令管理方法和系统
US10628562B2 (en) Method for protecting a computer program from being influenced, and computer system
US11398896B2 (en) Building device with blockchain based verification of building device files
CN108347431A (zh) 用于自主车辆的控制接口
US8095801B2 (en) Method of protecting microcomputer system against manipulation of data stored in a memory assembly of the microcomputer system
JP2020126586A (ja) ログデータの完全性保護
CN111131144B (zh) IoT设备管理方法、装置、服务器及存储介质
US20180337916A1 (en) Device controller security system
CN111869165A (zh) 用于控制和/或监控装置的方法和控制系统
US20220085982A1 (en) Safety system and maintenance method
WO2023205208A1 (en) Method for safety responses to security policy violations
CN110912698B (zh) 一种山地果园监控信息加密传输方法与装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20170308

WD01 Invention patent application deemed withdrawn after publication