[go: up one dir, main page]

CN113205346A - Depocenter encryption authentication and authentication method capable of canceling bill - Google Patents

Depocenter encryption authentication and authentication method capable of canceling bill Download PDF

Info

Publication number
CN113205346A
CN113205346A CN202110444728.3A CN202110444728A CN113205346A CN 113205346 A CN113205346 A CN 113205346A CN 202110444728 A CN202110444728 A CN 202110444728A CN 113205346 A CN113205346 A CN 113205346A
Authority
CN
China
Prior art keywords
server
chain
commitment
data
check
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.)
Pending
Application number
CN202110444728.3A
Other languages
Chinese (zh)
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.)
Shanghai Secco Travel Technology Service Co ltd
Shanghai Saike Mobility Technology Service Co Ltd
Original Assignee
Shanghai Secco Travel Technology Service Co ltd
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 Shanghai Secco Travel Technology Service Co ltd filed Critical Shanghai Secco Travel Technology Service Co ltd
Priority to CN202110444728.3A priority Critical patent/CN113205346A/en
Publication of CN113205346A publication Critical patent/CN113205346A/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/018Certifying business or products
    • G06Q30/0185Product, service or business identity fraud
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/04Payment circuits
    • G06Q20/06Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme
    • G06Q20/065Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3823Payment protocols; Details thereof insuring higher security of transaction combining multiple encryption tools for a transaction

Landscapes

  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Engineering & Computer Science (AREA)
  • General Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Finance (AREA)
  • General Physics & Mathematics (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • Development Economics (AREA)
  • Marketing (AREA)
  • Economics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Computer Security & Cryptography (AREA)
  • Storage Device Security (AREA)

Abstract

The invention discloses a depocenter encryption authentication and authentication method capable of canceling a bill, which relates to the field of bill authenticity determination, can cancel the bill, perform verification authentication at any time and ensure authenticity and effectiveness; because the bills are linked up, the real surnames of the bills can be ensured, frequent verification is avoided, distributed multi-chain authentication also better conforms to the trend of the Internet, distributed management is realized, and revocation can be performed; the method for applying the block chain technology to bill verification is an innovative experiment, because all the bills are not decentralized at present, the decentralized style of the block chain well accords with the revocable decentralized encryption authentication and authentication method.

Description

Depocenter encryption authentication and authentication method capable of canceling bill
Technical Field
The invention relates to the field of bill authenticity determination, in particular to a revocable decentralized encryption authentication method for bills.
Background
The invention discloses a depocenter encryption authentication and authentication method with removable bill, which can determine the authenticity of the bill and can be withdrawn.
Disclosure of Invention
The invention aims to overcome the defects of the prior art and provides a revocable decentralized encryption authentication and authentication method for bills, which can revoke bills, check and authenticate bills at any time and ensure the authenticity and effectiveness.
In order to solve the technical problems, the invention provides the following technical scheme:
the invention relates to a depocenter encryption authentication and authentication method with bill revocable, which adopts a block chain technology, wherein the block chain is a decentralized, distrusted and non-falsifiable distributed account book technology; the distributed mode is not only embodied as distributed storage of data, but also embodied as distributed recording of the data, namely, the data are commonly maintained by participants of the system; decentralization, security and non-tamperable traceability of the blockchain can enable trust to be established between participating principals: data ownership, transaction and authorization range are recorded on the block chain, the data ownership can be confirmed, and the refined authorization range can standardize the use of data; meanwhile, each step from acquisition to distribution of data can be recorded on the block chain, so that the data source can be traced, the data source is further restrained, the data quality is enhanced, and bills can be better managed by a decentralized data management platform based on the block chain;
the block chain uses asymmetric encryption, which is generally divided into three main modes: a large integer decomposition problem class, a discrete logarithm problem class and an elliptic curve class;
the problem class of large integer decomposition refers to that the product of two large prime numbers is used as an encrypted number, and because the prime numbers have irregularity, cracking can only be searched and decoded through continuous trial calculation; the discrete logarithm problem class refers to an asymmetric distributed encryption algorithm based on the difficulty of discrete logarithm and using a strong one-way hash function; the elliptic curve class refers to that a group of asymmetric special values are calculated by using a plane elliptic curve;
the method uses an upgraded ECDSA encryption algorithm of an elliptic curve, based on a block chain, a distributed authentication mechanism is established by using a multi-chain architecture, the authentication adopts a block chain consensus algorithm, the multi-chain architecture, namely the multi-chain, is divided into three layers, a chain management layer SMC manages verification node deposit through a contract SMC, the verification nodes are randomly sampled and the like; date is a specific transaction data layer, and each sub-chain respectively maintains the full-state data of each sub-chain and the full state of the main chain; the state layer is mainly a generation layer of transaction, and can also be called an execution layer of an intelligent contract; if the processing capacity of one computer is C transactions, the main chain node can observe C subcohains, and the whole system can process C-C transactions;
most users in a multi-chain system run two parts of programs, as follows:
(i) a full node (requiring O (c) resources) or a lightweight node (requiring O (log (c)) resources) on the backbone;
(ii) a "child client" that interacts with the backbone via RPC (since this client is also running on the current user's computer, it is considered trusted); it can also be a light client for any child chain, a full client for a particular child chain (a user needs to specify that they are "monitoring" a particular child chain), or as a verifier node; in these cases, the storage and computation requirements of one child chain client will also not exceed o (c); the main chain is used for generating random numbers, storing relevant information of verification nodes, managing the verification nodes and tracking sub-chain blocks, and the sub-chains are used for processing transactions and storing the state of account contracts;
in the protocol, a central main chain is used for storing and managing a current effective verifier set, a transaction containing 50000 is sent in the current main chain to become an initial verifier, the transaction is sent out, and when the main chain processes the block, a transaction sender enters a verifier sequencing stage and finally becomes an effective (active) verifier until the transaction sender voluntarily logs out or is forcibly logged out due to improper behaviors;
the main load sources on the daughter strands are attestations (attests), one attest has a dual role:
(1) validating a parent block in the backbone;
(2) confirm chunk hash in the daughter strand (a sufficient number of such proofs create a "cross-link", confirming that the chunk is fragmented into the backbone);
each child chain (say 1024 total) is itself a chain for storage transactions and accounts; crosslinking is the primary means by which the daughter strands can communicate with each other, i.e., by "confirming" the daughter strands into the main chain; alternatively, a simpler "minimal subchain algorithm" could be envisioned, where cross-linking is simply the hashing of proposed data blocks that are not linked to each other;
once validated, blockchain techniques are always validated, and therefore it is desirable to provide a way to revoke transactions, and since transactions cannot be cancelled, a way to configure transactions as unusable is provided, as follows:
each party is given a revocation key, if the other party tries to cheat, punishment can be carried out, in order to explain the revocation key, the bill is subjected to interactive verification among different service terminals, the revocation key can also be used, the server is compared with different exchanges, the verification cost is compared with bitcoin, and a more complex verification channel is constructed between two servers of the server A and the server B; the server A and the server B are respectively assumed to be at different places; the user of server B often sends payment to the user of server a and vice versa; the method comprises the following six cases:
(1) the server A and the server B start the channel through cooperative establishment, and each person invests X cost data (check cost) into the channel; the initial balance is that server A has X cost data and server B has X cost data; the check ticket locks the channel state in 2-2 multiple signatures, as in the simple channel example;
(2) check ticket may have one or more inputs from server a (plus X cost data coins or more) and server B (plus X cost or more); investments must slightly exceed channel capacity to pay for verification costs; the transaction has an output that locks a total of 2X cost data to 2-of-2 multiple addresses controlled by server a and server B; if their input exceeds the value they need to contribute, the ticket proof may also have one or more cost data outputs returning changes to server A and server B; this is a single check formed by multiple inputs provided and signed by both parties;
(3) before sending, the ticket must be collaboratively built and signed by the parties; server a has a commitment check with two outputs; the first outputs X cost data owed by the immediate payment server B to her; the second output pays for X cost data owed to itself by server a, but provided that only after a time lock of Z block times, server B has a different commitment transaction with two outputs; the first outputs X cost data which are owed to the server B by the payment server A; the second output payment server B owes X cost data of itself, but only has a time lock after Z block time, so that two parties have a commitment transaction to spend 2-2 fund output; the commitment-verified input is signed by the other party; at any time, the party holding the commitment verification can sign (complete 2-2 signature) and broadcast; however, if both servers broadcast a commitment check, the commitment check will pay the other party immediately, and both servers must wait for a short time for the lock to expire; by enforcing redemption hold-offs at one of the outputs, the algorithm can be made slightly penalizing to the parties in choosing to unilaterally broadcast the commitment check; but time delay alone is not sufficient to encourage fair behavior; a revocation key allowing a rogue party to punish abnormal operators by taking hold of all balances of the channel;
(4) there is one "delayed" output per commitment check; one party server can exchange the output script after Z block time, or the other party can exchange the output script if the other party has the revocation KEY KEY; so when server a signs a commitment check for server B, server a will define the second output as an output that can be paid to itself after Z block times, or anyone who can present the revocation key; server a constructs this check and creates a revocation key kept secret by server a; when server a is ready to transition to a new channel state and wishes to revoke this commitment, it will not reveal the revocation key to server B
(5) Server B can freely open the check because server B will pay its owed cost data immediately once sent; server a holds the check, but knows that if he sends when the unilateral channel is closed, he will have to wait Z block times before getting the check;
(6) when the channel enters the next state, server a must revoke this commitment check before server B agrees to sign the next commitment check; to do this, all he needs to do is send the revocation KEY to the server B; once server B has the revocation KEY KEY for this commitment, server B may start the next commitment check; if server a attempts to cheat by issuing a previous commitment transaction, server B may redeem the deferred output of server a with a revocation key; if the server A cheats, the server B can obtain BOTH (two parties) output;
the revocation agreement is bilateral, which means that in each round, as the status of the verification channel develops further, both parties exchange new commitment verifications, exchange revocation keys for previous commitments, and sign each other's commitment transactions; when they accept the new state, both servers previously penalized any cheating activity by giving the necessary revocation key to the other, making the previous state impossible to use.
Compared with the prior art, the invention has the following beneficial effects:
because the bills are linked up, the real surnames of the bills can be ensured, frequent verification is avoided, distributed multi-chain authentication also better conforms to the trend of the Internet, distributed management is realized, and revocation can be performed; the method for applying the block chain technology to bill verification is an innovative experiment, because all the bills are not decentralized at present, the decentralized style of the block chain well accords with the revocable decentralized encryption authentication and authentication method.
Detailed Description
It should be understood that the preferred embodiments described herein are for purposes of illustration and explanation only and are not intended to limit the present invention.
Example 1
The invention provides a method for canceling centralized encryption authentication and authentication of bills, which uses a block chain technology, wherein the block chain is a decentralized, distrusted and non-falsifiable distributed account book technology; the distributed mode is not only embodied as distributed storage of data, but also embodied as distributed recording of the data, namely, the data are commonly maintained by participants of the system; decentralization, security and non-tamperable traceability of the blockchain can enable trust to be established between participating principals: data ownership, transaction and authorization range are recorded on the block chain, the data ownership can be confirmed, and the refined authorization range can standardize the use of data; meanwhile, each step from acquisition to distribution of data can be recorded on the block chain, so that the data source can be traced, the data source is further restrained, the data quality is enhanced, and bills can be better managed by a decentralized data management platform based on the block chain;
the block chain uses asymmetric encryption, which is generally divided into three main modes: a large integer decomposition problem class, a discrete logarithm problem class and an elliptic curve class;
the problem class of large integer decomposition refers to that the product of two large prime numbers is used as an encrypted number, and because the prime numbers have irregularity, cracking can only be searched and decoded through continuous trial calculation; the discrete logarithm problem class refers to an asymmetric distributed encryption algorithm based on the difficulty of discrete logarithm and using a strong one-way hash function; the elliptic curve class refers to that a group of asymmetric special values are calculated by using a plane elliptic curve;
ECDSA is a standard of the united states government, is an upgraded version using elliptic curves, and is widely regarded as safe and reliable after years of detailed cryptanalysis. The method and bitcoin use the ECDSA encryption algorithm. Taking the bit currency system as an example, the asymmetric encryption mechanism is that the bit currency system generally generates 256-bit random numbers as a private key by calling a random number generator at the bottom of an operating system. The total amount of the bit coin private key is large, and the private key with the bit coin is extremely difficult to obtain by traversing all private key spaces, so that the cryptography is safe. For identification, the 256-bit binary form of the bitcoin private key is converted by the SHA256 hashing algorithm and the Base58 to form a 50-character-length easily-identified and written private key which is provided for the user. The public key of the bitcoin is a random number of 65 bytes in length generated by the private key first through the Secp256k1 elliptic curve algorithm. The public key can be used for generating an address used in bitcoin transaction, and the generation process comprises the steps of firstly carrying out SHA256 and RIPEMD160 double-Hash operation on the public key to generate a digest result (namely a result of Hash 160) with the length of 20 bytes, and then carrying out SHA256 Hash algorithm and Base58 conversion to form a bitcoin address with the length of 33 characters. The public key generation process is irreversible, i.e. the private key cannot be deduced by public key back-reflection. The public and private keys of bitcoin are typically kept in a bitcoin wallet file, with the private key being the most important. Losing the private key means that all bitcoin assets for the corresponding address are lost. In the existing bit currency and block chain system, a multi-private key encryption technology has been derived according to the actual application requirements so as to meet more flexible and complex scenes such as multiple signatures and the like.
The method uses an upgraded ECDSA encryption algorithm of an elliptic curve, based on a block chain, a distributed authentication mechanism is established by using a multi-chain architecture, the authentication adopts a block chain consensus algorithm, the multi-chain architecture, namely the multi-chain, is divided into three layers, a chain management layer SMC manages verification node deposit through a contract SMC, the verification nodes are randomly sampled and the like; date is a specific transaction data layer, and each sub-chain respectively maintains the full-state data of each sub-chain and the full state of the main chain; the state layer is mainly a generation layer of transaction, and can also be called an execution layer of an intelligent contract; if the processing capacity of one computer is C transactions, the main chain node can observe C subcohains, and the whole system can process C-C transactions;
most users in a multi-chain system run two parts of programs, as follows:
(i) a full node (requiring O (c) resources) or a lightweight node (requiring O (log (c)) resources) on the backbone;
(ii) a "child client" that interacts with the backbone via RPC (since this client is also running on the current user's computer, it is considered trusted); it can also be a light client for any child chain, a full client for a particular child chain (a user needs to specify that they are "monitoring" a particular child chain), or as a verifier node; in these cases, the storage and computation requirements of one child chain client will also not exceed o (c); the main chain is used for generating random numbers, storing relevant information of verification nodes, managing the verification nodes and tracking sub-chain blocks, and the sub-chains are used for processing transactions and storing the state of account contracts;
herein, the term ShardBlock is used to distinguish from Block (tile) because: (i) they are different rlp (recurivelengtprefix) objects: transaction is a layer 0 object, ShardBlock is a first layer object used to package transactions, and block is a second layer object used to package ShardBlock (header); (ii) this is more clear in the context of sub-chains. Typically, ShardBlock must consist of ShardBlockHeader and TransactionList. The specific architecture design can be divided into 4 layers, namely a main chain, a sub chain, execution processing of contracts and an application layer. The interaction between each layer and the interaction between each module adopt BU communication protocol (P2P, RPC, json, http).
In the protocol, a central main chain is used for storing and managing a current effective verifier set, a transaction containing 50000 is sent in the current main chain to become an initial verifier, the transaction is sent out, and when the main chain processes the block, a transaction sender enters a verifier sequencing stage and finally becomes an effective (active) verifier until the transaction sender voluntarily logs out or is forcibly logged out due to improper behaviors;
the main load sources on the daughter strands are attestations (attests), one attest has a dual role:
(1) validating a parent block in the backbone;
(2) confirm chunk hash in the daughter strand (a sufficient number of such proofs create a "cross-link", confirming that the chunk is fragmented into the backbone);
each child chain (say 1024 total) is itself a chain for storage transactions and accounts; crosslinking is the primary means by which the daughter strands can communicate with each other, i.e., by "confirming" the daughter strands into the main chain; alternatively, a simpler "minimal subchain algorithm" could be envisioned, where cross-linking is simply the hashing of proposed data blocks that are not linked to each other;
once validated, blockchain techniques are always validated, and therefore it is desirable to provide a way to revoke transactions, and since transactions cannot be cancelled, a way to configure transactions as unusable is provided, as follows:
each party is given a revocation key, if the other party tries to cheat, punishment can be carried out, in order to explain the revocation key, the bill is subjected to interactive verification among different service terminals, the revocation key can also be used, the server is compared with different exchanges, the verification cost is compared with bitcoin, and a more complex verification channel is constructed between two servers of the server A and the server B; the server A and the server B are respectively assumed to be at different places; the user of server B often sends payment to the user of server a and vice versa; currently, these checks occur on the blockchain, but this means paying for cost data and waiting for several blocks to confirm; the cost is greatly reduced and the checking process is accelerated by arranging the checking channel between the servers, and the method comprises the following six conditions:
(1) the server A and the server B start the channel through cooperative establishment, and each person invests X cost data (check cost) into the channel; the initial balance is that server A has X cost data and server B has X cost data; the check ticket locks the channel state in 2-2 multiple signatures, as in the simple channel example;
(2) check ticket may have one or more inputs from server a (plus X cost data coins or more) and server B (plus X cost or more); investments must slightly exceed channel capacity to pay for verification costs; the transaction has an output that locks a total of 2X cost data to 2-of-2 multiple addresses controlled by server a and server B; if their input exceeds the value they need to contribute, the ticket proof may also have one or more cost data outputs returning changes to server A and server B; this is a single check formed by multiple inputs provided and signed by both parties;
(3) before sending, the ticket must be collaboratively built and signed by the parties; server a has a commitment check with two outputs; the first outputs X cost data owed by the immediate payment server B to her; the second output pays for X cost data owed to itself by server a, but provided that only after a time lock of Z block times, server B has a different commitment transaction with two outputs; the first outputs X cost data which are owed to the server B by the payment server A; the second output payment server B owes X cost data of itself, but only has a time lock after Z block time, so that two parties have a commitment transaction to spend 2-2 fund output; the commitment-verified input is signed by the other party; at any time, the party holding the commitment verification can sign (complete 2-2 signature) and broadcast; however, if both servers broadcast a commitment check, the commitment check will pay the other party immediately, and both servers must wait for a short time for the lock to expire; by enforcing redemption hold-offs at one of the outputs, the algorithm can be made slightly penalizing to the parties in choosing to unilaterally broadcast the commitment check; but time delay alone is not sufficient to encourage fair behavior; a revocation key allowing a rogue party to punish abnormal operators by taking hold of all balances of the channel;
(4) there is one "delayed" output per commitment check; one party server can exchange the output script after Z block time, or the other party can exchange the output script if the other party has the revocation KEY KEY; so when server a signs a commitment check for server B, server a will define the second output as an output that can be paid to itself after Z block times, or anyone who can present the revocation key; server a constructs this check and creates a revocation key kept secret by server a; when server a is ready to transition to a new channel state and wishes to revoke this commitment, it will not reveal the revocation key to server B
(5) Server B can freely open the check because server B will pay its owed cost data immediately once sent; server a holds the check, but knows that if he sends when the unilateral channel is closed, he will have to wait Z block times before getting the check;
(6) when the channel enters the next state, server a must revoke this commitment check before server B agrees to sign the next commitment check; to do this, all he needs to do is send the revocation KEY to the server B; once server B has the revocation KEY KEY for this commitment, server B may start the next commitment check; if server a attempts to cheat by issuing a previous commitment transaction, server B may redeem the deferred output of server a with a revocation key; if the server A cheats, the server B can obtain BOTH (two parties) output;
the revocation agreement is bilateral, which means that in each round, as the status of the verification channel develops further, both parties exchange new commitment verifications, exchange revocation keys for previous commitments, and sign each other's commitment transactions; when they accept the new state, both servers previously penalized any cheating activity by giving the necessary revocation key to the other, making the previous state impossible to use.
The following illustrates one working example thereof:
one of the users of server B wishes to send X cost data to the user of server a. To transmit X cost data over the check channel, server a and server B must update the channel state to reflect the new cost balance. They will commit a new state (state number 2), split the Z (M + N) cost data for the channel, with M cost data belonging to server a and N cost data belonging to server B. To update the status of the channel, they will each create a new commitment check reflecting the cost balance of the new channel.
As noted above, these commitment checks are asymmetric, so the commitment check held by each party forces the server to wait for redemption. It is essential that both servers must first exchange the revocation KEY to invalidate the previous commitment before signing the new commitment transaction. In this case, the benefit of server a is consistent with the true state of the channel, so server a has no reason to broadcast the previous state. However, for server B, the balance left for server B in state number 1 is higher than in state 2. When server B gives server a revocation KEY of the previous commitment check (state number 1), server a effectively revokes its own ability to benefit from rolling back the channel state to the previous state. With the revocation KEY, server B can redeem the two outputs of the previous commitment check without delay. That is, server a may exercise the right to possess all of the output once server B broadcasts the previous state.
Importantly, revocation does not occur automatically. While server a has the ability to penalize server B's anomalous behavior, server a must observe signs of cheating in the blockchain. If server a sees the previous committed transaction broadcast, he has Z block times to take action and uses the revocation key to prevent fraud by server B and to punish server B with all balances, i.e., all 2X cost data.
An asymmetric revocable commitment with a relative time lock (CSV) is a better way to implement a payment channel, and can also be used on top of a revocation ticket, bringing a variable of the revocation ticket. With this architecture, channels can remain open indefinitely and can hold billions of intermediate commitment transactions. In a prototype implementation of a lightning network, committed states are identified by a 48-bit index, allowing over 281 million (2.8 x 10^14) state transitions in any single channel.
The invention has the following beneficial effects:
because the bills are linked up, the real surnames of the bills can be ensured, frequent verification is avoided, distributed multi-chain authentication also better conforms to the trend of the Internet, distributed management is realized, and revocation can be performed. The method for applying the block chain technology to bill verification is an innovative experiment, because all the bills are not decentralized at present, the decentralized style of the block chain well accords with the revocable decentralized encryption authentication and authentication method.
Finally, it should be noted that: although the present invention has been described in detail with reference to the foregoing embodiments, it will be apparent to those skilled in the art that changes may be made in the embodiments and/or equivalents thereof without departing from the spirit and scope of the invention. Any modification, equivalent replacement, or improvement made within the spirit and principle of the present invention should be included in the protection scope of the present invention.

Claims (1)

1. A bill revocable decentralized encryption authentication and authentication method is characterized in that a blockchain technology is used, wherein the blockchain is a decentralized, distrusted and non-falsifiable distributed account book technology; the distributed mode is not only embodied as distributed storage of data, but also embodied as distributed recording of the data, namely, the data are commonly maintained by participants of the system; decentralization, security and non-tamperable traceability of the blockchain can enable trust to be established between participating principals: data ownership, transaction and authorization range are recorded on the block chain, the data ownership can be confirmed, and the refined authorization range can standardize the use of data; meanwhile, each step from acquisition to distribution of data can be recorded on the block chain, so that the data source can be traced, the data source is further restrained, the data quality is enhanced, and bills can be better managed by a decentralized data management platform based on the block chain;
the block chain uses asymmetric encryption, which is generally divided into three main modes: a large integer decomposition problem class, a discrete logarithm problem class and an elliptic curve class;
the problem class of large integer decomposition refers to that the product of two large prime numbers is used as an encrypted number, and because the prime numbers have irregularity, cracking can only be searched and decoded through continuous trial calculation; the discrete logarithm problem class refers to an asymmetric distributed encryption algorithm based on the difficulty of discrete logarithm and using a strong one-way hash function; the elliptic curve class refers to that a group of asymmetric special values are calculated by using a plane elliptic curve;
the method uses an upgraded ECDSA encryption algorithm of an elliptic curve, based on a block chain, a distributed authentication mechanism is established by using a multi-chain architecture, the authentication adopts a block chain consensus algorithm, the multi-chain architecture, namely the multi-chain, is divided into three layers, a chain management layer SMC manages verification node deposit through a contract SMC, the verification nodes are randomly sampled and the like; date is a specific transaction data layer, and each sub-chain respectively maintains the full-state data of each sub-chain and the full state of the main chain; the state layer is mainly a generation layer of transaction, and can also be called an execution layer of an intelligent contract; if the processing capacity of one computer is C transactions, the main chain node can observe C subcohains, and the whole system can process C-C transactions;
most users in a multi-chain system run two parts of programs, as follows:
(i) a full node (requiring O (c) resources) or a lightweight node (requiring O (log (c)) resources) on the backbone;
(ii) a "child client" that interacts with the backbone via RPC (since this client is also running on the current user's computer, it is considered trusted); it can also be a light client for any child chain, a full client for a particular child chain (a user needs to specify that they are "monitoring" a particular child chain), or as a verifier node; in these cases, the storage and computation requirements of one child chain client will also not exceed o (c); the main chain is used for generating random numbers, storing relevant information of verification nodes, managing the verification nodes and tracking sub-chain blocks, and the sub-chains are used for processing transactions and storing the state of account contracts;
in the protocol, a central main chain is used for storing and managing a current effective verifier set, a transaction containing 50000 is sent in the current main chain to become an initial verifier, the transaction is sent out, and when the main chain processes the block, a transaction sender enters a verifier sequencing stage and finally becomes an effective (active) verifier until the transaction sender voluntarily logs out or is forcibly logged out due to improper behaviors;
the main load sources on the daughter strands are attestations (attests), one attest has a dual role:
(1) validating a parent block in the backbone;
(2) confirm chunk hash in the daughter strand (a sufficient number of such proofs create a "cross-link", confirming that the chunk is fragmented into the backbone);
each child chain (say 1024 total) is itself a chain for storage transactions and accounts; crosslinking is the primary means by which the daughter strands can communicate with each other, i.e., by "confirming" the daughter strands into the main chain; alternatively, a simpler "minimal subchain algorithm" could be envisioned, where cross-linking is simply the hashing of proposed data blocks that are not linked to each other;
once validated, blockchain techniques are always validated, and therefore it is desirable to provide a way to revoke transactions, and since transactions cannot be cancelled, a way to configure transactions as unusable is provided, as follows:
each party is given a revocation key, if the other party tries to cheat, punishment can be carried out, in order to explain the revocation key, the bill is subjected to interactive verification among different service terminals, the revocation key can also be used, the server is compared with different exchanges, the verification cost is compared with bitcoin, and a more complex verification channel is constructed between two servers of the server A and the server B; the server A and the server B are respectively assumed to be at different places; the user of server B often sends payment to the user of server a and vice versa; the method comprises the following six cases:
(1) the server A and the server B start the channel through cooperative establishment, and each person invests X cost data (check cost) into the channel; the initial balance is that server A has X cost data and server B has X cost data; the check ticket locks the channel state in 2-2 multiple signatures, as in the simple channel example;
(2) check ticket may have one or more inputs from server a (plus X cost data coins or more) and server B (plus X cost or more); investments must slightly exceed channel capacity to pay for verification costs; the transaction has an output that locks a total of 2X cost data to 2-of-2 multiple addresses controlled by server a and server B; if their input exceeds the value they need to contribute, the ticket proof may also have one or more cost data outputs returning changes to server A and server B; this is a single check formed by multiple inputs provided and signed by both parties;
(3) before sending, the ticket must be collaboratively built and signed by the parties; server a has a commitment check with two outputs; the first outputs X cost data owed by the immediate payment server B to her; the second output pays for X cost data owed to itself by server a, but provided that only after a time lock of Z block times, server B has a different commitment transaction with two outputs; the first outputs X cost data which are owed to the server B by the payment server A; the second output payment server B owes X cost data of itself, but only has a time lock after Z block time, so that two parties have a commitment transaction to spend 2-2 fund output; the commitment-verified input is signed by the other party; at any time, the party holding the commitment verification can sign (complete 2-2 signature) and broadcast; however, if both servers broadcast a commitment check, the commitment check will pay the other party immediately, and both servers must wait for a short time for the lock to expire; by enforcing redemption hold-offs at one of the outputs, the algorithm can be made slightly penalizing to the parties in choosing to unilaterally broadcast the commitment check; but time delay alone is not sufficient to encourage fair behavior; a revocation key allowing a rogue party to punish abnormal operators by taking hold of all balances of the channel;
(4) there is one "delayed" output per commitment check; one party server can exchange the output script after Z block time, or the other party can exchange the output script if the other party has the revocation KEY KEY; so when server a signs a commitment check for server B, server a will define the second output as an output that can be paid to itself after Z block times, or anyone who can present the revocation key; server a constructs this check and creates a revocation key kept secret by server a; when server a is ready to transition to a new channel state and wishes to revoke this commitment, it will not reveal the revocation key to server B
(5) Server B can freely open the check because server B will pay its owed cost data immediately once sent; server a holds the check, but knows that if he sends when the unilateral channel is closed, he will have to wait Z block times before getting the check;
(6) when the channel enters the next state, server a must revoke this commitment check before server B agrees to sign the next commitment check; to do this, all he needs to do is send the revocation KEY to the server B; once server B has the revocation KEY KEY for this commitment, server B may start the next commitment check; if server a attempts to cheat by issuing a previous commitment transaction, server B may redeem the deferred output of server a with a revocation key; if the server A cheats, the server B can obtain BOTH (two parties) output;
the revocation agreement is bilateral, which means that in each round, as the status of the verification channel develops further, both parties exchange new commitment verifications, exchange revocation keys for previous commitments, and sign each other's commitment transactions; when they accept the new state, both servers previously penalized any cheating activity by giving the necessary revocation key to the other, making the previous state impossible to use.
CN202110444728.3A 2021-04-24 2021-04-24 Depocenter encryption authentication and authentication method capable of canceling bill Pending CN113205346A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110444728.3A CN113205346A (en) 2021-04-24 2021-04-24 Depocenter encryption authentication and authentication method capable of canceling bill

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110444728.3A CN113205346A (en) 2021-04-24 2021-04-24 Depocenter encryption authentication and authentication method capable of canceling bill

Publications (1)

Publication Number Publication Date
CN113205346A true CN113205346A (en) 2021-08-03

Family

ID=77028256

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110444728.3A Pending CN113205346A (en) 2021-04-24 2021-04-24 Depocenter encryption authentication and authentication method capable of canceling bill

Country Status (1)

Country Link
CN (1) CN113205346A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117692259A (en) * 2024-02-02 2024-03-12 杭州天谷信息科技有限公司 Registration method and verification method based on verification network
CN119963191A (en) * 2025-04-10 2025-05-09 深圳桑达银络科技有限公司 Payment service security protection method and system based on blockchain

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170330180A1 (en) * 2016-05-16 2017-11-16 Coinplug, Inc. Method for using and revoking authentication information and blockchain-based server using the same
CN110223127A (en) * 2019-05-20 2019-09-10 深圳壹账通智能科技有限公司 Bill data backing method and system
CN110891067A (en) * 2019-12-10 2020-03-17 成都工业学院 A revocable multi-server privacy protection authentication method and system
CN112149077A (en) * 2020-10-12 2020-12-29 杭州云链趣链数字科技有限公司 Supply chain billing method, system and computer equipment based on block chain technology

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170330180A1 (en) * 2016-05-16 2017-11-16 Coinplug, Inc. Method for using and revoking authentication information and blockchain-based server using the same
CN110223127A (en) * 2019-05-20 2019-09-10 深圳壹账通智能科技有限公司 Bill data backing method and system
CN110891067A (en) * 2019-12-10 2020-03-17 成都工业学院 A revocable multi-server privacy protection authentication method and system
CN112149077A (en) * 2020-10-12 2020-12-29 杭州云链趣链数字科技有限公司 Supply chain billing method, system and computer equipment based on block chain technology

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
BLOCKCHAIN: "谈谈区块链的加密技术(公钥、私钥)", 《知乎》, pages 1 - 3 *
朝歌1122: ""区块链-不对称可撤销承诺", 《CSDN博客》, pages 1 - 2 *
跨链技术践行者: "区块链多链架构设计原理", 《CSDN博客》, pages 1 - 7 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117692259A (en) * 2024-02-02 2024-03-12 杭州天谷信息科技有限公司 Registration method and verification method based on verification network
CN117692259B (en) * 2024-02-02 2024-05-31 杭州天谷信息科技有限公司 Registration method and verification method based on verification network
CN119963191A (en) * 2025-04-10 2025-05-09 深圳桑达银络科技有限公司 Payment service security protection method and system based on blockchain

Similar Documents

Publication Publication Date Title
Kaur et al. Scalability in blockchain: Challenges and solutions
Wüst et al. Platypus: A central bank digital currency with unlinkable transactions and privacy-preserving regulation
CN108876599B (en) Poverty relief loan management system
CN110309634B (en) Credible advertisement data management system based on block chain
CN109155036B (en) Systems and methods for controlling asset-related actions via blockchain
JP2022095918A (en) Tokenization methods and systems for performing exchanges on the blockchain
Zhu et al. Hybrid blockchain design for privacy preserving crowdsourcing platform
Wang et al. Beh-Raft-Chain: a behavior-based fast blockchain protocol for complex networks
Aggarwal et al. History of blockchain-blockchain 1.0: Currency
CN108462696B (en) Decentralized block chain intelligent identity authentication system
Doku et al. LightChain: On the lightweight blockchain for the Internet-of-Things
CN115801260B (en) Block chain-assisted collaborative attack and defense game method in untrusted network environment
US20240022398A1 (en) System and method for decentralized confirmation of entries in a directed acyclic graph for rapidly confirming as authentic ledger entries without requiring centralized arbitration of authenticity
CN113486407B (en) Deposit list management system and method based on block chain
CN113205346A (en) Depocenter encryption authentication and authentication method capable of canceling bill
CN113328854B (en) Service processing method and system based on block chain
Singh et al. Understanding the public, private and consortium consensus algorithms in blockchain technology
CN112583598A (en) Complex Internet of things alliance chain system communication mechanism
Yamamoto et al. Examination on interoperability of blockchains by using ZK-rollups
Espel et al. Proposal for protocol on a quorum blockchain with zero knowledge
Deng et al. Designated‐Verifier Anonymous Credential for Identity Management in Decentralized Systems
Kalbantner et al. ZKP Enabled Identity and Reputation Verification in P2P Marketplaces
Panduro-Ramirez et al. Blockchain approach for implementing access control in IOT
CN118400086A (en) A two-layer consensus method for enterprise-level composite blockchain
Chishti et al. Instantaneous account settlement in roll-up based layer-2 blockchain framework for metaverse applications

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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20210803