The present invention relates generally to portable memory systems with encryption algorithms, and more particularly, to such systems supporting encryption functions for host computer systems.
With the increasing capacity of small portable media (e.g. Flash drives) comes the increasing danger of losing confidential information. The increasing capacity of portable media facilitates their use as viable storage in institutions that may possess large amounts of confidential information. A lost Flash drive is a common problem. It is not the cost of replacement that is the issue, it is the leakage of confidential information and susceptibility to litigation and fines.
In an effort to protect confidential information, many vendors of mass storage media include algorithms for encrypting information as it is stored internally. In the event the drive is lost, confidential information remains inaccessible due to its obfuscation. Corporate and government organizations sensitive to confidentiality issues have to rely on policies that advocate the use of encrypted drives. Many companies restrict use of removable storage by policy to keep sensitive information from being disclosed unintentionally. Some go as far as to block physical access to USB ports.
Currently, computers have no way to verify that attached external storage supports an appropriate level of encryption. Thus, there is a serious problem with a host computer system being able to distinguish between a mass storage equipped with encryption algorithms and a drive that simply stores information as clear text. A host computer system could simply query the portable media system as to its capabilities but the host computer system could easily be ‘spoofed.’ This is because the internal encryption algorithm in a portable media system is not accessible to a host computer system either directly or indirectly. A host computer always exchanges information with encrypted media in clear information form, which is identical to an information exchange with unencrypted media.
Solutions to these problems have been long sought but prior developments have not taught or suggested any solutions and, thus, solutions to these problems have long eluded those skilled in the art.
The present invention provides a portable media system for a host computer system, and method of operation thereof, that includes: a controller in the portable media system for communicating clear information between the portable media system and the host computer system; and an encryption system in the portable media system for providing an encryption algorithm for the controller to decrypt cipher information for the host computer system.
Certain embodiments of the invention have other steps or elements in addition to or in place of those mentioned above. The steps or element will become apparent to those skilled in the art from a reading of the following detailed description when taken with reference to the accompanying drawings.
Various ones of the appended drawings merely illustrate example embodiments of the present disclosure and cannot be considered as limiting its scope.
The following embodiments are described in sufficient detail to enable those skilled in the art to make and use the invention. It is to be understood that other embodiments would be evident based on the present disclosure, and that system, process, or mechanical changes may be made without departing from the scope of the present invention.
In the following description, numerous specific details are given to provide a thorough understanding of the invention. However, it will be apparent that the invention may be practiced without these specific details. In order to avoid obscuring the present invention, some well-known circuits, system configurations, and process steps are not disclosed in detail.
The drawings showing embodiments of the system are semi-diagrammatic and not to scale and, particularly, some of the dimensions are for the clarity of presentation and are shown exaggerated in the drawing Figures Similarly, although the views in the drawings for ease of description generally show similar orientations, this depiction in the Figures is arbitrary for the most part. Generally, the invention can be operated in any orientation.
Where multiple embodiments are disclosed and described having some features in common, for clarity and ease of illustration, description, and comprehension thereof, similar and like features one to another will ordinarily be described with similar reference numerals. The embodiments have been numbered first embodiment, second embodiment, etc. as a matter of descriptive convenience and are not intended to have any other significance or provide limitations for the present invention.
The term “host computer system” as used herein includes computing devices, such as computers, production machines with embedded computers, smart phones, and other processor-equipped devices.
The term “portable media system” means a hand-held device containing solid-state, optical disk, or hard disk memory storage. The term “portable” means that a device is capable of being easily held in one hand like a Flash memory device or portable hard disk drive.
The term “cipher information” means information or data that has been encrypted and the term “clear information” means information or data that is essentially free of encryption.
Referring now to
The portable media system 100 has an internal memory system 102. The memory system 102 can be a non-volatile or volatile memory including solid-state, optical disk, hard disk, or other information storage systems.
The memory system 102 is connected to an internal controller 104 which acts as the interface for communication of information between the memory system 102 and the host computer system 110.
The portable media system 100 is shown, as an example, as a NAND Flash memory chip having a USB (Universal Serial Bus) connector at one end. When connected by the USB connector to the host computer system 110, the portable media system 100 appears as just another attached drive with a unique drive letter assigned by the host computer system 110.
Referring now to
The portable media system 100 contains an internal encryption system 202 that the controller 104 uses to encrypt and decrypt information. The internal encryption system 202 can be a software implemented encryption algorithm in the controller 104 or a hardware implemented encryption algorithm in an application specific integrated circuit (ASIC).
In the portable media system 100 of the present embodiment, the encryption system 202 in the controller 104 is a software implemented encryption algorithm.
The host computer system 110 sends commands in a command set 204 to the portable media system 100. For example, as part of the packet exchange defined for Flash memory devices and USB 2.0 standards, all USB storage devices must support a SCSI (Small Computer Systems Interface) communication protocol in order to exchange data. This is the standard for all mass storage class devices connected to a computer. In addition, a USB mass storage device must support requests for information regarding the management of the device commonly referred to as descriptors, which include such things as VID (vendor ID), PID (product ID), etc. Responses to commands/requests are currently returned in a clear data form.
The controller 104 takes clear information 206 from the host computer system 110 and encrypts the clear information 206 to provide it as cipher information 208 to the memory system 102.
Likewise, cipher information 208 from the memory system 102 is converted by the encryption system 202 and the controller 104 before it is sent as clear information 206 to the host computer system 110.
In the present embodiment, the host computer system 110 is not permitted direct access to the cipher information 208. Only the clear information 206 is transmitted between the host computer system 110 and the controller 104.
Referring now to
Commands in an enhanced command set 302 permit the exchange of cipher information 304, the cipher information 304 passing through the encryption system 202, and the clear information 206 with the host computer system 110. For example, the SCSI “Read” command can be extended with an attribute to indicate whether decryption is to be performed on data being accessed. With the attribute “clear” (to be backwardly compatible with non-encrypting media), the controller 104 would decrypt the cipher information 208 prior to returning the clear information 206 to the host computer system 110. With the attribute “set”, the controller 104 would not decrypt the cipher information 208 and return it as the cipher information 304 to the host computer system 110.
Thus, the host computer system 110 is able to supply the clear information 206 and read back its equivalent cipher information 304. The cipher information 304 is the same as the cipher information 208 stored in the memory system 102.
Referring now to
The enhanced command set 302 could be enhanced above the enhanced command set 204 of
When used in conjunction with the portable media system 100 of the embodiment of
Referring now to
An external encryption key 504 can be stored in the host computer system 110 and be delivered to the portable media system 100 when communication is established. The encryption keys are used to encrypt/decrypt information by the encryption system 202.
The internal encryption key 502 may be the preferred method for providing the encryption key because it means that the encryption key cannot be seen by the host computer system 110 and, therefore, is not susceptible to computer-side hacking.
The external encryption key 504 can be used to validate or confirm operability of the attached portable media system 100 to the host computer system 110.
In various embodiments, the portable media system 100 can provide encryption or decryption of information from and to the host computer system 110. The information can be stored internally in the portable media system 100, or the portable media system 100 can provide for storage of encrypted information away from the host computer system 110.
Referring now to
The memory system 102 of
The method starts in a block 602 in the host computer system 110 and in a step 1 creates random clear information in a block 604 and a random encryption key in a block 606.
In a step 2, the random clear information and the random encryption key are sent to the portable media system 100 where the controller 104 uses the random encryption key and the encryption system 202 to encrypt the random clear information.
In a step 3, which may be contemporaneous with step 2, the random clear information from the block 604 and the random encryption key from the block 606 are sent to an encryption system 608 in the host computer system 110. The host computer system 110 uses the random encryption key and the encryption system 608 to encrypt the random clear information.
In a step 4, the host computer system 110 reads the cipher information from the encryption system 202 into a cipher information block 610 and from the encryption system 608 into a reference cipher information block 612.
In a step 5, the cipher information from block 610 and the reference cipher information from block 612 are compared and the portable media system 100 is validated or not based on whether the comparison indicates there is a match or not.
However, it has been discovered that the capability of performing encryption in the host computer system as well as in the portable media system and comparing the results allows for the host computer system to verify whether the portable media system supports encryption or does not support encryption.
The above is a function of allowing the host computer system to supply the portable media system with an information sample and an encryption key. The portable media system would then execute its internal encryption algorithm on sample information using the encryption key and returning the results to the host computer system for verification. The host computer system can there compare the result to the internally encrypted sample information.
Once the host computer system determines that the result information and the internal encrypted information are the same, the host computer system is then able to obtain access to an encryption bearing portable media system while denying access to unencrypted or improperly encrypted portable media systems.
Referring now to
Cloud computing is a paradigm shift similar to the paradigm shift from mainframes to client server systems. Details of requirements are extracted from the users who no longer have a need for expertise or control over the technology infrastructure “in the cloud” that supports them. Typically, cloud computing involves over-the-Internet provision of dynamically scalable and often virtualized resources. The term “cloud” is used as a metaphor for the Internet, based on the cloud schematic of the remote repository 700.
Clear information 702 is provided in the host computer system 110 and in a step 1 is provided to the portable media system 600 where the clear information 702 is encrypted and provided in a step 2 back to the host computer system 110. The host computer system 110 is connected in a step 3 to the Internet which contains the remote repository 700 in which cipher information 704 may be stored.
The portable media system 600 minimizes the chances of computer hacking because encryption/decryption is performed away from the host computer system 110 and the remote repository 700.
As would be evident, the host computer system 110 can instruct the cipher information 704 to be returned to the host computer system 110 for transfer to the portable media system 600 for decryption and provision of the clear information 702 back to the host computer system 110.
Referring now to
While there are many Flash memory device suppliers who declare that their products support encryption, there is no way for a user to verify this because the host computer system has no way of checking for encryption in a connected device.
While the invention has been described in conjunction with a specific best mode, it is to be understood that many alternatives, modifications, and variations will be apparent to those skilled in the art in light of the aforegoing description. Accordingly, it is intended to embrace all such alternatives, modifications, and variations that fall within the scope of the included claims. All matters set forth herein or shown in the accompanying drawings are to be interpreted in an illustrative and non-limiting sense.
This application is a Continuation Application under 35 USC § 120 of U.S. patent application Ser. No. 15/671,876, entitled “Encrypting Portable Media System and Method of Operation Thereof,” filed on Aug. 8, 2017, which is a Continuation Application under 35 USC § 120 of U.S. patent application Ser. No. 12/826,646, entitled “Encrypting Portable Media System and Method of Operation Thereof,” filed on Jun. 29, 2010, which claims priority from U.S. Provisional Patent Application No. 61/221,374, filed Jun. 29, 2009, and entitled “Encrypting Mass Storage System and Method of Operation Thereof,” all of which are incorporated herein by reference in their entirety.
Number | Name | Date | Kind |
---|---|---|---|
6134660 | Boneh | Oct 2000 | A |
7069447 | Corder | Jun 2006 | B1 |
7136995 | Wann | Nov 2006 | B1 |
7631195 | Yu et al. | Dec 2009 | B1 |
7640436 | Shibata | Dec 2009 | B2 |
8745409 | Teicher et al. | Jun 2014 | B2 |
8832440 | Johnson et al. | Sep 2014 | B2 |
9075571 | Bolotin et al. | Jul 2015 | B2 |
9262611 | Johnson et al. | Feb 2016 | B2 |
9734356 | Johnson et al. | Aug 2017 | B2 |
10204240 | Johnson et al. | Feb 2019 | B2 |
20020095382 | Taoka et al. | Jul 2002 | A1 |
20020141588 | Rollins | Oct 2002 | A1 |
20020188856 | Worby et al. | Dec 2002 | A1 |
20030115447 | Pham et al. | Jun 2003 | A1 |
20030221103 | Hirota et al. | Nov 2003 | A1 |
20040236958 | Teicher | Nov 2004 | A1 |
20050175173 | Nakamura | Aug 2005 | A1 |
20060105748 | Ooi et al. | May 2006 | A1 |
20060289659 | Mizushima | Dec 2006 | A1 |
20070204171 | Ito et al. | Aug 2007 | A1 |
20070214370 | Sato | Sep 2007 | A1 |
20080022099 | Kawano et al. | Jan 2008 | A1 |
20080065905 | Salessi | Mar 2008 | A1 |
20080072073 | Yang | Mar 2008 | A1 |
20080240434 | Kitamura | Oct 2008 | A1 |
20080263363 | Jueneman | Oct 2008 | A1 |
20080285750 | Shibata | Nov 2008 | A1 |
20080310633 | Brown | Dec 2008 | A1 |
20090055573 | Ito | Feb 2009 | A1 |
20090089590 | Challener | Apr 2009 | A1 |
20090164789 | Carvounas et al. | Jun 2009 | A1 |
20090274300 | Tou | Nov 2009 | A1 |
20090313397 | England et al. | Dec 2009 | A1 |
20100031056 | Harada | Feb 2010 | A1 |
20100153708 | Malka | Jun 2010 | A1 |
20100246827 | Lauter et al. | Sep 2010 | A1 |
20100272258 | Sadovsky | Oct 2010 | A1 |
20100287373 | Johnson et al. | Nov 2010 | A1 |
20100332847 | Johnson et al. | Dec 2010 | A1 |
20110060921 | Michael | Mar 2011 | A1 |
20120096284 | Matsukawa et al. | Apr 2012 | A1 |
20160119339 | Bolotin et al. | Apr 2016 | A1 |
20160259736 | Bolotin et al. | Sep 2016 | A1 |
20170357832 | Johnson | Dec 2017 | A1 |
Number | Date | Country |
---|---|---|
WO-2009042820 | Apr 2009 | WO |
Entry |
---|
“U.S. Appl. No. 12/826,646,Advisory Action dated Feb. 22, 2013”, 3 pgs. |
“U.S. Appl. No. 12/826,646,Advisory Action dated Aug. 11, 2016”,3 pgs. |
“U.S. Appl. No. 12/826,646,Advisory Action dated Oct. 19, 2015”,3 pgs. |
“U.S. Appl. No. 12/826,646, Final Office Action dated Mar. 17, 2017”, 18 pgs. |
“U.S. Appl. No. 12/826,646, Final Office Action dated May 13, 2016”, 17 pgs. |
“U.S. Appl. No. 12/826,646, Final Office Action dated Aug. 5, 2015”, 14 pgs. |
“U.S. Appl. No. 12/826,646, Final Office Action dated Nov. 20, 2012”, 12 pgs. |
“U.S. Appl. No. 12/826,646, Non Final Office Action dated Feb. 10, 2016”, 17 pgs. |
“U.S. Appl. No. 12/826,646, Non Final Office Action dated Apr. 17, 2015”, 13 pgs. |
“U.S. Appl. No. 12/826,646, Non Final Office Action dated Jun. 27, 2012”, 12 pgs. |
“U.S. Appl. No. 12/826,646, Non Final Office Action dated Nov. 16, 2016”, 17 pgs. |
“U.S. Appl. No. 12/826,646, Notice of Allowance dated Jun. 6, 2017”,6 pgs. |
“U.S. Appl. No. 12/826,646, Response filed Jan. 25, 2013 to Final Office Action dated Nov. 20, 2012”, 5 pgs. |
“U.S. Appl. No. 12/826,646, Response filed Feb. 16, 2017 to Non Final Office Action dated Nov. 16, 2016”, 11 pgs. |
“U.S. Appl. No. 12/826,646, Response filed Apr. 28, 2016 to Non Final Office Action dated Feb. 10, 2016”, 13 pgs. |
“U.S. Appl. No. 12/826,646, Response filed May 17, 2017 to Final Office Action dated Mar. 17, 2017”, 13 pgs. |
“U.S. Appl. No. 12/826,646, Response filed Jul. 17, 2015 to Non Final Office Action dated Apr. 17, 2015”, 11 pgs. |
“U.S. Appl. No. 12/826,646, Response filed Aug. 2, 2016 to Final Office Action dated May 13, 2016”, 13 pgs. |
“U.S. Appl. No. 12/826,646, Response filed Sep. 11, 2014 to Advisory Action dated Feb. 22, 2013”, 15 pgs. |
“U.S. Appl. No. 12/826,646, Response filed Sep. 30, 2016 to Advisory Action dated Aug. 11, 2016”, 13 pgs. |
“U.S. Appl. No. 12/826,646, Response filed Oct. 2, 2015 to Final Office Action dated Aug. 5, 2015”, 14 pgs. |
“U.S. Appl. No. 12/826,646, Response filed Oct. 29, 2012 to Non Final Office Action dated Jun. 27, 2012”, 19 pgs. |
“U.S. Appl. No. 12/826,646, Revised Response filed May 25, 2017 to Final Office Action dated Mar. 17, 2017”, 14 pgs. |
“U.S. Appl. No. 15/671,876, Non Final Office Action dated Jun. 7, 2018”, 13 pgs. |
“U.S. Appl. No. 15/671,876, Notice of Allowance dated Oct. 9, 2018”,7 pgs. |
“U.S. Appl. No. 15/671,876, Response filed Aug. 28, 2018 to Non Final Office Action dated Jun. 7, 2018”, 12 pgs. |
Johnson, et al., “U.S. Appl. No. 12/652,035, filed Jan. 4, 2010”. |
Johnson, et al., “U.S. Appl. No. 12/684,108, filed Jan. 7, 2010”. |
Number | Date | Country | |
---|---|---|---|
20190156070 A1 | May 2019 | US |
Number | Date | Country | |
---|---|---|---|
61221374 | Jun 2009 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 15671876 | Aug 2017 | US |
Child | 16250941 | US | |
Parent | 12826646 | Jun 2010 | US |
Child | 15671876 | US |