CN103597496B - 用于认证非易失性存储器设备的方法和装置 - Google Patents
用于认证非易失性存储器设备的方法和装置 Download PDFInfo
- Publication number
- CN103597496B CN103597496B CN201280025360.6A CN201280025360A CN103597496B CN 103597496 B CN103597496 B CN 103597496B CN 201280025360 A CN201280025360 A CN 201280025360A CN 103597496 B CN103597496 B CN 103597496B
- Authority
- CN
- China
- Prior art keywords
- equipment
- authentication information
- nvm
- main process
- authentication
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/44—Program or device authentication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3271—Cryptographic 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/14—Protection against unauthorised use of memory or access to memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1044—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices with specific ECC/EDC distribution
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/44—Program or device authentication
- G06F21/445—Program or device authentication by mutual authentication, e.g. between devices or programs
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key 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/0827—Key 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) involving distinctive intermediate devices or communication paths
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)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Quality & Reliability (AREA)
- Storage Device Security (AREA)
Abstract
提供了用于认证非易失性存储器(NVM)设备的装置和方法。认证NVM设备的主机设备向NVM设备发送用于认证的质询信息,从NVM设备接收响应于质询信息的多条认证信息,并且主机设备利用该多条认证信息来认证NVM设备。该多条认证信息是基于质询信息和存储在NVM设备中的秘密密钥信息来生成的。
Description
技术领域
本发明概括而言涉及用于认证非易失性存储器(Non-Volatile Memory,NVM)设备的方法和装置。
背景技术
为了保护内容,使用诸如数字版权管理(Digital Rights Management,DRM)、拷贝保护等等之类的技术。其他技术认证存储器设备,包括NVM设备,比如固态盘(Solid StateDisk,SSD)、闪存卡、安全数字(Secure Digital,SD)卡、多媒体卡(MultiMedia Card,MMC)或者通用串行总线(Universal Serial Bus,USB)设备。
虽然DRM、用于SD卡的可记录媒介内容保护(Content Protection forRecordable Media,CPRM)和用于蓝光盘的高级访问内容系统(Advanced Access ContentSystem,AACS)提供基于公钥基础设施(Public Key Infrastructure,PKI)或其他密码技术的设备认证方法,但这些技术不能针对诸如存储器设备的复制或者合法播放器对未经授权的存储介质的认证之类的攻击进行保护。
对于基于CPRM或AACS的设备认证方法,标识符(IDentifier,ID)在存储介质的制造期间被存储在存储介质的只读区域中。存储的ID随后通过加密方案被用于设备认证和内容保护。这些类型的设备认证方法的主要缺点是非法的硬件制造者可容易克隆数个经认证的设备。
然而,没有规定的传统方法用于允许主机设备直接认证NVM设备。因此,控制器为NVM设备执行纠错码(Error Correction Code,ECC)功能和介质认证功能,该NVM设备被动地提供数据存储空间。
图1是示出利用控制器执行介质认证的传统主机设备和介质设备的框图。
参考图1,传统的介质设备20包括存储信息的NVM设备22,以及向NVM设备22输入数据和从NVM设备22输出数据并且控制NVM设备22 的控制器21。因此,控制器21为NVM设备22控制ECC功能。使用介质设备20的主机设备10通过认证验证模块11对介质设备20执行介质认证。控制器21包括闪存转换层(Flash Translation Layer,FTL)、ECC模块和安全性模块。
发明内容
技术问题
然而,尤其是随着闪存的集成已从能够存储1比特的单元(单级单元)增长到能够存储2比特的单元(多级单元)然后增长到能够存储3比特的单元(三级单元),生成的差错多多了。在此情境中,需要鲁棒的ECC性能。然而,大多数当前的存储器设备对于ECC功能依赖于单独的控制器,而在NVM设备中包括ECC功能作为认证机制可大幅增加生产成本。
技术方案
本发明被设计来解决至少上述问题和/或缺点并且提供至少下述优点。
因此,本发明的一个方面提供了一种用于认证NVM设备的方法和装置,其在没有额外的ECC组件的情况下提供可靠的ECC功能。
根据本发明的实施例,提供了一种用于认证NVM设备的方法。该方法包括:由主机设备向NVM设备发送用于认证的质询信息;响应于质询信息,由主机设备从NVM设备接收多条认证信息;以及由主机设备利用该多条认证信息来认证NVM设备。该多条认证信息是基于质询信息和存储在NVM设备中的秘密密钥信息来生成的。
根据本发明的另一实施例,提供了一种主机设备,用于认证NVM设备。该主机设备包括:接口,用于作为与NVM设备的数据通信的接口;以及认证验证模块,用于通过接口向NVM设备发送用于认证的质询信息,通过接口从NVM设备接收响应于质询信息的多条认证信息,并且利用该多条认证信息来认证NVM设备。该多条认证信息是基于质询信息和存储在NVM设备中的秘密密钥信息来生成的。
根据本发明的另一实施例,提供了一种用于认证NVM设备的方法。该方法包括:由NVM设备从主机设备接收用于认证的质询信息;由NVM设备利用质询信息和存储在NVM设备中的秘密密钥信息来生成多条认证信息;以及响应于质询信息,由NVM设备将该多条认证信息发送到主机设备。
根据本发明的另一实施例,提供了一种NVM设备。该NVM设备包括:受保护区域,该受保护区域包括用于生成认证信息的秘密密钥信息以及头部信息;接口,用于从主机设备接收用于认证的质询信息;以及认证信息生成器,用于利用质询信息和秘密密钥信息来生成多条认证信息。接口响应于接收到质询信息将该多条认证信息发送到主机设备。
有益效果
在不向NVM设备添加ECC组件的情况下,主机设备利用从NVM设备接收的多条认证信息来认证NVM设备。因此,可以认证没有独立的纠错功能(ECC组件)的NVM设备,从而降低了NVM设备的成本。
附图说明
通过接下来结合附图的详细描述,本发明的某些实施例的上述和其他方面、特征和优点将更清楚,附图中:
图1是示出利用控制器执行介质认证的传统主机设备和介质设备的框图;
图2是示出根据本发明的实施例认证NVM设备的主机设备和介质设备的框图;
图3是示出根据本发明的实施例的认证嵌入式NVM设备的主机设备的框图;
图4A和图4B是示出根据本发明的实施例的认证NVM设备的主机设备的认证方法的信号流图;
图5是示出根据本发明的实施例的认证NVM设备的主机设备的框图;
图6是示出根据本发明的实施例的NVM设备的框图;
图7是示出根据本发明的实施例的认证NVM设备的主机设备方法的流程图;
图8示出了根据本发明的实施例的接收到的认证信息和从接收到的认证信息中提取的最终认证信息;
图9是示出根据本发明的实施例的NVM认证方法的流程图;
图10是根据本发明的实施例的包括NVM设备和认证NVM设备的主机设备的认证系统的信号流图;
图11示出了根据本发明的实施例的包括认证信息的数据帧;并且
图12是示出根据本发明的实施例的用于认证NVM设备的主机设备方法的流程图。
贯穿附图始终,相同的附图标号应被理解为指代相同的元件、特征和结构。
具体实施方式
现在将参考附图详细描述本发明的各种实施例。在接下来的描述中,诸如详细配置和组件之类的具体细节只是提供来帮助对本发明的这些实施例的整体理解。因此,本领域的技术人员应当清楚,在不脱离本发明的范围和精神的情况下,可对这里描述的实施例进行各种改变和修改。此外,为了清晰和简洁起见,省略了对公知的功能和构造的描述。
根据本发明的实施例,提供了主机设备认证NVM设备的方法。更具体而言,在不包括可靠性赋予组件到NVM设备中的情况下,通过允许主机设备以使得主机设备能够保证认证信息的可靠性和验证认证信息的次数多次获取认证信息,向认证信息赋予了可靠性。因此,主机设备可就诸如ECC功能之类的功能独立地认证NVM设备。
这里,术语“NVM设备”指的是即使在掉电时也无限期地保持存储的信息的存储介质,比如NAND或NOR闪存、SSD、MMC或USB设备。此外,NVM设备也可以是嵌入在主机设备中的内置存储介质。
图2是示出根据本发明的实施例认证NVM设备的主机设备和介质设备的框图。
参考图2,主机设备100包括认证验证模块110,该认证验证模块110直接认证介质设备200中的NVM设备,而不像图1中所述那样使用额外的控制器。此外,介质设备200仍可执行通过控制器210认证NVM设备220的传统方法。
图3是示出根据本发明的实施例的认证嵌入式NVM设备的主机设备的框图。
参考图3,当没有控制器的NVM设备220被嵌入在主机设备100中时,NVM设备220也可被认证验证模块110直接认证。
图4A和图4B是示出根据本发明的实施例的认证NVM设备的主机设备的认证方法的信号流图。
参考图4A,主机设备100包括认证验证模块110,用于从NVM设备220接收认证信息并且基于接收到的认证信息来认证NVM设备220。NVM设备220包括受保护区域310,用于存储重要信息,例如秘密密钥311。更具体而言,受保护区域310是这样的区域:在NVM设备220的制造期间,重要信息被存储到该区域,然后存储路径被禁用。因此,只向受保护区域310提供只读命令。
NVM设备220还包括认证信息生成器320,该认证信息生成器320通过认证协议中定义的操作利用秘密密钥311来生成认证信息,所述操作例如是伪随机数生成、加密等等。例如,认证信息生成器320可配置有用于生成认证信息的电路。
在图4A和图4B中,当NVM设备220被认证时,NVM设备220和主机设备100相互交换承诺值和质询值(410)。从NVM设备220向主机设备100发送承诺值是可任选的。
随后,NVM设备220根据认证协议利用秘密密钥311生成认证信息并且将认证信息发送到主机设备100。秘密密钥311可被存储在NVM设备220中,如图4A中所示,或者多个相同的秘密密钥311-1至311-n可被存储在NVM设备220中,如图4B中所示。
认证信息生成器320利用图4A中的秘密密钥311或者利用图4B中的多个相同的秘密密钥311-1至311-n生成多条认证信息311'-1至311'-n。主机设备100的认证验证模块110验证这多条认证信息311'-1至311'-n。如果这多条认证信息中的一定百分比通过了验证(例如多于50%),则主机设备100确定NVM设备220已被成功认证。
例如,当主机设备100获取并验证七条认证信息,并且三条认证信息通过了验证,而其他四条未能通过验证时,也就是这多条认证信息中只有43%通过了验证时,主机设备100确定对NVM设备220的认证失败。在相反的情况下,当三条认证信息未通过验证,而其他四条通过了验证时,也就是这多条认证信息中只有57%通过了验证时,主机设备100确定对NVM设备220的认证成功。
根据本发明的另一实施例,作为另一种认证方法,逐位地检查接收到的多条认证信息的比特值,通过对于接收到的认证信息的每一位设定在该位中出现最多次的比特值来创建最终认证信息,并且验证最终认证信息以便确定 NVM设备220是否被成功认证。下文中将参考图8来更详细描述此方法。
图5是示出根据本发明的实施例的认证NVM设备的主机设备的框图。
参考图5,主机设备100包括用于与NVM设备220进行数据通信的接口120和用于认证NVM设备220的认证验证模块110。例如,接口120可包括串行高级技术附件(SerialAdvanced Technology Attachment,SATA)、USB和SD接口中的至少一种。
认证验证模块110包括支持多种协议的认证协议控制器111,用于生成在认证协议中使用的值——例如随机质询值(Random Challenge Value,RNG)——的加密模块113,以及用于基于从NVM设备220接收的多条认证信息来确定认证成功或失败的认证判决器112。
具体而言,认证判决器112验证所获取的多条认证信息中的每一条,并且如果这多条认证信息中的一定百分比——例如50%——通过了验证,或者通过了验证的认证信息的条数大于预定的阈值,则认证判决器112确定认证成功。作为替换或附加,认证判决器112可生成以多条认证信息的每一位中出现最多的比特值作为该位的比特值的最终认证信息,并且可通过验证最终认证信息来确定认证是否成功。认证判决器112可根据认证协议控制器111的认证协议来作出关于认证成功/失败的判决。
认证协议控制器111可支持多种认证协议,并且基于在从NVM设备220接收的头部中设定的版本号来发起特定的认证协议。
图6是示出根据本发明的实施例的NVM设备的框图。
参考图6,NVM设备220包括用于作为与主机设备100或外部控制器的数据通信的接口的接口330,用于利用秘密密钥311生成认证信息的认证信息生成器320,以及存储秘密密钥311和头部312的受保护区域310。
接口330可包括嵌入式MMC(embedded MMC,eMMC)和NAND接口中的至少一种。
头部312可如以下表1中所示那样配置。
[表1]
项目 | 描述 | M/O |
版本号 | 用于协议匹配的版本号 | O |
重复计数 | 要重复检查的重复秘密密钥的 | M |
数目或认证信息的条数 | ||
其他 | 保留 | O |
版本号是主机设备100用来选择NVM设备220的认证信息生成器320实现的认证协议和与认证协议有关的信息的信息。重复计数规定为了验证NVM设备220的认证信息的可靠性,认证信息的重复生成的最小次数。取决于NVM设备220的配置,利用单个秘密密钥311,可以重复“重复计数”那么多次地生成认证信息,或者如果在NVM设备220中存储了多个秘密密钥311-1至311-n,则可以利用多个秘密密钥311-1至311-n生成“重复计数”那么多条认证信息。也就是说,如图4A中所示,如果存储了一个秘密密钥311,则认证信息生成器320通过读取秘密密钥311多次来生成“重复计数”那么多条认证信息。然而,如图4B中所示,如果存储了多个秘密密钥311-1至311-n,则认证信息生成器320通过读取秘密密钥311-1至311-n中的每一个来生成“重复计数”那么多条认证信息。
例如,认证信息生成器320可包括伪随机数生成器、单向散列函数(例如SHA-1或MD5)或者轻型加密电路。
图7是示出根据本发明的实施例的认证NVM设备的主机设备方法的流程图。
参考图7,在步骤710中在主机设备100中生成对认证NVM设备220的请求后,在步骤720中主机设备100的认证验证模块110从NVM设备220接收头部。在步骤730中,认证验证模块110基于头部中设定的版本信息来确定认证协议和相关参数。认证验证模块110在步骤740中从NVM设备220接收承诺信息,根据使用的认证协议这是可任选的。
在步骤750中,认证验证模块110根据所确定的认证协议向NVM设备220发送查询信息,例如质询信息。
在步骤760中,认证验证模块110从NVM设备220获取如头部中设定的重复计数所指示的那么多条认证信息。
在步骤770中,认证验证模块110验证每条认证信息。如果这多条认证信息中的一定百分比——例如多于50%——通过了验证,或者成功验证的认证信息的条数超过了预定的阈值,则认证验证模块110确定NVM设备220 已被成功认证。
此外,认证验证模块110可通过逐位地检查这多条认证信息的比特值来作出关于认证成功或失败的判决,这将在下文中参考图8来描述。
图8示出了根据本发明的实施例的接收到的认证信息和从接收到的认证信息中提取的最终认证信息。具体而言,图8示出了认证判决器112从NVM设备220接收到的多条认证信息311'-1至311'-n,其中接收到的多条认证信息是基于存储在NVM设备220中的单个秘密密钥311或多个秘密密钥311-1至311-n生成的。
参考图8,认证判决器112利用从NVM设备220接收的多条认证信息311'-1至311'-n来认证NVM设备220。具体而言,认证判决器112选择在认证信息311'-1至311'-n的每一位中最多出现的比特值,并且通过将所选择的比特值设定为该位的比特值来生成最终认证信息810。例如,检查接收到的多条认证信息的第一位比特值。如果在第一位中1比0多,则1被设定为最终认证信息810中的第一位的比特值。然而,如果在第一位中0比1多,则0被设定为最终认证信息810中的第一位的比特值。
在图8中,多条认证信息在前三位的每一位中1比0多,从而在最终认证信息810中前三位的每一位的比特值被设定为1。
因此,认证判决器112通过将每一位中出现最多的比特值设定为该位的比特值来生成最终认证信息,并且通过验证最终认证信息来确定认证是否成功。
图9是示出根据本发明的实施例的NVM认证方法的流程图。
参考图9,在步骤910中NVM设备220向主机设备100发送头部。
在步骤920中,NVM设备220根据认证协议生成承诺信息并将承诺信息发送到主机设备。取决于使用的认证协议,步骤920是可任选的。
NVM设备220在步骤930中从主机设备100接收质询信息并且在步骤940中基于质询信息和秘密密钥生成多条认证信息。
在步骤950中,NVM设备220将这多条认证信息发送到主机设备100。
在本发明的上述实施例中,多条认证信息是利用秘密密钥311或利用多个相同的秘密密钥311-1至311-n生成的。在下文将描述的本发明的实施例中,多条认证信息是利用存储在NVM设备220中的不同秘密密钥311-1至311-n之一生成的。
图10是根据本发明的实施例的包括NVM设备和认证NVM设备的主机设备的认证系统的信号流图。具体而言,图10中所示的认证系统与图4中所示的认证系统相似,只不过对受保护区域310中的每个秘密密钥指派了位置索引,并且在一个数据帧中发送多条认证信息。因此,这里将不提供冗余描述。
参考图10,为了认证NVM设备220,在步骤1010中,主机设备100和NVM设备220根据认证协议相互交换质询信息和承诺信息。同样,从NVM设备220到主机设备100的承诺信息的发送可以是可任选的。
质询信息可包括以下值。
质询信息=[位置索引,随机数]
主机设备100将包括位置索引和随机数(即,随机的质询值)的质询信息发送到NVM设备220。主机设备100从指派给存储在NVM设备220中的第一至第n秘密密钥的位置索引1至n之中选择位置索引i。这里,n是自然数,并且i是范围从1至n的自然数。也就是说,位置索引是标识多个秘密密钥311-1至311-n的序号。
NVM设备220将第1至第n个不同的秘密密钥311-1至311-n存储在受保护区域310中,并且第1至第n秘密密钥311-1至311-n分别对应于位置索引1至n。
认证信息生成器320利用具有位置索引i的秘密密钥,即主机设备100指示的第i秘密密钥311-i,来生成头部312中设定的重复计数那么多条认证信息,也就是第1至第j认证信息311'-1至311'-j。这里,j是范围为1至n的自然数,等于重复计数的值。在步骤1020中,认证信息生成器320在一个数据帧中将第1至第j认证信息311'-1至311'-j发送到主机设备。
图11示出了根据本发明的实施例的包括认证信息的数据帧。
参考图11,预定长度的数据帧1100包括第一至第j认证信息311'-1至311'-j。如果数据帧1100未被填满,则根据预定的填充方法将填充数据1110添加到数据帧1100的末尾,填充数据1110是预定模式的比特流。
图12是示出根据本发明的实施例的用于认证NVM设备的主机设备方法的流程图。
参考图12,在步骤1210中在主机设备100中生成对认证NVM设备220的请求。例如,认证请求可在主机设备100在没有用户干预的情况下自动感 测到NVM设备220时或者在用户向主机设备100输入访问NVM设备220的命令时生成。
在步骤1220中,主机设备100的认证验证模块110从NVM设备220接收头部312。例如,在头部312中重复计数可被设定为4。
在步骤1230中,主机设备100的认证协议控制器111基于头部312中包括的版本信息来确定认证协议和相关参数。
在步骤1240中,主机设备100从NVM设备220接收承诺信息。同样,步骤1240中的操作根据所使用的认证协议是可任选的。
在步骤1250中,主机设备100的认证协议控制器111根据所确定的认证协议向NVM设备220发送查询信息,例如质询信息。例如,质询信息可包括以下值。
质询信息=[位置索引,随机数]=[1,随机数]
在步骤1260中,主机设备100的认证验证模块110从NVM设备220获取如重复计数所指示的那么多条认证信息。
更具体而言,NVM设备220的认证信息生成器320利用具有由主机设备100指示的位置索引的秘密密钥311和质询信息的随机数来生成如头部312中设定的重复计数所指示的那么多条认证信息311'-1至311'-j。除了秘密密钥311和质询信息的随机数以外,认证信息生成器320可以还利用其生成的第二随机数来生成多条认证信息311'-1至311'-j。例如,认证信息生成器320可利用具有位置索引1的秘密密钥——即,第一秘密密钥311-1——和质询信息的随机数,基于头部312中设定的等于4的重复计数,来生成第一至第四条认证信息311'-1至311'-4。
认证信息生成器320生成包括多条认证信息311'-1至311'-j的数据帧并通过接口330将数据帧发送到主机设备100。
主机设备100的认证判决器112通过接口120从NVM设备220接收数据帧。
在步骤1270中,主机设备100的认证判决器112验证接收到的数据帧中包括的每条认证信息311'-1至311'-j。如果一定百分比或者多于预定条数的认证信息通过了验证,则认证判决器112确定NVM设备220已被成功认证。此外,认证判决器112可通过逐位地检查多条认证信息的比特值来作出关于认证成功或失败的判决,如上文参考图8所述。
例如,当认证判决器112验证第一至第四认证信息311'-1至311'-4中的每一条并且四条认证信息311'-1至311'-4中的三条通过了验证时,认证判决器112确定NVM设备220已被成功认证。
从本发明的上述实施例清楚可见,在不向NVM设备添加ECC组件的情况下,主机设备利用从NVM设备接收的多条认证信息来认证NVM设备。因此,可以认证没有独立的纠错功能(ECC组件)的NVM设备,从而降低了NVM设备的成本。
本发明的上述实施例可以用硬件、软件或者硬件和软件的组合来实现。软件可被记录到易失性或非易失性存储设备,例如只读存储器(Read Only Memory,ROM),存储到存储器,例如随机访问存储器(Random Access Memory,RAM)、存储器芯片、存储器设备或集成电路,或者存储到可以以光或磁的方式记录并被机器(例如计算机)读取的存储介质,例如致密盘(Compact Disc,CD)、数字多功能盘(Digital Versatile Disc,DVD)、磁盘或磁带。主机设备中包括的存储装置是适用于存储包括指令来实现本发明的实施例的一个或多个程序的机器可读存储介质的示例。因此,本发明包括一种包括用于实现如权利要求中记载的装置或方法的代码的程序和存储该程序的机器可读存储介质。该程序可通过任何介质以电子方式传输,例如通过有线或无线连接传送的通信信号,并且本发明包含其等同物。
此外,主机设备可以无线地或者通过线缆从连接到主机设备的程序提供设备接收并存储程序。程序提供设备可包括具有使得主机设备执行本内容保护方法的指令的程序、用于存储内容保护方法所需的信息的存储器、用于与主机设备进行有线或无线通信的通信单元、以及用于在主机设备请求时或者自动地将程序发送到主机设备的控制器。
虽然已参考本发明的某些实施例具体示出和描述了本发明,但本领域普通技术人员将会理解可对其进行形式和细节上的各种改变。
Claims (15)
1.一种由主机设备认证非易失性存储器(NVM)设备的方法,该方法包括:
由所述主机设备向所述NVM设备发送位置号;
由所述主机设备从所述NVM设备接收认证信息;以及
由所述主机设备使用验证数据验证所述认证信息,
其中,所述认证信息是使用与所述位置号相对应的秘密密钥生成的,
其中,所述主机设备向所述NVM设备发送随机数,并且所述认证信息是使用所述秘密密钥和所述随机数生成的,
其中,所述秘密密钥被存储在所述NVM设备的只读区域中,并且
其中,所述位置号是所述主机设备从与先前存储在所述NVM设备的只读区域中的多个秘密密钥相对应的多个位置号当中选择的。
2.如权利要求1所述的方法,其中所述认证信息包括多条认证信息。
3.如权利要求2所述的方法,其中,验证认证信息包括:
验证所述多条认证信息中的每一条认证信息;以及
如果成功验证的认证信息的条数超过预定阈值,则确定所述NVM设备的认证成功。
4.如权利要求2所述的方法,其中,验证认证信息包括:
检查每一位中所述多条认证信息的比特值;
将所述多条认证信息的每一位中出现最多的比特值设定为最终认证信息中相应位的比特值;以及
利用所述最终认证信息来认证所述NVM设备。
5.如权利要求2所述的方法,还包括由所述主机设备从所述NVM设备接收头部信息,
其中,所述多条认证信息的条数等于在所述头部信息中设定的重复计数。
6.一种主机设备,用于认证非易失性存储器(NVM)设备,该主机设备包括:
认证验证模块,被配置成向所述NVM设备发送位置号,从所述NVM设备接收认证信息,以及使用验证信息验证所述认证信息,
其中,所述认证信息是使用与所述位置号相对应的秘密密钥生成的,
其中,所述主机设备向所述NVM设备发送随机数,并且所述认证信息是使用所述秘密密钥和所述随机数生成的,
其中,所述秘密密钥被存储在所述NVM设备的只读区域中,并且
其中,所述位置号是所述主机设备从与先前存储在所述NVM设备的只读区域中的多个秘密密钥相对应的多个位置号当中选择的。
7.如权利要求6所述的主机设备,其中,所述认证信息包括多条认证信息。
8.如权利要求7所述的主机设备,其中,所述认证验证模块验证所述多条认证信息中的每一条,并且当成功验证的认证信息的条数超过预定阈值时确定所述NVM设备被成功认证。
9.如权利要求7所述的主机设备,其中,所述认证验证模块检查所述多条认证信息的比特值,将所述多条认证信息的每一位中出现最多的比特值设定为最终认证信息中相应位的比特值,并且利用所述最终认证信息来认证所述NVM设备。
10.如权利要求7所述的主机设备,其中,所述认证验证模块从所述NVM设备接收头部信息并且利用所述头部信息来确定认证协议。
11.如权利要求10所述的主机设备,其中,所述多条认证信息的条数等于在所述头部信息中设定的重复计数。
12.一种非易失性存储器(NVM)设备的认证的方法,该方法包括:
由所述NVM设备从主机设备接收位置号;
由所述NVM设备利用与所述位置号相对应的秘密密钥来生成认证信息;以及
由所述NVM设备将所述认证信息发送到所述主机设备,
其中,所述NVM设备从所述主机设备接收随机数,并且所述认证信息是使用所述秘密密钥和所述随机数生成的,
其中,所述秘密密钥被存储在所述NVM设备的只读区域中,并且
其中,所述位置号是所述主机设备从与先前存储在所述NVM设备的只读区域中的多个秘密密钥相对应的多个位置号当中选择的。
13.如权利要求12所述的方法,其中,所述认证信息包括多条认证信息,并且所述多条认证信息的条数等于在存储在所述NVM设备中的头部信息中设定的重复计数。
14.一种非易失性存储器(NVM)设备,包括:
受保护区域,其存储多个秘密密钥;以及
接口,用于所述NVM设备与主机设备之间的通信,
其中,所述NVM设备被配置为从所述主机设备接收位置号,使用存储在所述NVM设备中的所述多个秘密密钥当中与所述位置号相对应的秘密密钥生成认证信息,以及向所述主机设备发送所述认证信息,
其中,所述NVM设备从所述主机设备接收随机数,并且所述认证信息是使用所述秘密密钥和所述随机数生成的,
其中,所述秘密密钥被存储在所述NVM设备的只读区域中,并且
其中,所述位置号是所述主机设备从与先前存储在所述NVM设备的只读区域中的多个秘密密钥相对应的多个位置号当中选择的。
15.如权利要求14所述的NVM设备,其中,所述认证信息包括多条认证信息,并且所述多条认证信息的条数等于存储在所述NVM设备中的头部信息中设定的重复计数。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20110048634 | 2011-05-23 | ||
KR10-2011-0048634 | 2011-05-23 | ||
PCT/KR2012/004060 WO2012161505A1 (en) | 2011-05-23 | 2012-05-23 | Method and apparatus for authenticating a non-volatile memory device |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103597496A CN103597496A (zh) | 2014-02-19 |
CN103597496B true CN103597496B (zh) | 2016-11-02 |
Family
ID=47217460
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201280025360.6A Active CN103597496B (zh) | 2011-05-23 | 2012-05-23 | 用于认证非易失性存储器设备的方法和装置 |
Country Status (5)
Country | Link |
---|---|
US (1) | US9385871B2 (zh) |
EP (1) | EP2715598B1 (zh) |
KR (1) | KR101960036B1 (zh) |
CN (1) | CN103597496B (zh) |
WO (1) | WO2012161505A1 (zh) |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8661527B2 (en) | 2011-08-31 | 2014-02-25 | Kabushiki Kaisha Toshiba | Authenticator, authenticatee and authentication method |
US8769627B1 (en) * | 2011-12-08 | 2014-07-01 | Symantec Corporation | Systems and methods for validating ownership of deduplicated data |
US20140237244A1 (en) * | 2013-02-19 | 2014-08-21 | Kabushiki Kaisha Toshiba | Device and authentication method therefor |
CN104135458B (zh) * | 2013-05-03 | 2018-01-02 | 中国银联股份有限公司 | 移动设备与安全载体之间通信连接的建立 |
KR102304927B1 (ko) | 2014-06-13 | 2021-09-24 | 삼성전자 주식회사 | 메모리 장치, 메모리 시스템 및 메모리 시스템의 동작 방법 |
KR102154187B1 (ko) * | 2014-08-07 | 2020-09-09 | 삼성전자 주식회사 | 메모리 장치, 메모리 시스템 및 메모리 시스템의 동작 방법 |
KR102419505B1 (ko) * | 2016-03-09 | 2022-07-08 | 삼성전자주식회사 | 스토리지 디바이스의 인증 방법 및 시스템 |
CN105959097B (zh) * | 2016-06-28 | 2019-04-30 | 江苏大学 | 一种基于纠错码的身份认证协议方法 |
US12008095B2 (en) * | 2017-11-14 | 2024-06-11 | Stratis Iot, Inc. | Smart lock system |
JP2019095969A (ja) * | 2017-11-21 | 2019-06-20 | ルネサスエレクトロニクス株式会社 | 半導体装置、認証システム及び認証方法 |
DK3680797T3 (da) * | 2019-01-14 | 2022-01-24 | MUSE Electronics GmbH | Manipulations-beskyttet databehandlingsapparat |
US10992591B1 (en) * | 2019-03-12 | 2021-04-27 | Juniper Networks, Inc | Apparatus, system, and method for discovering path maximum transmission units |
KR20200130539A (ko) | 2019-05-08 | 2020-11-19 | 삼성전자주식회사 | 강력한 보안 기능을 제공하는 스토리지 장치 및 그 스토리지 장치를 포함하는 전자 장치 |
US11743058B2 (en) * | 2020-03-05 | 2023-08-29 | International Business Machines Corporation | NVDIMM security with physically unclonable functions |
US11520937B2 (en) * | 2020-08-12 | 2022-12-06 | Dell Products L.P. | NVMe over fabrics authentication system |
KR102427179B1 (ko) * | 2022-01-27 | 2022-07-29 | (주)레오컴 | 생체 데이터를 암호화하고 인증하는 장치 및 방법 |
CN114943072B (zh) * | 2022-07-25 | 2023-05-05 | 北京网藤科技有限公司 | 一种在多种软件系统间实现u盘联动管控的方法及系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6336585B1 (en) * | 1997-10-30 | 2002-01-08 | Oki Electric Industry Co., Ltd. | Memory card insertion type electronic equipment and apparatus for writing to the memory card |
WO2009059331A2 (en) * | 2007-11-02 | 2009-05-07 | Finisar Corporation | Anticounterfeiting means for optical communication components |
CN101874244A (zh) * | 2007-11-23 | 2010-10-27 | 法国电信公司 | 使用电子标签的验证系统和方法 |
Family Cites Families (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2733379B1 (fr) * | 1995-04-20 | 1997-06-20 | Gemplus Card Int | Procede de generation de signatures electroniques, notamment pour cartes a puces |
US6466668B1 (en) | 1998-01-28 | 2002-10-15 | Hitachi, Ltd. | IC card equipped with elliptical curve encryption processing facility |
TW518497B (en) * | 1999-03-30 | 2003-01-21 | Sony Corp | Information processing system |
WO2001029776A1 (en) * | 1999-10-18 | 2001-04-26 | Stamps.Com | Cryptographic module for secure processing of value-bearing items |
FR2802669B1 (fr) * | 1999-12-15 | 2002-02-08 | St Microelectronics Sa | Procede non deterministe de transfert securise de donnees |
JP2001339383A (ja) * | 2000-05-29 | 2001-12-07 | Hitachi Ltd | 認証通信用半導体装置 |
US7096397B2 (en) * | 2001-09-17 | 2006-08-22 | Intel Corporation | Dft technique for avoiding contention/conflict in logic built-in self-test |
KR100445406B1 (ko) * | 2001-11-30 | 2004-08-25 | 주식회사 하이닉스반도체 | 데이터 암호화 장치 및 그 방법 |
US20090193033A1 (en) * | 2005-05-19 | 2009-07-30 | Zulfikar Amin Ramzan | Method and apparatus for communication efficient private information retrieval and oblivious transfer |
US20070094161A1 (en) * | 2005-07-27 | 2007-04-26 | Stmicroelectronics S.R.L. | Hardware device for genetic algorithms |
KR20090026307A (ko) * | 2006-05-30 | 2009-03-12 | 엔엑스피 비 브이 | 암호 인증 방법 |
US20080082826A1 (en) * | 2006-09-29 | 2008-04-03 | Brent Ahlquist | Method and apparatus for updating non-volatile memories |
US8453206B2 (en) * | 2006-11-09 | 2013-05-28 | Panasonic Corporation | Detecting unauthorized tampering of a program |
GB2446175B (en) * | 2007-01-31 | 2011-06-29 | Hewlett Packard Development Co | Method of updating data |
US9767319B2 (en) * | 2007-04-17 | 2017-09-19 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Method and apparatus of secure authentication for system on chip (SoC) |
US8312269B2 (en) * | 2007-11-28 | 2012-11-13 | Hitachi Global Storage Technologies Netherlands, B.V. | Challenge and response access control providing data security in data storage devices |
US7983421B2 (en) * | 2008-02-01 | 2011-07-19 | Oracle International Corporation | Methods to defend against tampering of audit records |
KR100997879B1 (ko) | 2008-03-03 | 2010-12-07 | 삼성전자주식회사 | Crum 유닛, 교체가능유닛 및 이를 이용하는 화상형성장치와, 그 암호화 데이터 통신 방법 |
US8452934B2 (en) * | 2008-12-16 | 2013-05-28 | Sandisk Technologies Inc. | Controlled data access to non-volatile memory |
JP2010268417A (ja) * | 2009-04-16 | 2010-11-25 | Toshiba Corp | 記録装置及びコンテンツデータ再生システム |
US20110081016A1 (en) | 2009-10-06 | 2011-04-07 | Infineon Technologies Ag | Secure data communication using elliptic curve cryptology |
MX2018013270A (es) * | 2010-04-30 | 2022-07-21 | Spm Oil & Gas Inc | Máquinas, sistemas, métodos implementados en computadoras, y productos de programas en computadoras para probar y certificar equipo de petróleo y gas. |
-
2012
- 2012-05-23 EP EP12789924.3A patent/EP2715598B1/en not_active Not-in-force
- 2012-05-23 US US13/478,763 patent/US9385871B2/en active Active
- 2012-05-23 WO PCT/KR2012/004060 patent/WO2012161505A1/en active Application Filing
- 2012-05-23 CN CN201280025360.6A patent/CN103597496B/zh active Active
- 2012-05-23 KR KR1020120054604A patent/KR101960036B1/ko active IP Right Grant
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6336585B1 (en) * | 1997-10-30 | 2002-01-08 | Oki Electric Industry Co., Ltd. | Memory card insertion type electronic equipment and apparatus for writing to the memory card |
WO2009059331A2 (en) * | 2007-11-02 | 2009-05-07 | Finisar Corporation | Anticounterfeiting means for optical communication components |
CN101874244A (zh) * | 2007-11-23 | 2010-10-27 | 法国电信公司 | 使用电子标签的验证系统和方法 |
Also Published As
Publication number | Publication date |
---|---|
EP2715598B1 (en) | 2016-10-05 |
EP2715598A1 (en) | 2014-04-09 |
CN103597496A (zh) | 2014-02-19 |
KR20120130734A (ko) | 2012-12-03 |
EP2715598A4 (en) | 2015-05-06 |
KR101960036B1 (ko) | 2019-07-26 |
WO2012161505A1 (en) | 2012-11-29 |
US20120304281A1 (en) | 2012-11-29 |
US9385871B2 (en) | 2016-07-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103597496B (zh) | 用于认证非易失性存储器设备的方法和装置 | |
KR101506123B1 (ko) | 장치 및 그 인증 방법 | |
KR101507291B1 (ko) | 인증 장치 | |
US8549659B2 (en) | Non-volatile memory for anti-cloning and authentication method for the same | |
TWI491239B (zh) | 認證元件、被認證元件、及認證方法 | |
KR101517337B1 (ko) | 반도체 메모리 장치 | |
KR101517336B1 (ko) | 반도체 저장 장치 | |
WO2012002009A1 (en) | Recording apparatus, writing apparatus, reading apparatus, and method of controlling recording apparatus | |
TW201207862A (en) | Memory identification code generating method, management method, controller and storage system | |
KR20140146199A (ko) | 메모리 디바이스 및 메모리 시스템 | |
KR101553790B1 (ko) | 메모리 | |
JP4991971B1 (ja) | 被認証装置及びその認証方法 | |
CN103098064A (zh) | 用于验证非易失性存储设备的方法及装置 | |
JP5443575B2 (ja) | メモリカード、ホスト装置、及びシステム | |
JP5433757B2 (ja) | メモリ装置、ホスト装置、及びシステム |
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 | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |