Next Article in Journal
Incorporating Digital Footprints into Credit-Scoring Models through Model Averaging
Previous Article in Journal
A New Instance Segmentation Model for High-Resolution Remote Sensing Images Based on Edge Processing
Previous Article in Special Issue
A Moiré Removal Method Based on Peak Filtering and Image Enhancement
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

An Attribute-Based End-to-End Policy-Controlled Signcryption Scheme for Secure Group Chat Communication

1
Key Laboratory of Education Blockchain and Intelligent Technology, Ministry of Education, Guangxi Normal University, Guilin 541004, China
2
Guangxi Key Lab of Multi-Source Information Mining and Security, Guangxi Normal University, Guilin 541004, China
3
Southern Power Grid Supply Chain (Guangxi) Co., Ltd., Guangzhou 510530, China
4
State Key Laborataory of Nuclear Power Safefy Monitioring Technology and Equipment, China Nuclerar Power Engineering Co., Ltd., Shenzhen 518172, China
*
Author to whom correspondence should be addressed.
Mathematics 2024, 12(18), 2906; https://doi.org/10.3390/math12182906
Submission received: 14 August 2024 / Revised: 12 September 2024 / Accepted: 17 September 2024 / Published: 18 September 2024
(This article belongs to the Special Issue Mathematical Methods Applied in Explainable Fake Multimedia Detection)

Abstract

:
Secure instant communication is an important topic of information security. A group chat is a highly convenient mode of instant communication. Increasingly, companies are adopting group chats as a daily office communication tool. However, a large volume of messages in group chat communication can lead to message overload, causing group members to miss important information. Additionally, the communication operator’s server may engage in the unreliable behavior of stealing information from the group chat. To address these issues, this paper proposes an attribute-based end-to-end policy-controlled signcryption scheme, aimed at establishing a secure and user-friendly group chat communication mode. By using the linear secret sharing scheme (LSSS) with strong expressive power to construct the access structure in the signcryption technology, the sender can precisely control the recipients of the group chat information to avoid message overload. To minimize computational cost, a signcryption step with constant computational overhead is designed. Additionally, a message-sending mechanism combining “signcryption + encryption” is employed to prevent the operator server from maliciously stealing group chat information. Rigorous analysis shows that PCE-EtoE can resist adaptive chosen-ciphertext attacks under the standard model. Simulation results demonstrate that our theoretical derivation is correct, and that the PCE-EtoE scheme outperforms existing schemes in terms of computational cost, making it suitable for group chat communication.

1. Introduction

Information security [1,2] has become increasingly vital as digital communication platforms proliferate. Instant messaging apps, such as WeChat, QQ, WhatsApp [3], and Telegram [4], each have more than one billion active users. They have gradually replaced the traditional SMS service, providing users with various conveniences in their daily life and work, including personal messaging and group chat communication. These apps not only meet people’s basic communication needs, but also extend to social and business functionalities [5]. Most companies conduct their businesses through group chats. With hundreds of millions of messages exchanged every day, users are increasingly concerned about the security and ease of use in group chat communication. However, there are the following problems in group chat communication: (1) whether the source of the message is true, and whether the message is confidential [6]; (2) a large number of group messages may cause information overload, leading users to miss critical information in the group; and (3) the communication operator of the group chat communication may extract information, resulting in information leakage within the group [7]. For companies, this may lead to the leakage of commercial secrets and cause significant losses [8].
At present, there are two main types of secure instant communication [9]: end-to-server encrypted communication and End-to-End encrypted communication. Figure 1a shows the end-to-server encrypted communication pattern: the sender encrypts the message using the shared key and then sends it to the server. After the server receives the ciphertext message, it decrypts it using the shared key and obtains the plaintext after determining the source of the message. Then, it encrypts the message using the shared key of the server and the receiver and transmits the ciphertext of the message to the receiver. Figure 1b shows the end-to-end encrypted communication mode. The sender performs double-layer encryption, and the server decrypts the source to obtain the first-level ciphertext, which is then encrypted, and then this ciphertext message is transmitted to the receiver. The biggest problem with end-to-server encrypted communication is that it relies too much on the operator’s server for security. Communication operators can obtain the plaintext of the message, but dishonest communication operators may extract keywords in the communication and resell the data for profit, which poses commercial threats to companies that rely on group chat communication to build workflows. The mode of end-to-end encrypted communication uses a double-layer encryption method, so that the server cannot access the plaintext of the message and can only forward the message. However, only encrypting the message cannot guarantee its authenticity. Signcryption, as a technology that can encrypt and sign messages in the same logical step, can ensure the authenticity and confidentiality of data simultaneously. We consider signcryption as the first layer of encryption in end-to-end encrypted communication, which differs from the mere application of two layers of encryption, and provides the receiver with the ability to verify the authenticity of the message [10,11].
Group chat communication [12], from the sender’s perspective, follows a one-to-many communication mode. Attribute-based signcryption technology can not only realize one-to-many encrypted transmission and provide access control, but also allow users to verify that the attributes meet the policy to determine the authenticity of the data. Currently, in most group chats, all group members generally receive a large amount of information, but only some of this information is directly related to their specific roles, responsibilities, or current tasks. The ubiquity and non-differentiation of this information flow may make it difficult for users to filter out the information that is truly important to them, thus distracting users, reducing work efficiency, and increasing the risk of missing critical information. The access control function can mitigate this message overload problem. However, attribute-based signcryption technology verifies and decrypts the ciphertext using a decryption key, and the key distribution is carried out by a third party. If the third party is unreliable, decryption will fail. Susilo [13] proposed a policy-controlled signcryption scheme, which is still an specially attribute-based signcryption scheme, but the ciphertext is verified by credentials, making it more flexible than using a key. Users can verify the credentials to ensure their correctness. However, directly applying the policy-controlled signcryption proposed by Susilo [13] to group chat communication results in the problem of high computational cost. Attribute-based cryptographic schemes often require high computational cost, especially as the computational cost for the sender increases linearly with the number of attributes in the policy. When the strategy is too complex, it will impose a significant computational burden on the sender in group chat communication. The previous discussion focused on text message protection in group chat communication. Image message protection is also important in group chat communication. Many researchers [14,15,16,17,18] used many hash methods to protect image information, and this scheme also protects image information in group chat communication. By converting the picture to a binary file and applying policy-controlled signcryption technology, the security protection of image information in group chat communication was completed, ensuring that only recipients in the group who met the sender’s requirements could receive the image information.
In order to solve the above problems, in this paper, we propose an attribute-based end-to-end policy-controlled signcryption scheme for group chat communication, which has constant signcryption computation consumption. The scheme constructs a strong expressive access policy to ensure that only recipients conforming to the access policy can receive information in the group, alleviating the problem of message overload in group chat communication. The scheme employs the ECDH key agreement protocol and double-layer ciphertext protection, ensuring that the operator server cannot access the plaintext of the group chat information, thereby preventing information leakage to the operator.
Our contributions can be listed as follows:
  • Lightweight: We propose a lightweight signcryption scheme for communication. The computational cost for the sender in the group chat is constant, and the sender only requires three power operations and one linear mapping operation during the signcryption process. Although the computational cost for the receiver still increases with the number of attributes, it is lower than that of existing schemes. In the experiment, end devices with varying computing resources were used for testing, and the computing times for both the signcryption and un-signcryption operations were within a reasonable range.
  • Strong expressive capability: The signcryption scheme for communication (PCE-EtoE) that we propose demonstrates strong expressive capability. Compared with the monotone Boolean function access structure in PCEA [13], the PCE-EtoE scheme uses LSSS to design an access structure with strong expressive power, capable of describing complex access policies including “and”, “or” and other predicates.
  • Mitigate message overload: Our proposed PCE-EtoE scheme effectively prevents users from receiving unnecessary information that is irrelevant to their needs. In PCE-EtoE, the sender in group communication can construct a complex and fine-grained access policy, ensuring that only receivers conforming to the policy can receive the group chat information.This scheme not only ensures controllable message flow but also enhances the efficiency of the messages received, thereby avoiding message overload and preventing users from missing key information.
  • Security: In the defined security model, PCE-EtoE ensures message confidentiality through indiscernibility under chosen plaintext attacks (IND-CPA). Additionally, the scheme employs double encryption technology (encryption + signcryption), which prevents the communication operator from decrypting the second-level ciphertext, thereby ensuring that the communication operator cannot steal the content of the group chat communications.
In the next two sections, we will provide a brief review of the related work and preliminaries. The security model of the PCE-EtoE scheme is presented in Section 3. Section 4 describes the proposed PCE-EtoE scheme. The security and functional analysis of PCE-EtoE is provided in Section 5. Section 6 offers a comparative analysis of the theoretical performance and practical performance of PCE-EtoE. The conclusion is presented in the final section.

2. Related Work

The proposed PCS-EtoE mainly involves attribute-based signcryption and end-to-end encrypted communication. Therefore, in this section, we review related work in these areas.
Hong  et al. [19] proposed a key policy KP-ABCS scheme that can perform outsourced decryption and introduced key updates to prevent key leakage. However, due to the lack of public verification and high implementation costs, the scheme is not practical. Rao and Dutta [20] proposed the first KP-ABSC scheme with constant-size ciphertext, which achieves constant ciphertext size and reduces storage costs to some extent, but its computational overhead is too large. Yu and Cao [21] proposed attribute-based signcryption with a hybrid access policy, which combines key policy (KP) and ciphertext policy (CP). However, the threshold value is used in expressions, and the expression ability is poor. Xu et al. [22] proposed CP-ABSC supporting multi-authority, which can protect users’ attribute privacy. Although outsourced decryption is used in the scheme, the overall overhead of the scheme is too large, and users may still incur excessive computational overhead due to the large number of attributes during signcryption. Zhao et al. [23] proposed an efficient multi-authority attribute-based signcryption scheme, which realizes multi-authority access control and protects the privacy of the signcryption. Even if the ciphertext is not associated with the signing key, the information of the data owner cannot be obtained from the ciphertext. However, the computational cost is still linear with the number of attributes. Wang  et al. [24] proposed an attribute-based signcryption scheme with a ciphertext policy and declaration predicate mechanism (CP2-ABSC), but it still incurs too much computational overhead and has poor practicability. Susilo et al.’s [13] PCEA is a special ABSC that can use credentials for un-signcryption, solving user decryption failures caused by unreliable operations of a TA or KCGS (Key and Credential Generation Server) in some cases. However, the computational overhead is too large and there are too many mapping operations, making it unsuitable for direct application in group chat communication scenarios. The schemes proposed in [21,22,24] over-rely on outsourced computing services provided by operators, which cannot prevent dishonest behavior in outsourced decryption. In the scenario of end-to-end group chat communication using attribute-based signcryption to protect ciphertext, over-reliance on outsourced computing provided by operators threatens the confidentiality of information sent by users. It also increases the computational cost for the communication operator. In the above-mentioned schemes, the computational cost of signcryption increases linearly with the number of attributes or authorities to varying degrees. Since real-time messages need to be exchanged frequently in group chat communication, the above schemes are not suitable.
In end-to-end encrypted communication, Cohn-Gordon et al. [25] designed an asynchronous key exchange protocol to ensure that all members can maintain end-to-end encrypted communication without overlapping online time. Gupta et al. [26] proposed an end-to-end encryption layer based on ciphertext-policy attribute-based encryption (CP-ABE) for data confidentiality and integrity in Message Queuing Telemetry Transport (MQTT). However, additional signature operations are required to enable the receiver to determine the origin of the data. Dhinesh et al. [27] analyzed and discussed end-to-end encryption (E2EE) implementations of various messaging applications. All these messaging applications use the encrypt-then-sign approach, which is significantly less computationally efficient than signcryption.
Table 1 summarizes the features of representative ABSC schemes and the proposed PCE-EtoE in terms of access structure and functionality. Compared with existing schemes, our PCE-EtoE supports more key features. In particular, PCE-EtoE supports the control of complex message flow, does not rely on outsourced computation, and is resistant to operator data theft. Without the help of outsourced computation, the cost of signcryption is constant, which is highly practical in group chat communication. In contrast, the computational cost of signcryption in other schemes increases linearly with the number of attributes. Later, we will show that in the secure model, the PCE-EtoE satisfies IND-CPA under the Decisional Bilinear Diffie–Hellman (DBDH) problem.

3. Preliminaries

3.1. Symmetric Bilinear Mapping

Let ϕ be the group generation algorithm. When given the security parameter λ , it outputs the parameters ( G 1 , p , G T , e ^ , g ) , where p represents a large prime number, G 1 and G T are two cyclic groups of order p, g is the generator of G 1 , and  e ^ : G 1 × G 1 G T denotes a bilinear map if and only if the following three conditions are met:
  • Bilinearity:  ( u , v G 1 , a , b Z p ) : e ^ ( u a , v b ) = e ^ ( u , v ) a b ;
  • Non-degeneracy:  u , v G 1 : e ^ ( u , v ) 1 ;
  • Computability:  e ^ : u , v G 1 ; e ^ ( u , v ) G T .

3.2. Decisional Bilinear Diffie–Hellman Assumption

In this section, we introduce the DBDH (Decisional Bilinear Diffie–Hellman) assumption, which is the decisional version of the BDH problem and is extensively utilized in designing cryptographic protocols. The details are as follows:
  • Given cyclic groups G 1 and G 2 of order p as prime numbers.
  • Randomly select the generator g G 1 and the random numbers c 1 , c 2 , c 3 Z p .
  • g , g c 1 , g c 2 , g c 3 , e ^ ( g , g ) c 1 c 2 c 3 and T G 2 to send A.
The core of the DBDH problem is to determine whether T is equal to e ( g , g ) c 1 c 2 c 3 , if so, A outputs 1; otherwise, output 0.
The DBDH assumption states that if no polynomial time algorithm can solve the DBDH problem with a non-negligible advantage, then the DBDH assumption holds in the G 1 and G 2 groups.

4. Security Model

The security model of the proposed scheme is defined based on a game between the challenger and the attacker, described as follows:
(1)
Initialization: The challenger runs the Setup, KCGSKeyGen, and UserKeyGen algorithms, generating P K K C G S , S K K C G S , P K U i d , S K U i d and system parameters p a r a m , and provides P K K C G S and S K K C G S to the attacker. The attacker chooses a set of access policies P O L to send to the challenger.
(2)
Phase 1: The attacker can request to query the credential of any ciphertext not utilized in the un-signcryption challenge.
(3)
Challenge: The attacker submits two randomly chosen messages, m 1 and m 2 , of equal length to the challenger. The challenger randomly selects δ { 0 , 1 } and performs the signcryption operation on the message m δ according to the access policy P O L submitted by the attacker.
(4)
Phase 2: The same as phase 1,the attacker can request to query the credential of any ciphertext not utilized in the un-signcryption challenge.
(5)
Guess: The attacker outputs the guess δ ^ . Thus, the advantage of the attacker in this game is defined as P r [ δ = δ ^ ] 1 2 .
Definition 1. 
If the attacker cannot win the game with a non-negligible advantage in polynomial time, then the PCE-EtoE scheme is indistinguishable under chosen plaintext attacks (IND-CPA).

5. The Proposed PCE-EtoE Scheme

In this section, we provide a detailed description of the proposed PCE-EtoE scheme. To fully understand the proposed PCE-EtoE scheme, we present its framework in Figure 2, which involves four participating entities as follows:
  • Sender: Complete the transmission of messages in the group chat. Control the specific flow of information in the group chat to ensure that the flow of dissemination of group chat messages is effectively managed.
  • Receiver: Only receive relevant and valid information in the group chat.
  • Key and Credential Generation Server (KCGS): KCGS is responsible for generating public parameters and creating credentials and keys for users (sender and receiver). KCGS is a semi-honest server, which may tamper with part of the content in the credential.
  • Communication Operator’s Server (COS): It is responsible for generating the elliptic curve parameters, completing the key agreement for the secondary encryption key between the users and COS, and forwarding the ciphertext information.

5.1. Overview

In this section, we provide a comprehensive review of the PCE-EtoE scheme. Table 2 presents the symbols used in the scheme and their meanings. As shown in Figure 3, our proposed scheme consists of six stages: Setup, Key and Credential Generation, key agreement, Message Sending, Message Forwarding, and Message Receiving.The first two and Message Sending are randomized.
(1)
Setup: Public Parameter Generation (Setup): The setup is aimed at initializing the system. Setup is a probabilistic polynomial time (PPT) algorithm where the security parameter l is input, and the public parameter p a r a m is the output.
(2)
Key and Credential Generation:
(a) KCGS Key Generation (KCGSKeyGen): KCGSKeyGen is aimed at constructing the KCGS’s public and private keys. KCGSKeyGen is a PPT algorithm that outputs public key of KCGS P K K C G S and private key of KCGS S K K C G S after inputting public parameters.
(b) User Credential Generator (CreGen): CreGen is aimed at completing the construction of a user’s credential. CreGen is a PPT algorithm that outputs user’s credential C r e U after inputting public parameters, user’s attributes S, and public key of KCGS P K K C G S .
(c) User Key Generation (UserKeyGen): UserKeyGen is aimed at constructing the user’s public and private keys. UserKeyGen is a PPT algorithm that outputs public key of user P K U i d and private key of user S K U i d after inputting public parameters and public key of KCGS P K K C G S .
(3)
Key Agreement: Key agreement is aimed at completing the secure negotiation of a shared key between the sender and receiver. Input the user’s public key for secondary encryption, P K K C G S , and finally, output the shared key of the user and the COS ( K S i C or K R i C ).
(4)
Message Sending (MesSen): Message Sending is aimed at completing the secure transmission of messages. Input access policy P O L , group chat message M, public key of KCGS P K K C G S , private key of user S K U i d , shared key, and finally, output secondary ciphertexts E S s e .
(5)
Message Forwarding (MesForw): Message Forwarding is aimed at accomplishing the secure forwarding of messages. Input secondary ciphertexts E S s e , the set of shared key { K R i C } i < q c ( q c is the number of people in the group chat), and finally, output timestamp T S m / T S and secondary forwarding ciphertext { E S R E } .
(6)
Message Receiving (MesRec): Message Receiving is aimed at completing the secure receiving of messages. Input the secondary forwarding ciphertext for the specified receiver E S r e i , the receiver’s certificate C r e U , the public key of the sender P K U i d , and output group chat message M or ⊥.
The proposed PCE-EtoE is formally defined as
Π P C E E t o E = param Setup ( 1 t ) P K K C G S , SK KCGS KCGSKeyGen ( p a r a m ) C r e U C r e G e n ( p a r a m , S , P K K C G S ) S K U i d , P K U i d UserKeyGen ( p a r a m , P K K C G S ) ( 0 / 1 ) CreVer ( C r e U ) K R i / S i C key Agreement ( y R i / S i C , y C ) E S s e MesSen ( POL , M , P K K C G S , P K U i d , S K U i d , K S i C ) T S m / T S , { E S R E } MesForw ( E S s e , { K R ; C } i < q ) ( M / ) MesRec ( E S r e i , Cre U , PK CS )

5.2. Setup

5.2.1. Public Parameter Generation

Input the security parameter l; KCGS randomly selects the prime p = p o l y ( 1 l ) . Setup selects a random generator g G 1 , then randomly selects a Z N and computes g a . A bilinear mapping function ( e ^ : G 1 × G 1 G T ) is then created.

5.2.2. Selection of Hash Functions

Define four hash functions, the first is the attribute hash function H 1 : S G 1 . The second is the collision-resistant hash function H 2 : { 0 , 1 } * Z N . The third is also the collision-resistant hash function H 3 : m { 0 , 1 } m l , m l = M . l e n g t h . The last is the file hash function: H 4 : m G 1 .
The Setup algorithm outputs the system public parameters, denoted as p a r a m = ( l , g , e ^ , H 1 , H 2 , H 3 , g a , g b ) .
The above procedure is shown in Algorithm 1.
Algorithm 1 Setup
Input: l
Output:  p a r a m
1:
select p = p o l y ( 1 l ) , g G 1 , a Z N
2:
compute g a
3:
choose e ^ : G 1 × G 1 G T
4:
choose hash functions H 1 : S G 1 , H 2 : { 0 , 1 } * Z N , H 3 : m { 0 , 1 } m l , H 4 : m G 1
5:
return  p a r a m = ( l , g , e ^ , H 1 , H 2 , H 3 , g a , g b )

5.3. Key and Credential Generation

5.3.1. KCGSKeyGen

Input the system parameter p a r a m , KCGS randomly selects α , β Z n / 0 , uses S K K C G S = ( α , β ) as the private key of KCGS, computes U = g α and W = g β , and uses P K K C G S = ( U , W ) as the public key of KCGS. KCGSKeyGen outputs S K K C G S and P K K C G S .

5.3.2. CreGen

The set of attributes S = { S 1 , S 2 , , S i } , the system parameter p a r a m , and the public key of KCGS P K K C G S are input. KCGS randomly selects t Z N / 0 and computes C K = g α g a t , C L = g t . KCGS computes A i = H 1 ( S i ) , S K i = A i t , S i S , where S i denotes the i-th attribute in S. KCGS takes the C r e U = { C K , C L , S K i } as a credential for the user. CreGen outputs C r e U .

5.3.3. CreVer

The users send their identity I D to KCGS. KCGS matches the corresponding attribute set according to the identity I D and runs CreGen to obtain C r e U . The user checks the validity of { S K i } , C K , and  C L in C r e U as follows:
e ^ ( S K i , g ) = e ^ ( A i , C L )
e ^ ( C K , g ) = e ^ ( U , g ) e ^ ( g a , C L )
If (1) and (2) hold, then the validity of C r e U holds.

5.3.4. UserKeyGen

Input the system parameter p a r a m and P K K C G S ; KCGS then randomly selects μ , γ Z n / 0 , uses S K U i d = ( μ , γ ) as the private key of the user, computes Y 1 = g μ γ and Y 2 = W μ γ , and uses P K U i d = ( Y 1 , Y 2 ) as the public key of the user. UserKeyGen outputs S K U i d and P K U i d .
The above procedure is shown in Algorithm 2.
Algorithm 2 Key and Credential Generation
Input:  p a r a m ,S
Output:  S K K C G S , P K K C G S , C r e U /⊥, S K U i d , P K U i d
  1:
KCGS select α , β Z n / 0
  2:
Let S K K C G S = ( α , β )
  3:
Compute U = g α , W = g β
  4:
Let P K K C G S = ( U , W ) // KCGSKeyGen’s procedure
  5:
KCGS select t Z N / 0
  6:
Compute C K = g α g a t , C L = g t
  7:
for i S  do
  8:
    A i = H 1 ( S i ) , S K i = A i t
  9:
end for
10:
Let C r e U = { C K , C L , { S K i } } // CreGen’s procedure
11:
KCGS select μ , γ Z n / 0
12:
Let S K U i d = ( μ , γ )
13:
Compute Y 1 = g μ γ , Y 2 = W μ γ
14:
Let P K U i d = ( Y 1 , Y 2 ) // UserKeyGen’s procedure
15:
if  e ^ ( S K i , g ) = e ^ ( A i , C L ) && e ^ ( C K , g ) = e ^ ( U , g ) e ^ ( g a , C L )  then
16:
   return  S K K C G S , P K K C G S , C r e U /, S K U i d , P K U i d
17:
else
18:
   return  S K K C G S , P K K C G S , ⊥, S K U i d , P K U i d
19:
end if// CreVer’s procedure

5.4. Key Agreement

The key agreement in our scheme involves interaction between the user and server ends of the Communication Operator Server (COS). The agreement process is established using the Elliptic Curve Diffie–Hellman (ECDH) algorithm. Given the parameters z , n F q , where 4 z 3 + 27 0 , the group E ( F q ) is defined as follows:
E ( F q ) = { Q = ( x , y ) | y 2 = x 3 + z x + n m o d q , x , y F q } { }
where is the point at infinity.
The framework for key agreement in group chat communication is shown in Figure 4. The process of key agreement between group chat user S e n d e r a and the Communication Operator Server (COS) is detailed below:
(1)
S e n d e r a computes the public key y S a = g x S a m o d q according to the published elliptic curve E ( F q ) and sends y S a to the Communication Operator Server (COS).
(2)
After receiving y S a , the COS computes y C = g x C m o d q and K S a C = y S a x C m o d q , and then sends y C to S e n d e r a . Here, K S a C is the shared key between S e n d e r a and COS.
(3)
After S e n d e r a obtains y C , it computes the shared key K S a C = y C x S a m o d q .
The shared key obtained after key agreement is used as the second-level encryption key in secure group chat communication. After establishing the shared keys between the COS and all users in the group chat, all the shared keys and their corresponding user identities are stored in the shared key table.

5.5. Message Sending (MesSen)

The sender sets the access policy P O L to control the flow of messages, e.g.,:
( S a l e s _ d e p a r t m e n t and F i r s t l e v e l _ m a n a g e r ) or ( P u r c h a s i n g _ d e p a r t m e n t and O r d i n a r y _ s t a f f ) .

5.5.1. LSSS Generation

The Boolean access policy P O L is transformed into a linear secret sharing scheme ( L S S S ) shared matrix [28], and matrix M serves as the shared generator matrix of P O L with n rows and l columns. The function p maps each row of matrix M onto the attribute names in the P O L . Finally, (M,p) is used to represent the access policy.

5.5.2. Attribute Code Generation

The sender randomly selects a column vector v = ( s , y 1 , , y l ) , where s Z p , y 1 , , y l Z p . s is the secret value to be shared, and  y 1 , , y l are randomly selected group elements in the integer group. The sender computes C s = g s and λ i = v × M i , where M i represents the i-th row in matrix M, and  λ i represents the partial secret value corresponding to the i-th attribute value in the access policy. Mark P i as the attribute value in P O L , for example, P 1 =‘A department’. { P i } is the set of attributes in P O L . Generate Attribute Code ( A T C ) based on P i and compute B i = H 1 ( P i ) for each P i . Randomly select d 1 , d 2 , , d i Z p and then count A C i = g a λ i B i d i and S T i = g i d to obtain A T C = { { A C i } , { S T i } , C s } ; store A T C as a special label in the user’s device to avoid repetitive computation.

5.5.3. Signcryption

