KR102134711B1 - Method and apparatus for managing rule of smartcontract - Google Patents

Method and apparatus for managing rule of smartcontract Download PDF

Info

Publication number
KR102134711B1
KR102134711B1 KR1020180139034A KR20180139034A KR102134711B1 KR 102134711 B1 KR102134711 B1 KR 102134711B1 KR 1020180139034 A KR1020180139034 A KR 1020180139034A KR 20180139034 A KR20180139034 A KR 20180139034A KR 102134711 B1 KR102134711 B1 KR 102134711B1
Authority
KR
South Korea
Prior art keywords
rule
information
blockchain
management device
transaction
Prior art date
Application number
KR1020180139034A
Other languages
Korean (ko)
Other versions
KR20200055412A (en
Inventor
박용범
Original Assignee
단국대학교 산학협력단
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 단국대학교 산학협력단 filed Critical 단국대학교 산학협력단
Priority to KR1020180139034A priority Critical patent/KR102134711B1/en
Publication of KR20200055412A publication Critical patent/KR20200055412A/en
Application granted granted Critical
Publication of KR102134711B1 publication Critical patent/KR102134711B1/en

Links

Images

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
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/405Establishing or using transaction specific rules
    • 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
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • 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
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0607Regulated
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/56Financial cryptography, e.g. electronic payment or e-cash

Abstract

블록체인 서버와 연결된 스마트 컨트랙트(smart contract)의 룰(rule) 관리 장치의 룰 관리 방법에 있어서, 블록체인 서버로부터 트랜잭션(transaction)에 대한 정보를 수신하는 단계, 트랜잭션에 대한 정보 및 데이터베이스를 이용하여 룰 검사를 수행하는 단계, 룰 검사 결과를 블록체인 서버로 송신하는 단계 및 블록체인 서버로부터 룰 검사 결과에 따른 작업을 수행한 결과 데이터를 수신하여 데이터베이스를 갱신하는 단계를 포함하는 룰 관리 방법이 개시된다.In a rule management method of a rule management device of a smart contract connected to a blockchain server, receiving information about a transaction from a blockchain server, using information about a transaction, and a database Disclosed is a rule management method comprising performing a rule check, sending a rule check result to a blockchain server, and updating a database by receiving data as a result of performing a task according to the rule check result from the blockchain server do.

Figure R1020180139034
Figure R1020180139034

Description

스마트 컨트랙트의 룰 관리 방법 및 장치{METHOD AND APPARATUS FOR MANAGING RULE OF SMARTCONTRACT}METHOD AND APPARATUS FOR MANAGING RULE OF SMARTCONTRACT}

본 발명은 스마트 컨트랙트(smart contract)의 룰(rule) 관리 방법 및 장치에 관한 것으로, 더욱 상세하게는 스마트 컨트랙트의 조건을 SWRL(Semantic Web Rule Language) 룰로 정의하고 이를 동적으로 관리하는 방법 및 장치에 관한 것이다.The present invention relates to a method and apparatus for managing rules of a smart contract, and more specifically, to a method and apparatus for defining conditions of a smart contract as a Semantic Web Rule Language (SWRL) rule and dynamically managing them. It is about.

최근 산업이 급속도로 발전됨에 따라 사용자 맞춤형 서비스가 대두되고 있으며, 이에 따라 다양한 환경에 적응적인 기술들에 대한 연구가 활발히 진행되고 있다. 특히, 소프트웨어의 경우에는 개발 단계에서 비즈니스 규칙 또는 룰(rule) 등이 정의되므로, 개발 단계 이후에 변화된 환경에 대하여 이에 대응하여 사용자에게 적절한 서비스를 제공하기 어려운 문제점이 있다.Recently, as the industry is rapidly developing, user-customized services are emerging, and accordingly, research on technologies adaptable to various environments is actively being conducted. In particular, in the case of software, since business rules or rules are defined in the development stage, it is difficult to provide an appropriate service to the user in response to the changed environment after the development stage.

이와 관련하여, 종래에는 소프트웨어의 실행 가능한 범위를 사전에 정의하고, 그 범위 내에서 적절히 서비스를 제공하는 방법이 존재하였으나, 최근 환경의 변화가 더욱 다양해지고 있으므로, 종래의 기술로는 이를 모두 대처할 수 없는 문제점이 존재하였다. 특히, 비즈니스 규칙 또는 룰 등이 정형화되지 않은 경우, 종래 기술의 이러한 문제점은 더욱 부각되었다.In this regard, in the related art, there has been a method in which an executable range of software is defined in advance and a service is properly provided within the range. However, since the recent changes in the environment are becoming more diverse, conventional technologies can cope with them. There were no problems. Particularly, when the business rules or rules are not formalized, this problem of the prior art has been highlighted.

상기와 같은 문제점을 해결하기 위한 본 발명의 목적은 스마트 컨트랙트의 룰 관리 방법을 제공하는 데 있다.An object of the present invention for solving the above problems is to provide a rule management method of a smart contract.

상기와 같은 문제점을 해결하기 위한 본 발명의 다른 목적은 스마트 컨트랙트의 룰 관리 장치를 제공하는 데 있다.Another object of the present invention for solving the above problems is to provide a rule management device for a smart contract.

상기 목적을 달성하기 위한 본 발명의 일 실시예에 따른 룰 관리 방법은, 블록체인 서버로부터 트랜잭션(transaction)에 대한 정보를 수신하는 단계, 트랜잭션에 대한 정보 및 데이터베이스를 이용하여 룰 검사를 수행하는 단계, 룰 검사 결과를 블록체인 서버로 송신하는 단계 및 블록체인 서버로부터 룰 검사 결과에 따른 작업을 수행한 결과 데이터를 수신하여 데이터베이스를 갱신하는 단계를 포함할 수 있다.Rule management method according to an embodiment of the present invention for achieving the above object, the step of receiving information about the transaction (transaction) from the blockchain server, performing a rule check using the information and database about the transaction It may include the step of transmitting the rule inspection result to the blockchain server, and updating the database by receiving the result data after performing the task according to the rule inspection result from the blockchain server.

여기서, 블록체인 서버로부터 트랜잭션에 대한 정보를 수신하는 단계는, 블록체인의 상태 정보 및 룰의 유형 정보를 수신하는 단계를 포함할 수 있다.Here, the step of receiving information about the transaction from the blockchain server may include receiving status information of the blockchain and type information of the rule.

여기서, 트랜잭션에 대한 정보 및 데이터베이스를 이용하여 룰 검사를 수행하는 단계는, 데이터베이스로부터 룰의 유형 정보에 대응하는 룰을 검색하는 단계 및 블록체인의 상태 정보 및 검색한 룰을 기초로 블록체인의 작업 정보를 생성하는 단계를 포함할 수 있다.Here, the step of performing the rule check using the information on the transaction and the database is a step of retrieving the rule corresponding to the rule type information from the database and the operation of the blockchain based on the state information of the blockchain and the retrieved rule And generating information.

여기서, 룰 검사 결과는, 블록체인의 작업 정보를 포함할 수 있다.Here, the rule inspection result may include the operation information of the blockchain.

여기서, 룰 검사 결과는, 데이터베이스에 룰의 유형 정보에 대응하는 룰이 존재하지 않는 경우, 대응하는 룰이 존재하지 않음을 나타내는 정보를 포함할 수 있다.Here, the rule check result may include information indicating that the corresponding rule does not exist when there is no rule corresponding to the rule type information in the database.

여기서, 블록체인 서버로부터 트랜잭션에 대한 정보를 수신하는 단계는, 룰의 유형 정보 및 룰의 변경 정보를 수신하는 단계를 포함할 수 있다.Here, the step of receiving information about the transaction from the blockchain server may include receiving type information of the rule and change information of the rule.

여기서, 트랜잭션에 대한 정보 및 데이터베이스를 이용하여 룰 검사를 수행하는 단계는, 데이터베이스로부터 룰의 유형 정보에 대응하는 룰을 검색하는 단계 및 룰의 변경 정보를 기초로 검색한 룰을 변경하는 단계를 포함할 수 있다.Here, the step of performing a rule check using the information on the transaction and the database includes: retrieving a rule corresponding to the rule type information from the database and changing the retrieved rule based on the rule change information can do.

여기서, 룰 검사 결과는, 룰의 변경 정보에 따라 변경함을 나타내는 정보를 포함할 수 있다.Here, the rule inspection result may include information indicating that the rule is changed according to the change information.

여기서, 트랜잭션은, 블록체인의 상태 정보 및 온톨로지(ontology) 데이터를 포함하는 스마트 컨트랙트(smart contract)에 대한 정보 및 룰 정보를 포함할 수 있다.Here, the transaction may include rule information and information about a smart contract that includes block chain status information and ontology data.

여기서, 룰 정보는, 스마트 컨트랙트의 동작 조건을 SWRL(Semantic Web Rule Language)을 이용하여 나타낸 정보를 포함할 수 있다.Here, the rule information may include information indicating an operating condition of the smart contract using a semantic web rule language (SWRL).

상기 다른 목적을 달성하기 위한 본 발명의 일 실시예에 따른 룰 관리 장치는, 프로세서(processor) 및 프로세서를 통해 실행되는 적어도 하나의 명령이 저장된 메모리(memory)를 포함하고, 적어도 하나의 명령은, 블록체인 서버로부터 트랜잭션(transaction)에 대한 정보를 수신하도록 실행될 수 있고, 트랜잭션에 대한 정보 및 데이터베이스를 이용하여 룰 검사를 수행하도록 실행될 수 있고, 룰 검사 결과를 블록체인 서버로 송신하도록 실행될 수 있고, 블록체인 서버로부터 룰 검사 결과에 따른 작업을 수행한 결과 데이터를 수신하여 데이터베이스를 갱신하도록 실행될 수 있다.A rule management apparatus according to an embodiment of the present invention for achieving the other object includes a processor and a memory in which at least one instruction executed through the processor is stored, and the at least one instruction comprises: It can be executed to receive information about a transaction from a blockchain server, can be executed to perform a rule check using information and a database about the transaction, and can be executed to transmit the rule check results to the blockchain server, It can be executed to update the database by receiving data as a result of performing the operation according to the rule inspection result from the blockchain server.

여기서, 적어도 하나의 명령은, 블록체인의 상태 정보 및 룰의 유형 정보를 수신하도록 실행될 수 있다.Here, at least one command may be executed to receive status information of the blockchain and type information of the rule.

여기서, 적어도 하나의 명령은, 데이터베이스로부터 룰의 유형 정보에 대응하는 룰을 검색하도록 실행될 수 있고, 블록체인의 상태 정보 및 검색한 룰을 기초로 블록체인의 작업 정보를 생성하도록 실행될 수 있다.Here, the at least one command may be executed to retrieve a rule corresponding to the rule type information from the database, and may be executed to generate the operation information of the blockchain based on the state information of the blockchain and the retrieved rule.

여기서, 룰 검사 결과는, 블록체인의 작업 정보를 포함할 수 있다.Here, the rule inspection result may include the operation information of the blockchain.

여기서, 룰 검사 결과는, 데이터베이스에 룰의 유형 정보에 대응하는 룰이 존재하지 않는 경우, 대응하는 룰이 존재하지 않음을 나타내는 정보를 포함할 수 있다.Here, the rule check result may include information indicating that the corresponding rule does not exist when there is no rule corresponding to the rule type information in the database.

여기서, 적어도 하나의 명령은, 룰의 유형 정보 및 룰의 변경 정보를 수신하도록 실행될 수 있다.Here, at least one command may be executed to receive rule type information and rule change information.

여기서, 적어도 하나의 명령은, 데이터베이스로부터 룰의 유형 정보에 대응하는 룰을 검색하도록 실행될 수 있고, 룰의 변경 정보를 기초로 검색한 룰을 변경하도록 실행될 수 있다.Here, at least one command may be executed to retrieve a rule corresponding to the rule type information from the database, and may be executed to change the retrieved rule based on the rule change information.

여기서, 룰 검사 결과는, 룰의 변경 정보에 따라 변경함을 나타내는 정보를 포함할 수 있다.Here, the rule inspection result may include information indicating that the rule is changed according to the change information.

여기서, 트랜잭션은, 블록체인의 상태 정보 및 온톨로지(ontology) 데이터를 포함하는 스마트 컨트랙트(smart contract)에 대한 정보 및 룰 정보를 포함할 수 있다.Here, the transaction may include rule information and information about a smart contract that includes block chain status information and ontology data.

여기서, 룰 정보는, 스마트 컨트랙트의 동작 조건을 SWRL(Semantic Web Rule Language)을 이용하여 나타낸 정보를 포함할 수 있다.Here, the rule information may include information indicating an operating condition of the smart contract using a semantic web rule language (SWRL).

본 발명에 따르면, 온톨로지 규칙을 통해 블록체인 데이터에 대한 정보를 구성하여 급작스러운 환경 변화에도 대응할 수 있다.According to the present invention, it is possible to cope with sudden changes in the environment by constructing information about blockchain data through ontology rules.

본 발명에 따르면, 공통적인 도메인 지식을 통해 데이터를 정형화하여 시맨틱 웹 환경에서 도메인 영역들 간의 상호 작용이 용이하게 수행될 수 있다.According to the present invention, interaction between domain regions in a semantic web environment can be easily performed by shaping data through common domain knowledge.

본 발명에 따르면, 소프트웨어 환경 변화에 따른 영향도를 룰 변경 및 검사하여 사용자가 서비스 이용 시 경험하는 사회적 거래 비용을 조절하여 형평성 있는 서비스를 제공할 수 있다.According to the present invention, it is possible to provide an equitable service by adjusting and inspecting the rules of influence of changes in the software environment by adjusting the social transaction cost experienced by the user when using the service.

도 1은 본 발명의 일 실시예에 따른 룰 관리 방법의 개념도이다.
도 2는 본 발명의 일 실시예에 따른 온톨로지 모델을 나타낸 개념도이다.
도 3은 본 발명의 일 실시예에 따른 룰 관리 장치의 블록 구성도이다.
도 4는 본 발명의 일 실시예에 따른 룰 관리 방법의 플로우 차트이다.
도 5는 본 발명의 다른 실시예에 따른 룰 관리 방법의 플로우 차트이다.
1 is a conceptual diagram of a rule management method according to an embodiment of the present invention.
2 is a conceptual diagram showing an ontology model according to an embodiment of the present invention.
3 is a block diagram of a rule management apparatus according to an embodiment of the present invention.
4 is a flow chart of a rule management method according to an embodiment of the present invention.
5 is a flowchart of a rule management method according to another embodiment of the present invention.

본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다. The present invention can be applied to various changes and can have various embodiments, and specific embodiments will be illustrated in the drawings and described in detail in the detailed description. However, this is not intended to limit the present invention to specific embodiments, and should be understood to include all modifications, equivalents, and substitutes included in the spirit and scope of the present invention. In describing each drawing, similar reference numerals are used for similar components.

제1, 제2, A, B 등의 용어는 다양한 구성요소들을 설명하는 데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. "및/또는"이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다. Terms such as first, second, A, and B may be used to describe various components, but the components should not be limited by the terms. The terms are used only for the purpose of distinguishing one component from other components. For example, the first component may be referred to as a second component without departing from the scope of the present invention, and similarly, the second component may be referred to as a first component. The term “and/or” includes a combination of a plurality of related described items or any one of a plurality of related described items.

어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. When an element is said to be "connected" or "connected" to another component, it is understood that other components may be directly connected to or connected to the other component, but there may be other components in between. It should be. On the other hand, when a component is said to be "directly connected" or "directly connected" to another component, it should be understood that no other component exists in the middle.

본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terms used in this application are only used to describe specific embodiments, and are not intended to limit the present invention. Singular expressions include plural expressions unless the context clearly indicates otherwise. In this application, terms such as “include” or “have” are intended to indicate that a feature, number, step, operation, component, part, or combination thereof described in the specification exists, and that one or more other features are present. It should be understood that the existence or addition possibilities of fields or numbers, steps, operations, components, parts or combinations thereof are not excluded in advance.

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by a person skilled in the art to which the present invention pertains. Terms, such as those defined in a commonly used dictionary, should be interpreted as having meanings consistent with meanings in the context of related technologies, and should not be interpreted as ideal or excessively formal meanings unless explicitly defined in the present application. Does not.

본 발명의 설명에서 이용하는 단어는 아래와 같이 정의될 수 있으나, 이에 한정되는 것은 아니며, 통상의 기술자가 이해하는 범위에 따라 정의가 확장 또는 축소될 수도 있다.The word used in the description of the present invention may be defined as follows, but is not limited thereto, and the definition may be expanded or reduced according to a range understood by a person skilled in the art.

온톨로지(ontology)는 정보를 이해하고 가공하여 새로운 정보를 생성할 수 있는 시맨틱 웹(semantic web)을 구현할 수 있는 도구로서 여러 지식 개념들을 의미적으로 서로 연결할 수 있는 도구를 의미할 수 있다. 또한, 온톨로지에서 주로 사용하는 언어는 RDF(Resource Description Framework), OWL(Ontology Web Language) 및 SWRL(Semantic Web Rule Language) 등이 존재하나, 본 발명의 설명에서는 SWRL을 대표적으로 이용하여 설명한다. 다만, 본 발명의 범위가 이에 한정되는 것은 아니다.Ontology is a tool that can realize a semantic web that can understand and process information to generate new information, and may mean a tool that can semantically connect various knowledge concepts. In addition, the languages mainly used in the ontology include Resource Description Framework (RDF), Ontology Web Language (OWL), and Semantic Web Rule Language (SWRL). However, in the description of the present invention, SWRL is representatively described. However, the scope of the present invention is not limited thereto.

스마트 컨트랙트(smart contract)는 블록체인(blockchain)을 기반으로 다양한 형태의 계약을 체결하고, 계약 조건이 충족된 경우 자동으로 계약이 실행되는 프로그램을 의미할 수 있다. 본 발명의 설명에서 룰은 스마트 컨트랙트의 계약 체결 조건을 SWRL로 정의한 정보를 의미할 수 있다.A smart contract can mean a program that enters into various types of contracts based on a blockchain and automatically executes the contract when the contract conditions are met. In the description of the present invention, a rule may mean information defining a contract condition of a smart contract as SWRL.

이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 본 발명을 설명함에 있어 전체적인 이해를 용이하게 하기 위하여 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다. 이하, 본 발명에 따른 바람직한 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings. In order to facilitate the overall understanding in describing the present invention, the same reference numerals are used for the same components in the drawings, and duplicate descriptions for the same components are omitted. Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명의 일 실시예에 따른 룰 관리 방법의 개념도이다.1 is a conceptual diagram of a rule management method according to an embodiment of the present invention.

도 1을 참조하면, 본 발명의 일 실시예에 따른 룰 관리 방법은 룰(rule) 관리 장치, 블록체인 서버 및 클라이언트 관리 장치 간의 데이터 송수신을 통해 수행될 수 있다.Referring to FIG. 1, a rule management method according to an embodiment of the present invention may be performed through data transmission and reception between a rule management device, a blockchain server, and a client management device.

본 발명의 일 실시예에 따르면, 클라이언트 관리 장치는 적어도 하나의 클라이언트 단말을 관리하는 장치를 의미할 수 있으며, 클라이언트 단말로부터 특정 데이터를 수신하는 경우, 이를 가공하여 블록체인 서버로 송신하는 역할을 수행할 수 있다. 클라이언트 관리 장치는 소프트웨어 또는 프로그램으로서 클라이언트 단말 내에 탑재되어 동일한 기능을 수행할 수도 있다.According to an embodiment of the present invention, the client management device may mean a device that manages at least one client terminal, and when receiving specific data from the client terminal, performs a role of processing it and transmitting it to a blockchain server. can do. The client management device may be mounted in a client terminal as software or a program to perform the same function.

클라이언트 관리 장치는 클라이언트가 입력한 정보를 기초로 블록체인 서버에 트랜잭션을 요청할 수 있다. 다시 말해, 클라이언트 관리 장치는 사전에 정의된 룰에 대한 정보를 포함하고 있을 수 있으며, 클라이언트가 입력한 정보를 기초로 특정 룰에 대한 정보를 사전에 정의된 룰에 대한 정보 중에서 추출할 수 있고, 클라이언트가 입력한 정보 및 추출한 특정 룰에 대한 정보를 기초로 블록체인 서버에 트랜잭션을 요청할 수 있다. 여기서, 특정 룰에 대한 정보는 룰의 유형 정보를 포함할 수 있다.The client management device may request a transaction from the blockchain server based on the information input by the client. In other words, the client management device may include information on a predefined rule, and based on information input by the client, information on a specific rule may be extracted from information on a predefined rule, Transactions can be requested to the blockchain server based on the information entered by the client and information on the specific rule extracted. Here, information about a specific rule may include rule type information.

또한, 클라이언트 관리 장치는 블록체인 서버로부터 클라이언트의 입력 정보에 따라 수행한 작업의 결과를 수신할 수 있으며, 그 결과를 클라이언트에게 제공할 수 있다.In addition, the client management device may receive the result of the work performed according to the input information of the client from the blockchain server, and provide the result to the client.

블록체인 서버는 블록을 발행할 수 있는 장치 또는 블록을 발행할 수 있는 적어도 하나의 장치를 관리하는 장치를 의미할 수 있으며, 블록체인 네트워크를 형성할 수 있는 복수의 블록체인 서버 중 하나를 의미할 수 있다. 다시 말해, 블록체인 서버는 다른 블록체인 서버와 동일한 내용의 원장 및 스마트 컨트랙트를 각각 가지고 있을 수 있다. The blockchain server may mean a device that can issue a block or a device that manages at least one device that can issue a block, and one of a plurality of blockchain servers that can form a blockchain network. Can. In other words, the blockchain server may have the same ledger and smart contract as the other blockchain servers, respectively.

블록체인 서버는 클라이언트 관리 장치로부터 트랜잭션 요청을 수신할 수 있으며, 요청된 트랜잭션을 정의하는 합의 알고리즘을 통해 수신한 트랜잭션 요청의 유효성을 검증할 수 있다. 여기서, 블록체인 서버는 공개키 및/또는 비밀키 등을 이용하여 유효성을 검증할 수 있으며, 해시값을 이용하여 유효성을 검증할 수도 있고, 이를 위해 추가적인 정보를 클라이언트 관리 장치로부터 수신할 수 있다. 다만, 유효성 검증 방법은 이에 한정되는 것은 아니며, 통상적인 블록체인 기술에서 이용되는 유효성 검증 방법이 모두 이용될 수 있으며, 다른 기술 분야의 유효성 검증 방법도 적용될 수 있다.The blockchain server can receive a transaction request from the client management device, and can verify the validity of the received transaction request through an agreement algorithm that defines the requested transaction. Here, the blockchain server can verify the validity using a public key and/or a secret key, and can also verify the validity using a hash value, and for this, receive additional information from the client management device. However, the validation method is not limited to this, and any validation method used in conventional blockchain technology can be used, and validation methods in other technical fields can also be applied.

이후, 블록체인 서버는 룰 검사를 위해 트랜잭션에 대한 정보를 룰 관리 장치로 송신할 수 있다. 다시 말해, 블록체인 서버는 클라이언트의 입력 정보에 따라 수행할 작업에 대한 정보를 획득하기 위해 클라이언트의 입력 정보 및 특정 룰에 대한 정보를 룰 관리 장치로 송신할 수 있다.Thereafter, the blockchain server may transmit information about the transaction to the rule management device for rule inspection. In other words, the blockchain server may transmit the input information of the client and information about a specific rule to the rule management device in order to obtain information about a task to be performed according to the input information of the client.

또한, 블록체인 서버는 룰 관리 장치에 의해 생성된 작업에 대한 정보를 수신하여 작업을 수행할 수 있으며, 그 결과를 기초로 트랜잭션 및/또는 블록을 발행할 수 있고, 이에 따라 관련 정보가 원장에 저장될 수 있다. 이후, 블록체인 서버는 그 결과를 클라이언트 관리 장치로 송신하여 클라이언트의 입력 정보에 따라 수행한 작업 결과를 클라이언트에게 제공할 수 있으며, 룰 관리 장치로 송신하여 룰 관리 장치의 데이터베이스를 갱신할 수 있다.In addition, the blockchain server can receive information about the work generated by the rule management device to perform the work, and can issue transactions and/or blocks based on the result, and accordingly related information is sent to the ledger. Can be saved. Thereafter, the blockchain server may transmit the result to the client management device to provide the result of the work performed according to the client's input information, and transmit the result to the rule management device to update the database of the rule management device.

룰 관리 장치는 블록체인 서버로부터 수신한 트랜잭션에 대한 정보를 기초로 블록체인 서버가 관리하는 블록의 상태를 분석할 수 있으며, 특정 룰에 대한 정보를 기초로 데이터베이스에서 적용할 룰에 대한 정보를 검색할 수 있다. 룰 관리 장치는 적용할 룰에 대한 정보가 존재하는 경우, 클라이언트의 입력 정보 및 적용할 룰에 대한 정보를 기초로 클라이언트의 입력 정보에 따라 수행할 작업에 대한 정보를 생성할 수 있다. 이후, 룰 관리 장치는 생성한 작업에 대한 정보를 블록체인 서버에 송신할 수 있다. 다만, 룰 관리 장치는 데이터베이스에 적용할 룰에 대한 정보가 존재하지 않는 경우, 룰이 존재하지 않는다는 메시지를 블록체인 서버로 송신할 수 있다.The rule management device can analyze the state of the block managed by the blockchain server based on the information on the transaction received from the blockchain server, and retrieve information about the rule to be applied from the database based on the information about the specific rule. can do. When information on a rule to be applied exists, the rule management apparatus may generate information on a task to be performed according to the input information of the client based on the input information of the client and information on the rule to be applied. Subsequently, the rule management device may transmit information on the generated task to the blockchain server. However, the rule management device may transmit a message that the rule does not exist to the blockchain server when there is no information on the rule to be applied to the database.

또한, 이후에 룰 관리 장치는 블록체인 서버로부터 작업 결과에 대한 정보를 수신할 수 있으며, 이를 기초로 데이터베이스를 갱신할 수 있다.In addition, the rule management device may receive information on the result of the operation from the blockchain server and update the database based on this.

상술한 동작에 따라, 본 발명은 사용자의 입력 정보에 따른 동작을 추적할 수 있으며, 동적으로 룰을 확인할 수 있다.According to the above-described operation, the present invention can track the operation according to the user's input information, and can dynamically check the rules.

본 발명의 다른 실시예에 따르면, 클라이언트 관리 장치는 클라이언트로부터 룰 변경 정보를 획득할 수 있으며, 이러한 경우, 룰 변경 정보 및 룰 변경 대상인 특정 룰에 대한 정보를 기초로 블록체인 서버로 트랜잭션을 요청할 수 있다. 또한, 이후에 블록체인 서버로부터 룰 변경의 완료를 나타내는 정보를 획득하여 클라이언트에게 제공할 수 있다. 여기서, 특정 룰에 대한 정보는 룰의 유형 정보를 포함할 수 있다.According to another embodiment of the present invention, the client management device may obtain rule change information from the client, and in this case, may request a transaction from the blockchain server based on the rule change information and information about a specific rule to be changed. have. In addition, afterwards, information indicating the completion of the rule change can be obtained from the blockchain server and provided to the client. Here, information about a specific rule may include rule type information.

블록체인 서버는 요청된 트랜잭션을 정의하는 합의 알고리즘을 통해 수신한 트랜잭션 요청의 유효성을 검증할 수 있으며, 유효성 검증 방법에 따라 추가적인 정보를 클라이언트 관리 장치로부터 수신할 수 있다. 본 발명의 다른 실시예에서의 유효성 검증 방법도 통상적인 블록체인 기술에서 이용되는 유효성 검증 방법이 모두 이용될 수 있으며, 다른 기술 분야의 유효성 검증 방법도 적용될 수 있다.The blockchain server can verify the validity of the received transaction request through the consensus algorithm that defines the requested transaction, and can receive additional information from the client management device according to the validation method. Validation methods in other embodiments of the present invention can all be used for validation methods used in conventional blockchain technology, and validation methods in other technical fields can also be applied.

이후, 블록체인 서버는 룰 변경을 위해 트랜잭션에 대한 정보를 룰 관리 장치로 송신할 수 있다. 다시 말해, 블록체인 서버는 룰 변경 정보 및 특정 룰에 대한 정보를 룰 관리 장치로 송신할 수 있다.Thereafter, the blockchain server may transmit information about the transaction to the rule management device to change the rule. In other words, the blockchain server can transmit rule change information and information on a specific rule to the rule management device.

또한, 블록체인 서버는 룰 관리 장치로부터 룰 변경 완료를 나타내는 정보를 수신한 경우, 그 결과를 기초로 트랜잭션 및/또는 블록을 발행할 수 있고, 이에 따라 관련 정보가 원장에 저장될 수 있다. 이후, 블록체인 서버는 그 결과를 클라이언트 관리 장치로 송신하여 룰 변경이 완료됨을 클라이언트에게 제공할 수 있다.In addition, when receiving information indicating rule change completion from the rule management device, the blockchain server may issue a transaction and/or block based on the result, and accordingly, related information may be stored in the ledger. Thereafter, the blockchain server may transmit the result to the client management device to provide the client with the completion of the rule change.

룰 관리 장치는 블록체인 서버로부터 수신한 특정 룰에 대한 정보를 기초로 데이터베이스에서 변경할 룰에 대한 정보를 검색할 수 있다. 룰 관리 장치는 변경할 룰에 대한 정보가 존재하는 경우, 룰 변경 정보를 기초로 룰을 변경할 수 있으며, 그 결과를 블록체인 서버로 송신할 수 있다. 다시 말해, 룰 관리 장치는 변경 완료를 나타내는 정보를 블록체인 서버로 송신할 수 있다. 다만, 룰 관리 장치는 데이터베이스에 변경할 룰에 대한 정보가 존재하지 않는 경우, 룰이 존재하지 않는다는 메시지를 블록체인 서버로 송신할 수 있다.The rule management device may search for information about the rule to be changed in the database based on information on a specific rule received from the blockchain server. The rule management device may change the rule based on the rule change information when information about the rule to be changed exists, and transmit the result to the blockchain server. In other words, the rule management device may transmit information indicating the completion of the change to the blockchain server. However, the rule management device may transmit a message that the rule does not exist to the blockchain server when there is no information about the rule to be changed in the database.

상술한 동작에 따라, 본 발명은 사용자의 입력 정보에 따른 동작뿐만 아니라 룰의 변경 내역도 추적할 수 있으며, 동적으로 룰의 변경을 반영할 수 있다.According to the above-described operation, the present invention can track the change history of the rule as well as the operation according to the user's input information, and dynamically reflect the change of the rule.

여기서, 룰은 시맨틱 웹 언어로 구성될 수 있으며, 온톨로지 SWRL을 기초로 수행할 작업이 결정될 수 있다. 또한, 룰 변경을 요청하는 경우에는 룰 변경 정보를 이용하여 SWRL 룰을 재정의하여 룰을 변경할 수 있다. Here, the rule may be composed of a semantic web language, and a task to be performed may be determined based on the ontology SWRL. In addition, when a rule change request is made, the rule can be changed by redefining the SWRL rule using the rule change information.

또한, 블록체인 서버가 관리하는 블록은 표 1과 같이 스마트 컨트랙트에 대한 정보 및 룰에 대한 정보를 포함할 수 있다.In addition, the blocks managed by the blockchain server may include information about smart contracts and rules as shown in Table 1.

Figure 112018112633021-pat00001
Figure 112018112633021-pat00001

표 1을 참조하면, 스마트 컨트랙트는 상태 정보 및 온톨로지 데이터를 포함할 수 있으며, 룰은 키(key) 및 값(value)을 포함할 수 있다. Referring to Table 1, the smart contract may include status information and ontology data, and the rule may include a key and a value.

도 2는 본 발명의 일 실시예에 따른 온톨로지 모델을 나타낸 개념도이다.2 is a conceptual diagram showing an ontology model according to an embodiment of the present invention.

설명의 편의를 위해 클라이언트가 제품 구매 시 포인트가 적립되는 경우를 예로 들어 본 발명을 설명하겠다. 여기서, 도 2는 스마트 컨트랙트의 물품 구매 조건을 만족한 경우, 포인트 적립에 대한 룰의 온톨로지 모델을 나타낸 도면이다.For convenience of description, the present invention will be described by taking a case where points are accumulated when a client purchases a product. Here, FIG. 2 is a diagram showing an ontology model of a rule for earning points when the conditions for purchasing goods of a smart contract are satisfied.

클라이언트는 물품을 구매하는 경우, 클라이언트 관리 장치는 블록체인 서버로 해당 물품에 대한 구매를 요청할 수 있다. 블록체인 서버는 요청에 대한 유효성 검증 및 클라이언트의 잔고 확인 등을 수행할 수 있으며, 이에 따라 구매가 체결되는 경우, 클라이언트의 구매 요청 정보 및 포인트 적립에 대한 룰에 대한 정보를 룰 관리 장치로 송신하여 룰을 검사할 수 있다. When a client purchases an item, the client management device may request a purchase for the item from the blockchain server. The blockchain server can perform validation of requests and check the balance of the client, and accordingly, when a purchase is made, information about the client's purchase request and rules for earning points is transmitted to the rule management device Rules can be checked.

룰 관리 장치는 데이터베이스에서 포인트 적립에 대한 룰에 대한 정보를 검색할 수 있으며, 수신한 정보에 따른 룰이 존재하는 경우, 구매 요청 정보 및 검색한 룰에 대한 정보를 기초로 수행할 작업에 대한 정보를 생성할 수 있다. The rule management device may search for information on the rules for earning points in the database, and if there are rules according to the received information, information on a task to be performed based on the purchase request information and information on the retrieved rules Can generate

도 2를 참조하면, 포인트 적립에 대한 룰의 온톨로지 모델은 사용자를 나타내는 client 클래스, 트랜잭션을 나타내는 transaction 클래스 및 회원 등급을 나타내는 grade 클래스를 포함할 수 있다. 룰 관리 장치는 이러한 온톨로지 모델을 통해 데이터들 간에 추론을 수행할 수 있으며, 이를 기초로 수행할 작업에 대한 정보를 생성할 수 있다.Referring to FIG. 2, the ontology model of the rule for earning points may include a client class representing a user, a transaction class representing a transaction, and a grade class representing a member class. The rule management apparatus may perform inference between data through the ontology model, and may generate information about a task to be performed based on this.

예를 들어, 골드 등급 클라이언트의 구매에 따른 포인트 적립이 요청된 경우, 룰 관리 장치는 요청하는 클라이언트의 정보가 hasGrade를 포함하고 있는지, 포함하고 있다면, Gold라는 문자열과 같은지 판단할 수 있으며, 모두 만족하는 경우, 1.5%를 해당 클라이언트에 대한 포인트 적립에 적용하는 작업에 대한 정보를 생성할 수 있다.For example, when points are requested for the purchase of a gold-class client, the rule management device may determine whether the requested client's information includes hasGrade, and if so, whether it is the same as the string Gold. If it does, it is possible to generate information about the task of applying 1.5% to earning points for the corresponding client.

상술한 과정은 온톨로지 모델을 통해 추론하여 작업에 대한 정보를 생성하는 룰 관리 장치의 동작을 설명하기 위한 일 실시예일뿐, 본 발명이 이에 한정되는 것은 아니다.The above-described process is only an embodiment for explaining the operation of the rule management apparatus that infers information through the ontology model to generate information on the job, and the present invention is not limited thereto.

도 3은 본 발명의 일 실시예에 따른 룰 관리 장치의 블록 구성도이다.3 is a block diagram of a rule management apparatus according to an embodiment of the present invention.

도 3을 참조하면, 본 발명의 일 실시예에 따른 룰 관리 장치는 적어도 하나의 프로세서(310), 메모리(320) 및 저장 장치(330)를 포함할 수 있다.Referring to FIG. 3, a rule management device according to an embodiment of the present invention may include at least one processor 310, a memory 320, and a storage device 330.

프로세서(310)는 메모리(320) 및/또는 저장 장치(330)에 저장된 프로그램 명령(program command)을 실행할 수 있다. 프로세서(310)는 중앙 처리 장치(CPU, Central Processing Unit), 그래픽 처리 장치(GPU, Graphics Processing Unit) 또는 본 발명에 따른 방법들이 수행되는 전용의 프로세서를 의미할 수 있다. 메모리(320)와 저장 장치(330)는 휘발성 저장 매체 및/또는 비휘발성 저장 매체로 구성될 수 있다. 예를 들어, 메모리(320)는 읽기 전용 메모리(ROM, Read Only Memory) 및/또는 랜덤 액세스 메모리(RAM, Random Access Memory)로 구성될 수 있다.The processor 310 may execute program commands stored in the memory 320 and/or the storage device 330. The processor 310 may refer to a central processing unit (CPU), a graphics processing unit (GPU), or a dedicated processor on which methods according to the present invention are performed. The memory 320 and the storage device 330 may be composed of volatile storage media and/or non-volatile storage media. For example, the memory 320 may be composed of read only memory (ROM) and/or random access memory (RAM).

메모리(320)는 프로세서(310)를 통해 실행되는 적어도 하나의 명령을 저장하고 있을 수 있다. 적어도 하나의 명령은 블록체인 서버로부터 트랜잭션(transaction)에 대한 정보를 수신하는 명령, 트랜잭션에 대한 정보 및 데이터베이스를 이용하여 룰 검사를 수행하는 명령, 룰 검사 결과를 블록체인 서버로 송신하는 명령 및 블록체인 서버로부터 룰 검사 결과에 따른 작업을 수행한 결과 데이터를 수신하여 데이터베이스를 갱신하는 명령을 포함할 수 있다.The memory 320 may store at least one instruction executed through the processor 310. At least one command is a command to receive information about a transaction from a blockchain server, a command to perform a rule check using a database and information about the transaction, and a command to send a rule check result to the blockchain server It may include a command to update the database by receiving data as a result of performing the operation according to the rule check result from the chain server.

여기서, 블록체인 서버로부터 트랜잭션에 대한 정보를 수신하는 명령은, 블록체인의 상태 정보 및 룰의 유형 정보를 수신하는 명령을 포함할 수 있고, 트랜잭션에 대한 정보 및 데이터베이스를 이용하여 룰 검사를 수행하는 명령은, 데이터베이스로부터 룰의 유형 정보에 대응하는 룰을 검색하는 명령 및 블록체인의 상태 정보 및 검색한 룰을 기초로 블록체인의 작업 정보를 생성하는 명령을 포함할 수 있다. 또한, 룰 검사 결과는, 블록체인의 작업 정보 및 데이터베이스에 룰의 유형 정보에 대응하는 룰이 존재하지 않는 경우, 대응하는 룰이 존재하지 않음을 나타내는 정보 중 적어도 하나를 포함할 수 있다.Here, the command for receiving information about the transaction from the blockchain server may include a command for receiving the status information of the blockchain and the type information of the rule, and performing rule inspection using the information about the transaction and the database The command may include a command for retrieving the rule corresponding to the rule type information from the database, and a command for generating operation information of the blockchain based on the state information of the blockchain and the retrieved rule. In addition, the rule check result may include at least one of information indicating that the corresponding rule does not exist when there is no rule corresponding to the rule type information in the database and the operation information of the blockchain.

여기서, 블록체인 서버로부터 트랜잭션에 대한 정보를 수신하는 명령은, 룰의 유형 정보 및 룰의 변경 정보를 수신하는 명령을 포함할 수 있고, 트랜잭션에 대한 정보 및 데이터베이스를 이용하여 룰 검사를 수행하는 명령은, 데이터베이스로부터 룰의 유형 정보에 대응하는 룰을 검색하는 명령 및 룰의 변경 정보를 기초로 검색한 룰을 변경하는 명령을 포함할 수 있다. 또한, 룰 검사 결과는, 룰의 변경 정보에 따라 변경함을 나타내는 정보를 포함할 수 있다.Here, the command for receiving information about the transaction from the blockchain server may include a command for receiving the type information of the rule and the change information of the rule, and a command for performing rule checking using the information about the transaction and the database May include an instruction to retrieve a rule corresponding to rule type information from a database and an instruction to change the retrieved rule based on the rule change information. Further, the rule inspection result may include information indicating that the rule is changed according to the change information.

여기서, 트랜잭션은, 블록체인의 상태 정보 및 온톨로지(ontology) 데이터를 포함하는 스마트 컨트랙트(smart contract)에 대한 정보 및 룰 정보를 포함할 수 있고, 룰 정보는, 스마트 컨트랙트의 동작 조건을 SWRL(Semantic Web Rule Language)을 이용하여 나타낸 정보를 포함할 수 있다.Here, the transaction may include information and rule information about a smart contract including the block chain status information and ontology data, and the rule information may include SWRL (Semantic) of the operating conditions of the smart contract. Web Rule Language).

도 4는 본 발명의 일 실시예에 따른 룰 관리 방법의 플로우 차트이다.4 is a flow chart of a rule management method according to an embodiment of the present invention.

도 4를 참조하면, 본 발명의 일 실시예에 따른 룰 관리 방법은 클라이언트 관리 장치, 블록체인 서버 및 룰 관리 장치 간의 데이터 송수신을 통해 달성될 수 있다.Referring to FIG. 4, a rule management method according to an embodiment of the present invention may be achieved through data transmission and reception between a client management device, a blockchain server, and a rule management device.

우선, 클라이언트 관리 장치는 클라이언트가 입력한 정보를 기초로 블록체인 서버에 트랜잭션을 요청할 수 있다(S410). 여기서, 클라이언트가 입력한 정보를 기초로 특정 룰에 대한 정보를 사전에 정의된 룰에 대한 정보 중에서 추출할 수 있고, 클라이언트가 입력한 정보 및 추출한 특정 룰에 대한 정보를 기초로 블록체인 서버에 트랜잭션을 요청할 수 있다.First, the client management device may request a transaction from the blockchain server based on the information input by the client (S410). Here, based on the information entered by the client, information about a specific rule can be extracted from information about a predefined rule, and a transaction is made to the blockchain server based on the information entered by the client and the extracted specific rule information. You can request.

블록체인 서버는 클라이언트 관리 장치로부터 수신한 트랜잭션이 정의된 합의 알고리즘을 통해 수신한 트랜잭션 요청의 유효성을 검증할 수 있다(S420). 여기서, 유효성 검증 방법은 통상적인 블록체인 기술에서 이용되는 유효성 검증 방법이 모두 이용될 수 있으며, 다른 기술 분야의 유효성 검증 방법도 적용될 수 있다. The blockchain server can verify the validity of the transaction request received through a consensus algorithm in which the transaction received from the client management device is defined (S420). Here, all of the validation methods used in the conventional blockchain technology can be used as the validation method, and validation methods in other technical fields can also be applied.

이후, 블록체인 서버는 룰 검사를 위해 트랜잭션에 대한 정보를 룰 관리 장치로 송신할 수 있다(S430). 다시 말해, 블록체인 서버는 클라이언트의 입력 정보에 따라 수행할 작업에 대한 정보를 획득하기 위해 클라이언트의 입력 정보 및 특정 룰에 대한 정보를 룰 관리 장치로 송신할 수 있다. Thereafter, the blockchain server may transmit information about the transaction to the rule management device for rule inspection (S430). In other words, the blockchain server may transmit the input information of the client and information about a specific rule to the rule management device in order to obtain information about a task to be performed according to the input information of the client.

룰 관리 장치는 블록체인 서버로부터 수신한 트랜잭션에 대한 정보를 기초로 룰 검사를 수행할 수 있다(S440). 다시 말해, 룰 관리 장치는 블록체인 서버가 관리하는 블록의 상태를 분석할 수 있으며, 특정 룰에 대한 정보를 기초로 데이터베이스에서 적용할 룰에 대한 정보를 검색할 수 있고, 적용할 룰에 대한 정보가 존재하는 경우, 클라이언트의 입력 정보 및 적용할 룰에 대한 정보를 기초로 클라이언트의 입력 정보에 따라 수행할 작업에 대한 정보를 생성할 수 있다. 이후, 룰 관리 장치는 생성한 작업에 대한 정보를 블록체인 서버에 송신할 수 있다(S450).The rule management device may perform rule checking based on information on the transaction received from the blockchain server (S440). In other words, the rule management device can analyze the state of the block managed by the blockchain server, can retrieve information about the rules to be applied from the database based on the information about the specific rules, and information about the rules to be applied When exists, information on a task to be performed may be generated according to the input information of the client, based on the input information of the client and information on the rule to be applied. Thereafter, the rule management device may transmit information on the generated task to the blockchain server (S450).

블록체인 서버는 룰 관리 장치로부터 수신한 작업에 대한 정보를 기초로 작업을 수행할 수 있으며(S460), 그 결과를 기초로 트랜잭션 및/또는 블록을 발행하여 원장에 저장할 수 있다. 또한, 블록체인 서버는 클라이언트의 입력 정보에 따라 수행한 작업 결과를 클라이언트 및 룰 관리 장치로 송신할 수 있으며(S470), 룰 관리 장치는 수신한 작업 결과를 기초로 룰 관리 장치의 데이터베이스를 갱신할 수 있다(S480).The blockchain server may perform a task based on information about the task received from the rule management device (S460), and may issue a transaction and/or block based on the result and store it in the ledger. In addition, the blockchain server may transmit the result of the work performed according to the input information of the client to the client and the rule management device (S470), and the rule management device may update the database of the rule management device based on the received result of the operation. It can be (S480).

도 5는 본 발명의 다른 실시예에 따른 룰 관리 방법의 플로우 차트이다.5 is a flowchart of a rule management method according to another embodiment of the present invention.

도 5를 참조하면, 본 발명의 다른 실시예에 따른 룰 관리 방법은 클라이언트 관리 장치, 블록체인 서버 및 룰 관리 장치 간의 데이터 송수신을 통해 달성될 수 있다.Referring to FIG. 5, a rule management method according to another embodiment of the present invention can be achieved through data transmission and reception between a client management device, a blockchain server, and a rule management device.

우선, 클라이언트 관리 장치는 클라이언트로부터 룰 변경 정보를 획득한 경우, 룰 변경 정보 및 룰 변경 대상인 특정 룰에 대한 정보를 기초로 블록체인 서버로 트랜잭션을 요청할 수 있다(S510).First, when the rule change information is obtained from the client, the client management device may request a transaction from the blockchain server based on the rule change information and information on a specific rule to be changed (S510).

블록체인 서버는 수신한 트랜잭션 요청의 유효성을 검증할 수 있으며(S520), 여기서, 유효성 검증 방법은 통상적인 블록체인 기술에서 이용되는 유효성 검증 방법이 모두 이용될 수 있으며, 다른 기술 분야의 유효성 검증 방법도 적용될 수 있다.The blockchain server can verify the validity of the received transaction request (S520), where the validation method used in conventional blockchain technology can all be used, and the validation method in other technical fields Can also be applied.

이후, 블록체인 서버는 트랜잭션에 대한 정보를 기초로 룰 관리 장치로 룰 변경을 요청할 수 있다(S530). 다시 말해, 블록체인 서버는 룰 변경 정보 및 특정 룰에 대한 정보를 룰 관리 장치로 송신할 수 있다.Thereafter, the blockchain server may request a rule change to the rule management device based on the information on the transaction (S530). In other words, the blockchain server can transmit rule change information and information on a specific rule to the rule management device.

룰 관리 장치는 블록체인 서버로부터 수신한 특정 룰에 대한 정보를 기초로 데이터베이스에서 변경할 룰에 대한 정보를 검색할 수 있으며, 룰 변경 정보를 기초로 해당 룰을 변경할 수 있다(S540).The rule management device may search for information about a rule to be changed in the database based on information on a specific rule received from the blockchain server, and may change the corresponding rule based on the rule change information (S540).

이후, 룰 관리 장치는 룰 변경 결과를 블록체인 서버로 송신할 수 있다(S550). 여기서, 룰 변경 결과는 변경 완료를 나타내는 정보 및/또는 변경된 룰에 대한 정보를 포함할 수 있다. Thereafter, the rule management device may transmit the rule change result to the blockchain server (S550). Here, the rule change result may include information indicating that the change is completed and/or information about the changed rule.

블록체인 서버는 룰 관리 장치로부터 룰 변경 결과를 수신한 경우, 그 결과를 기초로 트랜잭션 및/또는 블록을 발행할 수 있고, 이에 따라 관련 정보가 원장에 저장될 수 있다(S560). 이후, 블록체인 서버는 룰 변경 결과에 대한 정보를 클라이언트 관리 장치로 송신하여 룰 변경이 완료됨을 클라이언트에게 제공할 수 있다(S570).When a rule change result is received from the rule management device, the blockchain server may issue a transaction and/or block based on the result, and accordingly, related information may be stored in the ledger (S560). Thereafter, the blockchain server may transmit information on the result of the rule change to the client management device to provide the client with the completion of the rule change (S570).

본 발명의 실시예에 따른 동작은 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 프로그램 또는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의해 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어 분산 방식으로 컴퓨터로 읽을 수 있는 프로그램 또는 코드가 저장되고 실행될 수 있다. The operation according to the embodiment of the present invention can be implemented as a computer-readable program or code on a computer-readable recording medium. The computer-readable recording medium includes all kinds of recording devices in which data readable by a computer system is stored. The computer-readable recording medium can also be distributed over network coupled computer systems so that computer-readable programs or codes are stored and executed in a distributed fashion.

또한, 컴퓨터가 읽을 수 있는 기록매체는 롬(rom), 램(ram), 플래시 메모리(flash memory) 등과 같이 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치를 포함할 수 있다. 프로그램 명령은 컴파일러(compiler)에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터(interpreter) 등을 사용해서 컴퓨터에 의해 실행될 수 있는 고급 언어 코드를 포함할 수 있다.In addition, the computer-readable recording medium may include a hardware device specially configured to store and execute program instructions, such as a ROM, a RAM, and a flash memory. Program instructions may include high-level language code that can be executed by a computer using an interpreter or the like, as well as machine code such as those produced by a compiler.

본 발명의 일부 측면들은 장치의 문맥에서 설명되었으나, 그것은 상응하는 방법에 따른 설명 또한 나타낼 수 있고, 여기서 블록 또는 장치는 방법 단계 또는 방법 단계의 특징에 상응한다. 유사하게, 방법의 문맥에서 설명된 측면들은 또한 상응하는 블록 또는 아이템 또는 상응하는 장치의 특징으로 나타낼 수 있다. 방법 단계들의 몇몇 또는 전부는 예를 들어, 마이크로프로세서, 프로그램 가능한 컴퓨터 또는 전자 회로와 같은 하드웨어 장치에 의해(또는 이용하여) 수행될 수 있다. 몇몇의 실시예에서, 가장 중요한 방법 단계들의 하나 이상은 이와 같은 장치에 의해 수행될 수 있다. While some aspects of the invention have been described in the context of an apparatus, it can also represent a description according to a corresponding method, where a block or apparatus corresponds to a method step or a feature of a method step. Similarly, aspects described in the context of a method can also be characterized by a corresponding block or item or characteristic of a corresponding device. Some or all of the method steps may be performed by (or using) a hardware device, such as, for example, a microprocessor, programmable computer, or electronic circuit. In some embodiments, one or more of the most important method steps may be performed by such an apparatus.

실시예들에서, 프로그램 가능한 로직 장치(예를 들어, 필드 프로그래머블 게이트 어레이)가 여기서 설명된 방법들의 기능의 일부 또는 전부를 수행하기 위해 사용될 수 있다. 실시예들에서, 필드 프로그래머블 게이트 어레이는 여기서 설명된 방법들 중 하나를 수행하기 위한 마이크로프로세서와 함께 작동할 수 있다. 일반적으로, 방법들은 어떤 하드웨어 장치에 의해 수행되는 것이 바람직하다.In embodiments, a programmable logic device (eg, field programmable gate array) may be used to perform some or all of the functionality of the methods described herein. In embodiments, the field programmable gate array may work with a microprocessor to perform one of the methods described herein. In general, the methods are preferably performed by some hardware device.

상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다. Although described above with reference to preferred embodiments of the present invention, those skilled in the art variously modify and change the present invention without departing from the spirit and scope of the present invention as set forth in the claims below. You can understand that you can.

Claims (20)

블록체인 서버와 연결된 스마트 컨트랙트(smart contract)의 룰(rule) 관리 장치의 룰 관리 방법에 있어서,
상기 블록체인 서버로부터 트랜잭션(transaction)에 대한 정보를 수신하는 단계;
상기 트랜잭션에 대한 정보 및 데이터베이스를 이용하여 룰 검사를 수행하는 단계;
상기 룰 검사 결과를 상기 블록체인 서버로 송신하는 단계; 및
상기 블록체인 서버로부터 상기 룰 검사 결과에 따른 작업을 수행한 결과 데이터를 수신하여 상기 데이터베이스를 갱신하는 단계를 포함하는, 룰 관리 방법.
In the rule management method of the rule management device of the smart contract (smart contract) connected to the blockchain server,
Receiving information about a transaction from the blockchain server;
Performing a rule check using the information and database for the transaction;
Transmitting the rule inspection result to the blockchain server; And
And updating the database by receiving the result data after performing the operation according to the rule inspection result from the blockchain server.
청구항 1에 있어서,
상기 블록체인 서버로부터 트랜잭션에 대한 정보를 수신하는 단계는,
블록체인의 상태 정보 및 룰의 유형 정보를 수신하는 단계를 포함하는, 룰 관리 방법.
The method according to claim 1,
The step of receiving information about the transaction from the blockchain server,
A method for managing rules, comprising receiving status information of a blockchain and type information of a rule.
청구항 2에 있어서,
상기 트랜잭션에 대한 정보 및 데이터베이스를 이용하여 룰 검사를 수행하는 단계는,
상기 데이터베이스로부터 상기 룰의 유형 정보에 대응하는 룰을 검색하는 단계; 및
상기 블록체인의 상태 정보 및 상기 검색한 룰을 기초로 상기 블록체인의 작업 정보를 생성하는 단계를 포함하는, 룰 관리 방법.
The method according to claim 2,
Step of performing a rule check using the information and the database for the transaction,
Retrieving a rule corresponding to the rule type information from the database; And
And generating task information of the blockchain based on the state information of the blockchain and the retrieved rule.
청구항 3에 있어서,
상기 룰 검사 결과는,
상기 블록체인의 작업 정보를 포함하는, 룰 관리 방법.
The method according to claim 3,
The rule inspection results,
Rule management method including the operation information of the blockchain.
청구항 3에 있어서,
상기 룰 검사 결과는,
상기 데이터베이스에 상기 룰의 유형 정보에 대응하는 룰이 존재하지 않는 경우, 대응하는 룰이 존재하지 않음을 나타내는 정보를 포함하는, 룰 관리 방법.
The method according to claim 3,
The rule inspection results,
When the rule corresponding to the rule type information does not exist in the database, the rule management method includes information indicating that the corresponding rule does not exist.
청구항 1에 있어서,
상기 블록체인 서버로부터 트랜잭션에 대한 정보를 수신하는 단계는,
룰의 유형 정보 및 룰의 변경 정보를 수신하는 단계를 포함하는, 룰 관리 방법.
The method according to claim 1,
The step of receiving information about the transaction from the blockchain server,
And receiving type information of the rule and change information of the rule.
청구항 6에 있어서,
상기 트랜잭션에 대한 정보 및 데이터베이스를 이용하여 룰 검사를 수행하는 단계는,
상기 데이터베이스로부터 상기 룰의 유형 정보에 대응하는 룰을 검색하는 단계; 및
상기 룰의 변경 정보를 기초로 상기 검색한 룰을 변경하는 단계를 포함하는, 룰 관리 방법.
The method according to claim 6,
Step of performing a rule check using the information and the database for the transaction,
Retrieving a rule corresponding to the rule type information from the database; And
And changing the searched rule based on the change information of the rule.
청구항 7에 있어서,
상기 룰 검사 결과는,
상기 룰의 변경 정보에 따라 변경함을 나타내는 정보를 포함하는, 룰 관리 방법.
The method according to claim 7,
The rule inspection results,
And information indicating that a change is made according to the change information of the rule.
청구항 1에 있어서,
상기 트랜잭션은,
블록체인의 상태 정보 및 온톨로지(ontology) 데이터를 포함하는 스마트 컨트랙트(smart contract)에 대한 정보 및 룰 정보를 포함하는, 룰 관리 방법.
The method according to claim 1,
The transaction,
A rule management method including rule information and information about a smart contract including state information and ontology data of a blockchain.
청구항 9에 있어서,
상기 룰 정보는,
상기 스마트 컨트랙트의 동작 조건을 SWRL(Semantic Web Rule Language)을 이용하여 나타낸 정보를 포함하는, 룰 관리 방법.
The method according to claim 9,
The rule information,
A rule management method including information indicating an operating condition of the smart contract using a semantic web rule language (SWRL).
블록체인 서버와 연결되어 스마트 컨트랙트(smart contract)의 룰(rule)을 관리하는 룰 관리 장치에 있어서,
프로세서(processor); 및
상기 프로세서를 통해 실행되는 적어도 하나의 명령이 저장된 메모리(memory)를 포함하고,
상기 적어도 하나의 명령은,
상기 블록체인 서버로부터 트랜잭션(transaction)에 대한 정보를 수신하도록 실행되고,
상기 트랜잭션에 대한 정보 및 데이터베이스를 이용하여 룰 검사를 수행하도록 실행되고,
상기 룰 검사 결과를 상기 블록체인 서버로 송신하도록 실행되고,
상기 블록체인 서버로부터 상기 룰 검사 결과에 따른 작업을 수행한 결과 데이터를 수신하여 상기 데이터베이스를 갱신하도록 실행되는, 룰 관리 장치.
In the rule management device connected to the blockchain server to manage the rules of the smart contract (smart contract),
A processor; And
And a memory in which at least one instruction executed through the processor is stored,
The at least one command,
Is executed to receive information about a transaction from the blockchain server,
It is executed to perform rule checking using the information and database for the transaction,
Is executed to transmit the rule inspection result to the blockchain server,
A rule management device, which is executed to update the database by receiving data as a result of performing a task according to the rule inspection result from the blockchain server.
청구항 11에 있어서,
상기 적어도 하나의 명령은,
블록체인의 상태 정보 및 룰의 유형 정보를 수신하도록 실행되는, 룰 관리 장치.
The method according to claim 11,
The at least one command,
A rule management device that is executed to receive state information of a blockchain and type information of a rule.
청구항 12에 있어서,
상기 적어도 하나의 명령은,
상기 데이터베이스로부터 상기 룰의 유형 정보에 대응하는 룰을 검색하도록 실행되고,
상기 블록체인의 상태 정보 및 상기 검색한 룰을 기초로 상기 블록체인의 작업 정보를 생성하도록 실행되는, 룰 관리 장치.
The method according to claim 12,
The at least one command,
Is executed to retrieve a rule corresponding to the rule type information from the database,
A rule management device that is executed to generate job information of the blockchain based on the status information of the blockchain and the retrieved rule.
청구항 13에 있어서,
상기 룰 검사 결과는,
상기 블록체인의 작업 정보를 포함하는, 룰 관리 장치.
The method according to claim 13,
The rule inspection results,
Rule management device including the operation information of the blockchain.
청구항 13에 있어서,
상기 룰 검사 결과는,
상기 데이터베이스에 상기 룰의 유형 정보에 대응하는 룰이 존재하지 않는 경우, 대응하는 룰이 존재하지 않음을 나타내는 메시지를 포함하는, 룰 관리 장치.
The method according to claim 13,
The rule inspection results,
And a rule indicating that a corresponding rule does not exist when there is no rule corresponding to the rule type information in the database.
청구항 11에 있어서,
상기 적어도 하나의 명령은,
룰의 유형 정보 및 룰의 변경 정보를 수신하도록 실행되는, 룰 관리 장치.
The method according to claim 11,
The at least one command,
A rule management device, which is executed to receive rule type information and rule change information.
청구항 16에 있어서,
상기 적어도 하나의 명령은,
상기 데이터베이스로부터 상기 룰의 유형 정보에 대응하는 룰을 검색하도록 실행되고,
상기 룰의 변경 정보를 기초로 상기 검색한 룰을 변경하도록 실행되는, 룰 관리 장치.
The method according to claim 16,
The at least one command,
Is executed to retrieve a rule corresponding to the rule type information from the database,
The rule management device is executed to change the searched rule based on the change information of the rule.
청구항 17에 있어서,
상기 룰 검사 결과는,
상기 룰의 변경 정보에 따라 변경함을 나타내는 정보를 포함하는, 룰 관리 장치.
The method according to claim 17,
The rule inspection results,
A rule management device including information indicating a change according to the change information of the rule.
청구항 11에 있어서,
상기 트랜잭션은,
블록체인의 상태 정보 및 온톨로지(ontology) 데이터를 포함하는 스마트 컨트랙트(smart contract)에 대한 정보 및 룰 정보를 포함하는, 룰 관리 장치.
The method according to claim 11,
The transaction,
A rule management device including rule information and information on a smart contract including state information and ontology data of a blockchain.
청구항 19에 있어서,
상기 룰 정보는,
상기 스마트 컨트랙트의 동작 조건을 SWRL(Semantic Web Rule Language)을 이용하여 나타낸 정보를 포함하는, 룰 관리 장치.
The method according to claim 19,
The rule information,
A rule management device including information indicating an operating condition of the smart contract using a semantic web rule language (SWRL).
KR1020180139034A 2018-11-13 2018-11-13 Method and apparatus for managing rule of smartcontract KR102134711B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180139034A KR102134711B1 (en) 2018-11-13 2018-11-13 Method and apparatus for managing rule of smartcontract

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180139034A KR102134711B1 (en) 2018-11-13 2018-11-13 Method and apparatus for managing rule of smartcontract

Publications (2)

Publication Number Publication Date
KR20200055412A KR20200055412A (en) 2020-05-21
KR102134711B1 true KR102134711B1 (en) 2020-07-16

Family

ID=70910556

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180139034A KR102134711B1 (en) 2018-11-13 2018-11-13 Method and apparatus for managing rule of smartcontract

Country Status (1)

Country Link
KR (1) KR102134711B1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101364768B1 (en) 2013-02-26 2014-02-18 주식회사 한국프라임테크놀로지 Financial account transaction pattern analysis system and a method thereof
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.
US20170358041A1 (en) 2012-07-31 2017-12-14 Causam Energy, Inc. Systems and methods for advanced energy settlements, network-based messaging, and applications supporting the same on a blockchain platform
WO2018163044A1 (en) 2017-03-05 2018-09-13 Tatchell Shona System and method for provision of supply chain financing of ethically verified product where there has been verification of production processes and products inspection using blockchain smart contracts

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101950912B1 (en) * 2016-08-01 2019-02-21 서강대학교산학협력단 Verification system and method for transaction based block chain
KR20180041055A (en) * 2017-09-06 2018-04-23 주식회사 코인플러그 Method for providing certificate service based on smart contract and server using the same

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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.
US20170358041A1 (en) 2012-07-31 2017-12-14 Causam Energy, Inc. Systems and methods for advanced energy settlements, network-based messaging, and applications supporting the same on a blockchain platform
KR101364768B1 (en) 2013-02-26 2014-02-18 주식회사 한국프라임테크놀로지 Financial account transaction pattern analysis system and a method thereof
WO2018163044A1 (en) 2017-03-05 2018-09-13 Tatchell Shona System and method for provision of supply chain financing of ethically verified product where there has been verification of production processes and products inspection using blockchain smart contracts

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Sung hyun Na et al., "Conditional Formalization of Smart Contract Using Semantic Web Rule Language", Journal of Engineering and Applied Sciences 13 (Special Issue 11): 8716-8721, 2018.5*

Also Published As

Publication number Publication date
KR20200055412A (en) 2020-05-21

Similar Documents

Publication Publication Date Title
US20200005117A1 (en) Artificial intelligence assisted content authoring for automated agents
US9098583B2 (en) Semantic analysis driven service creation within a multi-level business process
US20210065245A1 (en) Using machine learning to discern relationships between individuals from digital transactional data
US11694156B2 (en) Automated systems for reducing computational loads in the mass execution of analytical models using scale-out computing
KR102478464B1 (en) System, apparatuses, and methods of processing and managing web traffic data
JP2018067302A (en) Software service execution device, system, and method
US11314829B2 (en) Action recommendation engine
CN112784595A (en) System and method for training and evaluating machine learning models with generalized vocabulary tokens
US9141708B2 (en) Methods for generating selection structures, for making selections according to selection structures and for creating selection descriptions
US9875278B2 (en) Modified data query function instantiations
US10735300B1 (en) Discovery and testing of program dependencies in computer networks
KR102134711B1 (en) Method and apparatus for managing rule of smartcontract
KR102532216B1 (en) Method for establishing ESG database with structured ESG data using ESG auxiliary tool and ESG service providing system performing the same
US10621163B2 (en) Tracking and reusing function results
CN116560661A (en) Code optimization method, device, equipment and storage medium
KR101791784B1 (en) Method and system for managing business card using hash tag
KR101334558B1 (en) System and method for providing context cognition web service
US11783206B1 (en) Method and system for making binary predictions for a subject using historical data obtained from multiple subjects
US11968185B2 (en) On-device experimentation
KR102569862B1 (en) Method and apparatus for managing link related to keyword advertisement
WO2015145992A1 (en) Non-functional-evaluation-parameter extraction device, non-functional-evaluation-parameter extraction method, and storage medium
CN114924721A (en) Code generation method and device, computer equipment and storage medium
WO2022203650A1 (en) Method and system for detection of abnormal transactional behavior
CN113177122A (en) Associated asset determination method and device and electronic equipment
CN117032789A (en) Business rule configuration and execution method, system, computer equipment and storage medium

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right