Block chain intelligent parking management method based on private information retrieval

By using blockchain's multi-data copy ledger management and information theory private information retrieval technology in intelligent parking systems, the problems of single point failure and over-analysis of parking space information are solved, and the protective query of parking space information and openness and transparency of transactions are realized. , improves the security and stability of the system.

CN119250238AActive Publication Date: 2025-01-03NANJING UNIV OF POSTS & TELECOMM
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
CN202411233350.2
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-09-04
Publication Date
2025-01-03
Estimated Expiration
2044-09-04

AI Technical Summary

Technical Problem

The existing intelligent parking system has safety hazards of single point failure and the "big data killing of old customers" caused by excessive analysis of parking space information, which affects the stability of the system.

Method used

Using blockchain-based multi-data copy ledger management and information theory private information retrieval technology, a blockchain network is built through M parking lot server nodes to realize protective query of parking users' parking space information and avoid excessive analysis of the backend system.

Benefits of technology

It effectively protects the privacy and security of parking users' parking space information, enhances the reliability and integrity of information, prevents tampering and excessive analysis of parking space information, and ensures the openness and transparency of parking transactions.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119250238A_ABST
    Figure CN119250238A_ABST
Patent Text Reader

Abstract

The invention belongs to the technical field of information security, and particularly relates to a private information retrieval-based blockchain intelligent parking management method, which comprises the following three stages: a blockchain network construction stage, including construction of a blockchain network structure based on an alliance chain and network initialization; the parking space information retrieval stage comprises the steps that a private information retrieval protocol is constructed, and a parking user retrieves interested parking space information on a block chain node; and the parking processing stage comprises the processes of reservation of a target parking space based on a retrieval result, entrance parking verification, parking, payment leaving, parking space state recovery and the like, and a transaction completion message is linked. Compared with an existing method, the method has the advantages that data storage is more complete and reliable, and the parking user query information privacy protection effect is good.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention belongs to the field of information security technology, and specifically relates to a blockchain intelligent parking management method based on private information retrieval. Background Art

[0002] With the rapid development of my country's economy, the number of private cars has grown rapidly. The construction of parking facilities lags behind the growth of car ownership, the ownership of parking facilities is unclear, the relevant registration system is insufficient, and there is a lack of effective management, which has caused the problem of "difficult parking" in some cities. Building an intelligent parking system based on wireless sensing and information transmission technology of IoT devices is the main technical solution at present. Zhu Jiajie et al. published an article entitled "Design of Intelligent Parking System Based on IoT" in the Journal of Yellow River Science and Technology College, Vol. 22, No. 8, 2020. In view of the shortcomings of the current traditional underground parking management system, this study proposed a design scheme for an intelligent parking system based on IoT technology. The system consists of multiple functional modules such as parking space navigation, reverse car search and vehicle positioning, which can provide comprehensive services and management, thereby significantly improving parking efficiency. Patent application CN113744557A discloses an intelligent parking system based on IoT technology, which includes a vehicle recording terminal, a central processing module and a service terminal, and can effectively generate location path planning information from the service terminal to the parking space, which helps to improve the intelligent management level of large-scale underground parking lots. However, both types of systems have common problems: reliance on centralized data storage and the risk of single point failure.

[0003] At present, due to the characteristics of distributed storage, encrypted authentication, open and transparent review and anti-tampering mechanism of blockchain system, a safe intelligent parking system based on blockchain technology can be built to avoid single point failure and ensure the reliability and integrity of parking information. In the paper "Design and Development of Intelligent Parking System Based on Blockchain", Li Jiping designed and developed an intelligent parking system based on alliance chain with decentralized storage and mutual supervision by multi-party alliances, which provides a basic solution to solve the data security problems caused by centralized storage and open platforms. Wu Yinghua et al. published the article "Research on Shared Parking Mode and System Based on Blockchain Smart Contract" in the 5th issue of "Data Communication" in 2023. The article proposed a shared parking mode based on blockchain smart contract and designed a corresponding system architecture, aiming to solve the problems of resource conflict, income distribution conflict and three-party anti-repudiation in shared parking, and provided an effective solution. Patent application CN117834154A discloses a blockchain-based intelligent parking authentication method, which uses cryptographic technology to allow drivers to use pseudonyms to sign appointments and generate certificates anonymously, thereby enhancing the anonymity of the driver's identity. However, the above three blockchain-based smart parking systems do not adequately supervise the parking space query information before parking users execute parking transactions; the parking backend system will dynamically increase the parking space price based on information such as the parking space information retrieval frequency of parking users, causing the so-called "big data killing old customers" and other malicious disruptions to the stability of the system. Summary of the invention

[0004] In order to solve the above technical problems, the present invention provides a blockchain intelligent parking management method based on private information retrieval, based on the ledger management method of multiple data copies of the blockchain system, and adopts information theory private information retrieval technology to realize the protection of parking users' query parking space information, so as to avoid the background system from over-analyzing the parking users' parking space query information.

[0005] The blockchain intelligent parking management method based on private information retrieval described in the present invention comprises the following steps:

[0006] Step 1: Use M parking lot server nodes as blockchain network nodes to build a parking lot blockchain network, initialize the parking lot blockchain network, and generate a genesis block;

[0007] Step 2: construct a private information retrieval protocol, and the parking user retrieves the parking space information based on the private information retrieval protocol;

[0008] Step 3: Based on the parking space information retrieval result, the parking user makes a parking space reservation, completes the parking action and updates the parking information.

[0009] Furthermore, in step 1, network initialization is specifically as follows:

[0010] Step 1-1: The parking lot manager registers. The blockchain network generates a public and private key pair for each registered parking lot manager. The formula is:

[0011]

[0012] Among them, ECC is the elliptic curve encryption algorithm, a, b are curve parameters, p is a prime number, d is a random number, They are the public and private keys of the parking lot administrator generated respectively; the public key Storing private keys in the blockchain system It is saved by the parking lot manager and the parking lot server node;

[0013] Step 1-2: The parking lot server node transmits information with the IoT sensing device on the parking space based on near field communication to obtain parking lot information, and broadcasts the parking space information in the blockchain network;

[0014] The format of parking space information is:

[0015] ParSp=<<Ps,Pl> , <state>>

[0016] Where Ps is the index number of the parking lot; Pl is the index number of the parking space in the parking lot; state is the state of Pl, and its value is: -1, 0, 1, which respectively indicates the reserved, occupied, and free states of the parking space Pl;

[0017] Step 1-3: The blockchain network collects the parking space information broadcasted by all parking lot server nodes, and sorts the parking space information according to the order in which the parking lot server nodes correspond to the parking lot managers registered in the system to obtain the parking space information set ParSps, whose information format is:

[0018] ParSps= <ParSp1,ParSp2,…,ParSp n >

[0019] Among them, ParSp1,ParSp2,…,ParSp n Respectively represent the 1st, 2nd, ..., nth parking space information in the parking space information set;

[0020] The blockchain network collects the public keys of all parking lot server nodes to obtain the public key set KPus, whose information format is:

[0021]

[0022] in, They represent parking lot managers A1, A2, ..., A M 's public key;

[0023] The blockchain network packages ParSps and KPus to generate the genesis block GensBlock, whose information format is:

[0024] GensBlock=<KPus,ParSps>

[0025] During the network initialization phase, the state values ​​of all parking spaces in ParSps are 1, which means that all parking spaces are idle.

