This application claims priority under 35 U.S.C. §119(a) to Indian Provisional Patent Application Serial No. 971/CHE/2014, which was filed in the Indian Intellectual Property Office on Feb. 26, 2014, and Indian Complete Patent Application Serial No. 971/CHE/2014, which was filed in the Indian Intellectual Property Office on Oct. 27, 2014, the entire contents of which are incorporated herein by reference.
1. Field of the Invention
The present invention relates to data security and more particularly to a method and system of secure recovery of passcode associated with encrypted data.
2. Description of the Related Art
With increasing use of electronic devices for personal and enterprise activities, data present in the electronic devices may need higher security. To improve security of the data present in an electronic device, the electronic device manufacturers have introduced solutions, which provide a personal mode for personal data and a secure mode for sensitive data present in the electronic device. A secure environment may be provided for accessing the sensitive data and secure applications associated with the sensitive data. Examples of sensitive data may include enterprise data, data in applications requiring authentication like banking, ticketing, loyalty programs and the like.
For security of the secure mode and the sensitive data, a user of the electronic device may access the secure applications operating in the secure mode and the sensitive data through a passcode. The user passcode may be used for generating an encryption key for the secure data stored in the electronic device. If the user of the electronic device forgets the password, then the secure data in the electronic device may be lost as it may not be possible to recover the encryption key used to encrypt the secure data without password. In case, the user of the electronic device store sensitive data encrypted with the user's passcode in cloud storage, it may be difficult to recover the sensitive data in case of loss of the electronic device or a hardware failure.
Hence, there is a need to securely recover the password associated with the encrypted data to recover sensitive data from the electronic device
The above information is presented as background information only to help the reader to understand the present invention. Applicants have made no determination and make no assertion as to whether any of the above might be applicable as Prior Art with regard to the present application.
The principal object of the invention is to provide a method and system for data security in an electronic device.
Another object of the invention is to provide a method and system for passcode recovery in the electronic device.
Yet another object of the invention is to create multiple encrypted shares of a passcode or passcode hash and distribute the created multiple shares to a plurality of physically separated entities in a device management system.
Accordingly the embodiments herein provide a method of providing data security. The method includes generating a plurality of secret shares for an encrypted passcode and distributing each the secret share to a plurality of entities which are separated physically
Accordingly the embodiments herein provide a system for data security. The system is configured to generate a plurality of secret shares for an encrypted passcode and distribute each secret share to a plurality of entities which are separated physically.
A computer program product comprising computer executable program code recorded on a computer readable a non-transitory storage medium. The computer executable program code when executed causes the product to generate a plurality of secret shares for an encrypted passcode and distribute each secret share to a plurality of entities which are separated physically.
These and other aspects of the embodiments herein will be better appreciated and understood when considered in conjunction with the following description and the accompanying drawings. It should be understood, however, that the following descriptions, while indicating preferred embodiments and numerous specific details thereof, are given by way of illustration and not of limitation. Many changes and modifications may be made within the scope of the embodiments herein without departing from the spirit thereof, and the embodiments herein include all such modifications.
This invention is illustrated in the accompanying drawings, throughout which like reference letters indicate corresponding parts in the various figures. The embodiments herein will be better understood from the following description with reference to the drawings, in which:
The embodiments herein and the various features and advantageous details thereof are explained more fully with reference to the non-limiting embodiments that are illustrated in the accompanying drawings and detailed in the following description. Descriptions of well-known components and processing techniques are omitted so as to not unnecessarily obscure the embodiments herein. Also, the various embodiments described herein are not necessarily mutually exclusive, as some embodiments can be combined with one or more other embodiments to form new embodiments. The term “or” as used herein, refers to a non-exclusive or, unless otherwise indicated. The examples used herein are intended merely to facilitate an understanding of ways in which the embodiments herein can be practiced and to further enable those skilled in the art to practice the embodiments herein. Accordingly, the examples should not be construed as limiting the scope of the embodiments herein.
Throughout the description the terms “mobile device” and “electronic device” have been used interchangeably and refer to electronic device including a data encrypted with a passcode.
Embodiments achieve a method and system of providing data security by encrypting the data. The data is encrypted with a user entered passcode. The passcode or a hash of the passcode is encrypted and divided into multiple secret shares and each of the multiple secret shares is distributed to a plurality of physically separated entities.
Although the
In an embodiment, the secure mode 204 is implemented as a container in the electronic device 104. The container provides a secure environment in the electronic device 104 with its own home screen, launcher, applications and widgets. In the container type secure mode 204 implementations, each container can be associated with the passcode. Data present in the container is encrypted using an encrypted key. The encrypted key is generated using a user entered passcode.
The passcode or hash of the passcode is encrypted. A secure application 112 can be configured to create secret shares of the encrypted hash passcode or the passcode.
Data present in the container cannot be recovered in case the passcode is lost. To recover the passcode and the encrypted data present in the container, the embodiments described herein provides a recovery module 214 for recovering the passcode and the encrypted data present in the container of the electronic device 104. The recovery module 214 can be configured to recover the passcode and the encrypted data present in the electronic device 104. The details of the method of recovering the passcode and the encrypted data are provided in conjunction with
Examples of encrypted data may include sensitive data, including, but not limited to, enterprise data, data in applications requiring authentication like banking, ticketing, loyalty programs, cloud data, and proprietary data.
The
In an embodiment, a web based interface for password recovery can be provided with administrator of the MDM system 200 to recover cloud storage in case of device loss or damage.
In an embodiment, if the electronic device 104 is reported lost or an employee has left the organization, the administrator of MDM server 102 managing the electronic device 104 can initiate a passcode recovery request and encrypted data recovery request.
The device monitoring and policy enforcement 304 in the MDM server can be configured to monitor the enterprise data present in the electronic device 104 and push various policies related to device monitoring, data security, and data recovery.
The communication module 306 can be configured to communicate with plurality of entities involved in the data security. For example, the communication module 306 can be configured to send authentication verification for a passcode reset request from an electronic device 104.
At step 410, the method 400 includes encrypting the file system encryption key using the passcode or the created hash of the passcode for securing the encrypted data in the electronic device. To provide data security, files created in the secure environment, can be encrypted with a 256-bit key generated per file. This key is wrapped with a key generated from passcode hash and stored in a file system metadata. The file system metadata is encrypted using a file system key. The file system can be internal memory or SD card or cloud storage or any other form of storage.
At step 412, the method 400 includes generating a plurality of secret shares of the encrypted passcode or the encrypted hash of the passcode. The secret shares can be referred to as encrypted key shares. The cryptography module can be configured to create encrypted key shares of the passcode hash or the passcode.
At step 414, the method 400 includes distributing each of the secret shares to a plurality of entities. In an embodiment, the entity can include, but is not limited to, a server, a secure storage in the electronic device 104, a server, and the email-ID of the user. Further, the entity can also include a set of administrators of the server. For example, the secret shares associated with passcode of the electronic device 104 may be distributed between the server, the email ID of the user, and two administrators of the server responsible for monitoring and pushing policies into the electronic device 104 using the device monitoring and policy enforcement module 304.
The embodiments described herein use a Shamir's secret sharing algorithm or a Blakeley's scheme for enabling the data security in the electronic device 104. The Shamir's secret sharing algorithm allows a secret to be divided into parts, distributing each participant a unique part, where some of the parts or all of them are needed in order to reconstruct the secret shares. The encrypted passcode or passcode hash is divided into n encrypted key shares D1, D2 . . . Dn. D1, D2 . . . Dn can be distributed to n different entities. In an embodiment, the threshold defined determined the number of secret shares required to reconstruct the passcode.
The administrator of the MDM system 200 can be configured to define a threshold (k) for recovering the passcode based on the security level required for the encrypted data present in the electronic device 104.
Consider an example when three encrypted key shares are created from a passcode hash and the threshold level is two. A first encrypted key share is sent to a secure code present in the secure mode 104, a second encrypted key share is sent to the MDM server 104, and a third encrypted key share is sent to the enterprise email ID of the user. In case of a passcode loss, the recovery of data encrypted using the passcode in the electronic device 104 is feasible only when the two or more of the encrypted key share is available at the recovery module 214 of the electronic device 104. The process of recovering a passcode and recovering data from the secure mode of electronic device 104 is explained in detail in conjunction with
Consider another example, when a passcode is received from a secure keyboard implemented in the secure environment provided by secure mode 204. The passcode hash may be converted into a hexadecimal string password secret. Then the password secret is converted in to 3 (Or more) secret shares (D1, D2, D3) with threshold (k=2 or more). The secret shares are then distributed to three entities; one share is sent to the MDM server 102, another share is kept within the secure storage of the electronic device 104 and other one is send to user email ID through a Secure Multipurpose Internet email Extensions (SMIME). All the three entities are physically separated. The threshold of k=2 means that the passcode can be recovered only when 2 or more of the secret shares are obtained from respective entities.
The various actions, acts, blocks, steps, and the like in the method 400 may be performed in the order presented, in a different order or simultaneously. Further, in some embodiments, some actions, acts, blocks, steps, and the like may be omitted, added, modified, skipped, and the like without departing from the scope of the invention.
In an embodiment, at step 602, the method 600 includes receiving a recovery request for recovery of at least one of the encrypted data and the passcode. The recovery request is received at the MDM server 102. When a user forgets his passcode, the user can send a passcode reset request to the administrator of the MDM server 102. The administrator can generate a recover request for recovering the encrypted data from an electronic device 104.
At step 604, the method includes authenticating the recovery request. In an embodiment, the administrator of the MDM server 102 can authenticate the recovery request after a physical verification of authenticity of the recovery request. The administrator can verify the employee credential as well as status of the electronic device 104 if required.
At step 606, the method 600 includes determining if the authentication is successful. At step 608, the method 600 includes sending an authentication error message, if the authentication is unsuccessful.
At step 610, if the authentication is successful, the method 600 includes obtaining each secret share from the plurality of entities. The administrator can provide a policy for recovery of the passcode and the encrypted data based on the authentication and threshold set for passcode recovery. If the recovery request is for lost passcode, the policy pushed into the electronic device 104 is for passcode recovery.
At step 612, the method 600 includes recovering the passcode by reconstructing at least one of a passcode or a hash of the passcode. The recovery module 214 can be configured to reconstruct the passcode or a hash of the passcode by reconstructing the passcode/passcode hash from the distributed secret shares from the plurality of entities. The Shamir's algorithm or the Blakeley's scheme can be used for secret share creation and reconstruction.
The recovery module 214 reconstructs the passcode (or the passcode hash) in a secure code in the secure environment provided in the secure mode 204. The reconstructed passcode or the passcode hash is available for a short period of time in volatile memory to reduce the risk of attack at the time of reconstruction of the passcode/passcode hash.
The embodiments described in the method and system provides high data security, as the secret shares are distributed to different entities, which are separated physically. In an embodiment, for “n” number of secret shares of the passcode located at different physical entities, the reconstruction of passcode may not be feasible without getting access to a “k” number of secret shares, where k is the threshold set for the electronic device 104. Further, any one entity does not have encrypted share of the passcode. A comprise of security at any one of the entity, may not reveal the passcode.
The system and method described in the embodiment provide flexibility to reconstruct the passcode based on the threshold defined for the electronic device.
Example for Passcode Recovery Based on Threshold
Consider an example, when a passcode has been encrypted and three different shares of the encrypted passcode hash have been generated with a threshold of 2. The secret shares are then distributed to three entities—One share is sent to the MDM server 102, another share is kept within the secure storage of the electronic device 104 and other one is send to user email through the SMIME. The threshold of k=2 means that the passcode can be recovered only when 2 or more of the secret shares are obtained from respective. On receiving a password recovery request, the administrator at the MDM server 102 can verify the authenticity of password recovery request and send his share of secret with password change policy to the MDM server 106 in the electronic device 104. The recovery module 214 in the electronic device 104 can verify the authenticity of administrator request and reconstruct the passcode or the passcode hash again using a share present in the secure storage and the MDM server's 202 secret share.
Passcode Recovery in Case of Server Failure
In the above example, the passcode can be recovered from the secret share sent to the user and the secret share present in the secure storage if the security of MDM server 102 is comprised.
Passcode Recovery in Case of Hardware Failure
In the above example, the passcode can be recovered from the secret share sent to the user and the secret share received from the MDM server 102 if there is a hardware failure in the electronic device 104 and the secret share present in the secure storage of the electronic device 104 is lost.
At step 614, the method 600 includes decrypting a file system encryption key in the electronic device 104 using the reconstructed at least one of a passcode or a hash of the passcode. When the data in the electronic device 104 is encrypted using the passcode/passcode hash, the data can be recovered of data once the passcode/passcode is reconstructed. At step 616, the method 600 includes recovering the data securely from the electronic device 104. At step 618, the method 600 includes creating a new passcode and a fresh file system encryption key for the data in the electronic device 104.
The various actions, acts, blocks, steps, and the like in the method 600 may be performed in the order presented, in a different order or simultaneously. Further, in some embodiments, some actions, acts, blocks, steps, and the like may be omitted, added, modified, skipped, and the like without departing from the scope of the invention.
Although the methods 400 and 600 are described for an electronic device 104, it must be understood that embodiments of the methods are not restricted to electronic device 104.
Consider an example, when encrypted data stored in an external memory of cloud storage can be secure if the passcode is not available with a cloud storage provider.
Consider another example, when an employee can store files in enterprise controlled cloud storage. If files stored on the enterprise controlled cloud storage are encrypted in the user electronic device 104, these files can be recovered using the method described in method 400 and method 600.
The recovery of the passcode and threshold can be configured at the MDM server 102. For example, to recover encrypted data a combination of secret shares from the user's email, a secret share stored in the secure mode 204, and the administrator can be defined in the policy set for recovery. The recovery module 114 receives a set of policies for passcode recovery and encrypted data recovery from the MDM server 102.
The overall computing environment 1002 can be composed of multiple homogeneous or heterogeneous cores, multiple CPUs of different kinds, special media and other accelerators. The processing unit 1004 is responsible for processing the instructions of the algorithm. The processing unit 1004 receives commands from the control unit 1006 in order to perform its processing. Further, any logical and arithmetic operations involved in the execution of the instructions are computed with the help of the ALU 1008. Further, the plurality of process units may be located on a single chip or over multiple chips.
The algorithm comprising of instructions and codes required for the implementation are stored in either the memory unit 1010 or the storage 1012 or both. At the time of execution, the instructions may be fetched from the corresponding memory 1010 or storage 1012, and executed by the processing unit 1004. The processing unit 1004 synchronizes the operations and executes the instructions based on the timing signals generated by the clock chip 1014. The embodiments disclosed herein can be implemented through at least one software program running on at least one hardware device and performing network management functions to control the elements.
The embodiments disclosed herein can be implemented through at least one software program running on at least one hardware device and performing network management functions to control the elements. The elements shown in
The foregoing description of the specific embodiments will so fully reveal the general nature of the embodiments herein that others can, by applying current knowledge, readily modify or adapt for various applications such specific embodiments without departing from the generic concept, and, therefore, such adaptations and modifications should and are intended to be comprehended within the meaning and range of equivalents of the disclosed embodiments. It is to be understood that the phraseology or terminology employed herein is for the purpose of description and not of limitation. Therefore, while the embodiments herein have been described in terms of preferred embodiments, those skilled in the art will recognize that the embodiments herein can be practiced with modification within the spirit and scope of the embodiments as described herein.
Number | Date | Country | Kind |
---|---|---|---|
971/CHE/2014 | Feb 2014 | IN | national |