The present application claims priority to Korean Patent Application No. 10-2023-0178270, filed Dec. 11, 2023, the entire contents of which are incorporated herein for all purposes by this reference.
The present disclosure relates to a method and a system for proving integrity of a distributed ledger. More particularly, the present disclosure relates to a method and a system for proving integrity of a distributed ledger on the basis of a plurality of intelligent committees, which is capable of more effectively and reliably solving the Byzantine Generals Problem of a distributed ledger by mutually and complementarily checking the integrity of the distributed ledger by using the plurality of intelligent committees.
A blockchain, which is one type of distributed database, uses a peer-to-peer (P2P) network. A distributed database is a technology that makes many users share a large-scale database by physically distributing data. A blockchain is a structure list and network participant node devices can store data and collectively record and manage master data recording transaction information through verification.
When a new block is created in a blockchain network, the block verified through a consensus algorithm of a plurality of participants (node devices) can be connected to the existing block, and be stored in a distributed manner after being confirmed as the final ledger including transaction history. In addition, when a transaction occurs on a participation node device, transaction information verified through the effectiveness verification with respect to the corresponding transaction is transmitted to each node device. Through this, transaction history, that is, verified transactions, are transmitted to be stored in a distributed manner and it is possible to identify the forgery on the basis of the distributedly stored transactions when data of some nodes is forged. The security stability of blockchain increases as more users share data. In addition to virtual currencies such as Bitcoin, blockchain is being utilized in various online services such as cloud computing services.
Meanwhile, attempts to more clearly prove the integrity of notarization documents are being made by applying blockchain technology to electronic notarization systems. For example, when storing the original or a hash value of notarization documents on the blockchain, it is safer from hacking than existing computer systems, thereby adding the reliability to the process of creating, managing, and distributing notarization documents.
A technical task to be solved through the exemplary embodiments of the present disclosure is to provide a method and a system for proving integrity of a distributed ledger on the basis of a plurality of intelligent committees, which is capable of more effectively and reliably solving the Byzantine Generals Problem of a distributed ledger by mutually and complementarily checking the integrity of the distributed ledger by using the plurality of intelligent committees.
Another technical task to be solved through the exemplary embodiments of the present disclosure is to provide a method and a system, which more reliably ensures the integrity of data stored in a blockchain by checking whether ledger information is forged by using an audit node and which allows blockchain technology to be used for public ledgers that require high data stability and reliability.
Another technical task to be solved through the exemplary embodiments of the present disclosure is to provide a method and a system, which can ensure the integrity of blockchain network data by auditing ledger information in a random consensus proof-based blockchain network through an audit node operating with a plurality of consensus algorithms while allowing a non-random consensus proof-based blockchain network to be utilized as a random consensus proof-based blockchain network.
The technical tasks of the present disclosure are not limited to the technical tasks mentioned above, and other technical tasks not mentioned will be clearly understood by those skilled in the art from the following description.
According to an exemplary embodiment of the present disclosure for solving the above-mentioned problems, a method is provided for proving integrity of a distributed ledger on the basis of a plurality of intelligent committees, the method comprising: clustering a plurality of ledger information from a first plurality of node devices in a first intelligent committee, verifying forgery of the plurality of ledger information by a second plurality of node devices in a second intelligent committee by identifying a discrepancy between the plurality of ledger information, and generating a block for updating ledger information of the first plurality of node devices on the basis of a result of verifying the forgery of the plurality of ledger information, when an external data is generated for electronic notarization, the external data is respectively provided to the first intelligent committee and the second intelligent committee, wherein the first intelligent committee updates a first ledger information of the first intelligent committee with ledger information including the external data by a block generation process based on a first consensus algorithm, and wherein the second intelligent committee updates a second ledger information of the second intelligent committee with the ledger information including the external data by a block generation process based on a second consensus algorithm.
According to another exemplary embodiment of the present disclosure for solving the above-mentioned problems, a system is provided for proving integrity of a distributed ledger on the basis of a plurality of intelligent committees, the system comprising: a first intelligent committee for electronic notarization including a first plurality of node devices performing a neural consensus proof-based block generation process according to a preset condition, and a second intelligent committee identifying a discrepancy between a plurality of ledger information clustered from the first plurality of node devices, verifying forgery of the plurality of ledger information on the basis of a result of identifying the discrepancy, and replying with ledger information, whose integrity is verified, to the first intelligent committee, wherein the first intelligent committee generates a block for updating ledger information of the first intelligent committee by using the ledger information whose integrity is proven, the second intelligent committee is an audit network based on blockchain, the second intelligent committee proves an integrity of a distributed ledger by using a second consensus algorithm that operates independently from the first intelligent committee, the first intelligent committee verifies forgery of a different plurality of ledger information of the second intelligent committee and replies with a different ledger information, whose integrity is verified, to the second intelligent committee, and the second intelligent committee generates a block for updating ledger information of the second intelligent committee by using the different ledger information whose integrity is verified.
According to the exemplary embodiments of the present disclosure described above, it is possible to solve the Byzantine Generals Problem of a distributed ledger more effectively and reliably by mutually and complementarily checking the integrity of the distributed ledger by using the plurality of intelligent committees.
In addition, it is possible to more reliably ensure the integrity of data stored in a blockchain by checking whether ledger information is forged by using an audit node and to allow blockchain technology to be used for public ledgers that require high data stability and reliability.
In addition, it is possible to provide an efficient and fair neural consensus proof-based distributed consensus process while preventing waste of resources and social costs, by converting to be utilized as a random consensus proof-based blockchain network while maintaining the infrastructure and utility of the pre-established non-random consensus proof-based blockchain network as much as possible.
The beneficial effects of the present disclosure are not limited to the mentioned above, and other beneficial effects not mentioned will be clearly understood by those skilled in the art from the following description.
The above and other objectives, features and other advantages of the present disclosure will be more clearly understood from the following detailed description when taken in conjunction with the accompanying drawings.
The following provides only the principle of the present disclosure. Accordingly, those skilled in the art may implement the principle of the present disclosure and various apparatuses included in the concept and range of the present disclosure which are not clearly described or shown herein though. All conditional terminologies and embodiments described herein should be understood as being definitely intended as an object for understanding the concept of the present disclosure without limiting the specifically stated embodiments and states.
Further, all detailed descriptions enumerate not only the principle, aspects, and embodiments of the present disclosure, but specific embodiments should be understood as being intended to include structural and functional equivalents of those matters. Further, these equivalents should be understood as including all elements designed to perform the same functions regardless of not only equivalents known at present, but equivalents, that is, structures to be developed in the future.
Accordingly, for example, block diagrams of this specification should be understood as showing an exemplary conceptual respect that concretes the principle of the present disclosure. Similarly, all of flowcharts, state conversion diagrams, intention codes, etc. should be understood as showing various processes that can be substantially shown on computer-readable media and are performed by computers and processors regardless of whether a computer or a processor is definitely shown.
Further, definite use of terms proposed as a processor, control, or similar concepts should not be construed by exclusively citing hardware having ability to execute software and should be construed as suggestively including digital signal processor (DSP) hardware, and a ROM, a RAM, and a nonvolatile memory for storing software without limitation. Other well-known and generally used hardware may also be included.
The objectives, features, and advantages of the present disclosure described above will be clearer through the following detailed description relating to the accompanying drawing, so the spirit of the present disclosure would be easily implemented by those skilled in the art. Further, in description of present the disclosure, well-known technologies are not described in detail not to unnecessarily obscure the subject of the present disclosure.
In the present disclosure, the term “integrity” can be understood to have the same meaning as “originality,” and “integrity” and “originality” may be used interchangeably with the same meaning.
Hereinafter, exemplary embodiments of the present disclosure will be described in detail with reference to the accompanying drawings.
Accordingly, even when the ledger information of some node devices is damaged for hacking or other reasons, the integrity of the data stored in the blockchain network 1000 can be guaranteed because the same content as the original is immediately restored by the consensus algorithm of the neural consensus proof module cluster.
Although the blockchain network 1000 has a consensus algorithm capable of restoring the originality (or integrity), the damaged original may not be restored by itself in some extreme situations. For example, when a 51% of the attack on the blockchain network 1000 is successful and incorrect ledger information is considered to be the original, it may be difficult for the blockchain network 1000 to restore the damaged original by itself.
To remedy this problem, the system 4 for auditing the forgery of ledger information may audit the forgery of ledger information of node devices in the blockchain network 1000 through the audit network when it is determined that the originality of the blockchain network 1000 is damaged, and may provide the correct ledger information stored in the audit network 2000 to the blockchain network 1000, thereby restoring the originality of the ledger information of each node device in the blockchain network 1000.
Hereinafter, a detailed configuration and operation method of the neural consensus proof-based blockchain network 1000 and the audit network 2000 for auditing the forgery of ledger information will be described with specific exemplary embodiments.
A blockchain network 1000 according to an embodiment of the present disclosure may be a mesh-topology blockchain network configured by one or more node devices connected through a wired or wireless network. The node devices are connected to the blockchain network through I/O devices and can exchange data. The blockchain network system 1000 may include, as the node devices, various electronic systems such as mobile devices including a mobile phone, a smartphone, a PDA, a tablet computer, a laptop, etc., computing devices including a personal computer, a tablet computer, a netbook, etc., or electronic products including a television, a smart television, a security device for gate control, etc.
Further, each of the node devices 100 may have a communication module for connecting to the blockchain network. The blockchain network, for example, may be implemented as a wired network such as a Local Area Network (LAN), a Wide Area Network (WAN), or a Value Added Network (VAN). Further, the blockchain network may be implemented as all kinds of wireless networks such as a mobile radio communication network, a satellite communication network, Bluetooth, Wireless Broadband Internet (Wibro), High Speed Downlink Packet Access (HSDPA), Wi-Fi, Long Term Evolution (LTE). Depending on necessity, the blockchain network may be a wired-wireless mixed network.
Further, each of the node devices can register account information according to its node connection in transaction ledger data that are shared in a cloud manner through a network. Further, when there is a need for a transaction of encryption information for creating a blockchain, each trader terminal can propagate transaction information to be recorded in the transaction ledger data to every trader terminal.
Further, the transaction ledger data are updated and the information thereof is shared in accordance with mutual verification processing corresponding to the above process, whereby a transaction of encryption information for creating a blockchain can be made.
In this case, the transaction ledger data can be linked with a blockchain data having a structure in which a plurality of blocks is sequentially connected in order of creation by making each of blocks corresponding to predetermined times or units include a hash value for a block created before a current block. Accordingly, it is possible to easily verify whether the transaction ledger data have been tampered by verifying the hash values of the blockchain.
Security stability of the blockchain can be implemented by participation in the system of sharers who share data. Accordingly, transaction information blocks, which include specifications of sharing between sharer terminals connected to the blockchain network, specifications of issuance/transaction of encryption information for creating the blockchain, can be sequentially stored, and transaction verification processing for sequentially making hash values for anti-tempering thereof into a blockchain can be distributionally performed at the trader terminals.
A non-random consensus blockchain network 200 may refer to a non-random proof-based blockchain network, such as a Proof-of-Work (POW) or Proof-of-Stake (POS) blockchain network. For example, the non-random consensus blockchain network 200 may be the Bitcoin or Ethereum network.
The node devices 100 according to an embodiment of the present disclosure can constitute a neural consensus proof module cluster, and the neural consensus proof module cluster can configure a new block combined with neural consensus validation data on the basis of random consensus proof manner and can process the configured new block to be propagated through the non-random consensus blockchain network 200.
Accordingly, in the non-random consensus blockchain network 200, the propagated block data are shared again in the network and can be processed such that a next block is created again by the node device 100 configuring the neural consensus proof module cluster. Since specific proof such as PoW and PoW is not required in this process, it is possible to construct a new random consensus blockchain network system 1000 that can implement decentralization in a non-competitive manner.
That is, according to an embodiment of the present disclosure, since the neural consensus proof module cluster that enables the existing non-random consensus proof-based blockchain network 200 to be used as the random consensus proof-based blockchain network 1000 is constructed using the node device 100, it is possible to provide the node device 100 forming a network that enables a random consensus proof-based blockchain network based on a pre-constructed blockchain network to be operated while controlling an existing pre-constructed PoW-type or PoS-type blockchain network not to be operated anymore in the PoW or POS manner or to be limitatively operated in accordance with the minimum number of nodes of a Byzantine fault tolerance consensus.
Accordingly, it is possible to convert the pre-constructed non-random consensus proof-based blockchain network to be used as a random consensus proof-based blockchain while network maximally maintaining the infrastructure and usefulness of the pre-constructed non-random consensus proof-based blockchain network, so it is possible to provide a neural consensus proof-based distributed consensus process that prevents a waste of resources and social costs and is efficient and fair. In this case, a nonce chain and hash checking process configured on the basis of one-time random numbers may be used for participation qualification proof for a random consensus, but this is only an example designation and participation qualification proof of a random consensus can be possible even in various other manners.
The node devices 100 of the blockchain system 1000 according to the present disclosure may be included in a neural consensus proof module cluster for configuring a next block through a random node selection process and each may include a neural consensus proof module 110 included in the neural consensus proof module cluster to perform a random consensus proof process according to an embodiment of the present disclosure.
Further, the node devices 100 are connected to the non-random consensus blockchain network 200 and each may include a blockchain service unit 120 performing a sharing-propagating process of a next block configured by the random consensus proof process through the non-random consensus blockchain network 200.
Accordingly, in an embodiment of the present disclosure, the node devices 100 may be node devices 100 that participate in the non-random consensus blockchain network 200, and are selected by the random consensus selection process and selectively granted with a right to be able to create respective blocks in accordance with consensus conference, and accordingly, the random consensus blockchain network system 1000 can be independently constructed.
Further, as shown in
The neural consensus proof module cluster may be constructed with the third node device registered as a participant node for a basis. The participant node that is the third node device can verify a participation qualification on the basis of next consensus selection information that is obtained from consensus validation data of a new propagated block and the second node device may be a terminal that processes a congress node function operation by ascertaining whether a congress node is selected in accordance with the verification result. The first node device may be a terminal that processes a committee node function operation by ascertaining whether a committee node is selected in accordance with the verification result.
A node device 100 selected as a congress node can perform a candidate block proposal and consensus process like the second node device shown in
As a new block is configured and propagated in this way, the proof process of the existing non-random consensus blockchain network 200 can be processed to be restricted and Pow or Pos proof-based next block creation between node devices 100 can be processed only in an exceptional case in which the number of some nodes lacks a number set on the basis of a PBFT standard.
Meanwhile, such a participation qualification and verification information of the nodes 100 can be calculated on the basis of a random value, which is calculated for each node in accordance with participant node registration, and can be mutually opened and verified, in which a nonce chain can be used, as described above. For example, the node devices 100 can be determined as at least one of a participant node, a congress node, a committee node, or a chair node, depending on what value a self qualification verification value accompanying hash processing, which uses a nonce value included in next consensus selection information, a height value of a current block, etc., is.
Further, as shown in
The device information setting unit 111 obtains, stores, and manages device information of a terminal 100 in which the neural consensus proof module 110 is installed. In this case, the device information may include at least one of node name information, device address information, device performance information, device reliability information, a used network information of the terminal 100. The device information can be used to recognize or construct a neural consensus proof module cluster, perform a vote consensus process, etc.
The node information setting unit 112 sets node information for registering a non-random consensus blockchain network 200 and a participant node. The set node information may include blockchain network client address information and the terminal 100 can connect to the blockchain network using the blockchain network client address information and can obtain or share block information.
The validation processing unit 113 obtains new block data propagated through the non-random consensus blockchain network 200, extracts validation data from the new block data, and obtains neural consensus designation information of a next block created on the basis a random consensus proof process in accordance with verification processing of the validation data.
Further, the consensus node functioning unit 115 is selectively driven on the basis of the neural consensus designation information of a next block and creates validation data of the next block, and can selectively drive at least one of a chair node functioning unit 1151, a congress node functioning unit 1152, and a committee node functioning unit 1153. The chair node functioning unit 1151 may be selectively operated through at least partial comparison of neural consensus designation information and the nonce value of a designated node device 100, but the present disclosure is not limited to this selection manner.
First, the chair node functioning unit 1151 can perform a chair process corresponding to congress and committee nodes and can collect, from congress nodes, delegation information and participation qualification verification information of an effective transaction block taken from a transaction pool of a blockchain network, and next block consensus candidate information. Accordingly, 3f+1 (f is a natural number) or more congress nodes for the next block can be selected and 2f+1 or more committee nodes can be selected.
Further, the congress node functioning unit 1152 can transmit delegation information and participation qualification verification information of an effective transaction block taken from a transaction pool of the non-random consensus blockchain network 200 to the node device 100 in which the chair node functioning unit 1151 is driven.
Further, the chair node functioning unit 1151 can select a block coinciding over a consensus quorum of a congress node as a candidate block from transaction blocks proposed by the congress node, can transmit a message requesting partial signature processing for multiple signature regions expressing consensus for the candidate block to node devices 100 in which the committee node functioning unit 1153 was driven. For example, the chair node functioning unit 1151 can determine f+1 coinciding transaction data candidate blocks from 2f+1 transaction data candidate blocks and can transmit a message requesting partial signature processing for multiple signature regions to the committee functioning node 1153, and a node 100 in which the committee node functioning unit 1153 was driven can process and transmit partial signatures expressing consensus corresponding to the candidate blocks to the node device 100 in which the chair node functioning unit 1151 was driven
Accordingly, the chair node functioning unit 1151 verifies and determines a candidate block for which multiple signature processing has been finished in accordance with committee consensus as distribution block, and creates a new block by creating and combining validation data corresponding to the consensus process with the distribution block.
The data interface unit 116 can convert the crated new block into the format of the non-random consensus blockchain network 200 and then transmit the new block to the blockchain service unit 120.
Then, the blockchain service unit 120 can propagate the new block through the non-random consensus blockchain network 200, and the new block not only can be propagated through the non-random consensus blockchain network 200, but can be added to a transaction data memory pool (mem pool) by operation of a transaction data management unit 121.
Meanwhile, though not shown, the node device 100 may include a memory that the blockchain service unit 120 and the neural consensus proof module 110 can use. The memory may include computer-readable instructions, and as the instructions stored in the memory are executed in a processor, the blockchain service unit 120 and the neural consensus proof module 110 can perform the operations described above. The memory may be a volatile memory or a nonvolatile memory.
The memory may include a storage to store data of a user. The storage may be an embedded multimedia card (eMMC), a solid state drive (SSD), a universal flash storage (UFS), etc. The storage may include at least one or more nonvolatile memory device. The nonvolatile memory device may be a NAND Flash Memory, a Vertical NAND (VNAND), a NOR Flash Memory, a Resistive Random Access Memory (RRAM), a Phase-Change Memory (PRM), a Magnetoresistive Random Access Memory (MRAM), a Ferroelectric Random Access Memory (FRAM), a Spin Transfer Torque Random Access Memory (STT-RAM), etc.
Referring to
The validation processing unit 113 can obtain neural consensus designation information of a next block created on the basis of a random consensus proof process, in accordance with verification processing of the validation data, and as described above, the validation data may include consensus process verification data corresponding to the random consensus proof process.
For example, the consensus process verification data may include nonce chain-based qualification proof hash data and multiple signature data formed by combining partial signatures of the congress node as member qualification verification information of a congress node that processes Further, the neural consensus for transaction data. consensus designation information of a next block may include nonce information for verifying the neural consensus participation qualification corresponding to the next block.
Then, the node device 100 determines whether it has been selected as a node configuring a neural consensus proof cluster node for the next block (S107), and ascertains whether it is a chair node on the basis of consensus designation information when it has been selected (S109).
When the node device has not been selected as a chair node, it can transmit delegation information and participation qualification information of the effective transaction block taken from the transaction pool of the blockchain network in accordance with the qualification to a congress chair node (S113).
Accordingly, a node device 100 in which the chair node functioning unit 1151 was driven can collect delegation information and next block consensus candidate information from other nodes (S115).
Further, the node device 100 in which the chair node functioning unit 1151 was driven determines an agreed candidate block from node devices 110 in which the congress node functioning units 1152 were driven, and transmits a message requesting partial signature processing for multiple signature regions expressing consensus for the candidate block to a committee member node (S117).
Further, the node device 100 in which the chair node functioning unit 1151 was driven verifies and determines a candidate block, for which multiple signature processing has been finished in accordance with the committee consensus, as a distribution block (S119), creates a new block by creating and combining validation data with the distribution block (S121), registers the combined new block into the transaction pool of the non-random consensus blockchain network 200, and propagates the new block through the pre-constructed non-random consensus blockchain network 200 (S123).
Further,
Further,
Meanwhile,
Accordingly, the validation processing unit 113 primarily verifies a consensus process by first ascertaining multiple signature information, can perform secondary verification by ascertaining whether the Merkle root value of a header is normal, and performs third verification by comparing the Merkle root value with a Merkle root value calculated again using transaction block information, thereby enabling safe processing of a transaction block.
Referring to
Further, the node device 100 determines whether a preset consensus quorum is not reached on the basis of Byzantine tolerance minimum allowable node number.
For example, a consensus quorum can be determined by a maximum Byzantine number (maximum allowable number of malicious nodes) that can be selected by a node selection probability P in correspondence to the number N of participant nodes, and when congress nodes are at least 3f+1 (f is a natural number) and committee nodes are at least 2f+1 or more, the nodes can satisfy the consensus quorum.
When the number of consensus nodes lacks the quorum of neural consensus congress and committee set in advance in accordance with the Byzantine tolerance minimum allowable node number, the node device 100 performs selective exceptional processing of forming the validation data of a next block in the Proof of Work (PoW) or Proof of stake (Pos) manner (S205).
On the contrary, when the number of consensus nodes is equal to or more than the quorum of neural consensus congress and committee set in advance in accordance with the Byzantine tolerance minimum allowable node number, the Proof of Work (POW) or Proof of stake (Pos) process of the non-random consensus proof-based blockchain network is restricted, a neural consensus is configured using the process of
Referring to
In general, in a non-random consensus manner of proof of work or proof of stake such as Ethereum, there are problems such as timeout of a block creation cycle or unstable consensus by repeated transactions due to abnormal service driving or overload. Accordingly, a service is temporarily stopped or hardfork is performed, so a current non-random consensus blockchain network 200 is not guaranteed with sufficient continuity in block creation and is vulnerable to dealing with disorders.
Accordingly, a process, which performs recognition or construction of a neural consensus proof module cluster and a vote consensus process according to an embodiment of the present disclosure, is complementarily performed when a disorder is generated while the existing non-random consensus blockchain network 200 is driven, so the process can be applied in a manner of securing continuity.
This can be achieved by setting one or more of node devices constituting the existing non-random consensus blockchain network 200 to operate as the node device 100 constituting the neural consensus proof module cluster described above without constructing a specific infrastructure when a preset disorder condition is generated.
In more detail, referring to
For such configuration, the node devices 100 may be driven as devices constituting a preset neural consensus proof module cluster and may be driven in a continuity security mode for securing continuity unlike converting and driving the existing block chain described above.
For example, the node devices 100 can be driven in any one of a network conversion mode in which the node devices 100 convert and use the existing non-random consensus blockchain network 200 as a random consensus blockchain network and a continuity security mode in which the node devices 100 are driven in an assistant manner when a disorder is generated in the existing non-random consensus blockchain network k 200, and
First, a node device 100 performs a next block consensus process in a common non-random consensus blockchain network 200 (S301).
Further, the node device 100 determines whether a next block consensus disorder condition is generated (S303).
In this case, various conditions may be set in advance for the next block consensus disorder condition, and preferably, a timeout condition when a block is not created for a first time may be used. For example, the first time may be the same as a second time that is a timeout time prescribed in the process of proof of work or proof of stake of the non-random consensus blockchain network 200.
Further, the first time may be set as a time shorter than the second time in consideration of continuity of work such that configuring a neural consensus proof module cluster is processed earlier than the timeout of the non-random consensus blockchain network 200.
Further, temporal service stop, etc. may be exemplified as the next block consensus disorder condition. For example, when the service of the non-random consensus blockchain network 200 is stopped due to hardfork or temporal service operation problem, assistant block creation processing that accompanies configuring a neural consensus proof module cluster may be set to be continuously performed.
When a disorder condition about the next block consensus is not generated, non-random consensus-based validation data on the non-random consensus blockchain network 200 are created in the manner of common proof of work or proof of stake (S304).
Further, when a disorder condition about the next block consensus is generated, the node device 100 described above can operates as the node device 100 constituting a neural consensus proof module cluster and performs the random-type neural consensus proof module cluster configuration process described with reference to
When consensus based on the neural consensus proof module cluster is finished (S307), the node device 100 configures neural consensus proof-based validation data and verifies data effectiveness between a previous block and a next block configured in the non-random consensus blockchain network 200 on the basis of the configured validation data (S309).
In this case, specific height information, previous block information, and next block information can be used for data validation between the previous block and the next block, and a block of non-random consensus format that can be used in the non-random consensus blockchain network 200 can be used through validation on the basis of the information.
Thereafter, the node device 100 creates a next consensus block based on the non-random consensus-based validation data in step S304 or the neural consensus proof-based validation data verified in step S309 (S311).
For example, the node device 100 creates a next block including the neural consensus proof-based validation data, that is, can create a next block of non-random consensus format verified by step S309. In more detail, when a current maximum height is 100, the node device 100 can create a next block that makes consensus be restarted on the non-random consensus blockchain network 200 from a block having a height of 110.
Further, the node device 100 propagates the created block as the next block of the non-random consensus blockchain network 200 (S313).
As such process of the node device 100 is performed, a neural consensus proof-based block creation process, which is driven in an assistant manner when a disorder is generated in the non-random consensus blockchain network 200 of proof of work or proof of stake manner such a Ethereum or Bitcoin, is performed, so continuity of a service can be sufficiently secured.
In the present exemplary embodiment, a first intelligent committee 3100 and a second intelligent committee 3200 may be blockchain networks operated by consensus algorithms that operate independently of each other, and for example, the first intelligent committee 3100 may be the neural consensus proof-based blockchain network 1000 of
As an exemplary embodiment, the second intelligent committee 3200 may be an audit network 2000 of
In the present exemplary embodiment, an exemplary embodiment may be described where the forgery is verified through other intelligent committees 3100, 3200 and its own originality is restored by using ledger information of other intelligent committees 3100, 3200 whose integrity are proven, when the originality (or integrity) is damaged in the first intelligent committee 3100 or the second intelligent committee 3200.
In particular,
First, referring to
Meanwhile, when verifying integrity through a typical consensus algorithm, ledger information may be considered to be damaged when 51% consensus is not achieved for the plurality of ledger information, but in the present exemplary embodiment, when even a ledger information not identical with another ledger information is among the plurality of ledger information (i.e., when any ledger information is different from another ledger information among the plurality of ledger information), it may be determined that the ledger information is damaged and a request for confirming forgery of the ledger information is transmitted. This may be because when a 51% attack on the plurality of ledger information is successful, it may be possible that the ledger information is damaged even when there is a consensus of more than 51%. In this case, it may not be possible to accurately determine whether the ledger information is damaged only by consensus on the plurality of ledger information by the first intelligent committee 3100. Therefore, in the present exemplary embodiment, it may be determined that the ledger information is damaged when even one ledger information not identical with another ledger information is among the plurality of ledger information.
When it is determined that the ledger information of the first intelligent committee 3100 is damaged, the request for confirming forgery of the ledger information may be transmitted to the second intelligent committee 3200, and the second plurality of node devices 3210 may reply with a verification result of the ledger information forgery after verifying the forgery of the plurality of ledger information in response to the confirmation request.
At this time, the second plurality of node devices 3210 may compare the plurality of ledger information with its owned and agreed first ledger information, that is, whose integrity is proved from the perspective of the second intelligent committee 3200, and may reply with the forgery verification result after verifying the forgery of the plurality of ledger information.
Specifically, by comparing whether the plurality of ledger information is identical with the first ledger information, the second plurality of node devices 3210 may perform the forgery verification with respect to the plurality of ledger information by determining among the plurality of ledger information the ledger information identical with the first ledger information the ledger information whose integrity is proven or determining among the plurality of ledger information the ledger information not identical with the first ledger information the forged ledger information.
Then, the second intelligent committee 3200 may reply with the verification result of the ledger information forgery to the first intelligent committee 3100. In this time, the second intelligent committee 3200 may reply to the first intelligent committee 3100 together with the first ledger information or the ledger information whose integrity is proven among the plurality of ledger information in order to restore the integrity of the first intelligent committee 3100. In this case, the first intelligent committee 3100 may restore the integrity of the damaged ledger information by updating its own ledger information on the basis of the replied first ledger information or the ledger information whose integrity is proven among the plurality of ledger information.
Meanwhile, referring to
For example, a different plurality of ledger information may be extracted from a second plurality of node devices 3210 composing the neural consensus proof module cluster of the second intelligent committee 3200 in order to determine whether the originality of the second intelligent committee 3200 is damaged, a request for confirming the forgery of ledger information may be sent to the first intelligent committee 3100 assuming that the ledger information of the second intelligent committee 3200 is damaged when a discrepancy is found between a different plurality of ledger information, and the first plurality of node devices 3110 may reply with the verification result of the ledger information forgery after verifying the forgery of the different plurality of ledger information in response to the confirmation request.
In this case, the first plurality of node devices 3110 may verify the forgery of the different plurality of ledger information by comparing the different plurality of ledger information with its owned and agreed second ledger information, that is, whose integrity is proved from the perspective of the first intelligent committee 3100, and the first intelligent committee 3100 may reply with the verification result of the ledger information forgery to the second intelligent committee 3200 on the basis of the result of performing the verification. In this case, the first intelligent committee 3100 may reply to the second intelligent committee 3200 together with the second ledger information or the ledger information whose integrity is proven among the different plurality of ledger information in order to restore the integrity of the second intelligent committee 3200. The second intelligent committee 3200 may restore the integrity of the damaged ledger information by updating its own ledger information on the basis of the replied second ledger information or the ledger information whose integrity is proven among the different plurality of ledger information.
As an exemplary embodiment, the second plurality of node devices 3210 may be nodes composing the second intelligent committee 3200, and the second intelligent committee 3200 may be a committee that verifies and restores the integrity of ledger information, which the second plurality of node devices 3210 have, through a predetermined blockchain consensus algorithm.
In this case, the predetermined blockchain consensus algorithm may be an algorithm including Proof of Work (POW), Proof of Stake (POS), Delegate Proof of Stake (DPoS), Zero-Knowledge Proofs, Practical Byzantine Fault Tolerance (PBFT), or a random consensus algorithm based on neural consensus proof, and may be a consensus algorithm that operates independently from the first intelligent committee 3100.
Meanwhile, the first intelligent committee 3100 and the second intelligent committee 3200 may synchronize block data with each other for use in verifying and restoring the integrity of the ledger information. For example, the second intelligent committee 3200 and the first intelligent committee 3100 may be equally provided with the transaction data whenever transaction data according to external data is generated, and may record the transaction data in the respective audit ledger information through the respective block generation process. Then, as described above, whenever there is a possibility that the ledger information is damaged, the first intelligent committee 3100 or the second intelligent committee 3200 may maintain the integrity of the ledger information and the synchronization state with the counterpart intelligent committee by updating its ledger information on the basis of the proven ledger information of the counterpart.
For example, suppose that external data for electronic notarization is generated, as shown in
As an exemplary embodiment, the first intelligent committee 3100 and the second intelligent committee 3200 may be a network separated from each other. This may be for minimizing a situation where the two intelligent committee 3100, 3200 are simultaneously attacked, by maintaining the first intelligent committee 3100 and the second intelligent committee 3200 in a network mutually separate from each other.
In the present exemplary embodiment, the steps S401 to S404 may represent the steps for proving and restoring the integrity of the first intelligent committee, and the steps S405 to S408 may represent the steps for proving and restoring the integrity of the second intelligent committee.
First, the plurality of ledger information may be clustered from the first plurality of node devices in the first intelligent committee for electronic notarization (S401).
Then, the forgery of the plurality of ledger information may be verified by the second plurality of node devices in the second intelligent committee by identifying a discrepancy between the plurality of clustered ledger information and responding to the discrepancy (S402).
In this case, when any ledger information is different from another ledger information among the plurality of ledger information, it may be determined that the ledger information agreed upon by the first plurality of node devices is damaged.
In addition, the plurality of ledger information may be compared with the ledger information of the second intelligent committee, whose integrity is proven, and it may be determined that the ledger information identical with the ledger information of the second intelligent committee among the plurality of ledger information is the ledger information whose integrity is proven.
Next, a block for updating the ledger information of the first intelligent committee may be generated on the basis of the verification result (S403).
For example, the ledger information of the second intelligent committee or the ledger information whose integrity is proven may be provided to the first intelligent committee as the verification result, and the first plurality of node devices in the first intelligent committee may generate the block for updating the ledger information of the first intelligent committee on the basis of the provided ledger information.
Then, the generated block may be distributed to each node in the first intelligent committee, and through this, the integrity of the damaged ledger information of the first intelligent committee may be restored (S404).
Next, a method for proving and restoring the integrity of the second intelligent committee will be described. The method for proving and restoring the integrity of the second intelligent committee operates completely and mutually complementary to the method for proving and restoring the integrity of the first intelligent committee.
First, a different plurality of ledger information may be clustered from the second plurality of node devices in the second intelligent committee for electronic notarization (S405).
Then, the forgery of the different plurality of ledger information may be verified by the first plurality of node devices in the first intelligent committee, by identifying a discrepancy between the different plurality of clustered ledger information and responding to the discrepancy (S406).
In this case, when any ledger information is different from another ledger information among the different plurality of ledger information, it may be determined that the ledger information agreed upon by the second plurality of node devices is damaged.
In addition, the different plurality of ledger information may be compared with the ledger information of the first intelligent committee whose integrity is proven, and the ledger information identical with the ledger information of the first intelligent committee among the different plurality of ledger information may be determined as the ledger information whose integrity is proven.
Next, a block for updating the ledger information of the second intelligent committee may be generated on the basis of the verification result (S407).
For example, the ledger information of the first intelligent committee or the ledger information whose integrity is proven may be provided to the second intelligent committee as the verification result, and the second plurality of node devices in the second intelligent committee may generate the block for updating the ledger information of the second intelligent committee on the basis of the provided ledger information.
Then, the generated block may be distributed to each node in the second intelligent committee, and through this, the integrity of the damaged ledger information of the second intelligent committee may be restored (S408).
The forgery validator 3211 may verify whether the plurality of ledger information extracted from the second plurality of node devices 3110 are forged. In this case, it may be determined that at least one of the plurality of ledger information is forged when there is a discrepancy between the plurality of ledger information, but the forgery validator 3211 may further determine which ledger information is forged among the plurality of ledger information by comparing each of the plurality of ledger information with the ledger information where the integrity of the second intelligent committee 3200 is proven. For example, when the ledger information where the integrity of the second intelligent committee 3200 is proven among the plurality of ledger information is identical with the first ledger information with each other and is different from the second ledger information, on the basis of this, the forgery validator 3211 may determine that the first ledger information is correct ledger information and the second ledger information is damaged ledger information.
The verification result provider 3212 may generate a verification result on the basis of the verification result of the forgery validator 3211 and may provide the same to the first intelligent committee 3100. In this case, the verification result provider 3212 may provide the ledger information, where the integrity of the second intelligent committee 3200 is proven, to the first intelligent committee 3100 in order to restore the originality of the first intelligent committee 3100.
The node information setting unit 3213 may set node information for registering the node device 3210. The set node information may include client address information of the second intelligent committee 3200, and the node device 3210 may access the second intelligent committee 3200 through the client address information of the second intelligent committee 3200 and may obtain or share block information.
The consensus node function unit 3214 may operate a consensus algorithm for generating a block in the second intelligent committee 3200. In this case, the consensus algorithm may include Proof of Work (POW), Proof of Stake (POS), Delegate Proof of Stake (DPoS), Zero-Knowledge Proofs, Practical Byzantine Fault Tolerance (PBFT), or a random consensus algorithm based on neural consensus proof, as described above, and the ledger information of the second intelligent committee 3200 may be updated by the consensus algorithm.
Hereinafter, an exemplary computing device 500 in which methods described in various embodiments of the present disclosure are implemented will be described with reference to
As shown in
The processor 510 controls the overall operation of each component of the computing device 500. The processor 510 may be configured to include a central processing unit (CPU), micro-processor unit (MPU), micro-controller unit (MCU), and graphic processing unit (GPU), or at least one of any type of processor well known in the art. Additionally, the processor 510 may perform operations on at least one application or program to execute methods/operations according to various embodiments of the present disclosure. The computing device 500 may include one or more processors.
The memory 530 stores various data, commands and/or information. The memory 530 may load one or more programs 591 from the storage 590 to execute methods/operations according to various embodiments of the present disclosure. An example of the memory 530 may be RAM, but is not limited thereto.
The bus 550 provides communication functionality between components of computing device 500. The bus 550 may be implemented as various types of buses, such as an address bus, a data bus, and a control bus.
The communication interface 570 supports wired and wireless Internet communication of the computing device 500. The communication interface 570 may support various communication methods other than Internet communication. To this end, the communication interface 570 may be configured to include a communication module well known in the technical field of the present disclosure.
The storage 590 may store one or more computer programs 591 as non-transitory media. The storage 590 may be configured to include command memory such as read only memory (ROM), erasable programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), flash memory, a hard disk, a removable disk, or any form of computer-readable recording medium well known in the art to which the present disclosure pertains.
The computer program 591 may include one or more instructions to allow methods/operations according to various embodiments of the present disclosure to be implemented.
For example, the computer program 591 may comprises instructions for performing operations comprising: an operation for clustering a plurality of ledger information from a first plurality of node devices in a first intelligent committee, an operation for verifying forgery of the plurality of ledger information by a second plurality of node devices in a second intelligent committee by identifying a discrepancy between the plurality of ledger information, and an operation for generating a block for updating ledger information of the first plurality of node devices on the basis of a result of verifying the forgery of the plurality of ledger information, when an external data is generated for electronic notarization, the external data is respectively provided to the first intelligent committee and the second intelligent committee, wherein the first intelligent committee updates a first ledger information of the first intelligent committee with ledger information including the external data by a block generation process based on a first consensus algorithm, and wherein the second intelligent committee updates a second ledger information of the second intelligent committee with the ledger information including the external data by a block generation process based on a second consensus algorithm.
When the computer program 591 is loaded into the memory 530, the processor 510 may perform methods/operations according to various embodiments of the present disclosure by executing the one or more instructions.
The technical idea of the present disclosure described above may be implemented as computer-readable code on a computer-readable medium. The computer-readable recording medium may be, for example, a removable recording medium (CD, DVD, Blu-ray disk, USB storage device, removable hard disk), or a fixed recording medium (ROM, RAM, computer-equipped hard disk). The computer program recorded on the computer-readable recording medium may be transmitted to another computing device through a network such as the Internet and installed on the other computing device, thereby allowing it to be used in other computing devices.
Although embodiments of the present disclosure have been described above with reference to the attached drawings, those skilled in the art can appreciate that the present disclosure can be implemented in other specific forms without changing its technical idea or essential features. Therefore, the embodiments described above should be understood in all respects as illustrative and not restrictive. The scope of protection of the present disclosure should be interpreted in accordance with the claims below, and all technical ideas within the equivalent scope should be construed as being included in the scope of the technical ideas defined by the present disclosure.
Number | Date | Country | Kind |
---|---|---|---|
10-2023-0178270 | Dec 2023 | KR | national |