Next Article in Journal
Fuel Flowrate Control for Aeroengine and Fuel Thermal Management for Airborne System of Aircraft—An Overview
Next Article in Special Issue
A Blockchain-Based Efficient, Secure and Anonymous Conditional Privacy-Preserving and Authentication Scheme for the Internet of Vehicles
Previous Article in Journal
Effects of Germination Black Soy Milk Fermented with Lactobacillus plantarum TWK10 on Anti-Oxidative and Anti-Melanogenesis
Previous Article in Special Issue
Achieving Sender Anonymity in Tor against the Global Passive Adversary
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

A Practical and Efficient Node Blind SignCryption Scheme for the IoT Device Network

Department of Computer Science and Information Engineering, National Chin-Yi University of Technology, Taichung 41170, Taiwan
*
Author to whom correspondence should be addressed.
These authors contributed equally to this work.
Appl. Sci. 2022, 12(1), 278; https://doi.org/10.3390/app12010278
Submission received: 8 November 2021 / Revised: 13 December 2021 / Accepted: 21 December 2021 / Published: 28 December 2021
(This article belongs to the Special Issue Advances in Information Security and Privacy)

Abstract

:
In recent years, Internet of Things (IoT for short) research has become one of the top ten most popular research topics. IoT devices also embed many sensing chips for detecting physical signals from the outside environment. In the wireless sensing network (WSN for short), a human can wear several IoT devices around her/his body such as a smart watch, smart band, smart glasses, etc. These IoT devices can collect analog environment data around the user’s body and store these data into memory after data processing. Thus far, we have discovered that some IoT devices have resource limitations such as power shortages or insufficient memory for data computation and preservation. An IoT device such as a smart band attempts to upload a user’s body information to the cloud server by adopting the public-key crypto-system to generate the corresponding cipher-text and related signature for concrete data security; in this situation, the computation time increases linearly and the device can run out of memory, which is inconvenient for users. For this reason, we consider that, if the smart IoT device can perform encryption and signature simultaneously, it can save significant resources for the execution of other applications. As a result, our approach is to design an efficient, practical, and lightweight, blind sign-cryption (SC for short) scheme for IoT device usage. Not only can our methodology offer the sensed data privacy protection efficiently, but it is also fit for the above application scenario with limited resource conditions such as battery shortage or less memory space in the IoT device network.

1. Introduction

In recent years, Internet of Things(IoT for short) devices has widely applied in our daily life. From the life of human beings to industry 4.0, there are many common machines composed of several IoT devices such as the air conditioner, electronic vehicle, mobile phone, etc. These devices can collect physical signal data and transfer these data to a powerful gateway device of the IoT network through the Internet in a digital manner. When the gateway has received the sensed data from a sender node, it preserves these records in a database or cloud storage service. However, such IoT devices have limitations compared with a general gateway server, such as fewer memory space or limited computing power. This situation usually occurs in the communications between nodes of wireless sensing network(WSN for short) and IoT networks. Once an IoT device has collected physical data from a human body, it then must forward these data to the powerful gateway that can preserve the final result data into a database and perform other cryptography operations. From the above scenario, we discover that, if any IoT devices attempt to perform a heavy encryption/decryption computation such as modular exponentiation over a large prime number in a public key algorithm, then they must perform a signature operation later for concrete security protection and authentication on these sensed data. This will lead to fast power consumption and free-memory usage of these nodes.
To solve the above situation, we adopt the sign-cryption approach to let a sensing node perform the lightweight sign-cryption operation and generate the final cipher-text with its own signature simultaneously on the powerful server side. When the gateway server has received this cipher-text from a sensor node, it can decrypt this cipher-text first, then perform the validation of this plain-text with the inside signature’s help for data authentication.
We consider the following situation of an IoT device called D S i that attempts to transfer sensed data to a receiver called R , where i = 1 l and l is the total number of all the sensor nodes. To keep the data confidential, D S i must encrypt its own data first. At this time, it can adopt an efficient encryption/decryption method to generate a cipher-text. Then, D S i can forward this cipher-text to a powerful base station ( B S for short), which it equips with more computing power than all the sensor nodes in the same IoT network. However, D S i must also consider its own memory limitation and remaining computing power to perform such encrypting/decryption computation in sequence. The node D S i may not be able to perform the signature computation after it has generated encryption if the remaining power is not enough to perform signature generation in this time; thus, it must transfer the heavy computation to a powerful node such as the base station B S .
Due to the mentioned situations, we concluded that, if there exists an efficient method allowing IoT devices to perform encryption and signature operations on the sensed data in one operation, it could save more computing time and energy, which can then be used for other computations. In the recent literature, sign-cryption was discussed in [1,2,3,4]. The authors claimed that the sender can transfer the data only to perform one sign-cryption time, and it can output a cipher-text with a guaranteed signature within. Then, the receiver can decrypt the received cipher-text with a secret random number inside the corresponding signature. When the signature is verified by the receiver successfully, the receiver can obtain the random secret value by applying its own secret key. Finally, the receiver R can obtain the final data by inputting this secret random number to decrypt the cipher-text. Unfortunately, their computation efficiency are not practical to fit above situation for IoT device network. There are some research limitations in our proposed scheme. One is that the sender device S is already authenticated with the receiver R ; they both inherently trust each other within the same IoT network environment. The authentication mechanism is beyond the scope of this research. Another limitation is that IoT device management is also beyond our research. We can adopt other proposed authentication mechanisms [5,6,7,8,9,10] for devices to authenticate with each other in an IoT device network and also construct an IoT devices group with other devices. Our scheme focuses on the efficient signature and encryption scheme for these power limitation IoT devices such as the Zigbee chips or IoT sensor devices embedding less memory.
To provide a mechanism to generate a signature and a cipher-text for IoT devices simultaneously, we propose an efficient and practical, fair sign-cryption scheme based on quadratic residue (QR for short) for the IoT device network. Not only does it offer an efficient and practical solution to IoT devices, but it also reduces the signature and cipher-text generation cost in our methodology. We also offer the formal security proof on our proposed scheme in the Appendix A and evaluate the efficiency of our mechanism in this research.

2. Related Work and Security Definitions

Related Work

In this section, we discuss the related research proposed in [1,2,3,4]. In [1], the authors propose a CPAS scheme for the vehicular sensor network and assume that there exists two TAs, where one is a tracing Authority (TRA for short) and the other is a public key generation center (PKG for short) for tracing the identity and key pairs of all vehicles, respectively. The TRA can produce a pseudo-ID for all vehicles after it has verified the real identity from them. The PKG also can generate the key-pairs for these vehicles. If there is a dispute in the protocol, the TRA can determine the real identity of the pseudo-ID key-pair through the help of the PKG. At this time, each vehicle does not show its real identity through the above scheme’s methodology. On the other hand, we can discover that the total efficiency computation of this scheme is 3 P a + 1 S M for signature verification operation and 3 P a + ( n + 1 ) S M for n signatures batch verification, where P a is a pairing operation and S M is a symmetric encrypting operation. We consider that the pairing operation is demanding for comparing our scheme with others in Table 1 for Internet of Things (IoT for short) devices. From the efficiency comparison in Table 1, we can see that our approach is much more efficient than [1]. In [2], we observed that authors also claim their scheme is more efficient than those in other articles [3,4]. However, this paper [2] is still slower than our proposed approach in Table 1.
On one hand, from the data authentication aspect, the gateway is unaware of what the sensor node’s data are in our approach. The sensor node will blind the forward data first before sending these data to the gateway. On the other hand, the gateway also provides its own random parameters during the signature generation of the offline-sign-cryption phase. This means that each signature is generated by the gateway’s signing parameters and the sensor node’s parameters after the above offline-sign-cryption and online-sign-cryption phases. Meanwhile, our approach can guarantee the situation where the signer cannot fully control the signature generation and provide the unlinkability to the signature. In [3], the authors provide an efficient sign-cryption methodology between the traditional public key crypto-system to the identity-based crypto-system and vice versa. This can be applied in the multireceiver construction for the IoT device network and provides a general prototype for this crypto-system transformation. We think that this idea is effective and suitable for the IoT device to transfer sensing data to another crypto-system construction. However, the sensing node still requires great computation effort on the paring operation and can cause a performance bottleneck on these sensor nodes. We also see in [3] that its computation cost is about 3 P a , where P a is a pairing operation on a large prime number q. Finally, in [4], the authors claim their approach is only about 4 M u + 2 P a , where M u is the modular multiplication and P a is the paring operation. After converting to the final computation approximately, we discover that this scheme still costs 409 M u more than ours in Table 1. In this approach, our contribution is to construct an efficient methodology that can generate a signature and encryption based on the QR at the same time and also preserve a concrete security proof on well-known hard problems such as the RSA factoring problem [11].

3. The Proposed Scheme

The following is our proposed scheme, which contains four phases: the initial phase, blinding phase, offline-sign-cryption phase, and the unsign-cryption phase.

3.1. Preliminary

In this subsection, we provide some definitions used in our proposed scheme as follows:
  • n: A large prime number, which it computes from two large primes p 1 and p 2 such that n = p 1 · p 2 , where p 1 p 2 3 ( mod 4 ) .
  • l: The total number of all Internet of Things (IoT for short) nodes.
  • n ^ : A large prime number, which it computes from two large prime p 3 and p 4 such that n ^ = p 3 · p 4 , where p 3 p 4 3 ( mod 4 ) .
  • D S i : An IoT data sender, which is a sensor node that forwards collected data to the receiver R, where i = 1 l and l is the number of all sensor nodes.
  • B S : A base station, which helps to collect data sent from a sensor node D S i , where i = 1 l .
  • R: An IoT data receiver, which receives data from the sender D S i .
  • ⊕: An exclusive-or operation for symmetric encryption/decryption usage.
  • H 1 , H 2 : Two secure hash functions that each of them maps Z n * { 0 , 1 } n with collision-resistance and outputs the same n-bits hash strings.
  • E p k j : A symmetric key encryption function for the party j with the public key p k j , where j { D S j , R } , where j = 1 l .
  • D s k j : A symmetric key decryption function for the party j with the private key s k j , where j { D S j , R } , where j = 1 l .

3.2. Initial Phase

