Next Article in Journal
WS-RCNN: Learning to Score Proposals for Weakly Supervised Instance Segmentation
Next Article in Special Issue
Analysis of Autoencoders for Network Intrusion Detection
Previous Article in Journal
Attention-Guided Network with Densely Connected Convolution for Skin Lesion Segmentation
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Secure Encapsulation Schemes Using Key Recovery System in IoMT Environments

1
Department of Software Convergence, Soonchunhyang University, Asan 31538, Korea
2
Faculty of Artificial Intelligence and Data Engineering, Sangmyung University, Seoul 03016, Korea
*
Author to whom correspondence should be addressed.
Sensors 2021, 21(10), 3474; https://doi.org/10.3390/s21103474
Submission received: 15 March 2021 / Revised: 28 April 2021 / Accepted: 13 May 2021 / Published: 17 May 2021

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 [1,2]. 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 [3]. According to the security threats, such as personal information leakage cases, encryption has rapidly become important to secure personal information [4]. 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 [5]. 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. [6] 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. [7] 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 [8] 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 [9]. 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. [10] 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. [11] 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. [12] 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 [13] 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 [14]. 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 [15] 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 [16,17].

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 [18,19] 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 [20,21].

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. [22] proposed the first two-way proxy re-encryption scheme. This scheme was designed using the ElGamal encryption scheme [23]. In 2007, Green et al. [24] 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 [25]. 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. [26], 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. [27] 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 [28,29,30].

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.

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 ( K G C ): Every participant P a r t must perform the K C G and key generation and communication steps to generate keys. All P a r t can generate a private key through the private key generation step with K G C , and a public key corresponding to the private key can be generated. The K G C publishes the public parameter p a r a m s for performing encrypted communication with P a r t .
  • Devices ( D e v ): D e v are medical devices and monitoring devices. Devices perform communication in the system managed by the M e d . In this model, D e v s must perform communication in the format designated by M e d , and the basic format follows the form of ( C K R F ) , in which the ciphertext and K R F are concatenated. Devices participating in the communication need M e d ’s public parameters in order to make the session key used for message encryption into K R F . Furthermore, the generated K R F should be designed to only be controlled by K R C and K R A .
  • Medical Institution ( M e d ): M e d is a medical institution that manages device authorization control and data on medical devices. When a device requests K R F key recovery, the M e d verifies that it is the lawful owner of the K R F . In this paper, the step of confirming whether the K R F is a lawful owner is omitted. In addition, the M e d sends the K R F to K R C 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.

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: P a r t represents all participants ( D e v , M e d , K R C , M - K R A ) who use the encrypted communication provided by K G C . P a r t can perform encrypted communication only by using p a r a m s provided by K G C .
  • Key Recovery Center ( K R C ): K R C is an organization in charge of key recovery and plays a central role in key recovery. The key recovery process is performed according to M e d ’s request for key recovery, and K R F is converted into a form that can be recovered using K R C ’s private key. In this model, to reduce the burden of K R C ’s key recovery operation, the help of M- K R A is needed.
  • Multi-Key Recovery Agents (M- K R A ): M- K R A is the agent that helps some operations of key recovery by reducing the burden on K R C . The K R A included in the M- K R A determines whether the K R F is suitable for recovery to prevent abuse of the K R F ’s authority. When receiving a key recovery request from K R C , M- K R A perform the K R F recovery process using their private key. Furthermore, M- K R A send the obtained session key pieces to K R C .

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 K R F information from the device and K R F 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 K R F . In addition, the fact that device-generated K R F should be clear after transmission, exchange, communication, and processing.
  • Attack on group authentication detection: If a malicious third-party K R A pretends to be a lawful member of the key recovery group, K R A should be detected through group verification.
  • Single point of failure protection: In M- K R A , some K R A s should be able to recover session keys even if another K R A 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.

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 ( P a r t ): P a r t represents all participants ( D e v , M e d , K R C , K R A ) who use the encrypted communication provided by K G C . P a r t can perform encrypted communication only by using p a r a m s provided by K G C .
  • Key Recovery Center ( K R C ): K R C is an organization in charge of key recovery and plays a central role in key recovery. The key recovery process is performed according to M e d ’s request for key recovery, and K R F is converted into a form that can be recovered using K R C ’s public key. However, in this model, key recovery can only be completed with the help of K R A to prevent abuse of privileges by K R C .
  • Key Recovery Auditor ( K R A ): K R A is a monitoring agency that judges whether a key can be recovered by auditing the validity of key recovery. The K R A determines whether K R F is suitable for recovery to prevent abuse of authority through collusion between the M e d and the K R C . If the key recovery request is deemed to be lawful, K R A will perform the K R F recovery process with its private key and sends it over to the K R C .

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 K R F information from the device and K R F 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 K R F . 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 M e d as needed.
  • Collusion attack resistance: Fewer than three participants among the M e d , K R C , and K R A should not be allowed to obtain keys even if they are maliciously colluding.
  • Key escrow problem: K G C 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.

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
  • G : Cyclic group on prime p
  • g: Random generator, g G
  • H: Hash function, { 0 , 1 } * × G Z p *
  • s k M : Master private key, s k M Z p *
  • p k M : Master public key, p k M = g s k M
  • D e v A : Monitoring devices
  • D e v B : Medical devices
  • P a r t i : Network Participant i, ( D e v A , D e v B , M e d , K R C , K R A P a r t i )
  • w i , t i , z i , v i : Random numbers, w i , t i , z i , v i Z p *
  • s k i : P a r t i ’s private key, s k i = ( d i , z i , v i )
  • p k i : P a r t i ’s public key, p k i = ( X i , Z i , V i )
  • a , b : Secret value of D e v A and D e v B , a , b Z p *
  • P S K A , P S K B : Partial session key of D e v A and D e v B
  • S K : Session key between D e v A and D e v B
  • x: Random number, x Z p * with x p 1
  • R K R A i : Random number of K R A i , R K R A i Z p *
  • S G N : Group authentication values assigned to agents (Shared Group Number)
  • c , r , s : Signcryption values
  • c i , r i , s i :ith signcryption pieces
  • T T i : Value containing the value to be recovered when some KRAs fail the key recovery operation
  • T c i , T r i , T s i :ith T T i pieces
  • M : Message space, M { 0 , 1 } n
  • M: Plaintext message between D e v A and D e v B ( M M )
  • C: Ciphertext message (Encrypted M)
  • K R F : Key recovery field, E p k K R C ( K R F 1 | | K R F 2 | | | | K R F n | | H ( S G N ) )
  • K R F i :ith key recovery field piece, E p k K R A i ( c i | | r i | | s i | | S G N | | T T i )

