A blockchain-based authentication method and system for cross-domain handover of internet of vehicles

By using blockchain technology to achieve cross-domain switching authentication and group session key distribution in the Internet of Vehicles (IoV), the identity authentication and security issues in the IoV are solved, the system stability and security are improved, and distributed trust and information sharing are realized.

CN116566581BActive Publication Date: 2025-10-24NANJING UNIV OF POSTS & TELECOMM
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202310588897.3
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-05-24
Publication Date
2025-10-24
Estimated Expiration
2043-05-24

AI Technical Summary

Technical Problem

The Internet of Vehicles (IoV) presents security challenges such as the complexity of rapid authentication switching between different roadside units, centralized power of trusted institutions, redundant information in entity interaction communications, information confidentiality, entity anonymity, and identity legitimacy, all of which affect system stability and security.

Method used

A blockchain-based cross-domain handover authentication method for vehicle-to-everything (V2X) is adopted. Public/private key pairs are generated by initializing parameters through a trusted institution. Vehicles and roadside units use chameleon signatures and multinomial coefficients to achieve identity authentication and group session key distribution. By leveraging the distributed trust and immutability of blockchain, duplicate information exchanges are reduced, and anonymity and traceability are guaranteed.

Benefits of technology

It improves the security and stability of the Internet of Vehicles, realizes distributed trust and cross-domain information sharing among multiple domains, reduces the impact of single point of failure, ensures anonymity and traceability, and achieves forward and backward security of group session keys.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116566581B_ABST
    Figure CN116566581B_ABST
Patent Text Reader

Abstract

The application discloses a kind of based on blockchain's vehicle networking cross-domain switching authentication method and system, method includes the following steps: 1) trusted agency initializes parameter, and generates public key / private key pair;2) roadside unit generates public / private key pair according to the initialization parameter issued by trusted agency, and requests public key signature to trusted agency, and vehicle generates chameleon signature according to the chameleon function specified by trusted agency and is registered to trusted agency;3) vehicle and target roadside unit are authenticated between the identity of both by the signature generated by trusted agency for roadside unit, chameleon signature that trusted agency writes in blockchain for vehicle realizes;4) vehicle generates group session key using polynomial coefficient generated by trusted agency after completing identity authentication.The application meets various security requirements while also realizing the anonymity and traceability of vehicle and the forward and backward security of group session key.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The application provides a blockchain-based cross-domain switching authentication and group key distribution method for Internet of Vehicles, and belongs to the field of information encryption. BACKGROUND

[0002] In recent years, automobile enterprises have fully involved in the research and development and landing of new energy vehicles. While the industry is continuously promoting the development of new energy vehicles, people have many doubts about the development and application of vehicle unmanned driving and auxiliary driving, such as auxiliary driving rear-end collision, test driving vehicle out of control and rushing into the sidewalk, causing casualties and other shocking accidents. The introduction of intelligent transportation systems can effectively realize efficient management of urban traffic. As an important component of the vehicle self-organizing network, it can significantly improve the efficiency of traffic management, reduce traffic congestion and accident risk.

[0003] In the Internet of Vehicles, there are many uncertainties and complexities in the actual application scenarios, such as how vehicles can quickly switch authentication between different roadside units, how the system can avoid the high concentration of trusted agency power, how to avoid repeated information when redundant entities interact in communication, how to ensure the confidentiality of information, the anonymity of entities and the legality of identity, the identity disclosure of illegal entities, and the forward and backward security of group session keys. The above security problems need to be faced and solved for the stable operation of the Internet of Vehicles. SUMMARY

[0004] The technical problem to be solved by the application is how to further improve the security and stability of the Internet of Vehicles.

[0005] To solve the above technical problems, the application provides a blockchain-based cross-domain switching authentication method for Internet of Vehicles, comprising the following steps:

[0006] 1) The trusted agency initializes parameters and generates a public key / private key pair;

[0007] 2) The roadside unit generates a public / private key pair according to the initialization parameters published by the trusted agency, and requests a public key signature from the trusted agency, and the vehicle generates a chameleon signature according to the chameleon function specified by the trusted agency and registers with the trusted agency;

[0008] 3) The vehicle and the target roadside unit realize identity authentication between them through the signature generated by the trusted agency for the roadside unit and the chameleon signature written in the blockchain by the trusted agency for the vehicle;

[0009] 4) After completing the identity authentication, the vehicle generates a group session key using the polynomial coefficients generated by the trusted agency.

[0010] The aforementioned blockchain-based cross-domain switching authentication method for Internet of Vehicles, in step 1), the specific steps are as follows:

[0011] 11) The trusted authority selects a large prime number p, an elliptic curve E(F p ) defined over a finite field F p p p

[0012] 12) The trusted authority selects a random number s as a private key, and the corresponding public key is P pub = s·P. denotes the set [1, 2, …, q-1];

[0013] 13) Select a secure one-way hash function h i , i = 0, 1, 2, 3, 4, → denotes the mapping; * denotes the number of bits of the hash mapping;

[0014]

[0015]

[0016]

[0017]

[0018]

[0019] 14) The trusted authority places the system parameters params = {p, q, E(F p ), P, P pub h i} in the blockchain for public disclosure.

[0020] The foregoing blockchain-based authentication method for cross-domain switching of the Internet of Vehicles, in step 2), the specific steps are as follows:

[0021] 21) Before identity registration, the roadside unit and the vehicle obtain the two types of information of the system parameters params and the chameleon hash function designated by the vehicle from the trusted authority published in the blockchain;

[0022] 22) The roadside unit selects a random number s rsu as a private key, the corresponding public key is p rsu = s rsu P, and the information {RID rsu , p rsu} is sent to the trusted authority for registration through a trusted channel or a preset session key when the roadside unit is deployed, and RID​​​​rsu The real identity of the roadside unit RSU;

[0023] 23) After receiving the request information, the trusted agency generates a signature for the identity and public key of the roadside unit RSU using the Schnorr signature algorithm, selects a random number three The calculation process variable point U = uP, the first signature information sig = s·h0(RID rsu , pk rsu , U) + u, h0 is a hash function for the information {RID rsu , pk rsu , U};

[0024] 24) The roadside unit periodically broadcasts the information {rsu, RID rsu , pk rsu , C, sig} in the domain, and the vehicle authenticates the identity of the roadside unit through the broadcast information, and rsu represents that the corresponding information is the identity signature broadcast information of the roadside unit;

[0025] 25) The vehicle calculates the chameleon signature using the designated chameleon hash function, and the vehicle selects a random number four x i , a random number five s i , and a random number six Calculation:

[0026] Y i = x i P

[0027] r i * = h1(RID i , s i )

[0028]

[0029]

[0030] At this time, the collision private key of the chameleon hash function of the vehicle is sk CH = (k i , x i ), and the corresponding hash public key is pk CH = (P, Y i ); RID i is the real identity of the vehicle V i , CH i is the chameleon hash value calculated by the vehicle V i , represents that the chameleon hash value is calculated by signing the random number six using the hash public key; Y i , ri * , k i are intermediate process variables;

[0031] 26) vehicle selects random number seven computes process variable D i = d i P and pseudonym PID i of vehicle V i information:

[0032]

[0033]

[0034] hash = h3(RID i , d i , CH i , T Curr )

[0035] where T Curr represents the current time stamp, represents XOR, Q i is the result of XOR, and hash is the hash result of information {RID i , d i , CH i , T Curr};

[0036] 27) vehicle sends registration request information REQ to trusted agency through secure channel:

[0037] REQ = {PID i , CH i , D i , Q i , hash, T Curr};

[0038] 28) after trusted agency receives vehicle request information REQ, it verifies the time stamp T Curr in it, trusted agency takes the current time stamp T Curr ', and verifies whether inequality |T Curr '- T Curr | ≤ ΔT is true, if true, then it calculates:

[0039]

[0040]

