KR20190099984A - 개인 키 관리 시스템 - Google Patents

개인 키 관리 시스템 Download PDF

Info

Publication number
KR20190099984A
KR20190099984A KR1020180027656A KR20180027656A KR20190099984A KR 20190099984 A KR20190099984 A KR 20190099984A KR 1020180027656 A KR1020180027656 A KR 1020180027656A KR 20180027656 A KR20180027656 A KR 20180027656A KR 20190099984 A KR20190099984 A KR 20190099984A
Authority
KR
South Korea
Prior art keywords
private key
server
electronic wallet
management system
cryptocurrency
Prior art date
Application number
KR1020180027656A
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 주식회사 페이게이트
Publication of KR20190099984A publication Critical patent/KR20190099984A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3829Payment protocols; Details thereof insuring higher security of transaction involving key management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/04Payment circuits
    • G06Q20/06Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme
    • G06Q20/065Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/36Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes
    • 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

Landscapes

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

Abstract

본 발명은 개인 키 관리 시스템에 관한 것으로, 보다 구체적으로, 암호화 화폐 거래를 중개하는 암호화 화폐 거래소에서 각각의 사용자들에 대한 개인 키(Private Key)를 생성 및 관리하는 시스템에 있어서, 각각의 사용자들에 대한 개인 키를 생성 및 관리하되, 생성된 개인 키를 2개의 영역으로 분리하고, 분리된 2개의 영역의 개인 키를 각각 다른 장소에 보관함으로써, 개인 키 보안의 안정성을 높일 수 있는 개인 키 관리 시스템에 관한 것이다.

Description

개인 키 관리 시스템{SYSTEM FOR MANAGING PRIVATE KEY}
본 발명은 개인 키 관리 시스템에 관한 것으로, 보다 구체적으로, 암호화 화폐 거래를 중개하는 암호화 화폐 거래소에서 각각의 사용자들에 대한 개인 키(Private Key)를 생성 및 관리하는 시스템에 있어서, 각각의 사용자들에 대한 개인 키를 생성 및 관리하되, 생성된 개인 키를 2개의 영역으로 분리하고, 분리된 2개의 영역의 개인 키를 각각 다른 장소에 보관함으로써, 개인 키 보안의 안정성을 높일 수 있는 개인 키 관리 시스템에 관한 것이다.
암호화 화폐란 컴퓨터 등에 정보 형태로 남아 실물 없이 사이버상으로만 거래되는 전자화폐의 일종이다. 초기에 암호화 화폐는 눈에 보이지 않고 컴퓨터상에 표현되는 화폐라고 해서 디지털 화폐(Digital Currency)또는 가상화폐 등으로 불렀지만, 최근에는 암호화 기술을 사용하는 화폐라는 의미로 암호화폐라고 칭하기도 한다.
암호화 화폐는 화폐 발행에 따른 생산 비용이 들지 않아 이체 비용 등 거래 비용을 대폭 절감할 수 있고, 실물 없이 사이버 상으로만 거래되고 있는 네트워크형 전자화폐이기 때문에 보유 수량에 제한이 없으며, 중간 단계를 거칠 필요가 없어 즉각적으로 거래할 수 있다는 장점을 가지고 있다. 이러한 장점들로 인해, 암호화 화폐에 대한 사람들의 관심이 높아지고 있으며, 이로 인해, 암호화 화폐의 가치가 높아져, 암호화 화폐와 연관된 다양한 산업들이 발생하였고, 사람들간의 암호화 화폐 거래를 위한 암호화 화폐 거래소가 증가하였다.
일반적으로, 종래의 암호화 화폐 거래소에서는 가상 화페 거래소에 가입한 사용자들마다 암호화 화폐를 관리하기 위한 전자지갑을 생성함과 더불어 개인 키를 발행하여 전자지갑의 보안을 관리하였다.
그러나, 종래의 암호화 화폐 거래소에서는 온라인 망을 통해 해킹이 발생하게 되면 사용자들의 개인 정보가 유출되거나 개인 키가 유출될 수 있으며, 최악의 경우에는 사용자들이 암호화 화폐가 모두 도난 당할 수 있기 때문에 사용자들의 암호화 화폐를 안전하게 보호할 수 없다는 문제점이 있다.
한국등록특허 제10-1628007호
본 발명은 상술된 문제점을 해결하기 위해 도출된 것으로, 본 발명은 암호화 화폐 거래를 중개하는 암호화 화폐 거래소에서 각각의 사용자들에 대한 개인 키(Private Key)를 생성 및 관리하는 시스템에 있어서, 각각의 사용자들에 대한 개인 키를 생성 및 관리하되, 생성된 개인 키를 2개의 영역으로 분리하고, 분리된 2개의 영역의 개인 키를 각각 다른 장소에 보관함으로써, 해킹으로 인해 개인 키 및 개인 정보가 유출되더라도 암호화 화폐가 도난당하는 것을 방지할 수 있는 개인 키 관리 시스템을 제공하는 것이다.
본 발명의 일 실시예에 따른 개인 키 관리 시스템은, 암호화 화폐 거래를 중개하는 암호화 화폐 거래소에서 각 사용자에 대한 개인 키(Private Key)를 생성 및 관리하는 시스템에 있어서, 암호화 화폐 서버로부터 암호화 화폐를 관리를 위한 전자지갑을 생성하는 전자지갑 생성 프로세스를 호출하는 백 앤드(Back End) 서버, 상기 전자지갑 생성 프로세스를 통해 생성된 상기 전자지갑의 정보를 수신하고, 수신한 상기 전자지갑의 정보에 기초하여 상기 개인 키를 생성하는 프론트 앤드 프로세스(Front End Process; FEP) 서버 및 생성한 상기 개인 키를 두 개의 영역으로 분리하는 키 관리 시스템(Key Management System; KMS) 서버를 포함할 수 있다.
일 실시예에서, 상기 FEP 서버는, 상기 전자지갑 생성 프로세스가 호출되는 경우, 상기 전자지갑에 대한 비밀번호를 생성하고, 생성된 상기 비밀 번호를 상기 암호화 화폐 서버로 전달할 수 있으며, 상기 암호화 화폐 서버는, 전달받은 상기 비밀번호 및 블록체인(Block Chain) 전자지갑 생성 API(Application Programming Interface)를 이용하여 상기 전자지갑을 생성할 수 있다.
일 실시예에서, 상기 FEP 서버는, 상기 블록체인(Block Chain) 전자지갑 생성 API로 생성된 상기 전자지갑의 주소에 기초하여 상기 암호화 화폐 서버로부터 상기 전자지갑이 생성된 블록체인 노드에 기 저장된 키 스토어 파일(Key store file)을 수신하며, 수신한 상기 키 스토어 파일을 기반으로 상기 개인 키를 생성할 수 있다.
일 실시예에서, 상기 KMS 서버는, 생성된 상기 개인 키를 두 개의 영역으로 분리하여 생성된 제1 및 2 개인 키를 저장하되, 상기 제1 개인 키를 텍스트 형태로 변환하여 상기 각 사용자에 대응되는 사용자 단말로 제공하고, 상기 제2 개인 키만을 저장할 수 있다.
일 실시예에서, 상기 개인 키 관리 시스템은, 상기 KMS 서버에서 분리되지 않은 상기 개인 키, 상기 제1 및 2 개인 키 및 상기 암호화 화폐 서버로부터 수신한 상기 전자지갑의 정보를 암호화하는 암호화 서버 및 분리되지 않은 상기 개인 키, 상기 전자지갑의 정보, 암호화된 상기 개인 키 및 암호화된 상기 전자지갑의 정보를 저장하는 보험 서비스 서버를 더 포함할 수 있다.
일 실시예에서, 상기 암호화 서버는, 두 개의 영역으로 분리된 상기 개인 키를 암호화 하여 제1 및 2 시드 키(Seed Key)를 생성하며, 상기 제1 시드 키를 상기 KMS 서버로 전달하고, 상기 제2 시드 키를 상기 보험 서비스 서버로 전달할 수 있다.
일 실시예에서, 기 보험 서비스 서버는, 온라인 망으로 연결된 온라인 서버 및 상기 온라인 망을 사용하지 않는 오프라인 서버를 포함하며, 상기 온라인 서버에는 두 개의 영역으로 분리된 상기 개인 키 중 어느 하나의 개인 키만을 저장하고, 상기 오프라인 서버에는 분리되지 않은 상기 개인 키의 전체를 저장할 수 있다.
일 실시예에서, 상기 FEP 서버는, 상기 사용자 단말로부터 인증 요청 신호를 수신하는 경우, 상기 사용자 단말로부터 수신한 상기 제1 개인 키 및 상기 보험 서비스 서버로부터 수신한 상기 제2 개인 키에 기초하여 인증 절차 프로세스를 수행할 수 있다.
일 실시예에서, 상기 보험 서비스 서버는, 상기 사용자 단말로부터 개인 키 분실 신호를 수신하는 경우, 상기 오프라인 서버를 통해 본인 인증 절차를 수행하고, 인증 결과에 기초하여 상기 온라인 서버에 저장된 상기 어느 하나의 개인 키를 상기 사용자 단말로 제공할 수 있다.
일 실시예에서, 상기 보험 서비스 서버는, 상기 사용자 단말로부터 개인 키 관리 서비스 탈퇴 요청 신호를 수신하는 경우, 저장된 상기 개인 키 및 상기 전자지갑의 정보를 상기 사용자 단말에 제공하고, 저장된 상기 개인 키 및 상기 전자지갑의 정보를 삭제할 수 있다.
본 발명은 암호화 화폐 거래를 중개하는 암호화 화폐 거래소에서 각각의 사용자들에 대한 개인 키(Private Key)를 생성 및 관리하는 시스템에 있어서, 각각의 사용자들에 대한 개인 키를 생성 및 관리하되, 생성된 개인 키를 2개의 영역으로 분리하고, 분리된 2개의 영역의 개인 키를 각각 다른 장소에 보관함으로써, 해킹으로 인해 개인 키 및 개인 정보가 유출되더라도 암호화 화폐가 도난당하는 것을 방지할 수 있다는 이점이 있다.
또한, 본 발명은 사용자가 자신의 키의 일부 영역을 소유하고 있고, 자신이 소유한 키의 일부 영역과 서버에 저장된 키의 일부 영역을 결합해야만 인증이 되도록 함으로써, 사용자가 소유한 전자지갑이 사용자의 허락 및 지시없이 무단으로 사용되는 것을 방지할 수 있다는 이점이 있다.
도 1은 본 발명의 일 실시예에 따른 개인 키 관리 시스템(100)의 구성요소를 개략적으로 도시한 도면이다.
도 2는 본 발명의 일 실시예에 따른 개인 키 관리 시스템(100)에서 암호화 화폐 서버(20)로부터 수신한 키 스토어 파일의 형태를 개략적으로 도시한 도면이다.
도 3은 본 발명의 일 실시예에 따른 개인 키 관리 시스템(100)을 이용하여 개인 키를 생성하는 일련의 과정을 설명하기 위한 순서도이다.
도 4는 본 발명의 일 실시예에 따른 개인 키 관리 시스템(100)을 이용하여 개인 키를 관리하는 일련의 과정을 설명하기 위한 순서도이다.
도 5는 본 발명의 일 실시예에 따른 개인 키 관리 시스템(100)을 이용하여 개인 키를 생성 및 관리하는 절차를 설명하기 위한 도면이다.
이하, 본 발명의 이해를 돕기 위하여 바람직한 실시예를 제시한다. 그러나 하기의 실시예는 본 발명을 보다 쉽게 이해하기 위하여 제공되는 것일 뿐, 실시예에 의해 본 발명의 내용이 한정되는 것은 아니다.
도 1은 본 발명의 일 실시예에 따른 개인 키 관리 시스템(100)의 구성요소를 개략적으로 도시한 도면이다.
도 1을 참조하면, 본 발명의 일 실시예에 따른 개인 키 관리 시스템(100)은 WEB/WAS 서버(110), 백 앤드(Back End) 서버(120), 프론트 앤드 프로세스(Front End Process; FEP) 서버(130), 키 관리 시스템(Key Management System; KMS) 서버(140), 암호화 서버(150), 및 보험 서비스 서버(160)를 포함하여 구성될 수 있다.
여기서, 도 1에 도시된 개인 키 관리 시스템(100)은 일 실시예에 따른 것이고, 그 구성요소가 도 1에 도시된 실시예에 한정되는 것은 아니며, 필요에 따라 부가, 변경 또는 삭제될 수 있다.
먼저, WEB/WAS 서버(110)는 사용자에게 웹(Web)을 제공하기 위한 WEB 서버와 어플리케이션 실행 환경을 제공하기 위한 웹 어플리케이션 서버(Web application Server; WAS)를 포함하여 구성될 수 있다.
WEB/WAS 서버(110)는 본 발명의 일 실시예에 따른 개인 키 관리 시스템(100)을 이용하는 사용자의 사용자 단말(10)과 연결되어 통신할 수 있으며, 사용자 단말(10)로부터 출력되는 요청 신호들을 수신하여 후술되는 Back End 서버(120), FEP 서버(130) 및 KMS 서버(140) 중 어느 하나 이상에 전달할 수 있다.
여기서, 사용자 단말(10)은 이동통신 단말기, PDA(Personal Digital Assistant), 랩탑(Laptop), 스마트폰(Smart Phone), 넷북(Netbook), 휴대 인터넷 장치(MID: Mobile Internet Device), 울트라모바일 PC(UMPC: Ultra Mobile PC) 및 태블릿 PC(Tablet Personal Computer) 중 어느 하나 이상을 포함할 수 있다.
예를 들어, 사용자 단말(10)이 스마트폰인 경우, 본 발명의 일 실시예에 따른 개인 키 관리 시스템(100)과 통신하기 위한 개인 키 생성 및 관리 어플리케이션(Application) 소프트웨어가 사용자 단말(10)에 설치될 수 있고, 사용자든 자신의 사용자 단말(10)에 설치된 개인 키 생성 및 관리 어플리케이션(Application) 소프트웨어를 실행함으로써, 개인 키 관리 시스템(100)과 통신할 수 있다.
일 실시예에서, 사용자 단말(10)은 본 발명의 일 실시예에 따른 개인 키 관리 시스템(100)으로부터 인증된 사용자 단말(10)을 통해서만 사용 가능하도록 설정할 수 있다. 예를 들어, 사용자가 자신의 스마트폰, 노트북 및 데스크탑을 사용 기기로 인증한 경우, 자신의 스마트폰, 노트북 밑 데스크탑 이외의 다른 기기를 통해서는 본 발명의 일 실시예에 따른 개인 키 관리 시스템(100)을 사용할 수 없을 수 있다. 그러나 본 발명은 이에 한정되지 않는다.
Back End 서버(120)는 암호화 화폐 서버(20)로부터 암호화 화폐를 관리를 위한 전자지갑을 생성하는 전자지갑 생성 프로세스를 호출할 수 있다.
여기서, 암호화 화폐 서버(20)는 실제 암호화 화폐를 생성 및 관리하고 암호화 화폐의 거래가 진행되는 중앙 서버를 의미한다. 예를 들어, 암호화 화폐 서버(20)은 비트코인 서버 및 이더리움 서버일 수 있다.
또한, 전자지갑은 암호화 화폐를 관리하기 위하여 암호화 화폐 서버(20)에서 각 사용자들에게 발급되는 가상의 지갑(Wallet)을 의미하며, 전자지갑 생성 프로세스는 암호화 화폐 서버에서 이러한 전자지갑을 생성하는 프로세스를 의미한다.
Back End 서버(120)는 사용자 단말(10)로부터 전자지갑 생성 요청 신호를 수신하는 경우, 암호화 화폐 서버(20)로 블록체인(Block Chain) 전자지갑 생성 API(Application Programming Interface)를 요청할 수 있다.
FEP 서버(130)는 전자지갑 생성 프로세스를 통해 생성된 전자지갑의 정보를 수신하고, 수신한 전자지갑의 정보에 기초하여 개인 키를 생성할 수 있다.
여기서, 전자지갑의 정보는 암호화 화폐 서버(20)에서 생성된 전자지갑에 대한 정보를 의미한다. 예를 들어, 전자지갑의 정보는 전자지갑의 주소 정보 및 전자지갑의 키 스토어 파일(Key store file) 정보를 포함할 수 있다.
일 실시예에서, FEP 서버(130)는 전자지갑 생성 프로세스가 호출되는 경우, 전자지갑에 대한 비밀번호를 생성하고, 생성된 비밀 번호를 상기 암호화 화폐 서버로 전달할 수 있으며, 암호화 화폐 서버(20)는 전달받은 비밀번호 및 블록체인(Block Chain) 전자지갑 생성 API를 이용하여 전자지갑을 생성할 수 있다.
FEP 서버(130)는 블록체인(Block Chain) 전자지갑 생성 API로 생성된 전자지갑의 주소에 기초하여 상기 암호화 화폐 서버로부터 전자지갑이 생성된 블록체인 노드에 기 저장된 키 스토어 파일(Key store file)을 수신할 수 있으며, 수신한 키 스토어 파일을 기반으로 상기 개인 키를 생성할 수 있다.
여기서, 키 스토어 파일은 전자지갑을 생성한 블록체인 노드에만 저장되는 파일이기 때문에, 각 사용자마다 전자지갑이 생성되는 경우, 각 사용자마다 키 스토어 파일 또한 생성된다. 이하, 도 2를 참조하여, 키 스토어 파일을 기반으로 개인 키를 생성하는 방법을 설명하도록 한다.
도 2는 본 발명의 일 실시예에 따른 개인 키 관리 시스템(100)에서 암호화 화폐 서버(20)로부터 수신한 키 스토어 파일의 형태를 개략적으로 도시한 도면이다.
도 2를 참조하면, FEP 서버(130)는 암호화 화폐 서버(20)로부터 생성된 전자지갑의 주소를 요청하여, 전자지갑의 주소를 수신할 수 있다. 또한, FEP 서버(130)는 전자지갑의 주소에 대한 보내기(Export) 요청을 통해 전자지갑의 블록체인 노드에 저장된 키 스토어 파일을 수신할 수 있다.
여기서, 키 스토어 파일은 사전에 생성되어 있으며, 보내기 과정을 통해 블록체인 로컬 노드에 저장되어 있는 키 스토어 파일을 조회하는 역할을 담당한다.
FEP 서버(130)는 암호화 화폐 서버(20)로부터 도 2에 도시된 형태로 키 스토어 파일을 수신할 수 있으며, 수신한 키 스토어 파일을 분석하여 키 스토어 파일 내에서 "ciphertext"항목의 "e469221cb61f32fe76119e38b1…"를 추출할 수 있다. FEP 서버(130)는 추출한 e469221cb61f32fe76119e38b1…"를 개인 키로 설정함으로써, 사용자에 대한 개인 키를 생성할 수 있다.
다른 일 실시예에서, FEP 서버(130)는 키 스토어 파일 자체를 개인 키로 사용할 수 있다. 그러나 본 발명은 이에 한정되지 않는다.
다시 도 1로 돌아와서, KMS 서버(140)는 FEP 서버(130)에서 생성한 개인 키를 두 개의 영역으로 분리하여, 제1 개인 키 및 제2 개인 키를 생성할 수 있다. 예를 들어, FEP 서버(130)에서 생성한 개인 키가 "e469221cb61f32fe76119e38b1380bf9c3ee625b862aeb2b3c4b6b458ac5c5f3"인 경우, KMS 서버(140)는 상기의 개인 키를 반으로 나누어 "e469221cb61f32fe76119e38b1380bf9c"의 영역과 "c3ee625b862aeb2b3c4b6b458ac5c5f3"의 영역으로 분리할 수 있고 "e469221cb61f32fe76119e38b1380bf9c"를 제1 개인 키로 설정하고 "c3ee625b862aeb2b3c4b6b458ac5c5f3"를 제 2 개인 키로 설정할 수 있다. 그러나, 본 발명은 이에 한정하지 않고, 개인 키를 두 개의 영역으로 분리하는 어떠한 방법이든 적용될 수 있다. 예를 들어, FEP 서버(130)에서 생성된 개인 키가 "e469221cb61f32fe76119e38b1380"인 경우, 홀수 번째에 위치한 숫자 또는 문자와 짝수 번째 위치한 숫자 또는 문자를 분리하여"e621b13f7193b30" 및 "492c6f2e61e818"를 생성할 수 있고, 각각 제1 개인 키 및 제2 개인 키로 설정할 수 있다.
일 실시예에서, KMS 서버(140)는 개인 키를 두 개의 영역으로 분리하여 생성된 제1 개인 키 및 제2 개인 키를 저장하여 관리하되, 제2 개인 키는 KMS 서버(140) 내에 저장하고, 제1 개인 키를 텍스트 형태로 변환하여 사용자 단말(10)로 제공할 수 있다. 예를 들어, 사용자 단말(10)이 안드로이드 기반의 스마트폰인 경우, 안드로이드 기반의 스마트폰 앱 내의 데이터베이스를 이용하여 제1 개인 키를 저장할 수 있다. 또한, 사용자 단말(10)이 아이폰과 같이 IOS 기반인 경우, 스마트폰 내의 저장소 파일(xml)을 사용하여 저장할 수 있다. 그러나 본 발명은 이에 한정되지 않는다.
암호화 서버(150)는 KMS 서버(140)에서 분리되기 이전의 개인 키, 제1 및 2 개인 키 및 암호화 화폐 서버(20)로부터 수신한 키 스토어 파일과 같은 전자지갑의 정보를 암호화할 수 있다.
일 실시예에서, 암호화 서버(150)는 KMS 서버(140)로부터 제1 개인 키 및 제2 개인 키를 전달 받아 암호화하여 제1 시드 키(Seed Key) 및 제2 시드 키(Seed Key)를 생성할 수 있고, 생성한 제1 시드 키를 KMS 서버(140)로 전달하고, 제2 시드 키를 후술되는 보험 서비스 서버(160)로 전달할 수 있다. 예를 들어서, 암호화 서버(150)는 하드웨어 보안 모듈(Hardware Security Module; HSM) 서버일 수 있으며, 분리된 개인 키를 HSM 암호화하여 HSM 암호화된 제1 개인 키인 제1 시드 키 및 HSM 암호화된 제2 개인 키인 제2 시드 키를 생성하고, 생성된 제1 및 2 시드 키를 KMS 서버(140)로 전달 할 수 있다.
다른 일 실시예에서 암호화 서버(150)는 KMS 서버(140)로부터 분리되지 않은 개인 키를 수신하여 암호화 하고, 암호화한 개인 키를 분리함으로써 제1 및 2 시드 키를 생성할 수 있다.
보험 서비스 서버(160)는 KMS 서버 (140)에서 분리되지 않은 개인 키, 키 스토어 파일을 포함하는 전자지갑의 정보, 암호화된 제1 및 2 개인 키(제1 및 2 시드 키), 암호화된 전자지갑 정보(키 스토어 파일)을 저장할 수 있다.
일 실시예에서, 보험 서비스 서버(160)는 온라인 서버 및 오프라인 서버를 포함할 수 있다.
온라인 서버는 온라인 망이 연결되어 있으며, Back End 서버(120), FEP 서버(130) 및 KMS 서버(140) 중 어느 하나 이상과 온라인 망을 통하여 통신할 수 있다.
오프라인 서버는 온라인 망을 사용하지 않으며, WEB/WAS 서버(110), Back End 서버(120), FEP 서버(130) 및 KMS 서버(140)로 구성된 네트워크 망으로부터 완벽하게 격리되어 구성 될 수 있다.
일 실시예에서, 온라인 서버는 KMS 서버(140)로부터 전달된 제1 및 2 개인 키중 어느 하나만의 개인 키를 저장할 수 있으며, 오프라인 서버는 KMS 서버(140)에서 분리되지 않은 개인 키, 제1 및 2 개인 키를 모두 저장할 수 있다.
일 실시예에서, 보험 서비스 서버(160)는 사용자 단말(10)로부터 개인 키 분실 신호를 수신하는 경우, 오프라인 서버를 통해 본인 인증 절차를 수행하고, 인증 결과에 기초하여 제 1 및 2 개인 키 중 어느 하나의 개인 키를 상기 사용자 단말(10)로 제공할 수 있다.
여기서, 개인 키 분실 신호는 사용자 단말(10)에 저장되었던 개인 키에 오류가 발생하거나 사용자 단말(10)이 변경되어 저장된 개인 키가 없는 경우, 즉 개인 키를 사용할 수 없는 경우에 재발급을 하고자 하는 경우에 사용자 단말(10)을 통해 입력하는 신호를 의미할 수 있다. 이때, 사용자는 오프라인 서버를 통해 인증 절차를 수행할 수 있고, 인증 확인이 된 경우에 제 1 및 2 개인 키 중 어느 하나의 개인 키를 상기 사용자 단말(10)로 제공할 수 있다.
일 실시예에서, 보험 서비스 서버(160)는 사용자 단말(10)로부터 개인 키 관리 서비스 탈퇴 요청 신호를 수신하는 경우, 저장된 개인 키 및 전자지갑의 정보(키 스토어 파일)를 사용자 단말(10)에 제공하고, 저장되어 있던 개인 키 및 전자지갑의 정보(키 스토어 파일)은 삭제할 수 있다.
여기서, 개인 키 관리 서비스는 본 발명의 일 실시예에 따른 개인 키 관리 시스템(100)에서 제공하는 서비스로, 사용자에게 개인 키를 발급해주고, 발급한 개인 키를 관리해주는 서비스를 의미하며, 개인 키 관리 서비스 탈퇴 요청 신호는 이러한 개인 키 관리 서비스를 더 이상 이용하지 않고자 하는 경우에 개인 정보 삭제를 위하여 입력하는 신호를 의미한다. 예를 들어, 사용자는 더 이상 개인 키 관리 서비스를 이용하지 않기 위하여 자신의 사용자 단말(10)을 통해 탈퇴 요청 신호를 입력할 수 있다. 이때, 보험 서비스 서버(160)는 저장되어 있던 해당 사용자의 개인키, 키 스토어 파일, 암호화된 개인키를 모두 사용자 단말(10)로 제공하고, 저장되어 있던 모든 파일을 삭제할 수 있다.
일 실시예에서, FEP 서버(130)는 사용자 단말(10)로부터 인증 요청 신호를 수신하는 경우, 사용자 단말(10)로부터 수신한 제1 개인 키 및 보험 서비스 서버(160)로부터 수신한 제2 개인 키에 기초하여 인증 절차 프로세스를 수행할 수 있다. 예를 들어, 사용자가 사용자 단말(10)을 통해 암호화 화폐 거래를 진행하고자 하는 경우, 암호화 화폐 계좌의 인증 처리를 위해 인증 요청 신호를 입력할 수 있다. FEP 서버(130)는 인증 요청 신호를 수신하는 경우, 사용자 단말(10)로 저장된 제1 개인 키 송부에 대한 요청을 보냄과 동시에 보험 서비스 서버(160)로 저장된 제2 개인 키 송부에 대한 요청을 보낼 수 있다. 이후, FEP 서버(130)는 사용자 단말(10)로부터 수신한 제1 개인 키와 보험 서비스 서버(160)로부터 수신한 제2 개인 키를 결합하여 하나의 개인 키를 생성하고, 이를 통해, 사용자 인증 프로세스를 진행할 수 있다. 이하 도 3 및 4를 참조하여, 본 발명의 일 실시예에 따른 개인 키 관리 시스템(100)을 이용한 개인 키 생성 및 관리 방법을 설명하도록 한다.
도 3은 본 발명의 일 실시예에 따른 개인 키 관리 시스템(100)을 이용하여 개인 키를 생성하는 일련의 과정을 설명하기 위한 순서도이다.
도 3을 참조하면, 먼저, WEB/WAS 서버가 사용자 단말로부터 전자지갑 생성 요청 신호를 수신하고(S110), WEB/WAS 서버가 수신한 전자지갑 생성 요청 신호를 Back End 서버로 전달한다(S120).
Back End 서버는 전달 받은 전자지갑 생성 요청 신호에 기초하여 암호화 화폐 서버로부터 전자지갑 생성 프로세스 호출하고(S130), 암호화 화폐 서버에서 전자지갑 생성 프로세스를 통해 전자지갑이 생성된다(S140).
이후, FEP 서버는 S140단계에서 생성된 전자지갑의 주소에 기초하여 키 스토어 파일을 수신하고, 수신한 키 스토어 파일에 기초하여 개인 키를 생성한다(S150).
도 4는 본 발명의 일 실시예에 따른 개인 키 관리 시스템(100)을 이용하여 개인 키를 관리하는 일련의 과정을 설명하기 위한 순서도이다.
도 4를 참조하면, 먼저, KMS 서버가 FEP 서버에서 생성된 개인 키를 전달 받아 2개의 영역으로 분리함으로써, 제1 개인 키 및 제2 개인 키를 생성한다(S210). KMS 서버는 분리하여 생성된 제1 및 2 개인 키를 암호화 서버로 전달하며, 암호화 서버는 전달 받은 제1 및 2 개인 키를 암호화함으로써, 제1 및 2 시드 키를 생성한다(S220).
S220단계에서 암호화가 끝난 제1 시드 키는 KMS 서버로 전달되어 KMS 서버에 저장되며(S230), 제2 시드 키, 분리되지 않은 개인 키 및 키 스토어 파일을 보험 서비스 서버로 전달되어 보험 서비스 서버에 저장된다(S240). 이하, 도 5를 참조하여, 본 발명의 일 실시예에 따른 개인 키 관리 시스템(100)을 통해 개인 키를 생성하는 절차 및 관리하는 절차에 대하여 보다 상세하게 설명하고자 한다.
도 5는 본 발명의 일 실시예에 따른 개인 키 관리 시스템(100)을 이용하여 개인 키를 생성 및 관리하는 절차를 설명하기 위한 도면이다.
도 5를 참조하면, 먼저, KMS 서버(140)는 가상 화페 서버(20)로부터 개인 키, 전자 지갑 정보를 전달 받으며, 개인 키를 분리한 후 암호화 서버(150)로 전송한다.
암호화 서버(150)는 전송 받은 분리된 개인 키(제1 및 제2 개인 키)를 암호화 하여 암호화된 제1 및 2 개인 키(제1 및 2 시드키)를 생성하고, 생성된 제1 및 2 시드키를 KMS 서버(140)로 전송한다.
KMS 서버(140)와 암호화 서버(150)에서 생성된 제1 및 2 시드키는 합쳐서 암호화 화폐 서버(20)로 전송된다. 또한, 암호화 화폐 서버(20)로부터 전달 받은 개인 키, 전자지갑의 정보, 제1 및 제2 시드키는 보험 서비스 서버(160)로 전송하여, 보험 서비스 서버(160)의 내부 망에 저장한다. 여기서, 보험 서비스 서버(160)의 내부 망은 인터넷이 연결되어 있는 온라인 서버(핫 서버)와 인터넷이 연결되지 않은 오프라인 서버(콜드 서버)로 구성된다.
여기서, KMS 서버(140)는 개인 키를 보험 서비스 서버 내부망에 포함된 오프라인 서버로 전달하되, 인터넷 망이 아닌 오프라인을 통해 물리적으로 정보를 이동시키며, 오프라인 서버에서는 개인 키를 인터넷 망에 연결되지 않은 채로 보관한다.
KMS 서버(140)는 암호화된 제1 및 2 개인 키 중 제2 개인 키(제2 시드 키)를 사용자 단말(10) 및 보험 서비스 서버(160)로 전송한다. 여기서, KMS 서버(140)는 암호화 화폐의 수에 따라 제2 시드 키를 전송한다. 예를 들어, 코인의 수가 10개인 경우, 10Coin 10개의 제2 시드 키를 전송한다.
이후, 사용자가 암호화 화폐 거래를 진행하고자 하는 경우, 자신의 사용자 단말(10)에 저장된 제2 시드 키를 암호화 서버(150)로 전송한다. 이때, 거래 요청시에는 사용자 단말(10)의 앱승인 버튼을 입력함으로써, 제2 시드 키에 대한 인증 절차가 진행되며, 승인이 완료 된 경우, 기 설정된 시간 동안 승인 유지할 수 있다. 그러나 본 발명은 이에 한정되지 않고, 거래 요청시 마다 인증 절차를 진행할 수 있다.
보험 서비스 서버(160)가 사용자 단말(10)로부터 개인 키 분실 신호를 수신하는 경우, 개인 키 분실 신호 수신시, 인증 절차를 거쳐 제2 개인 키 전송한다.
또한, 보험 서비스 서버(160)는 사용자 단말로부터 개인 키 관리 서비스 탈퇴 요청 신호수신하는 경우, 보험 서비스 서버(160) 내부 망에 보관된 개인 키 및 전자지갑의 정보를 사용자에게 제공하고, 저장된 정보를 삭제한다. 여기서, 사용자가 직접 방문하는 경우에만 보험 서비스 서버(160) 내부 망에 보관된 개인 키 및 전자지갑의 정보를 사용자에게 제공할 수 있다.
전술한 개인 키 관리 시스템(100)를 이용하여 개인 키 생성 및 관리하는 방법은 도면에 제시된 순서도를 참조로 하여 설명되었다. 간단히 설명하기 위하여 상기 방법은 일련의 블록들로 도시되고 설명되었으나, 본 발명은 상기 블록들의 순서에 한정되지 않고, 몇몇 블록들은 다른 블록들과 본 명세서에서 도시되고 기술된 것과 상이한 순서로 또는 동시에 일어날 수도 있으며, 동일한 또는 유사한 결과를 달성하는 다양한 다른 분기, 흐름 경로, 및 블록의 순서들이 구현될 수 있다. 또한, 본 명세서에서 기술되는 방법의 구현을 위하여 도시된 모든 블록들이 요구되지 않을 수도 있다.
상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
10: 사용자 단말
20: 암호화 화폐 서버
110: WEB/WAS 서버
120: Back End 서버
130: FEP 서버
140: KMS 서버
150: 암호화 서버
160: 보험 서비스 서버

Claims (10)

  1. 암호화 화폐 거래를 중개하는 암호화 화폐 거래소에서 각 사용자에 대한 개인 키(Private Key)를 생성 및 관리하는 시스템에 있어서,
    암호화 화폐 서버로부터 암호화 화폐를 관리를 위한 전자지갑을 생성하는 전자지갑 생성 프로세스를 호출하는 백 앤드(Back End) 서버;
    상기 전자지갑 생성 프로세스를 통해 생성된 상기 전자지갑의 정보를 수신하고, 수신한 상기 전자지갑의 정보에 기초하여 상기 개인 키를 생성하는 프론트 앤드 프로세스(Front End Process; FEP) 서버; 및
    생성한 상기 개인 키를 둘 이상의 영역으로 분리하는 키 관리 시스템(Key Management System; KMS) 서버;를 포함하는 것을 특징으로 하는,
    개인 키 관리 시스템.
  2. 제1항에 있어서,
    상기 FEP 서버는,
    상기 전자지갑 생성 프로세스가 호출되는 경우, 상기 전자지갑에 대한 비밀번호를 생성하고, 생성된 상기 비밀 번호를 상기 암호화 화폐 서버로 전달하며,
    상기 암호화 화폐 서버는,
    전달받은 상기 비밀번호 및 블록체인(Block Chain) 전자지갑 생성 API(Application Programming Interface)를 이용하여 상기 전자지갑을 생성하는 것을 특징으로 하는,
    개인 키 관리 시스템.
  3. 제2항에 있어서,
    상기 FEP 서버는,
    상기 블록체인(Block Chain) 전자지갑 생성 API로 생성된 상기 전자지갑의 주소에 기초하여 상기 암호화 화폐 서버로부터 상기 전자지갑이 생성된 블록체인 노드에 기 저장된 키 스토어 파일(Key store file)을 수신하며, 수신한 상기 키 스토어 파일을 기반으로 상기 개인 키를 생성하는 것을 특징으로 하는,
    개인 키 관리 시스템.
  4. 제1항에 있어서,
    상기 KMS 서버는,
    생성한 상기 개인키를 두 개의 영역으로 분리하여 생성된 제1 및 2 개인 키를 저장하되, 상기 제1 개인 키를 텍스트 형태로 변환하여 상기 각 사용자에 대응되는 사용자 단말로 제공하고, 상기 제2 개인 키만을 저장하는 것을 특징으로 하는,
    개인 키 관리 시스템.
  5. 제4항에 있어서,
    상기 개인 키 관리 시스템은,
    상기 KMS 서버에서 분리되지 않은 상기 개인 키, 상기 제1 및 2 개인 키 및 상기 암호화 화폐 서버로부터 수신한 상기 전자지갑의 정보를 암호화하는 암호화 서버; 및
    분리되지 않은 상기 개인 키, 상기 전자지갑의 정보, 암호화된 상기 개인 키 및 암호화된 상기 전자지갑의 정보를 저장하는 보험 서비스 서버;를 더 포함하는 것을 특징으로 하는,
    개인 키 관리 시스템.
  6. 제5항에 있어서,
    상기 암호화 서버는,
    두 개의 영역으로 분리된 상기 개인 키를 암호화 하여 제1 및 2 시드 키(Seed Key)를 생성하며, 상기 제1 시드 키를 상기 KMS 서버로 전달하고, 상기 제2 시드 키를 상기 보험 서비스 서버로 전달하는 것을 특징으로 하는,
    개인 키 관리 시스템.
  7. 제5항에 있어서,
    상기 보험 서비스 서버는,
    온라인 망으로 연결된 온라인 서버 및 상기 온라인 망을 사용하지 않는 오프라인 서버를 포함하며, 상기 온라인 서버에는 두 개의 영역으로 분리된 상기 개인 키 중 어느 하나의 개인 키만을 저장하고, 상기 오프라인 서버에는 분리되지 않은 상기 개인 키의 전체를 저장하는 것을 특징으로 하는,
    개인 키 관리 시스템.
  8. 제5항에 있어서,
    상기 FEP 서버는,
    상기 사용자 단말로부터 인증 요청 신호를 수신하는 경우, 상기 사용자 단말로부터 수신한 상기 제1 개인 키 및 상기 보험 서비스 서버로부터 수신한 상기 제2 개인 키에 기초하여 인증 절차 프로세스를 수행하는 것을 특징으로 하는,
    개인 키 관리 시스템.
  9. 제7항에 있어서,
    상기 보험 서비스 서버는,
    상기 사용자 단말로부터 개인 키 분실 신호를 수신하는 경우, 상기 오프라인 서버를 통해 본인 인증 절차를 수행하고, 인증 결과에 기초하여 두 개의 영역으로 분리된 상기 개인 키 중 어느 하나의 개인 키를 상기 사용자 단말로 제공하는 것을 특징으로 하는,
    개인 키 관리 시스템.
  10. 제5항에 있어서,
    상기 보험 서비스 서버는,
    상기 사용자 단말로부터 개인 키 관리 서비스 탈퇴 요청 신호를 수신하는 경우, 저장된 상기 개인 키 및 상기 전자지갑의 정보를 상기 사용자 단말에 제공하고, 저장된 상기 개인 키 및 상기 전자지갑의 정보를 삭제하는 것을 특징으로 하는,
    개인 키 관리 시스템.
KR1020180027656A 2018-02-20 2018-03-08 개인 키 관리 시스템 KR20190099984A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20180020024 2018-02-20
KR1020180020024 2018-02-20

Publications (1)

Publication Number Publication Date
KR20190099984A true KR20190099984A (ko) 2019-08-28

Family

ID=67775604

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020180027656A KR20190099984A (ko) 2018-02-20 2018-03-08 개인 키 관리 시스템
KR1020180027643A KR102088952B1 (ko) 2018-02-20 2018-03-08 암호화 화폐 거래 중개 시스템 및 방법

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020180027643A KR102088952B1 (ko) 2018-02-20 2018-03-08 암호화 화폐 거래 중개 시스템 및 방법

Country Status (1)

Country Link
KR (2) KR20190099984A (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210074938A (ko) * 2019-12-12 2021-06-22 주식회사 스마트엠투엠 프라이빗 블록체인 기반 IoT 디바이스의 토큰 인증 및 인가 방법 및 시스템
WO2024064791A1 (en) * 2022-09-22 2024-03-28 The Everest Project LLC Method and apparatus for minting non-fungible tokens

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101628007B1 (ko) 2015-04-07 2016-06-13 주식회사 코인플러그 당사자간 블록체인을 갖는 디지털 가상화폐의 거래시스템

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040016770A (ko) * 2002-08-17 2004-02-25 송현종 카드/계좌 관리 시스템 및 그 관리방법
KR100640191B1 (ko) * 2006-03-14 2006-11-01 주식회사티엘정보통신 가상자산 거래시스템을 이용한 가격제한폭 갱신시스템 및그 방법
KR20160132307A (ko) * 2015-05-09 2016-11-17 김성일 암호화폐를 송금에 이용하는 방법 및 저장매체
KR20170065380A (ko) * 2015-12-03 2017-06-13 손성호 비트코인을 중계하기 위한 방법과 시스템

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101628007B1 (ko) 2015-04-07 2016-06-13 주식회사 코인플러그 당사자간 블록체인을 갖는 디지털 가상화폐의 거래시스템

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210074938A (ko) * 2019-12-12 2021-06-22 주식회사 스마트엠투엠 프라이빗 블록체인 기반 IoT 디바이스의 토큰 인증 및 인가 방법 및 시스템
WO2024064791A1 (en) * 2022-09-22 2024-03-28 The Everest Project LLC Method and apparatus for minting non-fungible tokens

Also Published As

Publication number Publication date
KR20190099983A (ko) 2019-08-28
KR102088952B1 (ko) 2020-03-13

Similar Documents

Publication Publication Date Title
KR102208891B1 (ko) 블록체인 기밀 트랜잭션에서 암호화된 트랜잭션 정보 복구
CN110147994B (zh) 一种基于同态加密的区块链的即时执行方法
TWI722116B (zh) 用於基於區塊鏈的系統結合錢包管理系統中的安全多方防遺失儲存及加密金鑰轉移
US11483161B2 (en) Method for information processing and non-transitory computer readable storage medium
CN111431713B (zh) 一种私钥存储方法、装置和相关设备
US12014337B2 (en) Information transaction infrastructure
EP2915279B1 (en) Method and system for protected exchange of data
WO2017024934A1 (zh) 实现电子签章的方法、装置及签章服务器
US20160260091A1 (en) Universal wallet for digital currency
US20170185998A1 (en) Method and device for protecting access to wallets in which crypto currencies are stored
EP3867849B1 (en) Secure digital wallet processing system
KR101923943B1 (ko) 보안이 강화된 암호화폐 송금 시스템 및 방법
JP2023535013A (ja) 量子安全支払いシステム
CN108876593A (zh) 一种在线交易方法和装置
CN105022966A (zh) 数据库数据加密解密方法和***
CN105391678A (zh) 具有单键快速安全登录功能之计算机网络***
KR20190132159A (ko) 스마트 컨트랙트를 이용한 블록체인 기반 암호화폐 거래 플랫폼 제공 방법
CN110135175A (zh) 基于区块链的信息处理、获取方法、装置、设备及介质
CN107070896B (zh) 一种安全高效的区块链网络客户化登录方法及安全加固***
KR20190132054A (ko) 블록체인 기반 스마트 컨트랙트를 이용한 암호화폐 거래 플랫폼 제공 방법
Rezaeighaleh et al. Deterministic sub-wallet for cryptocurrencies
CN112887087B (zh) 数据管理方法、装置、电子设备及可读存储介质
KR20190099984A (ko) 개인 키 관리 시스템
US20210158444A1 (en) Method and Apparatus for a Blockchain-Agnostic Safe Multi-Signature Digital Asset Management
KR20190132160A (ko) 스마트 컨트랙트를 이용한 암호화폐 거래 플랫폼 제공 방법

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
X091 Application refused [patent]
AMND Amendment