4.2. Setup Phase

In this phase, the KGC takes the security parameters as an input the security parameter 1 λ and generates public parameters.
  • Step 1: The KGC selects λ -bit large prime p, where q is a large prime factor of p 1 and group G of prime order p. In addition, a random generator g G is selected.
  • Step 2: A master private key s k M Z p * is randomly selected and a master public key p k M g s k M is computed.
  • Step 3: KGC selects Hash function H.
  • Step 4: Then, public parameters p a r a m s = ( G , n , p , q , g , S , H ) are published.

4.3. Key Pair Generation Phase

In this phase, P a r t i receives a partial private key from KGC and uses it to generate full private key s k i and public key p k i .
  • Step 1: KGC generates parameters w i , t i Z p * for participant P a r t i through the following operation and sends them to P a r t i through a secure channel.
    X i = g x i
    d i = x i + s H ( I D i , w i ) m o d q
  • Step 2: Participant P a r t i who receives X i , d i from KGC, selects Random numbers z i , v i Z p * and sets P a r t i ’s private key s k i .
  • Step 3: Participant P a r t i generates Z i , V i and sets public key p k i .
    Z i = g z i
    V i = g v i

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.
  • Step 1: D e v A selects a Z p * and calculate partial session key P S K A = g a . D e v B also selects b Z p * and calculates partial session key P S K B = g b . After that, D e v A and D e v B exchange P S K A and P S K B with each other.
  • Step 2: D e v A and D e v B calculate the session key S K = ( P S K B ) a = ( P S K A ) b using the exchanged values P S K A and P S K B .
  • Step 3: D e v A generates random number x Z p * and k = p k K R C x m o d p , which is then divided in half into k 1 and k 2 .
    k = ( k 1 k 2 )
  • Step 4: D e v A generates c , r and s using k 1 , k 2 , s k A , p k A and S K .
    c = E k 1 ( S K )
    r = H k 2 ( g x m o d p , S K )
    s = x / ( r + s k A ) m o d q
  • Step 5: D e v A divides c , r and s to c i , r i and s i .
    c = c 1 c 2 c n
    r = r 1 r 2 r n
    s = s 1 s 2 s n
    where n is the number of KRA and c i = { c 1 , , c n } , r i = { r 1 , , r n } , s i = { s 1 , , s n } .

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.
  • Step 1: D e v A requests S G N to M-KRA.
  • Step 2: Each of the KRAs requested for S G N from D e v A randomly selects R K R A i Z p * . After that, each KRA generates an S G N by sharing R K R A i generated through a secure channel with each other.
    S G N = R K R A 1 R K R A 2 , , R K R A n
  • Step 3: M-KRA send S G N to D e v A .
  • Step 4: D e v A generates T c i , T r i , T s i using c i , r i , s i and S G N . Then, T T i is generated using T c i , T r i , and T s i .
    T c i = c i S G N
    T r i = r i S G N
    T s i = s i S G N
    T T i = ( T c i T r i T s i )
  • Step 5: D e v A generates K R F using K R F i .
    K R F i = E p k K R A i ( c i r i s i S G N T T i )
    K R F = E p k K R C ( K R F 1 K R F 2 K R F n H ( S G N ) )
  • Step 6: Then, the generated K R F is attached to the ciphertext C.
    ( C K R F )

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.
  • Step 1: D e v A refers to the total number of KRAs n and the number of KRAs required for key recovery as m r .
  • Step 2: D e v A calculates the number of KRAs t required to distribute T T i .
    t = n m r
  • Step 3: D e v A selects a KRA or KRAs to replace the failed K R A i as follows:
    j = i m r
    K R A i K R A i + 1 , K R A i + 2 , , K R A i + t ( i m r ) K R A i + 1 , , K R A n , K R A 1 , , K R A j ( i > m r a n d i n ) K R A 1 , K R A 2 , , K R A t ( i = n )
  • Step 4: D e v A distributes T T i to selected KRA or KRAs.
  • Step 5: If K R A i fail to operate properly, the selected KRA or KRAs obtain c i , r i and s i of failed KRA using the distributed T T i and S G N .
    T T i S G N = ( T c i T r i T s i ) S G N = ( T c i S G N T r i S G N T s i S G N ) = ( c i , r i , s i )

4.7. Session Key Recovery Phase

This phase describes how to recover a key if the D e v B requests key recovery as shown in Figure 8.
  • Step 1: When D e v B requests K R F decryption from Med to recover S K , and sends K R F .
  • Step 2: Then Med requests K R F decryption from KRC to recover S K , and sends K R F .
  • Step 3: KRC upon receiving a request for K R F decryption, obtains K R F i pieces after K R F decrypt with s k K R C .
    D s k K R C ( E p k K R C ( K R F 1 K R F n H ( S G N ) ) )
  • Step 4: The obtained K R F i pieces are sent to each M-KRA to request decryption.
  • Step 5: The requested M-KRA obtain c i , r i , s i , S G N , T T i values with s k K R A i .
    D s k K R A i ( E p k K R A i ( c i r i s i S G N T T i ) )
  • Step 6: Among the obtained values, c i , r i , s i , S G N values are encrypted with p k K R C and sends to the KRC.
    E p k K R C ( c i r i s i S G N )
  • Step 7: KRC compares S G N obtained by decrypting the received ciphertext with s k K R C and H ( S G N ) . If they match, c i , r i , s i pieces are collected and c , r , s are recovered.
  • Step 8: KRC recovers the k value using the received ciphertext, public parameters, and recovered c , r , s .
    k = H ( ( p k A · g r ) s · s k K R C m o d p )
  • Step 9: Then, KRC divides k by k 1 , k 2 .
  • Step 10: KRC recovers the S K using the obtained k 1 and c.
    D k 1 ( C ) = D k 1 ( E k 1 ( S K ) ) = S K
  • Step 11: KRC compares the calculated H k 2 ( S K ) and r values using the obtained k 2 .
  • Step 12: If it matches, KRC sends the recovered S K to Med.
  • Step 13: Then, Med sends S K to D e v B and the message is decrypted using the received S K .
    D S K ( C ) = D S K ( E k 1 ( M ) ) = M

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. [31]. 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.

