保护安全数据的存储器装置及认证存储器装置的方法

文档序号:6383418阅读:254来源:国知局
专利名称:保护安全数据的存储器装置及认证存储器装置的方法
保护安全数据的存储器装置及认证存储器装置的方法
本申请要求在2011年12月16日提交到韩国知识产权局的第10-2011-0136797号韩国专利申请的优先权,该申请的公开的全部内容包含于此以资参考。该申请也要求在2012年I月11日提交的美国临时申请61/585,333的优先权,该申请的公开以其全部内容包含于此以资参考。技术领域
示例性实施例涉及一种保护安全数据的存储器装置和/或使用安全数据保护数据的方法,更具体地讲,涉及一种存储安全数据并保护存储的安全数据的存储器装置和/或使用存储在存储器装置中的安全数据认证存储器装置的方法。
背景技术
近来,已经出现了各种类型的存储器储存装置。一些示例包括将闪存用作存储介质的存储卡、可连接到USB端口的通用串行总线(USB)存储器和固态驱动器(SSD)。如这些存储器储存装置所表明的,存储器储存装置在存储容量上可变得更大而在体积上可变得更小,它们的接口可插入到主机装置或者从主机装置移除。因此,存储器储存装置的可移动性增加。例如,作为被评价为便宜的存储器储存装置之一的新型硬盘,外部硬盘已被引入。与固定到个人计算机中的传统硬盘不同,外部硬盘提供可移动性。
这种趋势不限于存储器储存装置。可使用存储在存储器储存装置中的内容的主机装置也变得更小并且便于携带。因此,已经产生了可随时随地欣赏存储在存储器储存装置中的数字内容的环境。随着该环境的产生,正越来越多地以数字数据的形式分布内容。这增加了防止存储在存储器储存装置中的数字内容被非法复制的技术的重要性。
防止数字内容被非法复制的技术的一个示例是使用存储在存储器储存装置中的唯一密钥来对数字内容加密的技术。然而,如果泄露了存储在存储器储存装置中的唯一密钥,则在数字内容不被控制的环境中可对数字内容解密。结果,可进行数字内容的非法复制。在这点上,期望一种可防止存储在储存装置中的唯一密钥被泄露的技术。发明内容
一些示例性实施例涉及存储器装置。
在一个实施例中,所述存储器装置包括第一存储器区域和第二存储器区域。第一存储器区域存储安全数据。外部装置不可访问所述第一存储器区域。第二存储器区域被配置为存储加密的安全数据。外部装置可访问第二存储器区域,并且所述加密的安全数据是第一存储器区域中的安全数据的加密版本。
所述外部装置可以是主机装置、存储器控制器等。
在一个实施例中,所述存储器装置还包括被配置为用于将存储器装置和外部装置接口连接的输入/输出逻辑。
在一个实施例中,安全逻辑被配置为从第一存储器区域访问安全数据,从访问的安全数据产生加密的安全数据,并将加密的安全数据存储在第二存储器区域中。
在一个实施例中,所述第二区域被配置为存储从存储器装置的生产商接收的加密的安全数据。
在一个实施例中,第二区域被配置为在生产存储器装置期间存储加密的安全数据。
在一个实施例中,安全数据包括用于认证存储器装置的主密钥,并且加密的安全数据包括加密的主密钥。在这个实施例中,第一区域可以被配置为存储至少一个备用密钥,所述备用密钥用于产生存储器装置的认证信息。在这个实施例中,所述第二区域可被配置为存储至少一个备用密钥索引,所述备用密钥索引被链接到备用密钥。所述备用密钥索引可对应于存储器装置的供应商。在这个实施例中,所述存储器装置还可包括第三存储器区域,所述第三存储器区域被配置为存储至少一个加密的解密密钥。外部装置可访问所述第三存储器区域。所述加密的解密密钥是解密密钥的加密版本,并且所述解密密钥用于对加密的主密钥解密。在这个实施例中,所述第三存储器区域可被配置为存储多个加密的解密密钥。所述多个加密的解密密钥中的至少一个可对应于外部装置的供应商。
在一个实施例中,安全数据包括用于认证存储器装置的主密钥,加密的安全数据包括加密的主密钥。在这个实施例中,第一存储器区域可被配置为存储多个备用密钥。所述多个备用密钥用于产生存储器装置的认证信息。所述第二存储器区域被配置为存储多个备用密钥索引。所述多个备用密钥索引被链接到所述多个备用密钥。所述多个备用密钥索弓I可对应于存储器装置的供应商。
在一个实施例中,第三存储器区域被配置为存储至少一个加密的解密密钥。外部装置可访问所述第三存储器区域。所述加密的解密密钥是解密密钥的加密版本,并且解密密钥用于对加密的主密钥解密。第三存储器区域可被配置为存储多个加密的解密密钥。所述多个加密的解密密钥中的至少一个可对应于外部装置的供应商。
在存储器装置的另一实施例中,所述存储器装置包括第一存储器区域,所述第一存储器区域存储主密钥和至少一个备用密钥。外部装置不可访问所述第一存储器区域。所述存储器装置还可包括第二存储器区域,所述第二存储器区域被配置为存储加密的主密钥和至少一个备用密钥索引。外部装置可访问所述第二存储器区域。所述加密的安全数据是第一存储器区域中的安全数据的加密版本。所述备用密钥索引被链接到备用密钥,并且备用密钥索引与存储器装置的供应商有关。
在一个实施例中,所述备用密钥索引通过备用密钥号被链接到备用密钥。
在一个实施例中,第一存储器区域存储多个备用密钥,第二存储器区域被配置为存储多个备用密钥索引。所述多个备用密钥索引被链接到所述多个备用密钥。
在一个实施例中,所述多个备用密钥索引通过备用密钥号被链接到所述多个备用密钥。
在一个实施例中,所述存储器装置还包括存储多个加密的解密密钥的第三存储器区域。外部装置可访问所述第三存储器区域。所述加密的解密密钥是所述多个解密密钥的各自的加密版本。所述多个解密密钥用于对加密的主密钥解密,并且所述多个解密密钥与外部装置的供应商有关。
存储器装置的另一实施例包括:第一存储器区域,存储安全数据;第二存储器区域,被配置为存储加密的安全数据。所述加密的安全数据是第一存储器区域中的安全数据的加密版本。所述存储器装置被配置从而不能发生安全数据的输出,而能发生加密的安全数据的输出。
在存储器装置的另一实施例中,所述存储器装置包括存储主密钥和备用密钥的第一存储器区域。外部装置不可访问所述第一存储器区域。所述存储器装置还包括第一加密器和第二加密器,所述第一加密器被配置为基于备用密钥和从外部装置接收的输入来产生会话密钥,所述第二加密器被配置为基于会话密钥和主密钥产生认证信息。所述第二加密器被配置为向外部装置输出认证信息。
在一个实施例中,存储器装置还包括第三加密器,所述第三加密器被配置为基于从外部装置接收的备用密钥变量号对备用密钥加密以产生备用密钥变量。这里,第一加密器被配置为基于从外部装置接收的随机数对备用密钥变量加密以产生会话密钥。
在一个实施例中,第二加密器被配置为使用会话密钥对主密钥加密以产生认证信肩、O
在一个实施例中,存储器装置还包括选择器,所述选择器被配置为基于从外部装置接收的目标备用密钥号获得备用密钥。
在另一实施例中,存储器装置还包括选择器和第三加密器,所述选择器被配置为从外部装置接收目标备用密钥号并基于目标备用密钥号选择存储在第一存储器区域中的多个备用密钥之一,所述第三加密器被配置为基于从外部装置接收的备用密钥变量号对选择的备用密钥加密以产生备用密钥变量。这里,第一加密器被配置为基于从外部装置接收的随机数对备用密钥变量加密以产生会话密钥。
在一个实施例中,第二加密器被配置为使用会话密钥对主密钥加密以产生认证信肩、O
一些实施例涉及一种操作存储器装置的方法。
所述方法的一个实施例包括将安全数据存储在存储器装置的第一存储器区域中。外部装置不可访问所述第一存储器区域。所述方法还包括将加密的安全数据存储在存储器装置的第二存储器区域中。外部装置可访问所述第二存储器区域。所述加密的安全数据是第一存储器区域中的安全数据的加密版本。
在一个实施例中,所述方法还包括使用驻留在存储器装置中的逻辑从第一存储器区域访问安全数据,以及使用所述逻辑从访问的安全数据产生加密的安全数据。
在一个实施例中,所述安全数据包括用于认证存储器装置的主密钥,并且所述加密的安全数据包括加密的主密钥。在这个实施例中,所述方法还可包括将至少一个备用密钥存储在第一存储器区域中以及将至少一个备用密钥索引存储在第二存储器区域中,所述备用密钥用于产生存储器装置的认证信息。所述备用密钥索引被链接到所述备用密钥。
在一个实施例中,所述备用密钥索引可对应于存储器装置的供应商。
在一个实施例中,所述备用密钥索引可通过备用密钥号被链接到备用密钥。
在一个实施例中,所述方法还包括将至少一个加密的解密密钥存储在存储器装置的第三存储器区域中。外部装置可访问所述第三存储器区域。加密的解密密钥是解密密钥的加密版本,解密密钥用于对加密的主密钥解密。加密的解密密钥可对应于外部装置的供应商。
在操作存储器装置的方法的另一实施例中,所述方法可包括:将安全数据存储在存储器装置的第一存储器区域中,将加密的安全数据存储在存储器装置的第二存储器区域中。所述加密的安全数据是第一存储器区域中的安全数据的加密版本。所述方法还包括禁止输出安全数据并允许输出加密的安全数据。
一些示例实施例涉及一种存储器装置产生认证信息的方法。
在一个示例性实施例中,所述方法包括:通过存储器装置基于备用密钥和从外部装置接收的输入产生会话密钥;通过存储器装置基于会话密钥和主密钥产生认证信息。所述主密钥和备用密钥存储在存储器装置的外部装置不可访问的区域中。所述方法还包括向外部装置输出认证信息。
在一个实施例中,产生会话密钥的步骤包括:从外部装置接收目标备用密钥号、备用密钥变量号和随机数作为来自外部装置的输入;基于接收的目标备用密钥号获得备用密钥;基于接收的备用密钥变量号对备用密钥加密以产生备用密钥变量;基于接收的随机数对备用密钥变量加密以产生会话密钥。
在一个实施例中,产生认证信息的步骤包括:使用会话密钥对主密钥加密以产生认证信息。
在一个实施例中,产生会话密钥的步骤包括:从外部装置接收目标备用密钥号、备用密钥变量号和随机数作为来自外部装置的输入;基于接收的目标备用密钥号选择存储在存储器装置的所述区域中的多个备用密钥之一;基于接收的备用密钥变量号对选择的备用密钥加密以产生备用密钥变量;基于接收的随机数对备用密钥变量加密以产生会话密钥。
在一个实施例中,产生认证信息的步骤包括使用会话密钥对主密钥加密以产生认证信息。
在一个实施例中,外部装置是主机装置。
在另一实施例中,外部装置是存储器控制器。
在存储装置产生认证信息的方法的另一实施例中,所述方法包括:从外部装置接收目标备用密钥号、备用密钥变量号和随机数;基于接收的备用密钥变量号对备用密钥加密以产生备用密钥变量;基于接收的随机数对备用密钥变量加密以产生会话密钥;使用会话密钥对存储在存储器装置中的主密钥加密以产生认证信息;输出认证信息。
一些示例性实施例涉及外部装置获得存储器装置的主密钥的方法。
在一个实施例中,所述方法包括在外部装置从存储器装置获得加密的主密钥和加密的第一解密密钥。所述加密的第一解密密钥是第一解密密钥的加密版本。所述加密的主密钥是主密钥的加密版本。所述外部装置不能从存储器装置读取主密钥。所述方法还包括:在外部装置使用第二解密密钥对加密的第一解密密钥解密以获得第一解密密钥;在外部装置使用第一解密密钥对存储器装置的加密的主密钥解密以获得主密钥。
在一个实施例中,所述获得步骤从存储器装置获得多个加密的第一解密密钥;并且所述方法还包括:基于外部装置的解密密钥索引选择所述多个加密的第一解密密钥之一。这里,对加密的第一解密密钥解密的步骤使用第二解密密钥对选择的加密的第一解密密钥解密。
在一个实施例中,所述方法还包括在外部装置存储解密密钥索引和第二解密密钥。例如,所述存储步骤可存储由认证机构提供的解密密钥索引和第二解密密钥。
在一个实施例中,所述解密密钥索引和第二解密密钥对外部装置的供应商是唯一的。
在一个实施例中,所述多个加密的解密密钥分别与外部装置的供应商有关。
作为示例,外部装置可以是主机装置、存储器控制器等。
一些示例性实施例涉及外部装置。
在一个实施例中,外部装置包括第一解密器,所述第一解密器被配置为从存储器装置接收加密的第一解密密钥。所述加密的第一解密密钥是第一解密密钥的加密版本。所述解密器被配置为使用第二解密密钥对加密的第一解密密钥解密以获得第一解密密钥。所述外部装置还包括第二解密器,所述第二解密器被配置为使用第一解密密钥对从存储器装置接收的加密的主密钥解密以获得主密钥。
在一个实施例中,外部装置包括选择器,所述选择器被配置为从存储器装置获得多个加密的第一解密密钥。所述选择器被配置为基于外部装置的解密密钥索引选择所述多个加密的第一解密密钥之一,所述解密器被配置为使用第二解密密钥对选择的加密的第一解密密钥解密。
在一个实施例中,至少一个储存单元被配置为存储解密密钥索引和第二解密密钥。例如,储存单元被配置为存储由认证机构提供的解密密钥索引和第二解密密钥。
在一个实施例中,解密密钥索引和第二解密密钥对外部装置的供应商是唯一的。
在一个实施例中, 所述多个加密的解密密钥分别与外部装置的供应商有关。
外部装置可以是主机装置、存储器控制器等。
一些示例性实施例涉及一种外部装置产生认证信息以认证存储器装置的方法。
在一个实施例中,所述方法包括在外部装置基于备用密钥信息产生会话密钥。所述备用密钥信息包括关于存储器装置使用以产生第一认证信息的备用密钥的信息。所述方法还包括在外部装置基于会话密钥和推导的主密钥产生第二认证信息。所述推导的主密钥是存储器装置的主密钥,所述外部装置不能从存储器装置读取主密钥。
在一个实施例中,产生会话密钥的步骤包括:基于目标备用密钥号从外部装置获得备用密钥索引,备用密钥信息包括目标备用密钥号;基于获得的备用密钥索引从一组备用密钥变量选择一个备用密钥变量;基于随机数对该备用密钥变量加密以产生会话密钥。
在一个实施例中,所述方法还包括向存储器装置发送目标备用密钥号和随机数。
在一个实施例中,产生第二认证信息的步骤包括使用会话密钥对推导的存储器装置的主密钥加密。
在一个实施例中,所述方法还包括基于第一认证信息和第二认证信息认证存储器>J-U ρ α装直。
在一个实施例中,所述方法还包括:如果存储器装置被认证,则基于推导的主密钥和应用特定的秘密值对内容加密,并将加密的内容存储在存储器装置中。
在一个实施例中,所述方法还包括在外部装置从存储器装置获得加密的主密钥和加密的第一解密密钥。所述加密的第一解密密钥是第一解密密钥的加密版本,所述加密的主密钥是主密钥的加密版本。所述方法还包括在外部装置使用第二解密密钥对加密的第一解密密钥解密以获得第一解密密钥,以及在外部装置使用第一解密密钥对存储器装置的加密的主密钥解密以获得推导的主密钥。
在一个实施例中,所述获得步骤从存储器装置获得多个加密的第一解密密钥。这里,所述方法还可包括基于外部装置的解密密钥索引选择所述多个加密的第一解密密钥之一。对加密的第一解密密钥解密的步骤使用第二解密密钥对选择的加密的第一解密密钥解LU O
在一个实施例中,所述方法还包括在外部装置存储解密密钥索引和第二解密密钥。例如,所述存储的步骤存储认证机构提供的解密密钥索引和第二解密密钥。
在一个实施例中,解密密钥索引和第二解密密钥对外部装置的供应商是唯一的。
在一个实施例中,所述多个加密的解密密钥分别与外部装置的供应商有关。
在所述方法中,外部装置可以是主机装置、存储器控制器等。
在外部装置的另一实施例中,所述外部装置包括会话密钥产生器,所述会话密钥产生器被配置为基于备用密钥信息产生会话密钥。所述备用密钥信息包括关于由存储器装置使用以产生第一认证信息的备用密钥的信息。所述外部装置还包括认证信息产生器,所述认证信息产生器被配置为基于会话密钥和推导的主密钥产生第二认证信息。所述推导的主密钥是存储器装置的主密钥,所述外部装置不能从存储器装置读取主密钥。
在一个实施例中,外部装置还包括:选择器,被配置为基于从存储器装置获得的备用密钥索引从一组备用密钥变量中选择一个备用密钥变量;随机数产生器,被配置为产生随机数,第一加密器,被配置为基于随机数对备用密钥变量加密以产生会话密钥。
在另一实施例中,所述外部装置还包括解析器,所述解析器被配置为基于备用密钥号从存储器装置获得备用密钥索引。所述解析器可被配置为使用备用密钥号从存储在存储器装置的多个备用密钥索引解析备用密钥索引。
在一个实施例中,认证信息产生器包括第二加密器,所述第二加密器被配置为使用会话密钥对推导的存储器装置的主密钥加密。
在一个实施例中,外部装置还包括认证器,所述认证器被配置为基于第一认证信息和第二认证信息认证存储器装置。
在另一实施例中,外部装置还包括第三加密器,所述第三加密器被配置为如果存储器装置被认证则基于推导的主密钥和应用特定的秘密值对内容加密;所述外部装置被配置为将加密的内容存储在存储器装置中。
在另一实施例中,外部装置包括第一解密器,所述第一解密器被配置为从存储器装置接收加密的第一解密密钥。加密的第一解密密钥是第一解密密钥的加密版本。所述解密器被配置为使用第二解密密钥对加密的第一解密密钥解密以获得第一解密密钥。第二解密器被配置为使用第一解密密钥对从存储器装置接收的加密的主密钥解密以获得推导的主密钥。
在一个实施例中,外部装置包括选择器,所述选择器被配置为从存储器装置获得多个加密的第一解密密钥。所述选择器被配置为基于外部装置的解密密钥索引选择所述多个加密的第一解密密钥之一。这里,解密器被配置为使用第二解密密钥对选择的加密的第一解密密钥解密。
在一个实施例中,外部装置包括至少一个储存单元,所述至少一个储存单元被配置为存储解密密钥索引和第二解密密钥。例如,储存单元可被配置为存储认证机构提供的解密密钥索引和第二解密密钥。
在一个实施例中,解密密钥索引和第二解密密钥对外部装置的供应商是唯一的。
在一个实施例中,所述多个加密的解密密钥分别与外部装置的供应商有关。
所述外部装置可以是主机装置、存储器控制器等。
一些实施例涉及一种系统。
在一个实施例中,所述系统包括存储器装置和外部装置。所述存储器装置被配置为在第一存储器区域中存储主密钥和至少一个备用密钥。所述存储器装置被配置为在第二存储器区域中存储加密的主密钥和至少一个备用密钥索引,并且所述存储器装置被配置为存储至少一个加密的解密密钥。所述存储器装置被配置为基于主密钥和备用密钥产生第一认证信息。所述存储器装置被配置为允许外部装置访问第二存储器区域但是不允许外部装置访问第一存储器区域。所述外部装置被配置为访问加密的主密钥、备用密钥索引和加密的解密密钥。所述外部装置被配置为基于加密的主密钥和加密的解密密钥产生推导的主密钥。所述外部装置被配置为基于备用密钥索引和推导的主密钥产生第二认证信息。所述外部装置被配置为确定是否基于第一认证信息和第二认证信息验证存储器装置。