[0041] hash' = h3(RID i ', d i ', CH i ', TCurr )

[0042] The trusted agency calculates the identity RID of the vehicle through the received information i , the random number r and the update value d i , and compares it with the received hash value. If they are equal, it continues to step 29), otherwise it rejects the corresponding vehicle request; ΔT represents a pre-set threshold value.

[0043] 29) After the trusted agency completes the calculation and verification of steps 21) to 28), it creates a transaction and writes the information data data i = {CH i , T exp} into a block, T exp representing the expiration time of the vehicle registration;

[0044] The information {RID i , d i , CH i} is signed using the ECDSA signature algorithm to obtain the second signature information σ = Sig s (h3(RID i , CH i , d i )), and the second signature information σ is placed in the block, with the identification of the block being TXID i , and Sig s () representing the ECDSA signature algorithm;

[0045] The trusted agency writes the information {TXID i , RID i , CH i , d i} into the server, and the access rights of the information {TXID i , RID i , CH i , d i} are only available to the trusted agency. The trusted agency calculates the symmetric encryption key using the random number r and d i , encrypts {TXID i , σ, h4(TXID i , σ, T exp )} into cip, and transmits it to the vehicle V i , that is:

[0046]

[0047] The trusted agency sends the response information RES = {PID i , cip} to the vehicle, representing the use of the symmetric key H1(di ) encrypted information;

[0048] 210) After receiving the response information RES from the trusted agency, the vehicle V i checks the real identity PID i of the response information, uses the identification TXID i of the block to find the specified block, uses the second signature information σ to index the corresponding entry in the block, and obtains the chameleon hash value CH i , which is compared with the locally stored chameleon hash value. If they are consistent, the vehicle confirms that the chameleon hash value CH i written in the block is sent by the trusted agency through the second signature information σ in the block; if the chameleon hash value CH i of the vehicle itself is not found, the vehicle re-sends the registration request information to the trusted agency.

[0049] The foregoing blockchain-based cross-domain switching authentication method for Internet of Vehicles, in step 3), the specific steps include:

[0050] 31) After receiving the information broadcast by the roadside unit, the vehicle learns that the information is the identity signature information generated by the trusted agency for the roadside unit through the roadside unit identification, calculates the following formula to verify the identity of the roadside unit, and if the equation is established, the vehicle completes the one-way identity authentication of the roadside unit,

[0051] sig·P = h0(RID rsu , pk rsu , U)P pub + U;

[0052] 32) After the vehicle completes the one-way authentication of the roadside unit, a random number eight is calculated:

[0053] B i = a i P

[0054] A i = a i Y i

[0055]

[0056] γ i = h3(PID i , A i , TXID i , σ, T Curr )

[0057] Let r i = ai γ i , then the corresponding m i = k i -r i x i , r i , γ i are all process variables;

[0058] Request information HOREQ = {HO, PID i , m i , A i , B i , RT i , T Curr} is sent to the road unit, HO indicates that the request information is a handover request; COM() and DeCOM() respectively represent reversible lossless compression algorithm and decompression algorithm;

[0059] 33) After the road unit receives the request information, it learns from the handover request HO that the request information is a cross-domain handover authentication request, first verifies whether the time stamp |T Curr '-T Curr |≤ΔT is valid, if valid, then calculates:

[0060]

[0061] 34) The road unit obtains the data information data i ={CH i , T i} in the specified block through the identification TXID exp of the block and the second signature information σ index, reads the expiration time T exp of the vehicle registration, judges whether the registration time is expired, if not, uses the vehicle violation list maintained by the trusted agency to judge whether the corresponding vehicle has a malicious behavior record, when there is no malicious behavior record, judges whether the equation m i P+h3(PID i , A i , TXID i , σ, T i )A Curr =CH i is established through the read chameleon hash value CH i , if the equation is established, the road unit successfully verifies the vehicle identity;

[0062] 35) After the road unit successfully completes the authentication of the vehicle, the road unit and the vehicle realize mutual authentication, the road unit submits a set of information of a group of vehicles {V1,…, V t} legally and effectively within the domain to the trusted agency, {{PID1, TXID1},…, {PID tTXID t}application group session key, t represents the number of a group of vehicles.

[0063] The foregoing blockchain-based vehicle networking cross-domain handover authentication method, in step 2), in step 4), the specific steps include:

[0064] 41) The trusted agency performs legality judgment on the vehicles of the application group session key through the information submitted by the roadside unit, and if the vehicles are legal, uses the vehicle V i The pre-stored secret value random number seven d i Calculate the polynomial f(x):

[0065] ρ i =h1(PID i ,h2(sD i ))

[0066]

[0067] GSKACK=H4(e,T curr )

[0068] The trusted agency broadcasts the broadcast information GSKRESP through the roadside unit in the corresponding domain, GSKRESP={gsk,a t-1 ,…,a0,GSKACK,T curr};

[0069] Wherein, the random number nine ρ i is an intermediate process variable, {a0,…,a t-1} represents the coefficients of the polynomial, ∏ represents multiplication, and modq represents taking q modulo;

[0070] 42) The vehicle V i After receiving the broadcast information GSKRESP, it is learned through the identifier gsk that the closing information is about group key distribution, and the timestamp |T Curr ′-T Curr |≤ΔT, if the inequality holds, then calculate the following polynomial:

[0071] f(x)′=x t +a t-1 x t-1 +…+a1x+a0

[0072] ρ i ′=h1(PID i ,h2(d i P pub ))

[0073] e′=f(ρ i ′)′

[0074] f(x)' represents a polynomial calculated by the vehicle, p i ' represents a result calculated by using a h1 hash function on information {PID i , h2(d i P pub )};

[0075] The vehicle judges whether the following equation is true,

[0076] H4(e', T curr ) = H4(e, T curr )

[0077] If the equation is true, the vehicle receives the key seed e' and calculates the group session key; if the equation is not true, the vehicle continues to collect broadcast information or re-requests from the roadside unit.

[0078] A blockchain-based cross-domain handover authentication system for Internet of Vehicles, comprising the following modules:

[0079] Parameter initialization module: the trusted authority initializes parameters and generates a public / private key pair;

[0080] Registration module: the roadside unit generates a public / private key pair according to the initialization parameters published by the trusted authority, and requests a public key signature from the trusted authority, and the vehicle generates a chameleon signature according to the chameleon function specified by the trusted authority and registers with the trusted authority;

[0081] Cross-domain handover authentication module: the vehicle and the target roadside unit realize identity authentication between each other through the signature generated by the trusted authority for the roadside unit and the chameleon signature written in the blockchain by the trusted authority for the vehicle;

[0082] Group session key distribution module: after completing the identity authentication, the vehicle generates a group session key using the polynomial coefficients generated by the trusted authority.

[0083] The blockchain-based cross-domain handover authentication system for Internet of Vehicles described above, in the parameter initialization module, the following operations are performed:

[0084] 11) The trusted authority selects a large prime number p, defines an elliptic curve E(F p ) on a finite field F p ) and a generator P of order q on the elliptic curve E(F p ), q is also a large prime number; all points on the elliptic curve E(F p ) and the infinite point constitute an additive group

[0085] 12) The trusted authority selects a random number one As a private key, and kept secret, the corresponding public key is P pub = s · P denotes the set [1, 2, …, q-1];

[0086] 13) Select a secure one-way hash function h i , i = 0, 1, 2, 3, 4, → denotes the mapping; * denotes the number of bits of the hash mapping;

[0087]

[0088]

[0089]

[0090]

[0091]

[0092] 14) The trusted agency places the system parameters params = {p, q, E(F p ), P, P pub , h i} in the blockchain for public disclosure.

[0093] The foregoing blockchain-based Internet of Vehicles cross-domain switching authentication system, in the registration module, performs the following operations:

[0094] 21) The roadside unit and the vehicle obtain the two types of information of the system parameters params and the chameleon hash function designated for the vehicle to use, which are published by the trusted agency, from the blockchain before identity registration;