5.1. System Parameters

The system parameters used in the proposed scheme-II are as follows:
  • q: Prime number
  • H 1 : Hash functions, { 0 , 1 } * × G Z q *
  • H 2 : Hash functions, G { 0 , 1 } l 1 + l 2 for some bit-length l 1 , L 2 N
  • H 3 H 5 : Hash functions, { 0 , 1 } * Z q *
  • H 6 : Hash functions, G Z q *
  • P a r t i : System participant i, ( D e v A , D e v B , M e d , K R C , K R A P a r t i )
  • s: Master secret key of KGC, s Z q *
  • s k i : P a r t i ’s private key, s k i = ( d i , y i , z i )
  • p k i : P a r t i ’s public key, p k i = ( X i , Y i , Z i )
  • K R F : Key recovery field, K R F = ( K R F 1 , K R F 2 , K R F 3 , K R F 4 )

5.2. Setup Phase

In this phase, the KGC takes the security parameter 1 λ as an input and generates public parameters.
  • Step 1: K G C selects λ -bit large prime q and group G of prime order q. In addition, a random generator g G is selected.
  • Step 2: K G C randomly selects master secret key s Z q * , and compute S = g s .
  • Step 3: K G C selects Hash function H 1 , H 2 , H 3 , H 4 , H 5 , H 6 .
  • Step 4: The message space M and public parameters p a r a m s = ( G , l 1 , l 2 , q , g , S , H 1 , H 2 , H 3 , H 4 , H 5 , H 6 ) are published.

5.3. Key Pair Generation Phase

In this phase, P a r t i receives a partial private key from K G C and uses it to generate full private key s k i and public key p k i .
  • Step 1: K G C generates parameters x i Z q * for participant P a r t i through the following operation and sends them to P a r t i through a secure channel.
    X i = g x i
    d i = x i + s H 1 ( I D i , X i ) mod q
  • Step 2: P a r t i who receives X i , d i from KGC, selects Random numbers y i , z i Z q * and sets P a r t i ’s private key s k i .
    s k i = ( d i , y i , z i )
  • Step 3: P a r t i generates Y i , Z i and sets public key p k i .
    Y i = g y i
    Z i = g z i
    p k i = ( X i , Y i , Z i )
    After that, P a r t i publishes public key p k i .

5.4. Session Key Exchange and KRF Generation Phase

In this phase, a session key is exchanged between D e v A and D e v B , and a K R F is generated. Furthermore, in the K R F generation phase, after generating K R F , the ciphertext C is communicated with K R F as shown in Figure 10.
  • Step 1: D e v A selects a Z q * and calcultate partial session key P S K A .
    P S K A = g a
    D e v B also selects b Z q * and calculates partial session key P S K B .
    P S K B = g b
    After that, D e v A and D e v B exchange P S K A and P S K B with each other.
  • Step 2: D e v A and D e v B calculate the session key S K = ( P S K B ) a = ( P S K A ) b using the exchanged values P S K A and P S K B .
  • Step 3: D e v A generates the ciphertext message C = E S K ( M ) using the generated session key S K .
  • Step 4: After that, D e v A selects a random value t , c Z q * and σ { 0 , 1 } l 2 , and generates K R F using S K , p k M e d , p k K R C and p k K R A as follows:
    π i = X i · S H 1 ( I D i , X i )
    V i = π i H 6 ( Y i ) · Y i
    τ = H 5 ( S K , σ , I D M e d , p k M e d )
    α = Y M e d c
    β = Z M e d c
    K R F 1 = g t
    K R F 2 = Y K R C τ = g τ · y K R C
    K R F 3 = ( S K σ ) H 2 ( g c )
    K R F 4 = ( α · β ) H 4 ( V K R A τ ) · H 4 ( V M e d τ )
    K R F = ( K R F 1 , K R F 2 , K R F 3 , K R F 4 )
    After that, D e v A and D e v B communicate with each other using ( C K R F ) .

