WO2020004686A1 - 블록체인 dPoC 합의알고리즘 기반 합의 인증 수행 방법 - Google Patents

블록체인 dPoC 합의알고리즘 기반 합의 인증 수행 방법 Download PDF

Info

Publication number
WO2020004686A1
WO2020004686A1 PCT/KR2018/007312 KR2018007312W WO2020004686A1 WO 2020004686 A1 WO2020004686 A1 WO 2020004686A1 KR 2018007312 W KR2018007312 W KR 2018007312W WO 2020004686 A1 WO2020004686 A1 WO 2020004686A1
Authority
WO
WIPO (PCT)
Prior art keywords
node
transaction
nodes
present
blockchain
Prior art date
Application number
PCT/KR2018/007312
Other languages
English (en)
French (fr)
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 조진한
Publication of WO2020004686A1 publication Critical patent/WO2020004686A1/ko

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/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
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/04Payment circuits
    • G06Q20/06Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme
    • 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/04Payment circuits
    • G06Q20/06Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme
    • G06Q20/065Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash
    • GPHYSICS
    • G06COMPUTING; 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/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/36Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes
    • 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/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/36Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes
    • G06Q20/367Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes involving electronic purses or money safes
    • 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
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/04Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange

Definitions

  • Such a relationship between the nodes is represented as a graph in FIG.
  • the member information-based trust matrix May be defined as in Equation 25 below.
  • the above described Stake & Contribution-based method and Reputation-based method may be implemented by merging.
  • two methods of selecting the Block constructor For example, when creating each block, obtain a random sample from the equal distribution between 0 and 1, and if this value is less than 0.9, select the constructor by applying the Stake & Contribution based method. Otherwise, select the Reputation based method. It can be done in such a way as to allow the application to be selected. At this time, node selection function in the Stake & Contribution for each Block is t The selection function in the reputation-based method is Can be set.
  • the present invention is based on the policy of "business incentives" for the fair distribution of wealth, which is the primary goal, can lead to the formation of a correct market through business enterprises participating in the ecosystem. Accordingly, the present invention can also expect a profit model for processing and selling various data accumulated in the long term.

Landscapes

  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Engineering & Computer Science (AREA)
  • Finance (AREA)
  • Theoretical Computer Science (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Security & Cryptography (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Technology Law (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

본 발명의 실시 예에 따른 블록체인에서의 인증 방법은 거래 금액 및 거래 시점에 기반하여 노드 간 contribution을 계산하는 동작 및 거래량 및 상호 평가에 기반하여 노드 간 contribution을 계산하는 동작 중 적어도 하나를 수행하는 것을 특징으로 한다.

Description

[규칙 제26조에 의한 보정 25.07.2018] 블록체인 dPoC 합의알고리즘 기반 합의 인증 수행 방법
본 발명은 블록체인 합의 알고리즘에 관한 것이다. 보다 구체적으로 본 발명은 각 노드에 공정한 주도권을 배분하고, 블록 생성시 발생되는 비용을 최소화하기 위한 블록체인 합의 알고리즘에 관한 것이다.
블록체인에 대한 사회적 관심이 고조되면서, 다양한 방식의 블록체인 활용 방안이 논의되고 있다. 이러한 블록체인 분산원장의 원리는 각기 그 앞의 기로과 불가분하게 연결되는 전자 기록의 체인을 형성하는 것이다. 각 새로운 항목 집합 또는 '블록'은 합의 과정을 거친 후에만 완료될 수 있다.
블록체인의 새 항목을 인증하고 네트워크의 변경을 관리하는 용도로 가장 널리 사용되는 두 가지 메커니즘 또는 프로토콜은 작업증명(Proof of Work, PoW)와 지분증명(Proof of Stake, PoS)이다.
PoW 알고리즘은 블록체인 기반 암호화폐에 데이터를 추가하도록 인증하기에 앞서 컴퓨터가 CPU의 역량을 확장해서 복잡한 암호화 기반 방정식을 풀도록 한다. 방정식을 가장 빨리 푸는 컴퓨터 노드에는 비트코인과 같은 디지털 코인이 보상으로 지급(채굴)된다. 그러나 이러한 PoW 프로세스는 채굴 과정에 막대한 전기 에너지를 소비한다는 점, 수학 퍼즐을 풀기 위한 과정이 긴 탓에 속도가 느려질 수 있어 비즈니스 분산 원장 또는 암호화폐 네트워크에서 새 항목을 승인하는데 오랜 시간이 소요될 수 있다는 점이 문제시 되고 있다.
PoS 알고리즘은 그 이름이 시사하는 바와 같이 가장 많은 디지털 화폐 또는 코인을 가진 사람이 새 블록 데이터를 인증할 수 있게 해주는 방식이다. PoS는 채굴에 들어가는 비용을 최소화할 수 있으며, 수 초 만에 새로운 블록을 생성할 수 있는 것을 특징으로 한다. 그러나 PoS 알고리즘에 따르면 지분이 클 수록 블록 생성에 참여할 확률이 높아지므로, 강력한 자본을 가진 세력에 의해 권력을 독점당할 수 있다는 점이 문제시되고 있다.
이처럼 현재 주요하게 사용되는 블록체인 증명 방식은 각각 상기한 바와 같은 한계를 지니고 있으며, 이에 따라 참여자 모두에게 공정한 주도권을 배분함과 동시에 사회적 코스트를 최소화하기 위한 새로운 블록체인 증명방식이 요구되고 있다.
본 발명은 상기 제시한 문제를 보완하기 위해 안출된 것으로, 참여자 모두에게 금융의 주도권을 분배하고, 사회적 코스트를 최소화를 실현할 수 있는 새로운 증명방식을 적용한 블록체인 기술 및 이를 이용한 암호화폐를 구현하는데 목적이 있다.
본 발명은 사용자의 가치를 우선 접근하고 채굴의 가용성을 넘어설 수 있는 네트워크 참여자들의 현실적인 보상에 대한 설계 및 보안에 대한 문제를 해결하는 데 목적이 있다.
본 발명의 실시 예에 따른 블록체인에서의 인증 방법은 거래 금액 및 거래 시점에 기반하여 노드 간 contribution을 계산하는 동작 및 거래량 및 상호 평가에 기반하여 노드 간 contribution을 계산하는 동작 중 적어도 하나를 수행하는 것을 특징으로 한다.
본 발명은 노드 참여자 모두에게 공정한 혜택이 돌아가는 합리적인 블록체인 생태계를 제공할 수 있다.
본 발명의 실시 예에 따른 암호화폐 프로토콜의 합의 알고리즘인 dPoC방식은 트랜잭션의 순서를 결정한 후 비정상적 트랜잭션을 필터링 하는 구조이므로, 안정적이며 보안에 뛰어나며 효율적으로 동작 가능하다.
본 발명의 실시 예에 따른 암호화폐 프로토콜에서는 보상이라는 측면으로 주도권이 온전히 참여 당사자에게 돌아갈 수 있게 하고, 기존 금융시스템에 배제되었던 다양한 계층도 소비와 생산의 선순환 구조에 포함될 수 있도록 기여하는 효과가 있다.
도 1은 본 발명의 실시 예에 따른 contribution 공식의 기본 개념을 설명하기 위한 도면이다.
도 2 내지 도 3은 본 발명의 실시 예에 따른 거래 금액 기반의 contribution 산출 공식의 개념을 설명하기 위한 도면이다.
도 4 는 본 발명의 실시 예에 따른 거래량과 상호 평가에 기반한 contribution 산출 공식의 개념을 설명하기 위한 도면이다.
도 5 내지 도 7은 본 발명의 실시 예에 따른 거래 이외의 요소에 기반하여 contribution을 산출하는 것에 대하여 설명하기 위한 도면이다.
도 8은 본 발명의 실시 예에 따른 블록 생성 대상자 선정 동작을 설명하기 위한 도면이다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세하게 설명하고자 한다.
그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다.
어떤 구성요소가 다른 구성요소에 '연결되어' 있다거나 '접속되어'있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 '직접 연결되어'있다거나 '직접 접속되어'있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, '포함하다' 또는 '가지다' 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
본 발명의 실시 예는 블록체인 기반의 암호화폐 및 상기 암호화폐의 합의 체계에 관한 것이다. 이하에서, 본 발명의 실시 예에 따른 암호화폐 및 이의 기반이 되는 합의 체계에 관하여 보다 자세히 설명하기로 한다.
본 발명의 실시 예에 따른 블록체인 기반 암호화폐는 본 명세서에서 dPoC(Delegated Proof of Contribution)라고 정의한 합의 메카니즘(Consensus mechanism)을 기반으로 구현될 수 있다.
상기 dPoC에 대한 간략한 설명은 다음과 같다.
블록체인 기술에서는 노드(Node)라는 개념이 사용되는데, 이 때 상기 노드는 트리(tree)구조에서 데이터의 상하위 계층을 나타내는 위치의 항목을 뜻하고 각 암호화폐의 전송을 중계해주는 분산된 작은 서버를 의미하기도 한다. 종래의 PoW방식의 채굴에서는 이러한 노드의 역할을 채굴자가 맡게 되며, PoS방식의 채굴에서는 Staking을 하는 모든 사용자들이 이러한 노드의 역할을 하게 됩니다.
본 발명의 실시 예에 따른 상기 dPoC방식에서는 마스터 노드를 이용하는 방식인데, 상기 마스터노드는 각 노드의 연결의 중심에 위치하며, 노드처럼 단순히 거래를 중계하는 것 이상의 기능을 수행하는 노드이다.
참고로, 마스터노드를 활용한 종래의 합의 알고리즘에는 dPoS(Delegated Proof-of-Stake)가 있는데, 상기 dPoS 합의 알고리즘의 구조는 마스터노드에 일정량의 코인을 묻어두는(Stake) 방식에 따라 보상을 받는 방식이었다. 코인이 묶이게 된다면 그 대가로 일정한 보상주기마다 일정한 양의 코인을 보상받게 되는 것이며, 마스터노드와 연계되어 있는 코인을 옮기거나 사용하면 마스터노드는 멈추게 된다. 이런 방식을 통해서 상기 dPoS방식의 합의는 여러 사용자들이 마스터노드를 운영하도록 장려하고, 오래 가지고 있도록 자연스럽게 유도하는 특징이 있다.
상기 마스터노드는 네트워크를 위한 특정 기능을 수행할 시 어느 정도 운영비용과 노력이 수반되기 때문에 일정한 보상을 받게 되는데, 본 발명의 dPoC의 방식은 이러한 마스터노드가 보상을 받는 기준에 대하여 (현재 여러 나라에서 금지한 Security Token이 아닌)마스터노드의 기여도, 평판도 등을 수학적으로 설정하는 특징이 있으며 또한 부의 집중화를 막기 위하여 보상한계를 설정하는 것을 특징으로 한다. 이에 따라 상기 dPoC는 공정하게 부를 분배하기 위한 목적을 달성할 수 있다.
또한 상기 dPoC는 다양한 비지니스 모델이 블록체인 생태계로 쉽게 합류하도록 하기 위하여 고안된 합의 메카니즘이다. 참고로, 통상의 암호화폐는 블록 생성 등의 동작에 요구되는 합의 체계(예,PoW;작업증명, PoS:지분증명 등)를 선택하고 있으며, 합의 체계 방식에 따라 거래 시간, 노드 참여자의 권한 등에서 차이가 드러나게 된다. 종래의 합의 체계 방식은 암호화폐를 이용해 다양한 서비스를 제공하기에 어려운 한계점(예, PoW에서의 처리시간 지연 문제, PoS에서의 공정성 문제 등)이 있었고, 이를 극복하기 위한 방안으로서 본 발명의 실시 예에 따른 합의 인증 방식이 제안되었다.
본 발명의 실시 예에 따른 dPoC방식은 dPoS 방식 및 PoI방식에서 벗어나, 좀 더 현실의 비지니스 모델을 기초로 사용 가능한 수준의 높은 성능을 보장할 수 있다.
본 발명의 실시 예에 따른 암호화폐는 여러 개의 노드로 구성되어 분산되어 있으며, 이 때 노드 전체는 블록체인에 새로 추가할 사항을 확인하고, 데이터베이스에 새 데이터를 입력할 수 있다. 이렇게 블록체인에 추가할 사항은 노드 대부분의 합의가 필요하며, 암호화폐의 합의 메커니즘을 통하여 네트워크의 보안을 보장하며, 해시가 되지 않은 트랜젝션인 프로그램 데이터는 분산원장과 별도로 보관 가능하다.
본 발명의 실시 예에 따른 암호화폐는 사용자 인증을 수행하기 위하여 다음의 두 가지 인증 절차를 수행할 수 있다. 제 1 인증 절차는 Enrollment Certification(등록 증명)이다. 상기 Enrollment Certification는 사용자의 신원을 확인하기 위한 증명 방식이며, Enrollment Certification 에 따른 인증서는 장기적으로 사용될 수 있다. 제 2 인증 절차는 Transaction Certification(거래 증명)이다. 두 번째 증명 방식인 Transaction Certification은 트랜잭션 마다 발행되는 단기적으로 사용되는 인증서를 이용하는 방식이다. 이를 통하여 Transaction Certification은 각각의 트랜잭션에 대한 익명성을 보장할 수 있다.
본 발명의 실시 예에 따른 암호화폐 프로토콜의 합의 알고리즘인 dPoC방식은 첫번째로 트랜잭션의 순서를 결정한 후 비정상적 트랜잭션을 필터링 하는 구조로, 안정적이며 보안에 뛰어나며 효율적으로 동작 가능하며, 블록 생산자들에 대한 검열은 없으며 모든 블록들은 오픈 소스로 만들어진 결정 상태로 머신의 로직으로 검증된다.
본 발명의 실시 예에 따른 암호화폐는 현실 세계에서 발생 가능한 여러 상황에서도 안정적으로 동작가능하다. 소수포크, 연결된 소수 그룹에서 이중 블록 생성, 비가역 블록, 네트워크 단절 및 다수의 생산자가 문제 등 다양한 현실세계에서 생길 수 있는 다양한 문제점에 대한 충분한 고려를 통한 안정적인 서비스 제공이 가능하며, 또한 계속적으로 필요한 부분에 대하여 보완될 수 있다.
현실의 비즈니스는 상품에 대한 수요를 늘려 판매를 증진시키는 판매촉진 목적으로 “판매장려금”이라는 정책이 존재하며, 암호화폐 프로토콜에서는 보상이라는 측면으로 주도권이 온전히 참여 당사자에게 돌아가고, 기존 금융시스템에 배제되었던 다양한 계층도 소비와 생산의 선순환 구조에 포함 가능하며, 개발도상국과 최빈국에서도 부의 계층적 차별을 뛰어 넘어 개개인들까지 확대가 기대 가능하다.
이하에서는 본 발명의 실시 예에 따른 암호화폐 및 이의 기반이 되는 합의 인증 방식에 대한 공식에 대하여 설명하기로 한다.
N개의 account(node)가 있을 때, Contribution vector 를 정의
Figure PCTKR2018007312-appb-I000001
한다. 각 노드의 Contribution 값은 해당 노드와 관계를 맺는 다른 노드들의 Contribution 의 linear combination(선형결합)을 통해 정의한다. 즉 이를 식으로 표현하면 다음의 수학식 1과 같다.
Figure PCTKR2018007312-appb-M000001
(여기서,
Figure PCTKR2018007312-appb-I000002
이다.)
상기 수학식 1은 미지수인
Figure PCTKR2018007312-appb-I000003
를 알기 위해 미지수인 자기 자신을 이용해서 정의하는 순환적인 정의를 갖고 있다. 따라서 해당 등식을 만족하는
Figure PCTKR2018007312-appb-I000004
는 무수히 많을 수도 있고, 존재하지 않을 수 있다. 위 등식을 행렬 관점에서 바라보면 다음과 같이 표현할 수 있다.
Figure PCTKR2018007312-appb-M000002
그리고 이는 다음과 같은 eigen value(고유값)- eigen vector(고유벡터) problem의 특수한 경우와 같다고 할 수 있다.
Figure PCTKR2018007312-appb-M000003
(여기서,
Figure PCTKR2018007312-appb-I000005
이다.)
따라서
Figure PCTKR2018007312-appb-I000006
를 만족하는 vector
Figure PCTKR2018007312-appb-I000007
의 존재성은 행렬
Figure PCTKR2018007312-appb-I000008
의 고유값(eigen value) 중 1이 있는지 여부에 의해 결정될 수 있다. 그리고 실제
Figure PCTKR2018007312-appb-I000009
의 형태는 고유값(eigen value) 1에 대응되는 고유 벡터라 할 수 있다.
행렬
Figure PCTKR2018007312-appb-I000010
의 고유값 중 1이 포함되는 것이 항상 보장되지 않기 때문에 Contribution간의 관계를 정의하는
Figure PCTKR2018007312-appb-I000011
를 정의할 때 이를 주의해서 정의해야 한다. 다행히도 종래 공지된 기술(Norris 1998)에 의하면 Stochastic Matrix는 최대 고유값(maximum eigen value)이 항상 1이기 때문에 H를 Stochastic matrix의 조건만 만족시키도록 한다. Stochastic matrix의 조건은 다음과 같다.
Figure PCTKR2018007312-appb-M000004
Figure PCTKR2018007312-appb-M000005
Figure PCTKR2018007312-appb-M000006
앞에서 언급한 것과 같이
Figure PCTKR2018007312-appb-I000012
를 Stochastic matrix로 설정하는 것은
Figure PCTKR2018007312-appb-I000013
의 존재성을 보장하기 위한 설정일 뿐만 아니라 Contribution의 의미를 고려하였을 때 합리적인 가정이다.
Figure PCTKR2018007312-appb-I000014
Figure PCTKR2018007312-appb-I000015
에게 영향을 주는 비율을
Figure PCTKR2018007312-appb-I000016
로 표현할 수 있고,
Figure PCTKR2018007312-appb-I000017
를 고정했을 때 모든
Figure PCTKR2018007312-appb-I000018
가 모든
Figure PCTKR2018007312-appb-I000019
들에게 주는 영향력의 합은 다음의 수학식 7에서 도시되는 바와 같이
Figure PCTKR2018007312-appb-I000020
와 같게 된다.
Figure PCTKR2018007312-appb-M000007
즉, 각 노드는 자신의 Contribution 수치만큼 투표권을 갖게 되고 자신이 신뢰하는 정도에 따라 다른 노드들에게 투표하는 구조를 갖게 된다. 이는 Contribution의 정의와 합치하기 때문에 합리적인 가정이라 볼 수 있다.
위의 가정에 의해 Contribution을 구하는 문제는 Contribution간에 관계를 나타내는
Figure PCTKR2018007312-appb-I000021
크기의 Stochastic matrix
Figure PCTKR2018007312-appb-I000022
를 정의하는 문제로 환원될 수 있다.
노드의 Contribution에 영향을 주는 요소는 여러가지가 있을 수 있기 때문에 여러 요소가 한꺼번에 반영된
Figure PCTKR2018007312-appb-I000023
를 직접 정의하기보다는 각 요소별로 Contribution의 linear combination coefficient를 정의하고 이를 합하여 전체
Figure PCTKR2018007312-appb-I000024
를 계산하도록 한다. 단
Figure PCTKR2018007312-appb-I000025
는 Stochastic matrix이어야 하기 때문에 여러 요소의 영향력을 더할 때 다음과 같은 조치를 취한다.
각 요인에 대응되는 matrix를 Stochastic matrix로 설정하고 이들에 대해 전체 weight의 합이 1인 weighted sum을 해주게 된다면 Stochastic matrix의 구조가 유지된다. 이를 식으로 표현하면 다음과 같다.
Figure PCTKR2018007312-appb-M000008
(여기서,
Figure PCTKR2018007312-appb-I000026
,
Figure PCTKR2018007312-appb-I000027
이다.)
이 때 M, Q, B, E는 Contribution 계산에 영향을 주는 요인별 matrix라 할 수 있다. 그리고 이는 Stochastic matrix임이 보장 되어야한다. 이를 위해 임의의 Positive matrix
Figure PCTKR2018007312-appb-I000028
가 있을 때, 이를 Stochastic matrix
Figure PCTKR2018007312-appb-I000029
로 만드는 방법은 다음과 같은 변환을 통해 구할 수 있다.
Figure PCTKR2018007312-appb-M000009
(여기서,
Figure PCTKR2018007312-appb-I000030
이다.)
이 변환을 그림으로 나타내면 도 1과 같다.
상기 수식에서
Figure PCTKR2018007312-appb-I000031
의 구성요소인
Figure PCTKR2018007312-appb-I000032
는 다음과 같다.
첫번째 행렬인
Figure PCTKR2018007312-appb-I000033
은 거래금액과 관련된 변수로서 노드(node) 간에 거래금액과 유효한 거래금액이 많을수록 긍정적 영향을 끼치는 것을 나타내는 행렬이다.
두번째 행렬인
Figure PCTKR2018007312-appb-I000034
는 노드 간의 거래량과 노드 간의 신뢰 평가요소를 동시에 고려한 영향력을 나타내는 행렬이다. 그리고 세번째는 거래에 의해 직접적으로 잡히지 않는 노드 간의 관계를 고려하기 위해 만든 행렬이다. 마지막으로 행렬
Figure PCTKR2018007312-appb-I000035
는 알고리즘의 수렴성을 보장하기 위해 만든 Teleportation matrix이다.
이외에도 노드 간의 Contribution 관계에 영향을 줄 수 있는 요인이 발견되거나 데이터축적이 이루어지면 weight을 통해 요인을 추가할 수 있다.
다음은 거래금액에 기반한 수식에 대하여 설명하기로 한다. 먼저 거래금액 기반의 식에서 인용되는 변수 항목을 살펴보면, 다음과 같다.
먼저,
Figure PCTKR2018007312-appb-I000036
는 트랜잭션이 일어난 height를 의미할 수 있고,
Figure PCTKR2018007312-appb-I000037
는 현재 날짜를 의미할 수 있으며,
Figure PCTKR2018007312-appb-I000038
는 최근 거래목록으로서 반영할 일(date) 수를 의미할 수 있다. 그리고
Figure PCTKR2018007312-appb-I000039
는 노드 인덱스(node index)이고,
Figure PCTKR2018007312-appb-I000040
Figure PCTKR2018007312-appb-I000041
번째 트랜잭션 상에서
Figure PCTKR2018007312-appb-I000042
번째 노드로부터
Figure PCTKR2018007312-appb-I000043
번째 노드로 거래된 유효 금액을 의미하며,
Figure PCTKR2018007312-appb-I000044
Figure PCTKR2018007312-appb-I000045
번째 트랜잭션에서
Figure PCTKR2018007312-appb-I000046
번째 노드로부터
Figure PCTKR2018007312-appb-I000047
번째 노드로 수행된 거래의 성공 여부를 의미하는 변수이다. 그리고
Figure PCTKR2018007312-appb-I000048
는 트랜잭션을 인풋으로 하고 대응되는 날짜를 아웃풋으로 하는 함수를 의미할 수 있다.
거래금액 기반의 수식은 두 노드 간의 Contribution에 영향을 줄 수 있는 요인 중 노드 간의 거래 금액을 고려한다. 노드
Figure PCTKR2018007312-appb-I000049
Figure PCTKR2018007312-appb-I000050
간의 거래량이 많다는 것은 그들 간에 강력하고 긍정적인 인터렉션이 있었다는 신호이다. 또한 거래금액 기반의 수식에 따르면, 거래 발생 시간에 대하여 가중치를 부여할 수 있는데, 이는 최근 발생한 거래금액과 과거에 발생한 거래금액을 동등하게 취급할 수 없기 때문이다. 즉, 하기에 제시될 거래금액 기반의 수식은 기 설정된 시점 이전의 거래와 이후의 거래를 구분하고 가중치를 부여하거나, 거래 시점이 현재 시점에서 가까울수록 가중치를 부여하는 방식의 계산값을 적용할 수 있다.
종래에 총 거래금액과 시간에 대한 반영은 POI(중요도 증명)의 Importance의 Outlink matrix를 계산하는 부분에서 반영하였다. 하지만 PoI에서 적용되는 방식에서는 두가지 문제점이 존재했다. 하나는 거래금액을 고려할 때 노드
Figure PCTKR2018007312-appb-I000051
Figure PCTKR2018007312-appb-I000052
간의 net amount를 이용해 반영한다는 점인데, 이 때문에 실제로 두 노드 간에 많은 거래금액이 존재했더라도 상호 주고받은 거래금액이 동등하게 측정될 경우, 각각의 노드는 영향력이 없게 된다. 두번째로 PoI방법에서는 유효 거래금액에 대해서만 고려하고 취소된 거래 금액에 대해서는 고려하지 않았다. 이에 따라 상기 PoI에서는 호가 및 시세 부추기는 도구로서 많은 양의 거래금액을 계약하고 취소하는 악용사례가 존재한다는 문제가 있었다. 따라서, 이와 같은 악용 사례를 방지하기 위해 거래 취소에 따른 불이익 제도가 필요하다. 본 발명의 실시 예에 따른 거래금액 기반의 수식에서는 이 두가지 문제점을 해결할 수 있는 방법론을 제안한다.
본 발명의 실시 예는 먼저 취소된 거래 금액을 반영하여 노드의 최근
Figure PCTKR2018007312-appb-I000053
일간의 유효한 거래금액과 취소된 거래금액
Figure PCTKR2018007312-appb-I000054
,
Figure PCTKR2018007312-appb-I000055
를 다음과 같이 정의할 수 있다.
Figure PCTKR2018007312-appb-M000010
Figure PCTKR2018007312-appb-M000011
Figure PCTKR2018007312-appb-M000012
그리고 이를 바탕으로 최근
Figure PCTKR2018007312-appb-I000056
일간의 거래금액 성공 비율
Figure PCTKR2018007312-appb-I000057
를 다음과 같이 정의한다.
Figure PCTKR2018007312-appb-M000013
그리고 시간을 반영한
Figure PCTKR2018007312-appb-I000058
날짜의 노드
Figure PCTKR2018007312-appb-I000059
에서 노드
Figure PCTKR2018007312-appb-I000060
로의 거래금액량
Figure PCTKR2018007312-appb-I000061
를 다음과 같이 정의한다.
Figure PCTKR2018007312-appb-M000014
위 값은 노드
Figure PCTKR2018007312-appb-I000062
에서 노드
Figure PCTKR2018007312-appb-I000063
로의
Figure PCTKR2018007312-appb-I000064
날짜에 발생한 모든 transaction을 더하고 시간과 관련된 factor를 곱하여 주는 값이다. 이때 부여되는 날짜에 따른 가중치의 그래프는 도 2와 같다.
위에서 정의한 모든 것을 반영하여 노드
Figure PCTKR2018007312-appb-I000065
로부터 노드
Figure PCTKR2018007312-appb-I000066
로의 거래량에 따른 점수를 다음과 같이 정의한다.
이와 같은 노드간의 관계를 그래프로 표현하면 도 3과 같다.
이하에서는 본 발명의 실시 예에 따른 거래량과 상호 평가에 기반한 수식에 대하여 설명하기로 한다. 먼저, 거래량과 상호 평가에 기반한 수식에 사용되는 변수는 다음과 같다.
먼저,
Figure PCTKR2018007312-appb-I000067
는 트랜잭션이 일어난 height를 의미하고,
Figure PCTKR2018007312-appb-I000068
는 현재 날짜를 의미하며,
Figure PCTKR2018007312-appb-I000069
는 최근 거래목록으로서 반영할 일수를 의미할 수 있다. 그리고
Figure PCTKR2018007312-appb-I000070
는 노드 인덱스를 의미하고,
Figure PCTKR2018007312-appb-I000071
Figure PCTKR2018007312-appb-I000072
번째 트랜잭션에서
Figure PCTKR2018007312-appb-I000073
번째 노드로부터
Figure PCTKR2018007312-appb-I000074
번째 노드로의 거래가 실제 성공했는지 여부와 관련된 값이고,
Figure PCTKR2018007312-appb-I000075
는 트랜잭션을 인풋으로 하고 대응되는 날짜를 아웃풋으로 하는 함수를 의미할 수 있다. 그리고
Figure PCTKR2018007312-appb-I000076
Figure PCTKR2018007312-appb-I000077
노드와 거래 기록이 있었던 노드의 집합을 의미할 수 있다.
다음으로, 상기 방식에 대하여 설명하면, 상기 방식은 노드간의 거래량과 평가에 의한 신용정도에 기반하여 노드
Figure PCTKR2018007312-appb-I000078
가 노드
Figure PCTKR2018007312-appb-I000079
에게 Contribution에 대한 영향력을 계산하는 방식이다. 이 방식에 따르면 노드
Figure PCTKR2018007312-appb-I000080
가 노드
Figure PCTKR2018007312-appb-I000081
에 대한 Contribution의 영향력을 고려할 때, 성공 거래량의 비율이 클수록 긍정적인 영향을 끼치게 된다. 그러나 이 방식은 거래량 비율 뿐 아니라 노드간의 평가 정보를 factor로 사용하는데, 이 때 상기 평가 정보는 가중치로서 사용될 수 있다. 이는 Eigentrust++에서 사용한 것과 같은 방법을 이용한 것으로서, Eigentrust++에서는 similarity를 계산하여 반영하였지만, 본 발명의 실시 예에 따른 상기 모델에서는 노드간 평가 정보를 반영한다. 최근
Figure PCTKR2018007312-appb-I000082
일간의 노드
Figure PCTKR2018007312-appb-I000083
에서 노드
Figure PCTKR2018007312-appb-I000084
로의 성공 거래량
Figure PCTKR2018007312-appb-I000085
와 노드
Figure PCTKR2018007312-appb-I000086
에서 노드
Figure PCTKR2018007312-appb-I000087
로의 실패 거래량
Figure PCTKR2018007312-appb-I000088
은 다음의 수학식 17 및 18과 같이 정의될 수 있다.
Figure PCTKR2018007312-appb-M000015
Figure PCTKR2018007312-appb-M000016
위의 계산은 최근 거래 기록에 관한 것이기 때문에 거래 기록은 있지만 최근 기록에 잡히지 않은 노드 쌍들도 있을 수 있다. 이런 노드들과 거래기록이 전혀 없었던 노드들에 대해 동등한 취급을 하는 것은 부당하기 때문에 이를 고려하여 Transition matrix를 구성할 수 있다. 이를 위해 먼저
Figure PCTKR2018007312-appb-I000089
를 다음과 같이 정의할 수 있다.
Figure PCTKR2018007312-appb-M000017
최근 전송 성공률과 거래기록을 반영하여
Figure PCTKR2018007312-appb-I000090
를 다음과 같이 정의할 수 있다.
Figure PCTKR2018007312-appb-M000018
이를 기반으로 거래량과 상호평가 기반 상대 신뢰 행렬
Figure PCTKR2018007312-appb-I000091
를 다음과 같이 정의할 수 있다.
Figure PCTKR2018007312-appb-M000019
이를 그래프로 표현하면 도 4와 같다.
다음은 본 발명의 다양한 실시 예에 따른, 거래 이외의 관계에 의한 식에 대하여 설명하기로 한다.
상기 거래 이외의 관계에 관계된 식에서 사용되는 변수를 살펴보면,
Figure PCTKR2018007312-appb-I000092
는 다른 노드를 관리하는 노드 인덱스를,
Figure PCTKR2018007312-appb-I000093
는 다른 노드를 관리하지 않는 노드 인덱스를 각각 의미할 수 있다. 그리고
Figure PCTKR2018007312-appb-I000094
는 노드
Figure PCTKR2018007312-appb-I000095
가 거래 이외에 영향을 줄 수 있는 노드의 인덱스를,
Figure PCTKR2018007312-appb-I000096
는 관리하는 입장의 노드
Figure PCTKR2018007312-appb-I000097
의 노드
Figure PCTKR2018007312-appb-I000098
에 대한 평가 값을 의미할 수 있다.
이하, 본 발명의 다양한 실시 예에 따라, 관계에 기반하여 영향력을 계산하는 방법을 설명하기로 한다. 상기 관계에 기반하여 영향력을 계산하는 방식은 최근거래량과 거래금액에는 잡히지 않지만 그 이외의 존재하는 관계를 통해 노드 간 연결이 되어 있는 경우를 고려하는 방식이다.
POI과 같은 종래의 모델에서는 모든 노드가 질적으로 동등하였으나, 상기 모델(관계 기반 모델)에서는 기업 혹은 개인의 형태로 노드가 구분될 수 있다. 본 발명의 실시 예에 따른 상기 관계 기반 모델에서는 이를 반영하여 노드간의 거래 이외의 관계를 두 가지 형태로 정의할 수 있다.
구체적으로, 관계 기반 모델에 따르면 두 가지의 형태 노드 중 하나는 노드들을 관리하는 입장의 노드이고, 다른 하나는 그렇지 않은 노드일 수 있다. 노드 i가 단순 사용자 입장이라면 구독 혹은 회원가입과 같은 형태로 다른 노드와 연결되어 있을 수 있다. 이는 다른 노드들과 단순히 연결 여부로만 관계를 맺는다. 반대로 노드 i가 관리하는 입장의 노드라면 관리하는 대상의 노드들에 대해 평가를 할 수 있고, 상기 노드 i는 대상 노드들에 대한 다양한 형태의 평가 점수를 보유하고 있을 수 있다. 상기 관계 기반 모델에서는 다른 노드를 관리하지 않는 입장의 노드에 대하여 관계를 맺는 노드들에 대한 동등한 weight를 부여한다.
Figure PCTKR2018007312-appb-M000020
이는 모든
Figure PCTKR2018007312-appb-I000099
Figure PCTKR2018007312-appb-I000100
에 대해서만 정의된다.
이를 그림으로 나타내면 도 5와 같다.
그리고 관리하는 입장의 노드(
Figure PCTKR2018007312-appb-I000101
)에 대해서는 각 노드에 대한 평가값
Figure PCTKR2018007312-appb-I000102
의 normalized된 값에 기반하여 계산할 수 있다.
Figure PCTKR2018007312-appb-M000021
이는 모든
Figure PCTKR2018007312-appb-I000103
Figure PCTKR2018007312-appb-I000104
에 대해서만 정의되고 이를 그래프로 표현하면 도 6과 같다. 마지막으로 아무런 관계를 맺지 않는 노드들에 대해서는 dangling node가 되는 것을 방지하기 위해 모든 노드들에 대해 동등한 영향을 주도록 한다. 이를 식으로 표현하면 다음의 수학식 24와 같다.
Figure PCTKR2018007312-appb-M000022
이는 모든 i와
Figure PCTKR2018007312-appb-I000105
에 대해서만 정의될 수 있으며, 이를 반영한 그래프는 도7과 같다.
본 발명의 실시 예에 따른 상기 관계 기반 모델의 수식을 모두 반영하면, 회원 정보기반 신뢰 행렬
Figure PCTKR2018007312-appb-I000106
은 다음의 수학식 25와 같이 정의될 수 있다.
Figure PCTKR2018007312-appb-M000023
다음은 Contribution 의 계산 방법에 대하여 설명하기로 한다.
본 발명의 실시 예에 따른 Contribution 의 계산 방법에서는, Power Method를 적용하여 계산할 수 있다. 종래 기술(예,Norris 1998)에 따르면 Stochastic matrix의 최대 고유값(eigen value)은 1이다. 그리고 Contribution을 구하기 위해선 최대 고유값에 대응되는 고유 벡터(eigen vector)를 구해야 한다. 이를 위해 본 발명의 실시 예에 따른 방법에서는 H행렬에 대해 Power Method(Saad 2003)를 적용할 수 있다. 상기 Power method는 특정 조건의 행렬 square matrix A의 최대 고유 값
Figure PCTKR2018007312-appb-I000107
에 대응되는 고유벡터를 구하는 일반적인 방법론으로서, 이에 대한 알고리즘과 적용가능 조건에 대한 정리는 다음과 같다.
1) 초기값 설정 : 임의의 0이 아닌
Figure PCTKR2018007312-appb-I000108
를 설정한다.
2) 반복 적용 : k=1,...(iteration) 에 대해
Figure PCTKR2018007312-appb-M000024
( 상기
Figure PCTKR2018007312-appb-I000109
는 최대 모듈러스를 갖는 벡터(
Figure PCTKR2018007312-appb-I000110
)의 구성 요소이다.)
이 때 특정 조건 하에서 다음과 같이 수렴한다.
Figure PCTKR2018007312-appb-M000025
Figure PCTKR2018007312-appb-M000026
Transition matrix에 대해 Power method를 적용하기 위한 세가지 충분조건이 있다. 첫째는Transition matrix가 Stochastic matrix이라는 것과 둘째는 Irreducible하다는 것 마지막은 primitive하다는 것이다. Stochastic matrix는 앞에서 언급했던 것과 마찬가지로 column의 합이 1이라는 것이고 Irreduciblity와 Primitivity에 대한 정의는 다음과 같다.
먼저 Irreduciblity에 대하여 설명하면, 특정 노드는 임의의 다른 노드로 Markov 연쇄를 통해 이동할 수 있다는 성질이다. 식으로 표현하면 다음과 같다.
임의의 모든 노드
Figure PCTKR2018007312-appb-I000111
에 대해서
Figure PCTKR2018007312-appb-I000112
가 존재하여 다음을 만족시킨다.
Figure PCTKR2018007312-appb-M000027
다음으로 Primitive에 대하여 설명하면, Transition Matrix연쇄를 하다보면 임의의 노드에서 다른 모든 노드로 갈 수 있는 가능성이 존재하는 시점이 발생한다는 성질이다. 이를 표현하면 다음과 같다.
∃t such that all elements of At is non-zero
Transition matrix
Figure PCTKR2018007312-appb-I000113
의 네 번째 요소인
Figure PCTKR2018007312-appb-I000114
는 앞서 언급한 정의 세 개를 만족하도록 조정하는 역할을 한다.
본 발명의 실시 예에 따라, 상기 Power Method를 적용하여 실제로 Contribution vector
Figure PCTKR2018007312-appb-I000115
를 다음과 같이 구할 수 있다.
본 발명의 실시 예에 따라, 상기 Power Method를 적용하여 실제로 Contribution vector
Figure PCTKR2018007312-appb-I000116
를 다음과 같이 구할 수 있다.
● set initail value
Figure PCTKR2018007312-appb-M000028
(where
Figure PCTKR2018007312-appb-I000117
is a vector with all element 1)
● Calculate
Figure PCTKR2018007312-appb-I000118
from
Figure PCTKR2018007312-appb-I000119
Figure PCTKR2018007312-appb-M000029
● Convergence check
매우 작은 값
Figure PCTKR2018007312-appb-I000120
을 설정하여 다음 조건을 만족하면 iteration을 중단한다.
Figure PCTKR2018007312-appb-M000030
다음은 본 발명의 실시 예에 따른 Reputation 계산에 대하여 설명하기로 한다. 먼저, reputation 계산식에 사용되는 변수를 살펴보면,
Figure PCTKR2018007312-appb-I000121
는 i 노드의 recommending reputation을 의미하고,
Figure PCTKR2018007312-appb-I000122
는 i 노드의 recommended reputation을 의미할 수 있다. 그리고
Figure PCTKR2018007312-appb-I000123
는 i 노드의 total reputation을 의미하고,
Figure PCTKR2018007312-appb-I000124
는 j 노드의 i 노드에 대한 평가 값을 의미할 수 있다.
노드들에 대한 reputation을 고려할 때 두 가지 요소가 있다. 하나는 평가자로서의 reputation이고 다른 하나는 평가 받는 입장으로서의 reputation이다. 이 두가지를 반영하기 위해 크기 N인 벡터 두개
Figure PCTKR2018007312-appb-I000125
를 정의할 수 있다. 그리고 노드간의 평가 값을 column에 대해 합이 1이 되도록 한 행렬
Figure PCTKR2018007312-appb-I000126
를 다음과 같이 정의할 수 있다.
Figure PCTKR2018007312-appb-M000031
Figure PCTKR2018007312-appb-M000032
이를 바탕으로 다음과 같이 recommending reputation은 recommended reputation을 이용하여 정의하고, recommended reputation은 recommending reputation을 이용하여 정의한다.
Figure PCTKR2018007312-appb-M000033
Figure PCTKR2018007312-appb-M000034
상기 Reputation 값은 POI의 Importance와 Contribution과 같이 순환적으로 정의될 수 있으나, 본 발명의 실시 예에서는, 상기 PoI의 방식과는 다르게 평가를 받는 입장과 하는 입장을 동시에 고려하였다.
Figure PCTKR2018007312-appb-I000127
Figure PCTKR2018007312-appb-I000128
를 계산하는 방법은 Power Method와 같은 방법을 적용하며 이에 대한 수렴성은 공지된 기술(Fan, Li, Ma, Ren, Zhao & Su 2012 의 section 2 .3)에 의해 정당화될 수 있다.
해당 알고리즘을 통해 구한
Figure PCTKR2018007312-appb-I000129
Figure PCTKR2018007312-appb-I000130
를 이용하여
Figure PCTKR2018007312-appb-I000131
를 다음의 수학식 36에서와 같이 구하고 이는 각 노드의 reputation으로 정의될 수 있다.
Figure PCTKR2018007312-appb-M000035
[표 1]
Figure PCTKR2018007312-appb-I000132
다음은, 블록 생성 대상자를 선정하는 방법에 대하여 설명하기로 한다.
본 발명의 실시 예에 따른 블록 생성 대상자 선정 방식을 나타내는 수식은 다음의 변수를 포함할 수 있다. 먼저
Figure PCTKR2018007312-appb-I000133
는 기업 노드 인덱스 집합을 의미하는 변수이고,
Figure PCTKR2018007312-appb-I000134
Figure PCTKR2018007312-appb-I000135
노드의 Contribution을 의미하는 변수이다. 그리고
Figure PCTKR2018007312-appb-I000136
Figure PCTKR2018007312-appb-I000137
노드의 Stake을 의미하고,
Figure PCTKR2018007312-appb-I000138
Figure PCTKR2018007312-appb-I000139
노드가
Figure PCTKR2018007312-appb-I000140
번째 블록 생성단계에서 하루 동안 생성한 블록의 수를 의미한다. 그리고
Figure PCTKR2018007312-appb-I000141
는 블럭 생성에 따른 보상을 의미하고,
Figure PCTKR2018007312-appb-I000142
는 하루 생성되는 블록의 총량을 의미할 수 있다.
통상적으로, 블록 생성 주기마다 어떤 노드에게 권한을 부여할 것인지 결정하기 위해 주로 다음의 두 가지 요소를 고려할 수 있다. 두 가지 요소 중 하나는 노드의 계산된 Contribution값이고, 또 다른 하나는 노드가 가지고 있는 지분의 양이다. 하지만 위 두 가지 요소를 고려하게 되었을 때, 소수의 노드가 독점하고 보상에 의해 Stake가 집중화 되는 현상이 발생될 가능성이 있다. 이에 따라 본 발명의 실시 예에는 이와 같은 종래의 문제를 방지하기 위해 각 노드당 하루 생성하는 블록의 수가 30%를 넘지 못하도록 조정하는 방법이 추가될 수 있다.
구체적으로, 상기 언급한 요인들과 제한 조건을 반영하여, 본 발명의 실시 예는 각 기업 노드들에 대한 score를 다음과 같이 정의할 수 있다.
Figure PCTKR2018007312-appb-M000036
여기서
Figure PCTKR2018007312-appb-I000143
는 상수로서 정의된다.
이때 Contribution은 normalization되어 있는 값이기 때문에 특정 노드가 Contribution을 독점하고 있을 가능성이 낮다. 하지만 Stake는 단순한 보유량으로서 scale이 전혀 되어있지 않아서 많이 보유하고 있는 노드가 필요 이상으로 점수에 이득을 얻게 된다. 이를 방지하기 위해 Stake에 log를 취하여서 큰 차이에 대해 평탄화 시킨다. score vector를 바탕으로 각 i 노드의 Block 생성 확률
Figure PCTKR2018007312-appb-I000144
을 계산한다. 이때
Figure PCTKR2018007312-appb-I000145
가 가장 큰 노드의
Figure PCTKR2018007312-appb-I000146
가 가장 크도록 하며, 이의 값이 30%를 넘지 않도록 한다.
Figure PCTKR2018007312-appb-I000147
는 다음과 같은 알고리즘으로 생성한다. index h를 1부터
Figure PCTKR2018007312-appb-I000148
까지 변형시켜가면서 다음 과정을 반복한다.
Figure PCTKR2018007312-appb-I000149
초기화 및
Figure PCTKR2018007312-appb-I000150
세팅
Figure PCTKR2018007312-appb-M000037
Figure PCTKR2018007312-appb-I000151
설정
Figure PCTKR2018007312-appb-M000038
Figure PCTKR2018007312-appb-I000152
Figure PCTKR2018007312-appb-I000153
설정
(이 때,
Figure PCTKR2018007312-appb-I000154
에 대해
Figure PCTKR2018007312-appb-I000155
로 설정하고, 나머지에 대해서는
Figure PCTKR2018007312-appb-I000156
로 설정할 수 있다. )
위 수학식 40에서
Figure PCTKR2018007312-appb-I000157
factor는
Figure PCTKR2018007312-appb-I000158
값이 커짐에 따라서 0에 가까워지게 하는 값으로서 한 노드당
Figure PCTKR2018007312-appb-I000159
가 30%이상의 되는 것을 방지하기위한 factor이다. 완화시키는 정도를 조정하기 위해 Parameter인
Figure PCTKR2018007312-appb-I000160
를 변경조정할 수 있으며
Figure PCTKR2018007312-appb-I000161
에 따른 그래프는 도 8과 같다. 이 때 iteration 수
Figure PCTKR2018007312-appb-I000162
를 이용하여
Figure PCTKR2018007312-appb-I000163
는 다음과 같이 설정하여 30%를 넘지 못하게 한다.
Figure PCTKR2018007312-appb-M000039
그리고 k값은 simulation을 통해 합리적인 값으로 설정한다. 그리고
Figure PCTKR2018007312-appb-I000164
를 다음의 수학식 42와 같이 정의할 수 있다.
Figure PCTKR2018007312-appb-M000040
이 때 상기
Figure PCTKR2018007312-appb-I000165
를 노드
Figure PCTKR2018007312-appb-I000166
가 선정될 확률로 설정하여 블록 생성의 권한을 부여한다.
본 발명의 다양한 실시 예에 따라 초기 참여자도 블록생성에 가담할 수 있도록하기 위해 Stake와 Contribution 이외에 Reputation만으로 block 생성할 기회를 부여하는 알고리즘을 구현할 수 있다. 본 발명의 실시 예는 계산된 reputation vector
Figure PCTKR2018007312-appb-I000167
에 대해 합이 1이 되도록 표준화를 하고 이를 확률
Figure PCTKR2018007312-appb-I000168
로 부여하여 block 생성자를 선택할 수 있다.
또한, 본 발명의 다양한 실시 예는 하루에 생성되는 블록의 양을 제한할 수 있다. 이는 하나의 노드가 Block생성을 독점하는 것을 방지하기 위해 하루에 생성할 수 있는 양을 제한할 필요가 있기 때문이다. 본 발명에서 제한양은 모든 노드에 동등하게 적용하지 않고, Reputation 점수가 낮은 노드들에 더 큰 제한을 가하도록 하는 동작을 수행할 수 있다.
상기 블록 생성 양 제한 방법에 대하여 설명하면 다음과 같다. 먼저 노드별 제한의 양의 정도를
Figure PCTKR2018007312-appb-I000169
로 표현하기로 한다. 본 발명의 실시 예에 따른 블록 생성 제한 동작은 logit function factor를 고려할 수 있다. Block생성 순서
Figure PCTKR2018007312-appb-I000170
시점에 대해 이를 구체적으로 식으로 표현하면 다음과 같다.
Figure PCTKR2018007312-appb-M000041
Figure PCTKR2018007312-appb-M000042
Figure PCTKR2018007312-appb-M000043
Figure PCTKR2018007312-appb-M000044
이 때 상기
Figure PCTKR2018007312-appb-I000171
Figure PCTKR2018007312-appb-I000172
의 합이 1이 되도록 표준화하여
Figure PCTKR2018007312-appb-I000173
,
Figure PCTKR2018007312-appb-I000174
를 계산할 수 있다. 그리고 여기서 rank 함수는input vector의 input index의 rank를 계산하는 함수이다. 그리고 시뮬레이션 바탕으로 k를 설정하여 벌점 factor의 완화도를 결정할 수 있다.
나아가, 본 발명의 다양한 실시 예에 따르면, 앞서 설명된 Stake & Contribution 기반방법과 Reputation 기반방법을 병합하여 실시할 수 있다. 앞의 과정에서 Block 생성자를 선정하는 두 가지 방법을 제시하였다. 예컨대, 매 Block을 생성할 때, 0과1 사이의 균등분포에서 random sample을 얻은 뒤 이 값이 0.9보다 작으면 Stake & Contribution 기반방법을 적용하여 생성자를 선택하도록 하고, 아닐 경우에는 Reputation 기반방법을 적용하여 생성자를 선정하도록 하는 방식과 같이 수행될 수 있다. 이 때 각Block t에 대해 Stake & Contribution에서의 노드 선택함수는
Figure PCTKR2018007312-appb-I000175
이며, Reputation기반 방법에서의 선택함수는
Figure PCTKR2018007312-appb-I000176
으로 설정될 수 있다.
Figure PCTKR2018007312-appb-I000177
Figure PCTKR2018007312-appb-I000178
Select node base on
Figure PCTKR2018007312-appb-I000179
Select node based on
Figure PCTKR2018007312-appb-I000180
Update
Figure PCTKR2018007312-appb-I000181
and
Figure PCTKR2018007312-appb-I000182
앞서 설명한 바에 따르면, 본 발명의 실시 예에 따른 합의 인증 방식은 분산과 공유를 통해 생기는 이득이 처리 속도나 집중보다 크며, 비용 효율과 같은 기업의 목적보다는 사용자의 가치를 우선 접근하고 채굴의 가용성을 넘어설 수 있는 네트워크 참여자들의 현실적인 보상에 대한 설계 및 보안에 대한 문제가 고려되고 블록체인 단일 기술에 한정되기 보다는 분산형 서비스 모델에 초점을 맞춘 프로토콜이다.
본 발명의 최대 목표는 탈중앙화 기반의 서비스 기업과, 기관 혹은 단체를 탄생하게 하며 지원하는 것이다. 이와 같은 거대한 분권화 시스템을 만들기 위해서는 이같은 기능이 동작하기 위한 플랫폼이 필요하며, 본 발명은 이러한 거대한 트렌젝션을 처리하기 위하여 엔터프라이즈급으로 고려된 아키텍처로 구성되어 있다.
본 발명은 1차적 목표인 공정한 부의 분배를 위하여, “영업장려금”이라는 정책을 기반으로 비지니스별 세부 정책은 에코시스템 참여한 비즈니스 사업체를 통한 올바른 시장형성을 할 수 있도록 유도할 수 있다. 이에 따라 본 발명은 향후 장기적으로 축척된 다양한 데이터를 가공하여 판매하는 수익 모델 또한 기대 할 수 있다.
상술한 예를 참조하여 본 발명을 상세하게 설명하였지만, 당업자라면 본 발명의 범위를 벗어나지 않으면서도 본 예들에 대한 개조, 변경 및 변형을 가할 수 있다. 요컨대 본 발명이 의도하는 효과를 달성하기 위해 도면에 도시된 모든 기능 블록을 별도로 포함하거나 도면에 도시된 모든 순서를 도시된 순서 그대로 따라야만 하는 것은 아니며, 그렇지 않더라도 얼마든지 청구항에 기재된 본 발명의 기술적 범위에 속할 수 있음에 주의한다.

Claims (1)

  1. 블록체인에서의 인증 방법에 있어서,
    거래 금액 및 거래 시점에 기반하여 노드 간 contribution을 계산하는 동작; 및
    거래량 및 상호 평가에 기반하여 노드 간 contribution을 계산하는 동작;
    중 적어도 하나를 수행하는 것을 특징으로 하는, 블록체인 dPoC 합의알고리즘 기반 합의 인증 수행 방법.
PCT/KR2018/007312 2018-06-25 2018-06-27 블록체인 dPoC 합의알고리즘 기반 합의 인증 수행 방법 WO2020004686A1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020180073036A KR102108909B1 (ko) 2018-06-25 2018-06-25 블록체인 dPoC 합의알고리즘 기반 합의 인증 수행 방법
KR10-2018-0073036 2018-06-25

Publications (1)

Publication Number Publication Date
WO2020004686A1 true WO2020004686A1 (ko) 2020-01-02

Family

ID=68987316

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2018/007312 WO2020004686A1 (ko) 2018-06-25 2018-06-27 블록체인 dPoC 합의알고리즘 기반 합의 인증 수행 방법

Country Status (2)

Country Link
KR (1) KR102108909B1 (ko)
WO (1) WO2020004686A1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111383111A (zh) * 2020-03-03 2020-07-07 李斌 一种基于计算资源算力证明的共识算法
CN115065688A (zh) * 2022-06-06 2022-09-16 咪咕文化科技有限公司 一种数据传输方法、装置、设备及计算机可读存储介质

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102550151B1 (ko) * 2022-10-18 2023-07-03 주식회사 준다 핀테크 플랫폼 서비스 이용자의 성향 및 이용 방식을 고려하여 사용자 성향에 맞는 거래량 및 변동폭 정보를 제공하기 위한 장치 및 방법
CN115841354B (zh) * 2022-12-27 2023-09-12 华北电力大学 一种基于区块链的电动汽车充电桩维修评价方法与系统

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101701131B1 (ko) * 2016-04-28 2017-02-13 주식회사 라피 이종간 블록체인 연결을 이용한 데이터 기록/검증 방법 및 시스템
JP2017091149A (ja) * 2015-11-09 2017-05-25 日本電信電話株式会社 ブロックチェーン生成装置、ブロックチェーン生成方法、ブロックチェーン検証装置、ブロックチェーン検証方法およびプログラム
KR20180014534A (ko) * 2016-08-01 2018-02-09 서강대학교산학협력단 블록체인 기반 트랜잭션 검증 시스템 및 그 방법
KR101849912B1 (ko) * 2017-05-25 2018-04-19 주식회사 코인플러그 스마트 컨트랙트 기반의 인증서 서비스를 제공하는 방법 및 이를 이용한 서버
KR20180052838A (ko) * 2016-11-10 2018-05-21 주식회사 비즈모델라인 수취인 증명 기반의 불변의 이중 기록을 이용한 안심송금 방법
KR20180066329A (ko) * 2016-12-07 2018-06-19 데이터얼라이언스 주식회사 분산된 네트워크 노드의 서비스 기여도 산출 시스템 및 방법

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6313532B1 (ja) * 2016-11-17 2018-04-18 テルモピレー株式会社 デジタルコンテンツ商取引管理装置、デジタルコンテンツ商取引管理方法およびプログラム

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017091149A (ja) * 2015-11-09 2017-05-25 日本電信電話株式会社 ブロックチェーン生成装置、ブロックチェーン生成方法、ブロックチェーン検証装置、ブロックチェーン検証方法およびプログラム
KR101701131B1 (ko) * 2016-04-28 2017-02-13 주식회사 라피 이종간 블록체인 연결을 이용한 데이터 기록/검증 방법 및 시스템
KR20180014534A (ko) * 2016-08-01 2018-02-09 서강대학교산학협력단 블록체인 기반 트랜잭션 검증 시스템 및 그 방법
KR20180052838A (ko) * 2016-11-10 2018-05-21 주식회사 비즈모델라인 수취인 증명 기반의 불변의 이중 기록을 이용한 안심송금 방법
KR20180066329A (ko) * 2016-12-07 2018-06-19 데이터얼라이언스 주식회사 분산된 네트워크 노드의 서비스 기여도 산출 시스템 및 방법
KR101849912B1 (ko) * 2017-05-25 2018-04-19 주식회사 코인플러그 스마트 컨트랙트 기반의 인증서 서비스를 제공하는 방법 및 이를 이용한 서버

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111383111A (zh) * 2020-03-03 2020-07-07 李斌 一种基于计算资源算力证明的共识算法
CN115065688A (zh) * 2022-06-06 2022-09-16 咪咕文化科技有限公司 一种数据传输方法、装置、设备及计算机可读存储介质

Also Published As

Publication number Publication date
KR102108909B1 (ko) 2020-05-12
KR20200000770A (ko) 2020-01-03

Similar Documents

Publication Publication Date Title
WO2020004686A1 (ko) 블록체인 dPoC 합의알고리즘 기반 합의 인증 수행 방법
Ren et al. Sequential recommendation with self-attentive multi-adversarial network
WO2020153552A1 (ko) 기록된 거래의 수정이 가능한 블록체인을 위한 방법 및 장치
WO2021008017A1 (zh) 联邦学习方法、系统、终端设备及存储介质
Suykens et al. Recurrent least squares support vector machines
WO2020158988A1 (ko) 블록체인으로 관리되는 데이터의 거래 방법 및 그 플랫폼
CN108346100A (zh) 资产管理方法及装置、电子设备
WO2020022531A1 (ko) Pop 기반 블록체인에서의 동적 시간 지연 기반의 체인 연결 방법 및 시스템
Ashlagi et al. Mediators in position auctions
WO2018093229A1 (en) Method and device applying artificial intelligence to send money by using voice input
EP3533015A1 (en) Method and device applying artificial intelligence to send money by using voice input
WO2020184838A1 (ko) 블록체인 기반 프로젝트 수행 과정에서 획득되는 저작물의 저작권 관리 방법 및 시스템
WO2017116215A1 (ko) 평가지표 자율제안에 의한 연구개발과제 선정 시스템 및 방법
WO2023128083A1 (ko) 그레디언트 독립적인 업데이트를 추가하여 그레디언트-기반 학습의 한계점을 보완하는 신경망의 양자화 인식 학습 방법
Ryu et al. Multilateral teleoperation over communication time delay using the time-domain passivity approach
WO2018151356A1 (ko) 다중 스케일 곡률 기반 가시적 벡터 모델 해싱 방법
WO2021251672A1 (ko) 상품거래관리컴퓨터, 상품거래시스템 및 상품거래방법
CN109690516A (zh) 一种向用户提供产品和/或服务而不损害其隐私的基于软件的开关
WO2019142990A1 (ko) 고객 데이터베이스 연동을 통한 비즈니스 타겟 매칭 플랫폼 제공 시스템
WO2020213936A1 (ko) 지식 공유 플랫폼의 제어 방법, 장치 및 시스템
WO2019172464A1 (ko) 암호화폐를 사용하지 않는 법정화폐용 p2p 장부
WO2021015463A2 (ko) 블록체인을 기반으로 한 대출 서비스 방법 및 이러한 방법을 사용하는 장치
Chi et al. Product life cycle, and market entry and exit decisions under uncertainty
WO2021246632A1 (ko) 전자 지갑, 이를 실행하는 서버, 및 상기 서버를 이용한 블록체인 토큰들의 원자성 교환 방법
Guo et al. A game-theory-based scheme to facilitate consensus latency minimization in sharding blockchain

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 18924634

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 18924634

Country of ref document: EP

Kind code of ref document: A1