1. Field of the Invention
The invention relates to system and method of temporary secure boot process of an electronic device. More particularly, the invention relates to a temporary secure boot process by use of unique device information.
2. Description of the Prior Art
Electronic devices are installed with an operating system. Normally in a boot up process, a bootloader would initiate components of the electronic device and load the operating system so that a user may operate the electronic device to perform various functions. Some user specific data or user-installed programs are also controlled by the operation system. However, when the electronic device encounters error or is sent to the care center for examination, user might not wish to reveals personal data/files during examination, or the electronic device may not be able to boot up as normal.
The invention discloses system and method of temporary secure boot process of an electronic device. A method of temporary secure boot process according to an embodiment of the invention comprises: generating a first token according to an identification data of the electronic device; sending a request along with the first token to a service provider, the request corresponding to a boot package; receiving a second token and a boot package from the service provider; verifying the second token and the boot package; and executing the boot package according to verification result.
Another embodiment of the invention comprises: an electronic device, configured to execute at least an operating system by a processor. The processor comprises: a token generator, configured to generate a first token according to a first key; a token verification unit, configured to verify a second token according to the first key of a first key pair; a boot package execution unit configured to execute a secure boot package according to the verification of the second token; and a key pair unit configured to store at least the first key, the first key being one key of a first key pair. The system further comprises a communication interface unit within the electronic device configured to transmit the first token and receive the second token and the secure boot package; and a service provider configured to verify the first token and to generate the second token according to a second key of the first key pair and the secure boot package according to a third key of a second key pair according to the verification of the first token.
Yet in another embodiment of the invention discloses method for boot package processing. The method comprises: receiving a first token along with a request from an electronic device; verifying an identity of the electronic device according to the first token; in response to the identity being confirmed, generating a second token comprising at least partial content of the first token; securing a boot package corresponding to the request by the second token; and sending the second token and the secured boot package to the electronic device.
These and other objectives of the present invention will no doubt become obvious to those of ordinary skill in the art after reading the following detailed description of the preferred embodiment that is illustrated in the various figures and drawings.
The invention discloses system and method for temporary secure boot processing of an electronic device. The electronic device may send request to a service provider for providing a boot package that can only be executed temporarily. To ensure security of the request, the electronic device may generate a token along with the request. In response to the request, the service provider may verify the token to determine identity of request sender. Once confirmed, the service provider sends a secure boot package along with another token. The electronic device also verifies the token and the secure boot package to confirm the identity of the service provider. The electronic device and the service provider may generate the tokens according to particular information held by the two parties only. In addition, to avoid such information being stolen by malicious party, the electronic device may process the request and the token in a secure domain that cannot be accessed by unauthorized user.
Please refer to
The service provider 200 may verify identity of the electronic device 100 and record the activity for security reason. In response to the request and confirmation of the ID token, the service provider 200 may send back a secure boot package along with an authentication token to the electronic device 100. The authentication token is also verified by the electronic device 100 so as to confirm the identity of boot package sender. Once confirmed, the electronic device 100 may execute the boot package temporarily and reboot by normal procedure when the execution of the boot package finishes. Similarly, the boot package and the authentication token may be received by the other electronic device that sends the request and be stored in a storage device that can be accessed by the electronic device 100. For example, when the service provider 200 verifies the ID token sent by a logged-in user, the user then may access the secure boot package and the authentication token by downloading them and storing in the SD/micro SD card or hard-disk memory of a personal computer. The electronic device 100 can access the files from the SD or micro SD card or by connecting to the personal computer via USB connection.
Next please refer to
The token verification unit 140 verifies the authentication token according to another predetermined algorithm, which may be a decryption algorithm known in the art. Both the electronic device 100 and the service provider 200 may possess at least one pair of keys used for encryption and decryption. The key pair is stored in the key pair unit 160. The keys may be stored during manufacturing stage or obtained by a secure procedure, and different electronic device 100 may hold different pair of keys. The key pair may be RSA public and private key pair. The electronic device 100 holds the public key while the service provider 200 holds the private key. The ID token may be generated by encrypting the identification data and the random data by the public key of the electronic device 100, and be verified by the service provider 200 by using the private key for decryption. Therefore, the token generator 130 and the service provider 200 may share corresponding pair of algorithms for encryption and decryption respectively. Similarly, the token verification unit 140 shares corresponding pair of algorithms for decryption with the service provider 200. Details of the token generation and verification will be described later.
The boot package execution unit 150 is configured to execute the boot package received from the service provider 200 upon verification of the authentication token being confirmed. To provide better security, the boot package may be further secured by a key, and the boot package execution unit 150 may verify the secure boot package prior to execution. In this case, as described above, the boot package execution unit 150 may access corresponding key in the key pair unit 160 and use corresponding algorithms for boot package protection. Similar to the tokens, the service provider 200 may secure the boot package by signing or encrypting with a private key and the boot package execution unit 150 may verify the secure boot package by corresponding public key. For example, the boot package may be signed with a signature generated from the private key of the service provider 200. The boot package may be designated to perform specific tasks, such as file system backup, customization, system check and/or others. The electronic device 100 may send request of particular boot package for specific purpose.
The electronic device 100 also comprises a communication interface 170 which is configured to communicate with the service provider 200. The communication interface may transit the ID token, authentication token and boot package between the electronic device 100 and the service provider 200 via suitable transmission protocol. The transmission protocol may be wired or wireless protocol. The communication interface 170 may be configured to communicate with another electronic device, such as a personal computer. The tokens and boot package are transmitted between the electronic device 100 and the service provider 200 via the other electronic device. For example, the communication interface may be a USB interface or memory interface.
In below token generations and verifications will be described in further details.
Next please refer to
In response to the identification token is confirmed, the service provider 200 generates an authentication token according to content of the ID token and the first private key in step 730. To make sure the response from the service device 200 is sent to the right requesting device, the authentication token may comprise the ID data and the random data within the ID token so that it can only be verified by the requesting device that generates these data. To provide better protection, the ID data and random data may be pre-processed by operations such as hash operation prior to encrypting by the first private key. In other embodiment of the invention, the authentication token may also comprise other information that is necessary. Then the boot package corresponding to the request is secured according to a second private key in step 740. The boot package may be signed with a signature generated by the second private key for example. The authentication token is then sent to the requesting device along with the secured boot package in step 750. In one embodiment of the invention, the token and secured boot package may be sent via wireless protocol. In another embodiment of the invention, the authentication token and boot package may be stored in a storage device that can be accessed by the electronic device 100, such as an SD card.
In one embodiment of the invention, the electronic device may be a handheld device such as smart phone, tablet, game console, PDA, multimedia player and/or other devices. In one embodiment of the invention, the temporary secure boot process may be initiated by specific user input, such as long press of power button and home key during device boot up. Yet in another embodiment of the invention, the temporary secure boot process may be executed by a boot loader in a secure domain or other software implemented by TrustZone technology, the tokens and boot package may be transmitted via wireless transmission or via hardwire connection to a storage device, such as SD card, USB external memory, etc.
Those skilled in the art will readily observe that numerous modifications and alterations of the device and method may be made while retaining the teachings of the invention. Accordingly, the above disclosure should be construed as limited only by the metes and bounds of the appended claims.
This application claims priority of U.S. Provisional No. 61/565,955 filed on Dec. 1, 2011.
Number | Name | Date | Kind |
---|---|---|---|
6799197 | Shetty | Sep 2004 | B1 |
6975727 | Vandergeest | Dec 2005 | B1 |
7051206 | Giest | May 2006 | B1 |
7428750 | Dunn | Sep 2008 | B1 |
7552333 | Wheeler | Jun 2009 | B2 |
7681048 | Starr | Mar 2010 | B2 |
8165303 | Steele | Apr 2012 | B1 |
8301884 | Choi | Oct 2012 | B2 |
8393001 | Libenzi | Mar 2013 | B1 |
8452969 | Iyer | May 2013 | B2 |
8527618 | Wiese | Sep 2013 | B1 |
20020073306 | Aluzzo et al. | Jun 2002 | A1 |
20020112161 | Thomas | Aug 2002 | A1 |
20040111331 | Yano | Jun 2004 | A1 |
20040123109 | Choi | Jun 2004 | A1 |
20050097316 | Kim | May 2005 | A1 |
20070214370 | Sato | Sep 2007 | A1 |
20070269042 | Tanaka | Nov 2007 | A1 |
20080028209 | Dare | Jan 2008 | A1 |
20080082813 | Chow | Apr 2008 | A1 |
20080184218 | Largman et al. | Jul 2008 | A1 |
20080189550 | Roundtree | Aug 2008 | A1 |
20080244271 | Yu | Oct 2008 | A1 |
20100005304 | Maruyama | Jan 2010 | A1 |
20100031034 | Kim | Feb 2010 | A1 |
20100050241 | Yan | Feb 2010 | A1 |
20100250925 | Hiraide | Sep 2010 | A1 |
20100290076 | Itoh | Nov 2010 | A1 |
20100332820 | Matsushima | Dec 2010 | A1 |
20110002462 | Stewart | Jan 2011 | A1 |
20110021181 | Weiner | Jan 2011 | A1 |
20110066859 | Iyer | Mar 2011 | A1 |
20110093714 | Schaecher | Apr 2011 | A1 |
20110274273 | Fiske | Nov 2011 | A1 |
20110296174 | Nakayama | Dec 2011 | A1 |
20120087493 | Chidambaram et al. | Apr 2012 | A1 |
20120240211 | Counterman | Sep 2012 | A1 |
20120294445 | Radutskiy | Nov 2012 | A1 |
20130117564 | Chang et al. | May 2013 | A1 |
Number | Date | Country |
---|---|---|
1731726 | Feb 2006 | CN |
101379506 | Mar 2009 | CN |
101398764 | Apr 2009 | CN |
102007505 | Apr 2011 | CN |
0 725 512 | Aug 1996 | EP |
200539706 | Dec 2005 | TW |
200629085 | Aug 2006 | TW |
200841187 | Oct 2008 | TW |
200915183 | Apr 2009 | TW |
200951848 | Dec 2009 | TW |
201021500 | Jun 2010 | TW |
201108699 | Mar 2011 | TW |
201110653 | Mar 2011 | TW |
201137659 | Nov 2011 | TW |
201141125 | Nov 2011 | TW |
Entry |
---|
Office action mailed on Sep. 24, 2014 for the U.S. Appl. No. 13/674,068, filed Nov. 11, 2012, p. 1-17. |
Office action mailed on Dec. 29, 2014 for the Taiwan application No. 101144444, filed Nov. 28, 2012, p. 1-9. |
Office action mailed on Jul. 17, 2014 for the U.S. Appl. No. 13/682,739, filed Nov. 21, 2012, p. 1-27. |
Office action mailed on Feb. 11, 2014 for the U.S. Appl. No. 13/682,739, filed Nov. 21, 2012, p. 1-23. |
Notice of Allowance mailed on Jan. 28,2015 for the Taiwan application No. 101144442, filing date: Nov. 28, 2012, p. 1-5. |
Office action mailed on Jun. 16, 2014 for the Taiwan application No. 101144442, filing date Nov. 28, 2012, p. 1-9. |
Office action mailed on Feb. 2, 2015 for the China application No. 201210510215.9, filing date Dec. 3, 2012, p. 1-13. |
Office action mailed on Apr. 30, 2015 for the U.S. Appl. No. 13/682,739, filed Nov. 21, 2012, p. 1-41. |
Office action mailed on May. 29, 2015 for the China application No. 201210511241.3, filing date Dec. 3, 2012, p. 1-6. |
Yandji et al., “Research on a Normal File Encryption and Decryption,” Computer and Management (Caman), 2011 IEEE International Conference on Year: 2011, pp. 1-4. |
Zugenmaier et al., “Transparent Encryption for External Storage Media with Key Management Adapted to Mobile Use,” Annual Computer Security Applications Conference, 2009 IEEE computer society, ACSAC.2009.38 Year: 2009 pp. 333-339. |
Notice of Allowance mailed on Sep. 14, 2015 for the U.S. Appl. No. 13/682,739, filed Nov. 21, 2012, p. 1-18. |
Notice of Allowance mailed on Nov. 16, 2015 for the U.S. Appl. No. 14/686,752, filed Apr. 14, 2015, p. 1-20. |
Number | Date | Country | |
---|---|---|---|
20130145140 A1 | Jun 2013 | US |
Number | Date | Country | |
---|---|---|---|
61565955 | Dec 2011 | US |