[0026] Furthermore, step 2 is specifically as follows:

[0027] Step 2-1: Parking users register in the blockchain network. The blockchain network generates a public and private key pair for each registered parking user. The formula is:

[0028]

[0029] Among them, ECC is the elliptic curve encryption algorithm, a′, b′ are curve parameters, p′ is a prime number, d′ is a random number, are the generated public and private keys of the parking user, stored by parking users;

[0030] Step 2-2, the parking user selects K from the M parking lot server nodes in the blockchain network to generate a parking space status query private protocol request set ParPIs;

[0031] Step 2-3: The blockchain network selects verification node V to verify ParPIs based on the set PoS consensus algorithm;

[0032] Step 2-4, the parking lot server node receives the verified parking space status query private protocol request set ParPIsVs, decrypts the elements in ParPIsVs one by one, and queries the parking space information set ParSps in the blockchain based on the decryption result to generate a response message;

[0033] Step 2-5: The parking user receives the signed and encrypted response messages broadcasted by all parking lot server nodes, performs a decryption operation and a set XOR operation to obtain the status information of the parking space he wants to query.

[0034] Furthermore, step 2-2 is specifically as follows:

[0035] Step 2-2-1, randomly generate K-1 random bit strings RanBits1, RanBits2, ..., RanBits K-1 , the information format is:

[0036] RanBits i = <RanBit1,RanBit2,…,RanBit n >,1≤i≤K-1

[0037] Among them, RanBit1, RanBit2,…, RanBit n Corresponding to ParSps= <ParSp1,ParSp2,…,ParSp n >n parking spaces in a certain order; RanBit j ={0,1},1≤j≤n, that is, any bit in the random bit string, RanBit j Randomly take a value of 0 or 1;

[0038] Step 2-2-2: Generate a real bit string containing the real value of the parking space queried by the parking user, and its information format is:

[0039] RelBits= <RelBit1,RelBit2,…,…,RelBit n >

[0040] Among them, RelBit1, RelBit2,…,RelBit n Corresponding to ParSps= <ParSp1,ParSp2,…,ParSp n > n parking spaces; r represents the number of the parking space that the parking user queries, RelBit j represents the jth bit in the real bit string, which is 1 only when it corresponds to the number of the parking space queried by the parking user, and 0 otherwise;

[0041] Step 2-2-3, random bit strings RanBits1, RanBits2, ..., RanBits K-1 Recursively perform bit-by-bit XOR operation with the real bit string RelBits to obtain the Kth bit string Synts, whose information format is:

[0042] Synts= <SyntBit1,SyntBit2,…,SyntBit n >

[0043] in,

[0044]

[0045] …

[0046]

[0047] Represents the exclusive OR operation;

[0048] Step 2-2-4: Parking users will use RanBits i The order of Synts is disrupted to generate the parking space retrieval request bit string ParPIBits j , the information format is:

[0049] ParPIBits j = {RanBits i ,Synts},1≤j≤K,

[0050] Parking users use their public and private keys and the public keys of K parking lot server nodes to access ParPIBits. j Encryption processing to obtain EncParPIBits j , the information format is:

[0051]

[0052] in, They are the public and private keys of the parking user respectively. is the public key of the jth parking lot server node, 1≤j≤K, Enc() is the encryption operation function;

[0053] Step 2-2-5, parking user based on EncParPIBits j Generate a parking space status query private protocol request set ParPIs and broadcast it in the blockchain system. The information format of ParPIs is:

[0054] ParPIs= <ParPI1,ParPI2,…,ParPI j ,…,ParPI K >

[0055] Among them, ParPI j =EncParPIBits j ,1≤j≤K,ParPI j Represents j encrypted query requests.

[0056] Furthermore, steps 2-3 are specifically as follows:

[0057] Step 2-3-1: For ParPIs

[0058]

[0059] Using the parking user public key right Perform decryption operation, the specific formula is:

[0060]

[0061] If all the decryption is successful, it means that the verification is passed;

[0062] Step 2-3-2, verification node V uses its private key to verify Encrypt and generate verification information ParPIsV j , the information format is:

[0063]

[0064] in, To verify the public and private keys of node V;

[0065] Step 2-3-3: Use the verification information set ParPIsVs generated by the verification node V as the verified parking space status query request and broadcast it in the blockchain system. The information format of ParPIsVs is:

[0066] ParPIsVs= <ParPIsV1,ParPIsV2,…,ParPIsV K >.

[0067] Furthermore, steps 2-4 are specifically as follows:

[0068] Step 2-4-1: Parking lot server node uses ParPIsV j , j = 1 ParPIsV j In Perform decryption verification, the specific formula is:

[0069]

[0070] If decryption is successful, proceed to step 2-4-2;

[0071] Step 2-4-2: The parking lot server node uses its private key right Perform decryption operation, the specific formula is:

[0072]

[0073] If the decryption is successful, execute step 2-4-3; otherwise, execute j++, and determine whether the condition 1≤j≤K is met, and repeat steps 2-4-1 and 2-4-2;

[0074] Step 2-4-3, the parking lot server node is based on the decryption result ParPIBits j = <ParPIBit1,ParPIBit2,…,ParPIBit j ,…,ParPIBit n >, query the parking space information set ParSps stored in its local blockchain = <ParSp1,ParSp2,…,ParSp n >, generate response message ParPIq j , the specific formula is:

[0075] Pq j = <ParSp m |1≤m≤n,ParPIBit m =1>;

[0076] Step 2-4-4, the parking lot server node based on its private key ParPIq j Signed and using the parking user's public key To encrypt, the specific formula is:

[0077]

[0078] in, They are the private key of the parking lot server node and the public key of the parking user respectively;

[0079] Step 2-4-5, the parking lot server node sends the signed and encrypted response message EncParPIq j Broadcast in the blockchain network.

[0080] Furthermore, steps 2-5 are specifically as follows:

[0081] Step 2-5-1: Parking user uses his private key Response message EncParPIq j Perform decryption operation, the specific calculation formula is:

[0082]

[0083] Step 2-5-2: Parking users use the public key of the parking lot server node For encrypted Perform decryption operation, the specific calculation formula is:

[0084]

[0085] Step 2-5-3: Parking users have access to all ParPIq j Recursively perform set XOR operation to obtain the target parking space information. The specific calculation formula is:

[0086] Pq r =ParPIq1ΔParPIq2Δ,…,ΔParPIq K

[0087] Among them, Δ represents the set XOR operation, and the set ParPIq obtained after K set XOR operations is r It only contains the target parking space information, that is:

[0088] Pq r = <ParSp r >

[0089] Step 2-5-4: Parking user query ParPIq r =<<Ps,Pl> , <state>> obtains the state of the queried parking space r, whose values ​​are: -1, 0, and 1, respectively indicating that the parking space is reserved, occupied, and free; if state = 1, execute step 3, otherwise repeat steps 2-1 to 2-4.

[0090] Furthermore, step 3 is specifically as follows:

[0091] Step 3-1: The parking user reserves a parking space based on the search results, and the blockchain network updates the information of the reserved parking space on the chain;

[0092] Step 3-2: After the parking user arrives at the parking lot, he / she will park in a parking space based on the private information retrieval protocol, and the blockchain network will update the parking space information on the chain;

[0093] Step 3-3: After the parking user finishes parking, he pays and leaves the parking lot, and the blockchain network updates the parking space information on the chain.

