Cross-Domain Identity Authentication Protocol of Consortium Blockchain Based on Face Recognition

: A consortium system can leverage information to improve workﬂows, accountability, and transparency through setting up a backbone for these cross-company and cross-discipline solutions, which make it become a hot spot of market application. Users of a consortium system may register and log in different target domains to get the access authentications, so how to access resources in different domains efﬁciently to avoid the trust-island problem is a big challenge. Cross-domain authentication is a kind of technology that breaks trust islands and enables users to access resources and services in different domains with the same credentials, which reduces service costs for all parties. Aiming at the problems of traditional cross-domain authentication, such as complex certiﬁcate management, low authentication efﬁciency, and being unable to prevent the attack users’ accounts, a cross-domain authentication protocol based on face recognition is proposed in this paper. The protocol makes use of the decentralized and distributed characteristics of the consortium chain to ensure the reliable transmission of data between participants without trust relationships, and achieves biometric authentication to further solve the problem of account attack by applying a deep-learning face-recognition model. An asymmetric encryption algorithm is used to encrypt and store the face feature codes on the chain to ensure the privacy of the user’s face features. Finally, through security analysis, it is proved that the proposed protocol can effectively prevent a man-in-the-middle attack, a replay attack, an account attack, an internal attack, and other attacks, and mutual security authentication between different domains can be realized with the protocol.


Introduction
Since that network resources are more and more widely distributed, most enterprises have established their own independent resource access policies and access domains. The resources and services provided in a single domain cannot meet all the needs of users. If users need to access the resources and services of other domains, they need to register and log in the target domain to get the access to its authorization. This operation will undoubtedly increase the burden of users. Maintaining many temporary users information in the database of the target domain will also increase the maintenance cost. Cross domain authentication is a technology to break the trust island. It not only enables users to access the resources and services of the relevant domain through the same credentials, but also eliminates the need for domain service providers to maintain the account information of each access user, reducing the communication costs of all parties.
Blockchain technology applies a peer-to-peer distributed ledger based on cryptography, and the data in the growing ledger stored in a chain structure with the characteristics of decentralization, anonymity, traceability, and transparency [1], which can provide trusted data delivery for participants or systems without a mutual trust social relationship. The consortium chain is a special form of blockchain technology, which requires that each new node joins the chain through the audit of legitimate nodes on the chain, and only authorized nodes can access the chain [2]. The problems of multi-party trusted communication and certificate management in cross domain scenarios can be effectively solved. Usually, many cross-domain systems provide account name-password pairs as identity authentication, but there are enormous security risks in this certification method, and this certification method cannot prevent accounts from stealing attacks. Consortium chain needs apply the user's secret key to represent the complete identity of a user in the identity management, since the key content is difficult to carry and record. Human biometric features are the most distinctive features that represent themselves, such as fingerprints, faces, and other innate features are naturally unique, stable and difficult to imitate [3]. The biometric features have unique advantages in both key generation and management. Among those biometric methods, face authentication technology is the most suitable one as an authentication scheme in cross-domain scenarios because of its accessibility and non-contact nature. However, face features as the unique identity of users have long-term stability and universality. Once the face features are leaked or copied, it will bring incalculable losses to users, so it is crucial to ensure the security and confidentiality of face features information [4].
Aiming at the problems of consortium chain account attacks and face features leaked in cross-domain authentication, biometric codes and consortium chains are combined to make a new cross-domain authentication protocol based on face recognition in this paper, which can enable different domain service providers to achieve mutual trusted authentication in insecure public networks. The main contributions of this paper are as follows: (1) comparing and analyzing existing cross-domain authentication protocols, proposing a new cross-domain identity authentication protocol based on face recognition in the consortium chain, which requires only one registration for full-domain authentication and solves the problem of complicated and inefficient traditional cross-domain authentication process; (2) proposing a method for securely storing biometric codes, in which the biometric information extracted by face recognition algorithms is encrypted using asymmetric key encryption and then stored on the chain, only corresponding users can indirectly access the real biometric information through the authentication service center, solving the privacy and security problems commonly found in biometric authentication; (3) running the final authentication process on the chain as a smart contract, which reduces the authentication burden of the domain server and also eliminates the attacks of malicious nodes on the chain.

Related Work
Traditional cross-domain authentication schemes are usually implemented using public key infrastructure (PKI), but there are vast differences in communication, protocols, and services between different domains, resulting in complex identity certificate management and extremely low authentication efficiency. However, the emergence of blockchain brings a new direction in cross-domain authentication. In view of the performance and security problems of the existing centralized cross-domain authentication, Ref. [5] proposed a new network cross-domain authentication scheme based on blockchain called Trustroam. In this scheme, it authenticated users and servers in a distributed and anonymous way, which avoids serious problems such as single point of failure and privacy leakage. Ref. [6] proposed an efficient and secure blockchain-assisted authentication mechanism, which supports the authentication of devices located in different Internet of Things domains. The protocol introduces a consortium blockchain to build trust between different domains and designs an identity management mechanism to keep the authenticated nodes anonymous. In [7], aiming at the cross-domain data access problem of product manufacturing, the author proposed a centralized cloud cross-domain data sharing platform based on blockchain with multiple security gateways. The platform uses blockchain to store information in a centralized cloud that can be audited, and apps or data providers found to be misbehaving can be penalized using smart contracts. Ref. [8] proposes a blockchain-based drone intelligent 5G interconnection cross-domain certification plan for the security and privacy issues between drones. This method uses multiple signatures based on threshold sharing to build a collaborative domain and combines with smart contracts to certify reliable communication between cross-domain devices. Ref. [9] abstracts a general-purpose universal diagram in the certification relationship between IoT intelligent devices, and then converts the certification problem into a signature transitivity problem with the blockchain. Here, the signature only needs to calculate the signatures and witnesses of the relevant edges, which can effectively reduce the pressure of digital signature authentication. All the above studies use key pair as the unique identification of user identity authentication, and the real identity of the current key user cannot be determined during authentication, resulting in the risk of account attack.
With the enhancement of computer computing capabilities, more and more terminal devices have supported biological characteristics detection, so some researchers have considered introducing biological characteristics to further improve the security of blockchain identity certification [10]. In order to verify user identity, Ref. [11] proposes a new authentication security framework. This framework uses a novel verification secure framework based on fusion algorithm, which combines radio frequency identification (RFID) and finger vein (FV) biometric characteristics to improve the randomness and security of the system, and combines blockchain and steganography technology to ensure the confidentiality, integrity and availability of user information. Ref. [12] Designed a multi-purpose iris authentication system. The system uses homogenic encryption technology to encrypt the iris feature information and save it on the blockchain during the authentication certification and high accuracy. Aiming at the common user privacy problem in the Industrial Internet of Things, Ref. [13] proposed a new intelligent industry identity management system based on blockchain. The system provides participants with anonymous credentials through biometric and fuzzy extractors, and supports selective disclosure, suspension/unfreezing, and revocation of credentials. Aiming at the problems of biometric information leakage risk, unreliable authentication module, and opaque biometric information management in the biometric authentication system, Ref. [14] proposed a biometric authentication system based on blockchain. The system improves the security and reliability of existing biometric authentication systems by fragmenting biometric templates and managing them with the decentralized and tamper-proof mechanism of blockchain. Ref. [15] proposes a blockchain based framework that allows secure, transparent and privacy protected biometric authentication. The framework manages biometric data using distributed DID, and allows users to have autonomous and controllable electronic identities, so that they can fully control their own biometric identity information and ensure the security of user information. In view of the challenges faced by blockchain in storing private files and granting access rights, Ref. [16] proposes a biometric-based blockchain file storage and access authorization scheme. In this scheme, the requests and responses for file storage and access are all executed on the blockchain, and the file owner is not required to store any information locally, so it can be used on devices with limited resources.
In summary, although there are some blockchain-based cross-domain authentication methods, so far less of them can combine security, privacy, versatility, and robustness, making it difficult to apply to complex scenarios in real life. Therefore, it is urgent to research an efficient and universal cross-domain authentication algorithm.

System Structure
A cross-domain authentication protocol based on face recognition and a consortium chain is designed, which adopts the consortium chain as the basic service; the entire system structure is shown in Figure 1. The system mainly includes the three following major roles: User (U), Certificate Service Center (CA), and Authentication Service Center (AS). Each CA serves each domain separately and is mainly responsible for providing a certificate service for the consortium chain network in the domain, providing the service of issuing, verifying, and revoking the certificate of user and certificate service center. As a part of the core of the consortium chain network, all AS'es in different domains collaborate to process all the authentication data in the whole consortium chain network, and also runs the core certification program smart contract. Besides the above three major roles, this system also includes three important modules: client (C), face-information-collection module (FIC), and smart contract (SC). As the only channel to access the authentication system, the client provides users with a simple visual interface to help complete the identity authentication process, and then provides subsequent system services after the authentication is passed. The face-information-collection module is mainly responsible to collect the primitive face information, which can collect the original information by mobile phone camera, computer camera, and other professional photoing devices. Smart contract is the main authentication program running on the consortium chain maintained by the authentication service center, which mainly includes a feature extraction model and a face recognition algorithm. The face feature extraction model is a model trained by deep learning face recognition technology, which can extract the corresponding biometric code from the primitive face information and store it on the chain. The face feature recognition algorithm is mainly used to compare the registration biometric code and authentication biometric code in the authentication stage, and finally gives the authentication result.

Face Recognition Model
The identity authentication in the face recognition model comprises two parts: one is the asymmetric key authentication based on the consortium chain, the other is a face recognition model, which includes a deep-learning face feature extraction model and a face feature authentication algorithm. The face feature extraction model takes Deep Residual Networks (ResNet) as the backbone network and ArcFace algorithm [17] as the loss function of the training process. After it completed the training, we deployed the optimal result model on the chain to provide a face feature extraction service for this protocol. Cosine distance measurement is mainly used to realize face feature authentication algorithm, which is mainly used to judge whether the biometric code uploaded during user registration is consistent with the biometric code uploaded during authentication. The face recognition model structure is shown in Figure 2. (1) Feature Extraction Model The ResNet model comprises a series of residual units stacked. In the whole blockchain network, some links are usually added so that the upper-layer data can keep features and transmit them directly to the deeper layer. Meanwhile, the new links will not increase the complexity of the model itself, so it can maintain high operation efficiency. A common residual element is shown in Figure 3. Suppose that the input face image x is output H(x) = F(x) + x after the nonlinear mapping of the residual network, in which H(x) is the sum of input x and residual block output F(x). If x is taken as a real value and H(x) as an estimated value, F(x) represents residual value. The specific calculation formula of a residual unit is given as follows: where x is the input of the residual unit, H(x) is the output of the residual unit, and F(x, {w i }) represents the residual function that the network needs to learn. For example, in Figure 3, the residual function is represented as F = w 2 ϕ(w 1 x), ϕ is the activation function, w 1 is the parameter of the first single-layer network, and w 2 is the parameter of the second single-layer network. The input face image x will be related with the full connection layer after the residual network processing, and finally the output from multi-dimensional vector to onedimensional vector, which can further simplify the calculation. Loss functions in many network models are usually implemented Softmax function, but Softmax has difficulty in constraining intra-class distance and inter-class distance, which will reduce the precision of face recognition. So, this paper chooses ArcFace as the loss function, the formula is: where θ j is the angle between the weight vector w j and the input vector x i , s is the normalized result of the input vector x j , m is the interval between w y i and x i , a complete residual network is shown in Figure 4. (2) Face Recognition Algorithm The face feature authentication algorithm is for comparing the face feature value between the authenticated user and the user on the chain. The judge algorithms include Euclidean measurement, cosine similarity, Chebyshev distance, Pearson correlation coefficient, etc. Considering efficiency and accuracy, cosine similarity is chosen as the face feature authentication algorithm in this paper. Cosine similarity, also known as cosine distance, is used to measure the difference between two individuals based on the cosine value of the angle between two vectors. Suppose that the face feature information stored in the chain by a user during registration is X = (x 1 , x 2 . . . x n ), and the primitive face information got during authentication is Y = (y 1 , y 2 . . . y n ) after processing through the face feature extraction model, the cosine similarity calculation formula is given by:

Main Protocol Processes
The main protocol processes include three parts: local domain registration, local domain authentication, and cross domain authentication. The specific certification procedures of the cross-domain identity certification agreement is based on face recognition. When a user registers to the system, the user's primitive face information will be sent to a smart contract. The smart contract first calls the ResNet face feature extraction model on it for feature extraction, and then encrypts the extracted person's face features to the chain. In the authentication process, besides verifying the user's private key, the user also needs to send the primitive face to the smart contract. The authentication process first calls the ResNet face feature extraction algorithm on the Authentication Service Center node for feature extraction, and then executes the face feature authentication algorithm on smart contract to compare the extracted feature value with the existing user's feature value on the chain, and finally draws the conclusion whether the authentication is successful. Table 1 illustrates the specific symbols and meanings used in this agreement.

Local Domain Registration
The registration process of local domain is shown in Figure 5, which can be divided into three stages: certificate generation stage, face collection stage, and contract registration stage.

1.
The fundamental processes of certificate generation are as follows: Step 1.1: User U i starts the client and inputs username ID i , password PW i , and other necessary information.
Step 1.2: The client generates the current timestamp T 1 and encrypts the registration information (ID i , PW i , T 1 ) with the public key PK AS of the local domain authentication service center AS: Step 1.3: The client sends the encrypted result PK AS (ID i , PW i , T 1 ) to the local authentication service center AS.
Step 1.4: AS decrypts the registration information with its own private key: PK AS (ID i , Step 1.5: AS check whether the username ID i has been registered and whether it meets the user-name specifications. Subsequently, it checks whether the user-password PW i meets the basic security requirements, and checks if T i is a valid timestamp lastly. If the timestamp is within three minutes, the request is considered valid and proceeds to the next step. Step 1.6: AS send registered data (ID i , PW i ) to the Certificate Service Center CA.
Step 1.7: CA generates the identity certificate (PK i , SK i ) according to the user information (ID i , PW i ) through the elliptic curve cryptosystem, and returns it to the local authentication service center AS. Where PK i is the user's public key and SK i is the user's private key. The user sends the registration information to the AS node through the client. As invokes CA to assign a certificate according to registration information, then notifies user to input face information, and finally writes registration information to consortium chain.

2.
The face collection stage includes: Step 2.1: AS stores the received local certificate information temporarily and calls the function BioGet() to notify the client to collect the user's primitive face information.
Step 2.2: The face-information-collection module collects the user's primitive face information P i through the user's interface and returns it to the client.
Step 2.3: The client generates the current timestamp T 2 and encrypt the information (P i , T 2 ) with the public key PK AS of the local domain authentication service center AS: Step 2.4: The client sends the user encrypted information PK AS (P i , T 2 ) to AS.
Step 2.5: AS decrypts the encrypted information PK AS (P i , T 2 ) with its own private key SK AS : PK AS (P i , T 2 ) SK AS → (P i , T 2 ). AS check if T 2 is a valid timestamp. If the timestamp is within three minutes, the request is considered valid and is proceeded to the next step.

3.
The contract registration stage includes: Step 3.1: The Authentication Service Center calls the face feature extraction model to extract the biometric code of face feature P i : P i Step 3.2: The smart contract on the consortium chain is called for user registration and gets the input parament registration information (ID i , PK i , V i ) from AS.
Step 3.3: The smart contract uses user public key PK i to encrypt biometric code: Step 3.4: The smart contract broadcasts the user's registration information to the entire network: ChainBroadcast(ID i , PK i (V i )) and notifies AS the successful registration result.
Step 3.5: The AS sends the user certificate (PK i , SK i ) to the user to notify that the registration is successful and deletes all local registration information. Figure 6 shows the authentication process in local domain, which can be divided into three stages: certificate generation stage, face collection stage, and contract authentication stage. Figure 6. Local domain authentication process. The user sends the login information and face information to the AS node through the client. The AS reads the registration information stored on the consortium chain according to the login information, compares the login information with the registration information, and returns the registration result.

1.
The certificate generation stage includes: Step 1.1: User U i opens the client, inputs the account ID i and selects the registered private key SK i .
Step 1.2: The client generates the current timestamp T 1 and encrypts T 1 using the user's private key SK i : T 1 SK i → SK i (T 1 ). Step 1.3: The client sends the certificate authentication information (ID i , T 1 , SK i (T 1 )) to the local Authentication Service Center AS.
Step 1.4: AS Checks whether ID i is a legitimate user. The username must be registered and not revoked. Check if T 1 is a valid timestamp. If the timestamp is within three minutes, the request is considered valid and proceeds to the next step.
Step 1.5: AS uses U i 's public key PK i to decrypt SK i (T 1 ):

2.
The face collection phase includes: Step 2.1: AS invokes the smart contract to query face authentication information and passes in parameter ID i .
Step 2.2: The smart contract calls ChainGet() to get face authentication information (ID i , PK i (V i )) according to ID i and returns the face information to AS.
Step 2.3: AS returns (ID i , PK i (V i )) to the client and notifies the client to collect the primitive face information of the user.
Step 2.4: The client uses user's private key SK i to decrypt PK i (V i ) to get the face feature code: Step 2.5: The client invokes the function BioGet() to notify the primitive face-informationcollection module to collect the user's primitive face information.
Step 2.6: The face-information-collection module collects the user's primitive face information P i from the user and returns it to the client.
Step 2.7: The client generates the current timestamp T 2 and encrypt the authentication information (P i , V i , T 2 ) with the public key PK AS of the local domain authentication service center AS: Step 2.8: The client packages the face authentication request as (ID i , T 2 , PK AS (P i , V i , T 2 )) and sends it to AS.

3.
The contract certification stage includes: Step 3.1: AS decrypts the authentication request using its own private key: PK AS (P i , If the timestamp is within three minutes, the request is considered valid and proceeds to the next step.
Step 3.2: AS calls face feature extraction model to extract the biological characteristics of face information P i : P i Step 3.3: AS invokes the smart contract on the consortium chain to authenticate the user's face and input the face authentication information (ID i , V * i , V i , PK i ).
Step 3.4: Smart contracts use PK i to encrypt V i : V i PK i → PK i (V i ).
Step 3.5: Smart contracts get face authentication information (ID i , PK i (V i )) through the function ChainGet(), and then judge whether PK i (V i ) == PK i (V i ). If it is true, the smart contract will continue the next step.
Step 3.6: Smart contract invokes face feature authentication algorithm to judge whether two face features belong to the same person: If the result is true, the authentication passes.
Step 3.7: The smart contract notifies both AS and the user of the authentication result. Figure 7 shows the cross-domain authentication process, which can be divided into four stages: the local certificate authentication stage, local face collection stage, crossdomain certificate authentication stage and contract face authentication stage.

1.
Certificate authentication in the local domain includes: Step 1.1: User U i−A of domain A opens the client, inputs the account ID i and selects the registered private key SK i .
Step 1.2: The client in domain A generates the current timestamp T 1 and encrypts T 1 with the private key SK i : T 1 SK i → SK i (T 1 ). Step 1.3: The client sends authentication information (ID i , T 1 , SK i (T 1 )) to the authentication service center AS A of the consortium chain in domain A. Step 1.4: AS A check whether ID i is a legitimate user. The username must be registered and not revoked. Check if T 1 is a valid timestamp. If the timestamp is within three minutes, the request is considered valid and proceeds to the next step.
Step 1.5: AS A decrypts SK i (T 1 ) using ID i 's public key PK i : SK i (T 1 ) PK i → T 1 , and check if T 1 == T 1 . The equal value means the timestamp with user's signature is accepted, then the domain certificate of the user is authenticated.
Step 1.6: AS A generates a unique endorsement for the user. AS A encrypts the public key of User U i−A with its private key SK AS A : PK i SK AS A → SK AS A (PK i ), and takes the encrypted result as user's endorsement.

2.
The local domain face collection stage includes: Step 2.1: AS A invokes the smart contract to query face authentication information and passes in parameter ID i .
Step 2.2: Smart contract gets face authentication information (ID i , PK i (V i )) by calling the function ChainGet(), and returns human face information to AS A .
Step 2.3: AS A package the face authentication information and endorsement encryption information of the user on the chain as (PK i (V i ), SK AS A (PK i )), and send the package to the client.
Step 2.4: The client uses user's private key SK i to decrypt PK i (V i ) to get the face feature code: Step 2.5: The client invokes the function BioGet() to notify the primitive face-informationcollection module to collect the user's primitive face information.
Step 2.6: The above face-information-collection module collects the user's primitive face information P i from the user and returns the information to the client.
Step 2.7: The client uses the public key PK AS B of authentication service center AS B in domain B to encrypt P i and V i : Step 2.8: The client generates the current timestamp T 2 and encrypts T 2 with the private key SK i : Step 2.9: The client packages the cross-domain authentication request as (ID i , T 2 , SK i (T 2 ), PK AS B (P i , V i ), PK i , SK AS A (PK i )) and sends it to AS B .

3.
Cross-domain certificate authentication includes: Step 3.1: After receiving the authentication data, the authentication service center AS B in domain B decrypts SK AS A (PK i ) with the public key of the authentication service center the procedure continues to the next step.
Step 3.2: AS B decrypts PK AS B (P i , V i ) with its own private key: PK AS B (P i , V i ) Step 3.3: AS B checks whether T 2 is a valid timestamp. If the value is a timestamp within three minutes, the request is considered valid and proceeds to the next step.
Step 3.4: AS B uses the received user public key PK i to decrypt SK i (T 2 ): SK i (T 2 ) PK i → T 2 . If T 2 == T 2 , the cross-domain certificate authentication succeeds.
Step 3.5: The AS B invokes the face feature extraction model to extract the biometric code V * i of face feature: P i The contract face authentication stage includes: Step 4.1: AS B invokes the smart contract on the consortium chain to authenticate the user's face and input the face authentication information ( Step 4.3: The smart contract gets the face authentication information (ID i , PK i (V i )) through the function ChainGet(), and then judges whether PK i (V i ) == PK i (V i ). If it is true, the smart contract will continue the next step.
Step 4.4: The smart contract invokes the face feature authentication algorithm to judge whether the two face features belong to the same person: if the result is true, the authentication passes; otherwise, the authentication fails, and the contract face authentication phase ends.
Step 4.5: The smart contract notifies both AS B and the user of the authentication results.

Security Analysis
In order to prove the effectiveness of the cross-domain identity authentication protocol based on face recognition, this section analyzes the security of the protocol in the specific application process and compares it with three typical schemes cited in [6,18,19].

Attack Models
In the proposed face recognition-based consortium chain cross-domain authentication protocol, we adopt the following assumptions to analyze the attacks on the system.
(1) The consortium blockchain is jointly maintained by multiple authorized nodes throughout the network, and transaction data and smart contract data are transparent to all taking part nodes. (2) Each node in the same consortium can always synchronize information according to the protocol Raft in [20]. (3) The environment of the authorized nodes in the consortium chain is relatively secure. (4) Attackers can intercept and modify communication data through network lines to client or authorized nodes.
Based on the above assumptions, the system may be attacked as follows: (1) Man-in-the-Middle attack: an attacker captures communication data and uses a false identity to deceive both parties (2) Replay Attack: the attacker intercepts and saves the normal communication data and sends the data to the service node again after the normal communication finishes. (3) Account Theft Attack: an attacker illegally gets a user identity key file through technical means and attempts to use the file to use the corresponding user's identity. (4) Biometric Confidentiality: the attacker attempts to obtain the biometric information of other users from the authorization node of the consortium chain.

Security Analysis
Based on the above security risks, we conduct a security analysis of this system.

Man-in-the-Middle Attack
At each stage of the system, the key privacy information involved mainly includes account password PW i , account private key SK i , primitive face information P i , and face biometric code V i . Each time the client communicates with the authentication service center AS, the key privacy information transmitted will be encrypted with the other party's public key. The encryption process is carried out locally without the risk of a man-in-the-middle attack. Suppose that the key privacy information PK AS (ID i , PW i , P i , V i ) transmitted by the client in the communication process with AS is eavesdropped and intercepted by the intermediary through hacker technology. Because of the asymmetric encryption feature, the content encrypted by the public key can only be decrypted by the corresponding private key, the intermediary cannot get the specific privacy content. Therefore, all stages of this protocol can effectively prevent man-in-the-middle attacks.

Replay Attack
In the process of local domain identity authentication and cross domain identity authentication of the system, the client will generate the request parameter T i according to the current timestamp of the system, and then encrypt T i to SK i (T i ) with the user's private key. The timestamp information will be attached to each stage of communication with the authentication service center AS. AS will decrypt SK i (T i ) with the user's public key after receiving the authentication request, and then check whether the timestamp is within the current time range. If the value is a timestamp within three minutes, the request is considered valid and proceed to the next step. Suppose an attacker intercepts a request SK i (T i ) with an encrypted timestamp. Since the attacker does not have a user's private key, the timestamp content in the request cannot be changed. Even if the attacker sends the request directly to the server, the request will be considered invalid because the timestamp expires. The replay attack failed.

Account Theft Attacks
In the process of local and cross-domain identity authentication of the system, the authentication service AS will check the identity certificate of the current authenticated user. AS will notify the user to cooperate in collecting face information P i after the certificate is checked. Then, the smart contract invokes the face feature extraction model to extract the biometric code V * i of face information, and finally compare whether the face features V * i at the time of authentication are consistent with the face features V i saved on the chain. If these are consistent, the authentication passes. Suppose that the attacker robs a user's identity key pair by illegal methods and wanted to use his identity to log in the system to steal the user's property. The attacker can successfully pass the certificate authentication stage of the authentication process by using the user ID i and private key SK i . However, the attacker cannot provide the primitive face information needed for authentication in the face collection stage, which leads to the final identity authentication failure. Therefore, this protocol can prevent account theft attacks.

Internal Attack
Internal attacks may mainly come from two aspects: system malicious users and authentication service centers. If a malicious user is successfully registered with the system, it can access all the local domain authentication and cross-domain authentication process of the system. However, since the user can only access their own data during the entire process of identity authentication, so it cannot pose any threat to the system. As for the malicious authentication service center, it may maliciously tamper with the data and authentication results on the consortium chain. However, because the network on the consortium chain is maintained by multiple authentication services using the Raft protocol, tampering by a single malicious node can be quickly detected and processed. In conclusion, this protocol can effectively prevent internal attacks.

Biometric Confidentiality
In this protocol, all information related to user biological information is encrypted, and the biological information can only be viewed by the user. For example, in the face collection phase of local domain identity registration, the client will encrypt it with the public key of the AS to get PK AS (P i ) after the client collects the primitive face information P i . Only the private key corresponding to the public key can decrypt and read the information, without risk of disclosure. In the contract registration phase of local identity registration, the smart contract uses the feature extraction model to extract the biometric code V i of the primitive face information P i , and then uses the user's public key PK i to store the encrypted result PK i (V i ) in the chain. Since then, all other participants in the system except for the user himself cannot get the biometric code of the user. Therefore, the security of the user's face features can be ensured.
According to the comparison results in Table 2, this protocol is more secure than other schemes and can resist more complex network attacks.

Conclusions
In order to solve the problems of complex identity certificate management, low authentication efficiency, and being unable to prevent account theft in distributed scenarios, this paper proposes a cross-domain identity authentication protocol based on face recognition. The protocol uses consortium chain as the underlying architecture to ensure the stability and decentralization of authentication services. ResNet is a face feature extraction model for face authentication, which is deployed on intelligent contract to ensure the security and non-repudiation of privacy information such as biometrics. Then through security analysis, it is proved that the protocol can effectively prevent man-in-the-middle attacks, replay attacks, account embezzlement, internal attacks, and other attacks, and finally achieve mutual security authentication between different domains.
Author Contributions: Conceptualization, S.X. and X.C.; methodology, X.C.; validation, X.C.; formal analysis, K.M.; supervision, P.C. All authors have read and agreed to the published version of the manuscript.

Data Availability Statement:
The data included in this study are available upon request by contact with the first author.

Conflicts of Interest:
The authors declare no conflict of interest.