[0095] 22) The roadside unit selects a random number two sk rsu as a private key, the corresponding public key is pk rsu = sk rsu P, and sends the information {RID rsu , pk rsu} to the trusted agency for registration through a trusted channel or a pre-set session key when the roadside unit is deployed, RID rsu being the real identity of the roadside unit RSU;

[0096] 23) After receiving the request information, the trusted agency generates a signature for the identity and public key of the roadside unit RSU using the Schnorr signature algorithm, selects a random number three , and calculates the process variable point U = uP. The first signature information sig = s · h0(RID rsu , pk rsu , U) + u, h0 being a hash function for the information {RID rsu , pkrsu Hash function of U;

[0097] 24) Roadside unit periodically broadcasts information in the domain {rsu, RID rsu pk rsu , U, sig}, the vehicle authenticates the roadside unit identity through the broadcast information, and the rsu identification indicates that the corresponding information is the identity signature broadcast information of the roadside unit;

[0098] 25) The vehicle calculates the chameleon signature using the specified chameleon hash function, and the vehicle selects a random number four x i , a random number five s i , and a random number six Calculation:

[0099] Y i = x i P

[0100] r i * = h1(RID i , s i )

[0101]

[0102]

[0103] At this time, the collision private key of the chameleon hash function of the vehicle is sk CH = (k i , x i ), and the corresponding hash public key is pk CH = (P, Y i ); RID i is the real identity of the vehicle V i , CH i is the chameleon hash value calculated by the vehicle V i , represents that the chameleon hash value is calculated by signing the random number six using the hash public key; Y i , r i * , k i are intermediate process variables;

[0104] 26) The vehicle selects a random number seven Calculate the process variable D i = d i O and the pseudonym PID i information of the vehicle V i Information:

[0105]

[0106]

[0107] hash = h3(RID i , d i , CH i , T Curr )

[0108] wherein T Curr represents the current time stamp, represents XOR, Q i is the result of XOR, and hash is the hash result of the information {RID i , d i , CH i , T Curr};

[0109] 27) The vehicle sends the registration request information REQ to the trusted authority through the secure channel:

[0110] REQ = {PID i , CH i , D i , Q i , hash, T Curr};

[0111] 28) After receiving the vehicle request information REQ, the trusted authority verifies the time stamp T Curr in it. The trusted authority takes the current time stamp T Curr ' and verifies whether the inequality |T Curr ' - T Curr | ≤ ΔT is true. If true, it calculates:

[0112]

[0113]

[0114] hash' = h3(RID i ', d i ', CH i ', T Curr )

[0115] The trusted authority calculates the identity RID i ' of the vehicle, the updated value d i ' of the random number and the updated value hash' of the hash value from the received information, and compares them with the received hash value. If they are equal, it continues to step 29). If not, it rejects the corresponding vehicle request. ΔT represents a pre-set threshold value.

[0116] 29) After the trusted agency completes the calculation and verification of steps 21) - 28), it creates a transaction, writes the information data data i = {CH i , T exp} into a block, T exp representing the expiration time of the vehicle registration;

[0117] The information {RID i , d i , CH i} is signed using the ECDSA signature algorithm to obtain second signature information σ = Sig s (h3(RID i , CH i , d i )), and the second signature information σ is placed in the block, with the identification of the block being TXID i , and Sig s () representing the ECDSA signature algorithm;

[0118] The trusted agency writes the information {TXID i , RID i , CH i , d i} into the server, and the access rights of the information {TXID i , RID i , CH i , d i} are only enjoyed by the trusted agency. The trusted agency calculates the symmetric encryption key using the random number d i , encrypts {TXID i , σ, h4(TXID i , σ, T exp )} into cip, and transmits it to the vehicle V i , that is:

[0119]

[0120] The trusted agency sends the response information RES = {PID i , cip} to the vehicle, representing the encryption of the information using the symmetric key H1(d i );

[0121] 210) After the vehicle receives the response information RES sent by the trusted agency, it determines whether it is the response information sent to itself by using the second signature information σ and the real identity PID i of the vehicle V i , and uses the identification TXID iThe specified block is found, the second signature information σ is indexed to the corresponding entry in the block to obtain the chameleon hash value CH i , and compared with the locally stored chameleon hash value. If they are consistent, the vehicle confirms that the chameleon hash value CH sent by the vehicle is a trusted agency through the second signature information σ in the block i If the vehicle's own chameleon hash value CH is not found i , the vehicle re-sends the registration request information to the trusted agency.

[0122] The foregoing blockchain-based vehicle networking cross-domain switching authentication system, in the cross-domain switching authentication module, performs the following operations:

[0123] 31) After the vehicle receives the information broadcast by the roadside unit, the vehicle learns that the information is identity signature information generated by the trusted agency for the roadside unit through the roadside unit identifier, calculates the following formula to verify the identity of the roadside unit, and if the equation is established, the vehicle completes one-way identity authentication of the roadside unit,

[0124] sig·P = h0(RID rsu ,pk rsu ,U)P pub +U;

[0125] 32) After the vehicle completes one-way authentication of the roadside unit, a random number eight is calculated:

[0126] B i = a i P

[0127] A i = a i Y i

[0128]

[0129] γ i = h3(PID i ,A i ,TXID i ,σ,T Curr )

[0130] Let r i = a i γ i , then the corresponding m i = k i -r i x i , r i , γ i are process variables;

[0131] Request information HOREQ = {HO, PID i ,m i ,A i ,B i ,RT i ,T Curr} is sent to the road unit, HO indicates that the request information is a handover request; COM() and DeCOM() respectively represent the reversible lossless compression algorithm and the decompression algorithm;

[0132] 33) After the road unit receives the request information, it learns that the request information is a cross-domain handover authentication request through the handover request HO, first verifies whether the timestamp |T Curr ′-T Curr | is valid, if valid, then calculate:

[0133]

[0134] 34) The road unit obtains the data information data i ={CH i ,T i} in the specified block through the identification TXID exxp of the block and the second signature information σ index, reads the expiration time T exp of the vehicle registration, judges whether the registration time is expired, if not, uses the vehicle violation list maintained by the trusted agency to judge whether the corresponding vehicle has a malicious behavior record, when there is no malicious behavior record, judges whether the equation m i P+h3(PID i ,A i ,TXID i ,σ,T i )A Curr =CH i is established through the read chameleon hash value CH i , if the equation is established, the road unit successfully verifies the vehicle identity;

[0135] 35) After the road unit successfully completes the authentication of the vehicle, the road unit and the vehicle realize mutual authentication, the road unit submits a set of information of a group of vehicles {V1,…,V t} in the domain to the trusted agency Application group session key {{PID1,TXID1},…,{PID t ,TXID t}} t represents the number of a group of vehicles.

[0136] The foregoing blockchain-based vehicle networking cross-domain handover authentication method, in the group session key distribution module, performs the following operations:

[0137] 41) The trusted authority judges the legality of the vehicle which applies for the group session key through the information submitted by the roadside unit, if the vehicle is legal, uses the vehicle V i The pre-stored secret value random number seven d i Calculate the polynomial f(x):

[0138] ρ i = h1(PID i , h2(sD i ))

[0139]

[0140] GSKACK = H4(e, T curr )

[0141] The trusted authority broadcasts the broadcast information GSKRESP in the corresponding domain through the roadside unit, GSKRESP = {gsk, a t-1 , …, a0, GSKACK, T curr}; wherein the random number nine ρ i is an intermediate process variable, {a0, …, a t-1} represents the coefficients of the polynomial, ∏ represents multiplication, mod q represents taking the modulus of q;

[0142] 42) The vehicle V i After receiving the broadcast information GSKRESP, it is learned through the identifier gsk that the closing information is about group key distribution, and the timestamp |T Curr '- T Curr | ≤ ΔT, if the inequality is established, the following polynomial is calculated:

[0143] f(x)' = x t + a t-1 x t-1 + … + a1x + a0

[0144] ρ i ' = h1(PID i , h2(d i P pub ))

[0145] e' = f(ρ i ')'

[0146] f(x)' represents the polynomial calculated by the vehicle, ρ i ' represents the result calculated by using the h1 hash function on the information {PID i , h2(d i P pub )};

[0147] The vehicle determines whether the following equation is true:

[0148] H4(e′,T curr )=H4(e,T curr )

[0149] If the equation holds, the key seed e′ is received and the group session key is calculated; if the equation does not hold, the vehicle continues to collect broadcast information or re-requests it from the roadside unit.

[0150] The present invention achieves beneficial effects: By incorporating blockchain technology and leveraging its distributed and tamper-proof nature, this invention achieves distributed trust and cross-domain information sharing across multiple domains. Vehicles and roadside units authenticate their identities solely through pre-defined chameleon signatures within the blockchain, eliminating the need for trusted institutions and preventing single points of failure from impacting the system. To ensure anonymity and traceability, this invention implements anonymous, privacy-preserving authentication. Furthermore, trusted institutions can trace the identity of offending vehicles using pseudonyms and chameleon signatures.

[0151] In addition, the invention uses polynomial technology to complete the sharing of group session keys between vehicles in the domain, reduces the interaction of repeated information through group session keys, and the distribution of group session keys can achieve forward and backward security guarantees. BRIEF DESCRIPTION OF THE DRAWINGS

[0152] Figure 1 This is a flowchart of the blockchain-based vehicle network cross-domain handover authentication method of the present invention;

[0153] Figure 2 This is the architecture diagram of the blockchain-based Internet of Vehicles cross-domain switching authentication system of the present invention. DETAILED DESCRIPTION

[0154] like Figure 1 As shown, the implementation process of the present invention is that the trusted agency initializes the system parameters, generates the system public and private keys, and specifies the chameleon hash function used by the vehicle. When the roadside unit is deployed on the roadside, it will generate its own public and private keys, and apply to the trusted agency for the public key and identity signature information for the vehicles in the domain to verify that their identities are authentic and valid. The vehicle uses the chameleon function specified by the trusted agency to generate its own chameleon signature and requests the trusted agency to write the signature into the blockchain. When the vehicle and the roadside unit authenticate each other, it is achieved by the signature generated by the trusted agency and the chameleon signature written into the blockchain by the trusted agency. After the roadside unit confirms the legitimacy of the vehicle's identity, it sends it together with a group of legitimate vehicles to the trusted agency, and the trusted agency generates a polynomial. The vehicle obtains the seed of the group session key through the polynomial and calculates the group session key. The specific entity architecture diagram is shown as follows Figure 2 shown.

[0155] A blockchain-based vehicle networking cross-domain handover authentication method, comprising the following steps:

[0156] 1) In the system initialization phase, the trusted agency initializes parameters and generates a public / private key pair, and the specific steps are as follows:

[0157] 11) The trusted agency selects a large prime number p, defines an elliptic curve E(F p ) on a finite field F p ) and a generator P of order q on the elliptic curve E(F p ), q is also a large prime number; all points on the elliptic curve E(F p ) and the infinite point constitute an additive group

[0158] 12) The trusted agency selects a random number s as a private key and secretly saves it, and the corresponding public key is P pub =s·P; denotes the set [1,2,…,q-1];

[0159] 13) Select a secure one-way hash function h i , i=0,1,2,3,4, → denotes the mapping; * denotes the bit number of the hash mapping, which is different according to different hash functions; the data in {} is treated as a whole, and the data in the subsequent brackets is also the same:

[0160]

[0161]

[0162]

[0163]

[0164]

[0165] 14) The trusted agency places the system parameters params={p,q,E(F p ),P,P pub ,h i} in the blockchain for public disclosure.

[0166] 2) In the registration phase, the roadside unit generates a public / private key pair and requests the trusted agency for a public key signature, and the vehicle generates a chameleon signature and registers with the trusted agency, and the specific steps are as follows:

[0167] 21) The roadside unit and the vehicle obtain the system parameters params and the two types of information of the chameleon hash function specified by the trusted agency for the vehicle to use from the blockchain before identity registration;

[0168] 22) Roadside unit selects random number two sk rsu As a private key, The corresponding public key is pk rsu = sk rsu P, the information {RID rsu , pk rsu} is sent to the trusted agency for registration through a trusted channel or a preset session key when the roadside unit is deployed, RID rsu is the real identity of the roadside unit RSU;

[0169] 23) After receiving the request information, the trusted agency generates a signature for the identity and public key of the roadside unit RSU using the Schnorr signature algorithm, and selects random number three The calculation process variable point U = uP, the first signature information sig = s·h0(RID rsu , pk rsu , U) + u, h0 is a hash function for the information {RID rsu , pk rsu , U}, h i are different hash functions used for different forms of information, and the lengths of their hash values are different;

[0170] 24) The roadside unit periodically broadcasts the information {rsu, RID rsu , pk rsu , U, sig} in the domain, and the vehicle authenticates the roadside unit identity through the broadcast information, and rsu indicates that the corresponding information is the identity signature broadcast information of the roadside unit;

[0171] 25) The vehicle calculates the chameleon signature using the designated chameleon hash function, and the vehicle selects random number four x i , random number five s i , random number six Calculation:

[0172] Y i = x i P

[0173] r i * = h1(RID i , s i )

[0174]

[0175]

[0176] At this time, the collision private key of the chameleon hash function of the vehicle is sk CH= (k i ,x i ), the corresponding hash public key is pk CH = (P, Y i ); RID i is the real identity of the vehicle V i , CH i is the chameleon hash value calculated by the vehicle V i , represents that the chameleon hash value is calculated by signing the random number six using the hash public key; Y i , r i * , k i are all intermediate process variables;

[0177] 26) The vehicle selects a random number seven and calculates the process variable D i = d i P and the pseudonym PID i information of the vehicle V i :

[0178]

[0179]

[0180] hash = h3 (RID i , d i , CH i , T Curr )

[0181] Wherein, T Curr represents the current time stamp, represents XOR, Q i is the result of XOR, and hash is the hash result of the information {RID i , d i , CH i , T Curr};

[0182] 27) The vehicle sends the registration request information REQ to the trusted agency through the secure channel:

[0183] REQ = {PID i , CH i , D i , Q i , hash, T Curr};

[0184] 28) After receiving the vehicle request information REQ, the trusted agency verifies the time stamp T Curr in it, and the trusted agency takes the current time stamp TCurr |T Curr |T Curr |≤ΔT, if yes, then calculate:

[0185]

[0186]

[0187] hash' = h3(RID i , d i , CH i , T Curr )

[0188] The trusted agency calculates the identity RID i of the vehicle, the random number d i and the hash value hash' from the received information, and compares them with the received hash value, if equal, then continue to step 29), otherwise reject the corresponding vehicle request; ΔT represents a pre-set threshold value;

[0189] 29) After the trusted agency completes the calculation and verification of steps 21) to 28), it creates a transaction and writes the information data data i = {CH i , T exp} into the block, T exp represents the expiration time of the vehicle registration;

[0190] The information {RID i , d i , CH i} is signed using the ECDSA signature algorithm to obtain the second signature information σ = Sig s (h3(RID i , CH i , d i )), and the second signature information σ is placed in the block, and the identification of the block is TXID i , Sig s () represents the ECDSA signature algorithm;

[0191] The trusted agency writes the information {TXID i , RID i , CH i , d i} into the server, and the access permission of the information {TXID i , RID i , CH i , d i} is only available to the trusted agency, and the trusted agency uses the random number d iThe symmetric encryption key is calculated, and {TXID i ,σ,h4(TXID i ,σ,T exp )} is encrypted as cip and transmitted to the vehicle V i , that is:

[0192]

[0193] The trusted agency sends the response information RES = {PID i , cip} to the vehicle, which indicates that the information is encrypted using the symmetric key H1(d i );

[0194] 210) After receiving the response information RES sent by the trusted agency, the vehicle judges whether the response information is sent to itself by using the second signature information σ and the real identity PID i of the vehicle V i , finds the specified block by using the identification TXID i of the block, indexes to the corresponding entry in the block by using the second signature information σ, obtains the chameleon hash value CH i , and compares it with the locally stored chameleon hash value. If they are consistent, the vehicle confirms that the chameleon hash value CH i written in the block by the trusted agency is the chameleon hash value CH i of the vehicle sent by the trusted agency by using the second signature information σ in the block; if the chameleon hash value CH i of the vehicle is not found, the vehicle re-sends the registration request information to the trusted agency.

[0195] 3) In the cross-domain switching authentication stage, the vehicle and the target road unit realize mutual authentication of identities, and the specific steps include:

[0196] 31) After receiving the information broadcast by the road unit, the vehicle learns that the information is the identity signature information generated by the trusted agency for the road unit by using the identification of the road unit, verifies the identity of the road unit by calculating the following formula, and if the equation is established, the vehicle completes the one-way identity authentication of the road unit,

[0197] sig·P = h0(RID rsu , pk rsu , U)P pub + U;

[0198] 32) After the vehicle completes the one-way authentication of the road unit, a random number eight is selected, and the following calculation is performed:

[0199] B i = a i P

[0200] A i= a i Y i

[0201]

[0202] γ i = h3(PID i , A i , TXID i , σ, Y Curr )

[0203] Let r i = a i γ i , then the corresponding m i = k i - r i x i , r i , γ i are all process variables;

[0204] Send the request information HOREQ = {HO, PID i , m i , A i , B i , RT i , T Curr} to the roadside unit, HO indicates that the request information is a handover request, for the reversible lossless compression algorithm of the above-mentioned XOR operation, select the compression algorithm based on Huffman coding, or also XOR the two parts to be XORed by padding bits 0 to expand the data to the same number of bits, and then transmit the result; COM() and DeCOM() represent reversible lossless compression algorithm and decompression algorithm respectively;

[0205] 33) After the roadside unit receives the request information, it learns from the handover request HO that the request information is a cross-domain handover authentication request, first verifies whether the time stamp |T Curr ' * T Curr | is valid, if valid, calculate:

[0206]

[0207] T Curr ' is the time stamp of the roadside unit at this moment;

[0208] 34) The roadside unit obtains the data information data i = {CH i , T exp} in the specified block through the identification TXID i of the block and the second signature information σ index, reads the expiration time T exp of the vehicle registration, determine whether the registration time has expired. If not, use the vehicle violation list maintained by the trusted organization to determine whether the corresponding vehicle has a malicious behavior record. When there is no malicious behavior record, the chameleon hash value CH is read. i Determine equation m i P+h3(PID i ,A i ,TXID i ,σ,T Curr )A i =CH i Is it true? If the equation is true, the roadside unit successfully verifies the vehicle identity; otherwise, the roadside unit fails to authenticate the vehicle and rejects the corresponding request;

[0209] 35) After the roadside unit successfully completes the authentication of the vehicle, the roadside unit and the vehicle realize mutual authentication, and the roadside unit submits a set of legal and valid vehicles in the domain to the trusted institution.

[0210] {V1,…,V t} information {{PID1,TXID1},…,{PID t ,TXID t}}Apply for a group session key, where t represents the number of vehicles in a group.

[0211] 4) During the group session key distribution phase, the vehicle generates the group session key using the polynomial coefficients generated by the trusted authority. The specific steps include:

[0212] 41) The trusted institution uses the information submitted by the roadside unit to determine the legitimacy of a group of vehicles that apply for the group session key. If the vehicle is legal, the vehicle V i Pre-stored secret value random number seven d i Evaluate the polynomial f(x):

[0213] ρ i =h1(PID i ,h2(sD i ))

[0214]

[0215] GSKACK=H4(e,T curr )

[0216] The trusted institution broadcasts the broadcast information GSKRESP through the roadside unit in the corresponding domain, GSKRESP = {gsk, a t--1 ,…,a0,GSKACK,T curr};

[0217] Among them, the random number nine ρ iare intermediate process variables, {a0,..., a t-1} represent the coefficients of the polynomial, ∏ represents multiplication, and mod q represents modulo q;

[0218] 42) vehicle V i After receiving the broadcast information GSKRESP, it is known from the identifier gsk that the closing information is about group key distribution, and the time stamp |T Curr ′-T Curr |≤ΔT, if the inequality is true, then the following polynomial is calculated:

[0219] f(x)′=x t +a t-1 x t-1 +…+a1x+a0

[0220] ρ i ′=h1(PID i ,h2(d i P pub ))

[0221] e′=f(ρ i ′)′

[0222] f(x)′ represents the polynomial calculated by the vehicle, ρ i ′ represents the result calculated using the h1 hash function on the information {PID i ,h2(d i P pub )};

[0223] The vehicle determines whether the following equation is true,

[0224] H4(e′,T curr )=H4(e,T curr )

[0225] If the equation is true, the key seed e′ is received, and the group session key is calculated; if the equation is not true, the vehicle continues to collect broadcast information or re-requests from the roadside unit.

[0226] A blockchain-based authentication system for cross-domain switching of Internet of Vehicles, comprising the following modules:

[0227] Parameter initialization module: the trusted authority initializes the parameters and generates a public key / private key pair;

[0228] Registration module: the roadside unit generates a public / private key pair according to the initialization parameters issued by the trusted authority, and requests a public key signature from the trusted authority, and the vehicle generates a chameleon signature according to the chameleon function specified by the trusted authority and registers with the trusted authority;

[0229] Cross-domain handover authentication module: the vehicle and the target road side unit realize identity authentication between each other through the signature generated by the trusted agency for the road side unit, and the chameleon signature written in the blockchain by the trusted agency for the vehicle.

[0230] Group session key distribution module: after completing identity authentication, the vehicle generates a group session key using the polynomial coefficients generated by the trusted agency.

[0231] In the parameter initialization module, the following operations are performed:

[0232] 11) The trusted agency selects a large prime number p, defines an elliptic curve E(F p ) over a finite field F p ) and a generator P of order q on the elliptic curve E(F p ), q is also a large prime number; all points on the elliptic curve E(F p ) and the infinite point constitute an additive group

[0233] 12) The trusted agency selects a random number s as a private key and keeps it secret, and the corresponding public key is P pub = s·P; denotes the set [1, 2, …, q-1];

[0234] 13) Select a secure one-way hash function h i , i = 0, 1, 2, 3, 4, → denotes the mapping; * denotes the number of bits of the hash mapping;

[0235]

[0236]

[0237]

[0238]

[0239]

[0240] 14) The trusted agency places the system parameters params = {p, q, E(F p ), P, P pub h i} in the blockchain.

[0241] In the registration module, the following operations are performed:

[0242] 21) Before identity registration, the road side unit and the vehicle obtain two types of information from the blockchain: the system parameters params published by the trusted agency and the chameleon hash function used by the designated vehicle.

[0243] 22) Roadside unit selects random number two sk rsu As a private key, The corresponding public key is pk rsu = sk rsu P, the information {RID rsu , pk rsu} is sent to the trusted agency for registration through a trusted channel or a preset session key when the roadside unit is deployed, RID rsu is the real identity of the roadside unit RSU;

[0244] 23) After receiving the request information, the trusted agency generates a signature for the identity and public key of the roadside unit RSU using the Schnorr signature algorithm, and selects random number three The calculation process variable point U = uP, the first signature information sig = s·h0(RID rsu , pk rsu , U) + u, h0 is a hash function for the information {RID rsu , pk rsu , U};

[0245] 24) The roadside unit periodically broadcasts the information {rsu, RID rsu , pk rsu , U, sig} in the domain, and the vehicle authenticates the roadside unit identity through the broadcast information, rsu identifies the corresponding information as the identity signature broadcast information of the roadside unit;

[0246] 25) The vehicle calculates the chameleon signature using the designated chameleon hash function, and the vehicle selects random number four x i , random number five s i , random number six Calculation:

[0247] Y i = x i P

[0248] r i * = h1(RID i , s i )

[0249]

[0250]

[0251] At this time, the collision private key of the chameleon hash function of the vehicle is sk CH = (k i , x i ), and the corresponding hash public key is pkCH = (P, Y i ); RID i is the real identity of the vehicle V i , CH i is the chameleon hash value calculated by the vehicle V i , represents the calculation of the chameleon hash value by signing the random number six with the hash public key; Y i , r i * , k i are all intermediate process variables;

[0252] 26) The vehicle selects a random number seven and calculates the process variable D i = d i O and the pseudonym PID i information of the vehicle V i :

[0253]

[0254]

[0255] hash = h3(RID i , d i , CH i , T Curr )

[0256] wherein T Curr represents the current time stamp, represents XOR, Q i is the result of XOR, and hash is the hash result of the information {RID i , d i , CH i , T Curr};

[0257] 27) The vehicle sends the registration request information REQ to the trusted agency through a secure channel:

[0258] REQ = {PID i , CH i , D i , Q i , hash, T Curr};

[0259] 28) After receiving the vehicle request information REQ, the trusted agency verifies the time stamp T Curr in it, the trusted agency takes the current time stamp T Curr ', and verifies the inequality |T Curr '- T Curr|≤ΔT, if yes, then calculate:

[0260]

[0261]

[0262] hash' = h3(RID i , d i , CH i , T Curr )

[0263] The trusted agency calculates the identity RID i of the vehicle, the random number d i and the hash value hash' from the received information, and compares them with the received hash value, if equal, then continue to step 29), otherwise reject the corresponding vehicle request; ΔT represents a pre-set threshold value;

[0264] 29) After the trusted agency completes the calculation and verification of steps 21) to 28), it creates a transaction, writes the information data data i = {CH i , T exp} into the block, T exp represents the expiration time of the vehicle registration;

[0265] The information {RID i , d i , CH i} is signed using the ECDSA signature algorithm to obtain the second signature information σ = Sig s (h3(RID i , CH i , d i )), and the second signature information σ is placed in the block, and the identification of the block is TXID i , and Sig s () represents the ECDSA signature algorithm;

[0266] The trusted agency writes the information {TXID i , RID i , CH i , d i} into the server, and the access permission of the information {TXID i , RID i , CH i , d i} is only available to the trusted agency, and the trusted agency calculates the symmetric encryption key using the random number d i , and {TXID i , σ, h4(TXIDi ,σ,T exp )} is encrypted as cip and transmitted to the vehicle V i , that is,

[0267]

[0268] The trusted agency sends the response information RES = {PID i , cip} to the vehicle, represents that the information is encrypted using the symmetric key H1(d i );

[0269] 210) After receiving the response information RES sent by the trusted agency, the vehicle judges whether it is the response information sent to itself by using the second signature information σ and the real identity PID i of the vehicle V i , searches for the specified block using the identification TXID i of the block, indexes to the corresponding entry in the block using the second signature information σ, obtains the chameleon hash value CH i , and compares it with the locally stored chameleon hash value. If they are consistent, the vehicle confirms that the chameleon hash value CH i written into the block chain by the trusted agency is the chameleon hash value sent by the vehicle in the block; if the chameleon hash value CH i of the vehicle itself is not found, the vehicle re-sends the registration request information to the trusted agency.

[0270] In the cross-domain switching authentication module, the following operations are performed:

[0271] 31) After receiving the information broadcast by the roadside unit, the vehicle learns that the information is the identity signature information generated by the trusted agency for the roadside unit by using the identification of the roadside unit, verifies the identity of the roadside unit by calculating the following formula, and if the equation is established, the vehicle completes the one-way identity authentication of the roadside unit,

[0272] sig·P = h0(RID rsu , pk rsu , U)P pub + U;

[0273] 32) After the vehicle completes the one-way authentication of the roadside unit, a random number eight is selected, and the following calculation is performed:

[0274] B i = a i P

[0275] A i = a i Y i

[0276]

[0277] γ i = h3(PID i , A i , TXID i , σ, T Curr )

[0278] Let r i = a i γ i , then the corresponding m i = k i -r i x i , r i , γ i are both process variables;

[0279] Send the request information HOREQ = {HO, PID i , m i , A i , B i , RT i , T Curr} to the road unit, HO indicates that the request information is a handover request; COM() and DeCOM() respectively represent the reversible lossless compression algorithm and the decompression algorithm;

[0280] 33) The road unit receives the request information, and learns from the handover request HO that the request information is a cross-domain handover authentication request. First, verify whether the time stamp |T Curr '-T Curr |≤ΔT is valid, if valid, then calculate:

[0281]

[0282] 34) The road unit obtains the data information data i = {CH i , T exp} in the specified block through the identification TXID i and the second signature information σ index, reads the expiration time T exp of the vehicle registration, judges whether the registration time is expired, if not, judges whether the corresponding vehicle has a malicious behavior record by using the vehicle violation list maintained by the trusted agency, when there is no malicious behavior record, judges the equation m i P+h3(PID i , A i , TXID i , σ, T Curr )A i = CH i through the read chameleon hash value CH i .Is it true? If the equation is true, the roadside unit successfully verifies the vehicle identity;

[0283] 35) After the roadside unit successfully completes the authentication of the vehicle, the roadside unit and the vehicle realize mutual authentication, and the roadside unit submits a set of legal and valid vehicles {V1,…,V t} information {{PID1,TXID1},…,{PID t ,TXID t}}Apply for a group session key, where t represents the number of vehicles in a group.

[0284] In the group session key distribution module, do the following:

[0285] 41) The trusted institution uses the information submitted by the roadside unit to determine the legitimacy of a group of vehicles that apply for the group session key. If the vehicle is legal, the vehicle V i Pre-stored secret value random number seven d i Evaluate the polynomial f(x):

[0286] ρ i =h1(PID i ,h2(sD i ))

[0287]

[0288] GSKACK=H4(e,T curr )

[0289] The trusted institution broadcasts the broadcast information GSKRESP through the roadside unit in the corresponding domain, GSKRESP = {gsk, a t-1 ,…,a0,GSKACK,T curr};

[0290] Among them, the random number nine ρ i are intermediate process variables, {a0,…,a t-1} represents the coefficient of the polynomial, ∏ represents cumulative multiplication, and modq represents modulo q;

[0291] 42) Vehicle V i After receiving the broadcast message GSKRESP, it is known through the identifier gsk that the closing message is about group key distribution, and the timestamp |T is verified. Curr ′-T Curr |≤ΔT, if the inequality holds, calculate the following polynomial:

[0292] f(x)′=x t +a t-1 x t-1 +…+a1x+a0

[0293] p i ' = h1(PID i , h2(d i P pub ))

[0294] e' = f(p i ')'

[0295] f(x)' represents a polynomial computed by the vehicle, p i ' represents a result computed using the h1 hash function on the information {PID i , h2(d i P pub )};

[0296] the vehicle determines whether the following equation is true,

[0297] H4(e ′ , T curr ) = H4(e, T curr )

[0298] If the equation is true, the vehicle receives the key seed e ′ and computes the group session key; if the equation is not true, the vehicle continues to collect broadcast information or requests from the roadside unit.

[0299] Those skilled in the art will appreciate that embodiments of the present application can be readily used as a method, apparatus, or computer program product. Accordingly, the present application can take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present application can take the form of a computer program product on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROMs, optical storage devices, etc.) embodying computer readable program code.

[0300] The present application is described in reference to the flowchart illustrations and / or block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the application. It will be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart illustrations and / or block diagrams block or blocks. Figure 1 The flowchart illustrations and / or block diagrams Figure 1 The flowchart illustrations and / or block diagrams

[0301] These computer program instructions can also be stored in a computer readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer readable memory produce an article of manufacture including instructions which implement the flow Figure 1 The flow or flows and / or blocks Figure 1 The flow or flows and / or blocks

[0302] These computer program instructions can also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions that execute on the computer or other programmable apparatus provide steps for implementing the flow Figure 1 The flow or flows and / or blocks Figure 1 The flow or flows and / or blocks

[0303] The above merely provides an embodiment of the present application, but is not intended to limit the present application, and any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present application shall fall within the scope of the claims of the present application.

Claims

1.A blockchain-based authentication method for cross-domain handover in vehicle-to-everything (V2X), characterized in that, The method comprises the following steps: 1) The trusted agency initializes parameters and generates a public key / private key pair; 2) The roadside unit generates a public / private key pair according to the initialization parameters published by the trusted agency, and requests the trusted agency for a public key signature, the vehicle calculates a collision private key, a hash public key and a chameleon signature according to a chameleon hash function specified by the trusted agency, and sends the calculated pseudonym, chameleon signature and random number to the trusted agency for registration through a secure channel; After receiving the registration information of the vehicle, the trusted agency creates a transaction, writes the chameleon signature into the blockchain, signs the transaction, and sends the address and signature information of the transaction to the vehicle; 3) The vehicle and the target roadside unit realize identity authentication between each other through the signature generated by the trusted agency for the roadside unit and the chameleon signature written into the blockchain by the trusted agency for the vehicle; 4) After completing the identity authentication, the vehicle generates a group session key using the polynomial coefficients generated by the trusted agency. 2.The blockchain-based authentication method for cross-domain handover in V2X according to claim 1, wherein, In step 1), the specific steps are as follows: 11) Trusted authority chooses large prime , elliptic curve over finite field defined over finite field and generator of order one over elliptic curve , also large prime; Elliptic curve All points on the ellipse and the point at infinity Composing an additive group ; 12) Trusted authority selects random number a As a private key, and kept secret, the corresponding public key is ; denotes the set [1,2,… -1]; 13) Select a secure one-way hash function , , denotes a mapping; * denotes the number of bits of the hash mapping; , , , , ; 14) Trusted authority puts system parameters in the blockchain publicly. 3.The blockchain-based authentication method for cross-domain handover in V2X according to claim 2, characterized in that, In step 2), the specific steps are as follows: 21) Before identity registration, the roadside unit and the vehicle obtain two types of information, system parameters params published by the trusted agency and a chameleon hash function used by the vehicle, from the blockchain; 22) Roadside unit selects random number 2 As a private key, , the corresponding public key is , through a trusted channel or a session key preset when deploying the roadside unit Sent to a trusted institution for registration, The true identity of the roadside unit RSU; 23) After receiving the request information, the trusted agency generates a signature for the identity and public key of the roadside unit RSU using the Schnorr signature algorithm, selects a random number three , calculates the process variable point , the first signature information , is a hash function for information ; 24) Roadside units periodically broadcast information within a domain The vehicle authenticates the roadside unit identity by the broadcast information, the rsu identity indicates that the corresponding information is the identity signature broadcast information of the roadside unit; 25) The vehicle computes the chameleon signature using the designated chameleon hash function, the vehicle chooses a random number four , random number five , random number six , , computes: ; ; ; ; At this time, the collision private key of the chameleon hash function of the vehicle is The corresponding hash public key is ; The real identity of the vehicle , The chameleon hash value calculated by the vehicle , Indicates that the chameleon hash value is calculated by signing the random number six Using the hash public key; , , They are all intermediate process variables; 26) vehicle selects random number seven , computing process variable and vehicle pseudonym information: ; ; ; wherein, represents a current timestamp, represents an exclusive OR, is a result of the exclusive OR, is a hash result of the information ; 27) The vehicle sends registration request information to the trusted authority through a secure channel : ; 28) Trusted authority receives vehicle request information Then, verifies the time stamp in it The trusted authority takes the current time stamp Verifies the inequality Is true, if true, then calculates: ; ; ; The trusted authority computes the identity of the vehicle from the received information , a random number , a hash value , and compares it with the received value, and if they are equal, the procedure continues with step 29), otherwise the corresponding vehicle request is rejected; denotes a pre-set threshold value; 29) After completion of steps 21) - 28) calculation and verification by the trusted agency, a transaction is created, writing the information data in the block, representing the expiration time of the vehicle registration; signing information using an ECDSA signature algorithm to obtain second signature information and placing the second signature information in a block, with the identity of the block being , denotes an ECDSA signature algorithm Trusted institutions will Written to the server, and the information The access rights are only enjoyed by trusted institutions, who use the random number Calculate the symmetric encryption key and Encrypted to cip and transmitted to the vehicle ,Right now: ; The trusted authority will respond with information to the vehicle, representing the use of a symmetric key encrypted information; 210) The vehicle receives the response information from the trusted agency Afterwards, the second signature information and the vehicle The true identity Judge whether it is the response information sent to itself, use the identity of the block Find the specified block, use the second signature information Index to the corresponding entry in the block, get the chameleon hash value , and compare with the locally stored chameleon hash value, if consistent, the vehicle passes the second signature information in the block Confirm that the chameleon hash value sent by the vehicle is written into the block chain by the trusted agency ; If the vehicle's own chameleon hash value is not found , the vehicle re-sends the registration request information to the trusted agency. 4.The blockchain-based authentication method for cross-domain handover in V2X according to claim 3, wherein, In step 3), the specific steps include: 31) After receiving the information broadcast by the roadside unit, the vehicle learns that the information is the identity signature information generated by the trusted agency for the roadside unit through the roadside unit identifier, verifies the identity of the roadside unit by calculating the following formula, and if the equation is established, the vehicle completes the one-way identity authentication of the roadside unit, ; 32) After the vehicle completes the one-way authentication of the road side unit, it selects a random number eight , computes: ; ; ; ; Let , then the corresponding , , are process variables; request information to a road side unit, indicates that the request information is a handover request; respectively indicate the reversible lossless compression algorithm and the decompression algorithm; 33) After receiving the request information, the road side unit learns that the request information is a cross-domain handover authentication request through handover request HO, and verifies the timestamp first whether it is valid, and if valid, calculates ; 34) Roadside unit obtains the identification of the block and the second signature information The index obtains the data information in the specified block , reads the expiration time of the vehicle registration , judges whether the registration time is expired, if not, uses the vehicle violation list maintained by the trusted agency to judge whether the corresponding vehicle has a malicious behavior record, when there is no malicious behavior record, judges whether the equation is established by reading the chameleon hash value , if the equation is established, the roadside unit succeeds in verifying the vehicle identity; 35) After the roadside unit successfully completes authentication with the vehicle, the roadside unit and the vehicle implement mutual authentication, and the roadside unit submits a set of information of in-domain legally valid vehicles to the trusted authority Applying a group session key, t represents the number of a group of vehicles. ​ 5.The blockchain-based authentication method for cross-domain handover in V2X according to claim 4, wherein, In step 2) and step 4), the specific steps include: 41) The trusted authority makes a legality judgment on the vehicle that applies for a group session key through the information submitted by the roadside unit, and if the vehicle is legal, uses the vehicle pre-stored secret value random number seven computing polynomial : ; ; ; The trusted authority will broadcast information through roadside units within the respective domain, ; wherein the random number nine , is an intermediate process variable, denotes a coefficient of a polynomial, , denotes taking the modulus of ; 42) Vehicles Upon receiving a broadcast message Afterwards, through the identification Knowing that the closing information is about group key distribution, verify the timestamp , if the inequality holds, then calculate the following polynomial: ; ; ; a polynomial computed by the vehicle, representing information using a result of a hash function computation; The vehicle judges whether the following equation is established, ; If the equation holds, the receiving key seed , the group session key is calculated; if the equation does not hold, the vehicle continues to collect broadcast information or re-requests from the roadside unit. 6.A blockchain-based authentication system for cross-domain handover in vehicle-to-everything (V2X) communication, characterized in that, The method comprises the following modules: Parameter initialization module: the trusted agency initializes parameters and generates a public key / private key pair; Registration module: the roadside unit generates a public / private key pair according to the initialization parameters published by the trusted agency, and requests the trusted agency for a public key signature, the vehicle generates a chameleon signature according to a chameleon function specified by the trusted agency and registers with the trusted agency; Cross-domain switching authentication module: the vehicle and the target roadside unit realize identity authentication between each other through the signature generated by the trusted agency for the roadside unit and the chameleon signature written into the blockchain by the trusted agency for the vehicle; Group session key distribution module: after completing the identity authentication, the vehicle generates a group session key using the polynomial coefficients generated by the trusted agency. 7.The blockchain-based authentication system for cross-domain handover in V2X according to claim 6, wherein, In the parameter initialization module, the following operations are performed: 11) Trusted institutions select large prime numbers , defined in a finite field Elliptic curve on and elliptic curves Previous Generator of order , It is also a large prime number; Elliptic curve All points on the above ellipse and the point at infinity Composition of additive groups ; 12) Trusted authority selects random number a As a private key, and kept secret, the corresponding public key is ; Denote the set [1,2,… -1]; 13) Select a secure one-way hash function , , denotes a mapping; * denotes the number of bits of the hash mapping; , , , , ; 14) Trusted authority puts system parameters in the blockchain publicly. 8.The blockchain-based authentication system for cross-domain handover in V2X according to claim 7, wherein, In the registration module, the following operations are performed: 21) Before identity registration, the roadside unit and the vehicle obtain two types of information, system parameters params published by the trusted agency and a chameleon hash function used by the vehicle, from the blockchain; 22) Roadside unit selects random number two As a private key, The corresponding public key is Through a trusted channel or a pre-set session key when deploying roadside units, information Is sent to the trusted agency for registration, The real identity of the roadside unit RSU; 23) After receiving the request information, the trusted agency generates a signature for the identity and public key of the roadside unit RSU using the Schnorr signature algorithm, selects a random number three , calculates the process variable point , the first signature information , is a hash function for information ; 24) Roadside units periodically broadcast information within a domain The vehicle authenticates the roadside unit identity by the broadcast information, the rsu identity indicates that the corresponding information is the identity signature broadcast information of the roadside unit. 25) The vehicle computes the chameleon signature using the designated chameleon hash function, the vehicle chooses a random number four , random number five , random number six , , computes: ; ; ; ; At this time, the collision private key of the chameleon hash function of the vehicle is The corresponding hash public key is ; The real identity of the vehicle ,The chameleon hash value calculated by the vehicle , Indicates that the chameleon hash value is calculated by signing the random number six Using the hash public key; , , , Are intermediate process variables; 26) vehicle selects random number seven , compute process variable and vehicle pseudonym information: ; ; ; wherein, represents a current timestamp, represents an exclusive OR, is a result of the exclusive OR, is a hash result of the information ; 27) The vehicle sends registration request information to the trusted authority through a secure channel : ; 28) Trusted authority receives vehicle request information Then, the time stamp is verified The trusted authority takes the current time stamp The inequality is verified If it is true, then the following is calculated: ; ; ; The trusted authority computes the identity of the vehicle from the received information a random number update value a hash value update value and compares it with the received value, and if they are equal, the procedure continues with step 29), otherwise the corresponding vehicle request is rejected; denotes a pre-set threshold value; 29) After completion of steps 21) - 28) calculation and verification by the trusted agency, a transaction is created, writing the information data in the block, representing the expiration time of the vehicle registration; signing information using an ECDSA signature algorithm to obtain second signature information and placing the second signature information in a block, with the identity of the block being , , denoting an ECDSA signature algorithm Trusted institutions will Written to the server, and the information The access rights are only enjoyed by trusted institutions, who use the random number Calculate the symmetric encryption key and Encrypted to cip and transmitted to the vehicle ,Right now: ; The trusted authority will respond with information to the vehicle, representing the use of a symmetric key encrypted information; 210) The vehicle receives a response message from a trusted organization After that, through the second signature information and vehicles True identity Determine whether it is a response message sent to yourself, using the block identifier Find the specified block and use the second signature information Index to the corresponding entry in the block and get the chameleon hash value and compare it with the locally stored chameleon hash value. If they are consistent, the vehicle passes the second signature information in the block. Confirm that the Chameleon hash value sent by the vehicle is a trusted organization Written into the blockchain; if the vehicle's own chameleon hash value is not found , the vehicle resends the registration request information to the trusted institution. 9.The blockchain-based authentication system for cross-domain handover in V2X according to claim 8, wherein, In the cross-domain switching authentication module, the following operations are performed: 31) After receiving the information broadcast by the roadside unit, the vehicle learns that the information is the identity signature information generated by the trusted agency for the roadside unit through the roadside unit identifier, verifies the identity of the roadside unit by calculating the following formula, and if the equation is established, the vehicle completes the one-way identity authentication of the roadside unit, ; 32) After the vehicle completes the one-way authentication of the road side unit, it selects a random number eight , computes: ; ; ; ; Let then the corresponding , , are process variables; request information to a road side unit, indicates that the request information is a handover request; respectively indicate the reversible lossless compression algorithm and the decompression algorithm; 33) After receiving the request information, the road side unit learns that the request information is a cross-domain handover authentication request through handover request HO, and verifies the timestamp first whether it is valid, and if valid, calculates ; 34) Roadside unit obtains the identification of the block and the second signature information The index obtains the data information in the specified block , reads the expiration time of the vehicle registration , judges whether the registration time is expired, if not, uses the vehicle violation list maintained by the trusted agency to judge whether the corresponding vehicle has a malicious behavior record, when there is no malicious behavior record, judges whether the equation is established by reading the chameleon hash value , if the equation is established, the roadside unit succeeds in verifying the vehicle identity; 35) After the roadside unit successfully completes the authentication of the vehicle, the roadside unit and the vehicle realize mutual authentication, and the roadside unit submits a set of legal and valid vehicles in the domain to the trusted institution. Information Apply for a group session key, where t represents the number of vehicles in a group. 10.The blockchain-based authentication system for cross-domain handover in V2X according to claim 9, wherein, In the group session key distribution module, the following operations are performed: 41) The trusted authority makes a legality judgment on the vehicle that applies for a group session key through the information submitted by the roadside unit, and if the vehicle is legal, uses the vehicle pre-stored secret value random number seven computing polynomial : ; ; ; The trusted authority will broadcast information broadcasted within the respective domain by roadside units, ; wherein the random number nine , is an intermediate process variable, denotes a coefficient of a polynomial, , denotes taking the modulus of ; 42) Vehicles Upon receiving a broadcast message Afterwards, through the identification Knowing that the closing information is about group key distribution, verify the timestamp , if the inequality holds, then calculate the following polynomial: ; ; ; a polynomial computed by the vehicle, representing information using a result of a hash function computation; The vehicle judges whether the following equation is established, ; If the equation holds, the receiving key seed , the group session key is calculated; if the equation does not hold, the vehicle continues to collect broadcast information or re-requests from the roadside unit.

Citation Information

Patent Citations

  • IOV (Internet of Vehicles) anonymous authentication system with controllable link, and IOV anonymous authentication method

    CN109391631A

  • Internet of vehicles lightweight privacy protection batch authentication method based on PUF (Physical Unclonable Function)

    CN114389812A