CN112084533A - Block chain-based multi-level position information sharing method - Google Patents

Block chain-based multi-level position information sharing method Download PDF

Info

Publication number
CN112084533A
CN112084533A CN202010831054.8A CN202010831054A CN112084533A CN 112084533 A CN112084533 A CN 112084533A CN 202010831054 A CN202010831054 A CN 202010831054A CN 112084533 A CN112084533 A CN 112084533A
Authority
CN
China
Prior art keywords
position information
information
block chain
user
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202010831054.8A
Other languages
Chinese (zh)
Other versions
CN112084533B (en
Inventor
王秋华
夏天雨
姚晔
张祯
袁理锋
任一支
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou Dianzi University
Original Assignee
Hangzhou Dianzi University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hangzhou Dianzi University filed Critical Hangzhou Dianzi University
Priority to CN202010831054.8A priority Critical patent/CN112084533B/en
Publication of CN112084533A publication Critical patent/CN112084533A/en
Application granted granted Critical
Publication of CN112084533B publication Critical patent/CN112084533B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/045Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply hybrid encryption, i.e. combination of symmetric and asymmetric encryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/52Network services specially adapted for the location of the user terminal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • Signal Processing (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Databases & Information Systems (AREA)
  • Medical Informatics (AREA)
  • Computing Systems (AREA)
  • Storage Device Security (AREA)

Abstract

The invention discloses a block chain-based multi-level position information sharing method. Various problems exist with existing block chain based location sharing schemes. The method comprises the steps of firstly carrying out system initialization, then carrying out data preprocessing on a position information provider, recording position information by the position information provider, uploading the position information and verification information, sharing the position information among position information demanders, uploading an offset vector ciphertext by the position information provider when the position information is updated, decrypting by the position information demander and updating the position information by means of the offset vector. The method realizes the decentralization of the position information sharing system, the non-tampering, verifiable and multi-level privacy protection of the position information, the system has stronger robustness, the involved calculation burden is lower, and the method can be accepted by general terminal equipment.

Description

Block chain-based multi-level position information sharing method
Technical Field
The invention belongs to the technical field of information sharing, and particularly relates to a block chain-based multi-level position information sharing method.
Background
With the rapid development of the intelligent wearing technology and the internet of things technology, enterprises, governments and other units and organizations can master the position information of the target object so as to meet business requirements of vehicle navigation, social games, epidemic prevention and control and the like. In order to make an epidemic situation prevention and control measure accurately, it is a significant task to grasp the location information of a case, a suspected case, and a person who is in close contact with the case.
On the other hand, the location information contains a large amount of user information, which is a valuable information resource. In the sharing process, if security events such as position information leakage, tampering, counterfeiting and the like occur, not only can the privacy of the user be seriously leaked, but also the service work of an information acquisition party is greatly and negatively influenced. How to ensure the information security and privacy protection when sharing the position information has become a problem that cannot be ignored.
First, the conventional undifferentiated information sharing has failed to meet the requirements of a large-scale location information sharing system, and a safe and efficient multi-level location information sharing method is required. In order to protect the privacy of the user as much as possible, in the process of sharing the location information, the location information with different precision is required to be obtained by the location information demanders with different levels.
Second, conventional location information data sharing schemes process and store data with a central database. In this case, if the central database is attacked, a large-scale data security problem may be caused. Moreover, even if many users in the network have corresponding data, the central database must participate in all data sharing processes, which makes the central database very burdened. In addition, the information demander often cannot perform efficient and feasible verification on the acquired data.
Furthermore, although the conventional location sharing schemes based on the blockchain achieve decentralization and non-tampering by means of the blockchain, some of the schemes have the problems of insufficient privacy protection, non-verification and incapability of providing multi-level authority access, and other schemes have the problems of high computational burden, low system robustness and requirement that an information owner is always on line. In practical applications, terminal devices providing location information often have no high computational power, and a manager cannot guarantee that the terminal devices distributed in different locations can be kept online all the time.
Disclosure of Invention
The invention aims to provide a multistage position information sharing method based on a block chain, aiming at the problems of centralization, non-verifiability, insufficient privacy protection, overhigh calculation burden and the like of the current position information sharing.
The method of the invention realizes the decentralization of the position information system and the non-falsification of the position information by using the block chain technology; verifiable multi-level location information access is achieved in a novel approach using order-preserving encryption and a merkle tree. The authenticity verification of the information of each level of position areas is realized by using order-preserving encryption and a symmetric encryption technology without changing the size order of the plain text; by utilizing a Merkle tree, a Hash binary tree which is commonly used for distributed data verification, the integrity verification of the position area information of each level is realized, and the multi-level privacy protection is realized; in addition, the invention adopts a new mode to express and share the position area, thereby limiting the times of order-preserving encryption, reducing the calculation cost and ensuring that the calculation burden of the scheme can be accepted by common terminal equipment; meanwhile, in the invention, the position information provider does not need to be always on line, can be off line after completing the specified work, and any information demander can obtain legal position information from the information sharer with the same or higher access level.
The users in the system are divided into three types, namely a position information provider, a position information demander and a full node; the position information provider is a user providing original position information, the position information demander is a user needing to obtain position information, and the whole node is a node storing and providing verification information.
The system has (N +1) class-level position information demanders, and when the position information demanders join the system, the system allocates a class identifier I to the position information demanders according to the real identity of the position information demanders, wherein I is 0,1, … and N; the smaller the grade mark is, the higher the access grade of the position information demander is; the location information demander, having a rank of 0, can determine the exact coordinates of the location information provider.
The method comprises the following specific steps:
step (1), initializing a system; the method comprises the following steps:
(1-1) the user puts forward a registration application to the system and obtains a unique identification ID number ID corresponding to the real identity information of the useri,i∈[1,n]And n represents the number of users registered in the system.
(1-2) if the user is LPiDetermining { ri 1,ri 2,...,ri N},ri 1<ri 2<...<ri N;ri IInformation about LP available to a requester of location information indicating a level identification of IiThe side length of the square position region with the highest precision, I ═ 1, 2., N; generation using a key generation algorithm
Figure BDA0002637987810000021
Is a symmetric encryption key, LP, used in encrypting or decrypting data during the location update phaseiIndicates that the ID number is IDiThe location information provider of (1).
And (1-3) if the user is the position information demander, the system allocates a grade identifier for the user.
And (1-4) executing a public and private key pair generation algorithm by a user at the user side to generate a pair of public and private keys (PK, SK) which are stored at the user side for the user to use.
Step (2), preprocessing position information; the method comprises the following steps:
(2-1).LPiposition coordinate P ofi=(xi,yi);
First, LPiGenerating a random vector v1=(x1′,y1') satisfy
Figure BDA0002637987810000031
Determining a diagonal vertex as Pi L1And Pi R1Square area of
Figure BDA0002637987810000032
Figure BDA0002637987810000033
Figure BDA0002637987810000034
Then, LPiGenerating a random vector v2=(x2′,y2') satisfy
Figure BDA0002637987810000035
Determining a diagonal vertex as Pi L2And Pi R2Square area of
Figure BDA0002637987810000036
Figure BDA0002637987810000037
Figure BDA0002637987810000038
LPiRepeating the operation for N times to determine N square regions to obtain region information set
Figure BDA0002637987810000039
If q > g, the square area
Figure BDA00026379878100000318
Completely covering the square area
Figure BDA00026379878100000310
Equivalently, a set of diagonal vertices P is obtainedi L={Pi L1,Pi L2,...,Pi LNAnd Pi R={Pi R1,Pi R2,...,Pi RN}。
(2-2).LPiUsing an order preserving encryption algorithm OPE and keys
Figure BDA00026379878100000311
Encrypting the coordinates of the opposite angle vertex to obtain a ciphertext set of the opposite angle vertex
Figure BDA00026379878100000312
And
Figure BDA00026379878100000313
Figure BDA00026379878100000314
Figure BDA00026379878100000315
k∈[1,N]and ciph (·) denotes an order-preserving encryption function.
(2-3) computing leaf nodes of Merkel Tree
Figure BDA00026379878100000316
hash (·) represents a hash function; obtaining a set of leaf nodes
Figure BDA00026379878100000317
LPiUsing NodesiEstablishing a complete Merkel tree VermeriAnd get its root node rooti
Step (3), recording position information; the method comprises the following steps:
LPicalculating coordinate information (x)i,yi) Hash value of (x)i||yi) Calculating a secret key
Figure BDA0002637987810000041
Hash value of
Figure BDA0002637987810000042
To (x)i,yi) Carrying out order-preserving encryption to obtain an order-preserving encrypted value
Figure BDA0002637987810000043
Figure BDA0002637987810000044
And
Figure BDA0002637987810000045
respectively represent a pair xiAnd yiAn order-preserving encrypted value of the order-preserving encryption,
Figure BDA0002637987810000046
calculate OPEiHas a hash value of (OPE)i);
Broadcasting Record information Record to miners' nodes in a blockchain networki
RecordiComprises the following components:
Figure BDA0002637987810000047
Figure BDA0002637987810000048
represents LPiUsing a private key
Figure BDA0002637987810000049
Digitally signing the information with a digital signature algorithm; miner node pair Record in block chain networkiAnd verifying, and writing the block chain into the block chain through a consensus process after the block chain passes the verification.
Uploading position information and verification information; the method comprises the following steps:
(4-1).LPibroadcast to all full nodes
Figure BDA00026379878100000410
Represents LPiUsing a private key
Figure BDA00026379878100000411
And digitally signing the information with a digital signature algorithm.
(4-2).LPiTo at least one LD0Sending
Figure BDA00026379878100000412
Enc (-) denotes an asymmetric cryptographic function,
Figure BDA00026379878100000413
represents LD0The public key of (2).
LD0Using a private key
Figure BDA00026379878100000414
Decryption
Figure BDA00026379878100000415
To obtain
Figure BDA00026379878100000416
Calculating (x)i′||yi') and
Figure BDA00026379878100000417
hash value of (x)i′||yi') and
Figure BDA00026379878100000418
determine whether to count on the chain respectivelyAccording to RecordiHash (x) of (1)i||yi) And
Figure BDA00026379878100000419
and (3) equality: if the data integrity is equal to the data integrity, the data integrity verification is completed, and the information is accepted
Figure BDA00026379878100000420
If not, the data is falsified, and the information is refused to be received
Figure BDA00026379878100000421
Step (5), sharing position information; the method comprises the following steps:
(5-1) the ID number is IDjLocation information demander with grade mark a
Figure BDA00026379878100000422
To equal or higher level of access
Figure BDA00026379878100000423
Application for LPiA is not less than b, j belongs to [1, n ]],l∈[1,n];
Figure BDA00026379878100000424
Identify a direction according to its rank
Figure BDA00026379878100000425
Transmitting location information
Figure BDA00026379878100000426
Wherein the content of the first and second substances,
Figure BDA00026379878100000427
Figure BDA00026379878100000428
is shown in
Figure BDA0002637987810000051
The public key of (2);
Figure BDA0002637987810000052
using a private key
Figure BDA0002637987810000053
Decryption
Figure BDA0002637987810000054
To obtain
Figure BDA0002637987810000055
It is noted that at one point in time,
Figure BDA0002637987810000056
applying for LD with equal or higher access level and obtaining LP by the same methodiAfter the position information of (2), can be
Figure BDA0002637987810000057
Providing information; obviously, the initial LD is shared0Location information is provided.
(5-2).
Figure BDA0002637987810000058
To a certain full node FnodehRequesting authentication data, FnodehIdentify a direction according to its rank
Figure BDA0002637987810000059
Sending authentication data
Figure BDA00026379878100000510
Wherein, FnodehIndicates that the ID number is IDhAll nodes of (h ∈ [1, n ]],
Figure BDA00026379878100000511
Representation according to leaf node
Figure BDA00026379878100000512
Calculating VermeriRoot node rootiAnd other necessary node sets.
Figure BDA00026379878100000513
Using a private key
Figure BDA00026379878100000514
Deciphered Veri aTo obtain
Figure BDA00026379878100000515
(5-3).
Figure BDA00026379878100000516
Computing leaf node
Figure BDA00026379878100000517
Joining sets of essential nodes
Figure BDA00026379878100000518
Vermer is obtained by calculationiRoot node root ofi'; calculate OPEi' and
Figure BDA00026379878100000519
hash value hash (OPE)i') and
Figure BDA00026379878100000520
root judgmenti′、hash(OPEi′)、
Figure BDA00026379878100000521
Respectively with the on-chain data RecordiRoot in (1)i、 hash(OPEi)、
Figure BDA00026379878100000522
Whether they are equal: if the data integrity is equal to the data integrity, finishing the data integrity verification; if not, the data is indicated to be tampered, and the sharing fails.
(5-4).
Figure BDA00026379878100000523
Judgment of
Figure BDA00026379878100000524
And
Figure BDA00026379878100000525
whether or not: if so, completing the pairing of the areas
Figure BDA00026379878100000526
Verifying the authenticity of the card; if not, the position area information is false, and the sharing fails.
If all of the verification jobs are passed,
Figure BDA00026379878100000527
determining LPiIn the square position area
Figure BDA00026379878100000528
And the position information is successfully shared.
Step (6), updating the position information; the method comprises the following steps:
(6-1).LPiwhen updating the position information for the p-th time, the position coordinate at this time is assumed to be
Figure BDA00026379878100000529
Noting offset vector
Figure BDA00026379878100000530
LPiUsing a secret key
Figure BDA00026379878100000531
Encryption Vi pTo obtain a ciphertext
Figure BDA00026379878100000532
E (-) represents a symmetric encryption algorithm.
LPiBroadcasting location update information
Figure BDA00026379878100000533
The information is composed as follows,
Figure BDA00026379878100000534
Figure BDA00026379878100000535
represents LPiA digital signature of the information. Miner node pairs in a blockchain network
Figure BDA00026379878100000536
And verifying, and writing the block chain into the block chain through a consensus process after the block chain passes the verification.
(6-2) having undergone information sharing procedure
Figure BDA0002637987810000061
Discovery on blockchains
Figure BDA0002637987810000062
After the information is given, the user can select the information,
Figure BDA0002637987810000063
using a secret key
Figure BDA0002637987810000064
Decryption
Figure BDA0002637987810000065
To obtain Vi p
Figure BDA0002637987810000066
By means of Vi pAnd
Figure BDA0002637987810000067
can determine LPiAt diagonal vertices of
Figure BDA0002637987810000068
And
Figure BDA0002637987810000069
square shaped location area of
Figure BDA00026379878100000610
The location information is updated successfully. Wherein the content of the first and second substances,
Figure BDA00026379878100000611
Figure BDA00026379878100000612
based on the block chain technology, the invention realizes the decentralization of the position information sharing system, the non-falsification of the position information, the multi-level privacy protection and the verification of the integrity and the authenticity of the position information at each level. The method of the invention does not have a fixed position information provider in the position information sharing process, any position information demander can obtain legal position information from the position information demander with the same or higher level, and carries out data verification by means of necessary verification data and a block chain, and the system has stronger robustness. In addition, the method has low calculation burden and can be accepted by general terminal equipment.
Drawings
FIG. 1 is a general flow chart of the process of the present invention;
FIG. 2 is an initialization flow diagram of an embodiment of the present invention;
FIG. 3 is a flow chart of location information preprocessing according to an embodiment of the present invention;
FIG. 4 is a flow chart of location information recording according to an embodiment of the present invention;
fig. 5 is a flowchart illustrating uploading of location information and verification information according to an embodiment of the present invention;
FIG. 6 is a flow chart of location information sharing according to an embodiment of the present invention;
FIG. 7 is a flowchart illustrating location information updating according to an embodiment of the present invention;
Detailed Description
The following describes the practice of the present invention in further detail with reference to the accompanying drawings.
As shown in fig. 1, a block chain-based multi-level location information sharing method specifically includes the following steps:
step 1, initializing a system;
step 2, in order to realize the goal of multi-level privacy protection and information verifiability, a position information provider carries out data preprocessing;
step 3, the position information provider records the position information;
step 4, the position information provider uploads the position information and the verification information;
step 5, sharing the position information among the position information demanders;
and 6, when the position information is updated, the position information provider uploads the offset vector ciphertext, and the position information demander decrypts the offset vector and updates the position information by means of the offset vector.
For better understanding of the method and process of the embodiments of the present invention, a location information sharing process is described in detail. In the process, the (N +1) class level position information demanders are shared, and the position information provider LP is sharedaTwo position information sharing
Figure BDA0002637987810000071
And a full node Fnoded
The user needs to initialize when logging in the system for the first time, and the process is as shown in fig. 2, and specifically includes:
(1-1) the user puts forward a registration application to the system and respectively obtains a unique identification ID number ID corresponding to the real identity information of the usera、IDb、IDc、IDd
(1-2) ID number is IDaLocation information provider LP ofaDetermining
Figure BDA0002637987810000072
And generated using a key generation algorithm
Figure BDA00026379878100000718
Is a symmetric encryption key used when encrypting and decrypting data in the location update phase.
And (1-3) the system allocates corresponding grade identifications to the position information demanders. As a result of the assignment, the number of the bits is,
Figure BDA0002637987810000073
is that the ID number is IDbAnd the position information demander with the grade mark 0,
Figure BDA0002637987810000074
is that the ID number is IDcThe grade mark is a position information demander with m, and m is more than 0;
and (1-4) executing a public and private key pair generation algorithm by each user at a user side to respectively generate a public and private key pair
Figure BDA0002637987810000075
Figure BDA0002637987810000076
The data is stored in the user side for the user to use;
step (2), preprocessing the position information, wherein the process is shown in figure 3; the method comprises the following steps:
(2-1).LPahas a position coordinate of Pa=(xa,ya)。
LPaGenerating a random vector v1=(x1′,y1') need to be satisfied
Figure BDA0002637987810000077
LPaA diagonal vertex can be determined as
Figure BDA0002637987810000078
And
Figure BDA0002637987810000079
square area of
Figure BDA00026379878100000710
Wherein
Figure BDA00026379878100000711
Figure BDA00026379878100000712
LPaGenerating a random vector v2=(x2′,y2') satisfy
Figure BDA00026379878100000713
Determine a diagonal vertex as
Figure BDA00026379878100000714
And
Figure BDA00026379878100000715
square area of
Figure BDA00026379878100000716
Wherein
Figure BDA00026379878100000717
Figure BDA0002637987810000081
LPaRepeating the above operation N times to determine N square regions and obtain region information set
Figure BDA0002637987810000082
Equivalently, LPaObtain a set of diagonal vertices
Figure BDA0002637987810000083
And
Figure BDA0002637987810000084
(2-2).LPausing an order preserving encryption algorithm OPE and keys
Figure BDA0002637987810000085
Encrypting the vertex coordinates to obtain a diagonal vertex ciphertext set
Figure BDA0002637987810000086
And
Figure BDA0002637987810000087
wherein the content of the first and second substances,
Figure BDA0002637987810000088
Figure BDA0002637987810000089
k∈[1,N]and ciph (·) denotes an order-preserving encryption function.
(2-3).LPaAccording to
Figure BDA00026379878100000810
LaAnd RaComputing leaf nodes of a Merkel tree
Figure BDA00026379878100000811
k∈[1,N]And hash (·) denotes a hash function. LPaObtaining a set of leaf nodes
Figure BDA00026379878100000812
LPaUsing NodesaEstablishing a complete Merkel tree VermeriAnd get its root node roota
Step (3), recording the position information, wherein the process is shown in figure 4; the method comprises the following steps:
LPacalculating coordinate information (x)a,ya) Hash value of (x)a||ya) (ii) a Calculating a secret key
Figure BDA00026379878100000813
Hash value of
Figure BDA00026379878100000814
To (x)a,ya) Carrying out order-preserving encryption to obtain
Figure BDA00026379878100000815
Wherein
Figure BDA00026379878100000816
Figure BDA00026379878100000817
And calculate OPEaHash value hash (OPE)a);
Broadcasting Record information Record to miners' nodes in a blockchain networka,RecordaThe composition is as follows:
Figure BDA00026379878100000818
Figure BDA00026379878100000819
represents LPaUsing a private key
Figure BDA00026379878100000820
And digitally signing the information with a digital signature algorithm. Miner node pair Record in block chain networkaVerifying, and writing the block chain into the block chain through a consensus process after the block chain passes the verification;
step (4), uploading the position information and the verification information, wherein the process is shown in fig. 5; the method comprises the following steps:
(4-1).LPabroadcast to all full nodes
Figure BDA00026379878100000821
Figure BDA00026379878100000822
Represents LPaUsing a private key
Figure BDA0002637987810000091
And digitally signing the information with a digital signature algorithm.
(4-2).LPaTo the direction of
Figure BDA0002637987810000092
Sending
Figure BDA0002637987810000093
Enc (-) denotes an asymmetric cryptographic function,
Figure BDA0002637987810000094
to represent
Figure BDA0002637987810000095
The public key of (2).
Figure BDA0002637987810000096
Using a private key
Figure BDA0002637987810000097
Decryption
Figure BDA0002637987810000098
To obtain
Figure BDA0002637987810000099
Calculating (x)a′||ya') and
Figure BDA00026379878100000910
hash value of (x)a′||ya') and
Figure BDA00026379878100000911
determine whether to associate with the on-chain data Record, respectivelyaHash (x) of (1)a||ya) And
Figure BDA00026379878100000912
and (3) equality: if the data integrity is equal to the data integrity, the data integrity verification is completed, and the information is accepted
Figure BDA00026379878100000945
If not, the data is falsified, and the information is refused to be received
Figure BDA00026379878100000913
Step (5), sharing position information, wherein the process is shown in figure 6; the method comprises the following steps:
(5-1).
Figure BDA00026379878100000914
to the direction of
Figure BDA00026379878100000915
Application for LPaThe location information of (a);
Figure BDA00026379878100000916
according to its grade mark m, to
Figure BDA00026379878100000917
Transmitting location information
Figure BDA00026379878100000918
Wherein
Figure BDA00026379878100000919
Figure BDA00026379878100000920
Using a private key
Figure BDA00026379878100000921
Decryption
Figure BDA00026379878100000922
To obtain
Figure BDA00026379878100000923
(5-2).
Figure BDA00026379878100000924
To full node FnodedAuthentication data is requested. FnodedTransmitting verification data according to its grade mark m
Figure BDA00026379878100000925
Wherein the content of the first and second substances,
Figure BDA00026379878100000926
representation according to leaf node
Figure BDA00026379878100000927
Calculating VermeraRoot node rootaOther necessary node sets.
Figure BDA00026379878100000928
Using a private key
Figure BDA00026379878100000929
Decryption
Figure BDA00026379878100000930
To obtain
Figure BDA00026379878100000931
(5-3).
Figure BDA00026379878100000932
Computing leaf node
Figure BDA00026379878100000933
Joining sets of essential nodes
Figure BDA00026379878100000934
Vermer is obtained by calculationaRoot node root ofa'; calculate OPEa' and
Figure BDA00026379878100000935
hash value hash (OPE)a') and
Figure BDA00026379878100000936
root judgmenta′、hash(OPEa′)、
Figure BDA00026379878100000937
And on-chain data RecordaRoot in (1)a、 hash(OPEa)、
Figure BDA00026379878100000938
Whether they are equal: if equal to each otherIf yes, finishing the data integrity verification; if not, the data is tampered, and the sharing fails.
(5-4).
Figure BDA00026379878100000939
Judgment of
Figure BDA00026379878100000940
And
Figure BDA00026379878100000941
whether or not: if so, completing the pairing of the areas
Figure BDA00026379878100000942
Verifying the authenticity of the card; if not, the position area information is false, and the sharing fails.
If all of the verification jobs are passed,
Figure BDA00026379878100000943
determining LPaIn the square position area
Figure BDA00026379878100000944
And the position information is successfully shared.
Step (6), updating the position information, wherein the process is shown in FIG. 7; the method comprises the following steps:
(6-1).LPawhen updating the position information for the p-th time, the position coordinate at this time is assumed to be
Figure BDA0002637987810000101
Noting offset vector
Figure BDA0002637987810000102
LPaUsing a secret key
Figure BDA0002637987810000103
Encryption
Figure BDA0002637987810000104
Obtaining a ciphertext
Figure BDA0002637987810000105
E (-) represents a symmetric encryption algorithm. LPaBroadcasting location update information
Figure BDA0002637987810000106
The information is composed as follows,
Figure BDA0002637987810000107
Figure BDA0002637987810000108
represents LPaA digital signature of the information. Miner node pairs in a blockchain network
Figure BDA0002637987810000109
And verifying, and writing the block chain into the block chain through a consensus process after the block chain passes the verification.
(6-2).
Figure BDA00026379878100001010
Discovery on blockchains
Figure BDA00026379878100001011
After the information is given, the user can select the information,
Figure BDA00026379878100001012
using a secret key
Figure BDA00026379878100001013
Decryption
Figure BDA00026379878100001014
To obtain
Figure BDA00026379878100001015
Figure BDA00026379878100001016
By means of
Figure BDA00026379878100001017
And
Figure BDA00026379878100001018
can determine LPaAt diagonal vertices of
Figure BDA00026379878100001019
And
Figure BDA00026379878100001020
square position area of
Figure BDA00026379878100001021
The location information is updated successfully. Wherein the content of the first and second substances,
Figure BDA00026379878100001022