5.5. Med Enforcement Phase

In this phase, M e d will start recovering the encrypted session key between D e v A and D e v B at the request of D e v A as shown in Figure 11.
  • Step 1: D e v A sends K R F to M e d to recover the session key S K .
  • Step 2: M e d generates the re-encryption key R K M e d K R C .
    γ K R C = X K R C · S H 1 ( I D K R C , X K R C )
    K M e d K R C = H 3 ( γ K R C z M e d , Z K R C z M e d , I D M e d , p k M e d , I D K R C , p k K R C )
    R K M e d K R C = ( d M e d H 6 ( Y M e d ) + y M e d ) · K M e d K R C
  • Step 3: M e d requests key recovery by sending the ( K R F 1 , K R F 2 , K R F 4 , K R F 6 , R K M e d K R C ) to the K R C .

5.6. Session Key Recovery Phase

In this phase, K R C receives a key recovery request from M e d . K R F calculates K R F 2 using its private key, and then requests key recovery from K R A as shown in Figure 12.
  • Step 1: After receiving ( K R F 1 , K R F 2 , K R F 4 , R K M e d K R C ) , K R C calculates K R F 2 as K R F 2 using its s k K R C as follows:
    K R F 2 = K R F 2 1 / y K R C = Y K R C τ / y K R C = g τ · y K R C / y K R C = g τ
    After that, K R C sends the generated ( K R F 1 , K R F 2 , K R F 4 , R K M e d K R C ) to the K R A .
  • Step 2: After receiving ( K R F 1 , K R F 2 , K R F 4 , R K M e d K R C ) , K R A re-encrypts K R F 2 as K R F 2 using its R K M e d K R C as follows:
    K R F 4 = K R F 4 1 H 4 ( K R F 2 d K R A · H 4 ( Y K R A ) + y K R A ) = ( α · β ) H 4 ( V K R A τ ) · H 4 ( V M e d τ ) H 4 ( c 2 d K R A H 4 ( Y K R A ) + y K R A ) = ( α · β ) H 4 ( V M e d τ )
    K R F 2 = K R F 2 R K M e d K R C
    After that, K R A sends ( K R F 2 , K R F 4 ) to the KRC.
  • Step 3: K R C re-decrypts K R F 4 to obtain K R F 4 using s k K R C as follows:
    K M e d K R C = H 3 ( Z M e d d K R C , Z M e d z K R C , I D M e d , p k M e d , I D K R C , p k K R C )
    K R F 4 = K R F 4 1 H 4 ( K R F 2 1 K M e d K R C ) = ( α · β ) H 4 ( V M e d τ ) H 4 ( K R F 2 1 K M e d K R C ) = ( α · β )
    After that, K R C sends K R F 4 to M e d .
  • Step 4: M e d decrypts K R F 4 to obtain S K as follows:
    g c = K R F 4 1 ( y M e d + z M e d ) = ( α · β ) 1 ( y M e d + z M e d ) = ( Y M e d · Z M e d ) 1 ( y M e d + z M e d ) = g c · ( y M e d + z M e d ) / ( y M e d + z M e d )
    ( S K σ ) = K R F 3 H 2 ( g c )
    After that, M e d sends S K to D e v A .
  • Step 5: D e v A decrypts the message M using the obtained S K .
    M = D e c S K ( C )

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.

6.1. Proposed Scheme-I (Key Recovery System Using Signcryption)

  • KRF integrity: The device, M e d , K R A , and K R C participating in key recovery should not be able to transform a device key that generates a K R F maliciously. To solve this problem, this includes the session key hash in parameter r of the K R F . Therefore, K R F data cannot be forged. Only the device can access the K R F session key generated by the device.
    r = ? r H k 2 ( g x m o d p , S K ) = ? H k 2 ( g x m o d p , S K )
  • 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 K R F generated in the communication process contains the public keys of K R C and M K R A , third-party besides K R C and K R A cannot know the contents of the corresponding K R F .
  • Non-repudiation: If the device generates and uses the wrong K R F , K R C cannot recover the key. To solve this problem, the device should not be able to reject the fact that it generated K R F . Therefore, this includes the private key s k A of the device in parameter s of the K R F . The device cannot deny that it generated the K R F .
    k = ( p k A · g r ) s · s k K R C = ( g s k A · g r ) s · s k K R C = ( g s k A · g r ) x / ( r + s k A ) · s k K R C = g s k K R C x = p k K R C x
  • Attack on group authentication detection: Malicious key recovery by third-party K R A s should not be possible. Therefore, a lawful K R A group member applies an XOR operation on the values from R K R A 1 to R K R A n to generate a shared group value of S G N between groups. The device receives it from a lawful group member and hashes the S G N to include H ( S G N ) in the K R F . When K R C recovers the complete key, it hashes and compares the S G N sent by the M K R A with the S G N contained in the K R F to ensure it was received from a lawful K R A .
    H ( S G N ) = ? H ( S G N )
  • Single point of failure protection: As both the K R C and all K R A s participate in session key recovery, it should be possible to recover the key even if some K R A s fail. Therefore, a special value T T is generated. If some K R A s fail to recover the session key pieces, other K R A s recover the session key pieces instead of the failed K R A and send them to the K R C . T T includes all c i , r i , s i pieces and the S G N produced by the XOR operation. The other K R A (not the corresponding K R A ) decrypts T T i and sends it to the K R C , allowing the K R C to recover the complete session key.
    T T i = ( T c i T r i T s i )
    T T i S G N = ( ( c i S G N ) ( r i S G N ) ( s i S G N ) ) = ( ( c i S G N ) S G N ( r i S G N ) S G N ( s i S G N ) S G N ) = ( c i r i s i )
  • Med applied for support: M e d 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, M e d sends K R F to K R C , and K R C decrypts K R F to obtain K R F pieces. The acquired K R F pieces are sent to M K R A and requested for recovery. Then, M K R A obtains session key pieces by decrypting the acquired K R F pieces. The obtained session key pieces are sent to K R C , and K R C recovers the complete session key. After that, it sends the complete session key to the M e d , allowing message decryption.
  • Key escrow problem: The proposed scheme-I is based on a CL-PKC scheme. Therefore, as K G C can generate only a part of the private key during the private key generation process, the key escrow problem caused by K G C 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, K R F is encrypted with the public keys of M e d and K R A . Therefore, during the key recovery process, M e d , K R C and K R A cannot be forged or modified K R F by alone.
    K R F = ( K R F 1 , K R F 2 , K R F 3 , K R F 4 )
    π M e d = X M e d · S H 1 ( I D M e d , X M e d )
    V M e d = π M e d H 6 ( Y M e d ) · Y M e d
    K R F 4 = ( α · β ) H 4 ( V K R A τ ) · H 4 ( V M e d τ )
  • Data confidentiality: As the K R F generated in the communication process contains the public key of the Med and the secret values of K R C and K R A , third-party besides the M e d , K R C , and K R A cannot know the contents of the corresponding K R F . In addition, even if all three of the M e d , K R C , and K R A do not participate, each M e d , K R C , and K R A cannot know the contents of the K R F .
  • Med applied for support: M e d can perform recovery of S K as needed. K R F is created using the public key of M e d . M e d can perform the key recovery process when it is determined that the key recovery is necessary for D e v that it manages. For this, M e d can create R K M e d K R C and request and execute the key recovery process through K R C and K R A .
  • Collusion attack resistance: Fewer than three participants among the M e d , K R C , and K R A 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 M e d requires the cooperation of the K R C and K R A to decrypt K R F . Thus, even if the M e d has colluded with a single participant among the K R C and K R A , the completed key recovery cannot be achieved without the assistance of the third participant as follows:
    K R F = ( K R F 1 , K R F 2 , K R F 3 , K R F 4 )
    K R F 3 = ( S K σ ) H 2 ( g c )
    In order to obtain S K from the above K R F = ( K R F 1 , K R F 2 , K R F 3 , K R F 4 ) , K R F 3 must be decrypted. In order to decrypt K R F 3 , M e d , K R C and K R A need to know c or g c . However, c and g c know only D e v . Therefore, it is necessary to obtain g c by decrypting K R F 4 .
    K R F 4 = ( α · β ) H 4 ( V K R A τ ) · H 4 ( V M e d τ )
    Here, K R F 4 contains α · β = Y M e d c · Z M e d c , so the attackers are H 4 ( V K R A τ ) and H 4 ( V M e d τ ) should be computed.
    π i = X i · S H 1 ( I D i , X i )
    V i = π i H 6 ( Y i ) · Y i
    Since V i can be created using a public key, anyone can create it. However, since τ only knows D e v , attackers must use K R F 2 to calculate H 4 ( V K R A τ ) and H 4 ( V M e d τ ) .
    K R F 2 = Y K R C τ = g τ · y K R C
    Here, a K R C ’s private key y K R C is required to obtain g τ from K R F 2 . Therefore, KRC is required in the key recovery process.
    K R F 2 = g τ = K R F 2 1 / y K R C = g τ · y K R C / y K R C
    Next, since the attacker does not know τ , he has to perform the following operation to calculate H 4 ( V K R A τ ) . In the end, the K R A ’s private keys d K R A and y K R A are required, so K R A is also required.
    K R F 4 = K R F 4 1 H 4 ( K R F 2 d K R A · H 4 ( Y K R A ) + y K R A ) = ( α · β ) H 4 ( V K R A τ ) · H 4 ( V M e d τ ) H 4 ( c 2 d K R A H 4 ( Y K R A ) + y K R A ) = ( α · β ) H 4 ( V M e d τ )
    Furthermore, an attacker who acquires ( α · β ) must compute g c to obtain ( S K σ ) from K R F 3 = ( S K σ ) H 2 ( g c ) .
    g c = ( α · β ) 1 ( y M e d + z M e d ) = ( Y M e d · Z M e d ) 1 ( y M e d + z M e d ) = ( g c · y M e d · g c · z M e d ) 1 ( y M e d + z M e d ) = g c · ( y M e d + z M e d ) / ( y M e d + z M e d )
    In order to acquire g c using K R F 4 , M e d ’s private keys y M e d and z M e d are required, so M e d is also required. As a result, in order to obtain S K by decrypting K R F , all of M e d , K R C , and K R A must participate.
  • Key escrow problem: The proposed scheme-II is based on a CL-PKC scheme. Therefore, as K G C can generate only a part of the private key during the private key generation process, the key escrow problem caused by K G C 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

  1. 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]
  2. 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]
  3. 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]
  4. 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]
  5. Denning, D.E.; Branstad, D.K. A taxonomy for key escrow encryption systems. Commun. ACM 1996, 39, 34–40. [Google Scholar] [CrossRef]
  6. 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]
  7. 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]
  8. 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]
  9. 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]
  10. Kanyamee, K.; Sathitwiriyawong, C. High-availability decentralized cryptographic multi-agent key recovery. Int. Arab J. Inf. Technol. 2014, 11, 52–58. [Google Scholar]
  11. 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]
  12. 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]
  13. 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]
  14. 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]
  15. 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]
  16. Liu, Z.; Hu, Y.; Zhang, X.; Ma, H. Certificateless signcryption scheme in the standard model. Inf. Sci. 2010, 180, 452–464. [Google Scholar] [CrossRef]
  17. Li, F.G.; Zhong, D. A Survey of Digital Signcryption. Netinfo Secur. 2011, 12, 1–8. [Google Scholar]
  18. Shamir, A. How to share a secret. Commun. ACM 1979, 22, 612–613. [Google Scholar] [CrossRef]
  19. 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]
  20. Beimel, A. Secret-sharing schemes: A survey. In International Conference on Coding and Cryptology; Springer: Qingdao, China, 2011; pp. 11–46. [Google Scholar]
  21. Attasena, V.; Darmont, J.; Harbi, N. Secret sharing for cloud data security: A survey. VLDB J. 2017, 26, 657–681. [Google Scholar] [CrossRef]
  22. 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]
  23. 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]
  24. 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]
  25. 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]
  26. 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]
  27. 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]
  28. 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]
  29. 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]
  30. 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]
  31. 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]