从下面参照附图对本发明示例性实施例的详细描述,本发明的上述和其他方面和特征将会更明显,其中:
图1和图2是示出包括根据第一实施例的保护安全数据的存储器元件的存储器系统的示图3是示出根据第一实施例的保护安全数据的存储器元件的操作的流程图4是示出包括根据第二实施例的保护安全数据的存储器元件的电子装置的示图5是示出根据第二实施例的保护安全数据的存储器元件的操作的流程图6是示出包括根据第三实施例的保护存储器唯一密钥(MUK)的存储器元件的电子装置的示图7是示出根据第三实施例的主机装置获得MUK的处理的示图8是示出根据第四实施例的使用MUK产生认证信息的存储器元件的示图9是示出根据第五实施例的主机装置的示图,所述主机装置认证存储器装置,当存储器装置被成功认证时加密数据,并将加密的数据存储在存储器装置中;
图10是示出根据第六实施例的保护MUK的存储器装置的示图11是示出根据第七实施例的保护MUK的存储器装置的示图12是示出根据第八实施例的主机装置获得MUK的方法的示图13是示出根据第九实施例的主机装置认证存储器装置的方法以及当存储器被成功认证时主机装置产生用于数据加密的密钥的方法的示图14是示出根据第十实施例的主机装置认证存储器装置并且存储加密的内容的方法的示图15是根据多种实施例的存储器装置的框图16是示意性示出根据发明构思的实施例的存储卡的框图17是示意性示出根据发明构思的实施例的moviNAND的框图18是根据多种实施例的存储器装置的另一框图19是示意性示出根据发明构思的实施例的固态驱动器的框图20是示意性示出根据发明构思的实施例的包括图19中的SSD的计算系统的框图21是示意性示出根据发明构思的实施例的包括图19中的SSD的电子装置的框图22是示意性示出根据发明构思的实施例的包括图19中的SSD的服务器系统的框图23是示意性示出根据发明构思的实施例的移动装置的框图24是示意性示出根据发明构思的实施例的手持电子装置的框图。
具体实施方式
通过参考下面详细的说明和附图,可更容易地理解示例性实施例的优点和特征以及实现所述优点和特征的方法。然而,可以以多种不同形式来实现本发明并且本发明不应该被解释为限于这里阐述的实施例。相反,提供这些实施例从而使本公开彻底而完整并且将本发明的构思完全传达给本领域的技术人员,本发明只由权利要求所限定。在附图中,为了清楚起见可放大元件的尺寸以及相对尺寸。贯穿说明书,相同的标号表示相同的部件。如这里所使用的,术语“和/或”包括一个或多个相关的列出的项的任何一个以及所有组合。
这里使用的术语只是为了描述特定实施例的目的,而不意欲限制本发明。如这里所使用,除非上下文清楚地做出相反的表示,否则单数形式也意欲包括复数形式。还将理解当术语“包括”和/或“包含”用在本说明书中时表示存在提到的元件,但是并不排除存在或添加了一个或多个其他元件。
将理解,尽管术语第一、第二、第三等在这里可被用于描述多个元件,但是这些元件不应该受这些术语的限制。这些术语只被用于区分一个元件和另一个元件。因此,在不脱离本发明的教导的情况下,以下讨论的第一元件可以被称作第二元件。
这里参照本发明的理想的实施例的示意性的示图来描述本发明实施例。这样,作为例如制造技术的结果,可以预期示图的形状的改变。因此,本发明的实施例不应该被解释为限于这里示出的特定形状的区域,而是将包括例如制造引起的形状上的偏差。因此,在附图中示出的区域本质上是示意性的,它们的形状并不意欲表示装置区域的实际形状,并且不意欲限制本发明的范围。
除非有相反的定义,这里使用的所有术语(包括科技术语)具有与发明所属领域的普通技术人员通常理解的相同的含义。还将理解比如在通用字典里定义的那些术语应该被解释为其含义与相关领域的上下文中的含义相同,并且不应该以理想的或过于形式化的意义被解释,除非这里明显地这样定义。
下面,将参照图1至图3描述根据本发明第一实施例的保护安全数据的存储器装置 100。
存储器装置100可以是非易失性存储器并且可以是使用NAND-FLASH存储器、N0R-FLASH存储器和相变随机存取存储器(PRAM)、磁随机存取存储器(MRAM)或阻变随机存取存储器(RRAM)作为存储介质的芯片或封装。可包括存储器装置100的封装的示例包括封装体叠层(PoP)、球栅阵列(BGA)、芯片尺寸封装(CSP)、塑料行间芯片运载(PLCC)、塑料双列直插封装(PDIP)、窝夫尔组件芯片(Die in Waffle Pack)、圆片形式芯片(Die in WaferForm)、板上芯片(COB)、双列直插式陶瓷封装(CERDIP)、塑料公制四方扁平封装(MQFP)J^型四方扁平封装(TQFP)、小外型集成电路(SOIC)、缩小外型封装(SSOP)、薄型小尺寸封装(TSOP)、薄型四方扁平封装(TQFP)、系统级封装(SIP)、多芯片封装(MCP)、圆片级制作封装(WFP)和圆片级堆栈封装(WSP)。
参照图1,根据当前实施例的存储器装置100包括安全逻辑140、第一存储器区域110和输入/输出(I/O)逻辑150。存储器装置100除了包括第一存储器区域110之外,还包括一个或多个存储器区域。在图1中,除了示出第一存储器区域110之外,还示出了第二存储器区域120。在图2中,除了示出第一存储器区域110之外,还示出了第二存储器区域120和第三存储器区域130。图1和图2的存储器装置100还可包括存储用户数据的用户区域,所述用户区域在图1和图2中没有示出。图1和图2中所示的存储器装置100的存储器区域可使用相同类型的存储器单元。相反,第一存储器区域110与用户区域可以具有不同类型。也就是说,第一存储器区域110可以是仅可对数据进行一次编程的一次编程存储器,用户区域可以是可对数据进行多次编程的多次编程存储器。
在其他存储器区域被访问的同时,不能访问第一存储器区域110。连接到存储器装置100的外部装置不能读取存储在第一存储器区域110中的数据。所述外部装置可以是被连接到存储器装置100并控制存储器装置100的操作的控制器200或者(在图3中的)主机300。外部装置不是在制作比如测试设备期间使用的装置。相反,外部装置是在售出存储器装置100之后与存储器100 —起工作的装置。
由于连接到存储器装置100的外部装置不能读取存储在第一存储器区域110中的数据,因此在图1至图4中将第一存储器区域110示出为控制器200或主机装置300 “不可访问”。当第一存储器区域110被描述或示出为“不可访问”时,可以理解外部装置不能读取存储在第一存储器区域110中的数据。在图10中,类型I区域410也被示出为主机装置300或控制器200 “不可访问”。这里,类型I区域410的“不可访问”与第一存储器区域110的“不可访问”具有相同含义。
第一存储器区域110的数据仅`可被安全逻辑140只读访问。另外,存储器装置100可包括被设计为仅通过安全逻辑140输出存储在第一存储器区域110中的数据的电路。
由于存储在第一存储器区域110中的数据只可被安全逻辑140访问,因此安全逻辑140可提供用于对可能在安全逻辑140从存储在第一存储器区域110中的数据读取出不同值时出现的差错进行纠正的纠错功能。在这些和其他实施例中,安全逻辑可以是硬件电路或者是编程的处理器的专用机器。根据一些实施例,连接到第一存储器区域110的纠错电路(未示出)可以执行纠错功能,并且存储在第一存储器区域110中的数据可在由纠错电路执行纠错后被发送到安全逻辑140。所述纠错电路可以是触发器电路。可通过应用传统的纠错技术来完全实现纠错功能,因此将省略其详细描述。
安全数据111被存储在第一存储器区域110中。I/O逻辑150将数据输入/输出与主机装置300或控制器200进行接口连接。
I/O逻辑150可解释从主机装置300或控制器200接收的命令和地址信息,并将从存储器阵列160输出的数据发送到主机装置300或控制器200。主机装置可以是具有处理器的任何装置,比如计算机、平板电脑、手机、媒体播放器等。
在图1和图2中,存储器装置100被连接到控制器200。然而,在一些实施例中,如图4所示,存储器装置100可不经过控制器200而直接连接到主机装置300。在这种情况下,主机装置300执行控制器200的操作。
根据当前实施例的存储器装置100将通过对存储在第一存储器区域110的安全数据111加密获得的加密的安全数据121存储在第二存储器区域120,而只允许存储在第二存储器区域120中的加密的安全数据被输出到主机装置300。第二存储器区域120可以由控制器200或主机装置300访问。在一个实施例中,外部装置(例如主机装置300和/或控制器200)只读第二存储器区域120。如之前所提到的,控制器200 “不可访问”第一存储器区域110,并且安全逻辑140可只读访问第一存储器区域110。
根据下面的当前实施例,控制器200从存储器装置100接收加密的安全数据121。
首先,存储器装置从存储器控制器200接收与安全数据111有关的请求。当加密的安全数据121没有被存储在第二存储器区域120中时,安全逻辑140读取安全数据111,对读取的安全数据111进行纠错,并对安全数据111进行加密。用于对安全数据111进行加密的加密算法和加密密钥不限于特定的加密算法和特定的加密密钥。然而,可优选地使用对加密和解密都使用相同密钥的对称密钥加密算法,比如高级加密标准(AES)加密算法。接下来,安全逻辑140将加密的安全数据121存储在第二存储器区域120中。
安全逻辑140可包括一个或多个加密引擎。至少一个加密引擎可执行对称密钥加密算法。安全逻辑140可使用加密引擎之一对安全数据111进行加密。
当控制器200向I/O逻辑150输入与安全数据111有关的请求时,I/O逻辑150读取存储在第二存储器区域120中的加密的安全数据121,并将其输出。所述请求可以是用于输出安全数据111的请求或者是使用安全数据111来开始对存储器部件100进行认证的过程的请求。该请求可以由控制器200做出,或者可以在主机装置300的请求下由控制器200做出。
参照图2,根据当前实施例的安全数据111可以是分配给存储器装置100的存储器唯一密钥(MUK) 112。也就是说,存储器装置100可将其MUK112存储在第一存储器区域110中,并保护MUKl 12以防止MUKl 12在未加密的状态被泄露。将参照图2对此进行更详细的描述。
MUKl 12可以是在生产存储器装置100时由存储器装置100的供应商存储在存储器装置100中的数据。也就是说,MUK112可在存储器装置100被投放到市场时已经被存储在存储器装置100中。
参照图2,根据下面所述的当前实施例,控制器200从存储器装置100接收加密的存储器唯一密钥(EMUK) 122作为加密的安全数据121。
当EMUK122没有被存储在第二存储器区域120中时,安全逻辑140将通过对MUKl 12进行读取、纠错和加密而获得的EMUK122存储在第二存储器区域120中。
然后,当控制器200将与MUKl 12有关的请求输入到I/O逻辑150时,I/O逻辑150读取存储在第二存储器区域120中的EMUK122并将其输出。为了防止在未经允许的情况下EMUK122被修改和删除,第二存储器区域120仅可被控制器200只读访问。
在图2中,安全逻辑140将EMUK122存储在第二存储器区域120中。然而,在生产存储器装置100的过程中存储器装置100的供应商还可将EMUK122与MUKl 12存储在一起。优选地,供应商在投放到市场之前对区域I中的MUK和区域2中的EMUK进行编程。如果在EMUK122被存储在存储器装置100的第二存储器区域120之后发行存储器装置100,则安全逻辑140不对MUKl 12进行加密并且不将EMUK122存储在第二存储器区域120中。
现在将参照图3描述根据当前实施例的存储器装置100的操作方法。在图3中示出了图1的存储器装置100的操作。为了简化起见,将在图3的描述中省略上面已经描述的相同部件和操作的重复描述。
参照图3,存储器装置100接收与安全数据111有关的请求(操作S100),并确定加密的安全数据121是否被存储在第二存储器区域120中(操作S102)。如果加密的安全数据121存储在第二存储器区域120中,则存储器装置100输出存储在第二存储器区域120中的加密的安全数据121 (操作S108)。另一方面,如果加密的安全数据121没有被存储在第二存储器区域120中,则安全逻辑140读取存储在第一存储器区域110中的安全数据111并对读取的安全数据111进行加密(操作S104)。然后安全逻辑140将加密的安全数据121存储在第二存储器区域120中(操作S106),并输出存储在第二存储器区域120中的加密的安全数据121(操作S108)。
如果存储器装置的供应商在生产存储器装置的过程中已经将安全数据和加密的安全数据分别存储在第一存储器区域Iio和第二存储器区域120中,则存储器装置在接收到与安全数据有关的请求时可输出第二存储器区域的加密的安全数据122。
根据当前实施例,即使控制器200输入了与存储在第一存储器区域110中的安全数据111有关的请求,存储器装置100也不会输出安全数据111,而会输出存储在第二存储器区域120中的加密的安全数据121,从而防止安全数据111被泄露。因此,在任何环境下,安全数据111因存储在第一存储器区域110中而不能被输出,而只在加密状态下从存储器装置100输出。
下面,将参照图4描述根据第二实施例的保护安全数据的存储器装置100a。所述存储器装置IOOa可以是非易失性存储器并且可以是芯片或者封装。
根据当前实施例的存储器装置IOOa不经过控制器200而直接连接到主机装置300。另外,存储器装置100的安全逻辑140对存储在第一存储器区域110中的安全数据111进行加密,并输出加密的安全数据121。根据当前实施例的存储器装置IOOa如下所述进行操作。
当主机装置300将与安全数据111有关的请求输入到I/O逻辑150时,I/O逻辑150可将该请求发送到安全逻辑140。这里,与安全数据111有关的请求可以是用于开始使用安全数据111的认证过程的请求或者是用于输出安全数据111的请求。I/o逻辑150可通过解释附加到该请求的读取数据地址或确定该请求是否匹配于与安全数据111有关的预定命令,来确定输入的请求是否与安全数据111有关。也就是说,根据当前实施例的I/o逻辑150可经过安全逻辑140将对与第一存储器区域110的安全数据111有关的请求的响应发送到主机装置300。这是因为第一存储器区域110只可被安全逻辑140访问。
在从I/O逻辑150接收到请求之后,安全逻辑140从第一存储器区域110接收安全数据111,对安全数据111进行纠错,并对安全数据111进行加密。如上所述,根据一些实施例,安全数据111还可在被纠错电路纠错后被提供给安全逻辑140。在这种情况下,安全逻辑140立即对安全数据111进行加密。
安全逻辑140向I/O逻辑150提供加密的安全数据121,从而加密的安全数据121可被输出到主机装置300。
现在将参照图5来描述根据当前实施例的存储器装置IOOa的操作方法。在图5中,示出了图4的存储器元件IOOa的操作。为了简化起见,将在图5的描述中省略上面已经描述的相同的部件和操作的重复的描述。
参照图5,当存储器装置IOOa接收与安全数据111有关的请求(操作S200)时,安全逻辑140读取存储在第一存储器区域110中的安全数据111,对接收的安全数据111进行加密(操作S202),并输出加密的安全数据121 (操作S204)。将理解,在本实施例中,加密的安全数据121没有被存储在存储器装置IOOa中,但是可被存储在存储器装置IOOa中。
如上所述,存储在根据当前实施例的存储器装置IOOa的第一存储器区域110中的安全数据111仅可被存储器装置IOOa中的安全逻辑140访问。安全逻辑140读取安全数据111,对读取的安全数据111进行加密,然后输出加密的安全数据121。因此,在任何环境下,在加密的状态从存储器装置100输出安全数据111。也就是说,根据当前实施例的存储器装置IOOa可显著减少安全数据111被泄露的概率。存储在第一存储器区域110中的安全数据可以是分配给每个存储器装置IOOa的MUK112。
每个存储器装置100、IOOa可包括存储器阵列160。存储器阵列160包括对于主机装置300或控制器200可只读访问的第二存储器区域和对于主机装置300或控制器200可读写访问的第三存储器区域。所述存储器阵列可包括第一、第二和第三存储器区域的全部。作为选择,第一存储器区域110可不被包括在存储器阵列160中,而是与存储器阵列160分开。如图1和图2所示,可以由安全逻辑140对第二存储器区域进行编程。
下面,将参照图6和图7来描述根据第三实施例的保护MUK的存储器装置100。根据当前实施例的存储器装置100还可包括对主机装置300或控制器200可读写访问的第三存储器区域130 (参见图2和图4)。具体地讲,根据当前实施例的存储器装置100可包括安全逻辑140可访问的第一存储器区域110、外部装置可只读访问的第二存储器区域120和外部装置可读写访问的第三存储器区域130。MUKl 12可被存储在第一存储器区域110中,EMUK122可被存储在第二存储器区域120。
为了使用MUK112执行特定操作,主机装置300通过对EMUK122解密来获得MUKl 120下面将用于对EMUK122解密的解密密钥称为第一解密密钥。
根据当前实施例的存储器装置100可将通过对第一解密密钥加密而获得的加密的第一解密密钥131存储在第三存储器区域130中。也就是说,存储器装置100不存储第一解密密钥,而只存储加密的第一解密密钥。这是因为如果第一解密密钥存储在存储器元件100中,则可使用第一解密密钥容易地将EMUK122解密为MUK112。存储器供应商或使用存储器装置100组装卡的供应商可以将加密的第一解密密钥131编程或存储到第三存储器区域中。
用于对加密的第一解密密钥131解密的解密密钥是存储在主机装置300中的第二解密密钥301。第二解密密钥可对于每个主机装置供应商或者对于每个主机装置有唯一值。
参照图6,主机装置300通过控制器200请求EMUK122并接收请求的EMUK122。类似地,主机装置300通过控制器200请求存储在第三存储器区域130中的加密的第一解密密钥131,并接收请求的加密的第一解密密钥131。然后,参照图7,主机装置300使用第二解密密钥301将加密的第一解密密钥131解密为第一解密密钥302 (操作S300),并使用第一解密密钥302将EMUK122解密为MUK112 (操作S302)。下面,使用“A”加密或解密可被理解为将“A”用作加密密钥或解密密钥来加密或解密。
第一解密密钥302可具有与存储器供应商使用以通过对MUK112加密产生EMUK122的加密密钥相同的值。
在未在图6中示出的存储器阵列160的用户区域中,可存储使用基于MUKl 12产生的加密密钥而加密的数据。将在另一实施例中更详细地描述使用基于MUK112产生的加密密钥对数据加密的处理。
下面将参照图8描述根据第四实施例的使用MUK产生认证信息的存储器装置100。根据当前实施例的存储器装置100使用存储在第一存储器区域110中的MUKl 12产生认证信息,以被比如主机装置300或控制器200的外部装置认证,并向外部装置提供产生的认证信息。存储器装置100可如下面所述产生认证信息。
根据当前实施例的存储器装置100将MUKl 12和多个备用密钥113存储在第一存储器区域110中。由于第一存储器区域110仅可被安全逻辑140a访问,因此备用密钥113也仅可被安全逻辑140a访问。安全逻辑140a基于对MUK112加密而获得的数据产生存储器装置的认证信息141。具体地讲,安全逻辑140a使用与用于对MUKl 12加密的第一加密密钥不同的第二加密密钥来将MUK112加密为EMUK122,并基于加密的数据产生存储器装置的认证信息141。
可基于对备用密钥113之一加密而获得的数据产生第二加密密钥。为此,安全逻辑140a选择备用密钥113之一(操作S400)并对选择的备用密钥加密(操作S402)。在选择备用密钥113之一(操作S400)时,安全逻辑140a可基于预定标准或者基于由主机装置300或控制器200提供的备用密钥选择信息来选择备用密钥113之一。安全逻辑140a可被配置为响应于备用密钥选择信息选择第一备用密钥SPARE KEYO以产生存储器装置的认证信息。在对选择的备用密钥加密(操作S402)时,安全逻辑140a可使用基于从主机装置300或控制器200接收的用于认证信息产生的数据而产生的密钥,来将选择的备用密钥加密为加密密钥。下面将针对图13描述该具体示例。可基于作为对选择的备用密钥加密的结果产生的数据来获得第二加密密钥(操作S402)。安全逻辑140a基于通过使用第二加密密钥对MUK112加密而获得的数据,来产生存储器装置的认证信息141 (操作S404)。
总之,根据当前实施例,安全逻辑140a基于从外部装置接收的多个备用密钥之一和用于认证信息产生的密钥,来产生与用于将MUK加密为EMUK的第一加密密钥不同的第二加密密钥,并通过使用第二加密密钥对MUK加密来产生认证信息。安全逻辑140a可包括一个或多个加密引擎(未示出),并且加密引擎之一可被用于使用第二加密密钥对MUK加密。
根据当前实施例,使用存储在存储器装置100中并且不被泄露给外部的MUK112和备用密钥113产生存储器装置的认证信息141。由于产生存储器装置的认证信息141所需的源数据没有被泄露给外部,所以操作存储器装置的认证信息141的概率急剧降低。另外,由于主机装置300提供的数据被反应在产生存储器装置的认证信息141的处理中,因此可使用各种方法来认证存储器装置,并且每当认证存储器装置时可产生不同的认证信息141,从而可进一步减少操作认证信息141的概率。
下面,将参照图9描述根据第五实施例的主机装置300。根据当前实施例的主机装置300认证存储器装置,当存储器装置被成功认证时对数据加密,并将加密的数据存储在存储器装置中。参照图9,根据当前实施例的主机装置300包括接口单元310、密钥存储单元312和MUK获得单元314。储存存储器装置1000包括存储器装置100和用于控制存储器装置100的控制器200。代替存储器装置100,储存存储器装置1000包括在图4中描述的存储器装置IOOa或在图10中描述的存储器装置400。
包括接口单元310、密钥存储单元312和MUK获得单元314的主机装置300可通过对从储存存储器装置1000接收的EMUK加密来获得MUKl 12。
接口单元310从储存存储器装置1000接收通过对储存存储器装置1000的MUK加密而获得的EMUK122和通过对用于对EMUK122解密的第一解密密钥302加密而获得的加密的第一解密密钥131。
密钥存储单元312存储用于对加密的第一解密密钥131解密的第二解密密钥301。第二解密密钥301可对每个主机装置供应商或者对每个主机装置300具有唯一值。
MUK获得单元314通过使用第二解密密钥301对加密的第一解密密钥131解密来获得第一解密密钥302,并通过使用第一解密密钥302对EMUK122解密来获得MUK112。MUK获得单元314可包括一个或多个解密引擎。解密引擎之一可通过执行对称解密算法从加密的第一解密密钥131获得第一解密密钥302,另一个解密引擎可通过使用第一解密密钥302从EMUK122获得MUK112。用于获得第一解密密钥302和MUK112的解密算法可以相同或不同。
根据当前实施例的主机装置300如下所述使用MUK112来认证储存存储器装置1000。当主机装置300认证储存存储器装置1000时,主机装置300确定储存存储器装置1000是否产生了满足主机装置300的特定标准的认证信息。如果主机装置300根据标准A产生了认证信息,则主机装置300可确定储存存储器装置1000是否也根据标准A产生了认证信息。在这样做的过程中,主机装置300确定储存存储器装置1000是否根据标准A进行操作,并基于确定结果来执行不同操作。在参照图8对第四实施例进行的描述中可以找到储存存储器装置1000产生认证信息的处理的描述。
认证储存存储器装置1000的主机装置300还可包括认证处理单元320。认证处理单元320基于MUK获得单元314获得的MUKl 12产生主机装置300的认证信息,经过接口单元310从包括在储存存储器装置1000中的存储器装置100接收储存存储器装置1000的认证信息141,并通过将主机装置300的认证信息与储存存储器装置1000的认证信息141进行比较来认证储存存储器装置1000。
认证处理单元320可产生随机数并且使用该随机数产生主机装置300的认证信息。所述随机数还被提供给储存存储器装置1000。因此,可使用所述随机数产生储存存储器装置1000的认证信息141。认证处理单元320使用该随机数基于MUK112产生主机装置300的认证信息,并强制储存存储器装置1000使用该随机数产生认证信息141。因此,每当使用随机数认证储存存储器装置1000时就产生不同的认证信息。每当认证储存存储器装置1000时产生不同的认证信息增加了认证安全性。
根据当前实施例的主机装置300使用MUK112产生加密密钥,并使用加密密钥对像电影或音乐的用户数据加密。由于根据当前实施例的主机装置300使用基于储存存储器装置1000的MUK产生的加密密钥,对将被存储在储存存储器装置1000中的数据加密,因此即使加密的数据被复制到除储存存储器装置1000之外的存储装置,可能也难于对复制的数据进行解密。
例如,主机装置300可使用基于第一存储器装置的MUK产生的密钥A,对称地对电影内容加密,并将加密的电影内容存储在第一存储器装置100中。在这种情况下,即使加密的电影内容被复制到与第一存储器装置不同的第二存储器装置,复制的电影内容也不能被解密从而不能被再现。这是因为主机装置300将基于与第一存储器装置的MUK不同的第二存储器装置的MUK来产生密钥B,以对复制到第二存储器装置中的加密的电影内容解密。因此,显然密钥A和密钥B彼此不同。
由于在当前实施例中没有以未加密的状态泄露将存储加密的数据的储存装置的MUK,因此可以理解当前实施例提供了一种可阻止或防止盗版行为的产生数据加密密钥的方法。
根据当前实施例的主机装置300还包括基于获得的MUK112产生数据加密密钥的数据加密密钥产生单元316。下面将数据加密密钥称作认证结果ID303。
根据当前实施例的主机装置300还可包括使用认证结果ID303对目标数据加密的数据加密单元318。另外,数据加密单元318还可包括使用认证结果ID303对使用对称加密算法加密的数据解密的解密单元(未示出)。解密的目标数据经过接口单元310被提供给存储器装置1000并被存储在存储器部件100的用户区域中。
总之,根据当前实施例的主机装置300从储存存储器装置1000获得EMUK122,产生MUK112,使用MUK112认证储存存储器装置1000,并产生认证结果ID303以进行数据加密。使用认证结果ID303加密的数据被存储在存储MUKl 12的存储器装置100中。
下面,将参照图10描述根据第六实施例的保护MUK的存储器装置400。参照图10,根据当前实施例的存储器装置400可包括三个储存区域,即:类型I区域410、类型2区域420、类型3区域430。
类型I区域410存储MUKl 12并被主机装置300或控制器200通过安全逻辑(未示出)访问。也就是说,尽管在图10中没有示出,但是类型I区域410可被安全逻辑(未示出)只读访问。安全逻辑读取存储在类型I区域410中的数据,并对读取的数据加密。类型I区域410还可存储多个备用密钥113。备用密钥113可包括第一备用密钥(O号备用密钥)至第N备用密钥(N-1号备用密钥),其中,N是备用密钥的期望的(或者作为选择,预定的)数目。
类型2区域420可被主机装置300或控制器200只读访问并存储通过对MUKl 12加密而获得的EMUK122。类型2区域420还可存储备用密钥容器126,所述备用密钥容器126包括存储器装置400的供应商ID124和分别与备用密钥113对应的多个备用密钥索引125。这里,O号备用密钥索引对应于O号备用密钥,I号备用密钥索引对应于I号备用密钥,2号备用密钥索引对应于2号备用密钥……N-1号备用密钥索引对应于N-1号备用密钥。备用密钥容器126的备用密钥索引可被输出到主机装置300,从而主机装置300可产生其认证信息。根据实施例,备用密钥 容器126可被存储在类型3区域430而非类型2区域420中。
每个备用密钥索引是包含每个备用密钥的因素的数据。如果结合附加信息解释每个备用密钥索引,则可获得相应的备用密钥。如上所述,可从EMUK122获得MUK112。因此,尽管根据当前实施例的存储器装置400没有输出存储在类型I区域410中的数据,但是它通过类型2区域420提供可被解密以获得存储在类型I区域410中的数据的数据。
EMUK122可被用在通过主机装置300对存储器装置400的认证处理中。主机装置300选择的备用密钥113也可被用在通过主机装置300对存储器装置400的认证处理中。
在(特别是在圆片状态下)生产存储器元件的过程中,存储器供应商可对MUK和备用密钥113进行编程。供应商也可在圆片状态下对EMUK和备用密钥索引125进行编程。
最后,类型3区域430可被主机装置300或控制器200读写访问。类型3区域430还可存储包括多个加密的第一解密密钥131的第一解密密钥块132。这里,每个加密的第一解密密钥131可被分配给相应的主机装置供应商。例如,O号加密的第一解密密钥可被分配给主机装置供应商X,I号加密的第一解密密钥可被分配给主机装置供应商Y。
如上所述,第一解密密钥用于将EMUK122解密为MUK112。因此,第一解密密钥块132和EMUK122可被输出到主机装置300,从而主机装置300可获得MUK112。
存储在类型3区域430中的第一解密密钥块132可被使用存储器元件生产存储器卡或通用串行总线(USB)存储器的供应商编程。
下面,将参照图11描述根据本发明第七实施例的保护MUK的储存存储器装置400a。根据该实施例的储存存储器装置400a包括两个或更多存储器装置。例如,在图11中示出的储存存储器装置400a包括四个存储器装置401至404。储存存储器装置400a的储存容量是包括在存储器装置400a中的存储器装置401至404的储存容量之和。
包括在存储器装置400a中的存储器装置401至404中的每一个可以是非易失性存储器,并可以是将NAND-FLASH存储器、N0R-FLASH存储器、PRAM、MRAM或RRAM用作储存介质的芯片或封装。存储器装置401至404可被安装在包括在存储器装置400a的基底上(未示出)。
包括在一个存储器装置400a中的存储器装置401至404可以是相同类型或不同类型的非易失性存储器,并可具有相同或不同的储存容量。
包括在一个存储器装置400a中的存储器装置401至404被使用存储器装置400a的外部装置当成一个储存装置。
参照图11,包括在存储器装置400a中的存储器装置401至404中的每一个可包括类型I区域410和类型2区域420。另一方面,可以由包括在存储器装置400a中的所有存储器装置401至404的形成类型3区域430。也就是说,类型3区域430可以是由物理上分开的存储器装置401至404中包括的储存空间构成的一个逻辑存储空间。
与图11的包括在存储器装置400a中的存储器装置401至404不同,根据实施例的存储器装置中包括的每个存储器元件可包括类型I区域、类型2区域和类型3区域。另外,根据当前实施例的存储器装置400a还可包括由包括在其中的所有存储器元件形成的用户区域。也就是说,用户区域可以是由包括在物理上分离的存储器元件中的储存空间构成的一个逻辑储存空间。用户区域可以存储外部装置提供的用户数据并可以是可读写访问的区域。
上面已经在第六实施例中描述了外部装置是否可以访问类型I区域410、类型2区域420和类型3区域430中的每一个以及存储在类型I区域410、类型2区域420和类型3区域430中的每一个中的数据,因此将省略其重复的描述。
下面,将参照图12描述根据第八实施例的主机装置获得MUK的方法。
参照图12,主机装置300通过参考提前存储在主机装置300中的第二解密密钥索引305,选择存储在存储器装置400a的类型3区域430中的第一解密密钥块132中包括的多个加密的第一解密密钥之一(操作S1010)。第一解密密钥块132可包括用于比如主机装置300的外部装置的每个供应商的加密的第一解密密钥,第二解密密钥索引305可以对装置300的供应商具有唯一值。作为选择,密钥和索引可以基于装置。优选地,第二解密密钥索引305可对于每个主机装置供应商具有唯一值。
主机装置300将存储在主机装置300中的第二解密密钥301用作解密密钥,来对选择的加密的第一解密密钥进行解密(操作S1020)。
图12中示出的标号AES_D表示AES对称解密算法被用作解密算法。下面,将这样理解在附图中示出的AES_D,从而将省略其重复的描述。AES_D还可表示使用除AES对称解密算法之外的对称解密算法执行的解密操作。在附图中示出的标号AES_E表示使用AES对称加密算法。与AES_D类似,AES_E还可表示使用除AES对称加密算法之外的对称加密算法执行的加密操作。下面,将这样理解在附图中示出的AES_E,从而将省略其重复的描述。
主机装置300使用解密的第一解密密钥对存储在存储器装置400的类型2区域420中的EMUK122解密,从而获得MUKl 12 (操作S1022)。
下面,将参照图13描述根据第九实施例的主机装置认证存储器装置的方法以及在存储器装置被成功认证之后主机装置产生对数据加密的密钥的方法。
首先,将描述根据当前实施例的存储器装置400或储存存储器装置1000产生认证信息的方法。尽管图13表示主机装置300认证存储器装置400,但是主机装置300也可认证具有存储器装置400的储存存储器装置1000。在这个实施例中,存储器控制器只将命令和数据从主机传送到存储器装置或者将命令和数据从存储器装置传送到主机。
存储器装置400从主机装置300接收关于目标备用密钥号的信息。该号可以例如与应用或内容(例如,电影等)的类型有关,以从存储器装置400再现或者存储在存储器装置400中。然后,存储器装置400从多个备用密钥113中选择与目标备用密钥号相应的备用密钥(操作S1120)。在图13中,选择第i备用密钥。由于类型I区域410可仅被安全逻辑(未示出)访问,因此备用密钥113可仅被安全逻辑读取。
存储器装置400使用从主机装置300接收的备用索引变量号307对选择的备用密钥加密,并产生备用密钥变量(操作S1122)。备用变量=AES_E (备用密钥,备用密钥变量号)。
然后,存储器装置400接收主机装置300产生的随机数(操作S1113)。存储器装置400使用随机数对备用密钥变量加密,并产生会话密钥(操作S1124)。会话密钥=AES_E (备用密钥变量,随机数)。
存储器装置400基于MUKl 12和会话密钥产生认证信息(操作SI 126)。认证信息=AES_G (会话密钥,MUK)。存储器装置400将认证信息输出到主机装置300。
可通过期望的(或者作为选择,预定的)采用MUK和会话密钥作为输入的单向函数AES_G来实现存储器装置400的认证信息的产生(操作SI 126)。单向函数使用存储器装置400的会话密钥作为密钥(AES_E)对MUK112加密,然后通过对加密的结果和MUK112执行异或操作产生存储器装置IOOb的认证信息。计算上可能会发现单向函数的相应的输入值以及单向函数的每个输出值。AES_G可以被表示为“AES_G(X1,X2) = AES_E(X1, X2)X0RX2,其中,X2是MUKl 12,Xl是操作SI 126中的会话密钥。”
在图13中示出的参考字符AES_G表示涉及两个操作(即加密操作和异或操作)的单向函数操作。下面,将这样理解在附图中示出的AES_G,并且将省略重复的描述。
现在将描述主机装置300认证存储器装置400的方法。
主机装置300读取存储在存储器装置400的类型2区域420中的备用密钥容器126,通过参考为所述认证指定的目标备用密钥号i来对包含在备用密钥容器126中的数据进行解析,并选择包括在备用密钥容器126中的多个备用密钥变量索引125之一(操作S1110)。例如,如前面所提到的,所述索引可以与存储器装置400的供应商有关,并且每个索引可以与不同的备用密钥号有关。例如,如果如图13所示,第i目标备用密钥被指定为用于此次认证,则作为对包含在备用密钥容器126中的数据进行解析的结果,主机装置300可选择第j备用密钥变量索引。
主机装置300从提前存储在其中的备用密钥变量集合306选择由选择的第j备用密钥变量索引指定的一个备用密钥变量(操作S1112)。备用密钥变量集合306可具有很多备用密钥变量,每个备用密钥变量被指定给相应的备用密钥变量索引,并且对每个主机装置供应商或对每个主机装置300具有唯一值。所述集合中的备用密钥变量是AES (备用密钥,备用密钥变量号)的不同的可能值。从目标备用密钥号选择的备用密钥索引提供至备用密钥变量的索引,所述备用密钥变量与假设授权的存储器装置300和主机装置400操作在操作SI 122中在存储器装置中产生的备用密钥变量相同。
主机装置300产生随机数(操作S1114),并将产生的随机数用作密钥来对选择的备用密钥变量的值加密,从而产生会话密钥。
主机装置300基于提前获得MUKl 12及其会话密钥产生认证信息(操作SI 118)。与存储器装置400的认证信息的产生相同,可通过将MUK112和主机装置300的会话密钥作为输入的期望的(或作为选择,预定的)单向函数实现主机装置300的认证信息的产生。这里,用于产生存储器装置400的认证信息的单向函数可以与用于产生主机装置300的认证信息的单向函数相同。
主机装置300通过将存储器装置400的认证信息与主机装置300的认证信息进行比较来认证存储器装置400 (操作SI 128)。例如,如果存储器装置400的认证信息与主机装置300的认证信息相同,则主机装置确定成功认证了存储器装置400。否则,主机装置确定没有认证存储器装置400。
如果存储器装置400被主机装置300成功认证,则主机装置300可产生认证结果ID作为对数据加密的加密密钥。更具体地讲,主机装置300可基于MUKl 12和应用特定秘密值(ASSV)产生作为数据加密密钥的认证结果ID (操作SI 130)。
ASSV可给予在主机装置300上运行的每个应用。例如,不同的ASSV可给予音乐回放应用、视频回放应用和软件安装应用。ASSV可以对每种类型的被加密的数据或对被加密的数据的每个供应商ID具有唯一值。例如,数据的类型可以是内容类型,也就是说,数据是电影、音乐还是软件,数据的供应商可以是内容供应商。优选地,ASSV可以对被加密的每种类型的数据具有唯一值。
可通过将MUK112和ASSV输入到期望的(或者作为选择,预定的)单向函数并将结果值输出为认证结果ID来实现认证结果ID的产生(操作S1130)。所述单向函数可以将ASSV用作密钥(AES_E)来对MUKl 12加密,然后对加密的结果和MUK执行异或操作。
下面,将参照图14描述根据第十实施例的主机装置认证存储器装置并存储加密的内容的方法。
参照图14,主机装置300使用图13的方法认证存储器装置400 (操作S1202)。如果存储器装置400没有被认证(操作S1204),则可提供认证失败的通知(操作S1206)。如果没有成功认证,则存储器装置400不能使用安全内容,但是仍然可用于输入/输出普通数据。
如果存储器装置400被成功认证,则通过上面针对图13讨论的使用ASSV根据AES_G对MUK加密来产生认证结果ID。将认证结果ID用作加密密钥来对目标内容308加密(操作S1208),然后加密的内容309被存储在存储器装置400中。
下面,将参照图15描述根据各种实施例的储存存储器装置1000。
参照图15,储存存储器装置1000包括非易失性存储器装置1100和控制器1200。上面描述的存储器装置100、100a、400或400a可被实现在图15的储存存储器装置1000中。即,非易失性存储器装置1100可包括上面描述的实施例中的一个或多个存储器装置(例如,存储器装置100、100a、400、400a)。类似地,上面描述的存储器控制器200可被配置为控制器1200。
控制器1200被连接到主机和非易失性存储器装置1100。控制器1200被配置为响应于主机的请求来访问非易失性存储器装置1100。例如,控制器1200可被配置为控制非易失性存储器装置1100的读/写/擦除/后台操作。控制器1200可被配置为提供非易失性存储器装置1100和主机之间的接口。控制器1200可被配置为驱动用于控制非易失性存储器装置1100的固件。
控制器1200还包括已知组件,比如随机存取存储器(RAM)、处理单元、主机接口和存储器接口。所述RAM被用作处理单元的工作存储器、非易失性存储器装置1100和主机之间的高速缓存、非易失性存储器装置1100和主机之间的缓存中的至少一个。处理单元控制控制器1200的全部操作。
主机接口包括用于主机和控制器1200之间的数据交换的协议。例如,控制器1200可被配置为使用多种接口协议(比如USB协议、多媒体卡(MMC)协议、外围组件互联(PCI)协议、PC1-Express (PC1-E)协议、高级技术附加装置(ATA)协议、串行ATA协议、并行ATA协议、小型计算机小接口(SCSI)协议、增强的小型盘接口(ESDI)协议和集成驱动电子设备(IDE)协议)中的至少一个,与外部装置(例如主机)通信。存储器接口可以与非易失性存储器装置1100接口连接。例如,存储器接口包括NAND接口或NOR接口。
储存存储器装置1000还可(例如在存储器控制器1200中)包括纠错块。所述纠错块可被配置为通过使用纠错码(ECC)来检测和纠正从非易失性存储器装置1100读取的数据中的错误。例如,纠错块可被提供为控制器1200的组件。所述纠错块还可被提供为非易失性存储器装置1100的组件。
控制器1200和非易失性存储器装置1100可被集成在一个半导体装置中。作为示例,控制器1200和非易失性存储器装置1100可被集成到一个半导体装置中以包括存储卡。例如,控制器1200和非易失性存储器装置1100可被集成到一个半导体装置中以包括个人计算机(PC)卡(例如,个人计算机存储卡国际联合会(PCMCIA))、紧凑式闪存卡(CF)、智能媒体卡(SM/SMC)、记忆棒、多媒体卡(例如,MMC, RS-MMC和MMCmicro)、SD卡(例如,SD、miniSD、microSD 和 SDHC)或通用闪存(UFS)。
图16是示意性示出根据本发明构思的实施例的存储器卡的框图。参照图16,存储器卡2000可包括至少一个闪存2100、缓存装置2200和用于控制所述闪存2100和缓存装置2200的存储器控制器2300。闪存2100可以是针对上述实施例之一描述的非易失性存储器装置(例如存储器装置100、100a、400、400a)。存储器控制器2300可以是针对上述实施例之一描述的存储器控制器200。
缓存装置2200可被用于临时存储在操作存储器卡2000期间产生的数据。可使用DRAM或SRAM来实现缓存装置2200。存储器控制器2300可以经过多个通道与闪存2100连接。存储器控制器2300可以被连接在主机和闪存2100之间。存储器控制器2300可被配置为响应于主机的请求访问闪存2100。
存储器控制器2300可包括至少一个微处理器2310、主机接口 2320和闪存接口2330。微处理器2310可被配置为驱动固件。主机接口 2320可以经过用于在主机和存储器卡2000之间的数据交换的卡协议(例如SD/MMC),与主机连接。存储器卡2000可应用于多媒体卡(MMC)、安全数字(SD)、miniSD、记忆棒、智能媒体和TransFlash卡。
在公开号为2010/0306583的美国专利中公开了存储器卡2000的详细描述,其全部内容包含于此以资参考。
图17是示意性示出根据本发明构思的实施例的moviNAND的框图。参照图17,moviNAND装置3000可包括至少一个NAND闪存装置3100和控制器3200。moviNAND装置3000可支持MMC4.4(或被称作“eMMC”)标准。闪存装置3100可以是针对上述实施例之一描述的非易失性存储器装置(例如存储器装置100、100a、400、400a)。控制器3200可以是针对上述实施例之一描述的存储器控制器200。
NAND闪存装置3100可以是单倍数据速率(SDR)NAND闪存装置或者双倍数据速率(DDR)NAND闪存装置。在示例性实施例中,NAND闪存装置3100可包括NAND闪存芯片。这里,可通过将NAND闪存芯片堆叠在一个封装(例如FBGA,细间距球栅阵列等)上来实现NAND闪存装置3100。
控制器3200可以经过多个通道与闪存装置3100连接。控制器3200可包括至少一个控制器核3210、主机接口 3220和NAND接口 3230。控制器核3210可控制moviNAND装置3000的全部操作。
主机接口 3220可被配置为执行控制器3200和主机之间的MMC接口,所述主机可以是针对上述任意实施例描述的主机300。NAND接口 3230可被配置为在NAND闪存装置3100和控制器3200之间的接口。在示例性实施例中,主机接口 3220可以是并行接口(例如,MMC接口)。在其他实施例中,moviNAND装置3000的主机接口 3250可以是串行接口(例如 UHS-11、UFS 等)。
moviNAND装置3000可从主机接收电源电压Vcc和Vccq。这里,电源电压Vcc (大约3V)可被供给NAND闪存装置3100和NAND接口 3230,而电源电压Vccq (大约1.8V/3V)可被供给控制器3200。在示例性实施例中,外部高电压Vpp可选地被供给moviNAND装置3000。
根据本发明构思的实施例的moviNAND装置3000可有利于存储大量数据并且可具有改进的读取特性。根据本发明构思的实施例的moviNAND装置3000可应用于小型低功率的移动产品(例如Galaxy S、iPhone等)。
图17中示出的moviNAND装置3000可被供应有多个电源电压Vcc和Vccq。然而,本发明构思不限于此。moviNAND装置3000可被配置为通过在内部对电源电压Vcc进行升压或稳压来产生适合于NAND接口和NAND闪存的3.3V的电源电压。在第7,092, 308号美国专利中公开了内部升压和稳压,其全部内容包含于此以资参考。
本发明构思可应用于固态驱动器(SSD)。
参照图18,储存存储器装置1000可以被实现为SSD(固态驱动器)1300和控制器1400。SSD包括根据上述实施例中的任意实施例的存储器装置,并将数据存储在半导体存储器中。控制器1400可以是根据上述实施例的任意实施例的控制器200。连接到储存存储器装置1000的主机(例如,根据上述实施例的任意实施例的主机300)的操作速度可显著增加。
图19是示意性示出根据本发明构思的固态驱动器的框图。参照图19,固态驱动器(SSD) 4000可包括多个闪存装置4100和SSD控制器4200。闪存装置4100可以是针对上述实施例之一描述的非易失性存储器装置(例如存储器装置100、100a、400、400a)。控制器4200可以是针对上述实施例之一描述的存储器控制器200。
闪存装置4100可选地供应有来自外部的高电压Vpp。SSD控制器4200可经过多个通道CHl至CHi连接到闪存装置4100。SSD控制器4200可包括至少一个CPU4210、主机接口 4220、缓存4230和闪存接口 4240。
在CPU4210的控制下,主机接口 4220可以通过通信协议与主机交换数据。在示例性实施例中,通信协议可包括高级技术附加设备(ATA)协议。ATA协议可包括串行高级技术附加设备(SATA)接口、并行高级技术附加设备(PATA)接口、外部SATA(ESATA)接口等。在其他示例性实施例中,通信协议可包括通用串行总线(USB)协议。在CPU4210的控制下,将通过主机接口 4220从主机接收或发送到主机的数据可在不通过CPU总线的情况下通过缓存4230传送。
缓存4230可被用于临时存储在外部装置和闪存装置4100之间传送的数据。缓存4230可被用于存储将由CPU4210执行的程序。可使用SRAM或DRAM实现缓存4230。图19中的缓存4230可被包括在SSD控制器4200内。然而,本发明构思并不限于此。可在SSD控制器4200的外部提供根据本发明构思的实施例的缓存4230。
闪存接口 4240可被配置为在SSD控制器4200和用作储存装置的闪存装置4100之间进行接口连接。闪存接口 4240可被配置为支持NAND闪存、One-NAND闪存、多级闪存或单级闪存。
根据本发明构思的SSD可通过在编程操作中存储随机数据来改进数据的可靠性。在第8,027, 194号美国专利和第2007/0106836号和第2010/0082890号美国专利公开中公开了对SSD4000的更详细的描述,其全部内容通过引用包含于此以资参考。
作为其他示例(一些示例上面已经提到),储存存储器装置1000可应用于计算机、超移动PC(UMPC)、工作站、上网本、个人数字助理(PDA)、便携式计算机、上网平板电脑、无线电话、移动电话、智能电话、电子书、便携式多媒体播放器(PMP)、便携式游戏装置、导航装置、黑盒子、数字相机、立体电视、数字音频记录器、数字音频播放器、数字照片记录器、数字照片播放器、数字视频记录器、数字视频播放器、能够在无线环境下发送/接收信息的装置、构成家庭网络的多种电子装置之一、构成计算机网络的多种电子装置之一、构成远程信息处理网络的多种电子装置之一、射频识别(RFID)装置或构成计算系统的多种部件之一。
图20是示意性示出根据发明构思的实施例的包括图19中的SSD的计算系统的框图。参照图20,计算系统5000可包括至少一个CPU5100、非易失性存储器装置5200、RAM5300、输入 / 输出(I/O)装置 5400 和 SSD4000。
CPU5100可被连接到系统总线。CPU5100可以是上述实施例中的主机装置300的一部分。非易失性存储器装置5200可存储用于驱动计算系统5000的数据。这里,数据可包括开始命令序列或基本I/O系统(BIOS)序列。RAM5300可临时存储在CPU5100的执行期间产生的数据。I/O装置5400可通过I/O装置接口(比如键盘、指针装置(例如鼠标)、监视器、调制解调器等)被连接到系统总线。SSD5500可以是可读储存装置,并且可以被实现为与图19的SSD4000相同。
图21是示意性示出根据本发明构思的实施例的包括图19的SSD的电子装置的框图。参照图21,电子装置6000可包括处理器6100、R0M6200、闪存接口 6400和至少一个SSD6500。
处理器6100可访问RAM6300以执行固件代码或其他代码。处理器6100可以是上述实施例中的主机装置的一部分。此外,处理器6100可访问R0M6200以执行比如开始命令序列和基本I/O系统(BIOS)序列的固定命令序列。闪存接口 6400可被配置为在电子装置6000和SSD6500之间进行接口连接。SSD6500可以从电子装置6000拆卸。SSD6500可以被实现为与图19的SSD4000相同。
电子装置6000可包括蜂窝电话、个人数字助理(PDA)、数码相机、摄像机、便携式音频播放器(MP3)和便携式媒体播放器(PMP)。
图22是示意性示出根据本发明构思的实施例的包括图19中的SSD的服务器系统的框图。参照图22,服务器系统7000可包括服务器7100和至少一个存储用于驱动服务器7100的数据的SSD7200。SSD7200可被配置为与图19的SSD4000相同。服务器7100可以是针对上述实施例描述的主机装置300。
服务器7100可包括应用通信模块7110、数据处理模块7120、升级模块7130、调度中心7140、本地资源模块7150和维修信息模块7160。应用通信模块7110可被配置为与连接到网络和服务器7100的计算系统通信,或者允许服务器7100与SSD7200通信。应用通信模块7110可将通过用户接口提供的数据或信息发送到数据处理模块7120。
数据处理模块7120可被链接到本地资源模块7150。这里,本地资源模块7150可基于输入到服务器7100的信息或数据向用户提供维修店/零售商/技术信息的列表。升级模块7130可以与数据处理模块7120进行接口连接。基于从SSD7200接收的信息或数据,升级模块7130可执行关于电子装置的固件、重置代码、诊断系统或其他信息的升级。
调度中心7140可基于输入到服务器7100的信息或数据向用户提供实时选项。维修信息模块7160可以与数据处理模块7120进行接口连接。维修信息模块7160可被用于向用户提供维修相关的信息(例如,音频、视频或文档文件)。数据处理模块7120可对与从SSD7200接收的信息有关的信息打包。可向SSD7200发送或者可向用户显示打包信息。
如上所述,本发明构思可应用于移动产品(例如智能电话、移动电话等)。
图23是示意性示出根据本发明构思的实施例的移动装置的框图。参照图23,移动装置8000可包括通信单元8100、控制器8200、存储器单元8300、显示单元8400、触摸屏单元8500和音频单元8600。
存储器单元8300可包括至少一个DRAM8310和至少一个非易失性存储器装置8330(比如moviNAND或eMMC)。非易失性存储器装置8330可以是针对上述实施例之一描述的存储器装置。控制器8200可以是针对上述实施例之一描述的控制器和/或主机装置。
在公开号为2010/0010040、2010/0062715、2010/00199081 和 2010/0309237 的美国专利公开中公开了移动装置的详细描述,其全部内容包含于此以资参考。
如上所述,本发明构思可应用于平板产品。
图24是示意性示出根据本发明构思的实施例的手持电子装置的框图。参照图24,手持电子装置9000可包括至少一个计算机可读介质9020、处理系统9040、输入/输出子系统9060、射频电路9080和音频电路9100。各个构成元件可通过至少一个通信总线或信号线 9031、9032、9033、9034、9035、9036、9037、9038 互连。
手持电子装置9000可以是包括手持计算机、平板电脑、蜂窝电话、媒体播放器、PDA或其中两个或更多的结合的便携式电子装置。这里,所述至少一个计算机可读介质9020可以是根据上述实施例之一的存储器系统1000,处理系统9040可以是根据上述实施例之一的主机装置。在第7,509,588号美国专利中公开了手持电子装置9000的详细描述,其全部内容包含于此以资参考。
作为另一示例,非易失性存储器装置1100或存储器系统1000可以被安装在多种封装上。可包括非易失性存储器装置1100或存储器系统1000的封装的示例包括PoP、BGA、CSP、PLCC, PDIP、窝夫尔组件芯片、圆片形式芯片、COB、CERDIP、MQFP, TQFP, SOIC、SSOP,TSOP, TQFP, SIP、MCP, WFP 和 WSP。
尽管已经参照本发明示例性实施例具体显示和描述了本发明,但是本领域普通技术人员应该理解在不脱离由权利要求限定的本发明的精神和范围的情况下,可以在这里在形式和细节上进行各种改变。示例性实施例应该被理解为仅是描述的意义而不为了限制的目的。
权利要求
1.一种存储器装置,包括: 第一存储器区域,存储安全数据,外部装置不可访问所述第一存储器区域; 第二存储器区域,被配置为存储加密的安全数据,外部装置可访问第二存储器区域,并且所述加密的安全数据是第一存储器区域中的安全数据的加密版本。
2.如权利要求1所述的存储器装置,还包括: 安全逻辑,被配置为从第一存储器区域访问安全数据,从访问的安全数据产生加密的安全数据,并将加密的安全数据存储在第二存储器区域中。
3.如权利要求1所述的存储器装置,其中,所述第二区域被配置为存储从存储器装置的生产商接收的加密的安全数据。
4.如权利要求1所述的存储器装置,其中,第二区域被配置为在生产存储器装置期间存储加密的安全数据。
5.如权利要求1所述的存储器装置,其中,安全数据包括用于认证存储器装置的主密钥,并且加密的安全数据包括加密的主密钥。
6.如权利要求5所述的存储器装置,其中,第一存储器区域还被配置为存储至少一个备用密钥,所述备用密钥用于产生存储器装置的认证信息。
7.如权利要求6所述的存储器装置,其中,所述第二存储器区域还被配置为存储至少一个备用密钥索引,所述备用密钥索引被链接到备用密钥。
8.如权利要求7所述的存储器装置,其中,备用密钥对应于存储器装置的供应商。
9.如权利要求5所述的存储器装置,其中, 第一存储器区域还被配置为存储多个备用密钥,所述多个备用密钥用于产生存储器装置的认证信息; 第二存储器区域还被配置为存储多个备用密钥索引,所述多个备用密钥索引被链接到所述多个备用密钥。
10.如权利要求1所述的存储器装置,还包括: 第三存储器区域,被配置为存储至少一个加密的解密密钥,外部装置可访问所述第三存储器区域,所述加密的解密密钥是解密密钥的加密版本,并且所述解密密钥用于对加密的主密钥解密。
11.如权利要求10所述的存储器装置,其中,所述第三存储器区域还被配置为存储多个加密的解密密钥,所述多个加密的解`密密钥中的至少一个对应于外部装置的供应商。
12.如权利要求1所述的存储器装置,其中,外部装置只可读所述第二存储器区域。
13.一种存储器装置,包括: 第一存储器区域,存储主密钥和至少一个备用密钥,外部装置不可访问所述第一存储器区域; 第二存储器区域,被配置为存储加密的主密钥和至少一个备用密钥索引,外部装置可访问所述第二存储器区域,所述加密的安全数据是第一存储器区域中的安全数据的加密版本,所述备用密钥索引被链接到备用密钥,并且备用密钥与存储器装置的供应商有关。
14.如权利要求13所述的存储器装置,其中,所述备用密钥索引通过备用密钥号被链接到备用密钥。
15.如权利要求13所述的存储器装置,其中,第一存储器区域存储多个备用密钥; 第二存储器区域被配置为存储多个备用密钥索引,所述多个备用密钥索引被链接到所述多个备用密钥。
16.一种存储器装置,包括: 第一存储器区域,存储安全数据; 第二存储器区域,被配置为存储加密的安全数据,所述加密的安全数据是第一存储器区域中的安全数据的加密版本; 所述存储器装置被配置从而不能发生安全数据的输出,而能发生加密的安全数据的输出。
17.一种操作存储器装置的方法,包括: 将安全数据存储在存储器装置的第一存储器区域中,外部装置不可访问所述第一存储器区域; 将加密的安全数据存储在存储器装置的第二存储器区域中,外部装置可访问所述第二存储器区域,所述加密的安全数据是第一存储器区域中的安全数据的加密版本。
18.如权利要求17所述的方法,还包括: 使用驻留在存储器装置中的逻辑从第一存储器区域访问安全数据; 使用所述逻辑从访问的安全数据产生加密的安全数据。
19.如权利要求17所述的方法,其中,所述安全数据包括用于认证存储器装置的主密钥,并且所述加密的安全数据包括加密的主密钥。
20.一种存储器装置产生认证信息的方法,包括: 通过存储器装置基于备用密钥和从外部装置接收的输入产生会话密钥; 通过存储器装置基于会话密钥和主密钥产生认证信息,所述主密钥和备用密钥存储在存储器装置的外部装置不可访问的区域中; 向外部装置输出认证信息。
21.如权利要求20所述的方法,其中,产生会话密钥的步骤包括: 从外部装置接收目标备用密钥号、备用密钥变量号和随机数作为来自外部装置的输A ; 基于接收的目标备用密钥号获得备用密钥; 基于接收的备用密钥变量号对备用密钥加密以产生备用密钥变量; 基于接收的随机数对备用 密钥变量加密以产生会话密钥。
22.如权利要求20所述的方法,其中,产生会话密钥的步骤包括: 从外部装置接收目标备用密钥号、备用密钥变量号和随机数作为来自外部装置的输A ; 基于接收的目标备用密钥号选择存储在存储器装置的所述区域中的多个备用密钥之 基于接收的备用密钥变量号对选择的备用密钥加密以产生备用密钥变量; 基于接收的随机数对备用密钥变量加密以产生会话密钥。
23.一种存储装置产生认证信息的方法,包括: 从外部装置接收目标备用密钥号、备用密钥变量号和随机数;基于接收的备用密钥变量号对备用密钥加密以产生备用密钥变量; 基于接收的随机数对备用密钥变量加密以产生会话密钥; 使用会话密钥对存储在存储器装置中的主密钥加密以产生认证信息; 输出认证信息。
24.一种外部装置获得存储器装置的主密钥的方法,包括: 在外部装置从存储器装置获得加密的主密钥和加密的第一解密密钥,所述加密的第一解密密钥是第一解密密钥的加密版本,所述加密的主密钥是主密钥的加密版本,所述外部装置不能从存储器装置读取主密钥; 在外部装置使用第二解密密钥对加密的第一解密密钥解密以获得第一解密密钥; 在外部装置使用第一解密密钥对存储器装置的加密的主密钥解密以获得主密钥。
25.如权利要求24所述的方法,其中, 所述获得步骤从存储器装置获得多个加密的第一解密密钥;并且所述方法还包括:基于外部装置的解密密钥索引选择所述多个加密的第一解密密钥之一;其中,对加密的第一解密密钥解密的步骤使用第二解密密钥对选择的加密的第一解密密钥解密。
26.如权利要求25所述的方法,还包括: 在外部装置存储解密密钥索引和第二解密密钥。
27.如权利要求26所述的方法,其中,所述存储步骤存储由认证机构提供的解密密钥索引和第二解密密钥。
28.一种外部装置产生认证信息以认证存储器装置的方法,包括: 在外部装置基于备用 密钥信息产生会话密钥,所述备用密钥信息包括关于存储器装置使用以产生第一认证信息的备用密钥的信息; 在外部装置基于会话密钥和推导的主密钥产生第二认证信息,所述推导的主密钥是存储器装置的主密钥,所述外部装置不能从存储器装置读取主密钥。
29.—种系统,包括: 存储器装置,被配置为在第一存储器区域中存储主密钥和至少一个备用密钥,所述存储器装置被配置为在第二存储器区域中存储加密的主密钥和至少一个备用密钥索引,并且所述存储器装置被配置为存储至少一个加密的解密密钥,所述存储器装置被配置为基于主密钥和备用密钥产生第一认证信息,所述存储器装置被配置为允许外部装置访问第二存储器区域但是不允许外部装置访问第一存储器区域; 外部装置,所述外部装置被配置为访问加密的主密钥、备用密钥索引和加密的解密密钥,所述外部装置被配置为基于加密的主密钥和加密的解密密钥产生推导的主密钥,所述外部装置被配置为基于备用密钥索引和推导的主密钥产生第二认证信息,并且所述外部装置被配置为确定是否基于第一认证信息和第二认证信息验证存储器装置。
全文摘要
本发明提供了一种保护安全数据的存储器装置及认证存储器装置的方法。在一个实施例中,存储器装置包括第一存储器区域和第二存储器区域。所述第一存储器区域存储安全数据。外部装置不可访问所述第一存储器区域。第二存储器区域被配置为存储加密的安全数据。外部装置可访问第二存储器区域,并且所述加密的安全数据是第一存储器区域中的安全数据的加密版本。
文档编号G06F21/79GK103164666SQ201210520349
公开日2013年6月19日 申请日期2012年12月6日 优先权日2011年12月16日
发明者李宰范, 张炯硕, 金旻权, 李锡宪 申请人:三星电子株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1