CN100349083C - 在数据存储阅读器产品中存储秘密信息的实施方法 - Google Patents

在数据存储阅读器产品中存储秘密信息的实施方法 Download PDF

Info

Publication number
CN100349083C
CN100349083C CNB038051214A CN03805121A CN100349083C CN 100349083 C CN100349083 C CN 100349083C CN B038051214 A CNB038051214 A CN B038051214A CN 03805121 A CN03805121 A CN 03805121A CN 100349083 C CN100349083 C CN 100349083C
Authority
CN
China
Prior art keywords
password
key
reader
content
stored
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.)
Expired - Fee Related
Application number
CNB038051214A
Other languages
English (en)
Other versions
CN1639664A (zh
Inventor
罗伯特·C·张
李平
法施德·萨伯特-沙吉
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.)
SanDisk Corp
Original Assignee
SanDisk Corp
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 SanDisk Corp filed Critical SanDisk Corp
Publication of CN1639664A publication Critical patent/CN1639664A/zh
Application granted granted Critical
Publication of CN100349083C publication Critical patent/CN100349083C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • 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
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/34User authentication involving the use of external additional devices, e.g. dongles or smart cards
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2107File encryption

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Storage Device Security (AREA)

Abstract

本发明揭示用于将诸如装置密钥等保护内容存储于一阅读器上的方法及装置。根据本发明的一方面,一种用于对一包括一存储器且通过一适配器与一主机系统耦连的存储器存储装置(该存储器存储装置包含一存储器)进行访问的方法包括:自适配器获取一密钥。该密钥既适用于对设置存储于存储器中的信息进行加密,亦适用于对已加密的信息进行解密。该方法亦包括:使用密钥对信息进行处理。在一实施例中,将信息存储于存储器中,并通过处理存储于存储器中的信息来获得该信息,以便可使用密钥对信息进行解密。

Description

在数据存储阅读器产品中存储秘密信息的实施方法
技术领域
概括而言,本发明涉及大容量数字数据存储系统,更具体而言,本发明涉及用于将实质上控制着对一存储卡内容访问的一密钥独立于该存储卡进行存储的系统及方法。
背景技术
目前,诸如闪速存储系统等非易失性存储系统的应用日益广泛,这是因为此种非易失存储系统的实体尺寸紧凑,而且具有重复性再编程的能力。闪速存储系统紧凑的实体尺寸有利于此种存储系统用于各种日益流行的装置内。使用闪速存储系统的装置包括(但并不限于):数字摄像机、数字摄像放像机、数字音乐播放器、手持式个人计算机及全球定位装置。闪速存储系统所包含的非易失性存储器可重复性再编程的能力使人们可使用及重用闪速存储系统。
诸如闪光卡等闪速存储系统或非易失性存储装置通常与诸如个人计算机等主机系统接口。首先参照图1,其展示一包括一非易失性存储装置的通用主机系统。主机或计算机系统100通常包括一系统总线104,该系统总线104可使一微处理器108、一随机存取存储器(RAM)112及各输入/输出电路116进行通信。应了解,主机系统100通常还可包含其它元件,例如显示装置及联网装置,此处出于图解说明目的,未展示出这些元件。
一般而言,主机系统100所能捕获的信息包括(但并不限于):静止图像信息、音频信息及视频图像信息。这些信息可实时捕获,并可以无线方式传送至主机系统100。虽然主机系统100实质上可为任一系统,但主机系统100通常为一如下系统:数字摄像机、视频摄像机、蜂窝式通信装置、音频播放器或视频播放器。然而,应了解,实质上,主机系统100一般而言可为任一种能够存储数据或信息及检索数据或信息的系统。
主机系统100还可为一仅捕获数据或仅检索数据的系统。亦即,主机系统100可为一用于存储数据的专用系统,或者可为一用于读取数据的专用系统。例如,主机系统100可为一个仅设置用于写入或存储数据的存储记录器。或者,主机系统100可为一诸如MP3播放器等通常设置用于读取或检索数据而非捕获数据的装置。
非易失性存储装置120通常为一可装卸的非易失性存储装置,其与总线104进行接口以便存储信息。通常,非易失性存储装置120通过接口130与总线104通信。所属领域的技术人员应了解,接口130可用于降低总线104上的负荷。接口130通常可为一阅读器或一适配器。
非易失性存储装置120包含非易失性存储器124及一存储控制系统128。非易失性存储装置120可实施于单个芯片或一电路小片上。另一选择为,非易失性存储装置120可实施于一多芯片模块上,或实施于多个可共同用作非易失性存储装置120的分立元件上。
非易失性存储器124或磁心设置用于存储数据,以便可根据需要来访问数据。亦可根据需要,擦除存储于非易失性存储器124内的数据,当然,应了解,非易失性存储器124内的某些数据是不可擦除的。通常,由存储控制系统128来控制存储数据、读取数据及擦除数据的过程。存储控制系统128可管理非易失性存储器124的运行。
虽然上文笼统地将非易失存储装置120描述为包括一存储控制系统128,亦即包括一存储控制器,但应了解,并非所有非易失性存储装置均包括控制器。一般而言,非易失性存储装置可包括(但并不限于):PC卡、小型闪光卡、多媒体卡、安全数字卡、智能媒体卡及记忆棒卡。
通常,为保护非易失性存储装置120中的内容,例如为防止个人试图访问存储于非易失存储器124中的其无权访问的信息,通常对非易失性存储装置120及在主机100上运行的使人们能够访问非易失性存储器124的软件(未图示)二者或其中之一设置密钥或口令。图2为一主计算机系统、一接口及一带有受保护内容的存储装置的图解表示。计算机系统202通常通过一阅读器2 30或一接口与一存储卡220进行通信。阅读器230通常用作计算机系统202与存储卡220之间的接口,以使计算机系统202能够将数据存储于存储卡220的存储器224中并自存储器224检索数据。亦即,当计算机系统202与存储卡220进行通信以便在二者之间传送数据时,通信是通过阅读器230进行的。阅读器230可包括一端口或一接受器(未图示),此端口或接受器使存储卡220以可通信方式与阅读器230进行接口,从而使阅读器2 30能够实现存储卡220与计算机系统202之间的通信。
存储卡220包括存储器224及一控制器228。存储器224可包括若干存储元件、块或单元,这些存储元件、块或单元用于存储若干位信息。控制器228与存储器224进行接口,以便于存储器224中数据的存储及检索。阅读器230可为例如通用串行总线(USB)阅读器或个人计算机(PC)卡片阅读器,其包括阅读器固件232,该阅读器固件232使阅读器230能够运行与阅读器230的作业相关的指令。
存储器224设置用于存储一密钥240,密钥240用于对存储于存储器224中的内容进行访问或根据需要进行解密。用户在希望访问存储器224的内容时,可运行计算机系统202上的软件242,此软件242容许用户输入一口令。然后,访问密钥240,且当输入口令与密钥240一致时,即允许访问存储器224的内容。在某些情况下,随后使用密钥240将存储器224中的内容解密。另一选择为,可视需要在软件242中存储一密钥250,以便当确定出密钥250与密钥240实质匹配时,或确定出密钥250适用于访问存储器224的内容时,允许访问存储器224的内容。通常,根据需要,使用密钥240或密钥250对存储器224中的内容进行解密。
下文将参照图3来阐述与访问一受口令有效保护的存储卡相关的步骤。对一存储卡所包含存储器进行访问的过程300开始于步骤304,在该步骤中,将一存储卡置于一与一计算机相连的阅读器中。然后,在步骤308中,运行该计算机上使计算机能够通过阅读器访问该存储卡的软件。通常,在步骤312中,将一口令输入软件中。在步骤316中,确定所输入口令是否有效,亦即确定所输入口令是否与一与存储卡内容相关联的密钥一致或确定所输入口令是否容许访问该密钥。
若在步骤316中确定该口令有效,则该流程转至步骤324,在步骤324中,容许访问存储卡内的存储器,并进而容许访问存储器中的内容。在容许访问后,访问存储器的过程即告结束。或者,如果在步骤316中确定该口令无效,则表明不容许访问卡内的存储器。因此,在步骤320中,确定是否放弃对存储卡进行访问的尝试。若确定不放弃尝试,则该流程转回至步骤312,在步骤312中输入一口令。而若确定放弃尝试,则实际终止对存储器进行访问的过程。
图4为一流程图,其展示与通过对比密钥来访问一存储卡相关的步骤。对存储器进行访问的过程400开始于步骤404,在步骤404中,将一存储卡置于一与一计算机进行通信的阅读器内。在将存储卡置于阅读器内后,即可在步骤408中在计算机上运行软件,来尝试对存储卡进行访问。在步骤412中,确定存储于计算机上(例如软件中)的密钥的位置或以其它方式访问该密钥。在确定出存储于计算机上的密钥的位置之后,在步骤416中,确定存储于存储卡内存储器中的密钥的位置。然后,在步骤420中,比较此等密钥,以确定此等密钥是否匹配。若确定出此等密钥相互匹配,则在步骤424中有效地容许访问存储卡内存储器的内容,此时对存储器的访问过程结束。或者,若在步骤420中确定出此等密钥不相匹配,则表明拒绝对存储器进行访问,且在步骤428中产生一错误消息。一旦产生错误消息,对存储器的访问过程实际上即告结束。
通过要求使用一有效口令或一匹配密钥来保护存储卡内容的做法通常可有效地防止未经授权的个人对存储卡内容进行访问。然而,未经授权的个人,例如“黑客”,可访问存储在存储卡上的密钥,进而访问存储卡中的内容。此等个人还可窃取或以其它方式访问存储于计算机软件或硬件中的密钥。也就是说,若一未经授权的个人煞费苦心、非法闯入存储卡或计算机,其就有可能获得存储于存储卡或计算机中的密钥或口令信息。
因此,人们期望具有一种如下系统:其能够保护存储卡中的内容,从而使未经授权的个人不可能成功地获得能使其有效访问存储卡内容的密钥。具体而言,人们需要一种容许在一阅读器中而非在一存储卡中存储一可实质上保护存储卡内容的口令或密钥的系统及方法。
发明内容
本发明涉及一种能够将诸如装置密钥等保护内容存储在一阅读器中的系统及方法。根据本发明的一个方面,一种对一包括一存储器且通过一适配器与一主机系统相连的存储器存储装置(该存储器存储装置包括一存储器)进行访问的方法包括:自适配器获取一密钥。此密钥既适用于对设置为存储在存储器中的信息进行加密,也适用于对已加密信息进行解密。该方法还包括:使用该密钥来处理信息。在一实施例中,将信息存储于存储器中,并通过处理该信息获得存储于存储器中的该信息,以便可使用密钥来解密该信息。
在另一实施例中,自适配器获取密钥包括:向适配器提供一第一口令,确定该第一口令何时有效,及当确定出该第一口令有效时,对与适配器相关的内容进行解码。此等内容包括密钥,且对此等内容进行解码包括实质上识别出密钥。在此一实施例中,确定第一口令何时有效可包括:将第一口令与一第二口令进行比较,以确定第一口令是否与存储于适配器中的第二口令实质相同。
将诸如密钥等保护信息或内容存储于阅读器上而不存储于存储卡或主计算机中,通常会提高存储卡的安全性。例如,当将密钥存储于主计算机上时,有经验的未经授权用户或黑客可能能够轻易地识别出密钥,并进而对存储于存储卡上的信息进行解密。同样,当将密钥存储于存储卡中时,可通过下载存储卡内容并分解这些内容来识别出密钥,从而获得密钥。通过将密钥存储于阅读器上,以便在除存储卡与阅读器进行接口的情况外无法将使用密钥的存储卡“解锁”,可减小以未经授权方式获取存储卡中所存储信息的可能性。此外,阅读器可能更难于非法闯入,因此黑客能够获取密钥的可能性可能会更小。
根据本发明的另一方面,一种系统包括:一存储器存储装置,其包括一存储器;及一适配器,其与存储器存储装置相接口并存储一与存储器存储装置相关联的密钥。在一实施例中,该系统还包括一主机,该主机通过适配器与存储器存储装置进行通信。在此一实施例中,主机还包括一用于访问密钥的构件或机构。
根据本发明的再一方面,一种阅读器包括:一接受器,其用于接纳一存储卡;一接口,其能使阅读器与一主机进行通信;及一区域,其用于存储实质上受口令保护的内容。在一实施例中,这些内容包括一密钥,该密钥能够使信息实质上写入存储卡中或实质上自存储卡中读出。在另一实施例中,阅读器包括一口令处理装置,该装置用于通过接口接收一口令。当口令正确时,将这些内容设置为由主机通过接口自该区域中检索出。
根据本发明的又一方面,一种用于访问一与一主机进行通信并设置用于接纳一存储卡的阅读器上受保护内容的方法包括:确定阅读器上与支持受保护内容相关联的功能何时启动,及当确定出与支持受保护内容相关联的功能已启动时,访问阅读器中一设置用于存储受保护内容的区域。
在阅读下文详细说明及研究各附图后,将易知本发明的此等及其它优点。
附图说明
结合附图参阅下文说明,可最佳地了解本发明,附图如下:
图1为一包括一非易失性存储装置的通用主机系统的图示。
图2为一主计算机系统、一接口及一存有保护内容的存储装置的图示。
图3为一流程图,其展示与对一受到口令有效保护的存储卡进行访问相关的步骤。
图4为一流程图,其展示与通过对比密钥来访问一存储卡相关的步骤。
图5为一根据本发明一实施例的系统的图示,在该系统中,一阅读器包含保护内容。
图6为一根据本发明一实施例的系统的图示,该系统包括一具有保护内容并使用一口令机制的阅读器。
图7a为一根据本发明一实施例的流程图,其展示与使用一阅读器中的保护内容来访问一存储卡相关的步骤。
图7b为一根据本发明一实施例的流程图,其展示与访问一存储卡的存储器(例如图7a中的步骤728)以将信息写入该存储器相关的步骤。
图7c为一根据本发明一实施例的流程图,其展示与访问一存储卡的存储器(例如图7a中的步骤728)以读取该存储器中至少某些数据相关的步骤。
图8为一根据本发明一实施例的流程图,其展示与一种通过阅读器访问存储卡的方法相关的步骤,其中该阅读器存储有保护内容并使用口令机制。
图9a为一根据本发明一实施例的命令描述符块图示,该命令描述符块对应于一检验保护内容状态命令。
图9b为一根据本发明一实施例的数据结构图示,该数据结构可响应一检验保护内容状态命令而返回至主机。
图9c为一根据本发明一实施例的命令描述符块图示,该命令描述符块对应于一适用于将保护内容写入阅读器内的访问保护内容命令。
图9d为一根据本发明一实施例的命令描述符块图示,该命令描述符块对应于一适用于自阅读器读取保护内容的访问保护内容命令。
图10为一根据本发明一实施例的阅读器内保护内容的适宜格式。
具体实施方式
通过将一可用来将存储于存储卡中的数据解密或以其它方式解码的密钥存储于存储卡及可访问存储卡的软件之外,可减小未经授权的个人获取存储于存储卡中的数据的可能性。换句话说,当密钥既不存储在存储卡内亦不存储在计算机软件内时,未经授权的个人将更难识别密钥并进而更难使用密钥对存储在存储卡中的数据进行解码。
阅读器或适配器(例如通用串行总线(USB)阅读器或个人计算机存储卡国际协会(PCMCIA)卡)可配置用于存储诸如密钥等可对存储于存储卡内存储器中的信息进行实质保护的保护内容。这些保护内容或特殊内容可由一主计算机存储于阅读器中,或更具体而言,存储于与阅读器配套的存储器中。当主机试图访问存储卡时,主机可首先访问阅读器中的保护内容,以获得一密钥,然后,使用该密钥自存储卡读取内容或向存储卡写入内容。通常,阅读器制造商可将保护内容存储于阅读器中,并同时提供阅读器及一与该阅读器配套的存储卡,亦即一使用存储于阅读器内的密钥的存储卡。
使用一存储有诸如密钥等保护内容的阅读器可使任何一个使用不同阅读器访问该存储卡的人不能较容易地确定出一可用于对数据进行解码的密钥的位置,从而向存储于存储卡中的数据提供安全保护。而且,将密钥存储于阅读器内而不存储于在主计算机上运行的软件内,可有效防止某些能够对软件进行反向工程设计的人确定出密钥位置。由此,可实质性保护存储在存储卡中的数据,使任何不能对存储有一个或多个可用于对数据进行解码的密钥的阅读器进行访问的用户无法访问这些数据。换句话说,将密钥存储于阅读器中而不存储于主机软件或存储卡中,通常会使非法闯入或窃取密钥变得更加困难。
一般来说,存储于阅读器的保护内容区域中的保护内容实质上可包括任何信息。换句话说,存储于阅读器中的保护内容可包括密钥以及其它类型的信息,例如,从属于阅读器用户的个人信息,或实质上供货商或制造商所希望保护的任何信息。其它类型的信息还可包括(但不限于)随机数字种子信息,该类信息能够为安全数字卡应用软件产生随机数字。一般来说,可使用单个口令来访问密钥及其它类型的信息这两者。
在将存储于阅读器的保护内容区域中的内容发送至阅读器之前,可对这些内容进行加密。这样一来,当主机自阅读器检索这些内容时,在接口总线上将出现已加密的信息。应注意,在总线上未对用于访问这些信息的口令进行加密,这是因为该口令是由用户提供的,用户知道口令值是否正确。
在一实施例中,可由计算机使用一口令来访问存储于阅读器内的保护内容。换句话说,可使用口令来保护存储于阅读器内的内容。图5是一根据本发明一实施例的系统的图示,在该系统中,一阅读器包含保护内容。该系统包括一计算机系统或一主机504、一适配器或阅读器508及一存储卡512。一般来说,阅读器508实质上可为任何接口,例如USB阅读器,当存储卡512与阅读器508进行接口时,阅读器508可使主机504与存储卡512进行实质通信。实质上,存储卡512可为任何可与阅读器508兼容的适合的非易失性存储卡或装置。存储卡512可为(但不限于):PC卡、小型闪存卡、多媒体卡、安全数字卡、智能媒体卡、记忆棒卡或实质上任何含有闪速存储器的存储卡。
主机504通常包括一软件驱动器516及软件520,该软件520可使主机504与阅读器508进行通信,主机504通常在需访问与存储卡512相配套的存储器524时访问阅读器508。软件520可接受一由例如一用户输入主机504的口令,并将输入口令提供至阅读器508,然后,阅读器508将输入口令与一存储于阅读器508中的口令进行比较。当接受该输入口令或认为该输入口令有效时,可将保护内容528提供至软件520。如所属领域的技术人员所应了解,当软件520接收到保护内容528(其通常包括一经加密的密钥532)时,便可使用密钥532使计算机504通过阅读器508访问存储器524。
此外,当主机504设置用于更新保护内容528时,主机508可与阅读器508进行通信,以便在阅读器532上存储或写入更新后的保护内容528。例如,主机504可更新一存储于保护内容528中的口令。
在一实施例中,可使用由软件520提供至阅读器508的口令对阅读器508中的另一口令进行解密,该另一口令在解密之后,将容许访问保护内容508。使用一输入口令通过(例如)阅读器508内的固件510所包含的功能对阅读器508中的口令进行解密,然后由解密后的口令容许访问保护内容528,可进一步减小黑客或其它未经授权的个人能够访问保护内容528的可能性,这是因为存储于阅读器508中的口令已经过加密。
可使用一口令机制对存储于阅读器中的保护内容进行加密。图6为一根据本发明一实施例的系统的图示,该系统包括一具有保护内容并使用一口令机制的阅读器。为防止将容许访问保护内容的口令存储于作为系统600之一部分的阅读器608中,可设置一口令机制,例如“SanDisk口令机制”。一般使用一特定口令对通常包括一密钥632的保护内容628进行加密。当主机6 04试图访问存储卡612时,主机604内的软件620可将一口令(例如一输入口令)下载或提供至阅读器608内的随机存取存储器(RAM)640中。然后,阅读器608可使用下载入RAM 640中的输入口令对加密的保护内容628进行解码或解密。
如所属领域的技术人员所应了解,当输入口令保持于RAM 640中时,一旦断开阅读器608的电源,RAM 640内的输入口令即会丢失。因此,黑客在获得阅读器608后,也无法轻易地确定出如何访问保护内容628。当阅读器608中未有效存储有口令信息时,阅读器608的所有者及制造阅读器608的厂商仍可持有口令信息。
当输入口令与用于对保护内容628进行加密的特定口令实质相同时,即可正确地对保护内容628进行解密,且主机604可获得用于对卡612内的存储器624进行访问的密钥632。或者,当输入口令与用于对保护内容628进行加密的特定口令不匹配时,可将经错误解密的保护内容628提供至主机604。然而,由于当输入口令不正确时密钥632将通常不可用,因而主机604或更具体而言软件620无法访问存储于存储器624中的数据。
图7a是一根据本发明一实施例的流程图,其展示与使用阅读器内的保护内容来访问存储卡相关的步骤。对存储卡(例如图6所示卡612)内容进行访问的过程700开始于步骤704,在步骤704中,将存储卡插入一阅读器中,亦即插入一可与诸如计算机系统等主机系统进行通信或作为该主机系统的一部分的阅读器中。在所述实施例中,阅读器包括一保护内容命令特性集,该保护内容命令特性集使阅读器能够存储保护内容。虽然可执行一兼容性检查来确定存储卡是否与阅读器兼容,但为了便于阐述,过程700中未包括此项检查。然而,应了解,此过程通常可包括一兼容性检查。
在将存储卡插入阅读器中,例如插入阅读器中的一存储卡接纳插座中后,在步骤708中,开始运行计算机系统中的软件,从而使计算机能够访问阅读器,以便获得存储于阅读器内的特殊内容或保护内容。换句话说,开始运行与具有一保护内容命令特性集的阅读器进行接口的软件。在软件运行期间,在步骤712中,用户可根据软件的提示输入一口令。输入一口令可包括自计算机向阅读器发送一检验保护内容状态命令,下文将参照图9a阐述此检验保护内容状态命令。在输入口令之后,在步骤716中,访问存储于阅读器内的对应口令。然后,在步骤720中,针对输入口令是否有效进行比较。换句话说,由阅读器确定输入口令与存储于阅读器中的口令是否实质匹配。
若在步骤720中确定出输入口令有效,则表明可检索存储于阅读器中的保护内容。通常,阅读器会返回一状态来指示输入口令有效。相应地,该流程转至步骤724,在步骤724中,使用口令来访问阅读器内通常包含一密钥的特定内容或保护内容。在一实施例中,对保护内容进行访问可包括对保护内容进行解密。通常,可使用一访问保护内容命令来访问保护内容。下文将参照图9c及图9d阐述访问保护内容命令的实例。
在访问完阅读器内的保护内容之后,在步骤728中,通过阅读器来访问存储卡内的存储器。换句话说,使用与保护内容一同存储于阅读器中的密钥来访问卡内的存储器。使用密钥来访问卡内的存储器使得可在读取过程中使用密钥对卡内的内容进行解密,或在写入过程中使用密钥对将存储在卡内的内容进行加密。下文将参照图7b阐述与一读取过程相关的步骤,并参照图7c阐述与一写入过程相关的步骤。在访问完卡内的存储器后,对卡内内容的访问过程即告结束。
返回至步骤720,当确定出输入口令无效时,表明不可访问存储于阅读器内的保护内容。因此,该流程自步骤720转至步骤732,在步骤732中,确定是否容许再次尝试输入口令。在一实施例中,用户可具有大约两次或三次机会来输入一有效口令,当然输入口令的尝试次数可能差别很大。若在步骤732中确定容许再次尝试输入口令,则该流程返回至步骤712,在步骤712中输入一口令。反之,若确定不容许再次尝试输入口令,则在步骤736中产生一“非法请求”指示,并实际结束对卡内内容的访问过程。
一般来说,可通过对卡内的存储器进行访问,将信息写为或以其它方式存储为存储器内容。还可通过对卡内的存储器进行访问,来读取或以其它方式检索存储器内容。图7b是一根据本发明一实施例的流程图,其展示与访问卡内存储器(例如图7a所示步骤728)以将信息写入存储器相关的步骤。写入过程728’开始于步骤740,在步骤740中,使用一存储于插有一存储卡的阅读器中的密钥,对将存储于该存储卡中的数据进行加密。实质上,可使用任何适当方法对数据进行加密。在一实施例中,既可使用一用户定义方法也可使用一可记录媒体复制保护(CPRM)方法,对将要存储的数据进行加密。在将数据加密后,在步骤744中,将加密数据写入卡内存储器中,此时,将信息写入存储器的过程即告结束。
图7c是一根据本发明一实施例的流程图,其展示与访问一卡内的存储器(例如图7a中的步骤728)以便读取存储器中至少某些数据相关的步骤。读取过程728”开始于步骤750,在步骤750中,例如由阅读器根据一来自一主计算机的请求,自卡内存储器获取数据。通常,所获得的数据为加密数据。在获得加密数据之后,在步骤754中,使用一密钥(即在图7a内步骤724中所获得的密钥)对加密数据进行解密。在例如由阅读器将数据解密后,在步骤758中,将解密后的数据提供至计算机,此时,读取存储于一卡内存储器中数据的过程即告结束。
如上文参照图6所述,通过使用口令机制,可实质上无需存储任何与用于防止保护内容存储于阅读器中的口令相关的信息。下文将参照图8,根据本发明的一实施例来阐述一种通过一存储有保护内容并使用口令机制的阅读器来访问存储卡的方法的相关步骤。过程800开始于步骤804,在步骤804中,将一存储卡插入一阅读器内,该阅读器能够存储保护内容并可使用一口令机制。在将存储卡插入阅读器内之后,在步骤808中,开始运行一与阅读器进行通信的计算机内的软件。
在步骤812中,将口令输入软件中。所输入口令旨在用于对存储于阅读器内的保护内容或特殊内容进行解码,其输入至软件中并下载入与阅读器配套的RAM中。在输入口令之后,在步骤816中,阅读器使用所输入口令对保护内容进行解码或以其它方式进行处理。应了解,若输入口令正确,亦即若输入口令与先前在对保护内容进行编码时所用的口令相同,则将对保护内容进行正确解码。然而,若输入口令不正确,则通常将不能对保护内容进行正确解码,因此,解码后的保护内容可能无法破译,以致无法识别出解码后的保护内容中的任何密钥。
在将保护内容解码后,在步骤820中,计算机中的软件自阅读器获取已解码的保护内容。然后,在步骤824中,确定是否可获得密钥。换句话说,确定在步骤812中输入或提供的口令是否正确,并由此确定是否已解码保护内容的解码是否正确。若确定可获得或可破译出密钥,则在步骤828中,使用密钥访问卡内存储器。与访问一卡内存储器以将信息写入存储器中相关的步骤已在上文参照图7b进行了阐述,而与访问一卡内存储器以自存储器读取信息相关的步骤已在上文参照图7c进行了阐述。在使用密钥访问卡内存储器之后,访问存储器的过程即告结束。
或者,若在步骤824中确定无法获得密钥,则表明在步骤812中所输入口令不正确。相应地,该流程自步骤824转至步骤830,在步骤830中,确定是否再次尝试输入一口令。当确定再次尝试输入一口令时,该流程返回至步骤812,在步骤812中将一口令输入软件中。反之,当确定不再尝试输入口令时,则在步骤832中,可产生一错误指示,并可实际终止访问存储器的过程。
一般来说,图5所示阅读器508及图6所示阅读器608均包含一保护内容特性集,该保护内容特性集使阅读器508、608能存储保护内容。一支持在阅读器中存储保护内容的总系统通常支持该保护内容特性集,并由此具备识别诸如检验保护内容状态命令等命令的能力。换句话说,一能够将保护内容存储在阅读器内的保护内容特性集包括一检验保护内容状态命令。图9a是一根据本发明一实施例的检验保护内容状态命令的命令描述符块图示。在USB环境中,检验保护内容状态命令通常构建在一USB命令包装内部。该命令可启动保护内容特性集,并可自阅读器获得用作一状态确认的输入数据。若阅读器不支持保护内容特性集,则通常将不返回数据,或所返回数据可能不符合“55”或“AA”格式。
如图9a所示,检验保护内容状态命令描述符块902通常包括十二个字节906,每一字节均具有八个位910。块902与一D3h命令代码相关联,且实质上为一由主机发送至USB阅读器(例如由主机发送至与阅读器配套的固件)的小型计算机系统接口(SCSI)命令的一部分。字节906a设置为包括一操作码,而字节906b则为预留字节。字节906c至906j设置为最多包含一口令的八个字节。通常,可对口令进行加密,例如使用用户定义的方法对口令进行加密。当提示用户向阅读器提供一口令或提示用户更改一口令时,用户可在字节906c至906j中加入一最多八个字节的口令。
字节906k包括一位910a,该位910a设置用于启动一保护内容装置模式。换句话说,字节906k中的位910设置用于指示阅读器是否可以保护内容模式运行,或是否实质上使阅读器不以保护内容模式运行。在上述实施例中,可将字节906k中的位910a或一ENB字段设定为值“1”,以表示已启动保护内容功能。当字节906k中的位910a设定为值“1”时,可将与存储于阅读器内的标准SCSI INQUIRY(SCSI查询)数据格式相关联的字节57中的第二位设定为值“1”,以表示已启动保护内容特性集。为启动一保护内容特性集,通常对标准SCSI INQUIRY数据格式内的字节57中的第三位进行实质固定的设定,以表示支持一保护内容特性集。
字节906k中的位910b与字节906k中的位910a相互结合,用于进一步指示保护内容装置模式何时未启动。具体而言,当将字节906k中的位910b及位910a同时设定为一特定值(例如值“0”)时,即有效地禁用保护内容装置模式。字节906k中的位910c为一口令清除位。当设置于字节906c至906j内的一口令参数与一与阅读器相关联的口令实质匹配,且字节906k中的位910c设置正确时,可将设置于阅读器内的口令清除。在将口令清除之后,可在对字节906k中的位910a进行设置的情况下输入一新口令。在设置新口令及由此替换旧口令之后,实质上只能使用新口令对内容进行存储及检索。
此外,在字节906k中,位910d设置用于规定阅读器所存储的内容或阅读器欲存储的内容是否加密,及阅读器所存储的口令是否加密。例如,当字节906k中的位910d设定为值“1”时,则可表示内容及口令皆未加密。若字节906k中位910d的设定值表明内容及口令皆加密,则通常是在将口令及内容传送至阅读器之前,对内容及口令进行加密。字节906k中的位910e设置用于定义对内容进行加密所用的加密方法是否为CPRM方法。若字节906k中的用户定义位910g或910h已置位,则可使用一用户定义方法对口令进行加密。应了解,当字节906k中的位910d表明不加密时,不管字节906k中的位910e为何值,字节906k中的位910d均会有效超越906k中的位910e。
字节906k中的位910g、位910h为用户定义位。在上述实施例中,若由用户定义加密及保护内容类型,则可将字节906k中的位910g、位910h的至少一个位设定为值“1”。一般来说,字节906k中的位910e(亦即CPRM位)超越字节906k中的位910g、910h,因而在位910e、910g、910h的设定值皆为“1”且字节906k中的位910d未置位时,认为已使用CPRM方法进行加密。字节906k中的位910f设置用于指示一口令通过机制是否启动。此一口令通过机制,例如“SanDisk口令通过机制”已在上文参照图8进行了阐述。
块9 02通常用于使用一存储于阅读器中的口令来检验一包含于字节906c至906j内的口令,以便当位于字节906c至906j内的口令与阅读器所存储的口令相匹配时,使保护内容合乎进行读取作业或写入作业的条件。然而,块902亦可用来设定一存储于阅读器中的口令。若阅读器不具有一当前口令,则可使用块902来设定一想要存储于阅读器中的口令。或者,如上文所述,若在阅读器内设有一口令,则可使用块902来清除设置于阅读器内的口令,而且还可使用块902在阅读器内设置一新口令。在阅读器内设定一新口令之后,为便于接受后续的检验保护内容状态命令,通常由后续的检验保护内容状态命令来规定新口令。
字节9061设置用于包含可供与一与保护内容相关的截止日期进行比较的信息。例如,字节9061可包括:位910f至910h,其用于存储当前年份;位910c、位910d,其用于存储当前月份;位910a、位910b,其用于存储当前日。阅读器可使用包含于字节9061内的总当前日期,来确定保护内容是否已经到期及由此确定保护内容是否仍然有效。
当阅读器自计算机接收到检验保护内容状态命令时,该阅读器通常向计算机返回数据。虽然所返回的数据结构可实质上具有任何格式,但所返回的数据结构通常须使:当计算机接收到返回数据结构时,计算机可识别出阅读器包含有保护内容特性集。图9b是一根据本发明一实施例可响应于一检验保护内容状态命令而返回至一主机的数据结构的图示。数据结构922包括三个字节926。其中字节922c设定为“Aah”而字节922b设定为“55h”。
字节926a包括一位930a,该位930a设置用于指示是否已在阅读器上启动或禁用一保护内容特性集。字节926a中的位930b实际为一“锁定”位,其指示存储于阅读器内或将要存储于阅读器内的保护内容的状态。例如,当将字节926a中的位930b设定为值“1”时,保护内容会被锁定,因而不可被检索。或者,当字节926a中的位930b的设定值为“0”时,则表明保护内容未被锁定,因而可供检索。应了解,当字节926a中位930a的设定值为“0”,或指示未启动保护内容特性集时,则表明适配器不支持保护内容特性集,或在计算机上运行的软件已禁用保护内容特性集。当计算机接收到其中字节926a中位930a的设定值为“0”的数据结构922时,计算机通常不向阅读器发送一访问保护内容命令,该访问保护内容命令将在下文中参照图9c及图9d进行阐述。
字节926a中的位930c为一已清除口令指示符,其用于指示是否已清除用来保护受保护内容的口令。若已将口令清除,则可将已清除口令指示符设定为值“1”。字节926a中的位930d至9 30h设置用于指示一先前在对当前存储于一阅读器内的保护内容或对将要存储于阅读器中的保护内容进行加密时所用的加密机制。字节926a中的位930d可设定用来指示是否未对保护内容加密,而字节926a中的位930e则设定用来指示是否已使用CPRM加密方法将保护内容加密。字节926a中的位930f设置用来指示是否已使用一口令通过机制对保护内容进行加密。字节926a中的位930g及930h之一可设定用来指示一在对保护内容加密时曾使用的用户定义的加密方法。通常,仅可将字节926a中的位930d至930h之一设定用于指示对保护内容进行的加密或解密。若设定为位930g或位930h,则阅读器可在将口令存储入阅读器表区域之前,使用用户定义方法对口令进行加密,下文将参照图10来阐述阅读器表区域。在这种情况下,亦可设定位930e来指示系使用CPRM加密方法对保护内容进行加密。若阅读器无法确定在对保护内容进行加密时所用的加密机制,则不可设定位930d至位930h中的任何一位,且可向计算机返回一“无效命令描述符块”消息或一“非法请求”消息。
若使用一CPRM加密方法对保护内容进行加密或解密,则在对内容进行加密或解密时,可将口令用作CPRM加密方法的密钥。因此,通常不可亦同样的方式对口令本身进行解密,因为实际上不存在可用于对口令进行加密或解密的其它密钥。相反,如上文所述,通常使用一用户定义方法对口令进行加密,或根本不对口令进行加密。
当数据结构922返回至计算机之后,可将一符合ANSI标准的访问保护内容命令自计算机发送至阅读器,以便访问阅读器内的保护内容。下文将参照图9c及图9d,分别阐述适用于将保护内容写入阅读器及自阅读器读取保护内容的访问保护内容命令。图9c是一根据本发明一实施例的命令描述符块的图示,该命令描述符块对应于一适用于将保护内容写入一阅读器内的检验保护内容状态命令。访问保护内容命令描述符块952包含于一保护内容命令特性集内,且当将字节956b中的位960a设定为指示一写入作业时,块952用于写入保护内容。在上述实施例中,当将字节956b中的位960a(其为一方向(DIR)位)设定为值“0”时,块952设置用来实施一写入作业。
字节956a包含一操作码或一命令码。如图所示,包含于字节956a中的操作码为一D4h操作码。字节956b中的位960b至960h及字节956f为预留字节,字节956k同样为预留字节。阅读器中将要写入新保护内容的保护内容区段的地址设置于字节956c至956f内。换句话说,字节956c至956f为将要存储于阅读器内的数据提供一在保护内容区段(例如区域或表)内的字节偏移量。换句话说,字节956c至956f内的地址可标识出自保护内容区段或表起始处开始的偏移量。下文将参照图10阐述保护内容区域格式。保护内容地址的最高有效字节(MSB)可包含于字节956c内,而保护内容地址的最低有效字节(LSB)可包含于字节956f内。
字节956g至956j设置用于包含一数据传送长度,亦即将要传送至阅读器保护内容区段内的数据的长度。数据传送长度可以字节形式表示为实质上将要写入阅读器保护内容区段内的字节的总数。字节9561设置用于包含一总截止日期。换句话说,可将将要存储至阅读器保护内容区段内的内容的总截止日期与内容一起存储。可将总截止日期存储于一预留字节9561内,且在一实施例中,该总截止日期可包括一截止年份、一截止月份及一截止日。此一截止日期通常包含于将要写入一阅读器的内容中。应了解,若内容中不包含一总截止日期,则保护内容实际上不会过期,例如,保护内容会一直保持有效直至被盖写为止。
图9d是一根据本发明一实施例的命令描述符块的图示,该命令描述符块对应于一适用于自一阅读器读取保护内容的访问保护内容命令。访问保护内容命令描述符块972与图9c所示块952为实质相同的格式。通过块972中DIR位的设置,可从实质上区分块972与图9c所示块952。换句话说,DIR位用于指示一特定访问保护内容命令是设置用于将数据写入阅读器保护内容区段还是设置用于自阅读器保护内容区段读取数据。
在上述实施例中,当将字节976b中的DIR位980a设定为值“1”时,块972设置用于实施一写入作业。应了解,若将字节976b中的位980a设定为值“ 0”,则块972设置用于实施一写入作业,而且实际上与图9c所示块952相同。字节976a包含一操作码或一命令码,而字节976k及字节976f则为预留字节,字节976b中的位980b至980h为预留位。
在字节976c至976f内设置有将从中读取保护内容的阅读器保护内容区段的地址。具体来说,字节976c至976f提供一保护内容区段内的字节偏移量,该字节偏移量可标识出将要自阅读器读取的内容位于何处。字节976g至976j设置用于包含一数据传送长度,亦即一欲自阅读器保护内容区段传送的数据的长度。字节9761可设置用于包含一总当前日期。
一般来说,可由主机向阅读器提供一总当前日期,其目的是使用总当前日期与将要自阅读器保护内容区段读取的内容的总截止日期作比较。可使用当前日期来确定是否容许访问保护内容。例如,若使用总当前日期确定出总截止日期已过期,则可实质上拒绝对保护内容的访问。在某些情况中,若确定出总截止日期已过期,则可甚至将保护内容擦除。或者,若根据与主机所提供当前日期的比较结果,确定总截止日期已过期,则可读取某些保护内容,或甚至仍可读取所有保护内容。换句话说,可视需要使用总当前日期。
阅读器内的保护内容区段可为位于阅读器内的存储器的一部分,且通常实质上可具有任何适当格式。下文将参照图10并根据本发明的一实施例来阐述阅读器内保护内容的一适当格式。保护内容格式100可包括任意个字节。在所述实施例中,格式1000约包括512个字节。包含于一第一组字节1006a中的各字节设置用于包含保护内容,例如可将保护内容存储于格式1000中的字节0至479内。通常,可由供货商提供第一组字节1006中的保护内容。包含于第二组字节1006b内的各字节设置用于包含一制造商识别符。换句话说,通过第二组字节1006b存储的ASCII字节可有效识别阅读器的供应商或制造商。
如上文参照图9c所述,当自一计算机向阅读器发送一用于将内容写入一阅读器保护内容区段内的访问保护内容命令时,该命令通常包含一总截止日期。可响应于一访问保护内容命令,将总截止日期存储于字节1006c至1006e内。可响应于一检验保护内容状态命令或一用于读取数据的访问保护内容命令,来访问存储于字节1006c至1006e内的总截止日期,亦即,可将存储于字节1006c至1006e内的截止日期与由一检验保护内容状态命令或一用于读取数据的访问保护内容命令提供的一当前日期相比较。应了解,若保护内容所需字节多于第一组字节1006a内的可用字节,则可由这些内容与一访问保护内容命令所提供值中的偏晚者来设定字节1006c至1006e内的总截止日期。由于实际上可由写入阅读器保护内容区段内的内容来设定字节1006c至1006e内的截止日期,因此当用户想要更改字节1006c至1006e内的截止日期时,包含已更改截止日期的新内容由用户提供。若一用户喜欢使用实质上永不到期的内容,则用户可通过提供包含有截止日期的新内容将字节1006c至1006e内的截止日期设定为一较大的年份值,例如3000年。
第三组字节1006f为预留字节,而第四组字节1006g设置用于保持一加密口令。在所述实施例中,存储于第四组字节1006g内的口令可至多包括约八个字节。存储于第四组字节1006g内的口令既可加密也可不加密。若存储于第一组字节1006a内的保护内容加密且图9a所示检验保护内容状态命令内字节906k中的位910d指示口令加密,则口令通常进行加密。
第五组字节1006h设置用于包含一内容更新计数器。通常将内容更新计数器初始化为零,且每次对格式1000进行更新时内容更新计数器都会递增计数。例如,当将一用于写入保护内容的访问保护内容命令(例如图9c所示访问保护内容命令952)中的DIR位设定为值“0”时,内容更新计数器便会递增1,以指示第一组字节1006a内的保护内容已更新。通常,内容更新计数器具有一上限值,例如可实质上限制对格式1000进行写入的最大次数值。在一实施例中,虽然上限值可差别很大,但格式1000的写入次数上限值通常约为65,535次或以下。在达到该上限值后,在使用一访问保护内容命令来尝试对格式1000进行写入时,在实际上将不会成功。
当担心可能会有能够窥视USB总线活动的SCSI总线分析器正在使用时,主机可在将内容发送至阅读器以将其存储于阅读器的保护内容区段内之前,使用一口令对内容进行加密。此种加密可对潜在的未经授权用户或黑客有效地隐藏密钥。应了解,虽然并非必需在将数据放置于主机与阅读器之间的总线上之前将数据加密,但可能通常会希望这样做。可加密的数据通常为存储于第一组字节1006a中的数据。主机可使用一口令对数据进行加密,阅读器上的固件可在将数据存储于第一组字节1006a内之前进一步对数据加密。通常,存储于字节组1006b至1006e中的数据为明文数据或原始数据。
在一实施例中,第三组字节1006f通常为一可用于检验口令正确性的预留区域。如上文参照图6中的系统所述,阅读器可对一存储于第二组字节1006b内的识别符进行加密,并将已加密的识别符存储于第三组字节1006f内,以便能够检验口令的正确性。由于实际上格式1000内未存储口令,因此可使用已加密的识别符来检验口令。应了解,虽然阅读器能够确定出口令不正确,但阅读器通常不知道正确口令。
尽管上文仅阐述了本发明的几个实施例,但应了解,也可以许多其它特定形式来实施本发明,此不会背离本发明的精神或范围。例如,虽然上文笼统地将阅读器阐述为USB阅读器,但实质上阅读器可为能够使存储卡与主机系统进行通信的任何适当的阅读器或适配器。其它适用的阅读器包括(但不限于)PC卡阅读器。
一般来说,虽然在上文说明中,阅读器内容受到保护,但应了解,阅读器内容可能未必受到保护。换句话说,未必对阅读器内容进行加密。当阅读器内容未加密时,可将阅读器内容设置为:只要与阅读器进行通信的主计算机上的软件能够确定存储有密钥的阅读器内的位置,便可访问存储于阅读器内的任何密钥。
与各种功能及命令描述符相关联的位及字可存在较大差异。换句话说,命令描述符块中分别以某种方式设定的、用于指示与各块相关联的不同状态的具体位或字可能有所差别。例如,设定用来指示支持一保护内容特性集的位与设定用来启动一保护内容特性集的位通常可有所不同。实质上,只要总系统知道哪个位是设定用来指示支持一保护内容特性集及哪个位是设定用来启动一保护内容特性集,即可设定任意位。
上文已将主机阐述为与一阅读器进行通信,而该阅读器则与一存储卡进行通信。尽管主机及阅读器可为实质上分立的实体,亦即阅读器可为一易于附装至主机及自主机拆卸下的外围设备,但应了解,阅读器亦可为主机的一部分。例如,阅读器可为主机的组成部分,不易于附装至主机及自主机拆卸下。
上文将口令机制笼统地阐述为:能将口令提供至阅读器中的RAM,然后,不管该口令是否有效,都使用该口令对阅读器上的保护内容进行解码,从而将已解码的保护内容提供至主机。在一实施例中,口令机制可设置为:仅当所提供口令有效时,才实质上提供已解码的保护内容。例如,这种口令机制可设置为与包括一预定字段的保护内容共同使用,该预定字段包括一标记,当保护内容得到正确解码时,该标记具有一个特定值,阅读器可通过检验该特定值来确定口令是否有效。
一般来说,本发明各过程的相关步骤可存在较大差异。可对各步骤进行重新排序、修改、增加及删除,此不会背离本发明的精神或范围。例如,与在阅读器上使用口令机制来访问存储卡中存储器相关的步骤可包括与确定阅读器是否实际支持口令机制相关的步骤。因此,应将这些实例视为阐释性而非限制性实例,且本发明并不限于本文所给出的细节,而是可在随附权利要求的范围内加以修改。

Claims (17)

1、一种用于通过操作一与一读卡器进行通信的主机系统访问存储于一快闪存储器存储装置中加密信息的方法,所述读卡器包括一存储一密钥的存储器,所述存储在所述快闪存储器存储装置中的信息根据所述密钥被加密,所述方法包含:
将所述快闪存储器存储装置插入到所述读卡器;
将一访问码从所述主机系统传送至所述读卡器;
响应于对所述读卡器有效的所述访问码,自所述读卡器获取所述密钥;
使用所述密钥解密所述存储在所述快闪存储器存储装置上的信息;及
将所述已解密的存储的信息传送至所述主机系统。
2、根据权利要求1所述的方法,其进一步包含:
使用所述密钥对信息进行加密;
将所述已加密的信息存储在所述快闪存储器存储装置中;及
将所述快闪存储器存储装置从所述读卡器移除。
3、根据权利要求1所述的方法,其中所述读卡器包括一易失性随机存取存储器,且其中获取所述密钥的步骤包括:
使用所述访问码对存储在所述易失性随机存取存储器上的内容进行解码以从所述已解码内容获取所述密钥。
4、根据权利要求1所述的方法,其中所述快闪存储器存储装置是选自下列元件所组成群组中的一元件:一安全数字卡、一小型闪存卡、一多媒体卡、一智能媒体卡及一记忆棒卡。
5、根据权利要求1所述的方法,其中所述读卡器为下列之一:一通用串行总线读卡器及一个人计算机存储卡国际协会适配器。
6、一种访问一存储器存储装置的方法,所述存储器存储装置通过一适配器与一主机系统进行通信,所述存储器存储装置包括一存储器,所述方法包含:
自所述适配器获取一密钥,所述密钥设置用于对被安排存储于所述存储器中的信息进行加密,所述密钥另外还设置用于对所述已加密信息进行解密,包括;
向所述适配器提供一第一口令;
确定所述第一口令是否有效;及
响应于确定所述第一口令有效,使用所述第一口令对与所述适配器相
关联的内容进行解码,其中所述内容包括所述密钥;及
使用所述密钥处理所述信息。
7、根据权利要求6所述的方法,其中确定所述第一口令是否有效包括:
将所述第一口令与一第二口令相比较,以确定所述第一口令是否与所述
第二口令实质相同,
其中所述第二口令存储于所述适配器中。
8、一种访问一存储器存储装置的方法,所述存储器存储装置通过一适配器与一主机系统进行通信,所述存储器存储装置包括一存储器,所述方法包含:
自所述适配器获取一密钥,所述密钥设置用于对被安排存储于所述存储器中的信息进行加密,所述密钥另外还设置用于对所述已加密信息进行解密,包括:
向所述适配器提供一第一口令;
使用所述第一口令在所述适配器中产生一第二口令;
确定所述第二口令是否适于对与所述适配器相关联的内容进行解码,所述
内容包括所述密钥;及响应于确定所述第二口令适于对所述与所述适配器相关联的内容进行解码,使用所述第二口令对所述内容进行解码;及使用所述密钥处理所述信息。
9、一种系统,其包含:
一主机系统;及
一耦合至所述主机系统的快闪存储器读卡器,包括:
一用于接收一快闪存储器存储装置的接口;
一用于存储一密钥的读卡器存储器;及
用于访问存储于一快闪存储器装置的在所述接口接收的已加密信息的电路,所述电路包括:
一接收构件,用于从所述主机系统接收一访问码,
一获取构件,用于响应于所述接收到的对所述读卡器有效的访问码从所述读卡器存储器获取所述密钥;及
一解密构件,用于使用所述密钥,解密存储在一快闪存储器存储装置上的在所述接口接收的信息。
10、根据权利要求9所述的系统,其中所述用于获取所述密钥的构件包括:
一比较构件,其用于响应于所述接收到的访问码,将一第一口令与一存储于所述读卡器存储器上的第二口令相比较;及
一获得构件,其用于响应于与所述第二口令匹配的所述第一口令,使用所述第二口令获得所述密钥。
11、根据权利要求10所述的系统,其中所述用于获取所述密钥的构件进一步包括:
一用于使用所述第一口令获得一第二口令的构件;
且其中所述构件用于响应于适于获得所述密钥的所述第二口令,使用所述第二口令获得所述密钥。
12、根据权利要求10所述的系统,其中所述读卡器存储器包括一易失性随机存取存储器以存储所述接收的第一口令,
且其中所述用于获得所述密钥的构件包括:
一解码构件,其用于使用所述第一口令对所述读卡器存储器的已编码内容进行解码。
13、根据权利要求9所述的系统,其中所述主机系统设置用于:对信息进行加密及通过所述读卡器将所述已加密信息写入所述快闪存储器存储装置中。
14、根据权利要求9所述的系统,其中所述主机系统设置用于:通过所述读卡器自所述快闪存储器存储装置读取信息。
15、根据权利要求9所述的系统,其中所述快闪存储器存储装置是一包含一非易失性存储器的存储卡。
16、根据权利要求15所述的系统,其中所述存储卡是选自下列元件所组成群组中的一元件:一安全数字卡、一小型闪存卡、一多媒体卡、及一记忆棒卡。
17、根据权利要求9所述的系统,其中所述读卡器为下列之一:一通用串行总线读卡器及一个人计算机存储卡国际协会适配器。
CNB038051214A 2002-03-04 2003-02-20 在数据存储阅读器产品中存储秘密信息的实施方法 Expired - Fee Related CN100349083C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/092,049 US7552345B2 (en) 2002-03-04 2002-03-04 Implementation of storing secret information in data storage reader products
US10/092,049 2002-03-04

Publications (2)

Publication Number Publication Date
CN1639664A CN1639664A (zh) 2005-07-13
CN100349083C true CN100349083C (zh) 2007-11-14

Family

ID=27804151

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB038051214A Expired - Fee Related CN100349083C (zh) 2002-03-04 2003-02-20 在数据存储阅读器产品中存储秘密信息的实施方法

Country Status (6)

Country Link
US (1) US7552345B2 (zh)
EP (1) EP1481308A2 (zh)
KR (1) KR20040105753A (zh)
CN (1) CN100349083C (zh)
AU (1) AU2003211143A1 (zh)
WO (1) WO2003077084A2 (zh)

Families Citing this family (48)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7814337B2 (en) * 2000-01-06 2010-10-12 Super Talent Electronics, Inc. Secure flash-memory card reader with host-encrypted data on a flash-controller-mastered bus parallel to a local CPU bus carrying encrypted hashed password and user ID
US7159065B1 (en) * 2002-06-20 2007-01-02 Cypress Semiconductor Corporation Method for issuing vendor specific requests for accessing ASIC configuration and descriptor memory while still using a mass storage class driver
US20040181673A1 (en) * 2003-03-13 2004-09-16 Paul Lin Method and apparatus for preventing unauthorized access to data and for destroying data upon receiving an unauthorized data access attempt
US20060004974A1 (en) * 2003-03-13 2006-01-05 Paul Lin Portable non-volatile memory device and method for preventing unauthorized access to data stored thereon
JP4270946B2 (ja) * 2003-06-02 2009-06-03 三菱電機株式会社 ナビゲーション装置
US7562230B2 (en) * 2003-10-14 2009-07-14 Intel Corporation Data security
US7797752B1 (en) 2003-12-17 2010-09-14 Vimal Vaidya Method and apparatus to secure a computing environment
WO2005081891A2 (en) 2004-02-23 2005-09-09 Lexar Media, Inc. Secure compact flash
US8613091B1 (en) 2004-03-08 2013-12-17 Redcannon Security, Inc. Method and apparatus for creating a secure anywhere system
US7711965B2 (en) 2004-10-20 2010-05-04 Intel Corporation Data security
US20060098818A1 (en) * 2004-11-10 2006-05-11 International Business Machines (Ibm) Corporation Encryption technique for asynchronous control commands and data
JP2007140807A (ja) * 2005-11-17 2007-06-07 Brother Ind Ltd リムーバブルメディア装置、リムーバブルメディア装置制御プログラムおよびリムーバブルメディア装置制御方法
JP2007148736A (ja) * 2005-11-28 2007-06-14 Brother Ind Ltd リムーバブルメディア装置およびリムーバブルメディア装置制御プログラム
JP2007148721A (ja) * 2005-11-28 2007-06-14 Brother Ind Ltd リムーバブルメディア装置、リムーバブルメディア装置制御プログラムおよびリムーバブルメディア装置制御方法
US20070266421A1 (en) * 2006-05-12 2007-11-15 Redcannon, Inc. System, method and computer program product for centrally managing policies assignable to a plurality of portable end-point security devices over a network
US7971071B2 (en) * 2006-05-24 2011-06-28 Walkoe Wilbur J Integrated delivery and protection device for digital objects
US20070279969A1 (en) * 2006-06-02 2007-12-06 Raytheon Company Intrusion detection apparatus and method
DE102006039413A1 (de) * 2006-08-23 2008-03-13 Berger Lahr Gmbh & Co. Kg Messvorrichtung zur Messung des Ausgangsstroms einer getakteten Halbbrückenschaltung
US20080098478A1 (en) * 2006-10-20 2008-04-24 Redcannon, Inc. System, Method and Computer Program Product for Administering Trust Dependent Functional Control over a Portable Endpoint Security Device
KR20080044502A (ko) * 2006-11-16 2008-05-21 삼성전자주식회사 메모리 카드 시스템 및 그것의 패스워드 전송 방법
US8726041B2 (en) * 2007-05-09 2014-05-13 Sony Corporation Methods and apparatus for generating a random number in one or more isolated processors
US20090006796A1 (en) * 2007-06-29 2009-01-01 Sandisk Corporation Media Content Processing System and Non-Volatile Memory That Utilizes A Header Portion of a File
US8069298B2 (en) * 2007-06-29 2011-11-29 Sandisk Technologies Inc. Method of storing and accessing header data from memory
TWI377576B (en) * 2007-08-22 2012-11-21 Security flash memory with an apparatus for encryption and decryption, and method for accessing security flash memory
JP4473900B2 (ja) * 2007-08-22 2010-06-02 株式会社東芝 半導体メモリ装置
KR20090047917A (ko) * 2007-11-09 2009-05-13 삼성전자주식회사 외장 메모리 액세스 장치 및 방법
US8756437B2 (en) 2008-08-22 2014-06-17 Datcard Systems, Inc. System and method of encryption for DICOM volumes
US9037824B2 (en) * 2009-03-26 2015-05-19 Micron Technology, Inc. Password accessible microelectronic memory
US8219776B2 (en) * 2009-09-23 2012-07-10 Lsi Corporation Logical-to-physical address translation for solid state disks
US8321639B2 (en) * 2009-12-30 2012-11-27 Lsi Corporation Command tracking for direct access block storage devices
US8166258B2 (en) * 2009-07-24 2012-04-24 Lsi Corporation Skip operations for solid state disks
US8555141B2 (en) * 2009-06-04 2013-10-08 Lsi Corporation Flash memory organization
US8868809B2 (en) * 2009-11-30 2014-10-21 Lsi Corporation Interrupt queuing in a media controller architecture
US20100306451A1 (en) * 2009-06-01 2010-12-02 Joshua Johnson Architecture for nand flash constraint enforcement
US8286004B2 (en) * 2009-10-09 2012-10-09 Lsi Corporation Saving encryption keys in one-time programmable memory
US8245112B2 (en) * 2009-06-04 2012-08-14 Lsi Corporation Flash memory organization
US8589680B2 (en) 2010-04-07 2013-11-19 Apple Inc. System and method for synchronizing encrypted data on a device having file-level content protection
US8788842B2 (en) 2010-04-07 2014-07-22 Apple Inc. System and method for content protection based on a combination of a user PIN and a device specific identifier
US8510552B2 (en) * 2010-04-07 2013-08-13 Apple Inc. System and method for file-level data protection
CN101840476B (zh) * 2010-05-07 2013-03-13 江苏新广联科技股份有限公司 一种otp-sd电子出版物加密方法
US8849469B2 (en) 2010-10-28 2014-09-30 Microsoft Corporation Data center system that accommodates episodic computation
KR101255204B1 (ko) * 2012-07-23 2013-04-23 주식회사 베프스 보안 기능을 갖는 저장 장치 리더기 및 이를 이용한 보안 방법
US9411600B2 (en) * 2013-12-08 2016-08-09 Intel Corporation Instructions and logic to provide memory access key protection functionality
US10691838B2 (en) * 2014-06-20 2020-06-23 Cypress Semiconductor Corporation Encryption for XIP and MMIO external memories
CN106572466A (zh) * 2016-11-05 2017-04-19 猎熊座安全技术(上海)有限公司 一种信息解密方法和读头
TWM575145U (zh) * 2018-09-04 2019-03-01 威盛電子股份有限公司 保全儲存資料的系統
US11057381B1 (en) * 2020-04-29 2021-07-06 Snowflake Inc. Using remotely stored credentials to access external resources
CN114520730B (zh) * 2020-11-20 2023-06-20 腾讯科技(深圳)有限公司 数据传输方法、装置、系统、计算机设备和存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5058162A (en) * 1990-08-09 1991-10-15 Hewlett-Packard Company Method of distributing computer data files
US5623637A (en) * 1993-12-06 1997-04-22 Telequip Corporation Encrypted data storage card including smartcard integrated circuit for storing an access password and encryption keys
EP1089156A2 (en) * 1999-09-30 2001-04-04 M-Systems Flash Disk Pioneers Ltd. Device, system and method for data access control

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3025502B2 (ja) * 1987-03-16 2000-03-27 日立マクセル株式会社 半導体メモリ装置
JPS63253493A (ja) * 1987-04-09 1988-10-20 Mitsubishi Electric Corp 情報記録システム
IL99747A (en) 1991-10-15 1994-12-29 News Datacom Ltd File-secure computer system
US5533125A (en) 1993-04-06 1996-07-02 International Business Machines Corporation Removable computer security device
EP0770997A3 (en) 1995-10-27 1998-01-07 Ncr International Inc. Password protection for removable hard drive
US6075858A (en) * 1995-10-27 2000-06-13 Scm Microsystems (U.S.) Inc. Encryption key system and method
DE19708616C2 (de) * 1997-03-03 1999-09-02 Siemens Ag Elektronische Datenverarbeitungseinrichtung und -system
US6557104B2 (en) * 1997-05-02 2003-04-29 Phoenix Technologies Ltd. Method and apparatus for secure processing of cryptographic keys
US6014745A (en) * 1997-07-17 2000-01-11 Silicon Systems Design Ltd. Protection for customer programs (EPROM)
CN1224909C (zh) * 1998-10-16 2005-10-26 松下电器产业株式会社 数字作品保护系统
US7406604B2 (en) * 2000-05-08 2008-07-29 Spyder Navigations, L.L.C. Method for protecting a memory card, and a memory card
JP3456528B2 (ja) 2000-05-10 2003-10-14 日本電気株式会社 携帯電話機およびデータの秘匿方法
KR100400386B1 (ko) * 2001-05-18 2003-10-08 아라리온 (주) 이종버스를 연결하는 고기밀 호스트 어댑터

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5058162A (en) * 1990-08-09 1991-10-15 Hewlett-Packard Company Method of distributing computer data files
US5623637A (en) * 1993-12-06 1997-04-22 Telequip Corporation Encrypted data storage card including smartcard integrated circuit for storing an access password and encryption keys
EP1089156A2 (en) * 1999-09-30 2001-04-04 M-Systems Flash Disk Pioneers Ltd. Device, system and method for data access control

Also Published As

Publication number Publication date
CN1639664A (zh) 2005-07-13
WO2003077084A2 (en) 2003-09-18
EP1481308A2 (en) 2004-12-01
AU2003211143A1 (en) 2003-09-22
WO2003077084A3 (en) 2004-09-10
US7552345B2 (en) 2009-06-23
US20030167395A1 (en) 2003-09-04
KR20040105753A (ko) 2004-12-16

Similar Documents

Publication Publication Date Title
CN100349083C (zh) 在数据存储阅读器产品中存储秘密信息的实施方法
US9514063B2 (en) Secure compact flash
JP4857123B2 (ja) 不正機器検出装置、不正機器検出システム、不正機器検出方法、プログラム、記録媒体及び機器情報更新方法
US9853953B2 (en) Method of transferring rights object and electronic device
KR100692425B1 (ko) 대량 저장 장치의 암호화/복호화를 위한 방법 및 장치
WO1995016238A1 (en) Secure computer memory card
JPH06332717A (ja) ソフトウエア入手方法と該方法を実施するためのデータ処理システム
JP2007004522A (ja) 記憶装置
JPH08214278A (ja) 安全アクセス・システム及びcatvシステム
WO2013090019A1 (en) Host device and method for super-distribution of content protected with a localized content encryption key
US20130156196A1 (en) Storage Device and Method for Super-Distribution of Content Protected with a Localized Content Encyrption Key
EP1236201B1 (en) Computer-readable medium with microprocessor to control reading and computer arranged to communicate with such a medium
CN102937907B (zh) 利用sd卡片进行授权软体安装更新使用的方法
US7519829B2 (en) Storage device and method for protecting data stored therein
JPH09265254A (ja) 情報記憶媒体の相互認証システム
JP4303768B2 (ja) カード型記憶装置用セキュリティ管理方法,カード型記憶装置およびカード型記憶装置用取引装置
JP4601498B2 (ja) 認証装置、認証方法、その方法を実現するプログラム、およびそのプログラムを記録した記録媒体
JP2011108151A (ja) 外付けストレージ用セキュリティ・アダプター
JP2007323140A (ja) 情報処理装置、情報処理方法及びプログラム
US20030056106A1 (en) Encryption system for preventing data from being copied illegally and method of the same
KR20100067997A (ko) 메모리칩이 구비된 스마트카드의 판독/기록장치 및 이에 의한 데이터 보안방법
JP2000347945A (ja) 情報サービスシステム
ZA200105908B (en) Electronic data storage and display apparatus.
EP1684152A1 (en) Method and architecture for restricting access to a memory device
WO2006064565A1 (ja) コンテンツ管理システムおよび識別用媒体

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
ASS Succession or assignment of patent right

Owner name: SANDISK TECHNOLOGY CO., LTD.

Free format text: FORMER OWNER: SANDISK CORP.

Effective date: 20120322

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20120322

Address after: American Texas

Patentee after: Sandisk Corp.

Address before: American California

Patentee before: Sandisk Corp.

C56 Change in the name or address of the patentee

Owner name: SANDISK TECHNOLOGY CO., LTD.

Free format text: FORMER NAME: SANDISK TECHNOLOGIES, INC.

CP01 Change in the name or title of a patent holder

Address after: American Texas

Patentee after: Sandisk Corp.

Address before: American Texas

Patentee before: Sandisk Corp.

C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20071114

Termination date: 20140220