[0094] Furthermore, step 3-1 is specifically as follows:

[0095] Step 3-1-1: Parking user based on query result ParPIq r =<<Ps,Pl> , <state>>Send a request ParRes for reserving parking space Pl to the parking lot server node Ps. The specific information format is:

[0096]

[0097] in, Represents the public and private keys of the parking user, The public key of the parking lot server node Ps;

[0098] Step 3-1-2, the parking lot server node Ps receives the request ParRes and performs a decryption operation. The specific calculation formula is:

[0099]

[0100] in, It is the private key of the parking lot server node Ps;

[0101] Step 3-1-3, the parking lot server node Ps performs a verification operation on the decryption result, and the specific calculation formula is:

[0102]

[0103] Step 3-1-4, parking lot server node Ps according to ParPIq r =<<Ps,Pl> , <state>><Ps,Pl> , get the latest storage ParSps of its local blockchain = <ParSp1,ParSp2,…,ParSp n >The corresponding ParSp in r =<<Ps,Pl> , <state>>, that is, it meets the conditions:

[0104] (ParSp r ∈ParSps)∧(ParSp r ·<Ps,Pl> =ParPIq r ·<Ps,Pl> )

[0105] Judge ParSp r state = 1, if true, it means reservation is possible, let ParPIq r state = -1, that is, the parking space status is changed to the reserved status, otherwise, it means that it cannot be reserved;

[0106] Step 3-1-5, parking lot server node Ps processes parking space information ParPIq r Perform encryption authentication and generate a response ParRep for the parking reservation request. The information format is:

[0107]

[0108] Among them, flag = {0, 1}, flag = 0, indicating that the parking space cannot be reserved, and flag = 1 indicates that the parking space can be reserved; are the public and private keys of the parking lot server node Ps, is the public key of the parking user, and timestamp is the timestamp of the response to the parking space reservation request; the parking lot server node broadcasts ParRep in the blockchain network;

[0109] Step 3-1-6: The parking user receives the response to the parking space reservation request and performs a decryption operation. The specific calculation formula is:

[0110]

[0111] If flag=1, then execute step 3-1-7; otherwise, the parking space reservation is terminated and the repetitive operation of step 2 is started;

[0112] Step 3-1-7: Parking User Utilization right Perform the decryption operation, the specific calculation formula is:

[0113]

[0114] If the parking user's current time CurTime D The difference with timestamp does not exceed the set time threshold maxT, that is:

[0115] (CurTime D -timestamp)≤maxT

[0116] The parking user confirms the response message ParRep and encrypts it. The specific calculation formula is:

[0117]

[0118] Parking users broadcast ParResC in the blockchain system;

[0119] Step 3-1-8, the parking lot server node Ps receives the response confirmation message ParResC and decrypts and verifies it. The specific calculation formula is:

[0120]

[0121] If the decryption operation is successful, it means that the verification is passed;

[0122] The parking lot server node Ps signs ParResC, and the specific calculation formula is:

[0123]

[0124] Finally, the parking lot server node Ps broadcasts ParResCA in the blockchain system;

[0125] Step 3-1-9, the blockchain network selects the accounting node to create a QR code for ParResCA based on the set PoS consensus algorithm. The specific calculation formula is:

[0126] QR code (ParResCA) = ParPIq r =<Ps,Pl> , <state>>

[0127] Among them, QRcode() performs a series of decryption operations on ParResCA to obtain the original reserved parking space information ParPIq r ;

[0128] Step 3-1-10, accounting nodes based on ParPIq r =<<Ps,Pl> , <state>><Ps,Pl> Find the latest storage ParSps in the blockchain system <ParSp1,ParSp2,…,ParSp n >The corresponding element ParSp r , and also meets the conditions:

[0129] ParSp r ·<Ps,Pl> =ParPIq r ·<Ps,Pl>

[0130] Update ParSp r The state, that is: ParSp r ·state=ParPIq r ·state>

[0131] Step 3-1-11, the accounting node packages ParResCA and ParSps to create a block. The information format of the block is:

[0132] ParResBlock=<ParSps,ParResCA>

[0133] Step 3-1-12, the accounting node uses the public key of the parking user and the public key of the parking lot server node to encrypt the QR code (ParResCA) respectively. The specific calculation formula is:

[0134]

[0135] The accounting node will ParResBlock, ParResQRCode D 、ParResQRCode Ps Broadcast in the system;

[0136] Step 3-1-13: Parking user receives ParResQRCode D Message, using private key Decrypt, obtain the QR code and save it locally. The specific calculation formula is:

[0137]

[0138] Step 3-1-14, parking lot server node Ps receives ParResQRCode Ps Message, using private key Decrypt and save locally. The specific calculation formula is:

[0139]

[0140] Step 3-1-15: All parking lot server nodes in the blockchain system receive ParResBlock and update and store it locally to ensure the consistency of the blockchain status of the entire network.

[0141] Furthermore, step 3-2 is specifically as follows:

[0142] Step 3-2-1: After the parking user arrives, the parking lot server node Ps matches the QR code it saves with the QR code of the parking lot server node Ps; after the match is successful, the parking user follows QR code (ParResCA) = ParPIq r =<<Ps,Pl> , <state>>The included parking space information Pl arrives at the designated parking space for parking;

[0143] Step 3-2-2, the IoT sensing device on the parking space P1 senses the vehicle entering, and uses near field communication to send parking space status update information to the parking lot server node Ps;

[0144] Step 3-2-3: After receiving the message, the parking lot server node Ps updates the status of the parking space information Pl to occupied, that is, ParPIq r state = 0;

[0145] Step 3-2-4, parking lot server node based on ParPIq r =<<Ps,Pl> , <state>><Ps,Pl> Find the latest storage ParSps in the blockchain network <ParSp1,ParSp2,…,ParSp n >The corresponding element ParSp r , that is, it satisfies the conditions:

[0146] ParSp r ·<Ps,Pl> =ParPIq r ·<Ps,Pl>

[0147] Execute ParSp r ·state=ParPIq r ·state, and broadcast ParSps in the blockchain network;

[0148] Step 3-2-5, the blockchain network selects the accounting node based on the set PoS consensus algorithm. The accounting node packages ParSps to create the parking space occupation block ParOccBlock, and its information format is:

[0149] ParOccBlock= <parsps>

[0150] The accounting node broadcasts ParOccBlock in the network, and all parking lot server nodes in the blockchain network update their local storage with the ParOccBlock block, thereby ensuring the consistency of the blockchain status of the entire network.

[0151] Furthermore, step 3-3 is specifically as follows:

[0152] Step 3-3-1: When the parking user leaves the parking space after the parking time is up, the IoT sensing device on the parking space P1 senses the vehicle leaving and sends parking space status update information to the parking lot server node Ps using near field communication (e.g., Bluetooth, WiFi, etc.);

[0153] Step 3-3-2: After receiving the message and confirming that the parking user has paid the corresponding parking fee, the parking space information Pl is updated to idle, that is, ParPIq r state = 1;

[0154] Step 3-3-3, parking lot server node based on ParPIq r =<<Ps,Pl> , <state>><Ps,Pl> Find ParSps= <ParSp1,ParSp2,…,ParSp n >The corresponding element ParSp r , that is, it satisfies the conditions:

[0155] ParSp r ·<Ps,Pl> =ParPIq r ·<Ps,Pl>