Claims (7)

1. a block chain based multi-level location information sharing method,
the users in the system are divided into three types, namely a position information provider, a position information demander and a full node; the position information provider is a user providing original position information, the position information demander is a user needing to obtain the position information, and the whole nodes are nodes for storing and providing verification information;
the system has (N +1) class-level position information demanders, and when the position information demanders join the system, the system allocates a class identifier I to the position information demanders according to the real identity of the position information demanders, wherein I is 0,1, … and N; the smaller the grade mark is, the higher the access grade of the position information demander is; the location information demander with the level identification of 0 can determine the precise coordinates of the location information provider; the method is characterized by comprising the following specific steps:
step (1), initializing a system;
step (2), in order to realize the goal of multi-level privacy protection and information verifiability, a position information provider carries out data preprocessing;
step (3), the position information provider records the position information;
step (4), uploading position information and verification information by a position information provider;
step (5), position information sharing is carried out among position information demanders;
and (6) when the position information is updated, the position information provider uploads the offset vector ciphertext, and the position information demander decrypts the offset vector and updates the position information by means of the offset vector.
2. The block chain-based multi-level location information sharing method according to claim 1, wherein the step (1) is specifically:
(1-1) the user puts forward a registration application to the system and obtains a unique identification ID number ID corresponding to the real identity information of the useri,i∈[1,n]N represents the number of users registered in the system;
(1-2) if the user is LPiDetermining { ri 1,ri 2,...,ri N},ri 1<ri 2<...<ri N;ri IInformation about LP available to a requester of location information having a designation of level IiThe side length of the square position region with the highest precision, I ═ 1, 2., N; generation using a key generation algorithm
Figure FDA0002637987800000011
Figure FDA0002637987800000012
Is a symmetric encryption key, LP, used in encrypting or decrypting data during the location update phaseiIndicates that the ID number is IDiThe location information provider of (1);
(1-3) if the user is a position information demander, the system allocates a grade identifier for the user;
and (1-4) executing a public and private key pair generation algorithm by a user at the user side to generate a pair of public and private keys (PK, SK) stored at the user side for the user to use.
3. The blockchain-based multi-level location information sharing method according to claim 2, wherein the step (2) is specifically:
(2-1).LPiposition coordinate P ofi=(xi,yi);
First, LPiGenerating a random vector v1=(x1′,y1') satisfies x1′,
Figure FDA0002637987800000021
Determining a diagonal vertex as Pi L1And Pi R1Square area of
Figure FDA0002637987800000022
Figure FDA0002637987800000023
Figure FDA0002637987800000024
Then, LPiGenerating a random vector v2=(x2′,y2') satisfies x2′,
Figure FDA0002637987800000025
Determining a diagonal vertex as Pi L2And Pi R2Square area of
Figure FDA0002637987800000026
Figure FDA0002637987800000027
Figure FDA0002637987800000028
LPiRepeating the above operation N times to determine N positive valuesSquare area, obtaining area information set
Figure FDA0002637987800000029
And a set of diagonal vertices Pi L={Pi L1,Pi L2,...,Pi LNAnd Pi R={Pi R1,Pi R2,...,Pi RN};
(2-2).LPiUsing an order preserving encryption algorithm OPE and keys
Figure FDA00026379878000000210
Encrypting the diagonal vertex coordinates to obtain a diagonal vertex ciphertext set
Figure FDA00026379878000000211
And
Figure FDA00026379878000000212
Figure FDA00026379878000000213
Figure FDA00026379878000000214
k∈[1,N]ciph (·) denotes an order-preserving encryption function;
(2-3) computing leaf nodes of Merkel Tree
Figure FDA0002637987800000031
hash (·) represents a hash function; obtaining a set of leaf nodes
Figure FDA0002637987800000032
LPiUsing NodesiEstablishing a complete Merkel tree VermeriAnd get its root node rooti
4. The blockchain-based multi-level location information sharing method according to claim 3, wherein the step (3) is specifically:
LPicalculating coordinate information (x)i,yi) Hash value of (x)i||yi) Calculating a secret key
Figure FDA0002637987800000033
Hash value of
Figure FDA0002637987800000034
To (x)i,yi) Carrying out order-preserving encryption to obtain an order-preserving encrypted value
Figure FDA0002637987800000035
Figure FDA0002637987800000036
And
Figure FDA0002637987800000037
respectively represent a pair xiAnd yiAn order-preserving encrypted value of the order-preserving encryption,
Figure FDA0002637987800000038
calculate OPEiHash value hash (OPE)i);
Broadcasting Record information Record to miners' nodes in a blockchain networki
RecordiComprises the following components:
Figure FDA0002637987800000039
Figure FDA00026379878000000310
represents LPiUsing a private key
Figure FDA00026379878000000311
Digitally signing the information with a digital signature algorithm; miner node pair Record in block chain networkiAnd verifying, and writing the block chain into the block chain through a consensus process after the block chain passes the verification.
5. The blockchain-based multi-level location information sharing method according to claim 4, wherein the step (4) is specifically:
(4-1).LPibroadcast to all full nodes
Figure FDA00026379878000000312
Figure FDA00026379878000000313
Represents LPiUsing a private key
Figure FDA00026379878000000314
Digitally signing the information with a digital signature algorithm;
(4-2).LPito at least one LD0Sending
Figure FDA00026379878000000315
Enc (-) denotes an asymmetric cryptographic function,
Figure FDA00026379878000000316
represents LD0The public key of (2);
LD0using a private key
Figure FDA00026379878000000317
Decryption
Figure FDA00026379878000000318
To obtain
Figure FDA00026379878000000319
Calculating (x)i′||yi') and
Figure FDA00026379878000000320
hash value of (x)i′||yi') and
Figure FDA00026379878000000321
determine whether to associate with the on-chain data Record, respectivelyiHash (x) of (1)i||yi) And
Figure FDA00026379878000000322
and (3) equality: if the data integrity is equal to the data integrity, the data integrity verification is completed, and the information is accepted
Figure FDA00026379878000000323
If not, the data is falsified, and the information is refused to be received
Figure FDA00026379878000000324
6. The blockchain-based multi-level location information sharing method according to claim 5, wherein the step (5) is specifically:
(5-1) the ID number is IDjLocation information demander with grade mark a
Figure FDA0002637987800000041
To equal or higher level of access
Figure FDA0002637987800000042
Application for LPiA is not less than b, j belongs to [1, n ]],l∈[1,n];
Figure FDA0002637987800000043
Identify a direction according to its rank
Figure FDA0002637987800000044
Transmitting location information
Figure FDA0002637987800000045
Wherein the content of the first and second substances,
Figure FDA0002637987800000046
Figure FDA0002637987800000047
to represent
Figure FDA0002637987800000048
The public key of (2);
Figure FDA0002637987800000049
using a private key
Figure FDA00026379878000000410
Decryption
Figure FDA00026379878000000411
To obtain
Figure FDA00026379878000000412
(5-2).
Figure FDA00026379878000000413
To a certain full node FnodehRequesting authentication data, FnodehIdentify a direction according to its rank
Figure FDA00026379878000000437
Sending authentication data
Figure FDA00026379878000000414
Wherein, FnodehIndicates that the ID number is IDhAll nodes of (h ∈ [1, n ]],
Figure FDA00026379878000000415
Representation according to leaf node
Figure FDA00026379878000000416
Calculating VermeriRoot node rootiOther necessary node sets;
Figure FDA00026379878000000417
using a private key
Figure FDA00026379878000000418
Deciphered Veri aTo obtain
Figure FDA00026379878000000419
(5-3).
Figure FDA00026379878000000420
Computing leaf node
Figure FDA00026379878000000421
Joining sets of essential nodes
Figure FDA00026379878000000422
Vermer is obtained by calculationiRoot node root ofi'; calculate OPEi' and
Figure FDA00026379878000000423
hash value hash (OPE)i') and
Figure FDA00026379878000000424
root judgmenti′、hash(OPEi′)、
Figure FDA00026379878000000425
Respectively with the on-chain data RecordiRoot in (1)i、hash(OPEi)、
Figure FDA00026379878000000426
Whether they are equal: if the data integrity is equal to the data integrity, finishing the data integrity verification; if the data are not equal, the data are falsified, and the sharing fails;
(5-4).
Figure FDA00026379878000000427
judgment of
Figure FDA00026379878000000428
And
Figure FDA00026379878000000429
whether or not: if so, completing the pairing of the areas
Figure FDA00026379878000000430
Verifying the authenticity of the card; if the position area information is false, the sharing fails;
if all of the verification jobs are passed,
Figure FDA00026379878000000431
determining LPiIn the square position area
Figure FDA00026379878000000432
And the position information is successfully shared.
7. The blockchain-based multi-level location information sharing method according to claim 6, wherein the step (6) is specifically:
(6-1).LPiwhen updating the position information for the p-th time, the position coordinate at this time is assumed to be
Figure FDA00026379878000000433
Noting offset vector
Figure FDA00026379878000000434
LPiUsing a secret key
Figure FDA00026379878000000435
Encryption Vi pTo obtain a ciphertext
Figure FDA00026379878000000436
E (-) represents a symmetric encryption algorithm;
LPibroadcasting location update information
Figure FDA0002637987800000051
Figure FDA0002637987800000052
The information consists of:
Figure FDA0002637987800000053
Figure FDA0002637987800000054
represents LPiA digital signature on the information; miner node pairs in a blockchain network
Figure FDA0002637987800000055
Verifying, and writing the block chain into the block chain through a consensus process after the block chain passes the verification;
(6-2) having undergone information sharing procedure
Figure FDA0002637987800000056
Discovery on blockchains
Figure FDA0002637987800000057
After the information is given, the user can select the information,
Figure FDA0002637987800000058
using a secret key
Figure FDA0002637987800000059
Decryption
Figure FDA00026379878000000510
To obtain Vi p
Figure FDA00026379878000000511
By means of Vi pAnd
Figure FDA00026379878000000512
can determine LPiAt diagonal vertices of
Figure FDA00026379878000000513
And
Figure FDA00026379878000000514
square position area of
Figure FDA00026379878000000515
The position information is updated successfully; wherein the content of the first and second substances,
Figure FDA00026379878000000516
CN202010831054.8A 2020-08-18 2020-08-18 Block chain-based multi-level position information sharing method Active CN112084533B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010831054.8A CN112084533B (en) 2020-08-18 2020-08-18 Block chain-based multi-level position information sharing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010831054.8A CN112084533B (en) 2020-08-18 2020-08-18 Block chain-based multi-level position information sharing method

Publications (2)

Publication Number Publication Date
CN112084533A true CN112084533A (en) 2020-12-15
CN112084533B CN112084533B (en) 2022-02-11

Family

ID=73729091

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010831054.8A Active CN112084533B (en) 2020-08-18 2020-08-18 Block chain-based multi-level position information sharing method

Country Status (1)

Country Link
CN (1) CN112084533B (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114978523A (en) * 2022-04-13 2022-08-30 浙江安存云链数据技术有限公司 Privacy protection geographical position proving system based on block chain computer

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109274727A (en) * 2018-08-31 2019-01-25 中国联合网络通信集团有限公司 Based on the meteorological data sharing method of block chain, apparatus and system
US20190166133A1 (en) * 2017-11-30 2019-05-30 Bank Of America Corporation Multicomputer processing for data authentication and event execution using a blockchain approach
CN110620772A (en) * 2019-09-20 2019-12-27 西安电子科技大学 Block chain-based spatial crowdsourcing multi-level position privacy protection method
US20200153627A1 (en) * 2018-11-09 2020-05-14 Ares Technologies, Inc. Systems and methods for distributed key storage
CN111448781A (en) * 2019-07-11 2020-07-24 阿里巴巴集团控股有限公司 Shared blockchain data storage
CN111541737A (en) * 2020-03-25 2020-08-14 广东工业大学 AED equipment position sharing method based on block chain

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190166133A1 (en) * 2017-11-30 2019-05-30 Bank Of America Corporation Multicomputer processing for data authentication and event execution using a blockchain approach
CN109274727A (en) * 2018-08-31 2019-01-25 中国联合网络通信集团有限公司 Based on the meteorological data sharing method of block chain, apparatus and system
US20200153627A1 (en) * 2018-11-09 2020-05-14 Ares Technologies, Inc. Systems and methods for distributed key storage
CN111448781A (en) * 2019-07-11 2020-07-24 阿里巴巴集团控股有限公司 Shared blockchain data storage
CN110620772A (en) * 2019-09-20 2019-12-27 西安电子科技大学 Block chain-based spatial crowdsourcing multi-level position privacy protection method
CN111541737A (en) * 2020-03-25 2020-08-14 广东工业大学 AED equipment position sharing method based on block chain

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
QIUYUN LYU ET AL.: "SBAC:A secure blockchain-based access control framework for information-centric networking", 《JOURNAL OF NETWORK AND COMPUTER APPLICATIONS》 *
WANG, QH ET AL.: "SPS and DPS: Two New Grid-Based Source Location Privacy Protection Schemes in Wireless Sensor Networks", 《SENSORS》 *
YX JI ET AL.: "BMPLS: Blockchain-Based Multi-level Privacy-Preserving Location Sharing Scheme for Telecare Medical Information Systems", 《JOURNAL OF MEDICAL SYSTEMS》 *
姬雅娴: "基于区块链的用户位置信息安全共享方案", 《中国优秀硕士学位论文全文数据库信息科技辑》 *
陈稼珅: "基于区块链智能合约的去中心化在线众包机制", 《中国优秀硕士学位论文全文数据库信息科技辑》 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114978523A (en) * 2022-04-13 2022-08-30 浙江安存云链数据技术有限公司 Privacy protection geographical position proving system based on block chain computer

Also Published As

Publication number Publication date
CN112084533B (en) 2022-02-11

Similar Documents

Publication Publication Date Title
CN106548345B (en) Method and system for realizing block chain private key protection based on key partitioning
CN109074434B (en) Method and system for verifying ownership of digital assets using distributed hash tables and peer-to-peer distributed ledgers
CN106961336B (en) A kind of key components trustship method and system based on SM2 algorithm
JP6877448B2 (en) Methods and systems for guaranteeing computer software using distributed hash tables and blockchain
WO2018112946A1 (en) Registration and authorization method, device and system
US6035398A (en) Cryptographic key generation using biometric data
US20190295069A1 (en) Systems and methods for integrating cryptocurrency wallet identifiers with digital certificates
CN112019591A (en) Cloud data sharing method based on block chain
KR20190075771A (en) Authentication System Using Block Chain Through Distributed Storage after Separating Personal Information
CN110197082A (en) Data processing method, data processing equipment and computer system
CN106487506B (en) Multi-mechanism KP-ABE method supporting pre-encryption and outsourcing decryption
JPH11506222A (en) Multi-step digital signature method and system
CN110830245B (en) Anti-quantum-computation distributed Internet of vehicles method and system based on identity secret sharing and implicit certificate
CN108551435B (en) Verifiable encryption group signature method with anonymity
CN112801664B (en) Intelligent contract supply chain trusted service method based on block chain
EP3395004B1 (en) A method for encrypting data and a method for decrypting data
CN1446418A (en) Securing arbitrary communication services
CN113761582A (en) Group signature based method and system for protecting privacy of block chain transaction under supervision
US20220020020A1 (en) Methods, systems, and devices for managing digital assets
CN110581839A (en) Content protection method and device
CN112749417A (en) Electronic academic certificate data protection and sharing system based on block chain
CN112470423A (en) Computer-implemented system and method for asset blending
CN115552397A (en) Multi-party and multi-purpose anti-quantum signature and key establishment
CN113079177B (en) Remote sensing data sharing method based on time and decryption frequency limitation
CN112084533B (en) Block chain-based multi-level position information sharing method

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant