Abstract
Recently, as Internet of Things systems have been introduced to facilitate diagnosis and treatment in healthcare and medical environments, there are many issues concerning threats to these systems’ security. For instance, if a key used for encryption is lost or corrupted, then ciphertexts produced with this key cannot be decrypted any more. Hence, this paper presents two schemes for key recovery systems that can recover the lost or the corrupted keys of an Internet of Medical Things. In our proposal, when the key used for the ciphertext is needed, this key is obtained from a Key Recovery Field present in the cyphertext. Thus, the recovered key will allow decrypting the ciphertext. However, there are threats to this proposal, including the case of the Key Recovery Field being forged or altered by a malicious user and the possibility of collusion among participating entities (Medical Institution, Key Recovery Auditor, and Key Recovery Center) which can interpret the Key Recovery Field and abuse their authority to gain access to the data. To prevent these threats, two schemes are proposed. The first one enhances the security of a multi-agent key recovery system by providing the Key Recovery Field with efficient integrity and non-repudiation functions, and the second one provides a proxy re-encryption function resistant to collusion attacks against the key recovery system.
1. Introduction
In the era of the Fourth Industrial Revolution, as various countries and companies around the world have heavily invested in Information Technology (IT), the emergence of Internet of Things (IoT) environments has increasingly enabled a convenient and broad diversity of services to be distributed to consumers via various types of smart devices. There are various systems such as the Internet of Medical Things (IoMT), Intelligent Transportation Systems (ITS), smart home appliances, and connected cars that have been implemented on those smart devices and deploy a vast number of services to consumers [,]. Therefore, many current types of research have applied those IoT technologies to various environments.
Although the development of IoT has increased device convenience, it has also been accompanied by increasing threats to national, corporate, and personal information security []. According to the security threats, such as personal information leakage cases, encryption has rapidly become important to secure personal information []. Therefore, the importance of security issues in IoT environments has also increased. Furthermore, there is discussion regarding security issues related to key management, in which problems may arise where ciphertexts cannot be decrypted if the keys are lost or corrupted.
In general, key recovery is a system that provides the ability to reveal the key to an authorized user under specific conditions specified in advance []. This paper presents schemes to recover lost or corrupted keys using an encapsulation-based key recovery system. When a user needs a key that was used to create a ciphertext, a newly defined field known as Key Recovery Field (KRF) can be used to recover the key. If key is lost or corrupted, the recovered key can be used to decrypt the ciphertext. Because security is necessary for key management and recovery in various environments using IoT, there is much research on key recovery systems for use with IoT. Guo et al. [] proposed a secure group key distribution scheme for untrusted wireless networks. Guo et al. used the Self-healing Group Key Distribution (SGKD) protocol to ensure group communication security and improve communication efficiency. Instead of requiring the group manager to resend the missing key to update the message, Guo et al. proposed a scheme for group members to recover the lost session key from the current broadcast message.
Lee et al. [] proposed an efficient and secure key distribution and key recovery mechanism suitable for the characteristics of the IoT environment. The proposed system added the key recovery function required to prevent the reverse function of the encryption and key recovery, providing security to both due to the communication device could not unilaterally recover the key. In addition, it is efficient because there is little information sent during key recovery, which is suitable for IoT environments.
Sung [] proposed a scheme to support secure sensor data for cloud computing to activate services at the IoT application level. Sung proposed key management that enables continuous key authentication for the privacy of sensing information in such a cloud computing environment and enables secure recovery if the key is lost or corrupted.
Losing a key in an IoMT environment will prevent access to information such as previous medical treatment data and information on medications being taken, and impede accurate medical examination and treatment. Therefore, key management is important in IoMT environments []. There are four agents in a key recovery system in IoMT. The key Generation Center (KGC) can generate some parameters of a network participant’s public key pair. The Medical Institutions (Med) have all the medical treatment data, The key Recovery Center (KRC) can recover the complete key. The key Recovery Agent or Key Recovery Auditor (KRA) can share the KRC’s key recovery operations or monitor other agencies. If the patient loses the key used for the ciphertext, the key can be recovered with the help of remains the KRF, Med, KRC, and KRA.
However, the problem remains that the KRF may be forged or altered by a malicious user. To solve this problem, we propose our first scheme, which efficiently provides integrity and non-repudiation functions for the KRF and enhances the security of a multi-agents key recovery system.
The main contributions of our proposed scheme-I as follows:
- It provided a key recovery system based on secure encapsulation against various types of attacks and provides the ability to securely recover a lost or corrupted key.
- It uses signcryption to ensure KRF integrity and non-repudiation. In addition, it provides both digital signing and encryption at the same time to increase computational efficiency.
- It uses values that only authorized KRAs hold to prevent unauthorized KRAs and group-based authentication attacks. If some KRAs do not perform the key recovery properly, key recovery may be performed by other authenticated KRAs to prevent a single point of failure.
Furthermore, the Med, KRA, and KRC may collude and behave maliciously. To solve this problem, we propose scheme 2, which provides a proxy re-encryption function and enhances the security of a key recovery system against various types of attacks such as collusion attacks and the key escrow problem.
The main contributions of our proposed scheme-II as follows:
- It prevents the Med, KRC, and KRA from behaving maliciously to recover keys without authorization and prevents unauthorized entities from obtaining keys.
- It uses a partial private key generation scheme to prevent the KGC from generating private keys for all participants.
The remaining parts of the paper are organized as follows. Section 2 describes related work, and Section 3 describes system model for the proposed schemes. Section 4 describes scenarios and detailed protocols for the proposed scheme-I, and Section 5 describes scenarios and detailed protocols for the proposed scheme-II. Section 6 analyzes whether the proposed schemes satisfy the security requirements. Finally, Section 7 discusses our conclusions.
2. Related Work
This section reviews and discusses existing works related to key recovery systems and encryption schemes.
2.1. Encapsulation Key Recovery Systems
A key recovery system is an important part of an encryption system. If a private key or session key used for a ciphertext is lost or corrupted, or a Law Enforcement Agency (LEA) wishes to intercept suspicious ciphertexts lawfully, it must be possible to recover the key. There have been several proposals related to such key recovery systems. Kanyamee et al. [] proposed a highly available distributed session key recovery system. It provides high availability and attack detection for secure session key management and group authentication while using Multi-Key Recovery Agents (M-KRA) to solve the single point of failure problem encountered in the traditional KRA approach. However, many problems remain, such as the risks of forgery, counterfeiting, and collusion attacks for user-generated KRFs, which can cause problems for the key recovery service.
Lim et al. [] proposed an encapsulation-based M-KRA key recovery system. They attempted to solve the problem that the M-KRA must communicate directly with one or more KRAs in existing M-KRA scheme, and the user must directly perform a complex key recovery process. Their scheme provides secure session key management and recovery using a new type of M-KRA to solve this problem. However, problems may arise in the key recovery service the forgery or modification of KRFs and non-repudiation problems related to user-generated KRFs.
Kyusuk et al. [] proposed an identity-based key escrow scheme to prevent malicious key use by LEAs. If an LEA maliciously obtains the key, it can read the encrypted data to the desired user. In other words, an LEA can intercept and obtain the users’ keys to read all encrypted data. To solve this problem, the scheme prevents LEAs from obtaining a key by themselves after generating a user’s key pair with the KGC generated master key and the user’s ID. However, since it is a single KRA, it is vulnerable to problems such as a single point of failure weakness and group authentication attacks, causing problems with the key recovery service.
Huadpaknam [] proposed the Security Key Recovery System with Channel Quality Awareness (SKRS-CQA) for smart grid applications. If a Smart Meter Unit (SMU) loses the keys used for correcting to the smart grid, it needs to be recovered. To solve this problem, key recovery proposed, providing improved reliability, system availability, and data confidentiality. In addition, system reliability was improved by using amplification and forwarding relay protocols and a cooperative communication network with optimal power allocation.
2.2. Multi-Agent Key Recovery
A single agent key recovery system is associated with service overload and security problems. Therefore, we use a multi-agent (at least two agents) key recovery system. The multi-agents receive a ciphertext that contains a key from the user or the KRC. Later, KRAs send pieces of the key to the KRC to allow the KRC to recover the complete key. However, various attacks and security breaches are possible, and efforts have been made to deal with these issues []. In our key recovery system using signcryption, we security by increasing availability and enhance security.
2.3. Signcryption
Encryption and digital signatures are two encryption tools that can ensure confidentiality, integrity, and non-repudiation. Until 1997, cryptographic systems used separate components to provide these security functions. In public key schemes, the traditional scheme is to digitally sign the message and then perform encryption (signature-then-encryption). However, there are two problems: the operation efficiency is low and the cost is high. To solve this signcryption was proposed In 1997 Zheng [] proposed the first signcryption scheme. Signcryption simultaneously performs digital signature and encryption. Signcryption compared to the traditional signature-then-encryption scheme, can effectively improve computational efficiency, by reducing computational cost and communication overhead. In addition, many other signcryption schemes have been proposed throughout the years, each of them having its problems and limitations while offering different levels of security and computational cost [,].
2.4. Secret Sharing
Secret sharing schemes are ideal for sensitive information. These pieces of information should kept highly confidential, as their exposure could be disastrous. However, it is also critical that they should not be lost. Traditional encryption schemes are not suitable for achieving a high level of confidentiality and stability at the same time. When storing encryption keys, the user has to choose between keeping a single copy of the key in one location or multiple copies of the key in multiple locations for maximum security. The secret sharing scheme proposed by Shamir and Blakley [,] in 1979 is a scheme of dividing the secret value into several pieces so that the secret value can be recovered only when more than a certain number of pieces are collected. Such a scheme is called Shamir’s (k, n) threshold scheme. This scheme divides the secret value into n pieces and entities may recover the secret value only when more than k pieces are collected. In another type of secret sharing scheme, there is one dealer and n players. The dealer gives a share of the secret to the players, but only when specific conditions are fulfilled will the players reconstruct the secret from their shares. The dealer accomplishes this by giving each player a share so that any group of t (for threshold) or more players can together reconstruct the secret but no group of fewer than t players can. In addition, many other secret sharing schemes have been proposed throughout the years with as in the care of signcryption, each of them having its problems and limitations while offering different levels of security and computational costs [,].
2.5. Proxy Re-Encryption
A Proxy Re-Encryption (PRE) scheme is a scheme that converts the ciphertext so that a proxy server can decrypt the ciphertext encrypted with user A’s public key using user B’s private key. In 1998, Blaze et al. [] proposed the first two-way proxy re-encryption scheme. This scheme was designed using the ElGamal encryption scheme []. In 2007, Green et al. [] proposed an ID-based proxy re-encryption scheme using ID-based encryption for the first time to solve the certificate management problem of the existing Public Key Infrastructure (PKI) based proxy re-encryption. ID-based encryption is a scheme of using the user’s identity as a public key []. In this scheme, the user’s identity itself is owned, so unlike in PKI-based environments there is no need to issue and manage certificates. In addition, since the KGC generates a private key corresponding to the identities and issues them to the users, it has the advantage of performing verification of the user through KGC in case of a dispute. However, the KGC issues all users’ private keys, which causes a key escrow problem in which KGC knows the private keys. Therefore, to solve this problem, a Certificateless Public Key Cryptography (CL-PKC) system was developed. The CL-PKC scheme was proposed by Al-Riyami et al. [], and it solves the key escrow problem by issuing partial private keys to the users by combining the user’s identity and a random number. Building on these feature, in 2010, Sur et al. [] proposed Certificateless Proxy Re-Encryption (CL-PRE) using CL-PKC. CL-PRE is currently a representative form of secure PRE because it can perform the purpose of proxy re-encryption without suffering the PKI certificate management problem or IBE key escrow problem [,,].
3. System Model
This section describes the system models, system objects, and security requirements of the proposed schemes.
3.1. Common Proposed Key Recovery System Model
In this section, we present the two key recovery system models proposed in this study. Before describing each proposed model, we present the common elements of the proposed models.
3.1.1. Common Design Goals of Proposed Schemes
The two key recovery system models presented in this research were designed in different forms. However, the basic goal of both models is encapsulated key recovery. The first model proposed in this study is a key recovery system using signcryption. This process involves recovering the session key used for communication by using the encapsulated key recovery field. The second model proposed in this study is a key recovery system using proxy re-encryption. The basic goal is the same as the first model described above. However, the design and additional goals of the two models differ from each other, The similarities and differences between the two models can be seen in Figure 1, which will be described in detail below.
Figure 1.
Summary and comparison of proposed key recovery system model.
3.1.2. Common Objects of Proposed Schemes
The composition of the two system models proposed in this study can be seen in Figure 1. In Figure 1, the difference between M-KRA and KRA methods is shown for the types of participants in the two models. The remaining differences are detailed in each model’s respective section.
- Key Generation Center (): Every participant must perform the and key generation and communication steps to generate keys. All can generate a private key through the private key generation step with , and a public key corresponding to the private key can be generated. The publishes the public parameter for performing encrypted communication with .
- Devices (): are medical devices and monitoring devices. Devices perform communication in the system managed by the . In this model, s must perform communication in the format designated by , and the basic format follows the form of , in which the ciphertext and are concatenated. Devices participating in the communication need ’s public parameters in order to make the session key used for message encryption into . Furthermore, the generated should be designed to only be controlled by and .
- Medical Institution (): is a medical institution that manages device authorization control and data on medical devices. When a device requests key recovery, the verifies that it is the lawful owner of the . In this paper, the step of confirming whether the is a lawful owner is omitted. In addition, the sends the to to help recover the key.
3.2. Proposed Scheme-I(Key Recovery System Using Signcryption)
This section describes additional elements of the key recovery system model using signcryption, excluding the common elements of the two models proposed in Section 3.1.
3.2.1. Design Goals of Proposed Scheme-I
The model of the key recovery system using signcryption is a key recovery system that is used when a device key is lost or corrupted as shown in Figure 2. The device requests key recovery from Med and sends KRF. The Med receiving the KRF verifies that it is a lawful device of KRF. If it is a lawful device, it requests KRC to recover the key and sends KRF. After receiving KRF, KRA decrypts the KRF and sends the obtained KRF pieces to the M-KRA. Then, after receiving the pieces of KRF, M-KRA decrypts them and sends the session key pieces to KRC. It collects the session key pieces, generates a complete session key, and sends it to the device.
Figure 2.
Proposed scheme-I.
3.2.2. Objects of Proposed Scheme-I
The system objects of the key recovery system using signcryption is shown in Figure 2. In addition, M-KRA additionally exists, and its roles are as follows:
- Participants: represents all participants (-) who use the encrypted communication provided by . can perform encrypted communication only by using provided by .
- Key Recovery Center (): is an organization in charge of key recovery and plays a central role in key recovery. The key recovery process is performed according to ’s request for key recovery, and is converted into a form that can be recovered using ’s private key. In this model, to reduce the burden of ’s key recovery operation, the help of M- is needed.
- Multi-Key Recovery Agents (M-): M- is the agent that helps some operations of key recovery by reducing the burden on . The included in the M- determines whether the is suitable for recovery to prevent abuse of the ’s authority. When receiving a key recovery request from , M- perform the recovery process using their private key. Furthermore, M- send the obtained session key pieces to .
3.2.3. Security Requirements of Proposed Scheme-I
The security requirements of the key recovery system using signcryption are as follows:
- KRF integrity: No participant in key recovery can maliciously transform information from the device and information required for key recovery cannot be changed.
- Data confidentiality: It should be possible for only authorized devices to decrypt encrypted data.
- Non-repudiation: The device should not be able to reject the fact that it generated the . In addition, the fact that device-generated should be clear after transmission, exchange, communication, and processing.
- Attack on group authentication detection: If a malicious third-party pretends to be a lawful member of the key recovery group, should be detected through group verification.
- Single point of failure protection: In M-, some s should be able to recover session keys even if another fails to operate properly.
3.3. Proposed Scheme-II (Key Recovery System Using Proxy Re-Encryption)
This section describes additional elements of the key recovery system model using proxy re-encryption, excluding the common elements of the two models proposed in Section 3.1.
3.3.1. Design Goals of Proposed Scheme-II
The model of the key recovery system using proxy re-encryption is a key recovery system that is used when a device key is lost or corrupted as shown in Figure 3. The device requests key recovery from Med and sends KRF. The Med receiving the KRF verifies that it is a lawful device of KRF. If it is a lawful device, it generates a re-encryption key. Then, it requests key recovery from KRC and sends the obtained KRF and the re-encryption key. After receiving the KRF and re-encryption key, the KRA partially calculates KRF and sends the partially calculated KRF to KRA. After receiving the partial calculated KRF, KRA performs some calculations and sends partial calculated KRF to KRC. After receiving KRF, KRC sends it to the Med. The Med decrypts it, generates a session key, and sends it to the device.
Figure 3.
Proposed scheme-II.
3.3.2. Objects of Proposed Scheme-II
The system objects of the key recovery system using proxy re-encryption is shown in Figure 3.
- Participants (): represents all participants () who use the encrypted communication provided by . can perform encrypted communication only by using provided by .
- Key Recovery Center (): is an organization in charge of key recovery and plays a central role in key recovery. The key recovery process is performed according to ’s request for key recovery, and is converted into a form that can be recovered using ’s public key. However, in this model, key recovery can only be completed with the help of to prevent abuse of privileges by .
- Key Recovery Auditor (): is a monitoring agency that judges whether a key can be recovered by auditing the validity of key recovery. The determines whether is suitable for recovery to prevent abuse of authority through collusion between the and the . If the key recovery request is deemed to be lawful, will perform the recovery process with its private key and sends it over to the .
3.3.3. Security Requirements of Proposed Scheme-II
The security requirements of the key recovery system using proxy re-encryption are as follows:
- KRF integrity: No participant in key recovery can maliciously transform information from the device and information required for key recovery cannot be changed.
- Data confidentiality: It should be possible for only authorized devices to decrypt encrypted data.
- Med applied for support: The session key used for communication must be encrypted and stored in . In the event of an emergency when it is necessary to view the device’s data, the encrypted session key must be able to recover the encrypted message according to the procedure determined by as needed.
- Collusion attack resistance: Fewer than three participants among the , , and should not be allowed to obtain keys even if they are maliciously colluding.
- Key escrow problem: can generate private keys for all participants, but the complete private key must not be known.
4. Proposed Scheme-I (Key Recovery System Using Signcryption)
In this section, we propose a key recovery scheme using signcryption. This scheme is a scheme for recovering the lost or corrupted device’s key. This is mainly composed of a setup phase, a key pair generation phase, a session key exchange and encryption phase, a KRF generation phase, and a session key recovery phase as shown in Figure 4.
Figure 4.
Scenario of proposed scheme-I.
4.1. System Parameters
The system parameters used in the proposed scheme-I are as follows.
- p: Prime number
- q: Prime factor of p-1
- : Cyclic group on prime p
- g: Random generator,
- H: Hash function,
- : Master private key,
- : Master public key,
- : Monitoring devices
- : Medical devices
- : Network Participant i, ()
- : Random numbers,
- :’s private key,
- :’s public key,
- : Secret value of and ,
- : Partial session key of and
- : Session key between and
- x: Random number, with
- : Random number of ,
- : Group authentication values assigned to agents (Shared Group Number)
- : Signcryption values
- :ith signcryption pieces
- : Value containing the value to be recovered when some KRAs fail the key recovery operation
- :ith pieces
- : Message space,
- M: Plaintext message between and ()
- C: Ciphertext message (Encrypted M)
- : Key recovery field,
- :ith key recovery field piece,
4.2. Setup Phase
In this phase, the KGC takes the security parameters as an input the security parameter and generates public parameters.
- Step 1: The KGC selects -bit large prime p, where q is a large prime factor of and group of prime order p. In addition, a random generator is selected.
- Step 2: A master private key is randomly selected and a master public key is computed.
- Step 3: KGC selects Hash function H.
- Step 4: Then, public parameters are published.
4.3. Key Pair Generation Phase
In this phase, receives a partial private key from KGC and uses it to generate full private key and public key .
- Step 1: KGC generates parameters for participant through the following operation and sends them to through a secure channel.
- Step 2: Participant who receives from KGC, selects Random numbers and sets ’s private key .
- Step 3: Participant generates and sets public key .
4.4. Session Key Exchange and Encryption Phase
In this phase, the key recovery system uses signcryption to ensure integrity and non-repudiation and performs encryption of the session key simultaneously as shown in Figure 5.
Figure 5.
Session key exchange and encryption phase of proposed scheme-I.
- Step 1: selects and calculate partial session key . also selects and calculates partial session key . After that, and exchange and with each other.
- Step 2: and calculate the session key using the exchanged values and .
- Step 3: generates random number and , which is then divided in half into and .
- Step 4: generates and s using and .
- Step 5: divides and s to and .where n is the number of KRA and .
4.5. KRF Generation Phase
In this phase, when the key is lost or corrupted, the necessary KRF is generated to recover the key as shown in Figure 6.
Figure 6.
KRF generation phase of proposed scheme-I.
- Step 1: requests to M-KRA.
- Step 2: Each of the KRAs requested for from randomly selects . After that, each KRA generates an by sharing generated through a secure channel with each other.
- Step 3: M-KRA send to .
- Step 4: generates using and . Then, is generated using , and .
- Step 5: generates using .
- Step 6: Then, the generated is attached to the ciphertext C.
4.6. KRA Fault Recovery Phase
In this phase, if some KRAs fail to operate properly, the selected KRA or KRAs will instead perform key recovery as shown in Figure 7.
Figure 7.
KRA fault recovery phase of proposed scheme-I.
- Step 1: refers to the total number of KRAs n and the number of KRAs required for key recovery as .
- Step 2: calculates the number of KRAs t required to distribute .
- Step 3: selects a KRA or KRAs to replace the failed as follows:
- Step 4: distributes to selected KRA or KRAs.
- Step 5: If fail to operate properly, the selected KRA or KRAs obtain and of failed KRA using the distributed and .
4.7. Session Key Recovery Phase
This phase describes how to recover a key if the requests key recovery as shown in Figure 8.
Figure 8.
Session key recovery phase of proposed scheme-I.
- Step 1: When requests decryption from Med to recover , and sends .
- Step 2: Then Med requests decryption from KRC to recover , and sends .
- Step 3: KRC upon receiving a request for decryption, obtains pieces after decrypt with .
- Step 4: The obtained pieces are sent to each M-KRA to request decryption.
- Step 5: The requested M-KRA obtain values with .
- Step 6: Among the obtained values, values are encrypted with and sends to the KRC.
- Step 7: KRC compares obtained by decrypting the received ciphertext with and . If they match, pieces are collected and are recovered.
- Step 8: KRC recovers the k value using the received ciphertext, public parameters, and recovered .
- Step 9: Then, KRC divides k by .
- Step 10: KRC recovers the using the obtained and c.
- Step 11: KRC compares the calculated and r values using the obtained .
- Step 12: If it matches, KRC sends the recovered to Med.
- Step 13: Then, Med sends to and the message is decrypted using the received .
5. Proposed Scheme-II (Key Recovery System Using Proxy Re-Encryption)
In this section, we propose a proposed scheme-II. This scheme is a scheme recovering the lost and corrupted device’s key. This system was designed based on the scheme of Yang et al. []. It consists of a setup phase, a key pair generation phase, a Med enforcement phase, and a session key recovery phase, as shown in Figure 9.
Figure 9.
Scenario of proposed scheme-II.
5.1. System Parameters
The system parameters used in the proposed scheme-II are as follows:
- q: Prime number
- : Hash functions,
- : Hash functions, for some bit-length
- : Hash functions,
- : Hash functions,
- : System participant i, ()
- s: Master secret key of KGC,
- :’s private key,
- :’s public key,
- : Key recovery field,
5.2. Setup Phase
In this phase, the KGC takes the security parameter as an input and generates public parameters.
- Step 1: selects -bit large prime q and group of prime order q. In addition, a random generator is selected.
- Step 2: randomly selects master secret key , and compute .
- Step 3: selects Hash function .
- Step 4: The message space and public parameters are published.
5.3. Key Pair Generation Phase
In this phase, receives a partial private key from and uses it to generate full private key and public key .
- Step 1: generates parameters for participant through the following operation and sends them to through a secure channel.
- Step 2: who receives from KGC, selects Random numbers and sets ’s private key .
- Step 3: generates and sets public key .After that, publishes public key .
5.4. Session Key Exchange and KRF Generation Phase
In this phase, a session key is exchanged between and , and a is generated. Furthermore, in the generation phase, after generating , the ciphertext C is communicated with as shown in Figure 10.
Figure 10.
Session key exchange and KRF generation phase of proposed scheme-II.
- Step 1: selects and calcultate partial session key .also selects and calculates partial session key .After that, and exchange and with each other.
- Step 2: and calculate the session key using the exchanged values and .
- Step 3: generates the ciphertext message using the generated session key .
- Step 4: After that, selects a random value and , and generates using and as follows:After that, and communicate with each other using .
5.5. Med Enforcement Phase
In this phase, will start recovering the encrypted session key between and at the request of as shown in Figure 11.
Figure 11.
Med enforcement phase of proposed scheme-II.
- Step 1: sends to to recover the session key .
- Step 2: generates the re-encryption key .
- Step 3: requests key recovery by sending the to the .
5.6. Session Key Recovery Phase
In this phase, receives a key recovery request from . calculates using its private key, and then requests key recovery from as shown in Figure 12.
Figure 12.
Session key recovery phase of proposed scheme-II.
- Step 1: After receiving , calculates as using its as follows:After that, sends the generated to the .
- Step 2: After receiving , re-encrypts as using its as follows:After that, sends to the KRC.
- Step 3: re-decrypts to obtain using as follows:After that, sends to .
- Step 4: decrypts to obtain as follows:After that, sends to .
- Step 5: decrypts the message M using the obtained .
6. Analysis of the Proposed Schemes
This section explores whether the abovementioned security requirements are satisfied by the two proposed schemes, as shown in Table 1.
Table 1.
Comparison of proposed schemes.
6.1. Proposed Scheme-I (Key Recovery System Using Signcryption)
- KRF integrity: The device, , , and participating in key recovery should not be able to transform a device key that generates a maliciously. To solve this problem, this includes the session key hash in parameter r of the . Therefore, data cannot be forged. Only the device can access the session key generated by the device.
- Data confidentiality: In the proposed scheme-I, communication between devices is performed through a session key. Therefore, if the session key for the corresponding communication is unknown, the malicious user will not be able to obtain the message. In addition, as the generated in the communication process contains the public keys of and , third-party besides and cannot know the contents of the corresponding .
- Non-repudiation: If the device generates and uses the wrong , cannot recover the key. To solve this problem, the device should not be able to reject the fact that it generated . Therefore, this includes the private key of the device in parameter s of the . The device cannot deny that it generated the .
- Attack on group authentication detection: Malicious key recovery by third-party s should not be possible. Therefore, a lawful group member applies an XOR operation on the values from to to generate a shared group value of between groups. The device receives it from a lawful group member and hashes the to include in the . When recovers the complete key, it hashes and compares the sent by the with the contained in the to ensure it was received from a lawful .
- Single point of failure protection: As both the and all s participate in session key recovery, it should be possible to recover the key even if some s fail. Therefore, a special value is generated. If some s fail to recover the session key pieces, other s recover the session key pieces instead of the failed and send them to the . includes all pieces and the produced by the XOR operation. The other (not the corresponding ) decrypts and sends it to the , allowing the to recover the complete session key.
- Med applied for support: should be able to view the encrypted data by acquiring the encrypted session key in the event of an emergency where it is necessary to view the device’s data. Therefore, sends to , and decrypts to obtain pieces. The acquired pieces are sent to and requested for recovery. Then, obtains session key pieces by decrypting the acquired pieces. The obtained session key pieces are sent to , and recovers the complete session key. After that, it sends the complete session key to the , allowing message decryption.
- Key escrow problem: The proposed scheme-I is based on a CL-PKC scheme. Therefore, as can generate only a part of the private key during the private key generation process, the key escrow problem caused by in ID-based encryption has been solved.
6.2. Proposed Scheme-II (Key Recovery System Using Proxy Re-Encryption)
- KRF integrity: In this proposed scheme-II, is encrypted with the public keys of and . Therefore, during the key recovery process, , and cannot be forged or modified by alone.
- Data confidentiality: As the generated in the communication process contains the public key of the Med and the secret values of and , third-party besides the , , and cannot know the contents of the corresponding . In addition, even if all three of the , , and do not participate, each , , and cannot know the contents of the .
- Med applied for support: can perform recovery of as needed. is created using the public key of . can perform the key recovery process when it is determined that the key recovery is necessary for that it manages. For this, can create and request and execute the key recovery process through and .
- Collusion attack resistance: Fewer than three participants among the , , and must be prevented from maliciously acting together, thus preventing recovery of the key, and unauthorized entities must be prevented from obtaining the key. Therefore, the requires the cooperation of the and to decrypt . Thus, even if the has colluded with a single participant among the and , the completed key recovery cannot be achieved without the assistance of the third participant as follows:In order to obtain from the above , must be decrypted. In order to decrypt , and need to know c or . However, c and know only . Therefore, it is necessary to obtain by decrypting .Here, contains , so the attackers are and should be computed.Since can be created using a public key, anyone can create it. However, since only knows , attackers must use to calculate and .Here, a ’s private key is required to obtain from . Therefore, KRC is required in the key recovery process.Next, since the attacker does not know , he has to perform the following operation to calculate . In the end, the ’s private keys and are required, so is also required.Furthermore, an attacker who acquires must compute to obtain from .In order to acquire using , ’s private keys and are required, so is also required. As a result, in order to obtain by decrypting , all of , and must participate.
- Key escrow problem: The proposed scheme-II is based on a CL-PKC scheme. Therefore, as can generate only a part of the private key during the private key generation process, the key escrow problem caused by in ID-based encryption has been solved.
7. Conclusions
This paper proposed key recovery systems based on key encapsulation secured from various attacks in IoMT environments in schemes II and II.
In the key recovery system, the session key used in the ciphertext is recovered via the KRF and used. However, the KRF can be forged and KRF owners can deny the fact that they generated the KRF. Furthermore, unauthorized KRAs can access the M-KRA and interfere with key recovery. To solve this problem, the key recovery system using signcryption includes the session key hash in the KRF. Therefore, the KRF data cannot be forged. In addition, this system includes the private key of a device in special value of the KRF. A device cannot deny that it generated the KRF. Furthermore, the system ensures the security requirements mentioned in Section 3, including KRF integrity and non-repudiation, are fulfilled.
Additionally, there is a problem that the key can be recovered by collusion attacks and key or message leakage among the Med, KRC, and KRA. To solve this problem, the Med must have the help of the KRC and KRA to recover the key by a proxy re-encryption function. In addition, the KRC or KRA would also need mutual help to recover a complete session key. That is, by limiting the information and processing capabilities of the three participants, the key recovery system can be expected to be secure against various attacks. Furthermore, because the KGC generates the private keys of all participants, there is the problem that the KGC’s authority is strong. To solve this, a partial private key generation scheme is used. The KGC generates a partial private key and sends it to the participants. Participants who receive partial private keys use them to generate complete private keys and solve the KGC key escrow problem.
Future research is to check whether unexpected problems occur when the proposed schemes are implemented in actual systems. Furthermore, additional research is needed that can examine the amount of computations, time, and cost incurred when recovering keys. In addition, further research is needed to determine whether the proposed schemes are secure against other types of security threats.
Author Contributions
Conceptualization, T.K., W.K. and I.L.; methodology, T.K., W.K., D.S. and I.L.; data investigation, T.K., W.K.; analysis and validation, T.K., W.K. and I.L.; writing—original draft, T.K.; writing—review and editing, T.K., W.K. All authors have read and agreed to the published version of the manuscript.
Funding
This research was supported by Basic Science Research Program through the National Research Foundation of Korea(NRF) funded by the Ministry of Education(NRF-2019R1A2C1085718) and the BK21 FOUR (Fostering Outstanding Universities for Research)(No.: 5199990914048) and the Soonchunhyang University Research Fund.
Conflicts of Interest
The authors declare no conflict of interest.
References
- Qiu, T.; Chen, N.; Li, K.; Atiquzzaman, M.; Zhao, W. How can heterogeneous internet of things build our future: A survey. IEEE Commun. Surv. Tutor. 2018, 20, 2011–2027. [Google Scholar] [CrossRef]
- Shammar, E.A.; Zahary, A.T. The Internet of Things (IoT): A survey of techniques, operating systems, and trends. Library Hi Tech 2019, 38, 5–66. [Google Scholar] [CrossRef]
- Yu, J.Y.; Kim, Y.G. Analysis of IoT platform security: A survey. In Proceedings of the 2019 International Conference on Platform Technology and Service (PlatCon), Jeju, Korea, 28–30 January 2019; pp. 1–5. [Google Scholar]
- Standard, D.E. Federal Information Processing Standards Publication 46; National Bureau of Standards; US Department of Commerce: Washington, DC, USA, 1977; Volume 23. [Google Scholar]
- Denning, D.E.; Branstad, D.K. A taxonomy for key escrow encryption systems. Commun. ACM 1996, 39, 34–40. [Google Scholar] [CrossRef]
- Guo, H.; Zheng, Y.; Li, X.; Li, Z.; Xia, C. Self-healing group key distribution protocol in wireless sensor networks for secure IoT communications. Future Gener. Comput. Syst. 2018, 89, 713–721. [Google Scholar] [CrossRef]
- Lee, Y.; Park, Y.; Kim, C.S.; Lee, B. Threats Analysis and Mobile Key Recovery for Internet of Things. J. Korea Multimed. Soc. 2016, 19, 918–923. [Google Scholar] [CrossRef][Green Version]
- Sung, S.H. Key Management for Secure Internet of Things (IoT) Data in Cloud Computing. J. Korea Inst. Inf. Secur. Cryptol. 2017, 27, 353–360. [Google Scholar]
- Hatzivasilis, G.; Soultatos, O.; Ioannidis, S.; Verikoukis, C.; Demetriou, G.; Tsatsoulis, C. Review of security and privacy for the Internet of Medical Things (IoMT). In Proceedings of the 2019 15th International Conference on Distributed Computing in Sensor Systems (DCOSS), Santorini, Greece, 29–31 May 2019; pp. 457–464. [Google Scholar]
- Kanyamee, K.; Sathitwiriyawong, C. High-availability decentralized cryptographic multi-agent key recovery. Int. Arab J. Inf. Technol. 2014, 11, 52–58. [Google Scholar]
- Lim, S.; Kang, S.; Sohn, J. Modeling of multiple agent based cryptographic key recovery protocol. In Proceedings of the IEEE 19th Annual Computer Security Applications Conference, Las Vegas, NV, USA, 8–12 December 2003; pp. 119–128. [Google Scholar]
- Han, K.; Yeun, C.Y.; Kim, K. New key escrow model for the lawful interception in 3GPP. In Proceedings of the IEEE 2009 Digest of Technical Papers International Conference on Consumer Electronics, Las Vegas, NV, USA, 10–14 January 2009; pp. 1–2. [Google Scholar]
- Huadpaknam, P.; Pirak, C.; Mathar, R. A Security Key Recovery System with Channel Quality Awareness for Smart Grid Applications. ECTI Trans. Comput. Inf. Technol. (ECTI-CIT) 2016, 10, 1–14. [Google Scholar]
- Gennaro, R.; Karger, P.; Matyas, S.; Peyravian, M.; Roginsky, A.; Safford, D.; Willett, M.; Zunic, N. Two-phase cryptographic key recovery system. Comput. Secur. 1997, 16, 481–506. [Google Scholar] [CrossRef]
- Zheng, Y. Digital signcryption or how to achieve cost (signature & encryption)≪ cost (signature)+ cost (encryption). In Proceedings of the Annual International Cryptology Conference, Santa Barbara, CA, USA, 17–21 August 1997; Springer: Berlin/Heidelberg, Germany, 1997; pp. 165–179. [Google Scholar]
- Liu, Z.; Hu, Y.; Zhang, X.; Ma, H. Certificateless signcryption scheme in the standard model. Inf. Sci. 2010, 180, 452–464. [Google Scholar] [CrossRef]
- Li, F.G.; Zhong, D. A Survey of Digital Signcryption. Netinfo Secur. 2011, 12, 1–8. [Google Scholar]
- Shamir, A. How to share a secret. Commun. ACM 1979, 22, 612–613. [Google Scholar] [CrossRef]
- Blakley, G.R. Safeguarding cryptographic keys. In Managing Requirements Knowledge, International Workshop on; IEEE Computer Society: New York, NY, USA, 1979; p. 313. [Google Scholar]
- Beimel, A. Secret-sharing schemes: A survey. In International Conference on Coding and Cryptology; Springer: Qingdao, China, 2011; pp. 11–46. [Google Scholar]
- Attasena, V.; Darmont, J.; Harbi, N. Secret sharing for cloud data security: A survey. VLDB J. 2017, 26, 657–681. [Google Scholar] [CrossRef]
- Blaze, M.; Bleumer, G.; Strauss, M. Divertible protocols and atomic proxy cryptography. In Proceedings of the International Conference on the Theory and Applications of Cryptographic Techniques, Espoo, Finland, 31 May–4 June 1998; Springer: Berlin/Heidelberg, Germany, 1998; pp. 127–144. [Google Scholar]
- ElGamal, T. A public key cryptosystem and a signature scheme based on discrete logarithms. IEEE Trans. Inf. Theory 1985, 31, 469–472. [Google Scholar] [CrossRef]
- Green, M.; Ateniese, G. Identity-based proxy re-encryption. In Proceedings of the International Conference on Applied Cryptography and Network Security, Zhuhai, China, 5–8 June 2007; Springer: Berlin/Heidelberg, Germany, 2007; pp. 288–306. [Google Scholar]
- Shamir, A. Identity-based cryptosystems and signature schemes. In Proceedings of the Workshop on the Theory and Application of Cryptographic Techniques, Santa Barbara, CA, USA, 19–22 August 1984; Springer: Berlin/Heidelberg, Germany, 1984; pp. 47–53. [Google Scholar]
- Al-Riyami, S.S.; Paterson, K.G. Certificateless public key cryptography. In Proceedings of the International Conference on the Theory and Application of Cryptology and Information Security, Taipei, Taiwan, 30 November–4 December 2003; Springer: Berlin/Heidelberg, Germany, 2003; pp. 452–473. [Google Scholar]
- Sur, C.; Jung, C.D.; Park, Y.; Rhee, K.H. Chosen-ciphertext secure certificateless proxy re-encryption. In Proceedings of the IFIP International Conference on Communications and Multimedia Security, Linz, Austria, 31 May–2 June 2010; Springer: Berlin/Heidelberg, Germany, 2010; pp. 214–232. [Google Scholar]
- Polyakov, Y.; Rohloff, K.; Sahu, G.; Vaikuntanathan, V. Fast proxy re-encryption for publish/subscribe systems. ACM Trans. Priv. Secur. (TOPS) 2017, 20, 1–31. [Google Scholar] [CrossRef]
- Dodis, Y.; Goldwasser, S.; Kalai, Y.T.; Peikert, C.; Vaikuntanathan, V. Public-key encryption schemes with auxiliary inputs. In Proceedings of the Theory of Cryptography Conference, Zurich, Switzerland, 9–11 February 2010; Springer: Berlin/Heidelberg, Germany, 2010; pp. 361–381. [Google Scholar]
- Mambo, M.; Okamoto, E. Proxy cryptosystems: Delegation of the power to decrypt ciphertexts. IEICE Trans. Fundam. Electron. Commun. Comput. Sci. 1997, 80, 54–63. [Google Scholar]
- Yang, K.; Xu, J.; Zhang, Z. Certificateless proxy re-encryption without pairings. In Proceedings of the International Conference on Information Security and Cryptology, Seoul, Korea, 27–29 November 2013; Springer: Cham, Switzerland, 2013; pp. 67–88. [Google Scholar]
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations. |
© 2021 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).