[0156] Execute ParSp r ·state=ParPIq r ·state>, and broadcast ParSps in the blockchain network;

[0157] Step 3-3-4, the blockchain network selects the accounting node based on the set PoS consensus algorithm. The accounting node packages ParSps to create the block ParRelBlock, and its information format is:

[0158] ParRelBlock= <parsps>

[0159] The accounting node broadcasts ParRelBlock in the network, and all parking lot server nodes in the blockchain network update their local storage with the ParRelBlock block, thereby ensuring the consistency of the blockchain status of the entire network.

[0160] The beneficial effects described in the present invention are as follows: the method described in the present invention can effectively ensure the privacy security of parking users when retrieving parking space information; by adopting a private information retrieval method to retrieve parking space information on a blockchain node, effective protection of the privacy of parking users retrieving parking space information is achieved, and excessive analysis of parking space query information by the backend system is avoided; the parking space information stored in the present invention is more reliable and complete; by "on-chain" management of transaction information during the parking process, the parking transaction process is open, transparent and tamper-proof, ensuring the reliability and completeness of parking lot system information. BRIEF DESCRIPTION OF THE DRAWINGS

[0161] Figure 1 The present invention is based on the blockchain network architecture of the alliance chain;

[0162] Figure 2 It is the blockchain data structure of the present invention;

[0163] Figure 3 The present invention is based on the private information retrieval protocol parking space status information query;

[0164] Figure 4 The whole process of parking transaction information is uploaded to the chain in the present invention;

[0165] Figure 5 It is an overall flow chart of the method used in the present invention. DETAILED DESCRIPTION

[0166] In order to make the contents of the present invention more clearly understood, the present invention is further described in detail below based on specific embodiments in conjunction with the accompanying drawings.

[0167] like Figure 5 As shown, the blockchain intelligent parking management method based on private information retrieval described in the present invention includes the following steps:

[0168] Step 1: Use M parking lot server nodes as blockchain network nodes to build a parking lot blockchain network, initialize the parking lot blockchain network, and generate a genesis block;

[0169] Step 2: construct a private information retrieval protocol, and the parking user retrieves the parking space information based on the private information retrieval protocol;

[0170] Step 3: Based on the parking space information retrieval result, the parking user makes a parking space reservation, completes the parking action and updates the parking information.

[0171] Blockchain is divided into three types according to the different ways of joining its members: public chain, alliance chain, and private chain. Alliance chain is a partially decentralized blockchain. The blockchain smart parking system based on private information retrieval adopts a membership management method. Therefore, the present invention adopts a blockchain network based on alliance chain, such as Figure 1 shown.

[0172] Figure 1 The blockchain network users in the system include parking lot administrators and parking users. The parking lot administrator is responsible for the initial uploading of parking space information to the blockchain and the updating of business information such as parking space reservation, parking, payment, and departure. Parking users use smart terminal devices to interact with the blockchain network, retrieve the parking spaces they are interested in, and complete the generation of business request information such as parking space reservation, parking, payment, and departure. Figure 1 The blockchain network nodes in the example are parking lot server nodes, which are divided into request nodes, verification nodes, and accounting nodes according to their functional types. The request node is responsible for generating blocks from the parking lot manager's business requests, and the verification node authorizes, evaluates, and verifies the chain requests issued by the request node. The accounting node is responsible for packaging the transaction message into the current block. The verification node and the accounting node are generally not set separately, but are selected from all nodes in the blockchain network based on the consensus algorithm.

[0173] The network initialization is as follows:

[0174] Step 1-1, parking lot manager registration: The network generates a public and private key pair for each registered parking lot manager, the formula is:

[0175]

[0176] Among them, ECC is the elliptic curve encryption algorithm, a, b are curve parameters, p is a prime number, d is a random number, They are the public and private keys of the parking lot administrator generated respectively; the public key Storing private keys in the blockchain system It is saved by the parking lot manager and the parking lot server node;

[0177] Step 1-2, the parking lot server node collects parking lot space information: the parking lot server node transmits information with the IoT sensing device on the parking space based on near field communication (for example, Bluetooth, WiFi, etc.) to obtain the parking lot space information, and broadcasts the parking space information in the blockchain system;

[0178] The format of parking space information is:

[0179] ParSp=<<Ps,Pl>, <state>>

[0180] Where Ps is the index number of the parking lot; Pl is the index number of the parking space in the parking lot; state is the state of Pl, and its value is: -1, 0, 1, which respectively indicates the reserved, occupied, and free states of the parking space Pl;

[0181] Step 1-3, Generate Genesis Block: The blockchain system collects the parking space information broadcasted by all parking lot server nodes, and sorts the parking space information according to the order in which the parking lot server nodes correspond to the parking lot managers registered in the system to obtain the parking space information set ParSps, whose information format is:

[0182] ParSps= <ParSp1,ParSp2,…,ParSp n >

[0183] Among them, ParSp1,ParSp2,…,ParSp n They respectively represent the 1st, 2nd, ..., nth parking space information in the parking space information set.

[0184] The blockchain system organizes the public keys of all parking lot server nodes to obtain the public key set KPus, whose information format is:

[0185]

[0186] in, Respectively represent administrators A1, A2, ..., A M The public key of

[0187] The blockchain system packages ParSps and KPus to generate the genesis block GensBlock, whose information format is:

[0188] GensBlock=<KPus,ParSps>

[0189] During the network initialization phase, the state values ​​of all parking spaces in ParSps are 1, which means that all parking spaces are idle. Figure 2 (a) is the basic structure of the genesis block created by the parking lot blockchain system.

[0190] In step 2, the parking space information set ParSps is stored in the distributed ledger of the blockchain. The parking user submits a parking space query request to the blockchain network. The server node in the blockchain network performs the search and returns the response result. The parking user calculates the status information of the queried parking space based on the response result. The basic process is as follows: Figure 3 Specifically:

[0191] Step 2-1: Parking users register in the system. The system generates a public and private key pair for each registered parking user. The formula is:

[0192]

[0193] Among them, ECC is the elliptic curve encryption algorithm, a′, b′ are curve parameters, p′ is a prime number, d′ is a random number, The public and private keys are generated respectively. Stored by parking users.

[0194] Step 2-2, constructing a query request message: The parking user selects K from the M parking lot server nodes in the blockchain system to generate a parking space status query request message. In this example, M = 10, K = 5, n = 7, and the specific process of constructing a query request message includes:

[0195] (1) The four randomly generated bit strings are: RanBits1 = <1,0,1,1,0,0,0>, RanBits2 = <0,1,1,1,0,1,0>, RanBits3 = <0,0,1,1,0,0,1>, RanBits4 = <0,1,1,0,1,1,0>;

[0196] (2) Generate a bit string containing the real value of the parking space queried by the parking user: RelBits5 = <0,0,0,0,0,1,0>, where the sixth bit is the number of the parking space status queried by the parking user;

[0197] (3) Recursively perform bit-by-bit XOR operation on RanBits1 to RanBits4 and RelBits5 to obtain the fifth bit string Synts = <1, 0, 0, 1, 1, 1, 1>;

[0198] (4) Based on the public and private keys of the parking lot server nodes, the parking user scrambles the request bit strings: RanBits1~RanBits4 and Synts and encrypts them to obtain:

[0199]

[0200] (5) The parking user generates a parking space status query private protocol request based on the request bit string EncParPIBits1 to EncParPIBits5:

[0201] ParPIp= <ParPIs1,ParPIs2,ParPIs3,ParPIs4,ParPIs5>。

[0202] Step 2-3, Verification Request Message: The blockchain system selects verification node V to verify ParPIp based on the set PoS (Proof of Stake) consensus algorithm;

[0203] In this example, the specific process of the system verification request message includes:

[0204] (1) The verification node uses the parking user’s public key Decrypt 5 request messages, the specific information is:

[0205]

[0206]

[0207] (2) Verification node V uses its private key, The decryption result is encrypted to generate verification information, the specific information is:

[0208]

[0209] (3) Based on ParPIsV1~ParPIsV5, a private protocol request set ParPIpVs for querying the verified parking space status is generated, and its information format is:

[0210] ParPIpVs=<ParPIsV1,ParPIsV2,ParPIsV3,ParPIsV4,ParPIsV5>.

[0211] Step 2-4, construct a query response message: The parking lot server node receives the verified parking space status query private protocol request set ParPIsVs, decrypts the elements in ParPIsVs one by one, and queries the parking space information set ParSps in the blockchain based on the decryption result to generate a response message.

[0212] In this example, the specific process of constructing the query response message includes:

[0213] (1) The parking lot server node uses the verification node public key Decrypt and verify ParPIsV1~ParPIsV5, that is:

[0214]

[0215]

[0216] (2) The parking lot server node uses its private key Sequentially Perform decryption operation, that is:

[0217]

[0218] If the decryption is successful, execute step (3); otherwise, execute j++ and determine whether the condition 1≤j≤5 is satisfied, and repeat steps (1)-(2).

[0219] (3) The parking lot server node is based on the decryption result ParPIBits j =<ParPIBits1,ParPIBits2,ParPIBits3,ParPIBits4,ParPIBits5> , query the parking space information set ParSps=<ParSp1,ParSp2,…,ParSp7> in its local blockchain, and generate response messages ParPIq1~ParPIq5, that is:

[0220] ParPIq1= <ParSp2,ParSp3,ParSp5,ParSp6>,

[0221] ParPIq2=<ParSp2,ParSp3,ParSp4,ParSp6> ,

[0222] ParPIq3=<ParSp3,ParSp4,ParSp7> ,

[0223] ParPIq4=<ParSp1,ParSp4,ParSp5,ParSp6,ParSp7> ,

[0224] ParPIq5=<ParSp1,ParSp3,ParSp4> .

[0225] (4) The parking lot server node is based on its private key Sign ParPIq1~ParPIq5 and use the parking user's public key Encryption, the specific information is:

[0226] ...

[0228]

[0229] (5) The parking lot server node sends the signed and encrypted response message

[0230] EncParPIq1~EncParPIq5 are broadcasted in the blockchain system.

[0231] Step 2-5, reconstructing the target parking space information: the parking user receives the signed and encrypted response message broadcasted by all parking lot server nodes, performs a decryption operation and a set XOR operation to obtain the status information of the parking space he wants to query.

[0232] In this example, the specific process of reconstructing the target parking space information includes:

[0233] (1) Parking users use their private key Decrypt the response messages EncParPIq1~EncParPIq5. The specific information is as follows:

[0234] ...

[0236]

[0237] (2) Parking users use the public key of the parking lot server node For encrypted Perform decryption operation, the specific information is:

[0238]

[0239] (3) The parking user recursively performs a set XOR operation on all ParPIq1 to ParPIq5 to obtain the target parking space information. The specific information is: ParSp6

[0240] (5) Parking user query ParSp6 = <<Ps,Pl> , <state>> to obtain the state of query ParSp6, whose value is 1, indicating that the parking space is idle.

[0241] Step 3 specifically includes the following steps:

[0242] Step 3-1: Parking space reservation and transaction information are uploaded to the chain;

[0243] (1) Parking users based on query results ParPIq r =<<Ps,Pl> , <state>>Send a request to reserve a parking space Pl to the parking lot server node Ps. The specific information format is:

[0244]

[0245] in, Represents the public and private keys of the parking user, The public key of the parking lot server node Ps.

[0246] (2) The parking lot server node Ps receives the request ParRes and performs the decryption operation. The specific calculation formula is:

[0247]

[0248] in, It is the private key of the parking lot server node Ps.

[0249] (3) The parking lot server node Ps performs a verification operation on the decryption result. The specific calculation formula is:

[0250]

[0251] (4) Parking lot server node Ps based on ParPIq r =<<Ps,Pl> , <state>><Ps,Pl> , get the latest storage ParSps of its local blockchain = <ParSp1,ParSp2,…,ParSp n >The corresponding ParSp in r =<<Ps,Pl> , <state>>, that is, it meets the conditions:

[0252] (ParSp r ∈ParSps)∧(ParSp r ·<Ps,Pl> =ParPIq r ·<Ps,Pl> )

[0253] Further, determine ParSp r state = 1, if true, it means reservation is possible, let ParPIq r state = -1, that is, the parking space status is changed to the reserved status, otherwise, it means that it cannot be reserved.

[0254] (5) Parking lot server node Ps for parking space information ParPIq r Perform encryption authentication and generate a response ParRep for the parking reservation request. The information format is:

[0255]

[0256] Among them, flag = {0, 1}, flag = 0, indicating that the parking space cannot be reserved, and flag = 1 indicates that the parking space can be reserved; are the public and private keys of the parking lot server node Ps, is the public key of the parking user, and timestamp is the timestamp of the response to the parking space reservation request.

[0257] Furthermore, the parking lot server node broadcasts ParRep in the blockchain system.

[0258] (6) The parking user receives the response to the parking space reservation request and performs a decryption operation. The specific calculation formula is:

[0259]

[0260] If flag=1 is satisfied, step (7) is executed; otherwise, the parking space reservation is terminated and the repetitive operation of step 2 is started.

[0261] (7) Parking User Utilization right Perform the decryption operation, the specific calculation formula is:

[0262]

[0263] If the parking user's current time CurTime D The difference with timestamp does not exceed the set time threshold maxT, that is:

[0264] (CurTime D -timestamp)≤maxT

[0265] The parking user confirms the response message ParRep and encrypts it. The specific calculation formula is:

[0266]

[0267] Furthermore, the parking user broadcasts ParResC in the blockchain system.

[0268] (8) The parking lot server node Ps receives the response confirmation message ParResC and decrypts and verifies it. The specific calculation formula is:

[0269]

[0270] If the decryption operation is successful, it means that the verification is passed.

[0271] Furthermore, the parking lot server node Ps signs ParResC, and the specific calculation formula is:

[0272]

[0273] Finally, the parking lot server node Ps broadcasts ParResCA in the blockchain system.

[0274] (9) The blockchain system selects the accounting node to create a QR code for ParResCA based on the set PoS (proof of stake) consensus algorithm. The specific calculation formula is:

[0275] QR code (ParResCA) = ParPIq r =<<Ps,Pl> , <state>>

[0276] Among them, QRcode() performs a series of decryption operations on ParResCA to obtain the original reserved parking space information ParPIq r .

[0277] (10) Accounting nodes based on ParPIq r =<<Ps,Pl> , <state>><Ps,Pl> Find the latest storage ParSps in the blockchain system <ParSp1,ParSp2,…,ParSp n >The corresponding element ParSp r , and also meets the conditions:

[0278] ParSp r ·<Ps,Pl> =ParPIq r ·<Ps,Pl>

[0279] Further, update ParSp r The state, that is: ParSp r ·state=ParPIq r ·state>

[0280] (11) The accounting node packages ParResCA and ParSps to create a block. The information format of the block is:

[0281] ParResBlock=<ParSps,ParResCA>

[0282] (12) The accounting node uses the public key of the parking user and the public key of the parking lot server node to encrypt the QR code (ParResCA). The specific calculation formula is:

[0283]

[0284] Furthermore, the accounting node will ParResBlock, ParResQRCode D 、ParResQRCode Ps Broadcast in the system.

[0285] (13) Parking user receives ParResQRCode D Message, using private key Decrypt, obtain the QR code and save it locally. The specific calculation formula is:

[0286]

[0287] (14) Parking lot server node Ps receives ParResQRCode Ps Message, using private key Decrypt and save locally. The specific calculation formula is:

[0288]

[0289] All parking lot server nodes in the blockchain system receive ParResBlock and update and store it locally to ensure the consistency of the blockchain status of the entire network. The updated block information of parking space reservation is as follows: Figure 2 as shown in (b).

[0290] Step 3-2: Parking process and transaction information are uploaded to the blockchain;

[0291] (1) After the parking user arrives, the parking lot server node Ps matches the QR code it has saved with the QR code of the parking lot server node Ps. After the match is successful, the parking user follows QR code (ParResCA) = ParPIq r =<<Ps,Pl> , <state>>The parking space information Pl included, arrive at the designated parking space and park.

[0292] (2) The IoT sensing device on the parking space Pl senses the vehicle entering and uses near-field communication (e.g., Bluetooth, WiFi, etc.) to send parking space status update information to the parking lot server node Ps.

[0293] (3) After receiving the message, the parking lot server node Ps updates the status of the parking space information Pl to "occupied", that is, ParPIq r ·state=0.

[0294] (4) Parking lot server node based on ParPIq r =<<Ps,Pl> , <state>><Ps,Pl> Find the latest storage ParSps in the blockchain system <ParSp1,ParSp2,…,ParSp n >The corresponding element ParSp r , that is, it satisfies the conditions:

[0295] ParSp r ·<Ps,Pl> =ParPIq r ·<Ps,Pl>

[0296] Execute ParSp r ·state=ParPIq r ·state, and broadcast ParSps in the blockchain system.

[0297] (5) The blockchain system selects a bookkeeping node based on the set PoS (proof of stake) consensus algorithm. The bookkeeping node packages ParSps to create a parking space occupancy block ParOccBlock, whose information format is:

[0298] ParOccBlock= <parsps>

[0299] The accounting node broadcasts ParOccBlock in the system, and all parking server nodes in the blockchain system update the ParOccBlock block to their local storage, thereby ensuring the consistency of the blockchain status of the entire network. The updated block information of the parking process is as follows: Figure 2 as shown in (c).

[0300] Step 3-3: The parking user pays and leaves the parking lot, and the transaction information is uploaded to the blockchain;

[0301] (1) When the parking user leaves the parking space after the parking time is up, the IoT sensing device on the parking space P1 senses the vehicle leaving and sends parking space status update information to the parking lot server node Ps using near field communication (e.g., Bluetooth, WiFi, etc.);

[0302] (2) After receiving the message and confirming that the parking user has paid the corresponding parking fee, the parking space server node Ps updates the status of the parking space information Pl to "free", that is, ParPIq r state = 1;

[0303] (3) Parking lot server node based on ParPIq r =<<Ps,Pl> , <state>><Ps,Pl> Find ParSps= <ParSp1,ParSp2,…,ParSp n >The corresponding element ParSp r , that is, it satisfies the conditions:

[0304] ParSp r ·<Ps,Pl> =ParPIq r ·<Ps,Pl>

[0305] Execute ParSp r ·state=ParPIq r ·state>, and broadcast ParSps in the blockchain system;

[0306] (4) The blockchain system selects the accounting node based on the set PoS (proof of stake) consensus algorithm. The accounting node packages ParSps to create a block ParRelBlock, whose information format is:

[0307] ParRelBlock= <parsps>

[0308] (5) The accounting node broadcasts ParRelBlock in the system, and all parking lot server nodes in the blockchain system update the ParRelBlock block to their local storage, thereby ensuring the consistency of the blockchain status of the entire network. The updated block information after the parking user pays and leaves the parking lot is as follows: Figure 2 as shown in (d).

[0309] At this point, the entire process of parking space information retrieval, parking space reservation, parking, payment and departure is completed. Step 2 and step 3 of the present invention are a simultaneous and continuous cycle. Figure 4 shown.

[0310] The above description is only a preferred embodiment of the present invention and is not intended to be a further limitation of the present invention. All equivalent changes made using the contents of the present specification and drawings are within the protection scope of the present invention.< / parsps> < / state> < / parsps> < / state> < / state> < / state> < / state> < / state> < / state> < / state> < / state> < / state> < / parsps> < / state> < / parsps> < / state> < / state> < / state> < / state> < / state> < / state> < / state> < / state> < / state>

Claims

1. A blockchain-based intelligent parking management method based on private information retrieval, characterized in that: The following steps are involved: Step 1: Use M parking lot server nodes as blockchain network nodes to build a parking lot blockchain network, initialize the parking lot blockchain network, and generate a genesis block; Step 2: Construct a private information retrieval protocol, and the parking user retrieves parking space information based on the private information retrieval protocol; Step 3: Based on the parking space information retrieval results, the parking user makes a parking space reservation, completes the parking action and updates the parking information.

2. A blockchain-based intelligent parking management method based on private information retrieval according to claim 1, characterized in that: In step 1, network initialization is as follows: Step 1-1: Parking lot managers register. The blockchain network generates a public and private key pair for each registered parking lot manager. The formula is: Among them, ECC is the elliptic curve encryption algorithm, a, b are curve parameters, p is a prime number, d is a random number, The public and private keys of the parking lot administrator are generated respectively; the public key Storing private keys in the blockchain system Saved by parking lot administrators and parking lot server nodes; Step 1-2: The parking lot server node transmits information with the IoT sensing device on the parking space based on near-field communication to obtain parking space information, and broadcasts the parking space information on the blockchain network; The format of parking space information is: ParSp=<<Ps,Pl>, <state> >< / state> Where Ps is the index number of the parking lot; Pl is the index number of the parking space in the parking lot; state is the state of Pl, and its value is: -1, 0, 1, indicating whether the parking space Pl is reserved, occupied, or free, respectively; Steps 1-3: The blockchain network collects parking space information broadcast by all parking lot server nodes, and sorts the parking space information according to the order in which the parking lot server nodes and parking lot managers are registered in the system to obtain the parking space information set ParSps, whose information format is: ParSps=<ParSp1,ParSp2,…,ParSp n > Among them, ParSp1,ParSp2,…,ParSp n Respectively represent the 1st, 2nd, ..., nth parking space information in the parking space information set; The blockchain network collects the public keys of all parking lot server nodes to obtain the public key set KPus, whose information format is: in, They represent parking lot managers A1, A2, ..., A M 's public key; The blockchain network packages ParSps and KPus to generate the genesis block GensBlock, whose information format is: GensBlock=<KPus,ParSps> During the network initialization phase, the state values ​​of all parking spaces in ParSps are 1, which means that all parking spaces are idle.

3. A blockchain-based intelligent parking management method based on private information retrieval according to claim 2, characterized in that: Step 2 is as follows: Step 2-1: Parking users register in the blockchain network. The blockchain network generates a public and private key pair for each registered parking user. The formula is: Among them, ECC is the elliptic curve encryption algorithm, a′, b′ are curve parameters, p′ is a prime number, d′ is a random number, are the generated public and private keys of the parking user, stored by parking users; Step 2-2: The parking user selects K parking server nodes from the M parking server nodes in the blockchain network and generates a parking space status query private protocol request set ParPIs; Step 2-3: The blockchain network selects a verification node V to verify ParPIs based on the set PoS consensus algorithm; Step 2-4: The parking lot server node receives the verified parking space status query private protocol request set ParPIsVs, decrypts the elements in ParPIsVs in sequence, and queries the parking space information set ParSps in the blockchain based on the decryption results to generate a response message; Step 2-5: The parking user receives the signed and encrypted response messages broadcasted by all parking lot server nodes, performs a decryption operation and a set XOR operation to obtain the status information of the parking space he wants to query.

4. A blockchain-based intelligent parking management method based on private information retrieval according to claim 3, characterized in that: Step 2-2 is as follows: Step 2-2-1, randomly generate K-1 random bit strings RanBits1, RanBits2,…, RanBits K-1 , the information format is: RanBits i =<RanBit1,RanBit2,…,RanBit n >,1≤i≤K-1 Among them, RanBit1, RanBit2,…, RanBit n Corresponding to ParSps= <ParSp1,ParSp2,…,ParSp n >n parking spaces in a certain order; RanBit j ={0,1},1≤j≤n, that is, any bit in the random bit string, RanBit j Randomly take the value 0 or 1; Step 2-2-2: Generate a real bit string containing the real value of the parking space queried by the parking user. The information format is: RelBits=<RelBit1,RelBit2,…,…,RelBit n > Among them, RelBit1, RelBit2,…,RelBit n Corresponding to ParSps= <ParSp1,ParSp2,…,ParSp n > n parking spaces; r represents the number of the parking space that the parking user queries, RelBit j represents the jth bit in the real bit string, which is 1 only when it corresponds to the number of the parking space queried by the parking user, and 0 otherwise; Step 2-2-3, random bit strings RanBits1, RanBits2, ..., RanBits K-1 Recursively perform bit-by-bit XOR operation with the real bit string RelBits to obtain the K-th bit string Synts, whose information format is: Synthesis= <SyntBit1,SyntBit2,…,SyntBit n > in, Represents exclusive OR operation; Step 2-2-4: Parking users will use RanBits i and Synts are shuffled to generate the parking space retrieval request bit string ParPIBits j , the information format is: PairPIBits j ={RanBits i ,Synth},1≤j≤K, Parking users use their public and private keys and the public keys of K parking lot server nodes to register ParPIBits. j Perform encryption to obtain EncParPIBits j , the information format is: in, They are the public and private keys of the parking user respectively. is the public key of the j-th parking lot server node, 1≤j≤K, Enc() is the encryption operation function; Step 2-2-5, parking user based on EncParPIBits j Generate a parking space status query private protocol request set ParPIs and broadcast it in the blockchain system. The information format of ParPIs is: ParPIs= <ParPI1,ParPI2,…,ParPI j ,…,ParPI K > Among them, ParPI j =EncParPIBits j ,1≤j≤K,ParPI j Represents j encrypted query requests.

5. A blockchain-based intelligent parking management method based on private information retrieval according to claim 4, characterized in that: Steps 2-3 are as follows: Step 2-3-1: For ParPIs Using parking user public key right Perform decryption operation, the specific formula is: If all decryption is successful, it means that the verification is passed; Step 2-3-2, verification node V uses its private key to verify Encrypt and generate verification information ParPIsV j , the information format is: in, Public and private keys of verification node V; Step 2-3-3: Use the verification information set ParPIsVs generated by the verification node V as the verified parking space status query request and broadcast it in the blockchain system. The information format of ParPIsVs is: ParPIsVs=<ParPIsV1,ParPIsV2,…,ParPIsV K >。 6. A blockchain-based intelligent parking management method based on private information retrieval according to claim 5, characterized in that: Steps 2-4 are as follows: Step 2-4-1: Parking lot server node uses ParPIsV j , j=1 ParPIsV j in Perform decryption verification, the specific formula is: If decryption is successful, proceed to step 2-4-2; Step 2-4-2, the parking lot server node uses its private key right Perform decryption operation, the specific formula is: If the decryption is successful, execute step 2-4-3; otherwise, execute j++ and determine whether the condition 1≤j≤K is met, and repeat steps 2-4-1 and 2-4-2; Step 2-4-3, the parking lot server node is based on the decryption result ParPIBits j = <ParPIBit1,ParPIBit2,…,ParPIBit j ,…,ParPIBit n >, query the parking space information set ParSps stored in its local blockchain <ParSp1,ParSp2,…,ParSp n >, generate response message ParPIq j , the specific formula is: ParPIq j =<ParSp m |1≤m≤n,ParPIBit m =1>; Step 2-4-4, parking lot server node based on its private key ParPIq j Signed and using the parking user's public key To encrypt, the specific formula is: in, They are the private key of the parking lot server node and the public key of the parking user respectively; Step 2-4-5, the parking lot server node sends the signed and encrypted response message EncParPIq j Broadcast in the blockchain network.

7. A blockchain-based intelligent parking management method based on private information retrieval according to claim 6, characterized in that: Steps 2-5 are as follows: Step 2-5-1: Parking user uses his private key Response message EncParPIq j Perform decryption operation, the specific calculation formula is: Step 2-5-2: Parking users use the public key of the parking lot server node For encryption Perform decryption operation, the specific calculation formula is: Step 2-5-3: Parking users have access to all ParPIq j Recursively perform set XOR operation to obtain the target parking space information. The specific calculation formula is: ParPIq r =ParPIq1ΔParPIq2Δ,…,ΔParPIq K Among them, Δ represents the set XOR operation, and the set ParPIq obtained after K set XOR operations is r Contains only target parking space information, that is: ParPIq r = <ParSp r >; Step 2-5-4: Parking User Query ParPIq r =<<Ps,Pl> , <state> > obtains the state of the queried parking space r, where -1, 0, and 1 represent the reserved, occupied, and free states of the parking space, respectively. If state = 1, execute step 3; otherwise, repeat steps 2-1 to 2-4.< / state> 8. The blockchain intelligent parking management method based on private information retrieval according to claim 7 is characterized in that: Step 3 is as follows: Step 3-1: The parking user reserves a parking space based on the search results, and the blockchain network updates the parking space reservation information on the chain; Step 3-2: After the parking user arrives at the parking lot, he / she will park in a parking space based on the private information retrieval protocol, and the blockchain network will update the parking space information on the chain; Step 3-3: After the parking user finishes parking, he pays and leaves the parking lot, and the blockchain network updates the parking space information on the chain.

9. The blockchain intelligent parking management method based on private information retrieval according to claim 1 is characterized in that: Step 3-1 is as follows: Step 3-1-1: Parking user based on query result ParPIq r =<<Ps,Pl> , <state> > Send a request ParRes for reserving parking space Pl to the parking lot server node Ps. The specific information format is:< / state> in, Represents the public and private keys of the parking user, The public key of the parking lot server node Ps; Step 3-1-2: The parking lot server node Ps receives the request ParRes and performs the decryption operation. The specific calculation formula is: in, The private key of the parking lot server node Ps; Step 3-1-3: The parking lot server node Ps performs a verification operation on the decryption result. The specific calculation formula is: Step 3-1-4, parking lot server node Ps according to ParPIq r =<<Ps,Pl> , <state>><Ps,Pl> , get the latest storage ParSps of its local blockchain = <ParSp1,ParSp2,…,ParSp n >Corresponding ParSp in r =<<Ps,Pl> , <state> >, which means that the conditions are met:< / state> < / state> (ParSp r ∈ParSps)∧(ParSp r ·<Ps,Pl>=ParPIq r ·<Ps,Pl>) Judge ParSp r ·state=1, if established, it means reservation is possible, let ParPIq r state = -1, which means the parking space status is changed to reserved status; otherwise, it means it cannot be reserved; Step 3-1-5, parking lot server node Ps processes parking space information ParPIq r Perform encryption authentication and generate a response ParRep for the parking space reservation request. The information format is: Among them, flag = {0, 1}, flag = 0, indicating that the parking space cannot be reserved, flag = 1 indicates that the parking space can be reserved; are the public and private keys of the parking lot server node Ps, is the public key of the parking user, and timestamp is the timestamp of the response to the parking space reservation request; the parking lot server node broadcasts ParRep in the blockchain network; Step 3-1-6: The parking user receives the response to the parking space reservation request and performs a decryption operation. The specific calculation formula is: If flag=1, then execute step 3-1-7; otherwise, the parking space reservation is terminated and the repetitive operation of step 2 is started; Step 3-1-7: Parking User Utilization right Perform the decryption operation. The specific calculation formula is: If the parking user's current time CurTime D The difference with the timestamp does not exceed the set time threshold maxT, that is: (CurTime D -timestamp)≤maxT The parking user confirms the response message ParRep and encrypts it. The specific calculation formula is: Parking users broadcast ParResC in the blockchain system; Step 3-1-8, the parking lot server node Ps receives the response confirmation message ParResC and decrypts and verifies it. The specific calculation formula is: If the decryption operation is successful, it means that the verification is passed; The parking lot server node Ps signs ParResC. The specific calculation formula is: Finally, the parking lot server node Ps broadcasts ParResCA in the blockchain system; Step 3-1-9: The blockchain network selects the accounting node based on the set PoS consensus algorithm to create a QR code for ParResCA. The specific calculation formula is: QRcode(ParResCA)=ParPIq r =<<Ps,Pl> , <state> >< / state> Among them, QRcode() performs a series of decryption operations on ParResCA to obtain the original reserved parking space information ParPIq r ; Step 3-1-10, accounting node based on ParPIq r =<<Ps,Pl> , <state>><Ps,Pl> Find the latest storage ParSps in the blockchain system <ParSp1,ParSp2,…,ParSp n >Corresponding element ParSp r , and also meets the conditions:< / state> ParSp r ·<Ps,Pl> =ParPIq r ·<Ps,Pl> Update ParSp r The state, that is: ParSp r state = ParPIq r ·state> Step 3-1-11. The accounting node packages ParResCA and ParSps to create a block. The block information format is: ParResBlock=<ParSps,ParResCA> Step 3-1-12: The accounting node encrypts the QR code (ParResCA) using the public key of the parking user and the public key of the parking lot server node. The specific calculation formula is: The accounting node will ParResBlock, ParResQRCode D 、ParResQRCode Ps Broadcast in the system; Step 3-1-13: Parking user receives ParResQRCode D Message, using private key Decrypt, obtain the QR code and save it locally. The specific calculation formula is: Step 3-1-14, parking lot server node Ps receives ParResQRCode Ps Message, using private key Decrypt and save locally. The specific calculation formula is: Step 3-1-15: All parking lot server nodes in the blockchain system receive ParResBlock and update and store it locally to ensure the consistency of the blockchain status of the entire network.

10. The blockchain intelligent parking management method based on private information retrieval according to claim 8 is characterized in that: Step 3-2 is as follows: Step 3-2-1: After the parking user arrives, the parking lot server node Ps matches the QR code it has saved with the QR code of the parking lot server node Ps; after the match is successful, the parking user follows QR code (ParResCA) = ParPIq r =<<Ps,Pl> , <state> > The included parking space information Pl arrives at the designated parking space and parks;< / state> Step 3-2-2: The IoT sensing device on parking space P1 senses the vehicle entering and uses near-field communication to send parking space status update information to parking lot server node Ps; Step 3-2-3: After receiving the message, the parking lot server node Ps updates the status of the parking space information Pl to occupied, that is, ParPIq r state = 0; Step 3-2-4, parking lot server node based on ParPIq r =<<Ps,Pl> , <state>><Ps,Pl> Find the latest storage ParSps in the blockchain network <ParSp1,ParSp2,…,ParSp n >Corresponding element ParSp r , which satisfies the conditions:< / state> ParSp r ·<Ps,Pl> =ParPIq r ·<Ps,Pl> Execute ParSp r state = ParPIq r state, and broadcast ParSps in the blockchain network; Step 3-2-5: The blockchain network selects a bookkeeping node based on the set PoS consensus algorithm. The bookkeeping node packages ParSps to create a parking space occupation block ParOccBlock. Its information format is: ParOccBlock= <parsps>< / parsps> The accounting node broadcasts ParOccBlock in the network, and all parking lot server nodes in the blockchain network update their local storage with the ParOccBlock block, thereby ensuring the consistency of the blockchain status of the entire network.

11. The blockchain intelligent parking management method based on private information retrieval according to claim 8 is characterized in that: Step 3-3 is as follows: Step 3-3-1: When a parking user leaves the parking space after the parking time expires, the IoT sensing device at the parking space P1 senses the vehicle's departure and sends parking space status update information to the parking lot server node Ps using near-field communication. Step 3-3-2: After receiving the message and confirming that the parking user has paid the corresponding parking fee, the parking space information Pl is updated to the idle state, that is, ParPIq r state = 1; Step 3-3-3, parking lot server node based on ParPIq r =<<Ps,Pl> , <state>><Ps,Pl> Find ParSps= <ParSp1,ParSp2,…,ParSp n >Corresponding element ParSp r , which satisfies the conditions:< / state> ParSp r ·<Ps,Pl> =ParPIq r ·<Ps,Pl> Execute ParSp r state = ParPIq r state>, and broadcast ParSps in the blockchain network; Step 3-3-4: The blockchain network selects a bookkeeping node based on the set PoS consensus algorithm. The bookkeeping node packages ParSps to create a block ParRelBlock. Its information format is: PairRelBlock= <parsps>< / parsps> The accounting node broadcasts ParRelBlock in the network, and all parking lot server nodes in the blockchain network update their local storage with the ParRelBlock block, thereby ensuring the consistency of the blockchain status of the entire network.

Citation Information

Patent Citations

  • Identity recognition and parking credit management system based on block chain

    CN112862989A

  • Parking space sharing method based on alliance chain mechanism

    CN113034703A

  • Encrypted data sharing method with privacy protection based on block chain

    CN113037753A

  • Efficient parking system based on block chain

    CN116647357A

  • Intelligent parking authentication method based on block chain

    CN117834154A