In this phase, an IoT node D S l acts as a data sender; it first selects two large, distinct primes, where one is p 1 and the other is p 2 such that n = p 1 · p 2 , where l = 1 l and l are totally node numbers. D S i also publishes this n and we could know that given a QR in Z n * ; there are four different square roots (or 2 roots) of the QR in Z n * . From this property, we could derive the 2 i th roots of the QR in Z n * , where i must be larger than 1 in Z n * . On one hand, we assume that there exists a powerful base station as a signer B S , which also selects two large primes, where one is p 3 and the other is p 4 in the same IoT network environment. It also computes n ^ = p 3 · p 4 and sets up to let n < n ^ . Then, it publishes n ^ and its prefix string Ω . In the following, we take Fan and Lei’s Scheme [12] as our reference. Nevertheless, the data receiver (R for short) sets up its own private/public key pair as ( s k R , p k R ). When the set-up is finished, it publishes its own public key to the IoT network.
  • First, a node D S i randomly chooses its own QR numbers ( z 1 , z 2 , z 3 ) from Z n * similar with y 1 , y 2 and y 3 , where each of them is computed from y i = ( z i 2 mod n ) and i = 1 3 , respectively. Then, base station B S also selects two random QR numbers α and β such that they allow ( β 2 / α 2 mod n ) to belong to QR in Z n * . D S i also publishes (n, y 1 , y 2 , y 3 ) to the signer B S . Once the signer B S has received them from D S i , D S i computes γ = ( κ 2 mod n ^ ) with a random number κ and the identifier z ^ = H 1 ( z ) mod n ^ with an identifier number z. After setting up these random numbers, B S forwards ( γ , n ^ , z , z ^ ) to D S i and enters the offline-signing phase.

3.3. Offline-Signing Phase

  • When D S i has received ( γ , n ^ , z , z ^ ) from the B S , D S i also computes the following messages if the checking of z is valid, where z ^ = H 1 ( z ) mod n ^ . D S i selects a random number r Z n * and computes the following:
    C 1 = E p k R ( r ) C 2 = H 1 ( r ) m C 3 = H 1 ( C 1 , C 2 , r , z ^ , m )
  • After computing the above equations, D S i also allows β 2 / α 2 as τ and performs the following:
    C 1 = C 1 * τ 2 * γ C 2 = C 2 * γ C 3 = C 3 * γ h = H 1 ( C 1 , C 2 , C 3 )
  • From the above equations, we know that D S i blinds the sensor data and computes a cipher-text ( C 1 , C 2 , C 3 ) . Then, D S i forwards ( C 1 , C 2 , C 3 , h , z , z ^ ) to B S . When B S has received these messages from D S i , it verifies above them with z, checks the h from ( C 1 , C 2 , C 3 ) , and enters the online-signing phase.

3.4. Online-Signing Phase

  • When B S obtains ( C 1 , C 2 , C 3 , h , z , z ^ ) from D S i , it could perform verification of these cipher-texts. If they are valid, then B S decrypts them with γ 1 as follows:
    C 1 = C 1 * τ 2 * γ 1 C 2 = C 2 * γ 1 C 3 = C 3 * γ 1
  • After decrypting the above cipher-texts successfully, B S computes the signature as follows with a QR number λ :
    C 3 = C 3 2 * ( β α ) 2 * ( λ ) 2 C 3 = C 3 * y 1 ( mod n ) C 2 = C 2 * y 2 ( mod n ) C 1 = C 1 * y 3 ( mod n )
  • The signer B S finishes the signing operation and generates the signature ( C 1 , C 2 , C 3 ) to the data sender D S i . When the node D S i has received this signature, it could unblind the signature by computing the following operations:
    C 1 = C 1 * y 3 1 C 2 = C 2 * y 2 1 C 3 = C 3 * y 1 1 C 3 * = C 3 * ( 1 α ) 2 = C 3 2 * β 2 * ( λ ) 2
  • Then, the D S i computes the final encrypted cipher-text messages ( C 1 , C 2 , C 3 ) to the B S in the following and enters the unsign-cryption phase:
    C 1 = C 1 * γ C 2 = C 2 * γ C 3 = C 3 * * γ

3.5. Unsign-Cryption Phase

  • When B S received these cipher-text messages from D S i , it can decrypt by the following operations:
    C 3 * = C 3 * γ 1 t = ( C 3 * ) 2 * ( λ ) 4 = C 3 4 * β 4 t * = t * y 1
  • After B S has computed this signature t from the above equation, it forwards ( t * , z , z ^ ) to the node D S i and allows the D S i to decrypt t * and un-blinds this signature t as follows:
    t = t * * y 1 1 S R = t * β 4 = C 3 4 * β 4 * β 4 = C 3 4 mod n
  • After D S i summarizes the above equation, we conclude that the node D S i has the final signature σ R = ( S R , C 1 , C 2 , C 3 ) , where S R 4 = C 3 = H 1 ( C 1 , C 2 , γ , τ , z ^ , m ) . Then, the node D S i can forward the sign-cryption signature σ R and cipher-text messages ( C 1 , C 2 , C 3 ) to the receiver R of the Internet host.
  • Once the receiver R has obtained this sign-cryption signature σ R and cipher-text messages ( C 1 , C 2 , C 3 ) from D S i , it can perform the following steps:
    r * = D s k R ( C 1 ) m = ? C 2 H 1 ( r * ) C 3 = ? H 1 ( C 1 , C 2 , r , z ^ , m ) S R 4 = ? C 3

4. Functionality Comparisons and Security Analysis

In this section, we could provide functionality comparisons with other schemes and security analysis about our proposed scheme.

4.1. Fast Sign-Cryption Operation

The proposed scheme only needs three hash operations, one ⊕ operations, five multiplication operations, and one symmetric encryption in the offline-signing phase. In this situation, our proposed scheme is more efficient than [2]. In addition, the sensor node D S i can blind the sensed data to the base station efficiently and with data confidence. The base station B S cannot be aware of the sensed data content. If the base station is compromised by a malicious attacker, D S i can also protect this data to prevent its exposure outside the IoT network. At the same time, it also guarantees the protection of user’s personal information.

4.2. Signer Fair Signature Operation

Our proposed scheme can offer the signature of sensed data after the base station B S has received the encrypted sensed data from the user. In this time, B S only can apply the square root operation on these sensed data to generate the corresponding signature under these blind and encrypted data. In the online-signing operation, the IoT device can perform lightweight operations on the user’s sensed data and obtain the signing result after the offline-signing phase performed by the signer B S . From the two signing phases above, we know that the IoT device and the base station can present some random numbers in these phases to prevent the unfair situation that the signature generation is controlled by a certain party.

4.3. User Data Protection

In our proposed scheme, we use the sign-cryption method to generate the encryption data with the corresponding signature within. In this time, the signer cannot know what the plain-text is without the corresponding decryption key. Only the receiver is aware of the corresponding decryption key to decrypt this cipher-text. Thus, our sign-cryption scheme could offer privacy protection of the user’s personal sensed information.

4.4. Efficiency Comparisons

In this section, we evaluate the efficiency of our approach in the following. First, there is an assumption that the prime numbers p 1 , p 2 , p 3 and p 4 are 1024 bits in length; H a is computation time for one hash computation; S E is the time for a symmetric encryption operation, and S D is time for a symmetric decryption operation. Meanwhile, we also define that E x is the computation time for one modular exponential operation in a 1024-bit module, M u is the time for one modular multiplication in a 1024-bit module, M e c c is the time for a number performing another point addition over an elliptic curve [13], and P a is the time for the computation time of a bilinear pairing operation of two elements over an elliptic curve. Then, we assume that E x 8.24 M e c c for the ARM CPU to process at 200 Mhz in [14]. From the above assumption, we can discover that there exists some relation in the following, where E x 240 M u = 600 H a 3 P a and A d 5 M u in [15,16,17,18,19,20,21]. From the above computation time evaluation, we can see that our approach total computation time is 33 M u + 6 H a + 2 + 1 S E + 1 S D . Then, the result is approximate to 36 M u modular multiplication operations. Comparing with [2], we can see that our approach is much faster under the 1024-bit prime numbers. In the following two simulation results shown in Figure 1 and Figure 2, our approach provides the QR-signature simulation and RSA signature simulation, respectively. On the other hand, we implemented our approach on a Ubuntu 20.04 operating system with Intel Core i5-1135G7 CPU @ Base 2.4 GHz up to 4.2 GHz CPU and 8 GB memory. This simulation is carried out by using GO language and python language with “crypto/encoding/Matplotlib” library on the 10 nodes to 50 nodes, where are shown in Figure 1 and Figure 2, respectively.

4.5. Security Definitions

4.5.1. QR Signature Security

We provide the definition on the digital signature’s security as follows: In the initial phase, we assume that there exists some functions used in our proposed scheme; one is the signature generating function S i g ( · ) and the other is the verification function V e r ( · ) , where the signer S can input her/his signing key s k S into this signing function with the message m. Then, we can claim that σ is the resulting output from the signing function by S and the receiver R can verify σ by the verification function V e r ( · ) with the message m and the signer’s public key p k S . The above scheme is based on well-known hard problems such as the RSA factoring problem. If there exists an attacker F whose goal is to forge a valid signature S on the message m and pass the verification, i.e., V e r ( S , m , p k S ) = 1 , then F outputs it successfully with non-negligible probability larger than ε , we can use F ’s ability to factor the RSA factoring problem. However, in fact, the attacker F ’s advantage is less than ε . This means that the probability of F to output a forged signature and for this signature to pass the verification function with non-negligible probability is less than ε .
A d v [ S i F S i g ( s k S , m ) | V e r ( S i , m , p k S ) = 1 ] < ε .

4.5.2. Unforgeability

In this proposed scheme, we provide the signature definition of our sign-cryption scheme. From the above digital signature definition, we discuss the case where there exists a forger F with the ability to forge a valid QR-signature on our scheme. We assume that there are some functions such that F can make the hash query to the hash functions H 1 ( · ) and H 2 ( · ) , symmetric encryption E n c p k R ( · ) function and the signing function S i g ( · ) . After preparing these functions, F can make its own query on these functions. F can ask i times query, where i = 1 l and l is the total number of IoT nodes. After the above q s times query, if F can output q s + 1 signatures on our proposed scheme, we can use F to break the RSA factoring problem.
A d v F S i g ( · ) , H 1 ( · ) , H 2 ( · ) , R O 1 , E p k R ( · ) U n f ( θ , t ) 1 2 l · q s · q e · q d + ε .
Lemma 1.
First, we assume that there exists a secure digital signature function S i g ( · ) and a secure hash function H 1 ( · ) , which could be replaced with a random oracle R O 1 and a secure hash function H 2 in our proposed scheme. We also claim that our proposed scheme with the above unforgeability (Unf for short) satisfies the following situations. In other words, if our scheme is ( t , ε ) unforgeable, then
A d v F S i g ( · ) , H 1 ( · ) , H 2 ( · ) , R O 1 , E p k R ( · ) U n f ( θ , t ) 1 2 l · q s · q e · q d + ε .
where t is total experiment simulation time, including simulating l as an upper bound on the number of IoT devices, at most signature oracle q s times query, at most encryption oracle q e times query, at most decryption oracle q d times query, and ε has taken over the coin toss of our scheme.

4.5.3. Indistinguishability

