KR20210014457A - 블록체인 기반 데이터 분산저장을 통한 데이터 클라우드 서비스 제공방법 - Google Patents

블록체인 기반 데이터 분산저장을 통한 데이터 클라우드 서비스 제공방법 Download PDF

Info

Publication number
KR20210014457A
KR20210014457A KR1020190092570A KR20190092570A KR20210014457A KR 20210014457 A KR20210014457 A KR 20210014457A KR 1020190092570 A KR1020190092570 A KR 1020190092570A KR 20190092570 A KR20190092570 A KR 20190092570A KR 20210014457 A KR20210014457 A KR 20210014457A
Authority
KR
South Korea
Prior art keywords
authentication
data
information
server
user terminal
Prior art date
Application number
KR1020190092570A
Other languages
English (en)
Inventor
문인식
Original Assignee
주식회사 바스랩
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 바스랩 filed Critical 주식회사 바스랩
Priority to KR1020190092570A priority Critical patent/KR20210014457A/ko
Publication of KR20210014457A publication Critical patent/KR20210014457A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0815Network architectures or network communication protocols for network security for authentication of entities providing single-sign-on or federations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
    • 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]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Power Engineering (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

블록체인 기반 통합인증 서비스 제공방법이 개시된다.

Description

블록체인 기반 데이터 분산저장을 통한 데이터 클라우드 서비스 제공방법 {METHOD FOR PROVIDING DATA CLOUD SERVICE USING BLOCKCHAIN-BASED DATA DISTRIBUTION}
본 발명은 블록체인 기반 데이터 분산저장을 통한 데이터 클라우드 서비스 제공방법에 관한 것이다.
블록체인 기술이 제시된 이후 관련 기술의 발전은 박차를 가해, 현재 블록체인 기술의 구현은 산업 전반에 걸쳐 높은 수준에서 범용화가 되었으며, 관련기술을 활용한 산업 현장의 변화도 발 빠르게 이루어져 사회 곳곳에서 블록체인을 활용한 개량기술들이 활약하고 있다. 이러한 환경의 변화에 따라, 사회와 시장의 요청 또한 블록체인 기술 자체의 활용여부 또는 복잡성보다는 기술을 활용하여 어떠한 비즈니스 모델을 창출하였는가에 자연스레 무게중심이 이동하게 되었다.
한편, 블록체인 기술과 함께 4차 산업혁명의 큰 축으로 손꼽히는 인공지능 기술은 컴퓨팅 장치들의 연산능력 급성장과 더불어 산업영역 전반에서 인간을 대체할 것으로 예측되었으나, 실질은 자율주행 차량이 사망한 운전자를 태운 채로 계속 운전을 하는 등, 기술의 완성도와는 별개로 여전히 사회나 시장 속에서 활용되기에는 인간의 통제가 필요한 부분이 많음이 드러나고 있다. 즉, 거버넌스의 필요성 문제가 제기되고 있다.
이러한 거버넌스의 문제가 블록체인 기술영역에서도 대두되고 있다. 블록체인 기술의 핵심 사상은 탈중앙화를 목적에 두고 제시된 것으로, 참여자 노드 모두가 트랜잭션 정보를 공유하고, 이를 상호 교차검증함으로써 신뢰성을 확보하는 기술의 구현이 그 요체라고 할 수 있다. 그러나 그런 참여자 모두에 의한 정보공유 및 상호 교차검증은 필연적으로 시간 소요를 갖게 되고, 블록체인 기반 암호화폐의 시발점이었던 비트코인의 경우 현재는 하나의 트랜잭션이 실제로 망 전체에 걸쳐 검증되기까지는 약 1시간정도의 시간이 필요한 실정으로, 실제 은행거래를 대체하기에는 기술적으로 충분히 성숙하지 못한 것이 사실이다.
이러한 핵심적 기술구성이 현대 컴퓨팅 파워의 테두리에서 갖는 한계 상, 당초의 목적이었던 탈중앙화로부터 조금 멀어지더라도, 다른 방식으로 블록체인 기술을 시장에 도입하고자 하는 것이 최근 블록체인 기술의 주류 흐름이며, 결국 탈중앙화로부터 멀어진다는 것은 거버넌스의 문제로 귀결된다. 신뢰할 수 있는 투명한 중개자 역할이 필요하게 되는 것이다.
즉, 최근 블록체인 기술은 그 고도성이 충분한 성숙기에 이르러 기술 자체의 복잡성보다는 어떠한 비즈니스 모델을 창출할 것인지, 그 비즈니스 모델로 구축된 생태계 안에서 참여자들이 원활하게 기술을 활용할 수 있도록 하는 거버넌스 문제를 어떻게 해결할 것인지의 2가지 핵심 목적으로 수렴되고 있다고 할 수 있다.
본원 발명은 이러한 이해와 변화한 시장환경, 사용자 및 사회의 요청에 기반하여 창작되었다. 사용자와 기업이 직접 블록체인 인프라를 구축하지 않더라도 기술의 이점을 활용할 수 있는 비즈니스 모델을 제시하며, 이용자가 신뢰할 수 있는 투명한 거버넌스를 함께 제공한다.
본 발명이 해결하고자 하는 과제는 블록체인 기반 데이터 분산저장을 통한 데이터 클라우드 서비스 제공방법을 제공하는 것이다.
본 발명이 해결하고자 하는 과제들은 이상에서 언급된 과제로 제한되지 않으며, 언급되지 않은 또 다른 과제들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.
상술한 과제를 해결하기 위하여, 블록체인 기반 데이터 분산저장을 통한 데이터 클라우드 서비스 제공방법이 제공된다.
본 발명의 기타 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.
도 1은 일 실시 예에 따른 인증 시스템을 도시한 도면이다.
도 2는 일 실시 예에 따른 멤버 OSP를 포함하는 시스템을 도시한 도면이다.
도 3은 일 실시 예에 따른 EID의 발급 및 이를 활용한 인증방법을 설명하기 위한 도면이다.
도 4는 일 실시 예에 따라 2차인증을 위해 디바이스를 등록하는 방법을 도시한 도면이다.
도 5는 2차인증을 위한 OSP의 사용자 등록방법을 도시한 도면이다.
도 6은 일 실시 예에 따른 2차인증 수행방법을 도시한 도면이다.
도 7은 일 실시 예에 따른 인증수단을 이용하는 사용자에게 보상을 지급하는 방법을 도시한 개념도이다.
도 8은 일 실시 예에 따른 BCE(BaaS Currency Exchange) 및 이를 포함하는 시스템을 도시한 도면이다.
도 9는 일 실시 예에 따른 OSP 및 이를 포함하는 시스템의 동작을 도시한 흐름도이다.
도 10은 일 실시 예에 따른 사용자 단말의 월렛 및 이를 포함하는 시스템의 동작을 도시한 흐름도이다.
도 11은 일 실시 예에 따른 BCE의 계정관리 방법을 설명하기 위한 도면이다.
도 12는 일 실시 예에 따른 사용자의 월렛을 도시한 개념도이다.
도 13은 월렛의 신분증 기능을 제공하는 화면의 일 예를 도시한 도면이다.
도 14는 월렛의 전자지갑 기능을 제공하는 화면의 일 예를 도시한 도면이다.
도 15는 월렛의 드라이브 기능을 제공하는 화면의 일 예를 도시한 도면이다.
도 16은 일 실시 예에 따른 데이터 분산저장 및 조합방법을 도시한 도면이다.
도 17은 일 실시 예에 따른 데이터의 전처리 및 후처리 방법을 설명하기 위한 도면이다.
도 18은 일 실시 예에 따른 분산저장 및 조합을 통한 인증시스템을 도시한 도면이다.
도 19는 일 실시 예에 따른 비식별화 방법을 도시한 도면이다.
도 20은 일 실시 예에 따른 연결자에 기반한 데이터 분산저장 및 조합방법을 도시한 도면이다.
도 21은 일 실시 예에 따라 사용자 단말을 포함하는 데이터의 분산저장 시스템을 도시한 도면이다.
도 22는 일 실시 예에 따른 사용자 단말을 포함하는 분산저장 시스템에서 조합을 통해 데이터를 획득하는 방법을 도시한 도면이다.
도 23은 일 실시 예에 따른 일회성 인증방법을 도시한 도면이다.
도 24는 개시된 실시 예에 따른 시스템을 이용하여 인증정보 또는 파일을 분산저장 및 조합하여 이용하는 방법을 도시한 흐름도이다.
도 25는 일 실시 예에 따른 컴퓨팅 파워 제공 및 이에 대한 보상방법을 도시한 도면이다.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나, 본 발명은 이하에서 개시되는 실시예들에 제한되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술 분야의 통상의 기술자에게 본 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다.
본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises)" 및/또는 "포함하는(comprising)"은 언급된 구성요소 외에 하나 이상의 다른 구성요소의 존재 또는 추가를 배제하지 않는다. 명세서 전체에 걸쳐 동일한 도면 부호는 동일한 구성 요소를 지칭하며, "및/또는"은 언급된 구성요소들의 각각 및 하나 이상의 모든 조합을 포함한다. 비록 "제1", "제2" 등이 다양한 구성요소들을 서술하기 위해서 사용되나, 이들 구성요소들은 이들 용어에 의해 제한되지 않음은 물론이다. 이들 용어들은 단지 하나의 구성요소를 다른 구성요소와 구별하기 위하여 사용하는 것이다. 따라서, 이하에서 언급되는 제1 구성요소는 본 발명의 기술적 사상 내에서 제2 구성요소일 수도 있음은 물론이다.
다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술분야의 통상의 기술자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있을 것이다. 또한, 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다.
명세서에서 사용되는 "부" 또는 “모듈”이라는 용어는 소프트웨어, FPGA 또는 ASIC과 같은 하드웨어 구성요소를 의미하며, "부" 또는 “모듈”은 어떤 역할들을 수행한다. 그렇지만 "부" 또는 “모듈”은 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. "부" 또는 “모듈”은 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서 "부" 또는 “모듈”은 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로 코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들 및 변수들을 포함한다. 구성요소들과 "부" 또는 “모듈”들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 "부" 또는 “모듈”들로 결합되거나 추가적인 구성요소들과 "부" 또는 “모듈”들로 더 분리될 수 있다.
본 명세서에서, 컴퓨터는 적어도 하나의 프로세서를 포함하는 모든 종류의 하드웨어 장치를 의미하는 것이고, 실시 예에 따라 해당 하드웨어 장치에서 동작하는 소프트웨어적 구성도 포괄하는 의미로서 이해될 수 있다. 예를 들어, 컴퓨터는 스마트폰, 태블릿 PC, 데스크톱, 노트북 및 각 장치에서 구동되는 사용자 클라이언트 및 애플리케이션을 모두 포함하는 의미로서 이해될 수 있으며, 또한 이에 제한되는 것은 아니다.
이하, 첨부된 도면을 참조하여 본 발명의 실시예를 상세하게 설명한다.
본 명세서에서 설명되는 각 단계들은 컴퓨터에 의하여 수행되는 것으로 설명되나, 각 단계의 주체는 이에 제한되는 것은 아니며, 실시 예에 따라 각 단계들의 적어도 일부가 서로 다른 장치에서 수행될 수도 있다.
개시되는 기술의 상세한 내용을 기술하기에 앞서, 사용되는 용어들의 정의와 배경 및 기술의 목적을 선행하여 서술한다.
BaaS는 Blockchain as a Service의 약어로서, 블록체인 기술로 갖춰진 인프라를 일반에 제공하여, 개인이나 기업이 블록체인 기술의 이점을 손쉽게 이용할 수 있도록 하는 기술을 지칭하기 위해 제시된 개념어이다.
본 명세서에서, BaaS는 개시된 실시 예에 따른 서비스 및 시스템을 제공하는 주체를 나타내는 의미로도 이해될 수 있다. 예를 들어, 본 명세서에서 개시된 실시 예에 따른 서비스 및 시스템을 제공, 운영 및 관리하는 서버를 BaaS 서버라고 칭할 수 있으며, 개시된 실시 예에서 이용되는 블록체인을 BaaS 체인이라고 칭할 수도 있다. 또한, 개시된 실시 예에 따른 블록체인 시스템에서 이용 및 제공되는 암호화폐를 BAAS 코인이라고 칭할 수 있다.
본 발명은 이와 조합되어 하나의 블록체인 기술 생태계를 이루는 집단적 기술의 일부를 구성한다. 상술한 블록체인 기술 생태계를 통해 구현하고자 하는 모습의 개괄은 다음과 같다.
사용자는 개인정보에 기반하여 상술한 블록체인 생태계에서 널리 사용할 수 있는 계정정보를 생성할 수 있다. 이렇게 생성한 개인정보를 토대로, 사용자는 BaaS 생태계와 연결된 다른 OSP(Online Service Provider)에서도 별도의 회원가입 등의 절차 없이 인증된 사용자로서 서비스를 이용할 수 있다.
상술한 개인정보 및 계정정보 등은 암호화된 이후 임의적으로 분산되어 블록체인 상에 저장된다. 이러한 임의적인 분산을 전제로 사용자의 정보는 원본이 존재하지 않는 상태에서 필요시에만 일시적으로 재조합되어 사용되며, 재조합 또한 사용자의 생체정보 또는 소유기반 인증도구에 의하므로 사용자 외에는 원본의 열람 또는 접근 등이 불가능한 구조를 구현하였다.
이처럼 고도한 안정성에 기반하여, 사용자는 시스템 상에서 월렛을 개설하고 재산정보를 관리할 수 있다. 이를 통하여 다른 OSP들이 제공하는 서비스 또는 재화를 구매할 수 있으며, 각종 암호화폐 거래 및 실물 화폐와 교환할 수 있다.
또한 사용자는 상술한 분산저장 및 제한적 재조합의 기술을 이용하여 각종의 디지털 정보를 분산 저장할 수 있다. 이렇게 분산 저장된 정보는, 보편화된 클라우드 서비스와는 달리, 본인이 인증하여 재조합 하지 않으면 서비스 제공자라고 하더라도 정보에 접근, 열람, 수정, 저장, 배포, 삭제 등의 동작을 수행할 수 없다. 이는 상술한 바와 마찬가지로, 본인이 아니면 원본 데이터에 접근 자체가 불가능하기 때문이다.
극단적으로는 BaaS 시스템을 제공하는 모든 서버가 탈취된다고 하더라도, 블록체인 상에 분산 저장된 정보는 마치 순서가 망실된 상태로 한 글자씩 파쇄된 책의 종이뭉치와 같은 상태이므로, 사용자의 인증없이는 분산된 데이터를 제대로 된 순서와 방법으로 조합할 수 없다.
이처럼 사용자는 자신의 재정을 비롯한 각종 정보에 관해 극히 고도한 안정성을 담보할 수 있으며, 지문과 같은 자신의 생체정보와 스마트폰과 같은 소유기반 인증도구에 의한 손쉬운 인증과정에 기반하여 편의성을 동시에 확보할 수 있다.
도 1은 일 실시 예에 따른 인증 시스템을 도시한 도면이다.
도 1을 참조하면, 사용자 단말, OSP(Online Service Provider) 및 인증서버가 도시되어 있다.
개시된 실시 예에서, 사용자 단말은 상술한 컴퓨터의 일종일 수 있으며, 예를 들어 사용자가 이용하는 퍼스널 컴퓨터 혹은 스마트폰일 수 있으나, 이에 제한되는 것은 아니다.
개시된 실시 예에서, OSP는 온라인을 통해 특정한 서비스 및 플랫폼을 제공하는 제공자를 의미할 수 있으며, 제공되는 서비스 및 플랫폼의 종류는 제한되지 않는다. 예를 들어, OSP는 포털, 금융, 학습, 쇼핑 등의 서비스를 온라인을 통해 제공하는 주체 및 이에 기반하여 제공되는 서비스 및 플랫폼을 의미할 수 있으나, 이에 제한되는 것은 아니다.
또한, BSP(Blockchain Service Provider)는 블록체인에 기반한 서비스를 제공하는 공급자를 의미할 수 있으며, 이하에서 설명되는 OSP와 관련된 동작 및 단계들은 BSP에 의하여서도 수행될 수 있다.
개시된 실시 예에서, 인증서버는 블록체인에 기반하여 인증을 수행하는 개시된 실시 예에 따른 방법을 수행하는 서버를 의미할 수 있다. 서버는 상술한 컴퓨터의 일종일 수 있으나 이에 제한되는 것은 아니며, 클라우드 형태의 서버를 의미할 수도 있다.
일 실시 예에서, 사용자 단말은 인증서버를 통해 EID(Electrical ID: 전자 식별자)를 발급받을 수 있다.
사용자 단말은 발급받은 EID를 서로 다른 OSP에서 인증 수단으로 활용할 수 있다.
OSP는 사용자 단말로부터 EID에 기반한 인증 요청을 획득하는 경우, 이를 인증서버에 전달하여 인증을 요청한다. 인증서버에서 인증이 완료되고 인증서버로부터 인증에 대한 정보가 획득되는 경우, OSP는 인증서버의 인증 결과를 신뢰하여 사용자에 대한 인증이 완료된 것으로 판단할 수 있다.
예를 들어, 사용자 단말은 OSP의 서비스를 이용하기 위한 로그인을 요청하면서, 로그인 수단으로서 EID에 기반한 인증을 사용할 수 있다. OSP는 인증서버를 통해 사용자 단말에 대한 인증이 완료되는 경우, 사용자 단말의 로그인 요청을 승낙할 수 있다.
실시 예에 따라서, 사용자 단말은 OSP에서 제공되는 서비스를 이용하기 위해 OSP용 계정을 생성(즉, OSP에 회원가입)하고, 해당 계정에 대한 로그인 수단으로서 EID에 기반한 인증을 선택한 것일 수 있다.
이 경우, 사용자 단말이 OSP에 회원가입한 정보에 기반하여 1차적으로 로그인을 수행하고, 이후 EID에 기반한 2차 인증을 통해 OSP에 가입된 사용자 단말의 계정의 보안을 강화하는 수단으로도 EID에 기반한 인증이 활용될 수 있다. 이에 대한 구체적인 내용에 대해서는 후술한다.
다른 실시 예에서, 사용자 단말은 OSP에 대한 별도의 회원가입을 하지 않을 수 있고, 대신 EID에 기반한 인증을 통해 OSP에 최초로 로그인할 때, OSP는 사용자 단말에 대응하는 계정을 생성하고, 생성된 계정을 사용자 단말에 할당할 수 있다. 이후 사용자 단말이 EID에 기반한 인증을 통해 로그인하는 경우, OSP는 기 할당된 사용자 단말의 계정을 획득하고, 이에 기반하여 서비스를 제공할 수 있다.
도 2는 일 실시 예에 따른 멤버 OSP를 포함하는 시스템을 도시한 도면이다.
일 실시 예에서, OSP는 인증서버를 통해 EID(Electrical ID: 전자 식별자)를 발급받을 수 있다.
개시된 실시 예에서, EID를 발급받은 OSP를 멤버 OSP라고 칭할 수 있다.
멤버 OSP는 발급받은 EID를 이용하여 자체 EID를 발급할 수 있으며, 이는 발급받은 자신의 EID를 이용하여 서브 EID를 생성하는 것이다. 이 경우 EID를 사용할 수 있는 곳이 제한적일 수 있으며, 예를 들어 특정 OSP에서 발급된 EID는 해당 OSP에서만 인증에 사용할 수 있도록 구성될 수 있다.
도 3은 일 실시 예에 따른 EID의 발급 및 이를 활용한 인증방법을 설명하기 위한 도면이다.
도 3을 참조하면, 비회원 단말, OSP 회원 단말 및 BaaS 회원 단말이 도시되어 있다.
비회원 단말은 어디에서도 가입되거나 EID를 발급받은 적이 없는 비회원의 단말을 의미한다.
OSP 회원 단말은 OSP에 가입된 회원의 단말을 의미하며, 회원 가입 방식은 제한되지 않는다. 예를 들어, OSP의 회원은 ID 및 비밀번호에 기반하여 OSP에 가입하였을 수도 있고, 상술한 바와 같이 OSP의 EID를 이용하여 서브 EID를 발급받는 형태로 가입하였을 수도 있다.
BaaS 회원 단말은 개시된 실시 예에 따라 BaaS 인증 서버로부터 EID를 발급받은 회원을 의미할 수 있다.
개시된 실시 예에서, BaaS 인증 서버로부터 EID를 발급받은 BaaS 회원 단말은 EID를 이용하여 서로 다른 OSP에 별도의 회원가입 없이 로그인할 수 있다. 즉, 개시된 실시 예에서 BaaS 인증 서버로부터 발급받은 EID는 모든 웹 서비스에서 회원가입 없이 사용할 수 있는 온라인 통합 신분증으로서 기능할 수 있다.
또한, OSP 회원 단말은 OSP에 로그인시 OSP로부터 발급받은 EID를 제시하거나, BaaS 인증 서버로부터 발급받은 EID를 제시함으로써 OSP에 로그인할 수 있다. 실시 예에 따라, BaaS 인증 서버로부터 발급받은 EID는 OSP 로그인을 위한 2차인증 수단으로도 활용될 수 있다.
또한, 비회원 단말은 BaaS 인증서버로부터 EID를 발급받거나, OSP에 회원가입을 한 후 OSP에 로그인할 수 있다.
일 실시 예에서, BaaS 인증 서버는 EID를 발급받고자 하는 주체로부터 EID 발급을 위한 정보를 획득하고, 획득된 정보를 검증한 후 획득된 정보에 기반하여 EID를 생성 및 발급할 수 있다.
예를 들어, BaaS 인증 서버는 획득된 정보를 검증하여 EID 생성 여부를 결정하고, 결정 여부에 따라 생성 및 생성 거부를 결정할 수 있다. 생성 거부 메시지 또는 생성된 EID는 EID 발급을 신청한 사용자, OSP 또는 BSP에게 전달된다.
예를 들어, 사용자가 EID를 발급받고자 하는 경우, BaaS 인증 서버는 사용자의 개인식별정보(예를 들어, 이름, 전화번호, 주민등록번호, 생년월일 등의 개인정보, 민감정보, 생체정보 등)를 이용하여 EID를 생성할 수 있으며, 그 구체적인 방법은 제한되지 않는다. 예를 들어, EID는 문자와 숫자를 포함하는 특정 길이의 문자열일 수 있으나, 이에 제한되는 것은 아니다.
일 실시 예에서, EID는 다른 사용자와 겹치지 않도록 유일하게 생성되어야 하며, 이를 위하여 사용자의 개인정보에 기반하여 생성되는 고유값이 특정 위치에 삽입될 수 있다.
실시 예에 따라서, BaaS 인증 서버는 사용자 단말의 디바이스 정보를 획득하고, 사용자의 개인정보와 사용자 단말의 디바이스 정보를 함께 이용하여 EID를 생성할 수도 있다. 이 경우, 사용자 단말이 변경되는 경우 EID가 재생성되어야 할 수 있으나, 이에 제한되는 것은 아니다.
이외에도 다양한 정보들이 사용자의 EID를 생성하는 데 활용될 수 있다.
일 실시 예에서, 인증 서버는 사용자의 계정(Account) 생성 및 EID 생성을 위하여 인증절차를 진행할 수 있다.
인증절차는 복수의 단계를 포함할 수 있으며, 그 구체적인 구성은 제한되지 않는다. 예를 들어, 인증절차는 1단계 이메일 인증, 2단계 SMS 인증, 3단계 거주지 인증, 4단계 KYC(Know Your Customer) 인증, 5단계 계좌정보 인증을 포함할 수 있다. 일 실시 예에서, 1단계 이메일 인증이 완료되는 경우 인증서버는 사용자의 계정(Account)을 생성하여 발급하며, 4단계 이상의 인증이 완료되는 경우 인증서버는 EID를 발급할 수 있다.
또한, BaaS 인증 서버로부터 EID를 발급받은 멤버 OSP에 의하여 사용자의 서브 EID가 생성되는 경우, OSP는 자신의 EID를 함께 이용하여 사용자의 서브 EID를 생성할 수 있다.
멤버를 통하여 발급된 서브 EID는 BaaS 인증 서버를 통하여 발급받은 EID와 형식(예를 들어, 길이나 문자의 배치 등)이 상이할 수 있으며, 예를 들어 서브 EID를 발급한 멤버의 EID 정보가 기록되는 영역이 서브 EID에 포함될 수 있다.
이를 통해, 인증단계에서 서브 EID는 EID를 발급한 멤버의 EID 정보와 일치하는 EID를 보유한 멤버 OSP에서만 활용되도록 인증단계가 구성될 수 있다.
사용자는 발급받은 EID를 사용자 단말에 보관하며, 사용자 단말에는 EID 보관을 위한 전자 월렛(Wallet)이 설치될 수 있다. 개시된 실시 예에 따른 월렛은 이외에도 다양한 정보를 저장할 수 있을 뿐 아니라, 다양한 기능들을 수행할 수 있다. 개시된 실시 예에 따른 월렛에 대해서는 후술한다.
다른 예로, OSP와 같은 서비스 제공자가 EID를 발급받고자 하는 경우, BaaS 인증 서버는 OSP에 대한 정보를 OSP로부터 획득한다.
BaaS 인증 서버는 획득된 OSP 정보를 검증하여 EID 생성 여부를 결정하고, EID 생성이 결정되는 경우 생성된 EID를 OSP에게 전달한다.
OSP는 BaaS 인증 서버로부터 발급된 EID를 서버 또는 보안토큰 등의 장비에 저장할 수 있으나, 이에 제한되는 것은 아니다.
도 4는 일 실시 예에 따라 2차인증을 위해 디바이스를 등록하는 방법을 도시한 도면이다.
이하에서는 도면들을 참조하여 개시된 실시 예에 따른 2차인증을 수행하는 방법에 대하여 서술하나, 이는 2차인증뿐 아니라 단일 인증 혹은 2차 이상의 다차 인증에도 동일 또는 유사하게 활용될 수 있다.
개시된 실시 예에서, 2차인증은 등록된 디바이스에서만 사용이 가능하도록 구성된다. 따라서, 2차인증을 수행하기 전에 디바이스를 등록하는 과정이 선행되어야 하며, 디바이스가 변경되는 경우 등록 절차를 통해 디바이스를 등록하여야 한다.
도 4를 참조하면, 2차인증을 위한 시스템은 사용자 단말, 앱 마켓, 인증 플랫폼 및 인증 체인을 포함한다.
개시된 실시 예에서, 앱 마켓은 애플리케이션을 구매 및 다운로드할 수 있는 모든 종류의 플랫폼을 포괄하는 것으로 이해된다.
또한, 인증 플랫폼은 개시된 실시 예에 따른 2차인증 서비스를 제공하는 플랫폼으로서, 개시된 실시 예에 따른 2차인증 서비스를 제공하는 서버를 의미할 수도 있다.
실시 예에 따라서, 인증 플랫폼은 상술한 인증서버에 대응할 수 있다.
개시된 실시 예에서, 인증 체인은 개시된 인증 플랫폼에 기반한 인증 및 2차인증을 위해 필요한 정보들을 저장하기 위하여 이용되는 블록체인을 의미할 수 있다. 인증 체인의 구조 및 인증 체인에 정보를 저장하는 구체적인 방법에 대해서는 후술한다.
일 실시 예에서, 사용자 단말은 앱 마켓으로부터 2차인증을 위한 애플리케이션을 다운로드 및 설치할 수 있다. 단, 사용자 단말이 애플리케이션을 획득하는 경로가 앱 마켓으로 제한되는 것은 아니다.
일 실시 예에서, 사용자 단말이 다운로드 및 설치하는 애플리케이션은 상술한 월렛 애플리케이션일 수 있으나, 이에 제한되는 것은 아니다.
사용자 단말은 설치된 애플리케이션을 이용하여 계정(Account)을 생성하고, 실시 예에 따라 계정(Account)에 대응하는 월렛을 생성할 수 있다. 일 실시 예에서, 계정(Account)은 개시된 실시 예에 따른 전자지갑의 주소를 의미할 수 있으며, 이에 제한되는 것은 아니다.
일 실시 예에서, 계정(Account)은 문자와 숫자의 조합으로 이루어진 기 설정된 길이의 문자열(예를 들어, 12자리)로 구성될 수 있으나, 이에 제한되는 것은 아니다.
일 실시 예에서, 계정(Account) 생성시 이와 함께 사용자의 공개키와 개인키를 생성할 수 있고, 또한 계정의 복구를 위하여 이용되는 복구 코드를 생성 및 제공할 수 있다.
일 실시 예에서, BIP 39 표준에 기반한 12개의 단어를 포함하는 니모닉 코드(Mnemonic code)가 계정(Account)의 복구에 이용될 수 있으나, 이에 제한되는 것은 아니다. 예를 들어, 제공되는 12개의 단어에 기반하여 시드 키(Seed key)를 획득하고, 획득된 시드 키를 이용하여 사용자의 공개키와 개인키를 생성할 수 있다.
생성된 개인키는 개시된 실시 예에 따른 월렛의 안전공간(Safe Zone)에 안전하게 저장되며, 공개키는 블록체인을 통해 배포될 수 있다.
또한, 계정(Account) 생성 과정에서 별도 채널을 이용한 본인확인 과정이 수행될 수 있다. 예를 들어, 본인확인은 이메일 인증에 기반하여 수행될 수 있으며, 인증서버는 본인확인을 위하여 사용자의 이메일 주소로 6개의 인증코드를 발송하고, 사용자는 해당 인증코드를 입력함으로써 본인인증을 수행할 수 있다.
계정(Account) 생성이 완료된 후 간편 인증 수단으로서 패턴, 핀(PIN), 텍스트, 생체 정보 등이 선택적으로 입력될 수 있으며, 사용자는 해당 간편 인증 수단을 이용하여 애플리케이션을 실행할 수 있다.
일 실시 예에서, 사용자 단말에 의하여 수행되는 계정 생성방법에는 상술한 사용자 단말의 EID 획득방법이 활용될 수 있으나, 이에 제한되는 것은 아니다.
일 실시 예에서, 사용자 단말은 계정(Account)을 생성하고, 생성된 계정(Account)을 이용하여 상술한 인증서버로부터 EID를 발급받아 생성된 계정에 의하여 관리되는 월렛에 EID를 저장할 수 있다.
일 실시 예에서, 사용자 단말은 푸시 키(Push Key)를 생성할 수 있다.
사용자 단말은 생성된 푸시 키와 사용자 단말의 디바이스 정보를 인증 플랫폼에 전달하고, 인증 플랫폼에 디바이스 등록을 요청할 수 있다.
인증 플랫폼은 디바이스 정보를 인증 체인에 등록하고, 이에 대응하는 푸시 키를 저장할 수 있다.
도 5는 2차인증을 위한 OSP의 사용자 등록방법을 도시한 도면이다.
일 실시 예에서, OSP와 인증 플랫폼은 티켓정보를 공유한다. 예를 들어, 인증 플랫폼은 티켓 번호를 생성하고, 생성된 티켓 번호를 OSP에 발급할 수 있다. 다른 예로, OSP는 티켓을 발행하여 인증 플랫폼에 전송할 수 있다.
개시된 실시 예에서 티켓은 디바이스 정보를 OSP에 대응하여 인증 플랫폼에 등록하기 위하여 이용된다. 티켓의 형태 및 유형은 제한되지 않으며, 예를 들어 소정의 문자열이나 숫자 등으로 구성될 수 있다.
일 실시 예에서, 티켓은 특정 OSP를 다른 OSP와 구별하기 위하여 사용되는 OSP의 식별자로서 구성될 수 있으나, 이에 제한되는 것은 아니다.
인증 플랫폼 또는 OSP는 티켓 정보를 이용하여 QR 코드를 생성할 수 있다. 생성된 QR 코드는 사용자에게 전달되며, 사용자 단말은 전달된 QR 코드를 스캔할 수 있다. 예를 들어, 생성된 QR 코드는 사용자에게 전달되어 사용자가 이용하는 컴퓨터의 모니터에 표시될 수 있으며, 사용자 단말은 이를 스캔함으로써 QR 코드에 포함된 정보를 획득할 수 있다.
단, 티켓 정보를 사용자 단말에 전달하는 방법은 이에 제한되지 않으며, QR코드 외에 다양한 전자코드 혹은 데이터 암호화 및 송수신 수단들이 활용될 수 있다.
일 실시 예에서, QR코드는 티켓 정보와 함께 디바이스 등록을 위한 링크정보(예를 들어, URL)를 포함할 수 있다.
실시 예에 따라서, QR코드에는 티켓 정보와 링크정보가 함께 포함되고, 사용자 단말은 QR코드를 통해 획득된 티켓정보와 사용자 단말의 디바이스 정보를 링크정보를 통해 연결된 대상에 전달할 수 있다.
다른 실시 예에서, 티켓 정보에 대응하는 링크정보가 QR코드에 저장되고, 사용자 단말은 링크정보를 통하여 티켓 정보에 대응하는 대상(예를 들어, 웹페이지)에 접속한 후, 이를 통해 디바이스 정보를 인증 플랫폼에 제공할 수 있다. 이 경우, 인증 플랫폼은 디바이스 정보가 획득된 웹페이지에 대응하는 티켓정보를 디바이스 정보와 함께 획득할 수 있다.
인증 플랫폼은 OSP의 티켓정보와 사용자 단말의 디바이스 정보를 획득하고, 획득된 티켓정보 및 디바이스 정보를 이용하여 인증정보를 생성할 수 있다.
인증정보를 생성하는 방법은 제한되지 않으며, 티켓정보와 디바이스 정보를 조합하는 다양한 방법들이 이용될 수 있다.
인증 플랫폼은 생성된 인증정보를 인증 체인에 저장하고, 이에 대응하는 인증 토큰을 생성할 수 있다.
인증 토큰에 저장되는 정보의 종류는 제한되지 않으며, 예를 들어 티켓정보와 디바이스 정보, 또는 티켓정보와 디바이스 정보에 기반하여 생성된 정보가 저장될 수 있다. 또한, 인증 토큰에는 인증 체인에 저장된 인증정보를 획득하기 위하여 필요한 정보가 저장될 수 있다.
인증 플랫폼은 생성된 토큰을 OSP에 전달한다.
OSP는 인증 플랫폼으로부터 전달받은 토큰을 사용자 단말의 OSP 계정과 연결하여 저장하고, 디바이스 등록과정을 완료할 수 있다. OSP 계정은 사용자 단말이 OSP에 대한 회원가입을 통해 생성한 OSP의 계정을 의미할 수 있으나, 이에 제한되는 것은 아니다.
상술한 바와 같은 디바이스 등록과정은 OSP별로 최초에 1회 수행될 수 있으며, 소정의 기간이 도과하거나 사용자 단말이 다른 디바이스로 변경되었을 때 다시 수행될 수 있다.
도 6은 일 실시 예에 따른 2차인증 수행방법을 도시한 도면이다.
일 실시 예에서, 사용자 단말은 OSP에 대한 로그인 혹은 인증을 요청한다. 사용자 단말은 1차 인증수단을 이용하여 OSP에 대한 로그인 혹은 인증을 요청할 수 있으며, 예를 들어 사용자 단말은 계정 정보를 이용하여 OSP에 대해 로그인 혹은 인증을 요청할 수 있으나, 이에 제한되는 것은 아니다.
OSP는 사용자의 계정정보를 통해 인증 토큰을 조회하고, 2차 인증이 완료될 때까지 인증과정을 완료하지 않고 대기한다.
OSP는 인증 토큰을 인증 플랫폼에 전송하여 인증을 요청하고, 인증 플랫폼은 OSP로부터 전송된 인증 토큰을 이용하여 인증을 수행한 후, 인증 결과를 OSP에 전달한다. OSP는 인증 플랫폼으로부터 전달된 인증 결과에 따라 인증을 완료하거나, 재인증을 요청한다.
구체적으로, OSP는 사용자 인증 요청이 수신되는 경우 사용자의 계정정보에 대응하는 인증 토큰을 획득하고, 이를 인증 플랫폼에 전달할 수 있다.
또한, 인증 플랫폼은 인증 토큰을 포함하는 OSP의 인증 요청을 검증할 수 있다. 인증 요청에 대해 검증이 완료되는 경우, 인증 플랫폼은 인증 토큰에 포함된 정보에 기반하여 인증 체인에서 사용자 단말에 대응하는 디바이스 정보를 검색할 수 있다.
인증 체인에서 기 등록된 사용자 단말의 디바이스 정보가 획득되는 경우, 인증 플랫폼은 기 저장된 사용자 단말의 푸시 키를 획득하고, 획득된 푸시 키를 푸시 서버에 전달하여 사용자 단말에 푸시 메시지를 전송할 수 있다.
사용자 단말은 수신된 푸시 메시지에 따라 EID가 저장된 월렛을 실행시키고 EID에 기반한 인증과정을 개시하거나, 월렛이 이미 실행중인 경우 바로 EID에 기반한 인증과정을 개시한다.
인증 플랫폼에서 사용자 단말의 EID에 기반한 인증이 완료되는 경우, 인증 플랫폼은 OSP에 인증 결과를 전송(Call Back)할 수 있다.
OSP는 인증 플랫폼에서 전송된 인증 결과에 따라 인증 절차를 마무리하거나, 재인증을 요청할 수 있다.
개시된 실시 예에 따른 인증 수단 및 이를 활용한 인증절차는 상술한 바와 같이 OSP의 2차인증에 활용될 수 있으나 이에 제한되지 않으며, 예를 들어 서로 다른 OSP에서의 1차 인증에 활용되어, 사용자 단말에 저장된 EID에 기반한 SSO(Single Sign On)을 구현하는 데에도 활용될 수 있다.
도 7은 일 실시 예에 따른 인증수단을 이용하는 사용자에게 보상을 지급하는 방법을 도시한 개념도이다.
도 7을 참조하면, 도 1에 도시된 바와 같은 인증시스템이 도시되어 있다.
개시된 실시 예에서, BAAS는 BAAS Coin으로서, 개시된 실시 예에 따른 서비스에서 제공되는 암호화폐를 의미한다.
또한, BIDT는 BaaS ID Token의 약자로, 개시된 실시 예에 따른 인증시스템에서 사용자 보상을 위해 이용되는 토큰을 의미한다.
일 실시 예에서, OSP는 인증서버로부터 BIDT를 구매한다. OSP는 인증서버로부터 구매한 BIDT를 직접 수령 및 보유할 수도 있고, BIDT를 사용자에게 지급할 권한을 구매하되, 이에 해당하는 BIDT를 직접 보관하지는 않을 수도 있다.
개시된 실시 예에서, OSP는 인증서버를 통해 제공되는 인증시스템을 이용하는 대가로서 BIDT를 구매할 수 있다. OSP는 BIDT를 구매하고, OSP에서 인증서버를 통한 인증을 요청하는 사용자에게 인증서비스 이용에 대한 보상으로서 BIDT를 지급할 수 있다. 지급되는 BIDT의 양은 제한되지 않으나, 예를 들어 인증요청시마다 0.01 BIDT가 지급될 수 있다.
구매한 BIDT가 소진되면, OSP는 인증서비스 이용을 위하여 BIDT를 추가로 구매하여야 한다.
일 실시 예에서, BIDT 획득을 위한 과도한 인증요청이 있을 수 있다. 따라서, 1인당 인증요청을 통해 BIDT를 획득할 수 있는 횟수 또는 그 양이 제한될 수 있다.
예를 들어, 1인당 하루에 최대 0.05 BIDT를 지급받을 수 있는 것으로 제한될 수 있다.
다른 예로, 1인당 BIDT를 획득할 수 있는 횟수가 OSP별로 혹은 개인별로 제한될 수도 있으며, 이에 제한되는 것은 아니다.
또한, 1인당 1시간 이내 3회까지 재 로그인 또는 인증 요청시 추가 BIDT를 지급하지 않도록 설정되는 것과 같이 소정의 시간범위 내 반복횟수에 제한을 둘 수도 있다.
사용자 단말은 상술한 바와 같은 월렛을 구비하며, OSP에 인증요청을 할 때마다 OSP 또는 인증서버로부터 BIDT를 지급받는다. 사용자 단말은 지급받은 BIDT를 월렛에 저장할 수 있다.
사용자 단말은 소정의 BIDT가 모이면 이를 BAAS로 교환해줄 것을 인증서버에 요청할 수 있다. 인증서버는 사용자 단말로부터 BIDT를 받고, 이에 대응하는 BAAS를 사용자 단말에 지급할 수 있다.
예를 들어, 1,000BIDT가 1BAAS로 교환될 수 있으나, 이에 제한되는 것은 아니다.
사용자 단말은 획득된 BAAS를 월렛에 저장할 수 있다.
도 8은 일 실시 예에 따른 BCE(BaaS Currency Exchange) 및 이를 포함하는 시스템을 도시한 도면이다.
개시된 실시 예에서, BCE를 통하여 관리 및 제공되는 암호화폐는 BAAS(BAAS Coin), BIDT(BaaS ID Token) 및 BRC(BaaS Reward Coin)을 포함할 수 있다.
도 8을 참조하면, BCE, 사용자 단말, OSP, BP(Block Producer) 및 각각의 암호화폐를 관리하는 BAAS 관리부, BRC 관리부 및 BIDT 관리부가 도시되어 있다.
일 실시 예에서, BP는 Block Producer, 즉 블록 생성자를 의미한다. 예를 들어 DPoS(Delegated Proof of Stake: 위임지분증명) 방식의 블록체인의 경우 투표를 통해 정해진 수(예를 들어, 21개)의 블록 생성자를 결정한다.
블록 생성자에게는 보상이 지급되는데, 개시된 실시 예에서 블록 생성자에게는 BRC가 보상으로 지급될 수 있다.
이외에도 개시된 실시 예에 따른 시스템에 기반한 다양한 DApp이 제작 및 배포되어 이용될 수 있는데, 이 경우 각각의 DApp에서는 BRC를 이용한 보상을 지급할 수 있다.
BCE는 각 암호화폐의 구매, 지급 및 환전을 관리한다.
일 실시 예에서, BAAS는 개시된 실시 예에 따른 시스템의 메인 암호화폐이고, BIDT 및 BRC는 시스템 이용자 및 구성원들에 대한 보상을 위해 이용되는 암호화폐일 수 있다.
BIDT 및 BRC는 일정 개수가 모이면 BAAS와 교환될 수 있으며, 이러한 교환은 BCE를 통하여 수행될 수 있다.
BaaS Relay는 사용자 단말, OSP 및 BP와 각각의 암호화폐 관리부를 중개하며, 암호화폐의 구매 요청 및 환전 요청을 중개하는 역할을 수행한다.
일 실시 예에서, BCE는 사용자 단말의 BRC 구매 요청을 BRC 코인 관리부에 전달하고, BRC 코인 관리부로부터 지급받은 BRC를 사용자 단말에 전달할 수 있다.
또한, BCE는 사용자 단말의 BIDT에 기반한 BAAS 교환 요청이 수신되면 이를 BIDT 관리부에 전달하고, BIDT 관리부는 사용자 단말의 BIDT를 BAAS로 교환하여 지급한다. BCE는 BIDT 관리부로부터 지급받은 BAAS를 사용자 단말에 전달할 수 있다. 일 실시 예에서, BIDT 관리부는 BIDT를 BAAS로 교환해주기 위한 BAAS를 보유할 수 있다.
또한, BCE는 OSP의 BIDT 구매 요청을 획득하고, 이를 직접 보유하여 관리하거나, BIDT 관리부에 전달할 수 있다.
이후 OSP로부터 인증 요청 및 이에 따른 BIDT 지급 요청이 획득되는 경우, BCE는 이를 BIDT 관리부에 전달하고, BIDT 관리부로부터 BIDT를 지급받아 사용자 단말에 전달할 수 있다.
이 과정에서, BCE 또는 BIDT 관리부는 OSP가 구매한 BIDT 한도 내에서 BIDT가 지급되는지 여부를 판단하고, 한도를 초과한 경우 OSP에게 BIDT 추가구매를 요청할 수 있다.
또한, BCE는 BP로부터 BRC 교환 요청을 수신하고, 이를 BRC 관리부에 전달할 수 있다. BRC 관리부는 BRC를 BAAS로 교환하여 지급할 수 있고, BCE는 BRC 관리부로부터 지급된 BAAS를 BP에 지급할 수 있다. BRC 관리부는 BRC를 BAAS로 교환해주기 위한 BAAS를 보유할 수 있다.
상술한 실시 예에서, BAAS 및 BRC의 구매는 현금(예를 들어, USD)을 통해 이루어질 수 있으나, 이에 제한되는 것은 아니다.
또한, BIDT의 구매 또한 현금을 통해 직접 구매도 가능할 수 있으나, 실시 예에 따라 BIDT의 구매는 BAAS의 구매를 통해 이에 대응하는 BIDT를 획득하거나, 이에 대응하는 BIDT를 지급할 수 있는 권한을 획득할 수 있다.
도 9는 일 실시 예에 따른 OSP 및 이를 포함하는 시스템의 동작을 도시한 흐름도이다.
일 실시 예에서, OSP는 인증 서버에 서비스 가입 및 이용을 신청한다. 인증 서버는 OSP의 계정인 AccountOSP를 확인하고, 서비스 이용 요청에 대하여 회신한다.
일 실시 예에서, 인증 서버는 OSP에 서비스 이용을 위한 BAAS의 충전을 요청한다.
일 실시 예에서, OSP는 AccountOSP에 대한 정보와 함께, BAAS를 구매하기 위한 금액(예를 들어, USD)을 인증 서버에 전송한다.
일 실시 예에서, 인증 서버는 AccountOSP에 대한 정보와 USD의 입금을 확인한다. 확인이 완료되는 경우, 인증 서버는 BCE에 BAAS의 충전을 요청하며, AccountOSP에 대한 정보와 USD의 입금정보를 전달한다.
BCE는 수신된 AccountOSP에 대한 정보와 USD의 입금, 그리고 정책 정보를 확인한 후, AccountOSP의 BAAS를 관리하기 위한 계정인 AccountOSP_BAAS 계정을 생성할 수 있다.
BCE는 BAAS 관리부에 AccountOSP_BAAS 계정 및 입금된 USD에 대한 정보를 전달하고, BAAS의 충전을 요청할 수 있다.
BAAS 관리부는 AccountOSP_BAAS 계정 및 입금된 USD에 대한 정보를 확인하고, AccountOSP_BAAS 계정에 BAAS를 충전함으로써 충전과정을 완료할 수 있다.
나아가, BCE는 OSP의 서비스 이용에 필요한 BIDT를 충전하기 위하여 AccountOSP_BIDT 계정을 생성할 수 있다.
또한, BCE는 BIDT 관리부에 대하여 AccountOSP_BIDT 계정에 대한 정보 및 AccountOSP_BIDT 계정에 충전된 BAAS를 제공하며 BIDT의 충전(구매)을 요청할 수 있다.
BIDT 관리부는 AccountOSP_BIDT 계정 정보 및 AccountOSP_BAAS 계정으로부터 입금된 BAAS를 확인하고, 이에 대응하는 BIDT를 AccountOSP_BIDT 계정에 지급할 수 있다.
이후, BCE는 BIDT 충전이 완료되었다는 사실을 인증 서버에 전달하고, 인증 서버는 OSP에 대하여 서비스 이용을 위한 준비가 완료되었음을 알릴 수 있다.
도 10은 일 실시 예에 따른 사용자 단말의 월렛 및 이를 포함하는 시스템의 동작을 도시한 흐름도이다.
일 실시 예에서, 사용자 단말은 설치된 월렛을 통해 생성된 사용자의 계정인 AccountUSER를 이용해 OSP에 서비스 사용을 신청할 수 있다.
OSP는 인증 서버에 AccountUSER의 정보 확인을 요청할 수 있다.
인증 서버는 AccountUSER정보를 확인하고, 확인 결과를 OSP 및 사용자 단말에 전달할 수 있다. 확인 결과는 인증 성공 또는 실패여부에 대한 정보를 포함할 수 있다.
또한, 인증 서버는 BCE에 인증 수행에 따른 BIDT 지급 요청을 수행할 수 있다. 일 실시 예에서, 인증 서버는 BCE에 AccountUSER정보 및 AccountOSP에 대한 정보를 전달할 수 있다.
BCE는 AccountOSP_BIDT 계정에 충전된 잔액 및 정책을 확인하고, 이에 따라 사용자 단말에 BIDT를 지급할 수 있다.
일 실시 예에서, BCE는 BIDT 관리부에 대하여 사용자 단말에 지급한 BIDT에 대응하는 비용을 요청할 수 있다. BIDT 관리부는 AccountOSP_BAAS 계정에 충전된 BAAS를 지급함으로써 BCE에 비용을 지급할 수 있다.
일 실시 예에서, BCE는 사용자 단말로부터 BIDT를 BAAS로 교환해줄 것을 요청받을 수 있다. 이 경우, BCE는 환전 정책을 확인하고, 사용자 단말에 BAAS를 지급할 수 있다.
이후, BCE는 BIDT를 BIDT 관리부에 제공하고, BIDT 관리부는 이에 대응하는 BAAS를 BCE에 지급할 수 있다.
도 11은 일 실시 예에 따른 BCE의 계정관리 방법을 설명하기 위한 도면이다.
도 11을 참조하면, 도 8에 도시된 바와 같은 BCE의 구조가 도시되어 있다.
일 실시 예에서, OSP는 BCE에게 AccountOSP를 전달하고, BCE는 OSP의 AccountOSP를 이용하여 서브 계정인 AccountOSP_BAAS와 AccountOSP_BIDT를 생성할 수 있다.
BCE는 OSP에 대한 서브 계정들을 생성한 후, 각각의 서브 계정에 OSP의 BAAS 및 BIDT를 보관할 수 있다.
마찬가지로, BCE는 BP로부터 BP의 계정인 AccountBP를 획득하고, 서브 계정인 AccountBP_BAAS 및 AccountBP_BRC를 생성할 수 있다. 마찬가지로, BCE는 각각의 서브 계정에 BP의 BAAS 및 BRC를 저장할 수 있다.
일 실시 예에서, BaaS Relay는 OSP 계정 및 USD 입금을 확인한다.
예를 들어, BaaS Relay는 서로 다른 OSP 계정인 Account1OSP, Account2OSP, Account3OSP 등을 관리할 수 있다.
또한, BaaS Relay는 외부 요청이 획득되는 경우 이를 BAAS 관리부, BRC 관리부 및 BIDT 관리부 중 각 요청에 대응하는 주체에 요청을 전달할 수 있다.
BAAS 관리부는 서브 계정인 Account1OSP_BAAS, Account2OSP_BAAS, Account3OSP_BAAS 등을 관리할 수 있다.
BRC 관리부는 서브 계정인 Account1BP_BRC, Account2 BP_BRC, Account3 BP_BRC 등을 관리할 수 있다.
BIDT 관리부는 서브 계정인 Account1OSP_BIDT, Account2OSP_BIDT, Account3OSP_BIDT 등을 관리할 수 있다.
도 12는 일 실시 예에 따른 사용자의 월렛을 도시한 개념도이다.
상술한 바와 같이, 사용자 단말에는 개시된 실시 예에 따른 서비스 및 시스템을 이용하기 위한 애플리케이션이 설치된다. 본 명세서에서, 월렛은 상술한 애플리케이션에 의하여 생성 및 저장되고, 인증정보 및 암호화폐 등을 저장하는 데 활용되는 일련의 전자지갑을 의미할 수 있다.
또한, 본 명세서에서, 월렛은 상술한 애플리케이션 자체를 의미할 수도 있으며, 이는 사용자의 인증정보뿐 아니라 다양한 암호화폐의 저장기능, 클라우드 저장공간(드라이브) 기능 등을 포함하는 일종의 “슈퍼 월렛”을 의미할 수도 있으며, 월렛의 구체적인 구성 및 기능은 제한되지 않는다.
일 실시 예에서, 사용자 단말에 설치된 애플리케이션에 로그인하여 개시된 실시 예에 따른 시스템에 의하여 제공되는 서비스를 이용하기 위한 계정에 해당하는 BaaSid가 사용자에게 부여될 수 있다. 사용자는 BaaSid를 이용하여 애플리케이션에 로그인할 수 있으며, 이후 개시된 실시 예에 따른 애플리케이션의 서비스를 이용할 수 있다.
일 실시 예에서, BaaSid 인증을 위한 간편 인증 수단으로서 패턴, 핀(PIN), 텍스트, 생체 정보 등이 선택적으로 입력될 수 있으며, 사용자는 해당 간편 인증 수단을 이용하여 애플리케이션을 실행할 수도 있다.
도 12를 참조하면, 개시된 실시 예에 따른 월렛에서 제공할 수 있는 기능들이 도시되어 있다.
기존의 블록체인 지갑(월렛)은 단순히 이체, 송금, 잔고확인 정도의 기능을 수행하였으나, 개시된 실시 예에 따른 월렛은 다양한 암호화폐의 보관 및 거래, EID 및 신분증 기능, 웹사이트 로그인, 클라우드 드라이브 등 다양한 기능을 수행할 수 있다.
특히, 드라이브의 경우 블록체인 및 분산저장에 기반한 보안기능을 제공하여, 기존의 드라이브와 달리 사용자 단말 및 월렛에 저장된 인증수단 없이는 서버 관리자도 그 내용을 확인할 수 없도록 하는 것을 특징으로 하며, 이에 대한 구체적인 내용은 후술한다.
나아가, 월렛은 사용자의 개인정보, 인증정보, 카드결제 정보 등 보안이 필요한 모든 정보를 저장할 수 있으며, 이에 기반한 다양한 서비스를 제공하되, 다른 서비스들에 비해 높은 수준의 보안성을 제공할 수 있는 것을 특징으로 한다.
도 13은 월렛의 신분증 기능을 제공하는 화면의 일 예를 도시한 도면이다.
도 13을 참조하면, 사용자 단말에서 월렛 애플리케이션이 실행되는 화면의 일 예가 도시되어 있다.
일 실시 예에서, 월렛 애플리케이션은 ID탭, 월렛 탭 및 드라이브 탭과 개인 설정 탭을 포함할 수 있으나, 이에 제한되는 것은 아니다.
도 13에 도시된 화면은 ID탭을 선택한 경우 표시되는 화면의 일 예이다.
일 실시 예에서, ID 탭 화면에는 개인 인증정보를 포함하는 전자 신분증이 표시될 수 있다. 전자 신분증에 포함되는 정보는 제한되지 않으나, 사용자의 사진, 이름, 국적, 생년월일 및 발급일자 등에 대한 정보가 포함될 수 있다.
화면에 표시되는 정보 외에도, 월렛 애플리케이션에는 사용자의 계정 정보와 EID 등 인증정보가 저장될 수 있으며, 웹사이트 로그인 혹은 본인인증 등을 위해 인증정보가 필요한 경우 월렛 애플리케이션은 저장된 인증정보 및 인증을 위하여 필요한 기타 정보들을 인증 주체에 전송할 수 있다.
실시 예에 따라서, 도 13에 도시된 전자 신분증은 온라인 및 오프라인 양측에서 사용될 수도 있으나, 온라인에서만 사용 가능한 것으로 그 용도가 제한될 수도 있다. 나아가, 도 13에 도시된 전자 신분증 및 월렛에 저장된 인증정보는 웹사이트의 로그인에만 사용할 수 있도록 그 용도가 제한될 수도 있으며, 이 경우 본인인증 등 기타 인증에는 사용할 수 없도록 용도가 제한될 수도 있다.
이외에도 전자 신분증을 사용할 수 있는 대상 및 그 용도는 기 설정된 기준에 따라 제한될 수 있다.
또한, 도 13에 도시된 도면을 참조하면 사용자에게 제공할 공지사항 또는 알림정보와, 과거의 애플리케이션, 신분증 및 인증정보 등의 이용 히스토리가 표시될 수 있다.
화면에 표시되는 정보의 종류는 제한되지 않으며, 기 설정된 목록 내에서 사용자가 선택한 정보들이 선별적으로 화면에 표시될 수도 있다.
일 실시 예에서, 사용자의 계정별로 등급이 부여될 수 있다. 예를 들어, 사용자의 등급은 보유한 BAAS 또는 BIDT의 양, 개시된 실시 예에 따른 서비스 이용횟수 및 기간 등 다양한 기준에 기반하여 산정 및 부여될 수 있으며, 이에 제한되는 것은 아니다.
일 실시 예에서, 각 사용자에게 등급별로 상이한 혜택이 주어질 수 있다. 예를 들어, 사용자의 등급이 높을수록 하루에 보상으로 획득할 수 있는 BIDT의 양이나 BIDT를 획득할 수 있는 횟수가 증가할 수 있으나, 이에 제한되는 것은 아니다. 다른 예로, 사용자의 등급이 높을수록 암호화폐 거래에 따른 수수료가 감면될 수도 있다.
또한, 사용자의 등급이 높을수록 개시된 실시 예에 따른 전자 신분증을 사용할 수 있는 대상이 확대될 수도 있다. 예를 들어, 낮은 등급의 경우 전자 신분증을 특정 웹 사이트에서의 로그인에만 활용할 수 있지만, 등급이 높아질수록 전자 신분증을 이용하여 로그인할 수 있는 웹사이트의 종류가 다양해질 수 있다. 또한, 등급이 높아지면 전자 신분증을 이용하여 로그인뿐 아니라 본인인증을 수행할 수도 있으며, 그 외에도 전자 신분증을 이용할 수 있는 분야가 넓어질 수 있으나, 이에 제한되는 것은 아니다.
도 14는 월렛의 전자지갑 기능을 제공하는 화면의 일 예를 도시한 도면이다.
도 14를 참조하면, 월렛에 저장된, 혹은 저장될 수 있는 하나 이상의 암호화폐에 대한 정보가 화면에 표시되어 있다. 화면에 표시되는 암호화폐의 종류는 제한되지 않으며, 월렛에 저장되거나 저장될 수 있는 하나 이상의 암호화폐 중 사용자가 선택한 암호화폐의 목록이 표시될 수 있다.
또한, 실시 예에 따라 월렛에 한 번 이상 저장되었던 암호화폐들의 목록이 화면에 표시될 수 있으며, 이외에도 다양한 기준에 따라 암호화폐들이 화면에 표시될 수 있다.
일 실시 예에서, 화면에는 상술한 BAAS 코인이 표시될 수 있으며, 코인의 보유량 및 이에 해당하는 현금가치 혹은 코인 1개당 현재 시세가 표시될 수도 있으며, 표시되는 정보의 종류는 제한되지 않는다.
이외에도, BIDT와 같은 토큰 및 그 보유량이 월렛에 표시될 수도 있다.
일 실시 예에서, BIDT와 같이 직접 현금으로 교환되지 않을 수 있는 형태의 암호화폐라 할지라도 그 교환가치를 산정하여 현금가치가 화면에 표시될 수도 있다.
실시 예에 따라서, 사용자가 보유한 암호화폐라 할지라도 화면에 표시되지 않고 숨겨질 수 있으며, 각각의 암호화폐 보유량 또한 화면에 표시될 수도 있으나, 사용자의 선택에 따라 표시되지 않을 수도 있다.
도 15는 월렛의 드라이브 기능을 제공하는 화면의 일 예를 도시한 도면이다.
도 15를 참조하면, 월렛의 드라이브를 통해 제공하는 하나 이상의 항목의 카테고리가 화면에 표시될 수 있다.
예를 들어, 드라이브를 통해 저장 및 제공될 수 있는 항목의 카테고리는 메모, 패스워드, 문서, 사진, 신용카드 및 동영상 등을 포함할 수 있으나, 이에 제한되는 것은 아니다.
상술한 바와 같이, 드라이브를 통해 저장되는 정보는 블록체인에 기반하여 분산저장되므로, 일반적인 저장매체 혹은 클라우드 저장공간에 비해 높은 보안성을 제공한다.
블록체인에 기반한 데이터의 분산저장 방법에 대해서는 후술한다.
또한, 사용자 단말에 저장된 정보가 없으면 드라이브 관리자 및 서버에서도 그 내용을 확인하는 것이 불가능하며, 사용자 단말에 저장된 정보는 사용자를 통해 제공되는 인증정보(예를 들어, 생체정보 등) 없이는 접근이 불가능하도록 설정된다.
예를 들어, 개시된 실시 예에 따른 애플리케이션을 실행할 때 사용자 단말은 사용자에게 인증정보 제공을 요청할 수 있다. 또한, 웹사이트 로그인, 본인인증 및 드라이브 접근 등을 위해 애플리케이션에 기반한 인증을 수행할 때, 사용자 단말은 사용자에게 인증정보 제공을 요청할 수 있다.
따라서, 사용자 단말이 분실되는 경우 혹은 타인에 의하여 사용자 단말이 이용되는 경우에도 드라이브에 저장된 정보는 획득이 불가능하도록 설정되며, 오직 사용자 본인이 직접 사용자 단말을 이용하는 경우에만 드라이브에 저장된 정보들을 확인할 수 있도록 구성된다.
따라서, 사용자는 일반적인 문서, 파일이나 메모 외에도 외부에 공개할 수 없는 기밀정보나, 본인의 아이디 및 패스워드 정보, 신용카드 및 기타 결제정보 등을 개시된 실시 예에 따른 드라이브에 안전하게 저장할 수 있다.
단, 서로 다른 노드에 분산저장된 데이터의 적어도 일부에 대해 접근이 불가능한 경우가 있을 수 있다. 예를 들어, 노드들 중 적어도 일부에 대한 통신이 어렵거나, 노드들 중 적어도 일부에 장애가 발생하거나, 노드들 중 적어도 일부가 노드로서의 역할을 중단할 수 있다.
이러한 경우에 대비하기 위하여, 개시된 실시 예에서는 안전 노드(Safe Node)를 마련하여 드라이브에 저장되는 모든 데이터를 안전 노드에도 함께 저장할 수 있다.
이에 따라, 분산저장 네트워크에 포함된 노드로부터 특정 데이터의 획득이 어려운 경우, 해당 데이터는 안전 노드로부터 획득되어 사용자 단말에 제공될 수 있다.
도 12 내지 도 15를 참조하여 상술한 바와 같이, 개시된 실시 예에 따른 월렛 애플리케이션은 사용자의 인증정보, 전자 신분증, 전자지갑 및 각종 정보가 저장되는 드라이브를 포함하는 통합 서비스를 제공할 수 있다.
이에 따라, 사용자의 이용상의 편의성을 높일 수 있으며, 동시에 개인정보 유출이나 해킹 등으로부터 안전한 높은 보안성을 갖는 서비스를 제공할 수 있는 바 기존의 서비스들과 차별화된 사용자 경험을 제공할 수 있다.
도 16은 일 실시 예에 따른 데이터 분산저장 및 조합방법을 도시한 도면이다.
상술한 바와 같이, 개시된 실시 예에 따른 시스템은 데이터를 분산저장함으로써 데이터를 안전하게 보관하고, 사용자 단말을 통한 사용자 본인의 인증이 없으면 저장된 데이터를 확인하는 것이 불가능하도록 구성되는 것을 특징으로 한다.
이하에서 설명되는 실시 예의 각 단계들은 개시된 실시 예에 따른 시스템의 서버에 의하여 수행될 수 있으나, 이에 제한되는 것은 아니다. 일 실시 예에서, 본 실시 예에서 언급되는 서버는 상술한 인증서버에 대응할 수 있다.
일 실시 예에서, 서버는 사용자 단말로부터 시스템에 저장하기 위한 입력 데이터를 획득한다. 시스템에 저장되는 입력 데이터의 종류는 제한되지 않으며, 예를 들어 개인식별정보 등의 인증 데이터와, 결제정보, 그리고 텍스트, 이미지, 동영상, 음성, 문서 등의 파일 정보를 포함할 수 있다. 개시된 실시 예에서, 파일은 컴퓨터에서 사용 가능한 모든 형태의 데이터를 의미하며, 예를 들어 문서의 경우 hwp, doc, pdf 등을 포함할 수 있으나, 이에 제한되는 것은 아니다.
즉, 본 실시 예에 따른 분산저장 방법은 도 13에 도시된 전자 신분증과 도 15에 도시된 드라이브 서비스를 제공하는 데 활용될 수 있다.
일 실시 예에서, 서버는 입력 데이터에 대한 전처리를 수행한다. 입력 데이터의 구체적인 전처리 방법에 대해서는 후술한다.
일 실시 예에서, 서버는 SPLIT 모듈을 호출하고, SPLIT 모듈은 입력 데이터를 복수의 조각으로 분할한다. 데이터를 복수의 조각으로 분할하는 구체적인 방법 및 입력 데이터가 분할되는 조각의 개수는 제한되지 않는다.
일 실시 예에서, 서버는 분할된 조각들을 IPFS(Inter-Planetary File System) 시스템을 이용하여 저장한다. IPFS 시스템은 데이터를 분산저장 네트워크에 분할하여 저장하며, 데이터를 해시한 값을 블록체인에 저장한다. 분산저장 네트워크에 분할하여 저장된 데이터는 데이터의 해시값에 기반하여 탐색 및 획득될 수 있다.
일 실시 예에서, IPFS 시스템은 SPLIT 모듈에 의하여 분할된 데이터 조각들을 분산저장 네트워크에 분할하여 저장하며, 데이터를 해시한 값을 블록체인에 저장할 수 있다.
일 실시 예에서, 분산저장 네트워크는 복수의 노드로 구성되며, 각각의 노드에 데이터 조각들이 분산저장될 수 있다. 일 실시 예에서, IPFS 시스템은 데이터 조각들이 분산저장된 위치에 대한 정보를 저장할 수 있으며, 이는 데이터의 해시값에 기반하여 탐색될 수 있다. 실시 예에 따라서, 분산저장 네트워크에 포함된 각각의 노드들은 동일한 데이터의 다른 데이터 조각을 저장하는 다른 노드에 대한 정보를 저장할 수도 있다.
다른 실시 예에서, IPFS 시스템은 SPLIT 모듈에 의하여 분할된 데이터 조각 자체를 IPFS 시스템의 분할 도구를 이용하여 다시 분할하고, 분할된 데이터 조각 각각을 해시하여 그 해시값을 블록체인에 저장할 수도 있다.
IPFS 시스템은 블록체인에 저장된 해시값을 리턴하며, 서버는 리턴된 해시값의 적어도 일부를 저장할 수 있다. 실시 예에 따라서, 서버는 리턴된 해시값을 다시 분산저장할 수 있으며, 이에 대한 구체적인 내용은 후술한다.
이후 분산저장된 데이터를 획득하고자 하는 경우, 서버는 해시값에 기반하여 분산저장 네트워크에 저장된 데이터 조각들을 획득할 수 있다.
서버는 MERGE 모듈을 호출하고, 분산저장 네트워크로부터 획득된 데이터 조각들을 병합하여 데이터를 획득할 수 있다.
서버는 데이터에 대하여 수행된 전처리에 대응하는 후처리를 통해 최종 데이터를 획득할 수 있으며, 최종 데이터를 획득하기 위하여 수행되는 구체적인 후처리 방법에 대해서는 후술한다.
일 실시 예에서, 도 16에 도시된 입력 데이터와 획득 데이터는 서로 동일한 데이터일 수도 있고, 입력 데이터에 대하여 수행되는 전처리 및 후처리 방법에 따라 입력 데이터와 획득 데이터는 서로 상이할 수도 있다.
예를 들어, 입력 데이터가 인증 데이터인 경우 입력 데이터와 획득 데이터는 서로 상이할 수 있으며, 이에 대해서는 도 18을 참조하여 후술한다.
도 17은 일 실시 예에 따른 데이터의 전처리 및 후처리 방법을 설명하기 위한 도면이다.
도 17을 참조하면, 도 16에 도시된 바와 같은 분산저장 시스템이 도시되어 있다.
일 실시 예에서, 서버는 사용자 단말로부터 획득된 입력 데이터에 대한 비식별화를 수행할 수 있다. 예를 들어, 서버는 사용자 단말로부터 획득되는 사용자의 개인식별정보에 대한 비식별화를 수행할 수 있다. 개시된 실시 예에서, 개인식별정보(Personally Identifiable Information)란 생존하는 개인에 관한 정보로서 해당 정보에 의하여 개인을 식별할 수 있는 정보를 말한다. 즉, 하나 이상의 다른 정보와 결합하여 개인을 식별할 수 있는 정보들을 포함하며, 예를 들어 개인정보, 민감정보, 생체정보 등을 포함할 수 있다.
비식별화는 원본 데이터를 가공 및 변조하여 원본 데이터의 내용을 직접적으로 파악할 수 없도록 하는 것으로, 데이터 저장의 전처리 단계에서 수행된다. 일반적으로 데이터에 포함된 개인정보를 식별할 수 없도록 하는 데 이용되나, 반드시 이에 제한되는 것은 아니다.
입력 데이터에 대한 비식별화 방법은 특정한 방법으로 제한되지 않으나, 개시된 실시 예에서 이용될 수 있는 구체적인 비식별화 방법의 일 예에 대해서는 후술한다.
일 실시 예에서, 서버는 비식별화 처리된 데이터의 암호화를 수행할 수 있다. 암호화에 사용되는 구체적인 기술이나 알고리즘은 제한되지 않으나, 예를 들어 AES256 알고리즘에 의한 암호화가 수행될 수 있다.
암호화된 데이터는 SPLIT 모듈에 의하여 분할 여부, 분할 사이즈 및 분할 개수를 포함하는 분할 설정이 결정된 후 데이터 조각들로 분할될 수 있다. 분할 설정을 수행하는 방법은 제한되지 않으나, 사용자에 의하여 기 설정된 분할 설정이 적용될 수도 있으며, 이 경우 해당 분할 설정은 설정 파일에 의하여 SPLIT 모듈에 전달될 수 있다. 또한, 분할 설정은 데이터의 크기 및 종류 등에 기반하여 SPLIT 모듈에 의하여 자동으로 결정될 수도 있다.
SPLIT 모듈에 의하여 분할된 데이터 조각들은 IPFS 시스템에 전달되며, IPFS 시스템은 분할된 데이터 조각들을 분산저장 네트워크의 노드들에 저장하고, 데이터를 해시한 해시 결과값을 리턴한다.
서버는 분산저장된 데이터를 획득하고자 하는 경우 상술한 바와 같이 데이터의 해시값에 기반하여 IPFS 시스템으로부터 데이터 조각들을 획득한 후, MERGE 모듈을 호출하여 데이터를 조합한다.
서버는 조합된 데이터들을 복호화하며, 복호화에 이용되는 알고리즘은 제한되지 않으나 상술한 바와 같이 데이터가 AES256 알고리즘에 기반하여 암호화된 경우 동일한 방법을 이용하여 데이터를 복호화할 수 있다.
서버는 복호화된 데이터로부터 비식별화 코드를 제거함으로써 최종 데이터를 획득할 수 있다.
서버는 데이터를 비식별화하는 데 이용한 방법에 대한 정보를 저장하거나, 데이터의 비식별화 규칙을 저장함으로써, 비식별화된 데이터로부터 비식별화 코드를 제거할 수 있도록 구성될 수 있다.
도 17에 도시된 실시 예에 따르면, 도 17에 도시된 입력 데이터와 최종적으로 획득된 획득 데이터는 서로 동일할 수 있다. 이는 개시된 실시 예에 따른 시스템이 인증정보의 저장 및 인증에 활용되는 경우에는 상이할 수 있다.
도 18은 일 실시 예에 따른 분산저장 및 조합을 통한 인증시스템을 도시한 도면이다.
일 실시 예에서, 서버는 사용자 단말로부터 인증 데이터를 획득할 수 있다. 예를 들어, 인증 데이터는 상술한 EID 또는 사용자의 개인식별정보를 포함할 수 있으나, 이에 제한되는 것은 아니다.
일 실시 예에서, 서버는 인증 데이터를 해시할 수 있다.
인증 데이터의 경우, 보안을 위해 원본이 아닌 해시값을 저장하는 것이 일반적이다. 또한, 인증 데이터의 경우 인증시 저장된 인증 데이터와의 동일성만을 확인하면 되기 때문에, 서버는 인증 데이터에 대한 해시를 수행한다.
이후 절차는 도 17과 관련하여 설명된 바와 같다. 일 실시 예에서, 서버는 인증 데이터의 해시값을 비식별화하고, 비식별화된 데이터를 암호화한다. 서버는 암호화된 데이터를 SPLIT 모듈을 이용하여 분할하고, 분할된 데이터 조각들은 IPFS 시스템에 기반하여 분산저장된다.
일 실시 예에서, 서버는 사용자 단말로부터 인증요청을 수신할 수 있다. 서버는 인증요청과 함께 수신된 인증정보를 해시할 수 있으며, 실시 예에 따라 해시된 인증정보가 인증요청과 함께 서버에서 수신될 수도 있다.
서버는 IPFS 시스템으로부터 사용자의 인증 데이터를 분산저장한 데이터 조각들을 획득하고, MERGE 모듈을 이용하여 획득된 데이터 조각들을 조합한다. 서버는 조합된 데이터를 복호화하고, 이로부터 비식별화 코드를 제거함으로써 해시된 인증 데이터를 획득한다.
서버는 인증요청과 함께 획득된 인증 데이터의 해시값을, 분산저장된 데이터로부터 획득된 데이터를 비교하고, 그 일치여부에 따라 인증 성공여부를 결정할 수 있다.
도 19는 일 실시 예에 따른 비식별화 방법을 도시한 도면이다.
개시된 실시 예에서, 서버는 데이터를 분산저장하기 전의 전처리 단계의 하나로서 데이터에 대한 비식별화를 수행한다. 일 실시 예에서, 데이터의 비식별화는 데이터의 암호화 전단계에서 수행될 수 있다. 또한, 데이터의 비식별화는 데이터의 해시 이후 단계에서 수행될 수 있다.
개시된 실시 예에서, 데이터의 비식별화는 랜덤 문자 집합(Random Character Set)으로부터 랜덤하게 추출된 문자와 데이터를 결합하는 방식으로 데이터를 가공함으로써 수행된다.
랜덤 문자 집합에 포함되는 문자의 종류는 제한되지 않으며, 랜덤 문자 집합은 공통적으로 이용되거나 기 설정된 기준에 따라 변경될 수 있으며, 실시 예에 따라 사용자별로 상이한 랜덤 문자 집합이 이용될 수도 있다.
또한, 랜덤 문자 집합으로부터 추출된 문자와 데이터의 결합방식 또한 제한되지 않는다. 예를 들어, 서버는 비식별화를 수행할 데이터에서 랜덤 문자 집합으로부터 추출된 문자가 결합될 위치를 결정할 수 있으며, 이는 기 설정된 규칙에 의하여 결정될 수도 있고, 임의로 결정될 수도 있다. 서버는 결정된 위치에 랜덤 문자 집합으로부터 추출된 문자를 결합할 수 있으며, 추출된 문자가 결합되는 순서 또한 다양하게 결정될 수 있다.
또한, 비식별화 코드(랜덤 문자 집합으로부터 추출된 문자)가 데이터와 결합되는 방법은 제한되지 않으며, 도 19에 도시된 바와 같은 단순 삽입뿐 아니라 비식별화 코드를 이용하여 데이터를 연산함으로써 데이터를 가공하는 방법도 이용될 수 있다.
비식별화 데이터가 결합된 위치 혹은 결합 규칙에 대한 정보는 추후 비식별화된 데이터의 비식별화 코드 제거를 위해 별도로 저장될 수 있다.
도 20은 일 실시 예에 따른 연결자에 기반한 데이터 분산저장 및 조합방법을 도시한 도면이다.
도 20을 참조하면, 도 16에 도시된 바와 같은 데이터 분산저장 시스템이 도시되어 있다. 단, 도 20에는 도 16에 도시된 IPFS 시스템 대신 분산저장 네트워크와 블록체인 및 연결자가 도시되어 있다.
일 실시 예에서, 서버는 입력 데이터에 대한 전처리를 수행한 후, SPLIT 모듈을 호출하여 데이터를 분할함으로써 데이터 조각들을 생성할 수 있다.
분할된 데이터 조각들은 분산저장 네트워크의 노드들에 분산저장되며, 분산저장된 데이터들을 추적하기 위한 정보로서 연결자가 생성된다. 실시 예에 따라서, 연결자와 데이터가 분산저장된 노드들 간의 관계를 나타내는 조각 분산 맵이 생성되어 저장될 수도 있다.
일 실시 예에서, 조각 분산 맵은 분산저장 네트워크에서 데이터 조각들이 저장된 노드에 관한 정보 및 데이터 조각들이 저장된 순서에 대한 정보를 포함할 수 있다. 서버는 연결자를 이용하여 조각 분산 맵에서 추적할 데이터에 대한 정보를 탐색할 수 있으며, 탐색된 정보에 기반하여 데이터 조각들을 추적할 수 있다.
또한, 연결자는 블록체인에 분산저장될 수 있다. 예를 들어, 연결자는 2개 이상의 조각으로 분할되어, 블록체인의 2개 이상의 노드에 분산저장될 수 있다.
일 실시 예에서, 연결자가 저장된 노드의 위치에 대한 정보를 포함하는 연결자 분산 맵이 생성되어 저장될 수도 있다.
분산저장된 데이터의 획득이 필요한 경우, 서버는 연결자 분산 맵에 기반하여 블록체인으로부터 연결자를 획득할 수 있다. 또한, 서버는 연결자 및 조각 분산 맵을 이용하여 분산저장 네트워크에 저장된 데이터 조각들을 획득할 수 있다.
이후, 서버는 MERGE 모듈을 호출하여 데이터 조각들을 조합하고, 이를 후처리함으로써 데이터를 획득할 수 있다.
도 20에 도시된 실시 예에서, 분산저장 네트워크는 도 16에 도시된 분산저장 네트워크에, 블록체인은 도 16에 도시된 IPFS 시스템 내부의 블록체인에 각각 대응할 수 있으며, 실시 예에 따라 연결자는 도 16에 도시된 데이터의 해시 값에 대응할 수도 있다.
도 21은 일 실시 예에 따라 사용자 단말을 포함하는 데이터의 분산저장 시스템을 도시한 도면이다.
도 21을 참조하면, 도 16에 도시된 바와 유사한 데이터의 분산저장 시스템이 도시되어 있다.
단, 도 21에 도시된 실시 예에 따르면 분산저장 과정에 사용자 단말을 참여시킴으로써, 사용자 단말 없이는 분산저장된 데이터를 획득할 수 없도록 하는 것을 특징으로 한다.
일 실시 예에서, 서버는 입력 데이터에 대한 전처리를 수행하고, SPLIT 모듈에 기반하여 데이터를 복수의 데이터 조각으로 분할한 후, 이를 IPFS 시스템을 통해 분산저장한다.
서버는 IPFS 시스템으로부터 데이터의 해시값을 리턴받으며, 데이터의 해시값을 이용하여 IPFS 시스템으로부터 데이터 조각들을 탐색 및 획득할 수 있다.
서버는 리턴된 해시값을 M:N으로 분할하여, M%는 사용자 단말에 전송하고, N%는 블록체인에 배포하여 저장한다. N%의 해시값이 저장되는 블록체인의 종류 및 구성은 제한되지 않는다.
일 실시 예에서, M%와 N%의 합은 100%가 되도록 구성되며, 그 구체적인 비율은 한정되지 않으나, 예를 들어, M%는 51%, N%는 49%가 되도록 해시값이 분할될 수 있다. 단, 해시값을 분할하는 M%와 N%의 비율은 이에 제한되지 않으며, 사용자의 설정 혹은 데이터의 특성에 따라 다양하게 설정될 수 있고, 또한 유동적으로 변경될 수 있다.
사용자 단말은 상술한 애플리케이션에 기반하여, 서버로부터 수신된 M%의 해시값을 저장한다. 예를 들어, M%의 해시값은 사용자의 인증 데이터와 함께 애플리케이션을 통해 저장될 수 있다.
사용자 단말에 저장되는 M%의 데이터는 서버 또는 블록체인에는 저장되지 않거나, 사용자 인증이 없이는 접근할 수 없는 형태로 저장됨으로써, 사용자가 M%의 데이터를 제공하지 않으면 서버가 저장된 데이터를 획득할 수 없도록 구성될 수 있다.
일 실시 예에서, 사용자가 M%의 데이터가 저장된 사용자 단말을 분실하거나, 사용자 단말이 백업되지 않은 상태로 파손될 수 있다.
이러한 경우를 대비하여, 서버는 사용자의 계정과 관련된 데이터를 별도로 저장하며, 사용자 단말을 통해 사용자의 계정을 복구하기 위한 정보가 획득되는 경우 복구 데이터를 사용자 단말로 전송할 수 있다.
일 실시 예에서, 사용자 계정의 복구에는 BIP 39 표준에 기반한 12개의 단어를 포함하는 니모닉 코드(Mnemonic code)가 이용될 수 있으나, 이에 제한되는 것은 아니다.
일 실시 예에서, 사용자 계정의 복구에 이용되는 니모닉 코드가 분실되는 경우를 대비하기 위하여 안전 노드(Safe Node)에 니모닉 코드가 보관될 수 있다.
안전 노드는 복수의 관리자에 의하여 관리되며, 사용자가 복구를 요청하는 경우 모든 관리자의 승인이 있어야 안전 노드로부터 니모닉 코드가 사용자 단말에 제공되도록 하는 것을 특징으로 한다.
단일 관리자가 안전 노드를 관리하는 경우 관리자가 임의로 특정 사용자의 니모닉 코드를 유출시킬 수 있는 바, 모든 관리자의 서명이 있어야만 사용자 단말이 안전 노드에 저장된 니모닉 코드를 획득할 수 있도록 구성된다.
또한, 사용자 단말이 계정을 생성하고 월렛을 설치하는 경우, 추후 복구를 위해 일회용 키 쌍을 생성할 수 있다. 일회용 키 쌍은 개인키와 공개키를 포함하며, 개인키는 사용자 단말에 저장되고, 공개키는 블록체인에 배포될 수 있다.
사용자가 계정 복구를 원하는 경우, 사용자 단말은 안전 노드에 니모닉 코드를 요청할 수 있다. 안전 노드를 관리하는 복수의 관리자의 승인 및 서명이 완료되는 경우, 안전 노드에 저장된 니모닉 코드는 사용자의 공개키로 암호화되어 사용자 단말에 전달된다.
사용자 단말은 개인키를 이용하여 암호화된 데이터를 복호화함으로써 니모닉 코드를 획득하고, 이를 이용하여 계정을 복구할 수 있다. 계정 복구가 완료되는 경우, 일회용 키 쌍은 더 이상 사용되지 않고 폐기될 수 있다.
실시 예에 따라서, 안전 노드에 사용자의 개인키가 보관될 수도 있다.
도 22는 일 실시 예에 따른 사용자 단말을 포함하는 분산저장 시스템에서 조합을 통해 데이터를 획득하는 방법을 도시한 도면이다.
일 실시 예에서, 서버는 사용자 단말로부터 사용자 단말에 분산저장된 M%의 정보를 획득할 수 있다.
또한, 서버는 이에 대응하는 나머지 N%의 정보를 블록체인으로부터 획득할 수 있다.
서버는 M%의 데이터와 N%의 데이터를 조합하여 결과 데이터를 획득할 수 있다. 일 실시 예에서, 결과 데이터는 IPFS 시스템에서 데이터 획득을 위해 이용되는 데이터의 해시 값일 수 있으나, 이에 제한되는 것은 아니다.
서버는 IPFS 시스템을 통하여 분산저장 네트워크에 저장된 데이터 조각들을 획득하고, 획득된 데이터 조각들을 병합하여 데이터를 획득할 수 있다.
도 23은 일 실시 예에 따른 일회성 인증방법을 도시한 도면이다.
도 22를 참조하여 설명한 바와 같이, 서버는 사용자 단말로부터 M%의 데이터를, 블록체인으로부터 N%의 데이터를 획득한다.
서버는 M%의 데이터와 N%의 데이터를 조합하여 데이터 획득을 위한 정보(예를 들어, 데이터의 해시값)를 획득하고, 획득된 정보에 기반하여 IPFS 시스템으로부터 분산저장된 데이터를 획득한다.
단, 서버에 M%의 데이터와 N%의 데이터를 조합하여 획득된 정보가 저장되는 경우, 개시된 실시 예에 따른 분산저장 시스템의 이점이 사라지게 되는 문제점이 존재한다
따라서, 서버는 M%의 데이터와 N%의 데이터를 조합하여 획득된 정보의 이용이 완료되는 경우(즉, IPFS 시스템에 분산저장된 데이터의 획득이 완료되는 경우) M%의 데이터와 N%의 데이터를 조합하여 획득된 정보를 반드시 폐기하도록 구성된다.
특히 사용자 단말로부터 획득한 M%의 정보는 반드시 폐기되어야 하며, 이를 통해 사용자 단말로부터 획득한 M%의 정보는 서버에서 일회성으로 이용되며, 이용 후에는 반드시 폐기된다는 점이 보장되어야 한다.
이는 개시된 실시 예에 따른 시스템을 이용하는 사용자 인증방법에서도 일회성으로 그 인증이 수행됨을 의미할 수 있다. 예를 들어, 사용자 단말이 서버에 인증을 요청하는 경우, 사용자 단말은 인증 데이터와 함께 이에 대응하는 M%의 정보를 서버에 제공할 수 있다.
서버는 M%의 정보를 이용하여 분산저장된 인증 데이터를 획득하고, 이를 사용자 단말로부터 제공된 인증 데이터와 비교함으로써 인증을 수행할 수 있다. 인증이 완료되면 서버는 사용자 단말로부터 제공받은 M%의 정보를 폐기하고, 사용자 단말로부터 제공된 정보를 이용하여 1회 이상의 인증을 수행하지는 않도록 구성될 수 있다.
이러한 일회성 인증방법을 통하여, 서버는 사용자 단말을 통한 인증요청이 수신되는 경우에만 단 한 번 분산저장된 사용자 인증정보에 접근할 수 있도록 구성되고, 이외에는 서버 관리자라 할지라도 분산저장된 사용자 인증정보에 접근할 수 없도록 하여, 사용자 인증정보를 더욱 안전하게 보관할 수 있다.
도 24는 개시된 실시 예에 따른 시스템을 이용하여 인증정보 또는 파일을 분산저장 및 조합하여 이용하는 방법을 도시한 흐름도이다.
일 실시 예에서, 서버는 사용자 단말로부터 요청을 획득할 수 있다.
서버는 요청의 종류를 판단할 수 있으며, 예를 들어 요청의 종류는 인증요청과 파일요청을 포함할 수 있다.
요청의 종류가 인증요청인 것으로 판단되는 경우, 서버는 인증단계를 개시할 수 있다. 서버는 인증요청의 종류가 인증 데이터의 저장 요청인지, 혹은 인증 수행 요청인지를 판단할 수 있다.
인증요청의 종류가 인증 데이터의 저장 요청인 경우, 서버는 데이터 전처리 후 SPLIT 모듈을 호출하여 데이터를 IPFS 모듈에 분산저장할 수 있다. 인증요청의 종류가 인증 수행 요청인 경우, 서버는 MERGE 모듈을 호출하여 IPFS에 분산저장된 인증 데이터를 조합하여 획득하고, 인증을 수행할 수 있다.
마찬가지로, 요청의 종류가 파일요청인 것으로 판단되는 경우, 서버는 파일 관리단계를 개시할 수 있다. 서버는 파일요청의 종류가 파일 저장요청인지, 혹은 파일 획득(열람 또는 다운로드)요청인지를 판단할 수 있다.
파일요청의 종류가 파일 저장요청인 경우, 서버는 데이터 전처리 후 SPLIT 모듈을 호출하여 데이터를 IPFS 모듈에 분산저장할 수 있다. 파일요청의 종류가 파일 획득요청인 경우, 서버는 MERGE 모듈을 호출하여 IPFS에 분산저장된 파일 데이터를 조합하여 획득하고, 이를 사용자 단말에 제공할 수 있다.
파일의 저장 및 획득 과정에서, 서버는 파일의 손상 여부를 확인할 수 있다. 또한, 서버는 파일의 속성을 통해 파일의 종류를 확인하고, 파일의 종류에 따라 구체적인 분산저장 방법을 결정할 수 있다.
도 25는 일 실시 예에 따른 컴퓨팅 파워 제공 및 이에 대한 보상방법을 도시한 도면이다.
도 25를 참조하면, 개시된 실시 예에 따른 BaaS 시스템 및 BaaS 시스템에 컴퓨팅 파워를 제공하는 사용자 단말들이 도시되어 있다.
일 실시 예에서, 사용자 단말들은 각각의 컴퓨팅 파워의 적어도 일부를 개시된 실시 예에 따른 BaaS 시스템에 위탁할 수 있다. 예를 들어, 컴퓨팅 파워는 CPU, RAM 및 네트워크 자원을 의미할 수 있으나, 이에 제한되는 것은 아니다.
BaaS 시스템은 컴퓨팅 파워 제공에 대한 대가로서 사용자 단말에 보상을 지급할 수 있다. 지급되는 보상의 형태 및 양은 제한되지 않으나, 예를 들어 서버는 사용자가 위탁한 컴퓨팅 파워의 양을 정량적으로 측정하고, 이에 비례하는 양의 보상을 지급할 수 있다. 보상은 상술한 BRC 또는 BIDT로 지급될 수 있다.
사용자 단말은 위탁할 컴퓨팅 파워의 양 및 위탁기간을 결정할 수 있으며, 보상은 컴퓨팅 파워의 양 및 위탁기간에 따라 상이하게 책정될 수 있다. 예를 들어, 사용자 단말이 위탁기간을 길게 설정할수록, 단위 기간당 보상의 크기가 증가할 수 있다.
단, 사용자 단말이 계약된 위탁기간이 만료되기 전에 컴퓨팅 파워의 거치를 해지하는 경우, 지급되는 보상의 양이 조정될 수 있다.
사용자 단말들로부터 제공되는 컴퓨팅 파워는 개시된 실시 예에 따른 시스템의 저장공간, 프로세싱 능력 향상 및 통신능력 향상에 활용될 수 있다.
실시 예에 따라서, 도 16에 도시된 분산저장 네트워크를 구성하는 노드에 해당하는 각각의 사용자 단말에 대해서도 보상이 지급될 수 있다. 각각의 사용자 단말에 저장된 정보의 안정적인 보관 및 유지관리를 위하여 서버는 보상을 지급할 수 있으며, 마찬가지로 보상은 BRC 또는 BIDT 형태로 지급될 수 있다.
일 실시 예에서, 특정한 정보를 보관하는 노드가 그 역할을 종료하고자 하는 경우, 서버에 사전에 해지요청을 하도록 하여야 서버가 해당 정보를 다른 노드에 옮겨서 저장함으로써 정보를 안정적으로 관리할 수 있다.
일 실시 예에서, 서버는 노드의 역할종료 고지를 유도하기 위하여 노드가 역할종료를 고지하고 해당 노드에 저장된 정보가 다른 노드에 옮겨서 저장된 후에 해당 노드에 대한 보상을 정산하여 지급하거나, 해당 노드에 대하여 추가 보상을 지급하도록 하는 등의 규칙을 설정할 수 있다.
또한, 서버는 도 8과 관련하여 설명한 바와 같이 블록체인 시스템을 유지하는 BP에 대해서도 보상을 지급할 수 있다. 보상은 BRC 형태로 지급될 수 있으며, DPoS 기반의 블록체인 시스템의 경우 BP는 기 설정된 수(예를 들어, 21개)가 구성원들의 투표에 기반하여 선출될 수 있다. 선출된 BP는 블록체인 시스템의 안정적인 유지를 위한 역할을 수행하며, 이에 대한 보상을 획득한다.
본 발명의 실시예와 관련하여 설명된 방법 또는 알고리즘의 단계들은 하드웨어로 직접 구현되거나, 하드웨어에 의해 실행되는 소프트웨어 모듈로 구현되거나, 또는 이들의 결합에 의해 구현될 수 있다. 소프트웨어 모듈은 RAM(Random Access Memory), ROM(Read Only Memory), EPROM(Erasable Programmable ROM), EEPROM(Electrically Erasable Programmable ROM), 플래시 메모리(Flash Memory), 하드 디스크, 착탈형 디스크, CD-ROM, 또는 본 발명이 속하는 기술 분야에서 잘 알려진 임의의 형태의 컴퓨터 판독가능 기록매체에 상주할 수도 있다.
본 발명의 구성 요소들은 하드웨어인 컴퓨터와 결합되어 실행되기 위해 프로그램(또는 애플리케이션)으로 구현되어 매체에 저장될 수 있다. 본 발명의 구성 요소들은 소프트웨어 프로그래밍 또는 소프트웨어 요소들로 실행될 수 있으며, 이와 유사하게, 실시 예는 데이터 구조, 프로세스들, 루틴들 또는 다른 프로그래밍 구성들의 조합으로 구현되는 다양한 알고리즘을 포함하여, C, C++, 자바(Java), 어셈블러(assembler) 등과 같은 프로그래밍 또는 스크립팅 언어로 구현될 수 있다. 기능적인 측면들은 하나 이상의 프로세서들에서 실행되는 알고리즘으로 구현될 수 있다.
이상, 첨부된 도면을 참조로 하여 본 발명의 실시예를 설명하였지만, 본 발명이 속하는 기술분야의 통상의 기술자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로, 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며, 제한적이 아닌 것으로 이해해야만 한다.

Claims (1)

  1. 블록체인 기반 통합인증 서비스 제공방법.
KR1020190092570A 2019-07-30 2019-07-30 블록체인 기반 데이터 분산저장을 통한 데이터 클라우드 서비스 제공방법 KR20210014457A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190092570A KR20210014457A (ko) 2019-07-30 2019-07-30 블록체인 기반 데이터 분산저장을 통한 데이터 클라우드 서비스 제공방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190092570A KR20210014457A (ko) 2019-07-30 2019-07-30 블록체인 기반 데이터 분산저장을 통한 데이터 클라우드 서비스 제공방법

Publications (1)

Publication Number Publication Date
KR20210014457A true KR20210014457A (ko) 2021-02-09

Family

ID=74559494

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190092570A KR20210014457A (ko) 2019-07-30 2019-07-30 블록체인 기반 데이터 분산저장을 통한 데이터 클라우드 서비스 제공방법

Country Status (1)

Country Link
KR (1) KR20210014457A (ko)

Similar Documents

Publication Publication Date Title
KR102044748B1 (ko) 개인정보 보관 및 인증정보 관리가 가능한 블록체인 전자지갑 제공 시스템
US11030621B2 (en) System to enable contactless access to a transaction terminal using a process data network
US10679215B2 (en) System for control of device identity and usage in a process data network
US11170379B2 (en) Peer forward authorization of digital requests
US11880828B2 (en) Data protection system and method
Ahmed et al. Security in next generation mobile payment systems: A comprehensive survey
JP6046765B2 (ja) 秘密情報にアクセスするための、多重パーティ及び多重レベルの承認を可能にするシステム及び方法
US20210224795A1 (en) Escrow non-face-to-face cryptocurrency transaction device and method using phone number
US10055727B2 (en) Cloud-based systems and methods for providing consumer financial data
EP3903267A1 (en) Methods, devices, and systems for secure payments
US20130226813A1 (en) Cyberspace Identification Trust Authority (CITA) System and Method
EP3657422B1 (en) Dynamic verification method and system for card transactions
KR102333811B1 (ko) 블록체인 기반의 카드 결제 처리 시스템 및 방법
KR20210117731A (ko) 블록체인 기반의 거래내역 확인 시스템
KR20210014458A (ko) 블록체인 기반 통합인증 서비스 제공방법
CN112970234A (zh) 账户断言
KR20210017308A (ko) 디바이스 등록 및 데이터 분산저장을 이용하는 2차인증 서비스 제공방법
Thawre et al. Use cases of authentication protocols in the context of digital payment system
KR20210014457A (ko) 블록체인 기반 데이터 분산저장을 통한 데이터 클라우드 서비스 제공방법
KR20210017310A (ko) 블록체인 기반 암호화폐의 지급 및 교환을 관리하는 시스템
KR20210041984A (ko) Kyc 데이터와 생체인증정보를 보유한 스마트 디바이스를 활용한 블록체인 개인키 생성 방법
KR20210017969A (ko) 사용자와 블록체인 간 데이터 분할저장을 통한 데이터 관리방법
KR20210017968A (ko) 블록체인에 분산저장된 데이터의 탐색 및 조합을 통한 데이터 획득방법
KR20210041980A (ko) Kyc 데이터와 생체인증정보를 보유한 스마트 디바이스를 활용한 블록체인 개인키 생성 시스템
RU2795371C1 (ru) Способ и система обезличенной оценки клиентов организаций для проведения операций между организациями