CN109997166A - System and method for intercepting intelligent contract - Google Patents

System and method for intercepting intelligent contract Download PDF

Info

Publication number
CN109997166A
CN109997166A CN201780057248.3A CN201780057248A CN109997166A CN 109997166 A CN109997166 A CN 109997166A CN 201780057248 A CN201780057248 A CN 201780057248A CN 109997166 A CN109997166 A CN 109997166A
Authority
CN
China
Prior art keywords
judgement
intelligent contract
database
contract
execution
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201780057248.3A
Other languages
Chinese (zh)
Other versions
CN109997166B (en
Inventor
约亨·洛塔尔·莱德纳
提姆·纽金特
山姆·查德威克
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Financial and Risk Organisation Ltd
Original Assignee
Financial and Risk Organisation 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 Financial and Risk Organisation Ltd filed Critical Financial and Risk Organisation Ltd
Priority claimed from PCT/IB2017/055639 external-priority patent/WO2018051305A1/en
Publication of CN109997166A publication Critical patent/CN109997166A/en
Application granted granted Critical
Publication of CN109997166B publication Critical patent/CN109997166B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • G06Q50/18Legal services; Handling legal documents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management

Abstract

Intervention to contract operation intelligent in distributed ledger system may include: to start the execution of intelligent contract;After starting intelligent contract execution, judgement audit function is executed, to determine in judgement database with the presence or absence of the judgement to intelligent contract;In response to there is the judgement to intelligent contract in judgement database, intervene the operation of intelligent contract to prevent the execution of intelligent contract;Also, in response to there is no the judgement for having to intelligent contract in judgement database, continue to execute intelligent contract.

Description

System and method for intercepting intelligent contract
Cross reference to related applications
This application claims September in 2016 19 days the U.S. Provisional Patent Application submitted No. 62/396,293 and 2017 9 U.S. Patent Application No. 15/707,571 priority that the moon is submitted on the 18th, thus it is by reference that above-mentioned application is whole It is incorporated herein.
Background technique
Distributed ledger system provides platform for the execution of intelligent contract.Intelligent contract generally includes program instruction, The program instruction can be executed in response to being sent to the affairs of contract in distributed ledger system.Intelligent contract can also generation Legal contract between table user, and clause, the condition etc. of the program function law enforcement contract of intelligent contract.
The characteristic of distributed ledger system provides improved data (such as, the affairs of this system and intelligent contract) Invariance, affairs are so that it is guaranteed that these data can be written into system but not be tampered.Therefore, using intelligent compact implementation method Rule contract and other function provide the highly reliable mode for realizing these functions.
However, there are problems for the execution of intelligent contract in distributed ledger system.For example, method representated by intelligent contract Rule contract may represent the illegal affairs of certain jurisdictions.In addition, intelligent contract may include logic error, lead to intelligence The affairs difference affairs of energy contract execution affairs and legal contract each side agreement.However, the thing that distributed ledger system provides The invariance of business, contract etc. may be the obstacle for preventing the operation of these contract executions.
Therefore, it is necessary to system and method, to provide the improvement intervention of intelligent contract operation in distributed ledger system.
Detailed description of the invention
In order to understand feature of the invention, some attached drawings are described below.However, attached drawing only illustrates tool of the invention Body embodiment, and it is therefore not interpreted as limiting its range, the present invention may include other equivalent effective embodiments.
Fig. 1 is the embodiment for describing the system for providing intervention in the operation of the intelligent contract of distributed ledger system Schematic diagram.
Fig. 2 is the schematic diagram for describing the embodiment of virtual law court's server system.
Fig. 3 is the schematic diagram for describing the embodiment of distributed ledger system.
Fig. 4 is the schematic diagram for describing the embodiment of distributed node of distributed ledger system.
Fig. 5 is the flow chart for describing the embodiment of method for the judgement for determining intelligent contract.
Fig. 6 is the schematic diagram for describing the embodiment of law court's intelligence contract.
Fig. 7 is the flow chart for describing the embodiment of method for the operation for intervening intelligent contract based on judgement.
Fig. 8 is the schematic diagram for describing the embodiment of intelligent contract.
Fig. 9 is the schematic diagram for describing the embodiment of virtual machine of distributed node.
Specific embodiment
The operation for intervening intelligent contract in distributed ledger system may include: to start the execution of intelligent contract;It is opening After dynamic intelligence contract execution, judgement audit function is executed, to determine in judgement database with the presence or absence of the judgement to intelligent contract; In response to there is the judgement to intelligent contract in judgement database, intervene the operation of intelligent contract to prevent holding for intelligent contract Row;And in response to there is no the judgement for having to intelligent contract in judgement database, continue to execute intelligent contract.
The operation for intervening intelligent contract in distributed ledger system can also include: to be based on from one or more judges The input received determines the judgement of the validity of the complaint to intelligent contract;In response to supporting having for the complaint to intelligent contract The judgement of effect property, by the judgement record in judgement database;In response to starting the execution of intelligent contract, receive from judgement inspection The request of function is looked into, to determine in judgement database with the presence or absence of the judgement to intelligent contract;And the request is responded Whether there is judgement in instruction judgement database.
Fig. 1 is depicted for providing the system 20 of improved intervention in the operation of the intelligent contract of distributed ledger system Embodiment.System 20 includes: distributed ledger system 24, virtual law court's server system 28, one or more judges System 32, one or more complainant's systems 36 and one or more other systems 38.Distributed ledger system 24 Platform for intelligent contract operation is provided, comprising: the first intelligent contract 40, it can be to the judgement for the first intelligent contract 40 It is assessed;And the second intelligent contract 42, also referred to as law court's contract 42, the second intelligent contract 42 can be used herein In judgement of the implementation to intelligent contract 40.Virtual law court's server system 28 receive from complainant's system 36 about intelligent conjunction With the complaint of 40 operation, one or more inputs about complaint from judge's system 32 are received, and provides and is used for Intervene the mechanism of the operation of intelligent contract 40 in distributed ledger system 24, such as maintenance judgement database and/or and law court Contract 42 communicates.Other systems 38 can also be interacted with distributed ledger system 24, for example, with distributed ledger system 24 Intelligent contract interaction.
In embodiment, the system for providing improved intervention in the operation of intelligent contract can only include joining herein According to Fig. 1 description or any subset or substitution connection of the feature discussed.
Fig. 2 describes the embodiment of virtual law court's server system 28 comprising judge's system interface module 44, complainant System interface module 48, distributed ledger system interface module 52, virtual law court's server system control module 56 and judgement Database module 60.Complainant's system interface module 48 is provided between virtual law court's server system 28 and complainant's system 36 Communication interface, to receive the complaint information from complainant's system 36.Judge's system interface module 44 provides virtual law court's service Communication interface between device system 28 and judge's system 32 will appeal information and be transferred to judge's system 32, and from judge's system 32 receive discriminative information.Distributed ledger system interface module 52 provides distributed ledger system 24 and the service of virtual law court Communication interface between device system 28, to provide the enforcement mechanism intervening intelligent contract 40 and operating, for example, maintenance judgement number It is communicated according to library and/or with law court contract 42.The 56 offer realization of virtual law court server system control module is discussed herein virtual The control logic of the function of law court's server system 28.Judgement database module 60 is provided a store for and is accessed to intelligent contract The judgement database of 40 judgement.Adjudicate database can for example in the form of the data structure of law court's contract 42, alternatively or It is additionally stored in distributed ledger system 24.
In embodiment, virtual law court's server system can only include the feature described or discussed herein by reference to Fig. 2 Any subset or substitution connection.
Fig. 3 depicts the exemplary embodiment of distributed ledger system 24.Distributed ledger system 24 includes multiple Distributed node 66.Distributed node 66 is organized as peer-to-peer network, wherein peer to peer communication protocol can be used in each node 66 It is connected to other one or more nodes 66.At least one of distributed node 66 may be also connected to virtual law court's service Device system 28.At least one of distributed node 66 may be also connected to other systems 38.As peer-to-peer network, each distribution The configuration of connection between formula node 66 can be changed over time according to the operation of peer protocol.
Fig. 4 depicts the exemplary embodiment of the distributed node 66 of distributed ledger system 24 comprising: ledger Structure memory module 70, communication module 74, virtual machine module 78 and ledger Structure Creating module 82.Ledger structure stores mould 70 storing data structure of block, wherein the ledger of distributed ledger system 24 is in non-transitory machinable medium It is organized into the data structure.Communication module 74 executes distributed node 66 and other distributed nodes 66 and is connected to distribution Communication between the other systems or component (such as virtual law court's server system 28) of formula node 66.Virtual machine module 78 executes The intelligent contract being stored on the distributed ledger of distributed ledger system 24.Ledger Structure Creating module 82 executes calculation New affairs and other data are merged into distributed ledger system by method (for example, data encryption algorithm of selected complexity) In 24 ledger structure
In embodiment, distributed node can only include any subset for the feature described or discussed herein by reference to Fig. 4 Or substitution connection.
In embodiment, distributed ledger system 24 can be block catenary system, wherein by distributed ledger system The ledger of 24 realizations is the form of structured data block sequence, also referred to as block chain.In such embodiments, ledger knot Structure memory module 70 is the block memory module of the block of memory block catenary system, and ledger Structure Creating module 82 is block creation Module, new affairs and other data to be merged into the block of block chain of block catenary system by execution algorithm, block catenary system The block of block chain be also referred to as the excavation block of block catenary system.In other embodiments, distributed ledger system 24 can be It is another type of distribution ledger system rather than block catenary system, wherein ledger can be organized into Except block chain Block except structure.
The system 20 that improvement for providing the operation to intelligent contract 40 in distributed ledger system 24 is intervened The component of embodiment, for example, virtual law court's server system 28, judge's system 32, complainant's system 36, other systems 38, point Node 66 of cloth ledger system 24 etc. and/or it is therein any one, subset or all components, can be implemented as hardware, The mixing of software or hardware and software.For example, virtual law court's server system 28, judge's system 32, complainant's system 36, its Each of node 66 of his system 38, distributed ledger system 24 etc. and/or it is therein any one, subset or its institute There is component that can realize using processor and non-transitory storage medium, wherein non-transitory machinable medium Including program instruction, when being executed by a processor, the embodiment of the function for these components that these instruction executions are discussed herein.? In embodiment, virtual law court's server system 28, judge's system 32, complainant's system 36, other systems 38, distributed ledger Each of node 66 of system 24 etc. and/or any individual system therein, subset or all components, can be used calculating Machine system, such as desktop computer, laptop, mobile computing device, the network equipment, server, Internet Server, cloud Server etc., Lai Shixian.
The system 20 that improvement for providing the operation to intelligent contract 40 in distributed ledger system 24 is intervened The component of embodiment, for example, virtual law court's server system 28, judge's system 32, complainant's system 36, other systems 38, point Node 66 of cloth ledger system 24 etc. and/or it is therein any one, subset or all components, can be by by (example As shown in figure 1 indicated by the connection of example plot) one or more communication networks that connection indicates, it is real to be connected to system 20 It applies the other component of example and communicates.
Fig. 5 depicts the embodiment for intervening the method 500 of operation of the intelligent contract 40 in distributed ledger system 24. Method 500 starts from step 502.
In step 504, the complaint about intelligent contract 40 is received from complainant.Complaint is comprising accusing intelligent contract 40 There are illegal or other problems information for operation.Complaint includes: the identifier of identification intelligent contract 40, such as distributed ledger The address of intelligent contract 40 in system 24;And one or more statements that intelligence contract 40 is against the form of the statute.For example, Shen The law or regulation in identified legislation area can be identified with method of identification pitch pipe area under one's jurisdiction, such as state or country by telling, such as with progress Related regulation of financial affairs etc., and state that intelligent contract 40 violates identified law.In another example, complaint can To identify intelligent contract in the legal contract initiated between the people or system and the owner or operator of intelligent contract 40 of complaint 40 are intended to implement a part of the legal contract, and state that intelligent contract 40 implemented is not the identified portion of legal contract Point.
The complaint is received from the complainant of operation complainant's system 36 at virtual law court's server system 28.Example Such as, complainant can send virtual law court's server system for the file comprising complaint by complainant's system interface module 48 System.
Complainant refers to the intelligent contract 40 of statement, and there are illegal or other problems individuals or other legal entities, such as companies Deng.Complainant usually interacts with intelligent contract 40, and observes the illegal or other problems stated, and would generally be Relief and seek help from system 20 to intervene the operation of intelligent contract, this seeks help from law to the law court having jurisdiction with complainant The mode for appealing relief is closely similar.
Virtual law court server system 28 is usually in distributed ledger system by tissue or other physical operations, task Intervene the operation of intelligent contract in system 24.For example, virtual law court server system 28 can be by creating or operating distributed classification The tissue of account system 24 operates.Virtual law court's server system 28 and the intervention functions being discussed herein are provided as distributed ledger System 24 provides advantageous characteristic, for example, improve a possibility that law operates and correct for legal issue, distribution point The operator of class account system 24 can increase the business that distributed ledger system 24 carries out by advertisement.
In step 506, the input about complaint is received from one or more judges.The input includes related to complaint Judgement information.For example, the information received may include ballot of one or more judges to following item: whether same Anticipate the complaint and/or the complaint it is whether effective, and judgement for intelligent contract 40 is illegal or with pointed problem, or It is no to disagree the complaint and/or whether the complaint is invalid, and judgement is not illegal or do not include being identified for intelligence contract 40 The problem of.
Input in relation to appealing is at virtual law court's server system 28 from one or more judge's systems 32 of operation One or more judges it is received.For example, judge can will be comprising about complaint by judge's system interface module 44 The file of input or other data are sent to virtual law court's server system 28.
One or more judges be distributed ledger system 24 operation during elect or otherwise specify with The people enter a judgement to complaint or other corporate entities, such as company.For example, judge can be by distributed ledger system 24 User or other stakeholders by selecting.Judge usually requires to meet one or more election contest standards, such as Become the application etc. of judge as the certification user of distributed ledger system 24, submission.In another example, judge is by organizing Or other entities are appointed, such as creation or the tissue for operating distributed ledger system 24, task are to intervene intelligent contract Operation.
In embodiment, one or more judges for providing input may include according to one or more geographic regions The judge of the predetermined quantities of tissues such as domain, legislation area, intelligent contract type, legal provisions type.
In step 508, the judgement to complaint is determined based on received input.Determining judgement includes whether to support Shen Whether all or part told, and intelligent contract 40 are judged as illegal or are rejected with pointed problem, or complaint, And intelligent contract 40 is judged as not illegal or not pointed problem.By that will be connect from one or more judges The input received is in conjunction with carrying out the determination.For example, can be by the way that the ballot received from one or more judges be added Together, and then determine whether to have reached the threshold value about the judgement to contract to carry out the determination.It can basis A variety of different ballot systems select threshold value.In one example, threshold value is one of option for judgement (that is, it is propped up Hold or release) whether reach multiple ballot papers of one or more judges.In another example, threshold value is the option for judgement One of whether reach most of ballot papers of one or more judges.
The determination is carried out by virtual law court's server system based on the input received from one or more judges, Such as the input received by judge's system interface module is acted on by control module.
If in step 508, determining that judgement is that intelligent contract 40 has the illegal or other problems pointed out in complaint, then This method continues to execute step 510.In step 510, by determining judgement record in judgement database.Adjudicating database can be with It is stored in virtual law court's server system 28 and/or distributed ledger system 24.
Embodiment of the database purchase in the judgement database module 60 of virtual law court's server system 28 will adjudicated In, identified judgement is recorded in judgement database module 60.In such embodiments, judgement is serviced by virtual law court Device system 28 records, such as judgement is stored in judgement database module 60 by control module 56.Adjudicate database module 60 Database is provided to store the judgement of intelligent contract and provide the access of the judgement to intelligent contract.In order to record judgement, control Module 56 provides the input of the identifier of intelligent contract 40, such as intelligent contract 40 to the write-in functions of judgement database module 60 Address and judgement.
In it will adjudicate the embodiment in the judgement database being stored in distributed ledger system 24, it can be used point The intelligent contract (such as law court's contract 42) of cloth ledger system 24 is by judgement record in the distribution for indicating judgement database In the data structure of ledger system 24.Fig. 6 describes one embodiment of law court's contract 42 comprising one or more to sentence Certainly database update function 83, one or more judgement database auditing functions 84 and one or more judgement database numbers According to structure 85.Judgement database update function 83 includes writing to the execution of judgement database data structure 85 comprising adjudicating database The program instruction entered.The write-in can include intelligent contract 40 as input mark (such as address of intelligent contract 40) and Judgement (for example, Boolean or integer value that instruction has the judgement to intelligent contract 40), and the knot recorded is executed as it Fruit, the identifier of contract 40 and judgement are as the corresponding data value pair in data structure 85.
In order to record the judgement, virtual law court's server system 28 generates and for example passes through distributed ledger system interface Module 52 is sent at least one distributed node 66 of distributed ledger system 24 calls judgement database update function 83 The affairs for being intended to be sent to law court's contract 42.In response, the affairs are being incorporated to distribution by least one distributed node 66 After in the ledger structure of formula ledger system 24, law court's contract is executed to execute and adjudicates database update function 83, it will Judgement record is in the judgement database data structure 85 of law court's contract 42.
It is the exemplary process instruction for the example embodiment for showing law court's contract 42 below:
The other embodiments of law court's contract 42 may include different specific procedure instructions.Exemplary contract Court { } includes isLegal [] data structure, updateStatus () function and checkStatus () function.In exemplary implementation In example, judgement database is realized using isLegal [] data structure, and realize using updateStatus () function Adjudicate database update function.After calling Court { } contract by affairs, when the affairs of the law court contract owner trigger When updateStatus () function, updateStatus () function updates isLegal with judgement b for indicated address [] data structure.
In embodiment, law court's contract 42 can only include any subset for the feature described or discussed herein by reference to Fig. 6 Or substitution connection.
Return to Fig. 5, if in step 508, determine judgement for intelligent contract 40 there is no pointed out in complaint illegal or Other problems, then this method continues to execute step 512.
In step 512, it receives about whether the inquiry that there is the judgement to intelligent contract 40.The inquiry includes identification intelligence The identifier of energy contract 40, such as address of the intelligent contract 40 in distributed ledger system 24, and to identification to intelligence The request of any judgement of contract 40.Inquiry can be by virtual law court's server system 28 or the portion of distributed ledger system 24 Part receives.In the embodiment that judgement is stored in judgement database module 60, received by virtual law court's server system 28 Inquiry.It is inquired for example, can be received by distributed ledger system interface module 52.Distributed ledger is stored in judgement It, can be by intelligent contract, such as law court's contract 42, to receive inquiry in embodiment in the data structure of system 24.For example, Fig. 6 is returned to, which can be received by law court's contract 42, as a part for executing judgement database auditing function 84.Judgement Database auditing function 84 includes the journey for executing the reading to the judgement database data structure 85 comprising judgement database Sequence instruction.In the exemplary contractCourt { } being discussed above, this can be using the tune to checkStatus () function With or enable form.
In response to starting or requesting to start the execution of intelligent contract 40, received from the component of distributed ledger system 24 And/or initiate inquiry.For example, itself can receive and/or initiate inquiry from intelligent contract 40, such as it is used as and executes intelligent contract 40 at least one program instruction as a result, the distributed ledger system 24 from the execution for starting intelligent contract 24 point The virtual machine 78 of cloth node 66 receives and/or starting inquiry.Below with reference to the method 600 of the operation of intervening intelligent contract 40 Embodiment further discusses the embodiment for generating inquiry.
In the step 514, judgement database is read, whether has been recorded in judgement database to intelligent contract 40 with determining Any judgement.Judgement data can be read by the component of virtual law court's server system 28 or distributed ledger system 24 Library.In the embodiment for being stored with judgement in judgement database module 60, in order to read judgement database, control module 56 is to sentencing Certainly the read functions of database module 60 provide the identifier of intelligent contract 40, such as the address of intelligent contract 40, as input. Embodiment in the judgement database data structure 85 for law court's contract 42 that judgement is stored in distributed ledger system 24 In, law court's contract 42 can be executed to execute and adjudicate database auditing function 84, any to sentence for associated with contract 40 Certainly execute the reading to data structure 85.The reading may include the mark (such as address of intelligent contract 40) of intelligent contract 40 It is deposited in association as input, and as the identifier that its result executed returns in data structure 85 with intelligent contract 40 There is the Boolean or integer value of the judgement to intelligent contract 40 in any judgement of storage, such as instruction.The example being discussed above In property contract Court { }, this is corresponding with address a to be directed in the form of executing checkstatus () function Decision value executes the reading to isLegal [] data structure.
In step 516, requesting component will be supplied to the response of inquiry.Whether deposited in response instruction judgement database In any judgement to pointed intelligent contract 40.It executes in virtual law court's server system 28 to being stored in judgement database In the embodiment of the reading of judgement database in module 60, which sent by virtual law court's server system 28.Example Such as, which can be passed through distributed ledger system interface module 52 by virtual law court's server system control module 56 and sent out It send.
The response is sent to the requesting component of distributed ledger system 24.For example, the response can be sent to point The intelligent contract 40 or virtual machine 78 of the initiation inquiry of cloth ledger system 24.Intelligent contract 30 is sent in the response In embodiment, virtual law court's server system 56 can be generated the affairs comprising the response and send distributed point for the affairs At least one node 66 of class account system 24.The affairs can be intended to be sent to intelligent contract 40, or as intelligent contract 40 Another intelligent contract of intermediary, such as Oracle.In use be situated between or Oracle contract in the case where, intermediary or Oracle contract The second affairs can be sent to the intelligent contract 40 of request or are executed to the calling of request intelligence contract 40 to deliver the response, or Alternatively, which can send affairs to intermediary or Oracle contract or execute agency or Oracle conjunction Same calling is to retrieve the response.In the embodiment for sending the response to virtual machine 78, virtual law court's server system 28 Can be with, such as by distributed ledger system interface module 52, the communication comprising the response is supplied to distributed ledger The virtual machine module 78 of the distributed node 66 of system 24.
It executes in law court's contract 42 to the judgement data in the judgement database data structure 85 for being stored in law court's contract 42 In the embodiment of the reading in library, law court's contract exports the response.For example, intelligent contract 40 can call law court's contract 42 to execute Database auditing function 84 is adjudicated, and the result of the reading to judgement database data structure 85 is output to intelligent contract 40. In the exemplary contract Court { } being discussed above, this can use the form of checkstatus () function, by this The result of function is output to the intelligent contract of calling.
In embodiment, determine that in distributed ledger system can only include Fig. 5 to the method for the judgement of intelligent contract Any subset or alternate orders of the feature of middle description or discussion.
Fig. 7, which is depicted, intervenes another method 700 that intelligent contract 40 operates based on to the judgement of intelligent contract 40 Embodiment.The method 700 for intervening the operation of intelligent contract 40 can be complementary with the intelligent method 500 of operation of contract 40 is intervened. For example, method 500 or part thereof can be executed by the first group parts, such as virtual law court's server system 28 discussed in this article And/or one or more components of distributed ledger system 24, and ground, method are consistent with the execution of method 500 700 or part thereof can be executed by the second group parts, such as virtual law court's server system 28 discussed in this article and/or distribution One or more components of formula ledger system 24.Method 600 starts from step 702.
In step 704, start or request to start the execution of intelligent contract 40.The execution of intelligent contract 40 be in response in point Event in cloth ledger system 24 and start.In one example, in response to for example by intelligently being closed in Distributed Application The affairs for being intended to be sent to intelligent contract 40 are sent to the node 66 of distributed ledger system 24 by component belonging to same 40, or Person, in response to the calling for example by another intelligent contract or other assemblies to the intelligent contract 40 of failed call affairs, Lai Qidong intelligence The execution of energy contract 24.The execution of intelligent contract 40 is at least one distributed node 66 by distributed ledger system 24 What virtual machine module 78 executed.
In step 706, judgement audit function is executed.Adjudicate audit function inspection judgement database (such as judgement data The judgement database data structure 85 of library module 60 or law court's contract 42) in the presence or absence of judgement to intelligent contract.Judgement inspection Other non-judgement audit functions that function is looked into prior to intelligent contract 40 execute, so that if there is the judgement to intelligent contract 40, Then before these other functions for executing intelligent contract 40, the operation of intelligent contract 40 can be intervened.Judgement checks Function can be or include: distributed ledger system 24 contract function, such as law court's contract 42 or intelligent contract 40;Point The function of another component of cloth ledger system 24, for example, distributed ledger system 24 distributed node 66 virtual machine 78;The function of the component of virtual law court server system 28;Or combinations thereof.
In embodiment, judgement audit function is or includes: the distributed ledger system 24 called by intelligent contract 40 Contract function, such as law court's contract 42 checks the judgement database for being stored as the data structure of this contract, such as sentences Certainly database data structure 85.Fig. 8 depict including one or more judgement audit functions 86 and it is one or more other The embodiment of the intelligent contract 40 of function 90.One or more other functions 90 include for execute intelligent contract 40 other The program instruction of function (such as a part as Distributed Application).In embodiment, judgement audit function 86 include to The program instruction of another contract (such as law court's contract 42) of distributed ledger system is called, to check the data knot of the contract With the presence or absence of the judgement to intelligent contract 40 in structure (such as judgement database data structure 85).For example, in order to execute judgement inspection Function is looked into, intelligent contract 40 can execute judgement audit function 86, this can call law court's contract 42 to execute judgement database Audit function 84, the function 84 determine in the data structure 85 of law court's contract 42 with the presence or absence of the judgement to intelligent contract 40.Intelligence Energy contract 40 can transmit the mark of intelligent contract 40 as judgement database auditing function 84 to the calling of law court's contract 42 Input, such as the address of intelligent contract 40, and output are used as the instruction with the presence or absence of the judgement to intelligent contract 40 and execute Adjudicate the result of database auditing function 84.
It is the exemplary process instruction for the example embodiment for showing intelligent contract 40 below:
The other embodiments of intelligent contract 40 may include different specific procedure instructions.Exemplary contract SomeContract { } includes: function someConract () and someFunction ().Function someConract () can be with The example for executing on startup, and calling Court { } contract, to provide contract someContract { } for it Address a input.The function of executing the other function of intelligent contract and can be called by the affairs for being intended to be sent to contract SomeFunction () (omits its details, and by annotating " do stuff " replacement) to simplify the explanation, to call instantiation The output of checkStatus () function of Court { } contract be that condition executes the function, whether return has pairing The instruction of same judgement, for example, then returning to " 1 " or "true" if there is the judgement to contract;If do not sentenced to contract Certainly, then " 0 " or "false" are returned.
In embodiment, judgement audit function is or the function including intelligent contract 40 itself.In embodiment, judgement inspection Looking into function 86 includes for checking the program instruction in judgement database module 60 with the presence or absence of the judgement to intelligent contract.One In a example, judgement audit function 86 includes one or more predetermined fingers that intelligent contract 40 is written into programming language therein It enables, wherein the reading to judgement database (such as judgement database module 60) is executed, to determine whether including to intelligent contract 40 Judgement.The reading can include the address of intelligent contract 40 as input.Predetermined instruction can be configured with programming language to hold Reading of the row to judgement database.Predetermined instruction can be connect by the distributed ledger system of virtual law court's server system 28 Mouth mold block 52 is communicated with judgement database module 60.
In embodiment, judgement audit function is or the virtual machine 78 of the distributed node 66 including executing intelligent contract 40 Function.Fig. 9 depict including it is one or more judgement audit functions 94 and one or more other functions 98 it is virtual The embodiment of machine 78.One or more other functions 98 execute the function of virtual machine 78, such as execute intelligent contract 40.Judgement Audit function 94, which executes, checks in judgement database (such as in judgement database module 60) with the presence or absence of to intelligent contract 40 Judgement function.For example, judgement audit function 94 can be executed to judgement database (such as judgement database module 60) It reads, to determine if the including judgement to intelligent contract 40.The reading can include the address of intelligent contract 40 as defeated Enter.Virtual machine can pass through the distributed ledger system interface module 52 and judgement database of virtual law court's server system 28 Module 60 communicates.
Fig. 7 is returned to, in step 708, is determined whether there is according to the output for executing judgement audit function in step 706 Judgement to contract 40.The determination is carried out according to the embodiment of judgement audit function.It is for judgement audit function or wraps The embodiment of the function of intelligent contract 40 is included, intelligent contract 40 may include the program called judgement audit function and export result Instruction.For example, in the above exemplary embodiments of intelligent contract someContract { }, sentence " if (court.checkStatus (...)) { ... } else { ... } " is according to checkStatus () function of Court { } contract The output of energy is to determine whether there is the judgement to intelligent contract.As discussed further below, in another example, intelligence Contract 40 may include program instruction " if (legalToken ()) { suicide (recipient);", call judgement to check Function legaltoken (), and operation is executed according to the output of the function.As discussed further below, judgement is checked Function is the embodiment of the function of virtual machine 78, and virtual machine can similarly call judgement audit function and execute behaviour according to output Make.
If in step 708, determining that then method continues to execute step 712 there is no the judgement for intelligent contract 40. In step 712, in the case where no any intervention, continue the execution of intelligent contract 40.For adjudicating audit function It is or the embodiment of the function including intelligent contract 40, intelligent contract 40 continues to execute the other function 90 of intelligent contract 40.It is right It is in judgement audit function or the embodiment of the function including virtual machine 78, virtual machine continues to execute intelligent contract 40.Implementing Example in, continue to execute intelligent contract include at least one of the following: by intelligent contract carry out at least two parties between financial affairs, by The ownership of intelligent contract transferring digital or physical assets between at least two parties executes person identification to authorize intelligent conjunction It is electrical, mechanical or electromechanical to control with the restricted system of access, or by intelligent contract triggering electronic equipment generation electric signal The operation of instrument.
If in step 708, determining the judgement existed for intelligent contract 40, then method continues to execute step 710.? In step 710, the intervention to the operation of intelligent contract 40 is executed to prevent contract 40 from executing.It is for judgement audit function or wraps The embodiment of the function of intelligent contract 40 is included, intelligent contract 40 can stop the behaviour of intelligent contract before executing other function Make.For example, in the above exemplary embodiments of intelligent contract someContract { }, sentence " if (court.checkStatus (...)) { ... } else { ... } " execution " else { ... } ", can not include any content, Or notice including legal status etc..In other embodiments, intelligent contract can execute self-destroying function to prevent intelligent contract The operation of 40 current and future.In one example, in above example program instruction, program instruction calls self-destruction function Energy " suicide () " is with the operation of the current and future of the intelligent contract 40 of prevention.Self-destroying function can be from distributed ledger system The data of intelligent contract 40 are deleted in system 24.It is the embodiment of the function of virtual machine 78, virtual machine 78 for judgement audit function It does not execute and/or stops executing intelligent contract 40.This method terminates in step 714.
In embodiment, based on the judgement to intelligent contract come the method for intervening the operation of intelligent contract can only include with On about Fig. 7 describe or discuss feature any subset or substitution sequence.
In embodiment, the judgement to intelligent contract is determined based on judgement and/or intervenes the side of the operation of intelligent contract Method may include any subset and/or substitution sequence of any combination of the method for Fig. 5 and Fig. 7 or the feature of these methods Any combination.
As discussed herein, virtual law court's server system 28, judge's system 32, complainant's system 36, distributed point It class account system 24, other systems 38 and determines the judgement of intelligent contract in distributed ledger system and intelligence is intervened based on judgement The other embodiment of the correlation technique 500,700 of the operation of contract is possible.For example, these systems described herein and side Any feature of any embodiment of method can be used in any other embodiments of these system and method.Moreover, these are The embodiment of system and method can only include the component of these system and method discussed here or any subset of feature.

Claims (31)

1. a kind of method for intervening intelligent contract operation in distributed ledger system, which comprises
Start the execution of intelligent contract by the distributed node of distributed ledger system;
After the execution for starting intelligent contract, judgement audit function is executed to determine in judgement database with the presence or absence of to intelligent conjunction Same judgement;
In response to there is the judgement to intelligent contract in judgement database, intervene the operation of intelligent contract to prevent distributed node Execute intelligent contract;And
In response to, there is no the judgement to intelligent contract, continuing to execute intelligent contract by distributed node in judgement database.
2. according to the method described in claim 1, wherein, the intelligence contract is called by distributed node to the second intelligent contract Execution execute judgement audit function.
3. according to the method described in claim 2, wherein, data knot of the described second intelligent contract execution to the second intelligent contract The reading of structure, the described second intelligent contract will adjudicate database purchase in the non-transitory storage medium of distributed ledger system In.
4. the calling of the described second intelligent contract provides output to intelligent contract according to the method described in claim 2, wherein, With the presence or absence of the judgement to the intelligent contract in output instruction judgement database.
5. according to the method described in claim 1, wherein, continue to be executed by the distributed node intelligent contract include with down toward One item missing: financial affairs are completed by intelligent contract, or pass through intelligent contract identification individual.
6. according to the method described in claim 1, wherein, executing judgement audit function is held as the program function of intelligent contract Capable.
7. according to the method described in claim 1, wherein, the operation for intervening intelligent contract includes by intelligent contract execution self-destruction function Energy.
8. according to the method described in claim 1, wherein, the execution of the judgement audit function is by distributed ledger system Distributed node virtual machine execute.
9. according to the method described in claim 8, wherein, the operation for intervening intelligent contract includes at least one of the following: that prevention is empty Quasi- machine executes intelligent contract, or stops virtual machine and execute intelligent contract.
10. according to the method described in claim 1, wherein, executing judgement audit function and being included in outside distributed ledger system Judgement database is read in the server system in portion.
11. according to the method described in claim 10, wherein, it includes executing intelligence that judgement database is read in server system At least one program instruction of contract is to trigger the reading to judgement database.
12. according to the method described in claim 10, wherein, the reading to the judgement database in server system is by being distributed The virtual machine triggering of formula ledger system.
13. according to the method described in claim 1, further include:
Based on the input received from one or more judge's systems, sentencing for the validity of the complaint to intelligent contract is determined Certainly;
In response to supporting the judgement of the validity of the complaint to intelligent contract, by the judgement record in judgement database;
In response to starting the execution of intelligent contract, the request from judgement audit function is received, intelligent contract is somebody's turn to do with determination It decides whether to be present in judgement database;And
The response to request is sent to indicate that this decides whether to be present in judgement database.
14. according to method described in right 13, wherein by the judgement record include generating to be sent to point in judgement database The affairs of the intelligent contract of the second of cloth ledger system, the affairs include by the mark of the judgement and the intelligent contract The instruction of the data structure of the intelligent contract of symbol write-in described second, and distributed ledger system is sent by the affairs Distributed node.
15. a kind of method for intervening intelligent contract operation in distributed ledger system, which comprises
The complaint to intelligent contract is determined based on the input received from one or more judge's systems by server system Validity judgement;
In response to supporting the judgement of the validity of the complaint to intelligent contract, by the judgement record in judgement database;
In response to starting the execution of intelligent contract, the request from judgement audit function is received, to determine the institute to intelligent contract It states and decides whether to be present in judgement database;And
The response to request is sent, to decide whether to be present in described in instruction in judgement database.
16. according to method described in right 15, wherein the judgement record will be sent in judgement database including generating The affairs of the intelligent contract of the second of distributed ledger system, the affairs include by the mark of the judgement and the intelligent contract Know the instruction of the data structure of the intelligent contract of symbol write-in described second, and sends distributed ledger system for the affairs Distributed node.
17. according to the method for claim 15, wherein by the judgement record judgement database in include sentencing described It is certainly written in the data structure of distributed ledger system.
18. further including according to the method for claim 15, being received by server system from one or more judge's systems The input about the complaint from one or more judges.
19. according to the method for claim 15, further including being received from complaint system about intelligent contract by server system The complaint.
20. according to the method for claim 15, wherein the complaint includes the identification and intelligence of at least one legal provisions Contract violates at least one statement of identified legal provisions.
21. according to the method for claim 15, wherein judgement database is located at the service of distributed ledger exterior In device system.
22. according to the method for claim 15, further includes:
Start the execution of intelligent contract by the distributed node of distributed ledger system;
After the execution for starting intelligent contract, judgement audit function is executed to determine in judgement database with the presence or absence of to intelligence The judgement of contract;And
In response to there is the judgement to intelligent contract in judgement database, intervene the operation of intelligent contract to prevent distributed node Execute intelligent contract;And
In response to, there is no the judgement to intelligent contract, continuing to execute intelligent contract by distributed node in judgement database.
23. according to the method for claim 22, wherein the intelligence contract calls the second intelligence to close by distributed node With execution execute judgement audit function.
24. according to the method for claim 22, wherein data of the described second intelligent contract execution to the second intelligent contract The reading of structure, the described second intelligent contract, which will be adjudicated non-transitory of the database purchase in distributed ledger system and be stored, to be situated between In matter.
25. a kind of for intervening the system of intelligent contract operation in distributed ledger system, the system configuration are as follows:
Start the execution of intelligent contract;
After the execution for starting intelligent contract, judgement audit function is executed to determine in judgement database with the presence or absence of to intelligence The judgement of contract;
In response to there is the judgement to intelligent contract in judgement database, intervene the operation of intelligent contract, to prevent to execute intelligence Contract;And
In response to, there is no the judgement to intelligent contract, continuing to execute intelligent contract in judgement database.
26. system according to claim 25, wherein the intelligence contract, which is called, closes the second intelligence by distributed node With execution execute judgement audit function.
27. system according to claim 26, wherein data of the described second intelligent contract execution to the second intelligent contract The reading of structure, the described second intelligent contract, which will be adjudicated non-transitory of the database purchase in distributed ledger system and be stored, to be situated between In matter.
28. system according to claim 25, is additionally configured to:
Based on from one or more received inputs of judge's system, the judgement of the validity of the complaint to intelligent contract is determined; And
In response to supporting the judgement of the validity of the complaint to intelligent contract, by the judgement record in judgement database;
In response to starting the execution of intelligent contract, the request from judgement audit function is received, intelligent contract is sentenced with determination Certainly with the presence or absence of in judgement database;And
The response to request is sent, indicates that the judgement is present in judgement database.
29. a kind of for intervening the system of intelligent contract operation in distributed ledger system, the system configuration are as follows:
Based on from one or more received inputs of judge's system, the judgement of the validity of the complaint to intelligent contract is determined;
In response to supporting the judgement of the validity of the complaint to intelligent contract, by the judgement record in judgement database;
In response to starting the execution of intelligent contract, the request from judgement audit function is received, to determine the institute to intelligent contract It states and decides whether to be present in judgement database;And
The response to request is sent, indicates that the judgement is present in judgement database.
30. system according to claim 29, wherein to send out the judgement record including generating in judgement database The affairs of the second intelligent contract of distributed ledger system are given, the affairs include by the judgement and the intelligent contract Identifier be written the described second intelligent contract data structure instruction, and send distributed ledger for the affairs The distributed node of system.
31. system according to claim 29, is additionally configured to:
Start the execution of intelligent contract;
After the execution for starting intelligent contract, judgement audit function is executed to determine in judgement database with the presence or absence of to intelligence The judgement of contract;
In response to there is the judgement to intelligent contract in judgement database, intervene the operation of intelligent contract, to prevent to execute intelligence Contract;And
In response to, there is no the judgement to intelligent contract, continuing to execute intelligent contract in judgement database.
CN201780057248.3A 2016-09-19 2017-09-18 System and method for intercepting intelligent contracts Active CN109997166B (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201662396293P 2016-09-19 2016-09-19
US62/396,293 2016-09-19
PCT/IB2017/055639 WO2018051305A1 (en) 2016-09-19 2017-09-18 Systems and methods for interception of smart contracts

Publications (2)

Publication Number Publication Date
CN109997166A true CN109997166A (en) 2019-07-09
CN109997166B CN109997166B (en) 2024-02-06

Family

ID=66998812

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201780057248.3A Active CN109997166B (en) 2016-09-19 2017-09-18 System and method for intercepting intelligent contracts

Country Status (2)

Country Link
EP (1) EP3516615A1 (en)
CN (1) CN109997166B (en)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1999004356A1 (en) * 1997-07-14 1999-01-28 Sloo Marshall A Method and apparatus for handling complaints
US20050203899A1 (en) * 2003-12-31 2005-09-15 Anderson Steven B. Systems, methods, software and interfaces for integration of case law with legal briefs, litigation documents, and/or other litigation-support documents
CN102945264A (en) * 2012-10-24 2013-02-27 浪潮集团山东通用软件有限公司 Method for intelligently starting distributed transaction
US20140244521A1 (en) * 2013-02-27 2014-08-28 Datanalytics, Inc. d/b/a Juristat Systems and methods for legal data processing
CN104090863A (en) * 2014-07-24 2014-10-08 高德良 Intelligent legal instrument generating method and system
CN104793988A (en) * 2014-01-20 2015-07-22 阿里巴巴集团控股有限公司 Cross-database distributed transaction implementation method and device
US20150379510A1 (en) * 2012-07-10 2015-12-31 Stanley Benjamin Smith Method and system to use a block chain infrastructure and Smart Contracts to monetize data transactions involving changes to data included into a data supply chain.
US20160092988A1 (en) * 2014-09-30 2016-03-31 Raistone, Inc. Systems and methods for transferring digital assests using a de-centralized exchange

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1999004356A1 (en) * 1997-07-14 1999-01-28 Sloo Marshall A Method and apparatus for handling complaints
US20050203899A1 (en) * 2003-12-31 2005-09-15 Anderson Steven B. Systems, methods, software and interfaces for integration of case law with legal briefs, litigation documents, and/or other litigation-support documents
CN1965313A (en) * 2003-12-31 2007-05-16 汤姆森环球资源股份公司 Systems, methods, software and interfaces for integration of case law with legal briefs, litigation documents, and/or other litigation-support documents
US20150379510A1 (en) * 2012-07-10 2015-12-31 Stanley Benjamin Smith Method and system to use a block chain infrastructure and Smart Contracts to monetize data transactions involving changes to data included into a data supply chain.
CN102945264A (en) * 2012-10-24 2013-02-27 浪潮集团山东通用软件有限公司 Method for intelligently starting distributed transaction
US20140244521A1 (en) * 2013-02-27 2014-08-28 Datanalytics, Inc. d/b/a Juristat Systems and methods for legal data processing
CN104793988A (en) * 2014-01-20 2015-07-22 阿里巴巴集团控股有限公司 Cross-database distributed transaction implementation method and device
CN104090863A (en) * 2014-07-24 2014-10-08 高德良 Intelligent legal instrument generating method and system
US20160092988A1 (en) * 2014-09-30 2016-03-31 Raistone, Inc. Systems and methods for transferring digital assests using a de-centralized exchange

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"Smart Contracts: Interview with Ethereum on the Future of Contracting", 《BLOG》 *

Also Published As

Publication number Publication date
EP3516615A1 (en) 2019-07-31
CN109997166B (en) 2024-02-06

Similar Documents

Publication Publication Date Title
US10984494B2 (en) Systems and methods for interception of smart contracts
US11552785B2 (en) Methods and systems for a synchronized distributed data structure for federated machine learning
CN1316325C (en) Control method for managing permission setting of personal information disclosure, information managing device and service utilizing same
CN110495132A (en) System and method for being generated in distributed network node, uploading and execute code block
US20180018738A1 (en) Digital asset platform
KR20190006506A (en) Digital Asset Modeling
CN108293048A (en) The method and system of software hazard for control software exploitation
CN110751485B (en) Data processing method and equipment
CN103765466B (en) Method and apparatus for determining and being worth using digital asset
CN108171603A (en) A kind of integral management system based on block chain
CN111985703B (en) User identity state prediction method, device and equipment
CN108717466A (en) Collage-credit data storage method, device, computer equipment and storage medium
CN109816508A (en) Method for authenticating user identity, device based on big data, computer equipment
US20200134719A1 (en) Distributed ledger implementation for entity formation and monitoring system
CN109428892A (en) Multistage rewritable block chain
CN107993053A (en) Data of settling a claim checking method, device, computer equipment and storage medium
CN109886712A (en) Data processing method and device based on block chain
WO2022206439A1 (en) Method and apparatus for providing cross-chain message
EP3472779A1 (en) Digital asset platform
CN110275892A (en) Data managing method, device, equipment and storage medium towards block chain
CN109997166A (en) System and method for intercepting intelligent contract
CN110135190A (en) Data managing method, server and computer storage medium
CN110428898A (en) The method and system that the Clinical Decision Support Systems of data-driven evaluates and optimizes
EP4348917A1 (en) Blockchain, method for transmitting information between nodes of the blockchain, and methods for configuring and quering the blockchain
CN113987574A (en) Block chain private transaction method, device, equipment and readable storage medium

Legal Events

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