KR20240026478A - Blockchain based authentication and transaction system - Google Patents

Blockchain based authentication and transaction system Download PDF

Info

Publication number
KR20240026478A
KR20240026478A KR1020240024046A KR20240024046A KR20240026478A KR 20240026478 A KR20240026478 A KR 20240026478A KR 1020240024046 A KR1020240024046 A KR 1020240024046A KR 20240024046 A KR20240024046 A KR 20240024046A KR 20240026478 A KR20240026478 A KR 20240026478A
Authority
KR
South Korea
Prior art keywords
user
party
wallet
transaction
authentication
Prior art date
Application number
KR1020240024046A
Other languages
Korean (ko)
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 KR1020240024046A priority Critical patent/KR20240026478A/en
Publication of KR20240026478A publication Critical patent/KR20240026478A/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • 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/401Transaction verification
    • G06Q20/4014Identity check for transactions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • G06K19/06009Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking
    • G06K19/06037Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking multi-dimensional coding
    • 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/08Payment architectures
    • G06Q20/10Payment architectures specially adapted for electronic funds transfer [EFT] systems; specially adapted for home banking systems
    • 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
    • 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
    • G06Q20/3674Payment 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 involving authentication
    • 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
    • G06Q20/3678Payment 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 e-cash details, e.g. blinded, divisible or detecting double spending
    • 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/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3825Use of electronic signatures
    • 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/42Confirmation, e.g. check or permission by the legal debtor of payment
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0825Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
    • 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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • 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/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
    • 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

본 발명의 실시예에 의하면, 사용자의 모바일 단말에 설치되는 애플리케이션 프로그램인 사용자측 DID(Distributed Identity) 월렛;을 포함하는 블록체인 기반 인증 및 거래 시스템이 제공된다. 여기서, 상기 사용자측 DID 월렛은, 인증 또는 거래의 상대방이 되는 상대방측 시스템으로부터 제공되는 상대방의 VP(Verifiable Presentation)가 획득된 경우, 상대방의 VP를 검증하고, 검증된 상대방 확인 정보를 사용자에게 화면 표출함으로써, 사용자가 상기 상대방에 관한 진위 확인이 가능하도록 한다.According to an embodiment of the present invention, a blockchain-based authentication and transaction system including a user-side DID (Distributed Identity) wallet, which is an application program installed on the user's mobile terminal, is provided. Here, when the user's DID wallet obtains the other party's VP (Verifiable Presentation) provided from the other party's system, which is the counterparty to the authentication or transaction, it verifies the other party's VP and displays the verified counterparty confirmation information to the user. By doing so, the user can confirm the authenticity of the other party.

Description

블록체인 기반 인증 및 거래 시스템{BLOCKCHAIN BASED AUTHENTICATION AND TRANSACTION SYSTEM}Blockchain-based authentication and transaction system {BLOCKCHAIN BASED AUTHENTICATION AND TRANSACTION SYSTEM}

본 발명은 사용자의 모바일 단말기로 블록체인 기반의 인증, 거래, 전자서명 서비스를 제공함에 있어서, 사용자와 온라인에서 연결된 상대방(또는 인증 요청)이 정당한 상대방인지를 사용자가 먼저 확인한 후 자신의 인증값을 제공하도록 하는 온라인 상호인증 DID(Distributed Identity) 기술을 개발하고, 오프라인에서도 밀접 접촉 없이 거리를 유지하면서도 오프라인 상호인증이 진행될 수 있게 하는 온/오프라인 상호인증 및 거래 기술에 관한 것이다.The present invention provides blockchain-based authentication, transaction, and electronic signature services to the user's mobile terminal, in which the user first checks whether the other party (or authentication request) connected to the user online is a legitimate counterpart and then submits the user's authentication value. It is about developing online mutual authentication DID (Distributed Identity) technology that provides online mutual authentication and transaction technology that enables offline mutual authentication while maintaining distance without close contact.

정부주도의 전자인증서 제도의 폐지와 코로나로 인한 언택트 환경이 맞물리면서 그 어느 때 보다 보안성과 편리성을 겸비한 새로운 인증 및 전자서명 기술에 관심이 주목되고 있다.With the abolition of the government-led electronic certificate system and the untact environment caused by the coronavirus, interest is growing in new authentication and electronic signature technologies that combine security and convenience more than ever.

보안적 측면에서는 1세대 중앙집중식 인증(Centeral Identity), 2세대 통합식 인증(Federated Identity) 시스템을 넘어, 공격자가 함부로 변조하거나 공격하기 어려운 탈중앙화된 블록체인 기반의 3세대 분산 신원 인증(Distributed Identity : DID) 시스템으로 발전되고 있다.In terms of security, it goes beyond the first-generation centralized authentication (Central Identity) and second-generation federated identity systems, and uses the third-generation distributed identity authentication based on decentralized blockchain, which is difficult for attackers to tamper with or attack. : DID) system is being developed.

이러한 DID 인증 시스템은 온라인 거래에만 한정되어 사용되는 것이 아니라 QR 코드와 스마트폰을 이용하여 오프라인에서도 이용되고 있다.This DID authentication system is not limited to online transactions, but is also used offline using QR codes and smartphones.

그러나 DID 인증 시스템이 사용자의 공개키를 신뢰할 수 있는 블록체인에서 보증하는 안전한 시스템이라 하더라도, 사용자가 최초 접속한 시스템 또는 인증 요청값(QR 코드, 리턴 URL 등)이 가짜라면 사용자 인증 정보는 언제든 공격자에게 도용될 수 있다. 기존의 DID 인증 기술은 사용자가 누구에게 신원정보를 제공하고 무엇에 전자서명을 하는지에 대한 사전 확인 기회를 갖지 못한 채, 자신의 신원증명 또는 전자서명만을 상대방에게 제공하게 되는 위험성을 가지고 있다.However, even if the DID authentication system is a safe system where the user's public key is guaranteed by a trustworthy blockchain, if the system the user first accessed or the authentication request value (QR code, return URL, etc.) is fake, the user authentication information can be exposed to an attacker at any time. It can be misused. Existing DID authentication technology has the risk of providing only one's identity or electronic signature to the other party without the user having the opportunity to confirm in advance who they are providing their identity information to and what they are electronically signing.

즉, 기존의 DID 인증 기술 역시 현재까지 개발된 모든 인증기술(즉, OTP, PKI, 생체인증, 행위기반인증, 블록체인 인증 등을 포함함)과 마찬가지로, 특정 서비스에 접속한 사용자가 정당한 사용자인지 아닌지 만을 검증하는 방식으로 개발되어 왔고, 그 특정 서비스를 제공하는 서비스 제공자의 진위 여부까지는 검증하지 않아왔다.In other words, the existing DID authentication technology, like all authentication technologies developed to date (i.e., including OTP, PKI, biometric authentication, behavior-based authentication, blockchain authentication, etc.), ensures that the user accessing a specific service is a legitimate user. It has been developed in a way that only verifies whether or not the service is authentic, and has not verified the authenticity of the service provider providing the specific service.

이러한 이유로 사용자가 정당한 서비스 제공자인 것처럼 위장한 악성 공격자 서비스에 접속하여 사용자 인증이나 전자서명에 대응하게 되면 해당 사용자의 신원 및 전자서명은 도용당할 수 밖에 없다. For this reason, if a user accesses a malicious attacker's service disguised as a legitimate service provider and responds to user authentication or electronic signature, the user's identity and electronic signature will inevitably be stolen.

악성 공격자는 온라인 뿐만 아니라 오프라인 상에서도 존재할 수 있다. QR 코드 인증을 예로 들면, 공격자가 사전에 생성한 악성 인증 또는 전자서명 QR 코드를 오프라인 서비스 제공자의 스마트폰에 배포하고, 정당 사용자가 이를 자신의 스마트폰 앱으로 인식하여 승인하게 되면, 사용자는 어떤 내용을 승인한 것인지 알지 못한 채로 승인하기 때문에 자신의 신원정보를 탈취 당하거나, 전자서명을 빼앗길 수 있다. 이러한 QR 코드 대체에 의한 사기 거래(QRishing)는 오프라인 모바일 인증에서 수시로 발생하고 있다.Malicious attackers can exist not only online but also offline. Taking QR code authentication as an example, if an attacker distributes a malicious authentication or electronic signature QR code created in advance to the smartphone of an offline service provider, and a legitimate user recognizes it as his or her smartphone app and approves it, the user does not know what to do. Because you approve the content without knowing whether you approved it, your identity information may be stolen or your electronic signature may be stolen. Fraudulent transactions (QRishing) by replacing QR codes frequently occur in offline mobile authentication.

따라서 인증 시스템의 뒷단이 아무리 강력한 블록체인으로 보장되더라도 사용자가 처음 접속한 시스템 또는 인증요청값(QR 코드, 리턴 URL 등)이 가짜라면 사용자의 인증정보와 전자서명이 언제든지 도용될 수 있다. Therefore, no matter how strong the backend of the authentication system is secured with a blockchain, if the system the user first accesses or the authentication request value (QR code, return URL, etc.) is fake, the user's authentication information and electronic signature can be stolen at any time.

또한, 최근 코로나로 인해 오프라인 상에서 2M 이상 거리를 유지하면서 안전하게 대면 거래를 진행해야 하는 상황이 대두되고 있는데, 1M 이내의 근접거리에서만 인증되는 QR이나 NFC 인증 방식을 개선할 수 있도록, 2M 이상의 방역 거리에서 안전하게 거래 상대방을 확인한 후 사용자 자신의 인증값 또는 전자서명 값을 전달할 수 있는 개선된 방법이 필요하다.In addition, due to the recent coronavirus outbreak, a situation has emerged where face-to-face transactions must be conducted safely offline while maintaining a distance of more than 2M. In order to improve the QR or NFC authentication method, which is only authenticated at a close distance of less than 1M, a quarantine distance of more than 2M is emerging. An improved method is needed to safely verify the transaction counterparty and then transmit the user's own authentication value or electronic signature value.

본 발명은 상술한 문제점을 해결하기 위해 도출된 것으로서, 사용자 인증을 요청하는 서비스가 정당한 서비스인지를 먼저 확인한 후 사용자의 인증값을 해당 서비스로 전달하는 DID 기반의 온라인 상호인증과 거래 기술과, 오프라인에서 2M 이상 안전 방역 거리에서도 거래 상대방(또는 IoT 기기)이 정상 상대방인지 먼저 확인한 후 사용자의 인증값을 전달하는 오프라인 상호인증 및 거래 방법을 제공하고자 한다.The present invention was developed to solve the above-mentioned problems, and includes DID-based online mutual authentication and transaction technology that first checks whether the service requesting user authentication is a legitimate service and then transmits the user's authentication value to the corresponding service, and offline We want to provide an offline mutual authentication and transaction method that first checks whether the transaction counterparty (or IoT device) is a normal counterparty and then delivers the user's authentication value even at a safety quarantine distance of more than 2M.

본 발명의 일 측면에 따르면, 사용자의 모바일 단말에 설치되는 애플리케이션 프로그램인 사용자측 DID(Distributed Identity) 월렛;을 포함하는 블록체인 기반 인증 및 거래 시스템이 제공된다. 여기서, 상기 사용자측 DID 월렛은, 인증 또는 거래의 상대방이 되는 상대방측 시스템으로부터 제공되는 상대방의 VP(Verifiable Presentation)가 획득된 경우, 상대방의 VP를 검증하고, 검증된 상대방 확인 정보를 사용자에게 화면 표출함으로써, 사용자가 상기 상대방에 관한 진위 확인이 가능하도록 한다.According to one aspect of the present invention, a blockchain-based authentication and transaction system including a user-side DID (Distributed Identity) wallet, which is an application program installed on the user's mobile terminal, is provided. Here, when the user's DID wallet obtains the other party's VP (Verifiable Presentation) provided from the other party's system, which is the counterparty to the authentication or transaction, it verifies the other party's VP and displays the verified counterparty confirmation information to the user. By doing so, the user can confirm the authenticity of the other party.

일 실시예에서, 상기 사용자측 DID 월렛은, 상기 상대방의 VP에 대응되는 공개키로 상기 상대방의 VP를 복호화하고, 복호화된 VP에 포함된 상대방의 전자서명을 검증하며, 복호화된 VP에 포함된 상기 상대방의 VC(Verifiable Credential)로부터 상기 상대방의 VC를 발급한 발급자(Issuer)의 전자서명을 획득하고, 상기 발급자의 공개키로 상기 발급자의 전자서명을 검증한 이후, 검증된 상대방 확인 정보를 사용자에게 화면 표출한다.In one embodiment, the user-side DID wallet decrypts the other party's VP with a public key corresponding to the other party's VP, verifies the other party's electronic signature included in the decrypted VP, and verifies the other party's electronic signature included in the decrypted VP. Obtain the electronic signature of the issuer (Issuer) who issued the other party's VC from the Verifiable Credential (VC) of the other party, verify the issuer's electronic signature with the issuer's public key, and then display the verified counterparty verification information to the user. do.

일 실시예에서, 상기 상대방의 VP는, 사전 생성된 고정된 값의 정적 VP이거나, 또는 상기 상대방 측 DID 월렛이 사전 발급된 상기 상대방의 VC(Verifiable Credential)를 개인키로 암호화하여 상기 인증 또는 거래 시점에 동적으로 생성한 동적 VP일 수 있다.In one embodiment, the other party's VP is a static VP of a pre-generated fixed value, or the other party's DID wallet encrypts the previously issued VC (Verifiable Credential) of the other party with a private key at the time of the authentication or transaction. It may be a dynamic VP created dynamically.

일 실시예에서, 상기 상대방측 시스템에 설치되는 애플리케이션 프로그램인 상대방측 DID 월렛;을 더 포함한다. 여기서, 상기 상대방측 DID 월렛은, QR(Quick Response) 코드에 상기 상대방의 VP를 탑재하거나 또는 QR 코드에 상기 상대방의 VP에 접근할 수 있는 보관소의 네트워크 접속 정보를 탑재한 후, 상기 QR 코드를 상기 사용자에게 제공할 수 있다.In one embodiment, it further includes a DID wallet on the other side, which is an application program installed on the other side's system. Here, the other party's DID wallet loads the other party's VP in the QR (Quick Response) code, or loads the network connection information of the storage that can access the other party's VP in the QR code, and then enters the QR code. It can be provided to the user.

여기서, 상기 사용자측 DID 월렛은, 상기 QR 코드의 인식을 통해서 상기 상대방 VP를 획득할 수 있다.Here, the user's DID wallet can obtain the counterpart's VP through recognition of the QR code.

일 실시예에서, 상기 사용자측 DID 월렛은, 화면 표출된 상기 상대방 확인 정보를 통해서 상기 사용자가 상기 상대방을 인증한 경우에 한하여, 상기 사용자의 VP를 상기 상대방측 시스템 또는 상기 상대방의 VC(Verifiable Credential)에서 지정한 제출처로 제출되도록 할 수 있다.In one embodiment, the user's DID wallet sends the user's VP to the other party's system or the other party's VC (Verifiable Credential) only when the user authenticates the other party through the counterpart confirmation information displayed on the screen. It can be submitted to the submission destination designated by .

일 실시예에서, 상기 사용자측 DID 월렛은, 상기 상대방측 시스템 또는 상기 상대방측 시스템과 연동되는 연동기기로부터 송출된 근거리 무선 신호로부터 터미널 식별값을 추출하고, 추출된 터미널 식별값을 터미널 정보 시스템(Terminal Information Server)에 전송하여 상기 터미널 정보 시스템으로부터 상기 터미널 식별값에 대응되는 상기 상대방의 VP를 획득할 수 있다.In one embodiment, the user's DID wallet extracts a terminal identification value from a short-range wireless signal transmitted from the other party's system or a linked device linked to the other party's system, and sends the extracted terminal identification value to the terminal information system (Terminal Information System). Information Server) to obtain the other party's VP corresponding to the terminal identification value from the terminal information system.

일 실시예에서, 상기 사용자측 DID 월렛은, 상기 근거리 무선 신호로부터 추출한 터미널 식별값과 상기 복호화된 VP에 포함된 상기 상대방측 시스템의 터미널 식별값이 일치하는지에 관한 검증을 추가 수행하고, 상기 검증이 정상적으로 이루어진 경우에 한하여, 상기 사용자의 VP를 상기 상대방측 시스템 또는 상기 상대방의 VC(Verifiable Credential)에서 지정한 제출처로 제출되도록 할 수 있다.In one embodiment, the user-side DID wallet additionally performs verification as to whether the terminal identification value extracted from the short-range wireless signal matches the terminal identification value of the counterpart system included in the decrypted VP, and the verification is Only when done properly, the user's VP can be submitted to the submission destination designated by the other party's system or the other party's VC (Verifiable Credential).

일 실시예에서, 상기 거래가 블록체인 기반의 송금 트랜잭션에 해당하는 경우, 상기 사용자측 DID 월렛은, 상기 상대방 확인 정보로서 상기 화면에 표출된 수금자 정보에 따른 입금 주소로만 송금액을 입력할 수 있는 화면을 제시하고, 사용자가 송금액을 입력한 경우 해당 입금 주소로 트랜잭션을 전송할 수 있다.In one embodiment, when the transaction corresponds to a blockchain-based remittance transaction, the user's DID wallet displays a screen where the remittance amount can be entered only to the deposit address according to the recipient information displayed on the screen as the counterparty confirmation information. If the user enters the remittance amount, the transaction can be sent to the corresponding deposit address.

본 발명의 실시예에 의하면, 사용자 인증을 요청하는 서비스가 정당한 서비스인지를 먼저 확인한 후 사용자의 인증값을 해당 서비스로 전달하는 DID 기반의 온라인 상호인증 기술을 제공하여 더욱 안전한 신원 인증과 거래가 가능하고, 오프라인에서도 안전 방역 거리를 유지하면서 안전한 신원 인증 및 거래가 가능한 오프라인 상호인증 및 거래 방법을 제공할 수 있는 효과가 있다.According to an embodiment of the present invention, safer identity authentication and transactions are possible by providing a DID-based online mutual authentication technology that first checks whether the service requesting user authentication is a legitimate service and then transmits the user's authentication value to the corresponding service. , It is effective in providing offline mutual authentication and transaction methods that enable safe identity authentication and transactions while maintaining a safe quarantine distance even offline.

도 1은 종래 방식에 따라, 표준 DID 기반한 온라인 사용자 인증으로 웹사이트 로그인 하는 흐름을 도시한 도면
도 2는 종래 방식에 따라, 표준 DID 기반한 온라인 사용자 인증으로 전자서명하는 흐름을 도시한 도면
도 3은 본 발명의 실시예에 따라, 서비스 제공자의 SVC 검증을 포함하는 표준 DID로 온라인 사용자를 인증하고 서비스를 제공하는 흐름을 도시한 도면
도 4는 본 발명의 실시예에 따라, 서비스 제공자의 SVC 검증을 포함하는 표준 DID로 온라인 사용자의 전자서명을 수신하고 서비스를 제공하는 흐름을 도시한 도면
도 5은 본 발명의 실시예에 따라, 인증 BLE를 통한 사용자와 사용자간 오프라인 상호인증을 하는 흐름을 도시한 도면
도 6은 본 발명의 실시예에 따라, 인증 BLE를 통한 사용자와 기기간 오프라인 상호인증을 하는 흐름을 도시한 도면
도 7은 본 발명의 실시예에 따라, 사용자 월렛으로 서비스 제공자를 검증한 이후 서비스 역시 사용자를 검증한 이후 로그인을 허용하는 흐름을 도시한 도면
도 8은 본 발명의 실시예에 따라, 전자서명을 진행하는데 있어서 QR코드로 계약 상대방을 블록체인에서 확인한 후 사용자의 전자서명을 제출하는 과정 흐름을 도시한 도면
도 9는 본 발명의 실시예에 따라, 오프라인에서 QR 코드로 서비스 제공자의 정보를 확인한 이후 서비스 제공자에 사용자의 개인정보를 전달하는 흐름을 도시한 도면
도 10은 본 발명의 실시예에 따라, 2M 이상 거리를 둔 오프라인 환경에서 인증BLE로 거래 상대방을 확인한 후 사용자 인증 정보를 제출하는 흐름을 도시한 도면
도 11은 본 발명의 실시예에 따라, 송금 상대방의 VP 확인 후 송금 거래를 하는 방법에 관한 제1 실시예의 서비스 흐름을 도시한 도면.
도 12는 도 11의 케이스에서의 서비스 화면 예시.
도 13은 본 발명의 실시예에 따라, 송금 상대방의 VP 확인 후 송금 거래를 하는 방법에 관한 제2 실시예의 서비스 흐름을 도시한 도면.
도 14는 도 13의 케이스에서의 서비스 화면 예시.
도 15는 본 발명의 실시예에 따라, 가상화폐 출금 거래를 하는 방법에 관한 서비스 흐름을 도시한 도면.
도 16은 도 15의 케이스에서의 서비스 화면 예시.
Figure 1 is a diagram illustrating the flow of logging into a website using standard DID-based online user authentication according to the conventional method.
Figure 2 is a diagram showing the flow of electronic signature through standard DID-based online user authentication according to the conventional method.
Figure 3 is a diagram illustrating a flow of authenticating an online user and providing a service with a standard DID including SVC verification of a service provider, according to an embodiment of the present invention.
Figure 4 is a diagram illustrating a flow of receiving an online user's electronic signature and providing a service with a standard DID including SVC verification of the service provider, according to an embodiment of the present invention.
Figure 5 is a diagram illustrating the flow of offline mutual authentication between users through authentication BLE, according to an embodiment of the present invention.
Figure 6 is a diagram illustrating the flow of offline mutual authentication between a user and a device through authentication BLE, according to an embodiment of the present invention.
Figure 7 is a diagram showing a flow of allowing login after verifying the service provider with the user's wallet and then verifying the user, according to an embodiment of the present invention.
Figure 8 is a diagram illustrating the process flow of submitting the user's electronic signature after confirming the contract counterparty on the blockchain with a QR code when performing an electronic signature, according to an embodiment of the present invention.
Figure 9 is a diagram illustrating a flow of delivering the user's personal information to the service provider after confirming the service provider's information with a QR code offline, according to an embodiment of the present invention.
Figure 10 is a diagram illustrating a flow of submitting user authentication information after confirming the transaction counterparty with authentication BLE in an offline environment at a distance of 2M or more, according to an embodiment of the present invention.
Figure 11 is a diagram illustrating the service flow of a first embodiment of a method for conducting a remittance transaction after confirming the VP of the remittance counterparty, according to an embodiment of the present invention.
Figure 12 is an example of a service screen in the case of Figure 11.
Figure 13 is a diagram illustrating the service flow of a second embodiment of a method for conducting a remittance transaction after confirming the VP of the remittance counterparty, according to an embodiment of the present invention.
Figure 14 is an example of a service screen in the case of Figure 13.
Figure 15 is a diagram illustrating a service flow regarding a method of performing a virtual currency withdrawal transaction according to an embodiment of the present invention.
Figure 16 is an example of a service screen in the case of Figure 15.

본 발명은 다양한 변환을 가할 수 있고 여러 가지 실시 예를 가질 수 있는 바, 특정 실시 예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변환, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.Since the present invention can be modified in various ways and have various embodiments, 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 transformations, equivalents, and substitutes included in the spirit and technical scope of the present invention.

본 발명을 설명함에 있어서, 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 본 명세서의 설명 과정에서 이용되는 숫자(예를 들어, 제1, 제2 등)는 하나의 구성요소를 다른 구성요소와 구분하기 위한 식별기호에 불과하다.In describing the present invention, if it is determined that a detailed description of related known technologies may unnecessarily obscure the gist of the present invention, the detailed description will be omitted. In addition, numbers (eg, first, second, etc.) used in the description of this specification are merely identifiers to distinguish one component from another component.

또한, 명세서 전체에서, 일 구성요소가 다른 구성요소와 "연결된다" 거나 "접속된다" 등으로 언급된 때에는, 상기 일 구성요소가 상기 다른 구성요소와 직접 연결되거나 또는 직접 접속될 수도 있지만, 특별히 반대되는 기재가 존재하지 않는 이상, 중간에 또 다른 구성요소를 매개하여 연결되거나 또는 접속될 수도 있다고 이해되어야 할 것이다. 또한, 명세서 전체에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다. In addition, throughout the specification, when a component is referred to as "connected" or "connected" to another component, the component may be directly connected or directly connected to the other component, but in particular Unless there is a contrary description, it should be understood that it may be connected or connected through another component in the middle. In addition, throughout the specification, when a part "includes" a certain element, this means that it may further include other elements rather than excluding other elements, unless specifically stated to the contrary.

이하, 첨부된 도면들을 참조하여 본 발명의 실시예를 상세히 설명한다.Hereinafter, embodiments of the present invention will be described in detail with reference to the attached drawings.

이를 위하여, 종래 일반적인 DID 기술에 대해서 명확하게 설명하고자 한다. To this end, we would like to clearly explain the conventional general DID technology.

도 1은 종래 방식에 따라, 표준 DID 기반한 온라인 사용자 인증으로 웹사이트 로그인 하는 흐름을 도시한 도면이고, 도 2는 종래 방식에 따라, 표준 DID 기반한 온라인 사용자 인증으로 전자서명하는 흐름을 도시한 도면이다.Figure 1 is a diagram showing the flow of logging into a website using standard DID-based online user authentication according to the conventional method, and Figure 2 is a diagram showing the flow of electronic signing using standard DID-based online user authentication according to the conventional method. .

도 1에서는 일반적인 DID 월렛앱으로 PC에 표출된 QR코드를 스캔하는 경우 QR코드에 탑재된 리턴 URL로 사용자 인증값인 VP값을 제출하는 경우의 서비스 처리 흐름을 보여주고 있고, 도 2에서는 QR코드에 담기 너무 큰 내용의 전자서명을 진행하는 경우에 서비스 제공자의 리턴URL에 거래 메시지를 요청하여 수신하고 해당 메시지에 대해 전자서명한 VP를 제출하는 서비스 처리 흐름을 보여주고 있다. 이와 같이 일반적인 사용자 인증 또는 전자서명 흐름은 서비스 제공자 측에서 사용자 월렛으로 사용자 VP를 제출 받는 주소를 탑재한 QR 또는 Link를 제공하고, 사용자가 해당 URL주소 또는 링크로 VP를 제출함으로써 사용자 인증 또는 전자서명이 이루어 진다. 즉, 종래 방식에 따른 표준 DID에 기반한 인증 과정은 사용자 인증만이 수행될 뿐, 해당 서비스를 제공하는 서비스 제공자 또는 전자서명을 요구하는 상대방에 관한 진위 여부에 관한 검증은 진행되지 않는다.Figure 1 shows the service processing flow when scanning a QR code displayed on a PC with a general DID wallet app and submitting the VP value, which is a user authentication value, to the return URL mounted on the QR code. Figure 2 shows the service processing flow when scanning the QR code displayed on a PC. It shows the service processing flow of requesting and receiving a transaction message from the service provider's return URL and submitting a VP with an electronic signature for the message when performing an electronic signature that is too large to contain. In this way, in the general user authentication or electronic signature flow, the service provider provides a QR or Link containing the address to which the user VP is submitted to the user wallet, and the user submits the VP to the corresponding URL address or link, thereby providing user authentication or electronic signature. This is done. In other words, the authentication process based on the standard DID according to the conventional method only performs user authentication, and does not verify the authenticity of the service provider providing the service or the other party requesting the electronic signature.

이와 달리, 본 발명은 사용자 인증을 요청하는 서비스가 정당한 서비스인지를 먼저 확인한 후 사용자의 인증값을 해당 서비스로 전달하는 DID 기반의 온라인 상호인증과 전자서명 기술을 제공하며, 또한 오프라인 상에서도 거래 상대방(또는 IoT 기기)이 정상 상대방인지 먼저 확인한 후 사용자의 인증값을 전달하는 오프라인 상호인증 및 전자서명 기술을 제공한다. 이에 관하여 이하 도 3 ~ 도 10을 참조하여, 본 발명의 기술적 방식에 대하여 상세히 설명하면 다음과 같다.In contrast, the present invention provides DID-based online mutual authentication and electronic signature technology that first checks whether the service requesting user authentication is a legitimate service and then transmits the user's authentication value to the corresponding service. It also provides a DID-based online mutual authentication and electronic signature technology that can be used offline as well. It provides offline mutual authentication and electronic signature technology that first checks whether the other party (or IoT device) is a normal counterpart and then delivers the user's authentication value. In this regard, with reference to FIGS. 3 to 10, the technical method of the present invention will be described in detail as follows.

도 3 ~ 도 6에서, Holder(DID 월렛)은 사용자의 모바일 단말에 설치되는 애플리케이션 프로그램으로서 사용자측 DID 월렛을 지칭하고, PC(Personal computer)는 사용자가 특정 온라인 서비스를 이용하기 위해 사용하는 단말기를 지칭하고, Verifier는 사용자와의 관계에서 인증 또는 거래의 상대방이 되는 상대방 시스템(예를 들어, 도 3 및 도 4의 경우 온라인 서비스 제공자의 시스템, 도 5 및 도 6의 경우 오프라인 트랜잭션의 상대방 시스템)을 지칭한다.In Figures 3 to 6, Holder (DID Wallet) refers to the user's DID wallet as an application program installed on the user's mobile terminal, and PC (Personal Computer) refers to the terminal that the user uses to use a specific online service. And, the Verifier is a counterparty system that is the counterparty for authentication or transaction in the relationship with the user (e.g., the online service provider's system in the case of FIGS. 3 and 4, and the counterparty system of the offline transaction in the case of FIGS. 5 and 6). refers to

또한, 도 3 ~ 도 6에서, SVC(Service Verifiable Credential)는 소정의 발급 기관(Issuer)로부터 발급된 상대방의 VC(Verifiable Credential)를 지칭하고, SVP(Service Verifiable Presentation)는 상기 SVC로부터 생성된 상대방의 VP(Verifiable Presentation)를 지칭한다.In addition, in FIGS. 3 to 6, SVC (Service Verifiable Credential) refers to the counterparty's VC (Verifiable Credential) issued from a predetermined issuing authority (Issuer), and SVP (Service Verifiable Presentation) refers to the counterparty's VC generated from the SVC. Refers to VP (Verifiable Presentation).

[DID 기반의 온라인 상호 인증 - SVP로 서비스 제공자 확인 이후, 사용자 인증 정보 전송 방식][DID-based online mutual authentication - method of transmitting user authentication information after verifying service provider with SVP]

도 3은 SVC 검증을 포함하는 표준 DID 기반한 온라인 사용자 인증으로 전자서명하는 흐름을 도시한 도면이다.Figure 3 is a diagram showing the flow of electronic signature through standard DID-based online user authentication including SVC verification.

도 3을 참조하면, 사용자가 자신의 PC로 소정의 온라인 서비스 제공자가 제공하는 특정 서비스를 요청함에 따라[도 3의 도면부호 1 참조], 온라인 서비스 제공자에 의한 상대방 시스템은 사용자의 PC 화면에 QR 코드가 표출될 수 있도록 QR 코드를 리턴한다[도 3의 도면부호 3 참조]. 이때, QR 코드에는 사용자의 VP를 요구하는 리턴 URL 이외에도 그 온라인 서비스 제공자 자신의 VP(즉, SVP)도 포함된다.Referring to FIG. 3, when a user requests a specific service provided by an online service provider through his/her PC (see reference numeral 1 in FIG. 3), the other system by the online service provider displays a QR on the user's PC screen. Returns the QR code so that the code can be displayed [see reference numeral 3 in FIG. 3]. At this time, in addition to the return URL requesting the user's VP, the QR code also includes the online service provider's own VP (i.e., SVP).

이후, 사용자가 자신의 모바일 단말에 설치된 DID 월렛을 이용하여 QR 코드를 인식하는 경우[도 3의 도면부호 4 참조], 사용자측 DID 월렛은 QR 코드 인식을 통해 획득된 SVP를 이용하여 상대방인 온라인 서비스 제공자의 진위 여부에 관한 검증을 수행한다[도 3의 도면부호 5 참조].Afterwards, when the user recognizes the QR code using the DID wallet installed on his/her mobile terminal [see reference numeral 4 in FIG. 3], the user's DID wallet uses the SVP obtained through QR code recognition to access the other party's online service. Verification of the authenticity of the provider is performed [see reference numeral 5 in FIG. 3].

이때, 사용자측 DID 월렛을 통한 상대방의 진위 여부 검증 과정은 다음과 같을 수 있다.At this time, the process of verifying the authenticity of the other party through the user's DID wallet may be as follows.

먼저, 사용자측 DID 월렛은, QR 코드 인식을 통해 획득된 SVP에 포함된 DID 정보(Distributed Identification information)(이는 일종의 공개키 주소일 수 있음)를 참조하여 해당 블록체인 시스템에 공개키를 조회하고, 조회된 공개키를 이용하여 SVP에 포함된 데이터를 복호화한다. First, the user's DID wallet queries the public key in the corresponding blockchain system by referring to the DID information (Distributed Identification information) included in the SVP obtained through QR code recognition (this may be a type of public key address). Decrypt the data included in the SVP using the public key.

이때, 복호화된 SVP에는 상대방의 VC(즉, SVC), 상대방의 전자서명값이 포함될 수 있다. 또한, 복호화된 SVP에 포함된 SVC에는 해당 상대방을 확인할 수 있는 식별 정보(이하, 이를 상대방 확인 정보라 간략 명명함)는 물론, 그 SVC를 발급한 발급자(Issuer)의 전자서명값 및 공개키 주소 등이 포함될 수 있다.At this time, the decrypted SVP may include the other party's VC (i.e., SVC) and the other party's electronic signature value. In addition, the SVC included in the decrypted SVP contains identification information that can identify the counterparty (hereinafter, briefly referred to as counterparty verification information), as well as the electronic signature value and public key address of the issuer that issued the SVC. etc. may be included.

이에 따라, 사용자측 DID 월렛은, 상기 SVP에 대응되는 공개키를 이용하여 상기 상대방의 전자서명값을 검증한다. 보다 구체적으로 설명하면, 사용자 측 DID 월렛은, SVP에 대응되는 공개키와 소정의 해쉬 함수(이는 상대방이 해당 전자서명값을 생성하였을 때 사용한 해쉬 함수임)를 이용하여 생성한 전자서명값과 복호화된 SVP에 포함된 상대방의 전자서명값 간의 일치 여부를 확인함으로써, 상대방의 전자서명값의 진위를 검증(즉, SVP의 진위 검증)할 수 있다.Accordingly, the user's DID wallet verifies the other party's electronic signature value using the public key corresponding to the SVP. To be more specific, the user's DID wallet decrypts the digital signature value generated using the public key corresponding to the SVP and a predetermined hash function (this is the hash function used when the other party created the digital signature value). By checking whether the other party's electronic signature value included in the SVP matches, the authenticity of the other party's electronic signature value can be verified (i.e., verification of the authenticity of the SVP).

또한, 사용자측 DID 월렛은, 상기 발급자의 전자서명값을 검증한다. 보다 구체적으로 설명하면, 사용자측 DID 월렛은, 먼저, SVC에 포함된 발급자의 공개키 주소를 이용하여 해당 발급자의 공개키를 획득하고, 획득된 발급자의 공개키와 소정의 해쉬 함수(이는 발급자가 해당 전자서명값을 생성하였을 때 사용한 해쉬 함수임)를 이용하여 생성한 전자서명값과 SVC에 포함된 발급자의 전자서명값 간의 일치 여부를 확인함으로써, 발급자의 전자서명값의 진위를 검증(즉, SVC 그 자체의 진위 검증)할 수 있다.Additionally, the user's DID wallet verifies the issuer's digital signature value. To be more specific, the user's DID wallet first obtains the public key of the issuer using the public key address of the issuer included in the SVC, and uses the obtained public key of the issuer and a predetermined hash function (this is used by the issuer to Verifies the authenticity of the issuer's electronic signature value by checking whether it matches the electronic signature value generated using the hash function used when generating the electronic signature value and the issuer's electronic signature value included in the SVC (i.e., SVC You can verify its authenticity).

상술한 바와 같이, SVP 및 SVC의 진위 검증이 완료된 경우, 사용자측 DID 월렛은, 복호화된 SVP에 포함된 상대방 확인 정보(즉, 검증 완료된 상대방 확인 정보)를 월렛 앱 화면 상에 표출한다. 이에 따라 사용자는 월렛 앱 화면을 통해서 검증된 상대방 확인 정보를 확인하게 되고, 이를 통해서 상대방에 관한 진위 확인을 할 수 있게 된다.As described above, when verification of the authenticity of the SVP and SVC is completed, the user's DID wallet displays counterparty confirmation information included in the decrypted SVP (i.e., verified counterparty confirmation information) on the wallet app screen. Accordingly, the user can check the verified counterparty confirmation information through the wallet app screen, and through this, can confirm the authenticity of the counterparty.

상술한 과정을 통해 상대방 진위 확인이 완료되고, 사용자가 월렛 앱 화면을 통해 확인 처리(예를 들어, 확인 버튼 클릭)를 하면, 사용자측 DID 월렛은 사용자의 VP를 생성하고 사용자의 VP가 Verifier(즉, 상대방측 시스템) 또는 SVC에서 지정한 제출처(즉, 리턴 URL 등)로 제출되도록 한다[도 3의 도면부호 6 및 7 참조]. 이때, 사용자의 VP 제출 과정 및 이후의 사용자 인증에 따른 서비스 처리 과정[도 3의 도면부호 8 ~ 10 참조]은 앞선 도 1 및 도 2에서와 본질적으로 동일한 프로세스이므로, 이에 관한 상세한 설명은 생략한다.When the authenticity of the other party is confirmed through the above-mentioned process and the user processes confirmation through the wallet app screen (e.g., clicks the confirmation button), the user's DID wallet creates the user's VP and the user's VP is sent to the Verifier (i.e. , the other party's system) or to the submission destination designated by the SVC (i.e., return URL, etc.) [see reference numerals 6 and 7 in FIG. 3]. At this time, the user's VP submission process and the subsequent service processing process according to user authentication (see reference numerals 8 to 10 in FIG. 3) are essentially the same processes as those in FIGS. 1 and 2, so detailed description thereof will be omitted. .

상대방측 시스템인 서비스 제공자(도 3에서 Verifier)는 정적으로 생성된 SVP를 제공할 수도 있고, 동적으로 생성된 SVP를 제공할 수 있다. 이때, 동적으로 SVP를 제공하기 위해서는 서비스에 서비스측 DID 월렛이 있어야 한다.The service provider (Verifier in Figure 3), which is the other party's system, may provide a statically created SVP or a dynamically created SVP. At this time, in order to dynamically provide SVP, the service must have a DID wallet on the service side.

이 경우, 서비스측 DID 월렛은, QR 코드에 SVP를 탑재하거나 또는 QR 코드에 SVP에 접근할 수 있는 보관소의 네트워크 접속 정보를 탑재한 후, 상기 QR 코드를 상기 사용자에게 제공할 수 있다.In this case, the DID wallet on the service side can load the SVP in the QR code or load the QR code with network connection information of a repository that can access the SVP, and then provide the QR code to the user.

상술한 도 3의 온라인 상호인증 케이스에 관한 서비스 처리 과정의 화면 예시가 도 7에 도시되고 있다.An example screen of the service processing process related to the online mutual authentication case of FIG. 3 described above is shown in FIG. 7.

이때, 상술한 도 3의 온라인 서비스 상호인증 프로세스는 도 4에서의 전자계약 과정에서도 동일하게 적용될 수 있다. 도 4는 DID 기반의 온라인 전자서명 케이스로서, SVP로 서비스 제공자 확인 이후, 전자계약을 위한 사용자의 서명을 전송하는 과정을 도시하고 있다. 상술한 도 4의 온라인 상호인증 케이스에 관한 서비스 처리 과정의 화면 예시가 도 8에 도시되고 있다.At this time, the online service mutual authentication process of FIG. 3 described above can be equally applied to the electronic contract process of FIG. 4. Figure 4 is a DID-based online electronic signature case, showing the process of transmitting the user's signature for an electronic contract after confirming the service provider with SVP. An example screen of the service processing process related to the online mutual authentication case of FIG. 4 described above is shown in FIG. 8.

또한, 상술한 도 3의 온라인 서비스 상호인증 프로세스는 도 5 및 도 6의 오프라인 상호인증 케이스에도 유사하게 적용될 수 있다. 이러한 오프라인 상호인증 케이스에서도 QR 코드가 활용될 수 있으나(도 9의 서비스 처리 과정의 화면 예시 참조), 도 5 및 도 6에서는 근거리 무선 신호인 BLE 비콘(Bluetooth Low Energy beacon)이 활용되는 경우를 예시하고 있다. 이와 같이 BLE 비콘을 이용하면 2미터 이상의 거리에서도 오프라인 상호인증이 이루어질 수 있도록 서비스 구현할 수 있다.Additionally, the online service mutual authentication process of FIG. 3 described above can be similarly applied to the offline mutual authentication case of FIGS. 5 and 6. QR codes can be used in these offline mutual authentication cases (see screen examples of the service processing process in Figure 9), but Figures 5 and 6 illustrate the case where BLE beacons (Bluetooth Low Energy beacons), which are short-range wireless signals, are used. I'm doing it. In this way, by using BLE beacons, a service can be implemented so that offline mutual authentication can be performed even at a distance of more than 2 meters.

상술한 BLE 비콘을 이용한 오프라인 상호인증 서비스를 구현하기 위해서는, 상대방측 시스템 또는 이와 연동되는 기기에는 BLE 비콘 송출 모듈이 탑재될 필요가 있다. 이때, BLE 송출 모듈이 탑재되는 기기가 모바일 단말인 경우, 클라이언트로서 동작할 뿐 서버로서 동작하지 못하기 때문에, BLE 비콘 신호의 메시지 내에 SVP를 탑재하여 송출하는 것은 불가능하다. 따라서 BLE 비콘을 이용한 오프라인 상호인증 서비스를 구현하고자 하는 경우, 도 5 및 도 6과 같이 TIS(Terminal Information Server)이 추가 구성될 수 있다. 도 5 및 도 6에 의할 때, TIS는 상대방측 시스템인 Verifier와 독립된 장치로 도시되고 있지만, 시스템 구현 방식에 따라 Verifier 내에 포함될 수도 있고 또는 블록체인 시스템과 연동되도록 구현될 수도 있다.In order to implement the offline mutual authentication service using the above-described BLE beacon, the other party's system or a device linked thereto needs to be equipped with a BLE beacon transmission module. At this time, if the device on which the BLE transmission module is mounted is a mobile terminal, it only operates as a client and cannot operate as a server, so it is impossible to load and transmit the SVP in the message of the BLE beacon signal. Therefore, if it is desired to implement an offline mutual authentication service using BLE beacons, a Terminal Information Server (TIS) can be additionally configured as shown in FIGS. 5 and 6. 5 and 6, TIS is shown as a device independent of Verifier, the other party's system, but depending on how the system is implemented, it may be included within Verifier or may be implemented to be interlocked with a blockchain system.

[오프라인 상호 인증 ?? BLE 비콘와 TIS를 이용하되, SVP로 오프라인 상대방 확인 후, 사용자를 인증하는 방식][Offline mutual authentication?? A method that uses BLE beacons and TIS, but authenticates the user after checking the offline counterpart with SVP]

도 5은 인증 BLE를 통한 사용자와 상대방 사용자간 오프라인 상호 인증하는 흐름을 도시한 도면이다.Figure 5 is a diagram showing the flow of offline mutual authentication between a user and the other user through authentication BLE.

도 5를 참조하면, 사용자측 DID 월렛은, 상대방 측으로부터 BLE 비콘 신호를 수신하고[도 5의 도면부호 1 참조], 이로부터 BLE 비콘 신호에 포함된 UUID(즉, 터미널 식별 정보)를 획득할 수 있다. 이때, 구현 방식에 따라 BLE 비콘 신호 내에는 터미널 식별 정보 이외에도 터미널 인증 정보도 포함될 수 있음은 물론이다.Referring to Figure 5, the user's DID wallet can receive a BLE beacon signal from the other party (see reference numeral 1 in Figure 5) and obtain the UUID (i.e. terminal identification information) included in the BLE beacon signal from this. there is. At this time, depending on the implementation method, the BLE beacon signal may include terminal authentication information in addition to terminal identification information.

이에 따라, 사용자측 DID 월렛은, 터미널 식별 정보를 TIS로 전송하여 해당 터미널 식별 정보에 대응되는 상대방의 SVP를 획득할 수 있다[도 5의 도면부호 2 및 3 참조]. 이후, 사용자측 DID 월렛은 획득된 SVP를 이용하여 상대방 진위 확인 과정을 수행한다[도 5의 도면부호 4 참조]. 이때의 상대방 진위 확인 과정은 앞선 도 3의 설명에서와 본질적으로 동일한 바 그 상세한 설명은 생략한다. Accordingly, the user's DID wallet can transmit terminal identification information to TIS to obtain the other party's SVP corresponding to the terminal identification information (see reference numerals 2 and 3 in FIG. 5). Afterwards, the user's DID wallet performs the other party's authenticity verification process using the obtained SVP [see reference numeral 4 in FIG. 5]. At this time, the process of verifying the other party's authenticity is essentially the same as in the previous description of FIG. 3, so detailed description thereof will be omitted.

상술한 상대방 진위 확인이 완료되면, 사용자측 DID 월렛은 검증된 상대방 확인 정보를 월렛 앱 화면을 통해 표출하고, 사용자로부터 상대방 확인이 완료되는 경우 사용자의 VP를 생성하여 상대방측 시스템으로 전송할 수 있다[도 5의 도면부호 5 및 6 참조]. 이때, 사용자의 VP 제출 과정 및 이후의 사용자 인증에 따른 서비스 처리 과정[도 5의 도면부호 7 ~ 9 참조]도 앞선 도 1 및 도 2에서와 본질적으로 동일한 프로세스이므로, 이에 관한 상세한 설명은 생략한다.When the above-mentioned confirmation of the counterparty's authenticity is completed, the user's DID wallet displays the verified counterparty confirmation information through the wallet app screen, and when the counterparty confirmation is completed by the user, the user's VP can be created and transmitted to the counterparty system [Figure See reference numerals 5 and 6 in Fig. 5]. At this time, the user's VP submission process and the service processing process following user authentication (see reference numerals 7 to 9 in FIG. 5) are essentially the same processes as those in FIGS. 1 and 2, so detailed description thereof will be omitted. .

상술한 오프라인 상호인증 과정에서, 사용자측 DID 월렛은 다음과 같은 과정을 더 추가할 수 있다. 즉, 사용자측 DID 월렛은, BLE 비콘을 수신된 상대방측의 고유 식별값(UUID)과 TIS로부터 수신한 SVP 내의 고유 식별값이 일치하는 경우에만 SVP 내용이 정당하다고 판단하고 월렛 앱 화면에 상대방 확인 정보가 표출되도록 할 수 있다.In the offline mutual authentication process described above, the user's DID wallet can further add the following processes. In other words, the user's DID wallet determines that the SVP content is legitimate only when the unique identification value (UUID) of the counterparty that received the BLE beacon matches the unique identification value in the SVP received from TIS, and displays the counterparty confirmation information on the wallet app screen. can be displayed.

또한 사용자측 DID 월렛은, 상대방측의 고유 식별값과 인증값(60초마다 변경되는 가변값)으로 구성된 상대방측의 BLE 데이터가 수신된 경우, 사용자의 VP 제출시 상대방측의 인증값을 함께 사용자 자신의 개인키로 서명하여 상대방측에게 전달할 수 있다. 이때, 상대방측 시스템은, 사용자의 VP를 블록체인 시스템에서 검증하는 과정에서, 사용자측으로부터 수신한 사용자의 VP에 포함된 인증값에 근거하여 해당 사용자가 BLE 비콘 신호 송출 영역에 근접한 위치에 존재하였음을 추가로 확인할 수 있다.In addition, when the user's DID wallet receives the other party's BLE data consisting of the other party's unique identification value and authentication value (a variable value that changes every 60 seconds), the user's DID wallet sends the other party's authentication value together with the user's VP submission. You can sign it with your private key and deliver it to the other party. At this time, in the process of verifying the user's VP in the blockchain system, the other side's system determines that the user was in a location close to the BLE beacon signal transmission area based on the authentication value included in the user's VP received from the user. You can check further.

상술한 도 5의 온라인 상호인증 케이스에 관한 서비스 처리 과정의 화면 예시가 도 10에 도시되고 있다.An example screen of the service processing process related to the online mutual authentication case of FIG. 5 described above is shown in FIG. 10.

[오프라인 상호 인증 - SVP로 오프라인 IoT 확인 후, 사용자를 인증하는 방식][Offline Mutual Authentication - User authentication method after offline IoT verification with SVP]

도 6은 인증 BLE를 통한 사용자와 기기간 오프라인 상호인증을 하는 흐름을 도시한 도면이다. 도 6을 참조하면, 본 발명은 도 5의 예시와 같은 오프라인에서 사람 간의 상호 인증이외에도, 사용자와 무인화 기기(도 6의 예시의 출입문, 주류 자동판매기 등) 간의 상호 인증 기술 구현이 가능하다.Figure 6 is a diagram showing the flow of offline mutual authentication between a user and a device through authentication BLE. Referring to FIG. 6, in addition to offline mutual authentication between people as shown in the example of FIG. 5, the present invention enables the implementation of mutual authentication technology between users and unmanned devices (doors, liquor vending machines, etc. as shown in the example of FIG. 6).

상술한 바와 같은 블록체인 기반 인증 및 거래 시스템은 블록체인 상의 송금, 입출금 등의 트랜잭션에도 동일하게 적용될 수 있다. 이하, 이를 도 11 ~ 도 16을 참조하여 설명한다.The blockchain-based authentication and transaction system described above can be equally applied to transactions such as remittances, deposits and withdrawals on the blockchain. Hereinafter, this will be described with reference to FIGS. 11 to 16.

종래 블록체인 트랜잭션은 익명성이 강조되어 수금자나 수신자의 개인정보가 블록체인에 담겨져 있지 않았으나, 관련법이 개정되면서 점차 송금자 및 수금자 간의 실명화가 이루어지고 있는 추세이다. 이러한 추세에 맞추어서 상술한 본 발명의 기술은 신원 인증 뿐만 아니라 가상화폐(코인/토큰) 거래시 송금자와 수금자 확인 과정에도 이용될 수 있다. In the past, blockchain transactions emphasized anonymity, so the personal information of the receiver or receiver was not contained in the blockchain, but as related laws are revised, the real name of the sender and receiver is gradually becoming established. In line with this trend, the technology of the present invention described above can be used not only for identity authentication but also for the process of verifying the sender and receiver during virtual currency (coin/token) transactions.

종래기술에서, 사용자들은 자신이 누구에게 코인/토큰을 전송하는지 확인하지 못한채 공개키 주소로만 코인/토큰을 전송해야 했다. 따라서 잘못된 공개키 주소를 입력하는 오류가 발생하기도 했고, 공개키 주소가 올바르 더라도 블록체인을 잘못 선택한 후 해당 공개키 주소로 송금하는 문제가 발생하기도 했다.In the prior art, users had to send coins/tokens only to public key addresses without being able to confirm to whom they were sending the coins/tokens. Therefore, errors occurred when entering the wrong public key address, and even if the public key address was correct, problems occurred when sending money to the corresponding public key address after selecting the wrong blockchain.

따라서 본 발명의 기술을 코인/토큰 송금 거래에도 적용하게 되면, DID를 기반으로 수취인의 정보를 먼저 확인한 이후, 월렛에서 해당 DID 정보에 담겨진 상대방 확인 정보(수금자명, 블록체인, 공개키 주소 등)를 사용자에게 표출한 후 사용자가 동의하면, 해당 입금 주소인 공개키 주소로만 송금액을 입력받아 블록체인으로 트랜잭션을 전송하는 방법으로, 안전한 트랜잭션 거래가 이루어질 수 있다. 시스템 구현 방식에 따라서, 송금액까지도 DID 정보에 탑재하여 사용자가 송금액까지 입력하지 않고도 트랜잭션을 전송할 수 있는 월렛을 구현할 수도 있다.Therefore, when the technology of the present invention is applied to coin/token remittance transactions, the recipient's information is first confirmed based on the DID, and then the recipient's confirmation information (recipient's name, blockchain, public key address, etc.) contained in the corresponding DID information is checked in the wallet. After expressing to the user, if the user agrees, a safe transaction can be made by receiving the remittance amount only from the public key address, which is the deposit address, and transmitting the transaction to the blockchain. Depending on how the system is implemented, it is possible to implement a wallet that allows users to transmit transactions without even entering the remittance amount by including the remittance amount in the DID information.

보다 상세하게는 도 11 및 도 12에 도시된 바와 같이, 사용자간의 모바일 대 모바일로 거래하는 것일 수 있다. 여기서, 도 11은 본 발명의 실시예에 따라, 송금 상대방의 VP 검증 후 송금 거래를 하는 방법에 관한 제1 실시예의 서비스 흐름을 도시한 도면이고, 도 12는 도 11의 케이스에서의 서비스 화면 예시이다.More specifically, as shown in Figures 11 and 12, there may be mobile-to-mobile transactions between users. Here, FIG. 11 is a diagram illustrating the service flow of the first embodiment of a method for conducting a remittance transaction after verifying the VP of the remittance counterpart, according to an embodiment of the present invention, and FIG. 12 is an example of a service screen in the case of FIG. 11. am.

도 11 및 도 12를 참조하면, 모바일에서 돈을 수금하고자 하는 사람이 수금자의 정보를 탑재하고 있는 VP 정보를 QR로 제시하고(또는 수취인의 VP정보를 습득할 수 있는 네트워크 접속 정보를 QR코드로 제시할 수 있음), 돈을 송금하고자 하는 사람이 수취인이 제시한 VP 정보를 습득하여 블록체인에서 검증한 후, 수취인의 정보를 화면에서 확인 한 후 송금자가 수취인 정보를 확인하면, VP내에 포함된 수취인의 블록체인과 공개키 주소로 송금 주소가 고정된 이후, 월렛에서 송금액을 입력하여 트랜잭션을 전송하는 예시이다.Referring to Figures 11 and 12, a person who wants to collect money on a mobile device presents VP information containing the recipient's information as a QR (or network access information that can obtain the recipient's VP information as a QR code). can be presented), the person who wants to send money acquires the VP information presented by the recipient, verifies it on the blockchain, checks the recipient's information on the screen, and when the sender confirms the recipient's information, the VP information included in the VP is confirmed. This is an example of sending a transaction by entering the remittance amount in the wallet after the remittance address is fixed with the recipient's blockchain and public key address.

다른 적용예는 가상화폐 거래소 웹사이트로 자신의 모바일 월렛에서 보유하고 있는 코인/토큰을 입금하는 예로서, 이는 도 13 및 도 14에 도시되고 있다. 또 다른 적용예는 가상화폐 거래소 웹사이트에서 보유하고 있는 코인/토큰을 자신의 모바일 월렛으로 출금하는 예로서, 이는 도 15 및 도 16에 도시되고 있다.Another application example is an example of depositing coins/tokens held in one's mobile wallet to a virtual currency exchange website, which is shown in Figures 13 and 14. Another application example is an example of withdrawing coins/tokens held on a virtual currency exchange website to one's mobile wallet, which is shown in Figures 15 and 16.

도 13 및 도 14를 참조하면, 가상화폐 거래소 웹사이트로 자신의 모바일 월렛에서 보유하고 있는 코인/토큰을 입금하려는 경우, 가상화폐 거래소가 제시하는 VP 습득 목적의 QR 코드를 입급자가 모바일 월렛에서 스캔하여 가상화폐 거래소의 VP를 블록체인에서 검증하고, 검증된 VP 정보를 사용자에게 표출한 후 사용자가 입금자 정보에 동의하면 월렛에서 VP에 포함되어 있던 정보 중에서 일부를 이용하여 블록체인, 수금자 주소 등을 고정한 상태에서 사용자가 모바일에서 입력하려는 금액만 입력 한 후, 모바일 앱에서 트랜잭션을 전송하는 것이다.Referring to Figures 13 and 14, when trying to deposit coins/tokens held in one's mobile wallet to the virtual currency exchange website, the depositor scans the QR code for the purpose of acquiring VP presented by the virtual currency exchange from the mobile wallet. The VP of the virtual currency exchange is verified on the blockchain, the verified VP information is displayed to the user, and if the user agrees to the depositor information, the wallet uses some of the information contained in the VP to send information to the blockchain, recipient address, etc. With is fixed, the user enters only the amount he or she wants to enter on the mobile phone and then transmits the transaction on the mobile app.

또한, 도 15 및 도 16을 참조하면, 가상화폐 거래소 웹사이트에서 보유하고 있는 코인/토큰을 자신의 모바일 월렛으로 출금하려는 경우, 거래소가 제시하는 VP 제출용 QR코드를 모바일 월렛에서 먼저 스캔하고, 모바일 월렛에서 QR코드에 탑재된 주소로 월렛에 보관중인 사용자 자신(즉, 출금자)의 VP를 제출하면, 가상화폐 거래소 웹사이트가 제출받은 사용자의 VP를 블록체인에서 검증하고, 사용자가 웹 화면에서 출금 정보에 동의하면 VP에 포함되어 있던 정보 중에서 일부를 이용하여 블록체인, 수금자 주소 등을 고정한 후, 사용자가 출금 금액을 입력하면 거래소가 블록체인으로 트랜잭션을 전송하는 것이다.In addition, referring to Figures 15 and 16, if you want to withdraw coins/tokens held on a virtual currency exchange website to your mobile wallet, first scan the QR code for VP submission presented by the exchange in your mobile wallet, When the user (i.e., withdrawer) submits the VP stored in the wallet to the address loaded in the QR code on the mobile wallet, the virtual currency exchange website verifies the submitted user's VP on the blockchain, and the user displays it on the web screen. If the user agrees to the withdrawal information, some of the information included in the VP is used to fix the blockchain and the recipient's address. Then, when the user enters the withdrawal amount, the exchange transmits the transaction to the blockchain.

상술한 본 발명에 따른 블록체인 기반 인증 및 거래 시스템 은 컴퓨터로 읽을 수 있는 기록 매체에 컴퓨터가 읽을 수 있는 코드로서 구현되는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체로는 컴퓨터 시스템에 의하여 해독될 수 있는 데이터가 저장된 모든 종류의 기록 매체를 포함한다. 예를 들어, ROM(Read Only Memory), RAM(Random Access Memory), 자기 테이프, 자기 디스크, 플래쉬 메모리, 광 데이터 저장장치 등이 있을 수 있다. 또한, 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 통신망으로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 읽을 수 있는 코드로서 저장되고 실행될 수 있다. The blockchain-based authentication and transaction system according to the present invention described above can be implemented as computer-readable code on a computer-readable recording medium. Computer-readable recording media include all types of recording media storing data that can be deciphered by a computer system. For example, there may be Read Only Memory (ROM), Random Access Memory (RAM), magnetic tape, magnetic disk, flash memory, optical data storage device, etc. Additionally, the computer-readable recording medium can be distributed to computer systems connected through a computer communication network, and stored and executed as code that can be read in a distributed manner.

이상에서는 본 발명의 실시예를 참조하여 설명하였지만, 해당 기술 분야에서 통상의 지식을 가진 자라면 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 쉽게 이해할 수 있을 것이다.Although the present invention has been described above with reference to embodiments, those skilled in the art can modify the present invention in various ways without departing from the spirit and scope of the present invention as set forth in the claims below. It will be easy to understand that and can be changed.

Claims (7)

사용자의 모바일 단말에 설치되는 애플리케이션 프로그램인 사용자측 DID(Distributed Identity) 월렛;을 포함하는 블록체인 기반 인증 및 거래 시스템에 있어서,
상기 사용자측 DID 월렛은,
인증 또는 거래의 상대방이 되는 상대방측 시스템으로부터 제공되는 상대방의 VP(Verifiable Presentation)가 획득된 경우, 상대방의 VP를 검증하고, 검증된 상대방 확인 정보를 사용자에게 화면 표출하는, 블록체인 기반 인증 및 거래 시스템.
In a blockchain-based authentication and transaction system that includes a user-side DID (Distributed Identity) wallet, which is an application program installed on the user's mobile terminal,
The user's DID wallet is,
Blockchain-based authentication and transaction that verifies the other party's VP (Verifiable Presentation) provided by the other party's system, which is the counterparty to the authentication or transaction, and displays the verified counterparty confirmation information on the screen to the user. system.
제1항에 있어서,
상기 사용자측 DID 월렛은,
상기 상대방의 VP에 대응되는 공개키로 상기 상대방의 VP를 복호화하고, 복호화된 VP에 포함된 상대방의 전자서명을 검증하며,
복호화된 VP에 포함된 상기 상대방의 VC(Verifiable Credential)로부터 상기 상대방의 VC를 발급한 발급자(Issuer)의 전자서명을 획득하고, 상기 발급자의 공개키로 상기 발급자의 전자서명을 검증한 이후,
검증된 상대방 확인 정보를 사용자에게 화면 표출하는, 블록체인 기반 인증 및 거래 시스템.
According to paragraph 1,
The user's DID wallet is,
Decrypt the other party's VP with the public key corresponding to the other party's VP, and verify the other party's electronic signature included in the decrypted VP,
After obtaining the electronic signature of the issuer (Issuer) who issued the other party's VC from the other party's VC (Verifiable Credential) included in the decrypted VP, and verifying the issuer's electronic signature with the issuer's public key,
A blockchain-based authentication and transaction system that displays verified counterparty confirmation information to the user.
제2항에 있어서,
상기 상대방측 시스템에 설치되는 애플리케이션 프로그램인 상대방측 DID 월렛;을 더 포함하고,
상기 상대방의 VP는, 사전 생성된 고정된 값의 정적 VP이거나, 또는 상기 상대방 측 DID 월렛이 사전 발급된 상기 상대방의 VC(Verifiable Credential)를 개인키로 암호화하여 상기 인증 또는 거래 시점에 동적으로 생성한 동적 VP이며,
상기 상대방측 DID 월렛은, QR(Quick Response) 코드에 상기 상대방의 VP를 탑재하거나 또는 QR 코드에 상기 상대방의 VP에 접근할 수 있는 보관소의 네트워크 접속 정보를 탑재한 후, 상기 QR 코드를 상기 사용자에게 제공하고,
상기 사용자측 DID 월렛은, 상기 QR 코드의 인식을 통해서 상기 상대방 VP를 획득하는 것을 특징으로 하는, 블록체인 기반 인증 및 거래 시스템.
According to paragraph 2,
It further includes a DID wallet on the other side, which is an application program installed on the other side's system,
The other party's VP is either a static VP of a pre-generated fixed value, or the other party's DID wallet encrypts the other party's pre-issued VC (Verifiable Credential) with a private key and is dynamically generated at the time of the authentication or transaction. It is a dynamic VP,
The other party's DID wallet loads the other party's VP in a QR (Quick Response) code or stores network access information that can access the other party's VP in the QR code, and then sends the QR code to the user. provide to,
The user's DID wallet is a blockchain-based authentication and transaction system, characterized in that the other party's VP is obtained through recognition of the QR code.
제3항에 있어서,
상기 사용자측 DID 월렛은,
화면 표출된 상기 상대방 확인 정보를 통해서 상기 사용자가 상기 상대방을 인증한 경우에 한하여, 상기 사용자의 VP를 상기 상대방측 시스템 또는 상기 상대방의 VC(Verifiable Credential)에서 지정한 제출처로 제출되도록 하는 것을 특징으로 하는, 블록체인 기반 인증 및 거래 시스템.
According to paragraph 3,
The user's DID wallet is,
Characterized in that the user's VP is submitted to the submission destination designated by the other party's system or the other party's VC (Verifiable Credential) only when the user authenticates the other party through the counterpart confirmation information displayed on the screen. , Blockchain-based authentication and transaction system.
제4항에 있어서,
상기 사용자측 DID 월렛은,
상기 상대방측 시스템 또는 상기 상대방측 시스템과 연동되는 연동기기로부터 송출된 근거리 무선 신호로부터 터미널 식별값을 추출하고, 추출된 터미널 식별값을 터미널 정보 시스템(Terminal Information Server)에 전송하여 상기 터미널 정보 시스템으로부터 상기 터미널 식별값에 대응되는 상기 상대방의 VP를 획득하는 것을 특징으로 하는, 블록체인 기반 인증 및 거래 시스템.
According to clause 4,
The user's DID wallet is,
A terminal identification value is extracted from a short-range wireless signal transmitted from the other party's system or a linked device linked to the other party's system, and the extracted terminal identification value is transmitted to a terminal information system (Terminal Information Server) to be retrieved from the terminal information system. A blockchain-based authentication and transaction system, characterized in that obtaining the other party's VP corresponding to the terminal identification value.
제5항에 있어서,
상기 사용자측 DID 월렛은,
상기 근거리 무선 신호로부터 추출한 터미널 식별값과 상기 복호화된 VP에 포함된 상기 상대방측 시스템의 터미널 식별값이 일치하는지에 관한 검증을 추가 수행하고, 상기 검증이 정상적으로 이루어진 경우에 한하여, 상기 사용자의 VP를 상기 상대방측 시스템 또는 상기 상대방의 VC(Verifiable Credential)에서 지정한 제출처로 제출되도록 하는 것을 특징으로 하는, 블록체인 기반 인증 및 거래 시스템.
According to clause 5,
The user's DID wallet is,
Additional verification is performed on whether the terminal identification value extracted from the short-range wireless signal matches the terminal identification value of the other party's system included in the decrypted VP, and only when the verification is successfully completed, the user's VP is A blockchain-based authentication and transaction system, characterized in that it is submitted to the submission destination designated by the other party's system or the other party's VC (Verifiable Credential).
제6항에 있어서,
상기 거래가 블록체인 기반의 송금 트랜잭션에 해당하는 경우,
상기 사용자측 DID 월렛은,
상기 상대방 확인 정보로서 상기 화면에 표출된 수금자 정보에 따른 입금 주소로만 송금액을 입력할 수 있는 화면을 제시하고, 사용자가 송금액을 입력한 경우 해당 입금 주소로 트랜잭션을 전송하는 것을 특징으로 하는, 블록체인 기반 인증 및 거래 시스템.
According to clause 6,
If the above transaction corresponds to a blockchain-based remittance transaction,
The user's DID wallet is,
A block characterized in that it presents a screen where the remittance amount can be entered only to the deposit address according to the recipient information displayed on the screen as the other party confirmation information, and transmits the transaction to the corresponding deposit address when the user enters the remittance amount. Chain-based authentication and transaction system.
KR1020240024046A 2021-12-27 2024-02-20 Blockchain based authentication and transaction system KR20240026478A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020240024046A KR20240026478A (en) 2021-12-27 2024-02-20 Blockchain based authentication and transaction system

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020210188091A KR20230099049A (en) 2021-12-27 2021-12-27 Blockchain based authentication and transaction system
KR1020240024046A KR20240026478A (en) 2021-12-27 2024-02-20 Blockchain based authentication and transaction system

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020210188091A Division KR20230099049A (en) 2021-12-27 2021-12-27 Blockchain based authentication and transaction system

Publications (1)

Publication Number Publication Date
KR20240026478A true KR20240026478A (en) 2024-02-28

Family

ID=87156121

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020210188091A KR20230099049A (en) 2021-12-27 2021-12-27 Blockchain based authentication and transaction system
KR1020240024046A KR20240026478A (en) 2021-12-27 2024-02-20 Blockchain based authentication and transaction system

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020210188091A KR20230099049A (en) 2021-12-27 2021-12-27 Blockchain based authentication and transaction system

Country Status (1)

Country Link
KR (2) KR20230099049A (en)

Also Published As

Publication number Publication date
KR20230099049A (en) 2023-07-04

Similar Documents

Publication Publication Date Title
KR102044748B1 (en) System for providing blockchain electronic wallet capable of managing authentication information and storing personal information
US10142324B2 (en) Method for reading attributes from an ID token
US11706212B2 (en) Method for securing electronic transactions
US7552333B2 (en) Trusted authentication digital signature (tads) system
US8245292B2 (en) Multi-factor authentication using a smartcard
US9596089B2 (en) Method for generating a certificate
EP1922632B1 (en) Extended one-time password method and apparatus
CA2417770C (en) Trusted authentication digital signature (tads) system
US20190005470A1 (en) Accredited certificate issuance system based on block chain and accredited certificate issuance method based on block chain using same, and accredited certificate authentication system based on block chain and accredited certificate authentication method based on block chain using same
KR102177848B1 (en) Method and system for verifying an access request
US20100258625A1 (en) Dynamic Card Verification Values and Credit Transactions
KR20120050957A (en) Method for producing a soft token
KR20130107188A (en) Server and method for authentication using sound code
US10867326B2 (en) Reputation system and method
KR100648986B1 (en) Service system and method for electronic name card, device and method for authentication of electronic name card
KR102160892B1 (en) Public key infrastructure based service authentication method and system
KR20240026478A (en) Blockchain based authentication and transaction system
US20240046265A1 (en) Blockchain based authentication and transaction system
KR101619282B1 (en) Cloud system for manging combined password and control method thereof
KR102418504B1 (en) Method for Exchanging Transaction Information
KR20000050138A (en) Credit Card Identification Controlling Device for User Authentication on the Internet and Authentication Method thereof
KR20140119450A (en) System for safety electronic payment and method for using the system
KR20200053449A (en) Method for Exchanging Transaction Information
KR102210894B1 (en) Method for Exchanging Transaction Information
CN116150729A (en) Service processing method, device, equipment, storage medium and computer program product

Legal Events

Date Code Title Description
A107 Divisional application of patent
E902 Notification of reason for refusal