Figure 1. Summary and comparison of proposed key recovery system model.
Figure 1. Summary and comparison of proposed key recovery system model.
Sensors 21 03474 g001
Figure 2. Proposed scheme-I.
Figure 2. Proposed scheme-I.
Sensors 21 03474 g002
Figure 3. Proposed scheme-II.
Figure 3. Proposed scheme-II.
Sensors 21 03474 g003
Figure 4. Scenario of proposed scheme-I.
Figure 4. Scenario of proposed scheme-I.
Sensors 21 03474 g004
Figure 5. Session key exchange and encryption phase of proposed scheme-I.
Figure 5. Session key exchange and encryption phase of proposed scheme-I.
Sensors 21 03474 g005
Figure 6. KRF generation phase of proposed scheme-I.
Figure 6. KRF generation phase of proposed scheme-I.
Sensors 21 03474 g006
Figure 7. KRA fault recovery phase of proposed scheme-I.
Figure 7. KRA fault recovery phase of proposed scheme-I.
Sensors 21 03474 g007
Figure 8. Session key recovery phase of proposed scheme-I.
Figure 8. Session key recovery phase of proposed scheme-I.
Sensors 21 03474 g008
Figure 9. Scenario of proposed scheme-II.
Figure 9. Scenario of proposed scheme-II.
Sensors 21 03474 g009
Figure 10. Session key exchange and KRF generation phase of proposed scheme-II.
Figure 10. Session key exchange and KRF generation phase of proposed scheme-II.
Sensors 21 03474 g010
Figure 11. Med enforcement phase of proposed scheme-II.
Figure 11. Med enforcement phase of proposed scheme-II.
Sensors 21 03474 g011
Figure 12. Session key recovery phase of proposed scheme-II.
Figure 12. Session key recovery phase of proposed scheme-II.
Sensors 21 03474 g012
Table 1. Comparison of proposed schemes.
Table 1. Comparison of proposed schemes.
[6][7][8][10][11][12][13]Proposed Scheme-IProposed Scheme-II
KRF integrity---××××
Non-repudiation---×××××
Attack on group authentication detection--××-
Single point of failure protection××××××
Data confidentiality
Med applied for support-------
Collusion attacks resistance×××××××
Key escrow problem××××××
∨: Provided/×: Not provided/-:Not considered
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Kim, T.; Kim, W.; Seo, D.; Lee, I. Secure Encapsulation Schemes Using Key Recovery System in IoMT Environments. Sensors 2021, 21, 3474. https://doi.org/10.3390/s21103474

AMA Style

Kim T, Kim W, Seo D, Lee I. Secure Encapsulation Schemes Using Key Recovery System in IoMT Environments. Sensors. 2021; 21(10):3474. https://doi.org/10.3390/s21103474

Chicago/Turabian Style

Kim, Taehoon, Wonbin Kim, Daehee Seo, and Imyeong Lee. 2021. "Secure Encapsulation Schemes Using Key Recovery System in IoMT Environments" Sensors 21, no. 10: 3474. https://doi.org/10.3390/s21103474

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop