专利名称:使用captcha提问来保护可移除移动闪存存储器件的方法
使用CAPTCHA提问来保护可移除移动闪存存储器件的方法
背景技术:
诸如通用串行总线(USB)器件或存储卡的一些可移除移动闪存存储器件具有写-保护开关以防止意外或有意地删除在可移除移动闪存存储器件中存储的数据。例如, 如果使能写-保护开关,则由于用户将需要采取一个特殊步骤(即,将开关移动到禁用位置)来授权将导致在可移除移动闪存存储器件中存储的数据丢失的命令,因此将防止用户意外地重新格式化可移除移动闪存存储器件。写-保护开关当使能时也用作安全机制以防止恶意软件(malware)(例如,在主机设备上运行的病毒)发出将导致在可移除移动闪存存储器件中存储的数据丢失的命令。另外,一些可移除移动闪存存储器件通过使用受信第三方审查命令来提供数据安全;但是,受信第三方的使用可能在许多情况下不可用或不方便。
发明内容
本发明的实施例由权利要求限定,且在本部分中没有任何内容应该被视为对那些权利要求的限制。通过介绍,以下描述的实施例通常使用提问(challenge)来保护可移除移动闪存存储器件,其中,该提问可以是"全自动区分计算机和人类的公共图灵测试"(Completed Automated Public Turing to Tell Computers and Humans Apart,“ CAPTCHA“)的形式。在一个实施例中,提供如下方法,其中,可移除移动闪存存储器件从主机设备接收命令, 生成CAPTCHA提问,向主机设备提供CAPTCHA提问,从主机设备接收对CAPTCHA提问的响应,确定该响应是否满足CAPTCHA提问,以及只有该响应满足CAPTCHA提问才执行该命令。 在另一实施例中,提供可移除移动闪存存储器件以用于执行这些动作。其他实施例是可能的,且可以单独或结合到一起地使用实施例的每个。因此,现在将参考附图来描述各种实施例。
图1是一个实施例的主机设备和可移除移动闪存存储器件的方框图。图2是使用CAPTCHA提问来保护可移除移动闪存存储器件的实施例的方法的流程图。图3是在CAPTCHA提问需要用户识别至少一个失真图像的实施例中使用的 CAPTCHA提问的图示。图4是在CAPTCHA提问需要用户识别至少一个失真声音的实施例中使用的 CAPTCHA提问的图示。
具体实施例方式随后的详细说明描述了通常使用提问来针对意外或有意删除数据来保护可移除移动闪存存储器件、而不需要写-保护开关或受信第三方来审查命令的实施例。这种提问可以以"全自动区分计算机和人类的公共图灵测试"(“CAPTCHA")的形式。现在转向附图,图1是与一个实施例的可移除移动闪存存储器件100通信的主机设备50的框图。主机设备50可以采用任何适当的形式,诸如但不限于个人计算机、移动电话、游戏设备、个人数字助理(PDA)、电子邮件/文本通信设备、数字摄像机、数字媒体(例如MP3)播放器、GPS 导航设备和TV系统。可移除移动闪存存储器件100还可以采用任何适当的形式,诸如但不限于通用串行总线(USB)器件和存储卡。如图1所示,本实施例的可移除移动闪存存储器件100包括输入/输出端口 110、 电路120、和存储器130。可移除移动闪存存储器件100可以包括附加的组件,其未在图1 中示出以简化附图。如以下更详细地描述的,在一些实施例中,CAPTCHA提问的使用是具有写-保护开关(例如,在允许向可移除移动闪存存储器件100写的第一位置和防止向可移除移动闪存存储器件100写的第二位置之间可由用户移动的物理开关)的替换。因此,在那些实施例中,可移除移动闪存存储器件100将不需要写-保护开关。但是,在其他实施例中,可移除移动闪存存储器件100使用CAPTCHA提问且具有写-保护开关二者。使用输入/输出端口 110来放置与主机设备50通信的可移除移动闪存存储器件
100。如在此使用的,短语"与......通信"意味着直接通信或经由在此提到或未提到的
一个或多个组件(例如,存储卡读取器)间接通信。主机设备50和可移除移动闪存存储器件100可以经由有线或无线连接彼此通信。例如,在一个实施例中,输入/输出端口 110 包括与主机设备50上的对应插口(或管脚)配对的管脚(或插口)以建立电和物理连接。 在另一实施例中,输入/输出端口 110包括无线收发器来放置彼此无线通信的主机设备50 和可移除移动闪存存储器件100。在一个优选实施例中,移动闪存存储器件100是主机设备 50的本地存储器件,且因此使用大容量存储协议而不是网络(例如,因特网)协议。作为闪存的替换,存储器130可以采用例如另一类型的固态存储器、光学存储器、 及磁存储器的形式。而且,存储器130可以是一次(one-time)可编程、少数几次(few-time) 可编程、或多次(many-time)可编程。另外,虽然被示出为在图1中的一个框,但是存储器 130可以采用若干组件的形式。例如,电路120可以采用一个或多个微处理器或处理器、 和存储可由例如(微)处理器、逻辑门、开关、专用集成电路(ASIC)、可编程逻辑控制器、和嵌入式微控制器执行的计算机可读程序代码(例如,软件或固件)的计算机可读介质的形式。因为仅使用相对小量的RAM作为操纵图形的工作空间,且图形的操纵例程的设置相对简单,因此可以使用多种电路来生成CAPTCHA。适当的电路的例子包括但不限于以下微控制器ARC 625D、Atmel AT91SAM、Microchip PIC18F26K20、和 Silicon Labs C8051F320。如以下更详细地描述的,电路120可操作以执行涉及使用CAPTCHA提问来保护可移除移动闪存存储器件100的功能。电路120还可以被设计以在期望时执行另外的功能。总体上,CAPTCHA提问优选地是仅能够由人类而不是由计算机正确地响应的提问。CAPTCHA可以被考虑为"人类测试",且通常用于限制对网站的访问或授权网络账户的建立。存在不同形式的CAPTCHA提问,其最普遍的形式是以使得机器不可能(或至少非常困难)从图像中识别字符、但对人类来说不是不可能的方式失真的随机生成的字符 (character)或符号的序列。因此,如果对CAPTCHA提问的响应匹配失真图像中的字符,则响应者可能是人类而不是计算机。以此方式,CAPTCHA提问可以用于针对来自试图使得可移除移动闪存存储器件100执行一些未授权及潜在破坏性动作的病毒和其他恶意软件的攻击来保护可移除移动闪存存储器件100。即,取代自动地执行由主机设备50发出的命令,而是可移除移动闪存存储器件100可以使用CAPTCHA提问来保证该命令是来自人类用户而不是来自恶意软件。如果CAPTCHA提问成功地被响应,则可能人类用户有意识地发出了命令,且可移除移动闪存存储器件100可以进行该命令。但是,如果该命令来自恶意软件,则可移除移动闪存存储器件100将不会收到对CAPTCHA提问的满意响应,且因此将不执行该命令。因为仅仅对于CAPTCHA提问的人类响应将授权命令的执行,因此如果可移除移动闪存存储器件100不具有写-保护开关(或具有当发出潜在危险的命令时未使能的写-保护开关),则CAPTCHA的使用尤其期望。返回附图,图2是使用CAPTCHA提问来保护可移除移动闪存存储器件100的一个实施例的方法的流程图200。如图2所示,当主机设备50向可移除移动闪存存储器件100 发出命令(动作20 时,可移除移动闪存存储器件100接收该命令,且在可移除移动闪存存储器件100中的电路120确定该命令是否是受限命令(动作210)。如果该电路120确定该命令不是受限命令,则电路120允许执行该命令(动作220)。但是,如果电路120确定该命令是受限命令,则该电路120使用CAPTCHA提问来保护可移除移动闪存存储器件100,如以下将更详细描述的(动作230480)。例如,“受限命令"可以是任何指定的命令,在一个实施例中,是如果被执行则将例如导致在可移除移动闪存存储器件100中存储的数据丢失、改变可移除移动闪存存储器件100的配置、或授权对在可移除移动闪存存储器件100中的受限区域的访问的命令。在 CAPTCHA提问的使用用作对在可移除移动闪存存储器件100上的写-保护开关的替换的实施例中,受限命令可以是如果写-保护开关曾出现在可移除移动闪存存储器件100上且被使能则将不执行的命令。受限命令可以包括但不限于向可移除移动闪存存储器件100写数据的命令、从可移除移动闪存存储器件100读数据的命令、重新格式化可移除移动闪存存储器件100的命令、从可移除移动闪存存储器件100擦除数据的命令、更新在可移除移动闪存存储器件100上的固件的命令、从可移除移动闪存存储器件100获得诊断数据(诸如但不限于大量存储器错误、在其生命周期中写到可移除移动闪存存储器件100中的大量字节、和可移除移动闪存存储器件100的操作的大量小时、等等)的命令、对可移除移动闪存存储器件100分区的命令、和关于可移除移动闪存存储器件100的加密能力的命令(例如,访问秘密密钥和签名数据)。应该注意,在该具体实施例中,只有来自主机设备50的命令是受限命令,才使用CAPTCHA提问。在其他实施例中,可以使用CAPTCHA提问来用于附加于或代替受限命令的命令。例如,CAPTCHA提问可以用于由主机设备50发出的每个命令, 可以仅用于随机数量的命令,可以为特定用户/操作定制等。返回到图2的流程图200,响应于电路120确定来自主机设备50的命令是受限命令,电路120提供将由主机设备50的用户完成的CAPTCHA提问来保证受限命令来自人类用户。在该具体示例中,虽然可以使用其他CAPTCHA提问(例如,需要用户识别至少一个失真声音),但是CAPTCHA提问需要用户标识至少一个失真图像。如图2所示,在该实施例中,电路120生成随机串(“String_l (串1)“)(动作230),把随机串呈现为图形图像(动作 M0),然后使该图像失真且添加视觉噪声(动作250)。(优选地,随机串(“String_l)存储在存储器130的隐藏区域、或可移除移动闪存存储器件100的其他部分,因此病毒不可能搜索可移除移动闪存存储器件100来找到正确的串以响应于该提问而进入。)然后,电路120 向主机设备50发送图像,将该图像呈现给该用户。例如,如图3所示,主机设备50向用户显示失真图像〃小树林(Grove)“和〃过道(gangway)丨'、以及用于用户键入两个显示的词的文本条目框和指令。然后,用户键入或另外提供其对该图像说的是什么的猜测,且主机设备50接收该响应(“String_2($》")(动作270)。然后,主机设备50向可移除移动闪存存储器件100发送该响应,且在可移除移动闪存存储器件100中的电路120确定该响应是否满足CAPTCHA提问。在该实施例中,如果该响应是对用于生成该图像的随机串的确切匹配(即,如果〃 String_l" =〃 String_2"),则该响应被认为满足CAPTCHA提问(动作观0)。(在其他实施例中,在某种误差程度内的不够完美的匹配可以认为满足该提问,尤其是当视觉失真使得甚至人类难以识别到该字符时。)如果该电路120确定该响应满足该提问,则电路120允许执行该命令(动作220)。否则,电路120拒绝该命令(动作四0)。存在与这些实施例相关联的一些优点。首先,如上所述,使用CAPTCHA提问可以针对来自试图使得可移除移动闪存存储器件100执行一些未授权及潜在破坏性动作的病毒和其他恶意软件的攻击来保护可移除移动闪存存储器件100。通过使用在授权协议中的 CAPTCHA提问来获得对可移除移动闪存存储器件100的访问或执行在可移除移动闪存存储器件100上的受限操作,可移除移动闪存存储器件100可以保证人类用户-而不是恶意软件-正请求执行命令。另外,因为可移除移动闪存存储器件100生成CPATCHA提问并确定响应是否令人满意,因此当主机设备仅用于递送CAPTCHA提问并接收响应时,由这些实施例提供的保护不关联到具体主机设备。这在可移除移动闪存存储器件100可能与大量主机设备一起使用的情况下(例如,当可移除移动闪存存储器件100是用于在若干不同主机设备之间传输数据的USB盘或存储卡时),尤其有优势。在这些情况下,可移除移动闪存存储器件100随身带有CAPTCHA保护,且如果有保护的话,不需要取决于何种保护存在于给定主机设备上。而且,如上所述,由这些实施例提供的CAPTCHA保护使得能够提供写-保护,而无需在可移除闪存存储器件100上的物理写-保护开关。消除物理写-保护开关可以简化可移除移动闪存存储器件100的工业设计,且降低其制造成本。当然,由这些实施例提供的 CAPTCHA保护还可以结合具有物理写-保护开关的可移除移动闪存存储器件而使用。在这种情况下,CAPTCHA提问可以在写-保护开关处于禁用位置的情况下提供针对恶意软件的保护。应该注意,可以在这些实施例中使用许多替换。例如,如上所述,可以使用各种类型的CAPTCHA提问。因此,代替需要用户识别至少一个失真图像的CAPTCHA提问,CAPTCHA 提问可以需要用户识别至少一个失真声音。例如,如图4所示,可移除移动闪存存储器件 100可以向主机设备50提供八个数字的失真音频记录,并提示用户键入或以其他方式提供刚刚播放的八个数字。作为另一替换,代替键入对CAPTCHA提问的响应,用户可以通过向麦克风中说话或提供一些其他输入来提供响应。而且,代替提供失真图像和/或失真音频, CAPTCHA提问可以呈现需要不能由计算机自动提供的用户回答的问题。因为CAPTCHA提问可以采用许多形式,因此以下权利要求不应该被理解为需要具体形式的CAPTCHA提问,除非明确述及。而且,可以以任何适当的顺序进行上述动作。例如,图2的流程图200示出在确定来自主机设备50的命令是受限命令(动作M0)之后CAPTCHA提问的生成(动作 230)。但是,在替换的实施例中,可移除移动闪存存储器件100可以预先生成并存储一个或多个CAPTCHA提问,且响应于确定该命令是受限命令而仅提取存储的CAPTCHA提问。另外, 虽然随机地生成在关于CAPTCHA提问的上述例子中使用的字符的序列,但是在其他实施例中,不随机地生成字符的序列。 意图先前详细的描述理解为本发明可以采用的所选形式的例示、而不是本发明的限定。仅仅所附权利要求及其所有等同物意图限定所要求保护的本发明的范围。最后,应该注意,在此描述的任何优选实施例的任意方面可以单独使用或彼此结合使用。
权利要求
1.一种使用“全自动区分计算机和人类的公共图灵测试"(“CAPTCHA“)提问来保护可移除移动闪存存储器件的方法,该方法包括由与主机设备通信的可移除移动闪存存储器件执行从主机设备接收命令;生成CAPTCHA提问;向主机设备提供CAPTCHA提问;从主机设备接收对CAPTCHA提问的响应;确定该响应是否满足CAPTCHA提问;以及只有该响应满足CAPTCHA提问,才执行该命令。
2.根据权利要求1的方法,还包括确定该命令是否是受限命令,其中,只有确定该命令是受限命令,所述CAPTCHA提问才提供给主机设备。
3.根据权利要求2的方法,其中,受限命令是如果被执行则将导致在可移除移动闪存存储器件中存储的数据丢失的命令。
4.根据权利要求2的方法,其中,受限命令是如果写-保护开关存在于可移除移动闪存存储器件上并被使能、则将不被执行的命令。
5.根据权利要求2的方法,其中,受限命令包括以下命令中的一个或多个向可移除移动闪存存储器件写数据的命令、从可移除移动闪存存储器件读取数据的命令、重新格式化可移除移动闪存存储器件的命令、从可移除移动闪存存储器件擦除数据的命令、更新在可移除移动闪存存储器件上的固件的命令、从可移除移动闪存存储器件获得诊断数据的命令、对可移除移动闪存存储器件分区的命令、以及关于可移除移动闪存存储器件的加密能力的命令。
6.根据权利要求1的方法,其中,CAPTCHA提问需要用户识别至少一个失真图像。
7.根据权利要求1的方法,其中,生成CAPTCHA提问包括 生成随机串;把随机串呈现为图形图像;以及使该图形图像失真并对该图形图像添加视觉噪声。
8.根据权利要求1的方法,其中,所述可移除移动闪存存储器件包括通用串行总线 (USB)器件。
9.根据权利要求1的方法,其中,所述可移除移动闪存存储器件包括存储卡。
10.根据权利要求1的方法,其中,所述可移除移动闪存存储器件没有写-保护开关。
11.一种可移除移动闪存存储器件,包括输入/输出端口,配置为将该可移除移动闪存存储器件连接到主机设备; 存储器;以及与所述输入/输出端口和所述存储器通信的电路,其中,所述电路可操作以 从所述主机设备接收命令; 生成CAPTCHA提问;向所述主机设备提供所述CAPTCHA提问; 从所述主机设备接收对所述CAPTCHA提问的响应; 确定该响应是否满足该CAPTCHA提问;以及只有该响应满足该CAPTCHA提问,才执行该命令。
12.根据权利要求11的可移除移动闪存存储器件,其中,该电路进一步可操作以确定该命令是否是受限命令,其中,只有确定该命令是受限命令,该CAPTCHA提问才提供给所述主机设备。
13.根据权利要求12的可移除移动闪存存储器件,其中,受限命令是如果被执行则将导致在可移除移动闪存存储器件中存储的数据丢失的命令。
14.根据权利要求12的可移除移动闪存存储器件,其中,受限命令是如果写-保护开关存在于可移除移动闪存存储器件上并被使能、则将不被执行的命令。
15.根据权利要求12的可移除移动闪存存储器件,其中,受限命令包括以下命令中的一个或多个向可移除移动闪存存储器件写数据的命令、从可移除移动闪存存储器件读取数据的命令、重新格式化可移除移动闪存存储器件的命令、从可移除移动闪存存储器件擦除数据的命令、更新在可移除移动闪存存储器件上的固件的命令、从可移除移动闪存存储器件获得诊断数据的命令、对可移除移动闪存存储器件分区的命令、以及关于可移除移动闪存存储器件的加密能力的命令。
16.根据权利要求11的可移除移动闪存存储器件,其中,所述CAPTCHA提问需要用户识别至少一个失真图像。
17.根据权利要求11的可移除移动闪存存储器件,其中,所述电路可操作以通过以下来生成该CAPTCHA提问生成随机串;把随机串呈现为图形图像;以及使该图形图像失真并对该图形图像添加视觉噪声。
18.根据权利要求11的可移除移动闪存存储器件,其中,所述可移除移动闪存存储器件包括通用串行总线(USB)器件。
19.根据权利要求11的可移除移动闪存存储器件,其中,所述可移除移动闪存存储器件包括存储卡。
20.根据权利要求11的可移除移动闪存存储器件,其中,所述可移除移动闪存存储器件没有写-保护开关。
全文摘要
在此描述的实施例通常使用提问来保护可移除移动闪存存储器件,其中,该提问可以以″全自动区分计算机和人类的公共图灵测试″(″CAPTCHA″)的形式。在一个实施例中,提供如下方法,其中,可移除移动闪存存储器件从主机设备接收命令,生成CAPTCHA提问,向主机设备提供CAPTCHA提问,从主机设备接收对CAPTCHA提问的响应,确定该响应是否满足CAPTCHA提问,以及只有该响应满足CAPTCHA提问,才执行该命令。在另一实施例中,提供可移除移动闪存存储器件以执行这些动作。
文档编号G06F21/00GK102257504SQ200980150774
公开日2011年11月23日 申请日期2009年11月17日 优先权日2008年12月18日
发明者卡洛斯.J.冈萨雷斯, 史蒂文.T.斯普劳斯, 罗恩.巴齐莱, 达瓦尔.帕里克 申请人:桑迪士克公司