In this definition, we assume the Indistinguishable (Ind for short) game where there exists an attacker A in the following simulation, which is controlled by a simulator S . First, we defined that there is a symmetric encryption/decryption function E p k i ( · ) / D s k i ( · ) , where i { D S j , B S , R } , j = 1 l , in which D S j is one of the l IoT devices; B S is the base station, and R is the receiver of the outside network. The simulator S will prepare all set-up parameters including key pairs for the above parties. After set-up is complete, S will launch the proposed scheme simulation with A . A can perform the encryption/decryption on the chosen message m. S also can reply the cipher-text C = E p k i ( m ) and the original message m to A . After the above game simulation, S can replace the encryption/decryption functions to an encryption/decryption oracle ( τ , τ 1 ), which performs the same action as our above symmetric encryption/decryption function. Through the above training phase, A sends a chosen target message ( M 0 , M 1 ) to S ; S will perform a coin flip b on the message ( M b , M 1 b ). Then, S inputs the M b to the encryption oracle E p k i to obtain the final result C b . S forwards C b to A to guess whether M b is M 0 or M 1 on its coin flip b —that is,
P r [ b A ( E p k i ( · ) , D s k i ( · ) , τ , τ 1 ) | b = b ] < 1 2 + ε .

4.5.4. Indistinguishable-Chosen Cipher-Text Attack (Ind-CCA for Short)

In this proposed scheme, we continue to define the chosen cipher-text attack security of our SC approach. There also exists an attacker A , whose goal is to distinguish the cipher-text of our sign-cryption scheme. First, we assume that there is a simulator A to control the environment situational parameters including key pairs, security parameters, and hash length. After setting up, S defines the experiment in which A can make a query as follows.
  • Phase 1: In this phase, the attacker A could make the encryption/decryption query on the chosen message m. If A makes the encryption query on the m of the IoT device i, where i = 1 l , then S inputs the m into C i , 1 = E p k i ( γ i ) , C i , 2 = m H 1 ( γ i ) and C i , 3 = H 1 ( C 1 , C 2 , γ i , m ) , where i = 1 l . Here, S will preserve these parameters into the encryption oracle list E i entry. On the other hand, A asks the decryption query on the cipher-text ( C i , 1 , C i , 2 , C i , 3 ), S will check if there are any parameters matching this cipher-text in the E i entry. If the answer is yes, S forwards the original message back to A and keeps this query in the decryption oracle D i entry.
  • Challenge: In this phase, if A chooses a target IoT device j * and a message pair ( M 0 * , M 1 * ), where M 0 * and M 1 * are never asked the encryption query and decryption query before, j * i and i = 1 l . In this time, S will toss the coin flip b and inputs the M b * into the encryption oracle E p k j * ( · ) . Finally, S returns the target cipher-text ( C 1 , j * , C 2 , j * , C 3 , j * ) to A . When A has received this target cipher-text, it still can make the decryption query on other cipher-texts except ( C 1 , j * , C 2 , j * , C 3 , j * ).
In the following, we model above the actions as game simulation steps that we played with the attacker A .
E x p A , S C I n d C C A b ( θ ) Phase 1 i { 1 , , l } , M i A E p k i ( · , θ ) , D s k i ( · , θ ) , H 1 ( · ) γ i { 0 , 1 } * C 1 , i E p k i ( γ i ) C 2 , i M i H 1 ( γ i ) C 3 , i H 1 ( C 1 , i , C 2 , i , γ i , M i ) Challenge Phase b { 0 , 1 } , j * i , ( M b * , M 1 b * ) A M b , j * b S C 1 , j * E p k j * ( γ j * ) C 2 , j * M i H 1 ( γ j * ) C 3 , j * H 1 ( C 1 , j * , C 2 . j * , γ j * , M b , j * ) b A ( E p k j * ( · , θ ) , D p k j * ( · , θ ) , τ , τ 1 ) ( C 1 , j * , C 2 , j * , C 3 , j * , M b * , M 1 b * ) Return b .
The advantage ok function of the adversary A where it is defined as A d v A , S C I n d C C A ( θ ) = | P r [ E x p A , S C I n d C C A 1 ( θ ) = 1 ] P r [ E x p A , S C I n d C C A 0 ( θ ) = 1 ] | < ε .
Lemma 2.
We defined that our sign-cryption SC scheme can withstand Ind-CCA attacks if there exists no such attacker A that could guess the cipher-text during above experiment E x p with non-negligible probability than ε , i.e.,
A d v A , S C I n d C C A ( θ , t ) < 1 + ε 2 · q e · q d ,
where at most t time bound, at most q e times encryption query, at most q d times decryption query under the θ security parameter.
Theorem 1.
First, we assume that our sign-cryption S C scheme is an Ind-CCA secure symmetric encryption/decryption scheme with a secure hash random oracle H 1 and also satisfied with the unforgeability (Unf) in the following. Then, we can say that, if S C is ( t , ε ) Ind-CCA secure and unforgeable, then
A d v F , A , S C U n f , I n d C C A ( θ , t ) ( 1 2 l · q s · q e · q d · ε + 1 + ε 2 · q e · q d ) ,
where t is the maximum total experiment time including adversary execution time, l is an upper bound on the number of all IoT devices of at most q s times signing query, at most encryption oracle q e times query, and at most decryption oracle q d times query under the security parameter θ in the experiment.

5. Conclusions

In the final result, we can see that our approach is suitable for an IoT device to compute the QR signature and encryption simultaneously. From Table 1, we also can see that our approach is more efficient than other schemes [1,2,3,4]. Our methodology not only efficiently computes the encryption and signature simultaneously, but can also support the fair protocol of two parties during communication between these IoT devices. This point also prevents allowing a single device such as the powerful gateway being compromised by attackers when IoT devices attempt to perform a signature operation or data exchange with this gateway. At the same time, this approach also provides data privacy protection for users. On one hand, our future goal is to develop a lightweight hierarchical sign-cryption scheme for IoT devices, and it can offer the authentication functionality between different levels of IoT devices with data privacy protection simultaneously. On the other hand, our approach can extend to develop a novel and real practical IoT data migration methodology for the IoT network in the future.

Author Contributions

Conceptualization, M.-T.C. and H.-C.H.; methodology, M.-T.C.; software, H.-C.H.; validation, M.-T.C. and H.-C.H.; formal analysis, M.-T.C.; investigation, H.-C.H.; resources, H.-C.H.; data curation, H.-C.H.; writing—original draft preparation, M.-T.C.; writing—review and editing, H.-C.H.; visualization, H.-C.H.; supervision, H.-C.H.; project administration, H.-C.H.; funding acquisition, H.-C.H. All authors have read and agreed to the published version of the manuscript.

Funding

This research received no external funding.

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Acknowledgments

This study was supported in part by grants from the Ministry of Science and Technology of the Republic of China (Grant No. MOST 109-2221-E-167-028-MY2).

Conflicts of Interest

The authors declare no conflict of interest.

Appendix A

Proof of Theorem 1.
First, we define experiments of the above two security definitions and each attacker’s ability, respectively. We will provide the proof of Lemma 1 and also define that there exists an attacker F whose goal is to forge a signature in the proposed scheme. We also define a simulator S that can control the experiment of the proposed scheme. On the other hand, S is given a signing oracle S i g ( · ) , which can perform the same action as signature generation by the signer in our approach. S also prepares all IoT device key pairs, including the receiver’s one.
Before beginning the experiment of digital signature, S is given a hard RSA problem in n * and its goal is to use the F ’s ability to factor this n * . During this time, S will also prepare the symmetric encryption/decryption function for the F encryption/decryption query. The query types are discussed below.
  • Encrypting query: F can make an encrypting query on the chosen message m, the target receiver i and the corresponding hash value H 1 ( r i ) . During this time, S checks the H 1 list record and determines the random number r i . If there is no hash record on the list, S will generate the ( * , H 1 ( r i ) , r i ) entry for the random number r i on the list. Then, S generates the corresponding cipher-texts in the following:
    C 1 = E p k i ( r i ) C 2 = m H 1 ( r i ) C 3 = H 1 ( C 1 , C 2 , r i , m ) .
    Then, S forwards this cipher-text ( C 1 , C 2 , C 3 ) back to F to finish this Encryption query and records ( C 1 , C 2 , C 3 ) into the H 1 list to be noted as ( C 1 , C 2 , C 3 , H 1 ( r i ) , r i ).
  • Decrypting query D e c ( · ) : When F forwards a cipher-text ( C 1 , C 2 , C 3 ) to S , S will search the H 1 list to see if there is any entry in this list; if yes, S uses the H 1 ( r i ) to decrypt the cipher-text ( C 1 , C 2 , C 3 ). Finally, S returns m back to F .
  • QR Signnature query: When F makes the signature query on the chosen message m, S will generate the following:
    C 1 = E p k i ( r i ) C 2 = m H 1 ( r i ) C 3 = H 1 ( C 1 , C 2 , r i , m ) S R 4 = C 3
    After generating the signature S R and the corresponding cipher-text ( C 1 , C 2 , C 3 ), S will check the signature list s 1 to see if there is any entry inside; if no, S preserves the signature S R into the signature list and stores ( C 1 , C 2 , C 3 , S R , H 1 ( r i ) , r i , m ) in the s 1 list. Then, S transfers S R back to F . F can make the above signature query several times on the chosen message m. If F has made l times signature query on the message m, F can forge l + 1 signatures on the message m. Then, we can have the probability of adversary F
    A d v F , S i g ( · ) , E n c ( · ) , D e c ( · ) U n f ( θ , t ) 1 2 l · q s · q e · q d · ε ,
    where there is at most q s times signature query, at most q e times encryption query, and at most q d times decryption query in the polynomial t time bound under security parameter θ .
Second, we present the proof of Lemma 2 as follows. We assumed that there exists an attacker A whose goal is to distinguish a cipher-text ( C 1 , C 2 , C 3 ) from a given message tuple ( M 0 , M 1 ) with non-negligible probability. Before simulating the experiment, we model a simulator S , which is given a RSA hard problem n * and its goal is to factor n * and find the prime factor of n * . During this time, S also generates all key pairs of IoT devices including the base gateway B S and the receiver R. When everything is ready, the S also allows A to send query types in the following.
  • Cipher-text query on E n c ( · ) : In this simulation, A can also launch a cipher-text query with an input the message m, the target receiver i, and the corresponding hash value H 1 ( r i ) to S . When receiving this query, S checks the H 1 list records and finds out if there exists a random number r i and other related records before. If there is no hash record on the list, S will generate a new entry ( * , H 1 ( r i ) , r i ) for the random number r i on the list. Then, S performs the following steps:
    C 1 = E p k i ( r i ) C 2 = m H 1 ( r i ) C 3 = H 1 ( C 1 , C 2 , r i , m )
    Subsequently, S sends this cipher-text ( C 1 , C 2 , C 3 ) back to A and stores ( C 1 , C 2 , C 3 ) into the H 1 list to be noted as ( C 1 , C 2 , C 3 , H 1 ( r i ) , r i ).
  • Plain-text query on D e c ( · ) : When A makes a plain-text query on S with an cipher-text ( C 1 , C 2 , C 3 ), S will search the H 1 list first to see if there is any entry inside or not; if yes, S uses the H 1 ( r i ) to decrypt the cipher-text ( C 1 , C 2 , C 3 ) and returns m back to A .
  • Signing query: When A makes an QR signature signing query on the chosen cipher-text ( C 1 , C 2 , C 3 ), S will calculate the following equations:
    C 1 = E p k i ( r i ) C 2 = m H 1 ( r i ) C 3 = H 1 ( C 1 , C 2 , r i , m ) S R 4 = C 3
After performing the above training, we defined it as the Phase 1 training phase of the experiment in the above definition. In the next phase, the A can send a target message tuple ( M 0 * , M 1 * ) and forward it to S . In this time, S will choose one of them by a coin toss on b. Then, S performs signing steps as follows:
C 1 * = E p k i ( r i * ) C 2 * = M b * H 1 ( r i * ) C 3 * = H 1 ( C 1 * , C 2 * , r i * , M b * ) S R 4 * = C 3 *
After generating the above cipher-text ( C 1 * , C 2 * , C 3 * , S R 4 * ), S returns it back to the A . During this time, A can make the decryption query except on the target cipher-text ( C 1 * , C 2 * , C 3 * , S R 4 * ). If A can distinguish the cipher-text ( C 1 * , C 2 * , C 3 * , S R 4 * ) computed from M b * , we can have
A d v A , S C I n d C C A ( θ ) = | P r [ E x p A , S C I n d C C A 1 ( θ ) = 1 ] P r [ E x p A , S C I n d C C A 0 ( θ ) = 1 ] | = P r [ E x p A , S C I n d C C A 1 ( θ ) = 1 ] ( 1 P r [ E x p A , S C I n d C C A 1 ( θ ) = 1 ] ) < ε .
Then, we can obtain that
A d v F , A , S C I n d C C A ( θ , t ) = P r [ E x p F , A , S C I n d C C A 1 ( θ ) = 1 ] 1 + ε 2 · q e · q d ,
where at most q e times encryption query and at most q d times decryption query in the polynomial t time bound under the security parameter θ . The probability that A can distinguish the above target cipher-text ( C 1 * , C 2 * , C 3 * ) is less than ε . We have summarized the above proofs of Lemmas 1 and 2. We can obtain
A d v F , A , S C U n f , I n d C C A ( θ , t ) ( 1 2 l · q s · q e · q d · ε + 1 + ε 2 · q e · q d ) .

References

  1. Shim, K.A. CPAS: An Efficient Conditional Privacy-Preserving Authentication Scheme for Vehicular Sensor Networks. IEEE Trans. Veh. Technol 2012, 61, 1874–1883. [Google Scholar] [CrossRef]
  2. Naresh, V.S.; Reddi, S.; Kumari, S.; Allavarpu, V.D.; Kumar, S.; Yang, M.H. Practical Identity Based Online/Off-Line Signcryption Scheme for Secure Communication in Internet of Things. IEEE Access 2021, 9, 21267–21278. [Google Scholar] [CrossRef]
  3. Sun, Y.; Li, H. Efficient signcryption between TPKC and IDPKC and its multi-receiver construction. Sci. China Inf. Sci. 2010, 53, 557–566. [Google Scholar] [CrossRef] [Green Version]
  4. Li, F.; Xiong, P. Practical secure communication for integrating wireless sensor networks into the Internet of Things. IEEE Sens. J. 2013, 13, 3677–3684. [Google Scholar] [CrossRef]
  5. Hammi, B.; Fayad, A.; Khatoun, R.; Zeadally, S.; Begriche, Y. A Lightweight ECC-Based Authentication Scheme for Internet of Things (IoT). IEEE Syst. J. 2020, 3, 3440–3450. [Google Scholar] [CrossRef]
  6. Choi, S.; Ko, J.; Kwak, J. A Study on IoT Device Authentication Protocol for High Speed and Lightweight. In Proceedings of the 2019 International Conference on Platform Technology and Service (PlatCon), Jeju Island, Korea, 28–30 January 2019; pp. 1–5. [Google Scholar]
  7. Ning, H.; Liu, H.; Yang, L.T. Aggregated-Proof Based Hierarchical Authentication Scheme for the Internet of Things. IEEE Trans. Parallel Distrib. Syst. 2015, 3, 657–667. [Google Scholar] [CrossRef]
  8. Kim, B.; Yoon, S.; Kang, Y.; Choi, D. PUF based IoT Device Authentication Scheme. In Proceedings of the 2019 International Conference on Information and Communication Technology Convergence (ICTC), Jeju Island, Korea, 16–18 October 2019; pp. 1460–1462. [Google Scholar]
  9. Lounis, K.; Zulkernine, M. T2T-MAP: A PUF-Based Thing-to-Thing Mutual Authentication Protocol for IoT. IEEE Access 2021, 9, 137384–137405. [Google Scholar] [CrossRef]
  10. Taher, B.H.; Jiang, S.; Yassin, A.A.; Lu, H. Low-Overhead Remote User Authentication Protocol for IoT Based on a Fuzzy Extractor and Feature Extraction. IEEE Access 2019, 7, 148950–148966. [Google Scholar] [CrossRef]
  11. Rivest, R.; Shamir, A.; Adleman, L. A method for obtaining digital signatures and public-key cryptosystems. Commun. ACM 1978, 21, 120–126. [Google Scholar] [CrossRef]
  12. Fan, C.I.; Lei, C.L. A User Efficient Fair Blind Signature Scheme for Untraceable Electronic Cash. J. Inf. Sci. Eng. 2002, 18, 47–58. [Google Scholar]
  13. Koblitz, N.; Menezes, A.; Vanstone, S. The state of Elliptic curve cryptography. Des. Codes Cryptgogr. 2000, 19, 173–193. [Google Scholar] [CrossRef]
  14. Lauter, K. The Advantages of Elliptic curve cryptography for wireless security. IEEE Wirel. Commun. 2004, 11, 62–67. [Google Scholar] [CrossRef]
  15. Bertinoi, G.; Breveglieri, L.; Chen, L.; Fragneto, P.; Harrison, K.; Pelosi, G. A pairing SW implementation for smart cards. J. Syst. Softw. 2008, 81, 1240–1247. [Google Scholar] [CrossRef]
  16. Hankerson, D.; Menezes, A.; Scott, M. Software Implementation of pairings. Identity-Based Cryptogr. Cryptol. Inf. Secur. 2008, 2, 188. [Google Scholar]
  17. Hohenberger, S. Advances in Signatures, Encryption, and E-Cash from Bilinear Groups. Ph.D. Dissertation, Massachusetts Institute of Technology, Cambridge, MA, USA, 2006. [Google Scholar]
  18. Li, Z.; Higgins, J.; Clement, M. Performance of Finite Field Arithmetic in an Elliptic Curve Cryptosystem. In Proceedings of the 9th IEEE International Symposium on Modeling, Analysis, and Simulation of Computer and Telecommunications Systems (MASCOTS’01), Cincinnati, OH, USA, 15–18 August 2001; pp. 249–256. [Google Scholar]
  19. Ramachanfdran, A.; Zhou, Z.; Huang, D. Computing cryptography algorithm in Portable and embedded devices. In Proceedings of the IEEE International Conference on Portable Information Devices, Orlando, FL, USA, 25–29 May 2007; pp. 1–7. [Google Scholar]
  20. Schneier, B. Applied Cryptography, 2nd ed.; John Wiley & Sons: New York, NY, USA, 1996. [Google Scholar]
  21. Takashima, K. Scaling Security of Elliptic Curves with Fast Pairing Using Efficient Endomorphisms. IEICE Trans. Fundam. Electron. Commun. Comput. Sci. 2007, 90, 152–159. [Google Scholar] [CrossRef]
Figure 1. QR Signature Simulation on 10 nodes to 50 nodes.
Figure 1. QR Signature Simulation on 10 nodes to 50 nodes.
Applsci 12 00278 g001
Figure 2. RSA Signature Simulation on 10 nodes to 50 nodes.
Figure 2. RSA Signature Simulation on 10 nodes to 50 nodes.
Applsci 12 00278 g002
Table 1. Performance comparison.
Table 1. Performance comparison.
Sign-CryptionUnsign-CryptionTotallyApprox.
[1]2 M u + 1 P a 3 P a + 1 A d + 1⊕4 P a + 2 M u + 1 A d + 1⊕327 M u + 1⊕
[2]4 M u + 1 E x + 2 H a + 1⊕1 E x + 2 P a + 2 M u + 2 H a 2 E x + 2 P a + 6 M u + 4 H a + 1⊕647 M u + 1⊕
[3]4 H a + 1 E x + 2⊕3 H a + 1 P a + 2⊕1 E x + 1 P a + 7 H a + 4⊕322.8 M u + 4⊕
[4]1 E x + 2 M u + 2 H a + 1⊕2 P a + 3 H a + 1 A d +1 E x + 2 P a + 2 M u + 1 A d + 5 H a + 1⊕409 M u + 1⊕
Ours4 H a + 29 M u + 1⊕ + 1 S E 1 S D + 2 H a + 1⊕33 M u + 1 S E + 1 S D + 6 H a + 2⊕36.2 M u + 2⊕
Ex—Modular exponentiation, Ad—Addition operation, Mu—Modular multiplication, S E —Symmetric Encryption operation, Ha—Hash operation, S D —Symmetric Decryption operation, Pa—Pairing operation, ⊕—XOR bit operation.
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Chen, M.-T.; Huang, H.-C. A Practical and Efficient Node Blind SignCryption Scheme for the IoT Device Network. Appl. Sci. 2022, 12, 278. https://doi.org/10.3390/app12010278

AMA Style

Chen M-T, Huang H-C. A Practical and Efficient Node Blind SignCryption Scheme for the IoT Device Network. Applied Sciences. 2022; 12(1):278. https://doi.org/10.3390/app12010278

Chicago/Turabian Style

Chen, Ming-Te, and Hsuan-Chao Huang. 2022. "A Practical and Efficient Node Blind SignCryption Scheme for the IoT Device Network" Applied Sciences 12, no. 1: 278. https://doi.org/10.3390/app12010278

APA Style

Chen, M. -T., & Huang, H. -C. (2022). A Practical and Efficient Node Blind SignCryption Scheme for the IoT Device Network. Applied Sciences, 12(1), 278. https://doi.org/10.3390/app12010278

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