Upon inputting message M, its type is determined. If the message is an image file (e.g., jpg, png), the image data are converted into a binary file M b i n and given the label T. Randomly select r ¯ , j Z p , compute partial signatures σ 1 = g r ¯ and σ 2 = Y 1 r ¯ , and then calculate
= σ 1 | | σ 2 | | P K K C G S | | P K U i d | | j
w = e ^ ( C s , U )
ξ = j H 2 ( w | | H 2 ( ) )
If the message type is text type, it will use (3), (4), and (5) to compute
C T M = M H 3 ( w | | H 2 ( ) )
θ = | | ξ | | { A C i } | | { S T i } | | M
σ 3 = H 4 ( θ ) μ γ
Then, we derive σ ={ C T M , σ 1 , σ 2 , σ 3 , H 2 ( ) , A T C , T S m , P K U i d } from (6), (7), and (8) ( P K U i d is the public key of the sender).
If the message type is a picture type, it will use (3), (4), and (5) to compute
C T M b i n = M b i n H 3 ( w | | H 2 ( ) )
θ = | | ξ | | { A C i } | | { S T i } | | M
σ 3 = H 4 ( θ ) μ γ
Then, we derive σ ={ C T M b i n , σ 1 , σ 2 , σ 3 , H 2 ( ) , A T C , T S m , P K U i d ,T} from (9), (10), and (11).

5.5.4. Secondary Encryption

To ensure that the COS can verify the origin of the message, σ is encrypted using the shared key K S i C of the sender and the COS, denoted as follows:
E S s e = E n c ( σ , K S i C )
Then, the secondary ciphertext E S s e is sent to the COS. The above procedure is shown in Algorithm 3.
Algorithm 3 Message Sending
Input:  POL , M , P K K C G S , P K U i d , S K U i d , K S i C
Output:  E S s e
  1:
LSSS(POL)->(M,p) // LSSS Generation’s procedure
  2:
Select s Z p , y 1 , , y l Z p , Let v = ( s , y 1 , , y l ) , Compute C s = g s
  3:
for i [ 0 , M . R o w N u m b e r ]  do
  4:
    λ i = v × M i
  5:
end for
  6:
Select d 1 , d 2 , , d i Z p
  7:
for i [ 0 , P . N u m b e r ]  do
  8:
   Compute B i = H 1 ( P i ) , A C i = g a λ i B i d i , S T i = g i d
  9:
end for
10:
Let A T C = { { A C i } , { S T i } , C s } // Attribute Code Generation’s procedure
11:
Select r ¯ , j Z p
12:
Compute σ 1 = g r ¯ , σ 2 = Y 1 r ¯ , △ = σ 1 | | σ 2 | | P K K C G S | | P K U i d | | j , w = e ^ ( C s , U )
13:
Compute ξ = j H 2 ( w | | H 2 ( ) )
14:
Compute C T M / C T M b i n = M / M b i n H 3 ( w | | H 2 ( ) ) , θ = | | ξ | | { A C i } | | { S T i } | | M , σ 3 = H 4 ( θ ) μ γ // Signcrpyt ’s procedure
15:
Compute E S s e =Enc( C T M b i n , σ 1 , σ 2 , σ 3 , H 2 ( ) , A T C , T S m , P K U i d ,T, K S i C )
16:
return  E S s e

5.6. Message Forwarding (MesForw)

The COS first checks whether | T S T S n o w | < T S m a x . If false, a packet loss delay message is displayed to the user and prompts information resend. If true, proceed with the following steps.
After receiving E S s e , the COS decrypts it as follows:
σ = D e c ( E S s e , K S i C )
Then, the COS executes Algorithm 4 using the set of shared keys of the receiver and the COS { K R i C } i < q c as input.
Algorithm 4 COS Forwarding
Input:  { K R i C } , I D U i
Output:  T S m , E S R E
1:
for i [ 1 , qc ]  do
2:
    E S r e i = E n c ( σ , K R i C )
3:
    E S R E . a p p e n d ( E S r e i , I D U i )
4:
end for
5:
return  E S R E , T S m
Then, the COS retrieves the E S R E and forwards the contained E S r e i to the user, who is identified I D U i .

5.7. Message Receiving (MesRece)

5.7.1. Secondary Decryption

The receiver verifies if | T S m T S n o w < T S m a x | is true; if not, they resend the receive request to the COS. If it is true, the user performs the following actions.
After receiving E S s e , the receiver in the group chat uses the shared key K R i C between the receiver and the COS to decrypt it as follows:
σ = D e c ( E S r e i , K R i C )
After successful decryption, the preliminary source of the message is confirmed to be the COS.

5.7.2. Un-Signcrypt

The receiver inputs C r e U and computes
e ^ ( σ 1 , g ) = e ^ ( σ 2 , Y 1 )
which may hold or not. If (15) is not true, the receiver rejects the message. Otherwise, proceed with the following calculation. There exists constants { ω i Z N } i I satisfying Σ i I ω i λ i = s in time polynomial in the size of the share-generating matrix M. Therefore, if { λ i } are valid shares of any secret (s) according to (M, p), then calculate
φ = e ^ ( C s , C K ) Π i I e ^ ( S K i , S T i ) ω i Π i I e ^ ( C L , A C i ) ω i
j ^ = ξ H 2 ( w | | H 2 ( ) )
M = C T M H 3 ( w | | H 2 ( ) )
θ ^ = σ 1 | | σ 2 | | P K U i d | | j ^ | | ξ | | { A C i } | | M | | { S T i }
Finally, it uses (16), (17), (18), and (19) to verify whether e ^ ( H 4 ( θ ^ ) , Y 1 ) = e ^ ( σ 3 , g ) is true. If it is true, the ciphertext σ is valid, and the message M is received; otherwise, the receiver rejects the message and returns the symbol ⊥.
The above procedure is shown in Algorithm 5.
Algorithm 5 Message Receiving
Input:  E S r e i , Cre U , PK CS
Output:  M /
1:
if  | T S m T S n o w < T S m a x |   then
2:
   Compute σ = Dec( E S r e i , K R i C ) // Secondary decryption’s procedure
3:
   if  e ^ ( σ 1 , g ) = e ^ ( σ 2 , Y 1 )  then
4:
   Compute φ = e ^ ( C s , C K ) Π i I e ^ ( S K i , S T i ) ω i Π i I e ^ ( C L , A C i ) ω i
5:
   Compute j ^ = ξ H 2 ( w | | H 2 ( ) )
6:
   Compute M = C T M H 3 ( w | | H 2 ( ) )
7:
   Compute θ ^ = σ 1 | | σ 2 | | P K U i d | | j ^ | | ξ | | { A C i } | | M | | { S T i } // Un-signcrypt’s procedure
8:
   return M
9:
else
10:
   return
11:
end if

6. Security and Functional Analysis

6.1. Correctness

In this section, we analyze the correctness of the proposed scheme. We need to check that the user can use Σ i I ω i λ i of the LSSS matrix to recover s, provided that the user’s credentials meet the requirements of the access policy. The detailed derivation process is as follows:
φ = e ^ ( C s , C K ) Π i I e ^ ( S K i , S T i ) ω i Π i I e ^ ( C L , A C i ) ω i = e ^ ( g s , g α g a t ) Π i I e ^ ( A i t , g d i ) ω i Π i I e ^ ( g t , g a λ i B i d i ) ω i = e ^ ( g s , g α g a t ) Π i I e ^ ( A i t , g d i ) ω i Π i I e ^ ( g t , g a λ i ) ω i e ^ ( g t , B i d i ) ω i = if B i = A i e ^ ( g s , g α g a t ) Π i I e ^ ( g t , g a λ i ) ω i = e ^ ( g s , g α t ) e ^ ( g , g ) α s e ^ ( g t , g a ) s = e ^ ( g , g ) α s

6.2. Confidentiality

Theorem 1. 
If the assumptions of the DBDH hard problem hold, there is no attacker who can break the PCE-EtoE scheme with a non-negligible advantage in polynomial time.
Proof of Theorem 1. 
The challenger B chooses four random numbers a ^ , b ^ , c ^ , θ ^ Z N , and then chooses the random number δ { 0 , 1 } . If δ = 0 , the challenger B sets Z = e ^ ( g ^ , g ^ ) a ^ b ^ c ^ . If δ = 1 , then let Z = e ^ ( g ^ , g ^ ) θ ^ . Finally, the challenger B sends the tuple ( g ^ a ^ , g ^ b ^ , g ^ c ^ , Z ) to simulator C , and then simulator C interacts with attacker A instead of challenger B . The detailed steps are as follows:
(1)
Initialization: Simulator C first sets g = g ^ , randomly selects x 1 Z N , sets U = g ^ a ^ and W = g ^ b ^ + x 1 in P K K C G S , and sets h ^ = a ^ b ^ and Y 1 = g ^ h ^ and Y 2 = g ^ h ^ + x 1 in P K U i d . Finally, the two public keys and system parameters are provided to attacker A , and the list H is initialized.
(2)
Phase 1: Attacker A can query simulator C for the private key, and the simulator queries the list H 1 , returns the result if it exists, selects the random number F if it does not exist, and updates the list H 1 . An attacker can submit a user set S to simulator C to query for any credential that is not used to challenge the ciphertext of un-signcryption. For the credential query submitted by A , the simulator selects t [ 1 , n 1 ] . For each attribute i S , the simulator queries the list H 2 if it contains the attribute; if it does not, it randomly selects k i , q [ 1 , n 1 ] and adds the element ( i , k i , g ^ b ^ k i ) to the list and updates it. Choose random numbers x 2 , x 3 , x 4 Z N ; let C L = g ^ a ^ t h + x 4 q , C K = g ^ a ^ t x 3 x 2 + c ^ t x 3 x 2 + b ^ x 4 x 2 ; randomly choose c 1 Z N ; let c 2 = c c 1 ; and calculate S K i = g ^ c 2 a ^ b ^ t h k i . Finally, simulator C sends the un-signcryption’s credential to A .
(3)
Challenge: Attacker A submits two randomly chosen messages m 0 and m 1 of the same length to simulator C , where m 0 and m 1 have the same POL. The simulator C first randomly selects δ { 0 , 1 } , and then sets w = e ^ ( g a ^ , g c 1 ) t x 3 e ^ ( g ^ c 1 , g ^ c ^ ) t x 3 Z t h , randomly selects a column vector v = ( s , y 1 , , y l ) , where s Z N , y 1 , , y l Z N . Calculate λ i = v × M i , where Σ i I ω i λ i = s exists. Compute A C i = g λ i c 1 b ^ k i s , S T i = g k i ω i . Let C s = g ^ x 2 c 1 and then perform signcryption, choose r ^ , j ^ Z N at random, compute σ 1 = g ^ r ^ , σ 2 = Y 1 r ^ , and then compute as follows:
= σ 1 | | σ 2 | | P K K C G S | | P K U i d | | j ^ w = e ^ ( C s , U ) ξ = j ^ H 2 ( w | | H 2 ( ) ) C T M = m δ H 3 ( w | | H 2 ( ) ) θ = | | ξ | | { A C i } | | { S T i } | | m δ σ 3 = H 4 ( θ ) h ^
Finally, the simulator sends the ciphertext σ = { C T M , σ 1 , σ 2 , σ 3 , H 2 ( ) , { A C i } , { S T i } , T S } to attacker A .
(4)
Phase 2: Similar to phase 1, attacker A can submit a user attribute set S to the simulator to query any credential not used for the un-signcryption challenge ciphertext.
(5)
Guess: Attacker A outputs a guess σ ^ of σ . If σ ^ = σ , and then simulator C outputs 0, indicating that the guess is Z = e ^ ( g ^ , g ^ ) a ^ b ^ c ^ . Otherwise, simulator C outputs 1, indicating that the guess is Z = e ^ ( g ^ , g ^ ) θ ^ . If Z = e ^ ( g ^ , g ^ ) a ^ b ^ c ^ , then input σ and C r e U , and compute
φ 1 = Π i I e ^ ( S K i , S T i ) ω i Π i I e ^ ( C L , A C i ) ω i = e ^ ( g ^ , g ^ ) c 2 t a ^ h ^ b ^ e ^ ( g ^ , g ^ ) c 1 b ^ x 4 + c 1 a ^ t h ^ b ^ = e ^ ( g ^ , g ^ ) ( c 1 b ^ x 4 + c 1 a ^ t h ^ b ^ )
and because
φ 2 = e ^ ( C s , C K ) = e ^ ( g ^ , g ^ ) ( a ^ + c ^ ) t x 3 + c 1 b ^ x 4
we can obtain the following:
φ = φ 1 × φ 2 = e ^ ( g ^ , g ^ ) ( a ^ + c ^ ) t x 3 e ^ ( g ^ , g ^ ) a ^ b ^ c ^ t h ^ = e ^ ( g ^ a ^ , g c 1 ) t x 3 e ^ ( g ^ c 1 , g ^ c ) t x 3 Z t h ^ .
The above demonstrates the validity of the signcryption ciphertext σ . Since attacker A ’s advantage is denoted as ε , the probability that attacker A can correctly guess σ in this case is
P r [ C ( g ^ a ^ , g ^ b ^ , g ^ c ^ , Z = e ^ ( g ^ , g ^ ) a ^ b ^ c ^ ) = 0 ] = 1 2 + ε
If Z = e ^ ( g ^ , g ^ ) θ ^ , since θ ^ is randomly chosen in Z N , the probability that attacker A guessed correctly in this case is
P r [ C ( g ^ a ^ , g ^ b ^ , g ^ c ^ , Z = e ^ ( g ^ , g ^ ) θ ^ ) = 0 ] = 1 2
In summary, the advantages of Simulator C are as follows:
1 2 ( P r [ C ( g ^ a ^ , g ^ b ^ , g ^ c ^ , Z = e ^ ( g ^ , g ^ ) θ ^ ) = 0 ] + P r [ C ( g ^ a ^ , g ^ b ^ , g ^ c ^ , Z = e ^ ( g ^ , g ^ ) a ^ b ^ c ^ ) = 0 ] ) 1 2 = ε 2
The above can be proven as follows: under the DBDH assumption, the proposed scheme satisfies IND-CPA security.

6.3. Resist Communication Operator Theft

Theorem 2. 
If the COS cannot obtain the message of plaintext in the group chat communication, it is claimed that PCE-EtoE has the capability to resist communication operator theft.
Proof of Theorem 2. 
Sender A in the group chat first signcrypts the message and encrypts it with AES to obtain the ciphertext E S s e . Then, A sends E S s e to the C O S , which decrypts E S s e with K S A C to obtain σ . According to Theorem 1, the COS cannot construct a valid credential C r e U to un-signcrypt σ ; thus, the plaintext M of the message cannot be obtained. Therefore, it can be demonstrated that PCE-EtoE has the capability to resist communication operator theft. □

6.4. Mitigate Message Overload

Theorem 3. 
If the receiver in a group chat can only receive messages related to itself, PCE-EtoE is said to have the capability to mitigate message overload.
Proof of Theorem 3. 
Suppose sender A in a group chat formulates P O L = ( S A  and  ( S B  or  S C ) ) , and the attribute stored in KCGS for receiver B is ( S A , S D ) . A performs the steps of sending the message, the COS performs the steps of forwarding the message, and B receives the ciphertext E S r e B . The receiver first performs AES decryption with the shared key to obtain the ciphertext σ and uses the credentials C r e U generated by ( S A , S D ) to un-signcrypt σ , but B cannot calculate the correct e ^ ( g , g ) α s (i.e., it cannot correctly un-signcrypt). The receiver then rejects the message, avoiding the reception of irrelevant messages. This demonstrates that PCE-EtoE has the capability to mitigate message overload. □

7. Performance Evaluation

7.1. Theoretical Performance

We evaluate the performance of the PCE-EtoE scheme in comparison to various existing schemes. The symbols used in this section are defined in Table 3.
In attribute-based cryptography, bilinear mapping operations and exponentiation are the most computationally intensive. The cost of other operations, such as hashing, XOR, and constant operations, is negligible. Table 4 compares the computational cost of signcryption and un-signcryption operations in the proposed PCE-EtoE scheme to various existing schemes, and Table 5 compares the computational cost of credential generation and verification in the proposed PCE-EtoE scheme to existing schemes.
It can be inferred from Table 4 that in schemes [19,20,21,22,23,24], when performing the signcryption operation, the computation required is linear with the number of attributes, while in our proposed scheme, the computation requires only a constant 3 E + P , which does not increase with the number of attributes. Although the un-signcryption operation of PCE-EtoE does not achieve a constant computational cost, it is the lowest among the schemes, being slightly lower than that of [22,23] and significantly lower than that of other schemes. Since only PCEA uses certificates for un-signcryption, the computational costs of credential generation and verification are compared solely with the PCEA scheme in Table 5. It can be observed from Table 5 that the computational cost of certificate generation in PCE-EtoE is lower than that of PCEA by ( 3 l s 2 ) E , and the computational cost of certificate verification in PCE-EtoE is also lower than that of PCEA by ( 3 l s 2 ) E .

7.2. Actual Performance

As shown in Figure 5, we used a variety of terminal devices in terms of hardware to ensure the wide applicability and performance of the scheme. Specifically, we used the following equipment:
Dell Computer: Equipped with a 12th-generation Intel i7-1700 processor, with a main frequency of 2.10 GHz and 16 GB of memory.
Raspberry Pi 4 Model B: Powered by a 1.5 GHz quad-core Cortex-A72 CPU with 4 GB of RAM.
By testing on these two significantly different devices, we were able to fully evaluate the performance of the solution in different hardware environments, thus ensuring its reliability and stability in diverse application scenarios. In terms of software, the programming language used was Java 1.8, the IDE environment was IDEA 2020, and the cryptography open-source libraries used were JPBC 2.0.0, Crypto, and Security. The test curves used were Type A and secp256r1.
We performed signcryption and un-signcryption tests on text messages of different sizes using DELL computers and Raspberry Pi devices.
For the DELL computers, we chose 10 KB, 1 MB, 10 MB, 100 MB, and 200 MB text messages for our experiments. Figure 6a shows the signcryption computation time for different file sizes on DELL computers. The computation time was relatively low for smaller files (10 KB and 1 MB) and significantly increased for larger files (100 MB and 200 MB). However, as the number of attributes in the access policy increased, the computation time for the signcryption operation remained essentially unchanged. When the text message size was 200 MB, the signcryption time remained approximately 3.5 s regardless of the number of attributes. Figure 6b shows the un-signcryption time for different text message sizes on DELL computers. The un-signcryption time for 100 MB and 200 MB messages was much higher than for 10 KB and 1 MB files. When the text message size was 200 MB and the number of attributes in the access policy was 100, the decryption time was about 1.8 s.
On the Raspberry Pi device, due to limited computing resources, we selected 10 KB, 1 MB, 50 MB, and 70 MB text messages for experiments. Figure 7a shows the signcryption computation times for different text message sizes on the Raspberry Pi. The computation times were relatively low for 10 KB and 1 MB messages but significantly increased for 50 MB and 70 MB messages. However, as the number of attributes in the access policy increased, the computation time for the signcryption operation remained essentially unchanged. When the size of a text message was 70 MB, the signcryption time was approximately 17.5 s regardless of the number of attributes. Figure 7b shows the un-signcryption time for different text message sizes on a Raspberry Pi. The time for the un-signcryption of 50 MB and 70 MB messages was much higher than for 10 KB and 1 MB files. When the text message size was 70 MB and the number of attributes in the access policy was 100, the decryption time was about 16 s. The computing resources of the Raspberry Pi are insufficient for handling large files. Message size significantly affects the computation time of signcryption and un-signcryption, particularly as file size increases. The tests indicate that increasing the number of attributes in the access policy has a minimal effect on the signcryption and un-signcryption times, particularly for large files. This phenomenon may be attributed to the fact that the impact of increasing the number of attributes on computation time is overshadowed by the overall data processing time.
We performed signcryption and un-signcryption tests of differently sized picture messages on DELL computers and Raspberry Pi devices, respectively. Images with pixel sizes of 2500 × 25,000, 10,000 × 10,000, and 25,000 × 25,000 were selected for testing. Figure 8a and Figure 9a show the calculation time for the signcryption of picture-type messages by PCE-EtoE, and the actual calculation cost is consistent with the theoretical analysis: 3 E + P . The change in signcryption time is only related to the size of the image and not to the number of attributes. The signcryption time for a 2500 × 25,000 picture is 0.08 s on a DELL computer and 1.4 s on a Raspberry Pi. Figure 8b and Figure 9b show the calculation time for the un-signcryption of picture-type messages by PCE-EtoE, and the actual calculation cost is consistent with the theoretical analysis: ( 4 + 2 l s ) P . For the same image size, the number of attributes and the un-signcryption time are linearly related. On a DELL computer, when the image pixel size is 2500 × 25,000 and the number of attributes is 100, the un-signcryption time is 0.65 s, and on a Raspberry Pi, it is 11 s.
In order to compare the actual performance of PCE-EtoE and related schemes, OMDAC-ABSC [22], NMAS-ABSC [23], and PCEA [13] were selected as comparison schemes. Since a single message in group chat communication is generally smaller than 5 KB, we tested the relevant algorithms for 5 KB messages on a Dell computer for all schemes. In Figure 10, the OURS label represents PCE-EtoE. As shown in Figure 10a,b, the signcryption’s time cost of PCE-EtoE is much lower than that of other schemes, and the signcryption’s time cost of a single message is less than 0.1 s, which is suitable for group chat communication scenarios. The un-signcryption’s cost time of PCE-EtoE is slightly lower than that of other schemes. When the access policy attribute set by the sender is 50, the message un-signcryption’s time cost of the receiver is less than 0.4 s, which is also suitable for group chat communication scenarios. As shown in Figure 10c,d, the time cost of CerVer and CerGen in the PCE-EtoE scheme is lower than that of PCEA.
To investigate the execution efficiency of each stage and step in the PCE-EtoE scheme, Figure 11 shows the percentage of each step in the total execution time. Statistics were collected for the percentage of the execution time of Setup, Key and Credential Generation, key agreement, Message Sending, Message Forwarding, and Message Receiving. The parameters in the experiment were as follows: P O L = (Department A and manager) or (Department B and supervisor). The size of the message sent by the sender was 5 KB, and the size of the group was 100 people.
As seen in Figure 11, the initialization step takes the largest percentage of the total execution time, about 27.4%. However, this step only needs to be executed once upon system startup. The message decryption time accounts for a relatively small percentage of 8.9%, while the Message Sending step takes about 22.35%. Attribute Code Generation in Message Sending consumes a significant amount of time. If a sender transmits multiple messages to the same receiver in a group chat, the Attribute Code Generation is executed only once.
Using the same parameters as in Figure 11, Figure 12 explores the time required for Message Sending and Message Forwarding by the operator when multiple messages are sent to the same receiver in a group chat, excluding network delay and user input time.
As shown in Figure 12a, the time required for sending messages increases linearly with the number of messages. When 500 messages are sent, the time taken is only 16.892 s. As indicated in Figure 12b, when the number of messages forwarded by the carrier server exceeds 350, the time increases rapidly, though it remains at the millisecond level. This does not place a significant computational burden on the communication opertor’s server.
As shown in Table 6, to explore the theoretical time complexity of the PCE-ETOE scheme, the theoretical time complexity of each algorithm is analyzed. The time complexity of the algorithms Setup, KCGSKeyGen, UserKeyGen, and MesSen is O ( 1 ) . The time complexity of CreGen, CreVer, key agreement, MesForw, and MesRece is O ( n ) , which is within acceptable limits.
We evaluate the transmission rate (TR) for both Message Sending and Receiving within our scheme in a real-time environment. The TR is calculated using the following formula:
M e s s a g e S e n d i n g s T R = M e s s a g e s S i z e T i m e o f s i g n c r y p t i o n + N e t w o r k d e l a y
M e s s a g e R e c e i v i n g s T R = M e s s a g e s S i z e T i m e o f u n s i g n c r y p t i o n + N e t w o r k d e l a y
In the real-time environment, we transmit individual messages of no more than 50 KB and perform the experiment with 50 messages per test interval. As shown in Figure 13a, as the number of messages increases, the transmission rate (TR) for Message Sending remains between 1421.8 Kb/s and 1489.27 Kb/s. Similarly, Figure 13b shows that as the number of messages increases, the transmission rate (TR) for message reception remains between 947.07 Kb/s and 994.91 Kb/s. Both the transmission rate for Message Sending and the transmission rate for Message Receiving fall within a reasonable range.

8. Conclusions

To address the issues of the Communication Operator Server’s unreliable behavior and message overload during group chat communication, we propose an attribute-based end-to-end policy-controlled signcryption scheme (PCE-EtoE), which features lightweight computational overhead, making it suitable for frequent group chat communications. Using LSSS to construct access structures ensures that only relevant recipients receive the information, thereby filtering out irrelevant information and mitigating message overload. When sending messages, the dual encryption mode of “signcryption + encryption” is used to prevent the communication operator’s server from stealing group chat content. We provide theoretical proofs for the scheme’s confidentiality, correctness, and resistance to communication operator theft. We evaluated the performance of the PCE-EtoE scheme against previous schemes through theoretical comparisons and actual simulations. Testing on different end devices confirmed that the PCE-EtoE scheme is more lightweight in terms of computational cost. However, the PCE-EtoE scheme does not support the fast retrieval of group chat messages. In the future, we aim to develop an efficient index structure within the PCE-EtoE scheme to facilitate the fast retrieval of historical group chat messages.

Author Contributions

Conceptualization, F.Y. and L.M.; methodology, F.Y. and L.M.; software, L.M. and Z.Z.; validation, F.Y. and L.M.; formal analysis, X.L. and W.Z.; investigation, F.Y.; writing—original draft, L.M.; supervision, F.Y. and D.J. All authors have read and agreed to the published version of the manuscript.

Funding

This work was supported in part by the National Natural Science Foundation of China (No. 62062016 and U21A20474), the Guangxi Science and technology project (GuikeAA22068070 and GuikeAD21220114), Jiangsu Provincial Key Laboratory of Network and Information Security (No. BM2003201-2022C4), Technical Service Project of China Guangdong Nuclear Power Engineering Co., Ltd. (No. 3201202200636). Finally, we thank the Center for Applied Mathematics of Guangxi (Guangxi Normal University).

Data Availability Statement

The original contributions presented in the study are included in the article, further inquiries can be directed to the corresponding author.

Conflicts of Interest

Author Daicen Jiang was employed by the Southern Power Grid Supply Chain (Guangxi) Co., Ltd. Author Zhihua Zeng was employed by the China Nuclerar Power Engineering Co., Ltd. The remaining authors declare that the research was conducted in the absence of any commercial or financial relationships that could be construed as a potential conflict of interest. The Southern Power Grid Supply Chain (Guangxi) Co., Ltd. and China Nuclerar Power Engineering Co., Ltd. had no role in the design of the study; in the collection, analyses, or interpretation of data; in the writing of the manuscript, or in the decision to publish the results.

References

  1. Siyal, R.; Long, J.; Asim, M.; Ahmad, N.; Fathi, H.; Alshinwan, M. Blockchain-Enabled Secure Data Sharing with Honey Encryption and DSNN-Based Key Generation. Mathematics 2024, 12, 1956. [Google Scholar] [CrossRef]
  2. Alali, A.S.; Ali, R.; Jamil, M.K.; Ali, J.; Gulraiz. Dynamic S-Box Construction Using Mordell Elliptic Curves over Galois Field and Its Applications in Image Encryption. Mathematics 2024, 12, 587. [Google Scholar] [CrossRef]
  3. Church, K.; De Oliveira, R. What’s up with WhatsApp? Comparing mobile instant messaging behaviors with traditional SMS. In Proceedings of the 15th International Conference on Human-Computer Interaction with Mobile Devices and Services, Munich, Germany, 27–30 August 2013; pp. 352–361. [Google Scholar]
  4. Sutikno, T.; Handayani, L.; Stiawan, D.; Riyadi, M.A.; Subroto, I.M.I. WhatsApp, viber and telegram: Which is the best for instant messaging? Int. J. Electr. Comput. Eng. 2016, 6, 909–914. [Google Scholar] [CrossRef]
  5. Ou, C.; Davison, R. Interactive or interruptive? Instant messaging at work. Decis. Support Syst. 2011, 52, 61–72. [Google Scholar] [CrossRef]
  6. Wang, Z.; Ma, Z.; Luo, S.; Gao, H. Enhanced Instant Message Security and Privacy Protection Scheme for Mobile Social Network Systems. IEEE Access 2018, 6, 13706–13715. [Google Scholar] [CrossRef]
  7. Afzal, A.; Hussain, M.; Saleem, S.; Shahzad, M.; Ho, A.; Jung, K. Encrypted Network Traffic Analysis of Secure Instant Messaging Application: A Case Study of Signal Messenger App. Appl. Sci. 2021, 11, 7789. [Google Scholar] [CrossRef]
  8. Noriega, K.E.O.; Segura, J.E.G.; de los Santos, A.C.M. Security in the use of instant messaging applications for internal communication. SCIÉNDO 2022, 25, 219–227. [Google Scholar] [CrossRef]
  9. Zhang, L.; Pan, G. Research on the Secure Communication Model of Instant Messaging. In Proceedings of the 6th International Conference on Computer Science and Application Engineering, Virtual, China, 21–23 October 2022; pp. 1–6. [Google Scholar]
  10. Schillinger, F.; Schindelhauer, C. End-to-End Encryption Schemes for Online Social Networks. In Security, Privacy, and Anonymity in Computation, Communication, and Storage; Springer: Cham, Switzerland, 2019; pp. 133–146. [Google Scholar] [CrossRef]
  11. Basem, O.; Ullah, A.; Hassen, H.R. Stick: An End-to-End Encryption Protocol Tailored for Social Network Platforms. IEEE Trans. Dependable Secur. Comput. 2023, 20, 1258–1269. [Google Scholar] [CrossRef]
  12. Iduh, B.N. WhatsApp Network Group Chat Analysis Using Python Programming. Int. J. Latest Technol. Eng. Manag. Appl. Sci. (IJLTEMAS) 2020, 9, 1–5. [Google Scholar]
  13. Thorncharoensri, P.; Susilo, W.; Mu, Y. Policy controlled system with anonymity. Theor. Comput. Sci. 2018, 745, 87–113. [Google Scholar] [CrossRef]
  14. Liang, X.; Tang, Z.; Zhang, X.; Yu, M.; Zhang, X. Robust hashing with local tangent space alignment for image copy detection. IEEE Trans. Dependable Secur. Comput. 2023, 21, 2448–2460. [Google Scholar] [CrossRef]
  15. Liang, X.; Tang, Z.; Huang, Z.; Zhang, X.; Zhang, S. Efficient hashing method using 2D-2D PCA for image copy detection. IEEE Trans. Knowl. Data Eng. 2021, 35, 3765–3778. [Google Scholar] [CrossRef]
  16. Huang, Z.; Tang, Z.; Zhang, X.; Ruan, L.; Zhang, X. Perceptual image hashing with locality preserving projection for copy detection. IEEE Trans. Dependable Secur. Comput. 2021, 20, 463–477. [Google Scholar] [CrossRef]
  17. Yu, M.; Tang, Z.; Zhang, X.; Zhong, B.; Zhang, X. Perceptual hashing with complementary color wavelet transform and compressed sensing for reduced-reference image quality assessment. IEEE Trans. Circuits Syst. Video Technol. 2022, 32, 7559–7574. [Google Scholar] [CrossRef]
  18. Tang, Z.; Zhang, X.; Li, X.; Zhang, S. Robust image hashing with ring partition and invariant vector distance. IEEE Trans. Inf. Forensics Secur. 2015, 11, 200–214. [Google Scholar] [CrossRef]
  19. Hong, H.; Xia, Y.; Sun, Z.; Liu, X. Provably secure attribute based signcryption with delegated computation and efficient key updating. KSII Trans. Internet Inf. Syst. 2017, 11, 2646. [Google Scholar]
  20. Rao, Y.S.; Dutta, R. Efficient attribute-based signature and signcryption realizing expressive access structures. Int. J. Inf. Secur. 2016, 15, 81–109. [Google Scholar] [CrossRef]
  21. Yu, G.; Cao, Z. Attribute-based signcryption with hybrid access policy. Peer- Netw. Appl. 2017, 10, 253–261. [Google Scholar] [CrossRef]
  22. Xu, Q.; Tan, C.; Fan, Z.; Zhu, W.; Xiao, Y.; Cheng, F. Secure multi-authority data access control scheme in cloud storage system based on attribute-based signcryption. IEEE Access 2018, 6, 34051–34074. [Google Scholar] [CrossRef]
  23. Zhao, Y.; Ruan, A.; Dan, G.; Huang, J.; Ding, Y. Efficient multi-authority attribute-based signcryption with constant-size ciphertext. In Proceedings of the 2021 IEEE Conference on Dependable and Secure Computing (DSC), Aizuwakamatsu, Fukushima, 30 January–2 February 2021; pp. 1–8. [Google Scholar]
  24. Wang, C.; Huang, J. Attribute-based signcryption with ciphertext-policy and claim-predicate mechanism. In Proceedings of the 2011 Seventh International Conference on Computational Intelligence and Security, Sanya, China, 3–4 December 2011; pp. 905–909. [Google Scholar]
  25. Cohn-Gordon, K.; Cremers, C.; Garratt, L.; Millican, J.; Milner, K. On ends-to-ends encryption: Asynchronous group messaging with strong security guarantees. In Proceedings of the 2018 ACM SIGSAC Conference on Computer and Communications Security, Toronto, ON, Canada, 15–19 October 2018; pp. 1802–1819. [Google Scholar]
  26. Gupta, S.; Sacchetti, T.; Crispo, B. End-to-end encryption for securing communications in industry 4.0. In Proceedings of the 2022 4th IEEE Middle East and North Africa COMMunications Conference (MENACOMM), Amman, Jordan, 6–8 December 2022; pp. 153–158. [Google Scholar]
  27. Vidya Sagar, P.; Dhinesh, K.; Jayakumar, M.; Hemamalini, D. Hybrid Encryption through End to End in Messaging Service Applications. In Proceedings of the 2023 International Conference on Inventive Computation Technologies (ICICT), Lalitpur, Nepal, 26–28 April 2023; pp. 1139–1146. [Google Scholar]
  28. Lewko, A.; Waters, B. Decentralizing attribute-based encryption. In Proceedings of the Annual international conference on the theory and applications of cryptographic techniques, Tallinn, Estonia, 15–19 May 2011; Springer: Berlin/Heidelberg, Germany, 2011; pp. 568–588. [Google Scholar]
Figure 1. Comparison of end-to-server encrypted communication and end-to-end encrypted communication.
Figure 1. Comparison of end-to-server encrypted communication and end-to-end encrypted communication.
Mathematics 12 02906 g001
Figure 2. Framework of the PCE-EtoE scheme.
Figure 2. Framework of the PCE-EtoE scheme.
Mathematics 12 02906 g002
Figure 3. The process flow diagram of the PCE-EtoE system.
Figure 3. The process flow diagram of the PCE-EtoE system.
Mathematics 12 02906 g003
Figure 4. Framework of key agreement.
Figure 4. Framework of key agreement.
Mathematics 12 02906 g004
Figure 5. Experimental environment.
Figure 5. Experimental environment.
Mathematics 12 02906 g005
Figure 6. PCE-EtoE’s un-signcryption and signcryption of text-type messages in a Dell computer. (a) The PCE-EtoE scheme text sigcryption-dell; (b) The PCE-EtoE scheme text un-sigcryption-dell.
Figure 6. PCE-EtoE’s un-signcryption and signcryption of text-type messages in a Dell computer. (a) The PCE-EtoE scheme text sigcryption-dell; (b) The PCE-EtoE scheme text un-sigcryption-dell.
Mathematics 12 02906 g006
Figure 7. PCE-EtoE’s un-signcryption and signcryption of text-type messages in Raspberry Pi. (a) PCE-EtoE’s text signcryption-Raspberry Pi; (b) PCE-EtoE’s text un-signcryption-Raspberry Pi.
Figure 7. PCE-EtoE’s un-signcryption and signcryption of text-type messages in Raspberry Pi. (a) PCE-EtoE’s text signcryption-Raspberry Pi; (b) PCE-EtoE’s text un-signcryption-Raspberry Pi.
Mathematics 12 02906 g007
Figure 8. PCE-EtoE’s un-signcryption and signcryption of picture-type messages in a Dell computer. (a) PCE-EtoE scheme’s picture sigcryption-dell; (b) PCE-EtoE scheme’s picture un-sigcryption-dell.
Figure 8. PCE-EtoE’s un-signcryption and signcryption of picture-type messages in a Dell computer. (a) PCE-EtoE scheme’s picture sigcryption-dell; (b) PCE-EtoE scheme’s picture un-sigcryption-dell.
Mathematics 12 02906 g008
Figure 9. PCE-EtoE’s un-signcryption and signcryption of picture-type messages in Raspberry Pi. (a) PCE-EtoE scheme’s picture sigcryption-Raspberry Pi; (b) PCE-EtoE scheme’s picture un-sigcryption-Raspberry Pi.
Figure 9. PCE-EtoE’s un-signcryption and signcryption of picture-type messages in Raspberry Pi. (a) PCE-EtoE scheme’s picture sigcryption-Raspberry Pi; (b) PCE-EtoE scheme’s picture un-sigcryption-Raspberry Pi.
Mathematics 12 02906 g009
Figure 10. Comparison of PCE-EtoE with related schemes. (a) Comparison of PCE-EtoE’s signcryption; (b) Comparison of PCE-EtoE’s un-signcryption; (c) Comparison of PCE-EtoE’s CreGen; (d) Comparison of PCE-EtoE’s CerVer.
Figure 10. Comparison of PCE-EtoE with related schemes. (a) Comparison of PCE-EtoE’s signcryption; (b) Comparison of PCE-EtoE’s un-signcryption; (c) Comparison of PCE-EtoE’s CreGen; (d) Comparison of PCE-EtoE’s CerVer.
Mathematics 12 02906 g010
Figure 11. Percentage of the overall time for each step in PCE-EtoE.
Figure 11. Percentage of the overall time for each step in PCE-EtoE.
Mathematics 12 02906 g011
Figure 12. The execution time of Message Sending and Message Forwarding for a group of receivers under the same POL in a group chat communication. (a) Message Sending; (b) Message Forwarding.
Figure 12. The execution time of Message Sending and Message Forwarding for a group of receivers under the same POL in a group chat communication. (a) Message Sending; (b) Message Forwarding.
Mathematics 12 02906 g012
Figure 13. The TR of Message Sending and Message Receiving in real-time environment. (a) The TR of Message Sending in real-time environment; (b) The TR of Message Receiving in real-time environment.
Figure 13. The TR of Message Sending and Message Receiving in real-time environment. (a) The TR of Message Sending in real-time environment; (b) The TR of Message Receiving in real-time environment.
Mathematics 12 02906 g013
Table 1. Comparison of features for the existing ABSC scheme and the proposed PCE-EtoE.
Table 1. Comparison of features for the existing ABSC scheme and the proposed PCE-EtoE.
SchemeAccess StructureFunctionality
CMLCCCNRRO
[24]Access Tree××××
[19]MBF×××××
[20]LSSS××××
[21]MBF and Threshold××××
[22]MBF×××××
[23]LSSS×××
[13]MBF××××
PCE-EtoELSSS
Note: CM: complex message flow control; LC: lightweight computational cost; CC: constant computational cost of signcryption; NR: no reliance on outsourced computation; RO: resist operator stealing information; MBF: monotone Boolean function.
Table 2. Definitions of symbols used in the scheme.
Table 2. Definitions of symbols used in the scheme.
SymbolDescriptionSymbolDescription
P K K C G S Public key of KCGSPOLAccess policy
S K K C G S Private key of KCGS E S s e , E S r e , E S R E Secondary ciphertext
SUser’s attributesEncAES encryption
C r e U User’s credentialDecAES decryption
P K U i d Public key of user σ First-class ciphertext
S K U i d Private key of user T S m a x Maximum time difference
K S i , C The shared key of the s e n d e r i and the COS T S n o w Current timestamp
K R i , C The shared key of the r e c e i v e r i and the COSMGroup chat messages
T S m The timestamp of the text messageTSTimestamp of the image message
Table 3. Definitions of symbols used in performance evaluation.
Table 3. Definitions of symbols used in performance evaluation.
SymbolsDescription
E , E T Exponentiation operations in groups G T / G
l s , l e Numbers of signature/encryption attributes involved
PBilinear mapping operation
Table 4. Comparison of theoretical computation cost for signcryption and un-signcryption.
Table 4. Comparison of theoretical computation cost for signcryption and un-signcryption.
SchemeUser SigncryptionUser Un-Signcryption
[24] ( 2 l s + 2 l e + 3 ) E + 2 E T + P ( l s log l s + l e log l e + 1 ) E T + ( 2 l s + 2 l e + 1 ) P
[19] ( 2 l s + 2 l e + 1 ) E ( l s + 2 ) E + l s P
[20] ( 2 l s + 9 ) E + E T ( 2 l e + 2 ) E + 6 P
[21] ( 2 l s + 7 ) E + E T 2 l e E + E T + 8 P
PCEA [13] ( 10 + l s ) E + l s P ( 12 + 2 l s ) P + E T
[22] ( l s + 5 ) E + E T ( l s + 2 ) E + ( l s + 3 ) P + E T
[23] ( 2 l s + 10 ) E + E T ( 2 l e + 2 ) E + 6 P
PCE-EtoE 3 E + P ( 4 + 2 l s ) P
Table 5. Comparison of theoretical computation cost for CreGen and CreVer.
Table 5. Comparison of theoretical computation cost for CreGen and CreVer.
SchemeUser SigncryptionUser Un-Signcryption
PCEA [13] 4 l s E ( 1 + 4 l s ) P
PCE-EtoE ( 2 + l s ) E ( 3 + 2 l s ) P
Table 6. The time complexity of the algorithm.
Table 6. The time complexity of the algorithm.
AlgorithmsSetupKCGSKeyGenCreGen
Time complexity O ( 1 ) O ( 1 ) O ( n )
 
AlgorithmsCreVerUserKeyGenKey Agreement
Time complexity O ( n ) O ( 1 ) O ( 1 )
 
AlgorithmsMesSenMesForwMesRece
Time complexity O ( 1 ) O ( n ) O ( n )
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Yu, F.; Meng, L.; Li, X.; Jiang, D.; Zhu, W.; Zeng, Z. An Attribute-Based End-to-End Policy-Controlled Signcryption Scheme for Secure Group Chat Communication. Mathematics 2024, 12, 2906. https://doi.org/10.3390/math12182906

AMA Style

Yu F, Meng L, Li X, Jiang D, Zhu W, Zeng Z. An Attribute-Based End-to-End Policy-Controlled Signcryption Scheme for Secure Group Chat Communication. Mathematics. 2024; 12(18):2906. https://doi.org/10.3390/math12182906

Chicago/Turabian Style

Yu, Feng, Linghui Meng, Xianxian Li, Daicen Jiang, Weidong Zhu, and Zhihua Zeng. 2024. "An Attribute-Based End-to-End Policy-Controlled Signcryption Scheme for Secure Group Chat Communication" Mathematics 12, no. 18: 2906. https://doi.org/10.3390/math12182906

APA Style

Yu, F., Meng, L., Li, X., Jiang, D., Zhu, W., & Zeng, Z. (2024). An Attribute-Based End-to-End Policy-Controlled Signcryption Scheme for Secure Group Chat Communication. Mathematics, 12(18), 2906. https://doi.org/10.3390/math12182906

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