CN112100697B - 带密码终止开关的存储器装置 - Google Patents

带密码终止开关的存储器装置 Download PDF

Info

Publication number
CN112100697B
CN112100697B CN202010556125.8A CN202010556125A CN112100697B CN 112100697 B CN112100697 B CN 112100697B CN 202010556125 A CN202010556125 A CN 202010556125A CN 112100697 B CN112100697 B CN 112100697B
Authority
CN
China
Prior art keywords
response
memory device
memory
command
interface
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202010556125.8A
Other languages
English (en)
Other versions
CN112100697A (zh
Inventor
G·戈洛夫
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.)
Micron Technology Inc
Original Assignee
Micron Technology Inc
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 Micron Technology Inc filed Critical Micron Technology Inc
Publication of CN112100697A publication Critical patent/CN112100697A/zh
Application granted granted Critical
Publication of CN112100697B publication Critical patent/CN112100697B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • H04L9/0897Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage involving additional devices, e.g. trusted platform module [TPM], smartcard or USB
    • 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
    • G06F21/79Protecting 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 in semiconductor storage media, e.g. directly-addressable memories
    • 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
    • G06F12/1425Protection 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 the protection being physical, e.g. cell, word, block
    • G06F12/1433Protection 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 the protection being physical, e.g. cell, word, block for a module or a part of a module
    • 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/602Providing cryptographic facilities or services
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0825Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
    • 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/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • 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/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • 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/1458Protection against unauthorised use of memory or access to memory by checking the subject access rights
    • G06F12/1466Key-lock mechanism
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/17Embedded application
    • G06F2212/173Vehicle or other transportation

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Storage Device Security (AREA)

Abstract

本申请涉及带密码终止开关的存储器装置。所公开的实施例描述了用于防止对存储器装置的未授权访问的装置和方法。所公开的实施例利用添加到存储器装置和处理装置两者的一次性可编程OTP存储器。OTP存储器存储加密密钥,并且两个装置之间的消息加密和解密被用作心跳,以确定所述存储器装置尚未与处理装置分离,并且在某些情况下确定存储器装置已连接至恶意处理装置。

Description

带密码终止开关的存储器装置
版权声明
本申请包含受版权保护的材料。版权所有者不反对任何人以专利和商标局文件或记录中出现的方式对专利公开进行摹真复制,但在其他方面保留任何所有版权。
技术领域
本公开涉及一种带密码终止开关的存储器装置。
背景技术
含有存储在动态随机存取存储器(DRAM)中的敏感数据的应用程序要求对此类数据进行保护,以防止未授权的访问。此类应用程序的一个实例是汽车应用程序。
为了获得对DRAM的未授权访问,恶意用户在DRAM处于自刷新或待机模式时将DRAM从其电路板上移除。在汽车背景下,当装有DRAM的车辆断电时,DRAM处于这种模式。恶意用户可以将DRAM从其原始板上拆焊(在其仍在通电时),然后将装置快速重新放置到专用板或插座上,以恢复为DRAM供电。在另一种攻击中,恶意用户可以在移除期间暂时冻结DRAM,从而减少各个DRAM单元的内部泄漏。在此过程中,DRAM可能会在短时间内掉电(通常为大约数十毫秒)。然而,大多数DRAM单元在这种供电中断期间不会丢失内容,且恶意用户随后可以通过受控板或插座获得对DRAM的内容的访问。
所公开的实施例提供了能防止这种类型的攻击和类似攻击的技术方案。
发明内容
在一方面,本公开提供一种方法,包括:由存储器装置向处理装置传送经加密命令;由所述存储器装置从所述处理装置接收响应;由所述存储器装置解密所述响应;由所述存储器装置检测所述解密失败;响应于检测到所述解密失败,由所述存储器装置禁用命令/地址接口。
在另一方面,本公开还提供一种装置,包括:存储器阵列;控制逻辑,其通信地耦合到所述存储器阵列;一次性可编程(OTP)存储器库,所述OTP存储至少一个密钥;以及认证逻辑,所述认证逻辑被配置为:向处理装置传送经加密命令,从所述处理装置接收响应,解密所述响应,检测所述解密失败,以及响应于检测到所述解密失败,禁用所述控制逻辑的命令/地址接口。
在又一方面,本公开还提供一种非暂时性计算机可读存储介质,用于有形地存储能够由处理器执行的计算机程序指令,所述计算机程序指令定义了以下步骤:向处理装置传送经加密命令;从所述处理装置接收响应;解密所述响应;检测所述解密失败;以及响应于检测到所述解密失败而禁用命令/地址接口。
附图说明
图1是根据本公开的一些实施例的计算装置的框图。
图2是示出根据本公开的一些实施例的用于在制造期间对计算系统进行编程的方法的流程图。
图3是示出根据本公开的一些实施例的用于禁用存储器装置的方法的流程图。
图4是示出根据本公开的一些实施例的用于检测存储器装置的认证失败的方法的流程图。
图5是示出根据本公开的一些实施例的用于响应认证请求的方法的流程图。
图6是示出根据本公开的一些实施例的车辆计算系统的框图。
具体实施方式
所公开的实施例描述了用于检测对诸如DRAM封装之类的存储器装置的攻击的装置、系统、方法和处理器可读介质。所公开的实施例利用添加到存储器装置和处理装置两者的OTP存储器。OTP存储器存储加密密钥,并且两个装置之间的消息加密/解密被用作心跳,以确定该存储器装置尚未与处理装置分离,并且在某些情况下确定存储器装置已连接至恶意处理装置。
图1是根据本公开的一些实施例的计算装置100的框图。
在所示的实施例中,装置100包含处理装置100a和存储器装置100b。在其他实施例中,装置100中可以包含各种其他组件。在一个实施例中,处理装置100a可以包括通用中央处理单元(CPU)、图形处理单元(GPU)、片上系统(SoC)或其他类型的处理装置。在一个实施例中,外部存储器100b包括DRAM装置,但是也可以使用其他类型的存储器装置,例如静态随机存取存储器(SRAM)和闪存装置。通常,可由用户在物理上与处理装置分开(例如,通过拆焊)的任何存储器装置都可以用作外部存储器100b。
处理装置100a和外部存储器100b可以包含各种组件。一些组件可以包括此类装置的标准组件。例如,处理装置100a的核心102可以包括用于执行从存储器(外部存储器或内部存储器)读取的操作的一或多个处理核心。类似地,外部存储器100b的控制逻辑112和存储器阵列114可以包括例如DRAM封装的标准控制逻辑和存储器库。两个装置100a、100b通过标准存储器接口104a、104b连接。这种存储器接口104a、104b允许对外部存储器100b进行读取、写入以及执行其他操作。如在图3的步骤302中所讨论的,这些组件可以正常地操作以向处理装置提供存储器,并且为了清楚起见在此不包含关于该操作模式的进一步细节。
与现有装置相比而言,处理装置100a和存储器装置100b均配备有认证电路(分别为120a,120b)。这些电路120a、120b允许处理装置100a与外部存储器100b之间的带外(OOB)通信。这种通信形成由外部存储器100b操作的认证机制的基础,这将在下面更详细地进行描述。
每个电路120a、120b包含OTP存储器106a、106b、认证逻辑108a、108b以及专用接口110a、110b。在所示的实施例中,OTP存储器106a、106b包括可被写入一次并在其生命周期内保持该数据(即,非易失性)的存储器库。可以使用任何类型的OTP存储器,并且OTP存储器的特定类型没有限制。如将描述的,OTP存储器106a、106b用于存储由装置100使用的加密密钥。
每个电路120a、120b另外地包含接口110a、100b。在一个实施例中,这种接口110a、100b包括串行接口。在一个实施例中,接口110a、100b与诸如存储器接口104a、104b之类的其他数据路径分离。
每个电路120a、120b另外地包含认证逻辑108a、108b。尽管被示出为在OTP存储器106a、106b的外部,但是在一些实施例中,逻辑108a、108b被存储在OTP存储器106a、106b内并且由微控制器或处理器(未示出)执行。即,在一个实施例中,认证逻辑108a、108b可以从OTP存储器106a、106b读取,由核心102或控制逻辑(分别)执行,并且经由接口110a、110b进行通信。在其他实施例中,认证逻辑108a、108b可以包括电路或现场可编程门阵列(FPGA)或其他硬连线电路。
认证逻辑108a负责处理从认证逻辑108b接收的经加密命令116。认证逻辑108a解密此类命令116,验证解密成功,并生成经加密的响应118。认证逻辑108b被配置为生成(经加密)命令116并且将这样的命令传送到处理装置100a。认证逻辑108b被另外配置为接收经加密的响应118,验证该响应是否可以被解密,如果否,则发出命令/地址总线使能信号120。认证逻辑108a、108b的这些以及其他操作在以下图2至5的描述中被更全面地进行描述。
图2是示出根据本公开的一些实施例的用于在制造期间对计算系统进行编程的方法200的流程图。在一个实施例中,方法200由电子器件组装线的组件执行。此类组件可以包括被设计为在最终封装和/或安装之前对电路板(或其他装置)进行构建和编程的各种装置。
在步骤202中,方法200接收板。在一个实施例中,该板包括印刷电路板或类似类型的板。该板包含至少一个处理装置和至少一个外部存储器,如图1的描述中所述。在一个实施例中,方法200通过例如机械手或输送机装置接收板作为生产流水线的最后阶段。
在步骤204中,方法200生成认证密钥。在一个实施例中,认证密钥包括加密和/或解密密钥。在一个实施例中,认证密钥包括对称或非对称密钥。在一个实施例中,可以使用高级加密标准(AES)、数据加密标准(DES)或另一种对称加密标准来生成对称密钥。在一个实施例中,可以使用诸如非对称密钥算法(RSA)、密钥协商算法、双模网格签名方案(BLISS)或另一种非对称加密标准的任何公共密钥加密标准来生成非对称密钥。
在步骤206中,方法200将适当的认证密钥写入处理装置的OTP存储器和外部存储器。当使用对称密码术时,方法200将所生成的加密密钥写入处理装置上的OTP存储器库和外部存储器两者。当使用非对称密码术(例如,密钥协商算法)时,方法200将相应的私有秘钥写入处理装置的OTP存储器和外部存储器。另外,方法200可以将两个公共密钥写入每个装置。通常,方法200使用指定的加密标准写入在装置之间加密和解密数据所需的所有密钥。写入OTP库的特定密钥可以根据所使用的特定加密标准而变化,并且实施例不限于单一的特定加密技术。
在方法200完成之后,每个装置包含存储在OTP存储器中的一或多个密钥,其可以在装置之间的未来通信期间使用,如本文中更详细地描述的。
图3是示出根据本公开的一些实施例的用于禁用存储器装置的方法300的流程图。在所示的实施例中,存储器装置(例如100b)执行方法300。
在步骤302中,方法302正常执行存储器操作。此类操作的示例是存储器读取、写入和擦除操作。处理装置(例如100a)可以在正常操作期间在步骤302中发出命令以促使存储器执行此类操作。
在步骤304中,方法300确定是否存在认证失败。方法300如何执行步骤304的具体细节在图4的描述中更全面地进行描述。简而言之,方法300可以在同时执行步骤302的同时,作为OOB或后台过程来执行步骤304。当执行方法300的存储器装置不能验证连接到该存储器装置的处理装置的存在(或身份)时,检测到认证失败。如图所示,如果存储器装置可以确认授权处理装置正在向存储器装置发出命令,则方法300在步骤302中继续正常操作。
在步骤306中,当方法300检测到认证失败时(步骤304),方法300引发用来禁用执行该方法300的存储器装置的命令/地址(C/A)接口的信号。
在一个实施例中,该信号在存储器装置的C/A输入上传送。在一个实施例中,C/A输入逻辑上连接到C/A接口的每一条线。例如,引发C/A禁用可以包括将信号降低到逻辑零。然后,将C/A禁用与每个C/A进行逻辑“与”运算,从而将所有C/A线驱动为逻辑零。可以实现其他电路以实现类似的功能。
在步骤308,方法300确定是否检测到认证成功。在所示的实施例中,步骤308与步骤304相同。即,方法300确定存储器装置是否正在与授权处理装置进行通信。在该步骤308中,方法300确定在存储器装置与授权处理装置之间的通信自先前在步骤304中检测到断开连接之后是否被重新建立。
在所示的实施例中,处理装置的认证失败可以另外包含对由方法300发出的命令作出响应的失败。另外,如上所述,失败可以包括不正确的加密响应。
如果方法300继续检测到认证失败,则方法300继续禁用C/A接口(步骤306)。然而,如果方法300检测到认证成功,则这意味着执行方法300的存储器装置已经与已知处理装置重新建立了通信。
在一些实施例中,方法300在检测到认证成功之后继续执行存储器操作(步骤302)。然而,为了增加安全性,在一些实施例中,方法300可以在执行步骤302中的存储器操作之前清理存储器(步骤310)。在一个实施例中,这包括向存储器装置发出RESET(复位)命令,或执行将系统地擦除存储器装置的内容的类似命令。
在一些实施例中,步骤308-310是任选的。在任一实施例中,方法300通过降低C/A禁用信号而继续执行存储器操作(步骤312)。降低C/A禁用信号包括步骤306的描述中所述的过程的逆过程。
图3中所示的方法300描述了如何基于认证失败和成功来禁用和启用存储器的命令/地址接口。图4描述了关于步骤304和308中用于检测认证失败和成功的过程的更多细节。
图4是示出根据本公开的一些实施例的用于检测存储器装置的认证失败的方法400的流程图。在所示的实施例中,存储器装置(例如100b)执行方法400。
在步骤402,方法400对命令进行加密。
在一个实施例中,该命令包括来自例如处理装置100a的对认证消息的请求。在步骤402中可以对各种类型的命令进行加密。在一个实施例中,该命令包括随机数命令(例如,“PING”命令),接收方以随机数命令(例如,“PONG”命令)对其进行响应。在该实施例中,命令的内容是无关紧要的,并且命令/响应的加密/解密(在以下讨论)用于认证。在另一个实施例中,命令可以包含要在返回消息中返回的唯一数据。例如,该命令可以包含必须由接收方解密并重新加密以确认传送方身份的有效载荷(例如,随机数)。在另一个实施例中,该命令可以包含防止蛮力响应的小的处理指令(例如,工作量证明要求)。
如图所示,无论使用什么命令都通过方法400进行加密。如以上所讨论的,方法400使用由执行该方法400的存储器装置存储的密钥来经加密命令。这可以包括共享的对称密钥,或者可以包括接收者的非对称的公共密钥。因此,在步骤402中,方法400使用指定的加密算法将明文命令转换为密文命令。
在步骤404,方法400将加密的命令传送到处理装置。在一个实施例中,方法400使用专用接口传送加密的命令。在一个实施例中,该专用接口是串行接口。在传送命令之后,方法400等待响应。
在步骤406,方法400确定是否接收到响应。在一个实施例中,方法400使用衰减定时器来确定等待响应的时间。在一个实施例中,如果方法400在该时间窗口内检测到响应,则方法400前进到步骤410。然而,如果方法400没有在指定的时间窗口中接收到响应,则在步骤408中该方法引发认证失败(在以下讨论)。在一些实施例中,方法400可以另选地使用固定数量的时钟周期来代替定时器。
在步骤408中,如果方法400在预定时间窗口内未接收到对经加密命令的响应,则方法400引发认证失败。在一个实施例中,方法400通过启用C/A禁用信号(先前所讨论的)而引发认证失败。还可以利用其他引发失败的机制,这些机制最终可以指示存储器装置禁用C/A接口。
如果方法400确定接收到响应,则该方法在步骤410中继续解密该响应。如将在图5的描述中所更详细地描述的,处理装置处理命令、加密响应,并将该响应传送到执行方法400的存储器装置。
在步骤410中,方法400使用解密例程来解密响应。在一些实施例中,该例程是与步骤402中采用的加密例程相对应的解密例程。在另选的实施例中,解密方法可以不同于加密方法。在一个实施例中,方法400使用对称密钥来解密响应。在其他实施例中,如果使用公共秘钥密码术,则方法400使用其自己的私有秘钥来解密响应。无论哪种情况,步骤410的输出都是经解密的响应。
在步骤412中,方法400确定解密是否成功。在一个实施例中,步骤412包括确定解密例程是否在没有错误的情况下完成。如果方法400确定不可能解密,则表明传送方不具有适当的加密密钥,因此是未授权的。因此,在步骤408中,方法400响应于解密失败而引发认证失败。先前已提供了步骤408的细节。
在(任选的)步骤414中,方法400确定解密后的响应是否有效。在所示的实施例中,有效响应是基于命令的内容对加密的命令提供有意义的响应的响应。例如,命令可以提供两个整数并向接收者请求总和。通常,经加密命令将包含第一数据,并且响应将包含第二数据,从而使得执行方法400的存储器装置可以快速确认第二数据的准确性。如果响应无效(即,有效载荷不正确),则方法400如上所述引发认证失败。
在步骤416中,方法400引发认证成功信号,或者在其他实施例中,如果响应通过步骤412和步骤414(如果实施的),则不执行任何操作(NOOP)。在一个实施例中,引发认证信号包括引发成功输出的信号电平。替代地,在一些实施例中,方法400可以在检测到认证成功时不采取任何动作。
图5是示出根据本公开的一些实施例的用于响应认证请求的方法500的流程图。在一个实施例中,方法500由处理装置100a执行。
在步骤502,方法500接收命令。所接收的命令包括在图4中讨论的经加密命令。
在步骤504,方法500解密命令。在一个实施例中,方法500使用共享对称密钥来解密命令。在另一个实施例中,方法500在公共秘钥密码系统中使用私有秘钥来解密命令。前面已经描述了两个实施例。
在步骤506,方法500确定解密是否成功。在一些实施例中,方法500采用步骤506来防止对执行该方法500的处理装置的授权访问。因此,如果方法500确定命令没有被成功加密,则方法500引发并处理错误(步骤508)。在一个实施例中,在步骤508中处理错误可以包括禁用对传送命令的装置的访问。
在步骤510,方法500确定命令格式是有效还是无效。在该步骤中,方法500确定其是否理解从传送器传送的命令。在一个实施例中,这包括确定命令名称或操作码是否是已知名称或操作码。如果命令无效或格式不正确,则方法500引发并处理错误(508)。
在步骤512,方法500执行命令。在一些实施例中,步骤512是任选的。在一个实施例中,如上所述,该命令促使执行方法500的处理装置执行某种形式的计算以验证其身份(即,执行加法运算或执行工作量证明谜题)。如果是这样,则方法500在步骤512中执行该计算并产生结果。
在步骤514中,该方法加密响应。在一个实施例中,这包括对命令名称以及必要时对在步骤512中计算出的任何结果进行加密。在一个实施例中,方法500采用如上所述的对称或非对称密码术。
在步骤516,方法500将经加密的响应传送到命令的传送方。在一个实施例中,这包括在专用信道上传送经加密的响应。在一些实施例中,该专用信道是串行接口信道。
图6是示出根据本公开的一些实施例的车辆计算系统600的框图。
在图6中,车辆600可以包括任何类型的车辆(例如,汽车、轮船等)。通常,车辆可以包括容纳各种离散计算系统的任何上层结构,并且车辆被提供作为示例。车辆600包含一或多个发动机控制单元(ECU)装置602a-602n。ECU的示例包含门控制单元(DCU)、发动机控制单元、电动助力转向控制单元(PSCU)、人机界面(HMI)、动力总成控制模块(PCM)、座椅控制单元、速度控制单元(SCU)、远程信息处理控制单元(TCU)、变速器控制单元(TCU)、制动控制模块(BCM;ABS或ESC)或电池管理系统(BMS)装置。尽管主要在ECU装置的背景下进行描述,但是任何类型的嵌入式计算系统都可以在本文公开的实施例中使用,并且参考ECU装置的实施例被提供作为示例。
ECU 602a-602n每个都连接到总线604。在一些实施例中,总线604包括汽车局域网(CAN)总线、FlexRay、MOST总线或任何其他类型的双向通信总线。
系统的处理侧包含一或多个处理装置100a、外部存储器装置100b、射频(R/F)系统612、GPU 614、长期存储体610以及一或多个接口618。在以上描述中更全面地描述了处理装置100a和存储器装置100b。R/F系统612可以包括蜂窝收发器和/或卫星收发器。长期存储体610可以包括一或多个高容量固态驱动器(SSD)。通常,长期存储体610可用于存储例如高清地图、路由数据以及任何其他需要永久或半永久存储的数据。GPU 614可以包括一或多个高吞吐量GPU装置,以用于处理从其他车辆子系统接收的数据。最后,界面616可以包括位于车辆内的各种显示单元(例如,仪表板屏幕)。
在下文中参照附图更充分地描述了本公开,附图构成本公开的一部分,并且其通过图示的方式示出了某些示例性实施例。然而,主题可以以各种不同的形式来体现,因此,所涵盖或要求保护的主题旨在被解释为并不限于在此阐述的任何示例性实施例;示例性实施例仅被提供作为例示说明。同样,旨在所要求保护或涵盖的主题在合理宽广的范围内。此外,例如,主题可以体现为方法、装置、组件或系统。因此,实施例可以例如采用硬件、软件、固件或其任何组合(除了软件本身)的形式。因此,以下详细描述并非旨在以限制的意义来理解。
在整个说明书和权利要求书中,术语可以具有超出明确陈述的含义的在上下文中建议或暗示的具有细微差别的含义。同样地,如本文中所使用的短语“在一个实施例中”并不一定指代同一实施例,并且如本文中所使用的短语“在另一实施例中”并不一定指代一不同的实施例。例如,旨在所要求保护的主题全部或部分地包含示例性实施例的组合。
通常,可以至少部分地根据上下文的使用来理解术语。例如,如以上所使用的诸如“和”、“或”或“和/或”之类的术语可以包含各种含义,其可以至少部分地取决于使用这些术语的上下文。通常,如果用于关联列表,例如A、B或C,则“或”旨在表示A,B和C(此时以包含性含义使用)以及A、B或C(此时以排他性含义使用)。另外,本文所使用的术语“一或多个”至少部分地取决于上下文,其可以用于以单数含义描述任何特征、结构或特性,或者可用于以复数含义描述特征、结构或特性的组合。类似地,诸如“一”、“一个”或“该”之类的术语可以再次被理解为传达单数用法或传达复数用法,这至少部分地取决于上下文。另外,术语“基于”可以被理解为不一定旨在传达一组排他的因素,并且可以替代地允许存在未必被明确描述的附加因素,同样这至少部分地取决于上下文。
已经参考方法和装置的框图和操作示图描述了本公开。应当理解,框图或操作示图中的每个框以及框图或操作示图中的框的组合,可以借助于模拟或数字硬件和计算机程序指令来实现。可以将这些计算机程序指令提供给通用处理器、专用计算机、ASIC或其他可编程数据处理装置,以使得通过计算机或其他可编程数据处理装置的处理器执行的指令实现在框图或一或多个操作框中指定的功能/动作。在一些替代实施方式中,框中指出的功能/动作可以不按照操作示图中指出的顺序发生。例如,取决于所涉及的功能/动作,实际上可以基本上同时执行连续示出的两个框,或者有时可以以相反的顺序执行这些框。
为了本公开的目的,计算机可读介质(或计算机可读存储介质/媒介)存储计算机数据,该数据可以包含采用机器可读形式的可以由计算机执行的计算机程序代码(或计算机可执行指令)。作为示例而非限制,计算机可读介质可包括用于数据的有形或固定存储的计算机可读存储介质,或用于瞬时解释含有代码的信号的通信介质。如本文所使用的,计算机可读存储介质是指物理或有形存储体(与信号相反),并且包含但不限于以用于有形存储信息(例如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机可读存储介质包含但不限于RAM、ROM、EPROM、EEPROM、闪存存储器或其他固态存储器技术,CD-ROM、DVD或其他光学存储体,磁带盒、磁带、磁盘存储体或其他磁性存储体装置,或可用于有形存储所需信息、数据或指令并且可由计算机或处理器访问的任何其他物理或材料介质。

Claims (17)

1.一种用于存储器装置的方法,所述方法包括:
由所述存储器装置向处理装置传送经加密命令,所述经加密命令包括工作量证明要求;
由所述存储器装置从所述处理装置接收响应,所述响应包含执行所述经加密命令的经加密结果;
由所述存储器装置解密所述响应以获得经解密结果;
如果所述经解密结果不等于所述经加密命令的期望结果,则由所述存储器装置检测所述解密失败;
响应于检测到所述解密失败,由所述存储器装置通过引发促使所述存储器装置将接口的线驱动为零的信号而禁用所述接口;
由所述存储器装置检测第二响应的第二解密成功;
由所述存储器装置清理一或多个存储器库;以及
由所述存储器装置降低所述信号以启用对所述接口的所述线的访问。
2.根据权利要求1所述的方法,进一步包括:通过使用共享私有秘钥对明文命令进行加密来生成所述经加密命令。
3.根据权利要求2所述的方法,解密所述响应包括使用所述共享私有秘钥解密所述响应。
4.根据权利要求1所述的方法,进一步包括:通过使用公共秘钥对明文命令进行加密来生成所述经加密命令。
5.根据权利要求4所述的方法,所述解密所述响应包括使用与所述公共密钥相对应的私有密钥来解密所述响应。
6.根据权利要求1所述的方法,所述禁用所述接口促使所述存储器装置忽略通过所述接口传送的任何指令。
7.根据权利要求1所述的方法,所述检测所述解密失败进一步包括:确定所述响应是有效还是无效。
8.一种存储器装置,包括:
存储器阵列;
控制逻辑,其通信地耦合到所述存储器阵列;
一次性可编程OTP存储器库,所述OTP存储至少一个密钥;以及
认证逻辑,所述认证逻辑被配置为:
向处理装置传送经加密命令,所述经加密命令包括工作量证明要求,
从所述处理装置接收响应,所述响应包含执行所述经加密命令的经加密结果,
解密所述响应以获得经解密结果,
检测所述解密失败,
响应于检测到所述解密失败,通过引发促使所述存储器装置将所述控制逻辑的接口的线驱动为零的信号而禁用所述接口;
检测第二响应的第二解密成功,
清理一或多个存储器库,以及
降低所述信号以启用对所述接口的所述线的访问。
9.根据权利要求8所述的存储器装置,所述存储器阵列包括动态随机存取存储器DRAM阵列。
10.根据权利要求8所述的存储器装置,所述接口包括串行接口。
11.根据权利要求8所述的存储器装置,所述至少一个密钥包括共享对称密钥。
12.根据权利要求8所述的存储器装置,所述至少一个密钥包括:对于所述存储器装置唯一的私有秘钥;以及所述处理装置的公共秘钥,所述私有秘钥用于解密所述响应,且所述公共秘钥用于加密所述命令。
13.一种非暂时性计算机可读存储介质,用于有形地存储能够由处理器执行的计算机程序指令,所述计算机程序指令定义了以下步骤:
向处理装置传送经加密命令,所述经加密命令包括工作量证明要求;
从所述处理装置接收响应,所述响应包含执行所述经加密命令的经加密结果;
解密所述响应以获得经解密结果;
如果所述经解密结果不等于所述经加密命令的期望结果,则检测所述解密失败;
响应于检测到所述解密失败,通过引发将接口的线驱动为零的信号而禁用所述接口;
检测第二响应的第二解密成功;
清理一或多个存储器库;以及
降低所述信号以启用对所述接口的所述线的访问。
14.根据权利要求13所述的非暂时性计算机可读存储介质,所述指令进一步定义以下步骤:通过使用共享私有秘钥对明文命令进行加密来生成所述经加密命令,其中解密所述响应包括使用所述共享私有秘钥来解密所述响应。
15.根据权利要求13所述的非暂时性计算机可读存储介质,所述指令进一步定义以下步骤:通过使用公共密钥对明文命令进行加密来生成所述经加密命令,其中解密所述响应包括使用与所述公共密钥相对应的私有密钥来解密所述响应。
16.根据权利要求13所述的非暂时性计算机可读存储介质,所述禁用所述接口包括忽略通过所述接口传送的任何指令。
17.根据权利要求13所述的非暂时性计算机可读存储介质,所述检测所述解密失败进一步包括:确定所述响应是有效还是无效。
CN202010556125.8A 2019-06-18 2020-06-17 带密码终止开关的存储器装置 Active CN112100697B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/444,359 2019-06-18
US16/444,359 US11726923B2 (en) 2019-06-18 2019-06-18 Memory device with cryptographic kill switch

Publications (2)

Publication Number Publication Date
CN112100697A CN112100697A (zh) 2020-12-18
CN112100697B true CN112100697B (zh) 2024-04-02

Family

ID=73750414

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010556125.8A Active CN112100697B (zh) 2019-06-18 2020-06-17 带密码终止开关的存储器装置

Country Status (2)

Country Link
US (2) US11726923B2 (zh)
CN (1) CN112100697B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102020119578A1 (de) * 2020-07-24 2022-01-27 Infineon Technologies Ag Bereitstellen einer Challenge für ein Gerät
TWI760805B (zh) * 2020-07-31 2022-04-11 廣達電腦股份有限公司 具有雙重安全啟動之自動駕駛系統
KR102620949B1 (ko) * 2021-07-09 2024-01-09 한국전자통신연구원 메모리 방식의 위장 셀을 이용한 하드웨어 미터링 장치 및 방법

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104620226A (zh) * 2012-07-24 2015-05-13 英派尔科技开发有限公司 确保公共的、私人的和移动的装置中的私人信息的安全

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005011151A (ja) * 2003-06-20 2005-01-13 Renesas Technology Corp メモリカード
US9331990B2 (en) * 2003-12-22 2016-05-03 Assa Abloy Ab Trusted and unsupervised digital certificate generation using a security token
US20080307522A1 (en) * 2004-07-05 2008-12-11 Science Park Corporation Data Management Method, Program For the Method, and Recording Medium For the Program
DE102007026836A1 (de) * 2007-06-06 2008-12-11 Bundesdruckerei Gmbh Verfahren und System zur Prüfung der Echtheit eines Produkts und Lesegerät
US8650399B2 (en) * 2008-02-29 2014-02-11 Spansion Llc Memory device and chip set processor pairing
US8543799B2 (en) * 2008-05-02 2013-09-24 Microsoft Corporation Client authentication during network boot
US8621195B2 (en) * 2011-04-27 2013-12-31 Hewlett-Packard Development Company, L.P. Disabling communication ports
US10482036B2 (en) * 2016-09-18 2019-11-19 Winbond Electronics Corporation Securely binding between memory chip and host
EP3439190B1 (en) * 2017-07-31 2022-04-20 InnoValor B.V. Improved nfc-chip reader
US10984093B2 (en) * 2018-04-30 2021-04-20 Western Digital Technologies, Inc. Memory and controller mutual secure channel association
US11050570B1 (en) * 2018-11-21 2021-06-29 Amazon Technologies, Inc. Interface authenticator

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104620226A (zh) * 2012-07-24 2015-05-13 英派尔科技开发有限公司 确保公共的、私人的和移动的装置中的私人信息的安全

Also Published As

Publication number Publication date
US11726923B2 (en) 2023-08-15
US20230409491A1 (en) 2023-12-21
CN112100697A (zh) 2020-12-18
US20200401533A1 (en) 2020-12-24

Similar Documents

Publication Publication Date Title
CN108363347B (zh) 用于电子控制单元的硬件安全
CN112100697B (zh) 带密码终止开关的存储器装置
JP6741559B2 (ja) 評価装置、評価システム及び評価方法
US10637647B2 (en) Control device including direct memory access controller for securing data and method thereof
US11960901B2 (en) Autonomous driving controller parallel processor boot order
US9787677B2 (en) Method of authenticating can packets using mixture of MACs and apparatus for implementing the same
KR20160080742A (ko) 메모리 컨트롤러, 그 동작 방법 및 이를 포함하는 메모리 시스템
EP4080818A1 (en) Communication method and device, ecu, vehicle and storage medium
US9076002B2 (en) Stored authorization status for cryptographic operations
KR102569893B1 (ko) 차량 네트워크를 위한 보안 기법 및 그 장치
CN107861892B (zh) 一种实现数据处理的方法及终端
US11750573B2 (en) System for transmitting and receiving data based on vehicle network and method therefor
US11362823B2 (en) Cryptographic device
WO2015016845A1 (en) Component management via secure communications
KR102025808B1 (ko) 차량용 제어 유닛의 업데이트 방법 및 차량
WO2020090418A1 (ja) 電子制御装置、電子制御装置のリプログラミング方法
CN112149167A (zh) 一种基于主从系统的数据存储加密方法及装置
CN104580181A (zh) 加密数据的方法、装置及加密加速引擎
WO2024026588A1 (zh) 一种数据读写控制方法和装置
CN220359171U (zh) 车联网安全加密系统
CN113642051B (zh) Spi存储设备的加密数据读写方法及嵌入式处理器芯片
US11677560B2 (en) Utilization of a memory device as security token
US20230267204A1 (en) Mitigating a vehicle software manipulation
US20230224284A1 (en) Method of controlling security key of vehicle
US20240007297A1 (en) System and Method for Providing DSSAD Data

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant