升级存储卡使其具有防止拷贝安全内容和应用程序的安全性机制的制作方法

文档序号:6456895阅读:154来源:国知局
专利名称:升级存储卡使其具有防止拷贝安全内容和应用程序的安全性机制的制作方法
技术领域
本发明大体上涉及具有安全内容和拷贝保护机制的存储卡,且具体来说,涉及在升 级的情况下允许将安全内容转移到另一存储卡。
背景技术
存在防止数字内容的未经授权的拷贝和复制的许多不同类型的保护机制。这些机制 中的许多机制常常笼统地称为和当作一种数字权利管理("DRM")。已特定对阻止装置 之间的复制和转移做出很大努力。举例来说,不能将音乐或视听内容从一个iPod转移到 另一 iPod以便防止可能包括未经授权的复制的情况。类似地,在安全存储卡或USB快 闪驱动器(下文一起称为"卡")中,不能在卡之间移动受保护的内容。

发明内容
本发明的各种不同实施例允许用户在希望升级到较大容量卡时将一卡的内容移动 或转移到相等或较大容量的卡。所述相等或较大容量的卡被称为目标,且在受拷贝保护 的内容将被移动到目标的情况下,所述目标必须具有与源相比相等或更大的安全性级 别。不同方法用于在可移动受保护的内容之前确定目标的真实性。在卡的实施例中,其 中所述卡的固件和其它软件在除了其被加载到的原始卡以外的任何卡中不可操作,本发 明的实施例克服此障碍且将其重新绑定到新卡,使得可对经转移的受拷贝保护的内容解 密,此情形原本在经授权的升级以外被严格禁止。
本发明的额外方面、优势和特征包括在其示范性实例的以下描述中,应结合附图理 解此描述,且其中除非另外指示,否则在所有图中相同数字用于描述相同特征。


图1A为安全装置100的框图。
图1B为经由主机150网络连接到其它实体的安全装置100的示意图。
图2为分散化的图。
图3为图1A的存储器108的图。
图4A为说明从源升级到目标的图。
图4B为根据本发明的实施例进一步说明在升级期间如何将材料从源拷贝到目标的图。图5A根据本发明的实施例说明升级协议。 图5B根据本发明的实施例说明升级状态机的状态。 图5C为根据本发明的实施例说明升级过程的流程图。 图6为根据本发明的实施例说明认证过程的图。
具体实施例方式
图1A说明安全大容量存储装置100、安全系统的一个实施例。如先前所提及,在 安全快闪大容量存储存储卡或USB快闪驱动器(一起被称为"卡"或安全装置)中, 不能由一个以上卡使用受保护的内容。安全装置("SD") 100包含大容量存储存储器 108,其优选为NAND快闪类别;以及安全存储器控制器104,其经由数据线和控制线 106与存储器108通信。所述安全装置经由主机接口 102与主机150通信。所述安全存 储器控制器104控制去往/来自存储器108的所有数据存储和检索以及去往/来自主机150 的转移。安全存储器控制器104 (结合卡固件)向SD IOO提供安全性。存储器控制器包 含加密或密码引擎110和硬件密钥112,所述硬件密钥112优选位于密码引擎110内且 仅可由密码引擎110存取。硬件密钥112不同于软密钥,因为其不可由任何软件/固件存 取,不管所述软件/固件位于卡的内部或外部还是在卡的内部或外部运行。换句话说,硬 件密钥112并不意在用于加密用户文件。硬件密钥用于加密或签署在卡上运行的固件。 其有效地将卡的固件绑定到卡的特定硬件,使得固件在处于任何其它卡中的情况下将不 可用。如果不存在加密和签署硬件的特定控制器和加密引擎,则固件将不运行。此防止 可能允许未经授权的拷贝的欺诈性固件。对于安全系统的此实施例的其它信息,请参考 M.霍尔兹曼(M. Holtzman)等人的标题为"存储卡控制器固件的硬件驱动器完整性检 查 (Hardware Driver Integrity Check of Memory Card Controller Firmware)" 的第 11/285,600号美国专利申请案。
图IB说明SD 100经由(例如)因特网与网络连接到主机150的各种实体通信。可 在SDIOO、主机150,与各种联网实体之间进行安全事务或其它交互。
图2说明分散化,其为频繁用于将内容限制到特定装置的另一技术。图2中所展示 的分散化涉及软密钥,其为由卡固件和其它安全应用程序用以加密和解密内容且进而防 止内容和其它文件的未经授权的复制的密钥。将分散化数据120和主密钥124输入到密 钥产生算法中以产生软密钥128。分散化数据对于特定卡是唯一的,例如,卡的序号或 (可信的)ID,或可对于特定用户是唯一的。软密钥128是分散化数据的函数,且因此 也是唯一的,且因此,如果包含主密钥,则就全局来说未损害全部。分散化数据可包含一参考和一值。在此情况下,所述值优选用于图2中所展示的分散化功能。软密钥也可 被称为一类凭证,且可包含名称或标题和值。密钥产生函数可能对于在主机中和卡自身 中的不同应用程序而不同。将在下文更详细地论述例如安全应用程序142等卡应用程序。
卡的固件可具有防止用户文件的未经授权的复制或转移的任何数目的不同安全性 例程和机制。对于存在于SD 100中的其它安全性机制和技术的更多信息,请参考以下 专利申请案和专利,其所有内容以引用的方式并入本文中M'霍尔兹曼(M. Holtzman) 等人的第11/317,339号申请案"用于具有快闪大容量存储存储器的安全装置的安全且灵 活的系统架构(Secure Yet Flexible System Architecture for Secure Devices With Flash Mass Storage Memory)"; M'霍尔兹曼等人的第11/317,862号申请案"具有多个生命周期阶段 的安全存储卡(Secure Memory Card With Life Cycle Phases)"; M'霍尔兹曼等人的第 11/313,447号申请案"在流数据中加密/解密和错误校正方法(In Stream Data Encryption/Decryption and Error Correction Method ) " ; F'居甘德 禾斗伦布 (F. Jogand-Coulomb)等人的第11/313,536号申请案"用于通用内容控制的控制结构(Control Structure for Versatile Content Control)"; F-居甘德-科伦布等人的第11/314,055号申请案 "用于创建用于通用内容控制的控制结构的系统(System for Creating Control Structure for Versatile Content Control)"; B'卡瓦密(B. Qawami)等人的第11/322,766号申请案"用 于媒体内容的安全存储和传递的移动存储器系统(Mobile Memory System for Secure Storage and Delivery of Media Content)";以及M'霍尔兹曼等人的第11/314,030号申请案 "在流数据中加密/角牟密方法(In Stream Data Encryption/Decryption Method)"。不应将本 申请案限制于前述申请案中的那些安全性技术或机制。
在一些卡的情况下,也可在卡的寿命期间将安全应用程序142加载到卡上。这些应 用程序运行在系统固件上且可涉及对机密数据的额外操纵。举例来说,可添加允许密码 管理的应用程序以增加存储卡或USB快闪驱动器的功能性。关于此的更多信息,请参 考钢萨雷兹(Gonzalez)等人的标题为"自动加载凭证的大容量存储装置(Mass Storage Device With Automated Credentials Loading)"的第11/319,835号美国专利申请案。作为 另一实例,可将与医疗或财务记录相关的应用程序加载到卡中。这些软件或固件应用程 序由卡的处理器单独执行或与主机装置的处理器组合地执行,且不仅可处置机密信息, 而且可处理用于加密和保护卡的内容的秘密信息。因而,其可能深度互相关联且依赖卡 内的安全性机制和信息。在一些情况下,应用程序自身的安全性机制利用卡特定信息且 将不会在另一卡上起作用。应用程序自身也可为加密的且装置特定的,以便防止其被拷 贝和入侵。
10本质上,这些安全性机制旨在使得不可能将安全或"拷贝保护"的用户文件拷贝到 另一装置并在其后将其利用于其它装置。作为一实例,在一些卡中,不可从一卡或耦合 到所述卡的主机重放拷贝的歌曲。此情形在一些装置中具有遗憾的结果甚至受保护内 容的经授权的拥有者或被许可人也不能将内容从其装置中的一者移动到另一装置,即使 在移动之前和之后将仅存在内容的一个实例。
参看图3,展示大容量存储快闪存储器("MSM") 108的存储器空间。MSM108包 含对用户/主机为隐藏的系统分区或区域108A。存储在系统分区108A内的是系统固件 130和软密钥134。系统固件130为控制SD 100的所有数据存储操作并与主机装置150 的通信的操作固件。软密钥为可由装置的软件(包括固件)利用以加密和解密SD 100 内的数据的密钥。此不同于对于用户文件的一般加密/解密来说不可用的硬件密钥112, 如早先所提及。MSM 108也包含私人分区108B和用户分区108C。可将安全应用程序 142和受保护的数据138存储于私人分区108B中。受保护的数据可为任何类型的操作 参数或需要防止自由存取(此可能为在其被存储于用户分区108C中的情况)的其它数 据。安全应用程序142运行在系统固件130上,且可包含单独地或与由安全应用程序自 身所提供的密钥组合地利用软密钥134的安全性例程。这些应用程序142向卡提供多于 和超出典型数据存储操作的额外功能性,且可由用户在卡的寿命期间的任何时间添加。 此外,安全应用程序可在所述应用程序被加载时使用将仅在特定卡上起作用的对于卡为 特定的信息(例如,分散化数据120)。举例来说,安全应用程序可使用卡的序号或其它 分散化数据产生一次性密码,并接着将其提交用于用户或用户的账户的登录或验证。此 情形仅为一实例,且用于安全性或其它功能的任何数目的算法可至少部分基于卡特定数 据。可由用户逐渐加载所述应用程序。理想地,所有这些应用程序应被转移到目标卡且 在升级之后起作用,而不管基本硬件已改变的事实。此难题将在稍后解决。
存储于用户分区108中的数据通常为公共可用的。用户分区108C包含分散化数据 120、受拷贝保护的内容152,和未受保护的内容156。分散化数据120包含用于将一个 或一个以上主密钥分散化成由所述主密钥导出的若干密钥的信息,但其限于装置或用户 的子集,使得在包含所述导出的密钥的情况下,并不能盗印或自由拷贝特定文件的所有 实例。受拷贝保护的内容为限制转移的内容,或替代地为可被转移或拷贝但在没有适当 构件存取其的情况下没有用的内容。可由系统固件130、软密钥134,和/或安全应用程 序142提供安全性。在许多实施例中,通常加密受拷贝保护的内容,且尽管可拷贝经加 密的内容,但除非装置经认证或经授权且具有用以解密内容的适当密钥,否则不能对其 解密。图4A描绘其中源110S的存储器108S的内容被转移到目标100T的存储器108T的 升级过程。如早先所提及,在装置100的实施例中,每一特定控制器将具有至少将装置 100的系统固件130绑定到控制器的唯一硬件密钥。因此,最初加载到源100S中且绑定 到源100S的控制器和其它硬件的系统固件一旦被拷贝到目标100T中将不起作用。这意 味着卡100T将不按默认起作用。在某些实施例中,也可将安全应用程序142和软密钥 134绑定到唯一硬件,且对于未与其绑定的硬件来说不起作用或不可存取。此情形必须 在成功升级中加以克服。
图4B说明存储于源大容量存储存储器108S中的各种项目到目标大容量存储存储器 108T的转移。转移经由可为本地或远程定位的一个或一个以上主机装置而发生。如在步 骤402中可见,使用源HW密钥112S来解密系统分区108A的系统固件130和软密钥 134,使用会话密钥对其加密,且接着在目标处接收时使用会话密钥对其解密,在所述 目标处接着使用目标HW密钥112T对其加密。以此方式,解除系统固件和软密钥与源 HW的绑定且接着随后将系统固件和软密钥重新绑定到目标HW。会话密钥在数据被从 源输送到目标时保护数据,且优选使用其,但在某些实施例中其可能是不必要的和/或未 被利用。由HW目标密钥进行的加密优选在数据经过目标的加密引擎IIOT时 "在运行中"完成。对于"在运行中"加密/解密的其它信息,请参考M'霍尔兹曼等人的 第11/313,447号申请案,"在流数据中加密/解密和错误校正方法In Stream Data Encryption/Decryption and Error Correction Method "。
还将私人分区108B的受保护的数据138和安全应用程序从源转移到目标,如在步 骤404可见。如果使用HW密钥对其加密,则使用源HW密钥对其解密,使用会话密钥 对其加密以用于输送且随后解密,且再次使用目标HW密钥对其加密,如上文所描述。 在仅使用软密钥134或安全应用程序142的其它密钥对其加密的实施例中,优选接着使 用会话密钥对其加密且在输送之后使用所述会话密钥对其解密。再次,如上文所提及, 虽然会话密钥的使用是优选的,但在某些实施例中可将其省略,举例来说,在主机和输 送过程可发生于己知安全环境中或专用网络上的情形。
可使用会话密钥对分散化数据120加密或以未经加密的状态发送,如由步骤408所 表示。此对于未受保护的内容156来说也是如此。
还将受拷贝保护的内容152 (例如,音乐、电影和其它敏感内容,和其类似内容) 从源转移到目标,如由步骤412所表示。如先前所提及,由系统固件130单独地或与安 全应用程序142组合地提供内容的拷贝保护。使用软密钥134单独地或与由安全应用程 序142的提供者所提供的其它密钥一起对其加密。安全应用程序可经由固件的API调用系统固件的安全性例程和/或软密钥,或可利用与安全应用程序一起提供和由安全应用程 序提供的密钥。此外,安全应用程序可提供多于和超出由系统固件130和软密钥134提 供的加密的对额外层的加密。在任何情况下,可在将受拷贝保护的内容存储于目标中时 将其转移,或在输送期间使用会话密钥进行进一步加密,随后在到达目标时使用会话密 钥解密。
重要的是,不以未造成额外的未经授权的副本的方式和以受保护的内容在源和一个 或一个以上目标处不可用的方式复制受保护的内容。装置必须防止其自身发生中止的升 级,和其它入侵或攻击,同时确保源与目标在升级过程期间的无意失败的情况下仍起作 用。装置的状态机结合系统固件而实现此。
在某些实施例中,在升级已发生之后,目标将含有目标的原始分散化数据,和源的 分散化数据。此在目标的内容与源的预先存在的内容合并的情况下尤其有用。在某些实 施例中,类似于分散化数据,升级之后的软密钥和/或凭证可包括目标和源两者的那些软 密钥和/或凭证。
图5A根据本发明的实施例说明升级协议。从源100S到目标IOOT的转移经由通信 代理,所述通信代理可在任何地方包含从单一计算机到若干个联网的计算机。举例来说, 通信代理可包含经由因特网耦合到若干其它计算机且最终耦合到目标的主机150。升级 也可循序地发生,其中源数据在其被加载于主机上之前被临时远程地存储一段时期。
协议包含5个主要阶段或步骤。这些与状态机的状态相关。第一阶段为用于升级的 装置的设置,如在步骤450中所见。代理将准备源和目标两者以发送/接收数据。其每一 者将进而确认其是准备好的。
协议的第二状态/步骤为认证,如在步骤460中所见。此可包含对目标的认证,或替 代性地包含对源和目标两者的认证。在一些实施例中,认证包含其中源与目标两者彼此 认证的相互认证。此类型的认证包含密钥交换。稍后将关于图5C和图6论述认证的一 些优选方法。
协议的第三状态/步骤为升级转移自身,如在步骤470中所见。作为此状态的部分, 代理指令目标发送安全数据库,安全数据库包含系统固件130、软密钥134,和任选地 受保护的数据138和安全应用程序142(如果存在)。源接着经由代理将安全数据库的副 本发送到目标。代理接着从源获取分区图且确定是否应针对目标调整分区图的大小。目 标将具有与源相等或更大的存储容量,且可能由于任何数目的原因而需要更改分区图和
/或调整分区图的大小。此外,用户需求和输入可决定调整分区的大小且因此更改分区图。 如果不需要调整图的大小,则将从源检索分区数据且将其传递到目标而无需首先进行更新。
协议的第四状态/步骤为拷贝确认,如在步骤480中所见。代理请求目标确认已成功 完成拷贝操作,且一旦完成,其通知源成功完成了拷贝操作。
协议的第五状态/步骤为源的擦除,如在步骤490中所见。所述擦除将仅在拷贝操作 成功的情况下进行。否则,存在源或目标将均不具有存储器的完整内容的风险。代理请 求源确认已完成擦除,且当接收到确认时,通知目标。利用此信息,可使用目标。在一 些实施例中,此包含启动步骤。
图5B为说明装置100的卡升级状态机在其涉及图5A所展示的协议或其它升级协议 或过程时的状态的状态图。状态机和升级协议经设计以确保如果升级过程由于任何原因 被中止,则升级可重新开始而不破坏任何安全性,且确保在升级由于一些原因而成为不 可能的情况下,目标和源两者仍可用。箭头上的文本描述触发状态改变的事件。如果箭 头处不存在任何文本,则当上述协议阶段/状态结束时,状态改变发生。当装置或卡通电 之后,检查状态旗标以了解卡的状态是否正常,如在菱形404中所见。如果状态不正常, 则此指示装置正从失败的升级恢复,且装置将尝试恢复可能为失败的认证的认证或向目 标重新认证,如由框406所指示。装置将在认证(恢复)不成功的情况下,尝试重新认 证有限数目的次数。如果认证尝试超过预定阈值,则装置将回复到正常模式/状态。作为 认证过程的部分,将读取装置的可信ID或(替代性地)序号。如在菱形408中所见, 如果从装置读取的可信ID与所存储的可信ID相同,则将检査状态旗标,如在菱形412 中所见。如果旗标指示卡处于升级状态,则确定卡处于升级模式,如在框432中所见。 如果其未处于升级模式,则接着将确定其是否处于拷贝确认状态,如在菱形416中所见。 如果其处于拷贝确认状态/模式,则将如此指示状态,如由框440所表示。如果不是,则 其将处于擦除状态或将替代性地被设置到擦除状态,如由框440所表示。最后,卡将达 到擦除状态,如由框444所表示。
或者,如果如菱形404中所确定,确定状态旗标为正常,如由框420所表示,且触 发升级事件,则将状态推进到卡设置状态,如由框424所表示。此对应于图5A的状态/ 步骤450。下一状态为认证状态,如在框428中所表示。卡将在处于此状态或卡设置状 态时被指派为源或目标的角色。如果认证在图5A的步骤460中成功,举例来说,则将 更新状态以反映装置处于卡升级模式/状态中,且将存储卡的可信ID (或序号)。下一状 态为如由框436所表示的拷贝确认状态(对应于图5A中的步骤/阶段480)。 一旦接收拷 贝确认,则装置转变到擦除状态,如由框440所表示,且因此确认擦除,如由框444所 表示。接着将状态推进到正常使用状态,如由框420所表示。因此,装置再次为正常使
14用作好准备。
图5C为根据本发明的实施例说明卡升级过程的流程图。在步骤502中,将源插入 到插座中或在其已被插入的情况下以其它方式进行选择。在可恰好在插入或选择源卡和 执行各种随后步骤之后发生的步骤504中,插入和/或选择目标。在步骤506中,请求升 级或转移。接着,如在步骤508中所见,主机接收升级请求且将目标证书传递到源。源 接着证实目标有资格充当目标且其支持升级。目标必须具有与源相同或更大的容量且具 有相同或更高级别的安全性。其它标准对于升级可能也有必要。如在步骤512中所见, 如果目标和源有资格用于升级,则升级请求经确定为有效且源接着证实目标为可信的装 置。此通过对照证书颁发机构(例如,PKI证书颁发机构)检査证书来完成。然而,如 果请求并不有效,则将中止升级,如由步骤514所表示。如果目标可信,如步骤518中 所确定,则源在步骤520中封装安全性项目,其至少包含软密钥134且也可包含系统固 件130、受保护的数据138,和安全应用程序142。其也可任选地包含受保护和/或未受 保护的内容和分散化数据中的一些或全部,但这些预防措施对于内容来说通常并非必需 的。源将接着执行安全性封装的检查和或替代性地以密码签署封装(作为步骤520的部 分),然后在步骤522中使用目标公用密钥对封装加密。
在步骤524中,源使用其私人密钥签署经加密的封装且将源证书附加到经加密的封 装。在步骤526中,将所述经加密的封装和证书经由主机或其它代理传递到选定的目标。 接着在步骤528中,目标(例如)通过与PKI证书颁发机构进行核査来证实源为可信的 装置。如果在步骤530中,发现源并非为可信的源,则中止升级/转移,如在步骤532 中所见。或者,如果源为可信的,则在步骤534中,目标接着检查数据完整性且将结果 经由主机传回到源。此检査可包含比较来自步骤520的检查和或密码签名。如果在步骤 536中封装完整性未验证通过,则将再次中止过程,如在步骤538中所见。如果封装的 完整性验证通过,则在步骤540中,源将接着经由主机将启动码传递到目标,且在步骤 542中,将从源删除经封装的安全性项目。在步骤546中,源使用所述启动码拆开封装 且在必要情况下使其与卡的预先存在的内容合并。在步骤548中,接着将卡的内容(换 句话说,用户分区108C中的受保护的和/或未受保护的文件)从源拷贝到目标。由于经 加密的受拷贝保护的文件在没有适当密钥的情况下没有用,因此可对其自由拷贝而不需 要为安全封装提供的预防措施。
图6说明用于升级过程的认证技术的一实施例。也可使用此项技术中已知的其它认 证技术,且本发明应绝不受限于此技术和先前所描述的特定技术。图6技术中的技术创 建会话密钥以作为副产品,所述会话密钥可用作关于图4B所描述的会话密钥。图6说明利用AES密钥的双重挑战(double challenge)方法。所述方法包含验证阶 段605,所述验证阶段605包含在装置中的起始装置中产生第一随机数并将其传递到 所述装置中的响应装置;在所述响应装置处加密所述第一随机数;以经加密的形式将第 一随机数传递回到所述起始装置;以及随后在起始装置处解密经加密的第一随机数且将 其与所产生的数进行比较。此可参看随机数A (标记为604)。所述方法迸一步包含在 响应装置处产生第二随机数且将其传递到起始装置;对其加密;以及接着以加密方式将 其传递回到响应装置,且将其与所产生的数进行比较。此可参看随机数C,其在图6中 标记为606。
还在图6中说明安全通道创建阶段615。建立安全通道包含在装置中的起始装置 处产生第三随机数;在起始装置处对所述第三随机数加密;将第三随机数传递到响应装 置在响应装置处对其解密;在响应装置处产生第四随机数;以及在响应装置处对经解 密的第二随机数和第三随机数执行不可兼析取操作(exclusive disjunction operation)。此 可参看随机数B (标记为608),和随机数D (标记为610)。所述不可兼析取操作被标记 为612和614。
一旦完成认证,可在一些实施例中基于不可兼析取操作的结果来加密早先所描述的 安全数据库和分区图。此结果为会话密钥616或616'。
尽管已关于本发明的示范性实施例描述了本发明的各个方面,但应理解,本发明有 权在所附权利要求书的整个范围内受到保护。
权利要求
1.一种保护快闪存储驱动器上的数据且其后在被请求的情况下将所述受保护的且正常不可转移的数据从源快闪存储驱动器转移到目标快闪存储驱动器的方法,所述方法包含在所述源驱动器中提供硬件密钥,所述硬件密钥在单一驱动器的寿命期间是不可转移的且唯一地与所述驱动器相关联,所述硬件密钥进一步不可由所述驱动器的任何软件存取;使用所述硬件密钥对所述源驱动器的操作固件加密;将所述硬件加密的操作固件存储于所述源驱动器的系统分区中,所述系统分区对于主机装置来说是隐藏的和不可存取的;将一组基于软件的加密密钥存储于所述源驱动器的所述系统分区中;以及接收将所述源驱动器的内容转移到所述目标驱动器的请求,所述内容包含用户文件和,在存在的情况下,所述源驱动器的应用程序;确定所述目标驱动器的真实性;如果确定为真实,则使用所述源驱动器特定的所述硬件密钥对源卡的所述操作固件解密;在所述源驱动器与目标驱动器之间建立安全会话且在所述安全会话期间将所述操作固件从所述源驱动器转移到所述目标驱动器;以及使用所述目标驱动器中的硬件密钥对所述操作固件重新加密,所述目标硬件密钥在所述目标驱动器的寿命期间是不可转移的且唯一地与所述目标驱动器相关联,进而唯一地使得所述目标驱动器能够利用所述操作固件。
2. 根据权利要求1所述的方法,其中将所述经加密的应用程序存储于所述源快闪存储 驱动器的所述快闪存储器中包含将所述应用程序存储于隐藏分区中。
3. 根据权利要求1所述的方法,其中可由主机装置自由存取所述经加密的所存储文 件,且其中不具有适当软件密钥的主机装置因此可自由拷贝所述文件但不能对其解 密。
4. 根据权利要求1所述的方法,其中在所述安全会话期间将所述操作固件从所述源驱 动器转移到所述目标驱动器包含在转移之前,使用独立于所述源驱动器和目标驱动器的所述硬件密钥和软件密钥 的会话密钥对所述经解密的操作固件加密;在到达所述目标时使用所述会话密钥对所述操作固件解密;以及接着 在所述目标驱动器中使用硬件密钥对所述操作固件重新加密。
5. 根据权利要求1所述的方法,其进一步包含使用所述硬件密钥对所述组基于软件的 加密密钥加密。
6. 根据权利要求1所述的方法,其中未适当绑定到所述硬件的固件不能存取所述驱动 器的软密钥或其它内容。
7. 根据权利要求1所述的方法,其进一步包含将所述硬件加密的操作固件存储于所述 目标驱动器的系统分区中。
8. 根据权利要求1所述的方法,其中在从所述源驱动器到所述目标驱动器的所述转移 期间,将所述操作固件、 一组基于软件的加密密钥、应用程序和用户文件中的一者 或一者以上在从所述源驱动器到所述目标驱动器的路线上临时存储于除所述源驱 动器或所述目标驱动器以外的中间存储单元中。
9. 根据权利要求1所述的方法,其进一步包含使用所述组基于软件的加密密钥中的一 者对运行于所述源驱动器上的软件应用程序加密。
10. 根据权利要求9所述的方法,其进一步包含将所述经加密的应用程序存储于所述源快闪存储驱动器的所述快闪存储器中,所 述应用程序具有独立于所述源存储驱动器的所述硬件密钥的应用程序特定安全性 机制;使用所述经加密的应用程序的所述应用程序特定安全性机制对用户文件加密; 将使用所述应用程序特定机制保护的所述用户文件存储于所述源快闪存储驱动 器的所述快闪存储器中;不时地从所述主机装置的文件管理器接收存取用户文件的请求;以及 当通过以下操作请求时,存取所述用户文件使用所述操作固件,使所述文件与用于存取所述文件的所述应用程序相关;调用所述应用程序的所述应用程序特定安全性机制。
11. 根据权利要求7所述的方法,其进一步包含在验证了所述目标驱动器的所述真实性的情况下,将所述组基于软件的加密密钥 和所述应用程序从所述源驱动器转移到所述目标驱动器;以及以经加密的格式将所述应用程序存储于所述目标快闪存储驱动器的所述快闪存 储器中。
12. 根据权利要求11所述的方法,其进一步包含将所述目标驱动器的所述用户文件转移到所述存储驱动器。
13.根据权利要求ll所述的方法,其进一步包含验证已将所述操作固件、所述组基于软件的加密密钥和所述应用程序从所述源驱 动器转移到所述目标驱动器。
14.根据权利要求13所述的方法,其进一步包含在所述验证成功的情况下,从所述源驱动器删除所述用户文件。
15. 根据权利要求13所述的方法,其进一步包含在验证成功的情况下启动所述目标卡。
16. 根据权利要求1所述的方法,其中所述组基于软件的加密密钥中的至少一者是唯一 识别所述源驱动器的信息的函数。
17. 根据权利要求16所述的方法,其中唯一识别所述源驱动器的所述信息包含所述驱 动器的序号。
18. 根据权利要求1所述的方法,其中所述组基于软件的加密密钥中的至少一者是与所 述驱动器的用户相关联的信息的函数。
19. 根据权利要求18所述的方法,其中可在驱动器之间转移与所述用户相关联的所述 信息。
20. 根据权利要求19所述的方法,其屮将使用所述应用程序特定机制保护的所述用户 文件存储于所述源快闪存储驱动器的所述快闪存储器中进一步包含响应于应用程 序编程接口的请求而利用所述基于软件的加密密钥中的一者或一者以上对一个或 一个以上文件加密。
21. 根据权利要求1所述的方法,其中所述应用程序特定安全性机制利用分散化方法, 所述分散化方法是唯一识别所述源驱动器的信息的函数。
22. 根据权利要求21所述的方法,其中如果应用程序依赖于所述源驱动器特定的信息 来向远程服务器进行认证,且所述应用程序被转移到目标驱动器,则还将所述源驱 动器特定的用于认证的所述信息转移到所述目标驱动器。
23. —种保护快闪存储驱动器上的数据且其后在被请求的情况下将所述受保护的且正 常不可转移的数据从源快闪存储驱动器转移到目标快闪存储驱动器的方法,所述方 法包含在所述源驱动器中提供硬件密钥,所述硬件密钥在单一驱动器的寿命期间是不可 转移的且唯一地与所述驱动器相关联;使用所述硬件密钥对所述源驱动器的操作固件加密;将所述硬件加密的操作固件存储于所述源驱动器的第一隐藏分区中,所述第一隐藏分区不可由主机装置存取;将一组基于软件的加密密钥存储于所述源驱动器的所述第一隐藏分区中; 使用所述组基于软件的加密密钥中的一者对应用程序加密;将所述经加密的应用程序存储于所述源快闪存储驱动器的所述快闪存储器中,所 述应用程序具有独立于所述源存储驱动器的所述硬件密钥的应用程序特定安全性 机制;使用所述经加密的应用程序的所述应用程序特定安全性机制对用户文件加密;以及将使用所述应用程序特定机制保护的所述用户文件存储于所述源快闪存储驱动 器的所述快闪存储器中。
24. —种从第一便携式大容量存储装置升级到第二便携式大容量存储装置的方法,所述 第一便携式大容量存储装置和第二便携式大容量存储装置均具有用以防止所述装 置上存储的内容的副本在被拷贝的情况下在任何其它装置上操作的固件,所述方法 包含(a) 确定所述第二便携式大容量存储装置具有等于或比所述第一便携式大容量存 储装置的容量大的容量;(b) 确定所述第二便携式大容量存储装置是包含与所述第一便携式大容量存储装 置兼容的安全性机制的安全类型;(c) 如果成功确定(a)和(b),则在所述第一便携式大容量存储装置与第二便 携式大容量存储装置之间建立安全通道且验证所述第二便携式大容量存储装置的 真实性;(d) 如果在步骤(c)中验证了所述真实性,则(e) 将操作固件和安全性参数从所述第一便携式大容量存储装置拷贝到所述第二 便携式大容量存储装置;(f) 在将所述第一便携式大容量存储装置的分区图转移到所述第二便携式大容量 存储装置之前,确定是否调整所述分区图的大小;(g) 将所述分区图从所述第一便携式大容量存储装置拷贝到所述第二大容量存储 装置;(h) 对于所述分区图中的每一分区,将分区数据从所述第一便携式大容量存储装 置拷贝到所述第二便携式大容量存储装置;(i) 确认步骤(a)到步骤(h)的完整执行;以及(P如果在步骤(i)中未接收到确认,则将所述第一便携式大容量存储装置置于 其保持不可用的模式中直到从步骤(i)接收到所述确认为止。
25. 根据权利要求24所述的方法,其进一步包含在步骤(i)中接收到确认的情况下从 所述第一便携式大容量存储装置擦除所述操作固件和安全性参数以及所述分区图 和分区数据。
26. 根据权利要求24所述的方法,其进一步包含验证所述第一便携式大容量存储装置 的所述真实性,进而完成使所述第一装置和所述第二装置两者彼此认证的双重挑战 过程。
27. 根据权利要求24所述的方法,其中验证所述真实性包含在所述装置中的起始装置中产生第一随机数并将其传递到所述装置中的响应装 置;在所述响应装置处对所述第一随机数加密;以经加密的形式将所述第一随机数传递回到所述起始装置;以及随后 在所述起始装置处对所述经加密的第一随机数解密且将其与所产生的所述数进 行比较。
28. 根据权利要求27所述的方法,其中验证所述真实性进一步包含在所述装置中的响应装置中产生第二随机数并将其传递到所述装置中的所述起 始装置;在所述起始装置处对所述第二随机数加密;以经加密的形式将所述第二随机数传递回到所述响应装置;以及随后 在所述响应装置处对所述经加密的第二随机数解密且将其与所产生的所述数进 行比较。
29. 根据权利要求24所述的方法,其中建立所述安全通道包含在所述装置中的所述起始装置处产生第三随机数; 在所述起始装置处对所述第三随机数加密; 将所述第三随机数传递到所述响应装置; 在所述响应装置处对其解密; 在所述响应装置处产生第四随机数;以及在所述响应装置处对所述经解密的第三随机数和所述第四随机数执行不可兼析 取操作。
30. 根据权利要求29所述的方法,其进一步包含基于所述不可兼析取操作的结果使用加密函数对安全数据库和分区图加密。
31. 根据权利要求24所述的方法,其中验证所述真实性包含使用匿名私人密钥验证匿名公用密钥,所述匿名密钥不能提供身份的证明;以及 通过确定所述装置具有可信的颁发机构的签名来验证所述装置的所述身份。
32. 根据权利要求31所述的方法,其中所述匿名公用和私人密钥包含RSA密钥对。
33. 根据权利要求32所述的方法,其中将所述匿名公用密钥包含在PKI证书中。
34. —种在不允许使用从相同类型的另一驱动器拷贝的受保护的内容的快闪存储器驱 动器中用于将操作固件和受保护的内容从源驱动器转移到目标驱动器以使得所述 目标驱动器可利用所述固件并存取从所述源驱动器转移的所述内容的方法,所述方 法包含致使从所述目标驱动器检索证明所述目标驱动器的身份的证书;致使将所述目标驱动器证书传输到所述源驱动器;在所述源驱动器处验证所述目标驱动器证书;致使使用内容密钥对所述受保护的内容加密并将其从所述源驱动器传输到所述 目标驱动器且其后立即将所述源驱动器锁定在其中不再允许使用所述受保护的内 容的状态中;致使使用目标公用密钥对所述内容密钥加密;致使将所述经加密的内容密钥传输到所述目标;以及致使将所述受保护的内容存储于所述目标中。
35. 根据权利要求34所述的方法,其进一步包含传输对已将所述内容存储于所述目标驱动器中的经签署的确认;以及 致使从所述源驱动器擦除所述受保护的内容。
36. 根据权利要求35所述的方法,其中所述经签署的确认包含使用所述目标私人密钥 加密的材料。
37. 根据权利要求34所述的方法,其中经由中间主机将所述目标驱动器证书传输到所 述源驱动器。
38. 根据权利要求34所述的方法,其中在将所述目标插入到主机装置中之后触发致使 从所述目标驱动器检索证明所述目标驱动器的所述身份的证书。
39. 根据权利要求34所述的方法,其中经由中间主机将所述目标驱动器证书传输到所 述源驱动器。
全文摘要
一种安全快闪存储卡或快闪驱动器保护用户内容不受未经授权的复制。然而,甚至受保护的用户内容也可被其合法拥有者或被许可人从一个快闪卡或驱动器移动到另一快闪卡或驱动器。另外,也可移动可随时间被添加到所述快闪卡以便将额外功能性添加到所述卡的安全固件应用程序,但其中许多安全固件应用程序是装置特定的且还经设计以仅操作于一件特定硬件上。
文档编号G06F21/00GK101589398SQ200780048722
公开日2009年11月25日 申请日期2007年12月18日 优先权日2006年12月28日
发明者法布里斯·约刚-库仑, 迈克尔·霍尔茨曼 申请人:桑迪士克股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1