首页 / 专利库 / 银行与财务事项 / 加密货币钱包 / SE(Secure element)를 이용한 암호화폐 관리 시스템 및 그 방법

SE(Secure element)를 이용한 암호화폐 관리 시스템 및 그 방법

阅读:856发布:2020-06-17

专利汇可以提供SE(Secure element)를 이용한 암호화폐 관리 시스템 및 그 방법专利检索,专利查询,专利分析的服务。并且SE(Secure Element)를이용하여암호화폐를관리하는시스템및 그방법이개시된다. 본발명의일 면에따른본 발명의일 면에따른 SE를이용한암호화폐관리시스템은암호화폐(Crypto Currency)에의한거래를위한어플리케이션을실행하고, 사용자단말의암호화폐지갑(wallet)에저장된제1 데이터를관리하기위한제1 명령어와, 상기사용자단말과네트워크연결된 SE(Secure Element)에저장된제2 데이터를관리하기위한제2 명령어를생성하는사용자단말; 및상기사용자단말로부터상기제2 명령어가수신된경우, 상기제2 데이터를이용하여암호화된트랜잭션데이터(Transaction Data)를생성하는 SE를포함한다.,下面是SE(Secure element)를 이용한 암호화폐 관리 시스템 및 그 방법专利的具体信息内容。

  • 암호화폐(Crypto Currency)에 의한 결제를 위한 어플리케이션을 실행하고, 사용자 단말의 암호화폐 지갑(wallet)에 저장된 제1 데이터를 관리하기 위한 제1 명령어와, 상기 사용자 단말과 네트워크 연결된 SE(Secure Element)에 저장된 제2 데이터를 관리하기 위한 제2 명령어를 생성하는 사용자 단말; 및
    상기 사용자 단말로부터 상기 제2 명령어가 수신된 경우, 상기 제2 데이터를 이용하여 암호화된 트랜잭션 데이터(Transaction Data)를 생성하는 SE
    를 포함하는 SE를 이용한 암호화폐 관리 시스템.
  • 제1항에 있어서, 상기 제1 데이터는,
    타인의 암호화폐 주소, 타인의 공개키, 및 거래 내역을 포함하는 것인 SE를 이용한 암호화폐 관리 시스템.
  • 제1항에 있어서, 상기 제2 데이터는,
    상기 SE에서 생성된 암호화폐 소유자의 암호화폐 주소, 상기 암호화폐 소유자의 개인키 및 공개키를 포함하는 것인 SE를 이용한 암호화폐 관리 시스템.
  • 제1항에 있어서, SE는,
    공개키 알고리즘을 이용하여 암호화폐 소유자의 개인키 및 공개키를 생성하고, 상기 암호화폐 소유자의 공개키를 이용하여 암호화폐 소유자의 암호화폐 주소를 생성하는 것인 SE를 이용한 암호화폐 관리 시스템.
  • 제4항에 있어서, 상기 SE는,
    상기 암호화폐 소유자의 암호화폐 주소 및 결제할 금액이 포함된 트랜잭션 데이터를 생성하고, 타인의 공개키를 이용하여 상기 트랜잭션 데이터를 암호화하고, 암호화된 트랜잭션 데이터를 상기 암호화폐 소유자의 개인키를 이용하여 서명하는 것인 SE를 이용한 암호화폐 관리 시스템.
  • 타인의 암호화폐 주소, 타인의 공개키, 및 거래 내역을 포함하는 제1 데이터를 저장하는 제1 저장부;
    상기 제1 데이터를 관리하기 위한 제1 명령어와, 사용자 단말과 네트워크 연결된 SE(Secure Element)에 저장된 제2 데이터를 관리하기 위한 제2 명령어를 생성하는 제어부; 및
    상기 SE로 상기 제2 명령어를 송신하고, 상기 제2 명령어에 대한 응답 데이터를 상기 SE로부터 수신하는 제1 네트워크 인터페이스부
    를 포함하는 사용자 단말.
  • 제6항에 있어서, 상기 제어부는,
    암호화폐 소유자의 개인키 및 공개키를 생성하기 위한 제2 명령어를 상기 네트워크 인터페이스부를 통해 상기 SE로 송신하고, 상기 제2 명령어에 대한 응답으로 상기 암호화폐 소유자의 암호화폐 주소를 수신하되,
    상기 암호화폐 소유자의 암호화폐 주소는 상기 암호화폐 소유자의 공개키를 이용하여 상기 SE에서 생성된 것인 사용자 단말.
  • 제7항에 있어서, 상기 제어부는,
    암호화폐 소유자의 암호화폐 주소 및 결제할 금액이 포함된 트랜잭션 데이터를 생성하기 위한 제2 명령어를 상기 네트워크 인터페이스부를 통해 상기 SE로 송신하고, 상기 제2 명령어에 대한 응답으로 암호화 및 서명된 트랜잭션 데이터를 수신하되,
    상기 트랜잭션 데이터는 상기 SE에서 타인의 공개키를 이용하여 암호화되고, 상기 암호화폐 소유자의 개인키를 이용하여 서명된 것인 사용자 단말.
  • 네트워크 연결된 사용자 단말로부터 타인의 공개키 및 제2 데이터 관리를 위한 제2 명령어를 수신하고, 상기 제2 명령어에 대한 응답 데이터를 상기 사용자 단말로 송신하는 제2 네트워크 인터페이스부;
    상기 사용자 단말로부터 암호화폐 소유자의 개인키 및 공개키를 생성하기 위한 제2 명령어가 수신된 경우, 암호화폐 소유자의 개인키 및 공개키를 생성하는 키 생성부;
    상기 암호화폐 소유자의 공개키를 이용하여 상기 암호화폐 소유자의 암호화폐 주소를 생성하는 주소 생성부;
    상기 사용자 단말로부터 트랜잭션 데이터를 생성하기 위한 제2 명령어가 수신된 경우, 상기 타인의 공개키를 이용하여 트랜잭션 데이터를 암호화하고, 상기 암호화폐 소유자의 개인키를 이용하여 서명하는 암복호화부; 및
    암호화폐, 상기 암호화폐 소유자의 암호화폐 주소, 상기 암호화폐 소유자의 개인키 및 공개키를 포함하는 상기 제2 데이터를 저장하는 제2 저장부
    를 포함하는 SE(Secure Element).
  • 사용자 단말과, 상기 사용자 단말과 네트워크 연결된 SE(Secure element)를 이용한 암호화폐 관리 방법에 있어서,
    (a) 사용자 단말이 자신의 암호화폐 지갑(wallet)에 저장된 제1 데이터를 관리하기 위한 제1 명령어와, 상기 SE에 저장된 제2 데이터를 관리하기 위한 제2 명령어를 생성하는 단계;
    (b) 상기 제2 명령어를 상기 SE로 송신하는 단계; 및
    (c) 상기 제2 명령어에 대한 응답 데이터를 상기 SE로부터 수신하는 단계를 포함하되,
    상기 제1 데이터는 타인의 암호화폐 주소, 타인의 공개키, 및 거래 내역을 포함하고, 상기 제2 데이터는 상기 SE에서 생성된 암호화폐 소유자의 암호화폐 주소, 상기 암호화폐 소유자의 개인키 및 공개키를 포함하는 것인 SE를 이용한 암호화폐 관리방법.
  • 제10항에 있어서,
    상기 제2 명령어가 암호화폐 소유자의 개인키 및 공개키를 생성하기 위한 것인 경우, 상기 제2 명령어에 대한 응답 데이터는 상기 암호화폐 소유자의 암호화폐 주소인 것이되,
    상기 암호화폐 소유자의 암호화폐 주소는 상기 암호화폐 소유자의 공개키를 이용하여 상기 SE에서 생성된 것인 SE를 이용한 암호화폐 관리방법.
  • 제10항에 있어서,
    상기 제2 명령어가 암호화폐 소유자의 암호화폐 주소 및 결제할 금액이 포함된 트랜잭션 데이터를 생성하기 위한 것인 경우, 상기 제2 명령어에 대한 응답 데이터는 암호화 및 서명된 트랜잭션 데이터인 것이되,
    상기 암호화 및 서명된 트랜잭션 데이터는 상기 SE에서 상기 타인의 공개키를 이용하여 암호화되고, 상기 암호화폐 소유자의 개인키를 이용하여 서명된 것인 SE를 이용한 암호화폐 관리방법.
  • 제10항에 있어서,
    상기 제2 명령어에 대한 응답 데이터가 상기 암호화폐 소유자의 암호화폐 주소인 경우,
    (d) 상기 제1 명령어에 기초하여, 상기 암호화폐 소유자의 암호화폐 주소를 표시하는 단계를 더 포함하는 SE를 이용한 암호화폐 관리방법.
  • 제10항에 있어서,
    상기 제2 명령어에 대한 응답 데이터가 암호화 및 서명된 트랜잭션 데이터인 경우,
    (e) 상기 제1 명령어에 기초하여, 상기 암호화 및 서명된 트랜잭션 데이터를 상기 타인의 공개키에 해당하는 타인 사용자 단말로 송신하는 단계를 더 포함하는 SE를 이용한 암호화폐 관리방법.
  • 사용자 단말과, 상기 사용자 단말과 네트워크 연결된 SE(Secure element)를 이용한 암호화폐 관리 방법에 있어서,
    (a) 상기 SE가 상기 사용자 단말로부터 타인의 공개키 및 상기 SE에 저장된 데이터 관리를 위한 명령어를 수신하는 단계;
    (b) 상기 명령어가 암호화폐 소유자의 개인키 및 공개키를 생성하기 위한 것인 경우, 상기 암호화폐 소유자의 개인키 및 공개키를 생성하는 단계;
    (c) 상기 암호화폐 소유자의 공개키를 이용하여 상기 암호화폐 소유자의 암호화폐 주소를 생성하는 단계; 및
    (d) 상기 상기 암호화폐 소유자의 암호화폐 주소를 상기 명령어에 대한 응답으로 상기 사용자 단말로 송신하는 단계를 포함하는 SE를 이용한 암호화폐 관리방법.
  • 제15항에 있어서,
    상기 명령어가 암호화폐 소유자의 암호화폐 주소 및 결제할 금액이 포함된 트랜잭션 데이터를 생성하기 위한 것인 경우,
    (e) 상기 타인의 공개키를 이용하여 트랜잭션 데이터를 암호화하는 단계; 및
    (f) 상기 암호화폐 소유자의 개인키를 이용하여 상기 트랜잭션 데이터에 서명하는 단계를 더 포함하는 SE를 이용한 암호화폐 관리방법.
  • 说明书全文

    SE(Secure element)를 이용한 암호화폐 관리 시스템 및 그 방법{MANAGEMENT SYSTEM AND METHOD OF CRYTOCURRENCY USING SECURE ELEMENT}

    본 발명은 암호화폐 관리 시스템 및 그 방법에 관한 것으로서, 보다 상세하게는 SE(Secure Element)를 이용하여 암호화폐를 관리하는 시스템 및 그 방법에 관한 것이다.

    최근 들어, 휴대폰, 스마트 폰 등과 같은 이동통신 단말의 사용이 보편화되었고, 이에 이동통신 단말을 이용하여 모바일 결제 서비스를 이용할 수 있도록 하는 기술이 이슈화되고 있다.

    한편, 금에 비유되는 비트코인(Bitcoin)과 은에 비유되는 라이트코인(Litecoin)에 의한 거래가 이루어지고 있다. 이러한 비트코인 및 라이트코인은 암호기술을 기반으로 한 인터넷 화폐의 일종으로 전자화폐, 가상화폐 또는 암호화폐(Crypto Currency)라고 일컬어진다. 특히, 휴대폰, 스마트 폰 등과 같은 이동통신 단말을 이용한 모바일 결제가 상용화되면서 암호화폐에 의한 거래는 점점 증가할 것으로 보인다.

    일반적으로, 암호화폐는 암호화폐 지갑(Wallet)에 저장되어 관리되는데, 이러한 암호화폐 지갑은 파일형태로 사용자 단말 내의 저장 장치에 저장된다. 그리고 이 파일 내에는 암호화폐 잔액과 함께 암호화폐 거래에 필요한 개인키가 포함된다.

    한편, 암호화폐에 의한 거래가 활성화되기 위해 해결해야 하는 기술적 과제는 거래의 안정성을 확보하고 신뢰성을 높이기 위한 보안문제이다. 예컨대, 암호화폐는 소유자의 개인키로 디지털 서명을 하여 거래가 이루어지므로, 암호화폐 지갑 파일이 어떤 경로에 의해 복제가 되거나, 혹은 타인이 개인키만 가지고 있다면, 소유자의 암호화폐를 타인이 사용할 수 있게 된다.

    따라서, 암호화폐 거래에 필요한 금융정보 및 개인정보를 안전하게 보관하고, 이를 관리하기 위한 기술적 장치가 마련될 필요가 있다.

    도 1은 종래기술에 따른 암호화폐 관리 시스템을 설명하기 위한 도면이다.

    도 1을 참조하면, 종래 암호화폐는 사용자 단말(10) 내 일반 저장장치인 대용량 메모리(11)나, 혹은 Micro SD와 같은 외장 메모리(20)에 저장된다. 예컨대, 암호화폐 거래에 필요한 데이터가 저장되는 암호화폐 지갑은 wallet.dat라는 파일형태로 생성되어 상기 대용량 메모리(11), 혹은 상기 외장 메모리(20)에 저장된다.

    프로세서(13)는 암호화폐 거래에 필요한 태스크(Task)를 처리한다. 예컨대, 프로세서(13)는 암호화폐 거래에 필요한 개인키 및 공개키를 생성하고, 공개키를 이용하여 암호화폐 소유자의 암호화폐 주소를 생성한다.

    한편, 암호화폐 거래에 필요한 개인키, 공개키, 및 그 밖에 다른 데이터들은 모두 wallet.dat라는 파일형태를 갖는 암호화폐 지갑에 저장된다. 즉, 암호화폐 거래 시 필요한 모든 동작은 프로세서(13)가 wallet.dat 파일을 쓰고 읽음으로써 이루어진다.

    이와 같이, 종래 기술에 따르면 암호화폐 거래에 필요한 데이터는 모두 wallet.dat 파일에 저장되어 있으므로, 외부에서 악의적으로 해당 파일을 복제하거나, 해당 파일의 변경 및 조작을 가능하게 한다. 또한, 암호화폐 거래는 개인키에 의한 서명으로 이루어지는데, 개인키가 복제되면 어느 누구도 타인의 암호화폐를 자신의 것으로 만들 수 있는 문제가 있다.

    본 발명이 해결하고자 하는 기술적 과제는, 외부로부터 조작 및 변경이 불가능하며 암호화 기술을 이용하여 데이터를 안전하게 보관할 수 있는, 사용자 단말과는 네트워크 연결된 SE(Secure Element)를 이용하여 암호화폐를 안전하게 보관할 수 있는 시스템 및 그 방법을 제공하는 것이다.

    본 발명의 목적은 이상에서 언급한 목적으로 제한되지 않으며, 언급되지 않은 또 다른 목적들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.

    상술한 본 발명의 목적을 달성하기 위한 본 발명의 일 면에 따른 SE를 이용한 암호화폐 관리 시스템은 암호화폐(Crypto Currency)에 의한 거래를 위한 어플리케이션을 실행하고, 사용자 단말의 암호화폐 지갑(wallet)에 저장된 제1 데이터를 관리하기 위한 제1 명령어와, 상기 사용자 단말과 네트워크 연결된 SE(Secure Element)에 저장된 제2 데이터를 관리하기 위한 제2 명령어를 생성하는 사용자 단말; 및 상기 사용자 단말로부터 상기 제2 명령어가 수신된 경우, 상기 제2 데이터를 이용하여 암호화된 트랜잭션 데이터(Transaction Data)를 생성하는 SE를 포함한다.

    본 발명의 다른 면에 따른 사용자 단말은 타인의 암호화폐 주소, 타인의 공개키, 및 거래 내역을 포함하는 제1 데이터를 저장하는 제1 저장부; 상기 제1 데이터를 관리하기 위한 제1 명령어와, 사용자 단말과 네트워크 연결된 SE(Secure Element)에 저장된 제2 데이터를 관리하기 위한 제2 명령어를 생성하는 제어부; 및 상기 SE로 상기 제2 명령어를 송신하고, 상기 제2 명령어에 대한 응답 데이터를 상기 SE로부터 수신하는 제1 네트워크 인터페이스부를 포함한다.

    본 발명의 또 다른 면에 따른 SE는 네트워크 연결된 사용자 단말로부터 타인의 공개키 및 제2 데이터 관리를 위한 제2 명령어를 수신하고, 상기 제2 명령어에 대한 응답 데이터를 상기 사용자 단말로 송신하는 제2 네트워크 인터페이스부; 상기 사용자 단말로부터 암호화폐 소유자의 개인키 및 공개키를 생성하기 위한 제2 명령어가 수신된 경우, 암호화폐 소유자의 개인키 및 공개키를 생성하는 키 생성부; 상기 암호화폐 소유자의 공개키를 이용하여 상기 암호화폐 소유자의 암호화폐 주소를 생성하는 주소 생성부; 상기 사용자 단말로부터 트랜잭션 데이터를 생성하기 위한 제2 명령어가 수신된 경우, 상기 타인의 공개키를 이용하여 트랜잭션 데이터를 암호화하고, 상기 암호화폐 소유자의 개인키를 이용하여 서명하는 암복호화부; 및 암호화폐, 상기 암호화폐 소유자의 암호화폐 주소, 상기 암호화폐 소유자의 개인키 및 공개키를 포함하는 상기 제2 데이터를 저장하는 제2 저장부를 포함한다.

    사용자 단말과, 상기 사용자 단말과 네트워크 연결된 SE(Secure element)를 이용한 본 발명의 또 다른 면에 따른 암호화폐 관리 방법은, (a) 사용자 단말이 자신의 암호화폐 지갑(wallet)에 저장된 제1 데이터를 관리하기 위한 제1 명령어와, 상기 SE에 저장된 제2 데이터를 관리하기 위한 제2 명령어를 생성하는 단계; (b) 상기 제2 명령어를 상기 SE로 송신하는 단계; 및 (c) 상기 제2 명령어에 대한 응답 데이터를 상기 SE로부터 수신하는 단계를 포함한다.

    여기서, 상기 제1 데이터는 타인의 암호화폐 주소, 타인의 공개키, 및 거래 내역을 포함하고, 상기 제2 데이터는 상기 SE에서 생성된 암호화폐 소유자의 암호화폐 주소, 상기 암호화폐 소유자의 개인키 및 공개키를 포함하는 것을 특징으로 한다.

    사용자 단말과, 상기 사용자 단말과 네트워크 연결된 SE(Secure element)를 이용한 본 발명의 또 다른 면에 따른 암호화폐 관리 방법은, (a) 상기 SE가 상기 사용자 단말로부터 타인의 공개키 및 상기 SE에 저장된 데이터 관리를 위한 명령어를 수신하는 단계; (b) 상기 명령어가 암호화폐 소유자의 개인키 및 공개키를 생성하기 위한 것인 경우, 상기 암호화폐 소유자의 개인키 및 공개키를 생성하는 단계; (c) 상기 암호화폐 소유자의 공개키를 이용하여 상기 암호화폐 소유자의 암호화폐 주소를 생성하는 단계; 및 (d) 상기 상기 암호화폐 소유자의 암호화폐 주소를 상기 명령어에 대한 응답으로 상기 사용자 단말로 송신하는 단계를 포함한다.

    이상 상술한 바와 같은 본 발명에 따르면, 사용자 단말과 별개의 SE에서 개인키 및 암호화폐와 같은 중요 데이터가 저장되고, 그 외 중요하지 않은 데이터, 예컨대 거래 내역(log data)은 사용자 단말의 일반 저장장치에 분리 저장된다. 따라서, 대용량의 저장 공간을 요구하지 않으면서도 암호화폐 거래시 요구되는 중요 데이터를 안전하게 보관할 수 있다.

    또한, 암호화폐 거래에 필요한 트랜잭션 데이터 생성과 같은 동작이 SE에서 실행되도록 구현함으로써, 외부로부터의 데이터 변경 및 조작을 방지할 수 있다. 따라서, 중요하지 않은 데이터를 저장하는 암호화폐 지갑 파일이 외부에 노출되더라도 소유자의 암호화폐를 안전하게 보호할 수 있으며, 외부에서 조작에 의해 암호화폐 지갑 파일이 삭제된다고 하더라도 SE 내에 저장된 중요 데이터를 이용하여 파일을 복구할 수 있는 이점이 있다.

    도 1은 종래기술에 따른 암호화폐 관리 시스템을 설명하기 위한 도면.
    도 2는 본 발명의 실시예에 따른 SE(Secure element)를 이용한 암호화폐 관리 시스템의 구성도.
    도 3은 도 2에 도시된 암호화폐 관리 시스템의 상세 블록도.
    도 4는 본 발명의 실시예에 따른 SE(Secure element)를 이용한 암호화폐 관리방법의 제1 예시도.
    도 5 및 도 6은 본 발명의 실시예에 따른 SE(Secure element)를 이용한 암호화폐 관리방법의 제2 예시도.

    본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 것이며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 기재에 의해 정의된다. 한편, 본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises)" 또는 "포함하는(comprising)"은 언급된 구성요소, 단계, 동작 및/또는 소자 이외의 하나 이상의 다른 구성요소, 단계, 동작 및/또는 소자의 존재 또는 추가를 배제하지 않는다.

    이하, 본 발명의 바람직한 실시예를 첨부된 도면들을 참조하여 상세히 설명한다. 우선 각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가급적 동일한 부호를 부여하고 또한 본 발명을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있는 경우에는 그 상세한 설명은 생략한다.

    도 2는 본 발명의 실시예에 따른 SE(Secure element)를 이용한 암호화폐 관리 시스템의 구성도이다.

    도 2를 참조하면, 본 발명의 실시예에 따른 SE를 이용한 암호화폐 관리 시스템은 사용자 단말(100)과, SE(170,200,300)을 포함하여 구성된다.

    사용자 단말(100)은 네트워크로 연결된 다른 사용자 단말과 암호화폐를 이용한 결제 프로세스를 처리할 수 있는 기기로서, 랩톱 또는 데스크톱 컴퓨터들, 셀룰러 폰들, 스마트 폰들, 무선 모뎀들, e-리더들, 태블릿 디바이스들, 게이밍 시스템들 등을 포함한다.

    사용자 단말(100)은 인터넷과 같은 공용망을 이용하여 타 사용자 단말과 피어-투-피어(peer to peer)로 연결되어 저장된 자료를 1 대 1로 주고 받는다. 사용자 단말(100)에는 암호화폐 결제를 지원하기 위한 소프트웨어(또는 어플리케이션)이 설치되어 있으며, 사용자는 설치된 소프트웨어를 이용하여 결제 금액을 암호화폐로 타 사용자 단말에 이체한다.

    즉, 암호화폐를 이용한 결제에는 결제 금액을 지불하는 자와, 결제 금액을 수신하는 자가 요구된다. 여기서, 결제 금액을 지불하는 자가 사용하는 사용자 단말을 발신자 사용자 단말이라 하고, 결제 금액을 수신하는 자가 사용하는 사용자 단말을 수신자 사용자 단말이라 일컫는다. 발신자 사용자 단말에서는 결제 금액을 지불하기 위한 태스크(Task)가 프로세서(130)에서 처리되고, 수신자 사용자 단말에서는 결제 금액을 수신하기 위한 태스크가 프로세서(130)에서 처리된다.

    이를 위해, 사용자 단말(100)은 암호화폐를 이용한 결제에 필요한 일부 데이터가 저장되는 대용량 메모리(110)와, 결제 금액 지불 및 수신을 위한 태스크를 처리하는 프로세서(130), 타 사용자 단말과 통신 연결을 위한 모뎀부(150)를 포함한다.

    한편, 본 발명의 실시예에 따른 암호화폐 관리 시스템은 암호화폐를 이용한 결제에 필요한 데이터를 저장할 수 있는 별도의 SE(Secure Element)를 포함하는 것을 특징으로 한다. 암호화폐를 이용한 결제에는 서명에 사용되는 소유자의 개인키와 암호화폐가 가장 중요하다. 여기서, 개인키와 암호화폐는 사용자 단말(100)과 네트워크로 연결된 SE에 저장되고, 그 외 데이터는 사용자 단말(100)의 대용량 메모리(110)의 wallet.dat 파일에 저장된다.

    이와 같이, 본 발명의 실시예에 따른 암호화폐 관리 시스템은 암호화폐를 이용한 결제에 요구되는 데이터의 중요도에 따라, 그 데이터를 SE와 일반 대용량 메모리에 분리하여 저장 및 관리하는 것을 특징으로 한다. 이로 인해, 일반 대용량 메모리에 저장된 wallet.dat 파일이 외부의 공격에 의해 변경 및 조작되더라도 암호화폐는 안전하게 보관될 수 있다.

    한편, 본 발명의 실시예에서 SE(Secure element)로는 임베디드 SE(170), MicroSD SE(200), UICC(Universal IC Card, 300)가 사용될 수 있으며, SE 내에는 스마트카드 IC와 같은 물리적으로 안전한 보안 칩이 내장된다.

    이하, 도 3을 참조하여, 본 발명의 실시예에 따른 암호화폐 관리 시스템에서 사용자 단말과 SE의 내부 구성을 구체적으로 살펴본다. 도 3은 도 2에 도시된 암호화폐 관리 시스템의 상세 블록도이다.

    도 3을 참조하면, 사용자 단말(100)은 제1 저장부(110), 제어부(130), 제1 네트워크 인터페이스부(131)를 포함한다.

    제1 저장부(110)는 대용량 메모리 장치로 구현될 수 있으며, 암호화폐를 이요한 결제에서 요구되는 데이터 중에서 타인의 암호화폐 주소, 타인의 공개키, 및 거래 내역 등의 데이터를 wallet.dat 파일 형태로 저장한다.

    제어부(130)는 암호화폐 지갑 어플리케이션을 구동하고 암호화폐 지갑의 기능을 SE에서 처리되어야 하는 기능과, 사용자 단말에서 처리되어야 하는 기능으로 구분한다. 구체적으로, 제어부(130)는 제1 저장부(110)의 암호화폐 지갑(wallet)에 저장된 제1 데이터를 관리하기 위한 제1 명령어와, 상기 사용자 단말(100)과 네트워크 연결된 SE(200)의 제2 저장부(260)에 제2 데이터를 관리하기 위한 제2 명령어를 생성한다.

    여기서, 상기 제1 데이터는 타인의 암호화폐 주소, 타인의 공개키, 및 거래 내역을 포함하고, 상기 제2 데이터는 상기 SE에서 생성된 암호화폐 소유자의 암호화폐 주소, 상기 암호화폐 소유자의 개인키 및 공개키를 포함한다.

    제어부(130)에서 생성된 제2 명령어는 제1 네트워크 인터페이스부(131)를 통해 SE(200)로 전달되며, SE(200)에서는 상기 제2 명령어에 기초하여 암호화폐 결제를 위한 동작들을 수생하고, 그 결과 값만을 사용자 단말(100)로 반환한다.

    즉, 암호화폐 결제와 관련된 중요 데이터를 SE(200)에서 보관하고, 암호화폐 결제에 요구되는 중요한 동작이 SE(200)에서 수행되고, 사용자 단말(100)은 그 결과 값만 받게 됨으로써, 중요 데이터 및 동작의 외부 노출에서 자유롭게 된다.

    또한, 제어부(130)는 암호화폐를 이용한 결제 시, 제1 저장부(110)에 저장된 wallet.dat 파일을 쓰고 읽음으로써 동작할지, 아니면 네트워크로 연결된 SE(200)를 쓰고 읽음으로써 동작할 지를 결정한다. 예컨대, 암호화폐 결제 시 필요한 거래 데이터 생성 시 소유자의 해당 주소 내 암호화폐 정보 및 개인키 서명은 SE(200)에서 수행하도록 결정하고, 수신자의 암호화폐 주소 및 거래 내역 등은 사용자 단말(100)의 제1 저장부(110)에서 읽고 쓰도록 결정할 수 있다.

    제1 네트워크 인터페이스부(131)는 사용자 단말(100)에서 SE(200)와의 통신 연결을 담당하는 것으로서, 프로토콜 제어부(131a)와 하드웨어 제어부(131b)를 포함한다.

    제1 네트워크 인터페이스부(131)는 SE(200) 내의 암호화폐 저장 및 관리를 위해 상기 제어부(130)에서 생성된 상기 제2 명령어를 해당 SE 프로토콜에 맞춰 SE(200)로 송신하거나, SE(200)로부터 수신한 상기 제2 명령어에 대한 응답을 상기 제어부(130)로 전달하는 인터페이스 역할을 한다.

    제1 네트워크 인터페이스부(131)는 UICC SE, MicroSD SE, 또는 임베디드 SE를 지원할 수 있으며, 본 발명의 실시예는 이에 한정되지 않고 다양한 인터페이스를 사용하여 구현될 수 있음은 자명하다.

    SE(200)는 제2 네트워크 인터페이스부(210), 키 생성부(220), 주소 생성부(230), 암복호화부(240), 해쉬 생성부(250), 및 제2 저장부(260)를 포함한다.

    제2 네트워크 인터페이스부(210)는 상기 제1 네트워크 인터페이스부(131)와 연동하여 사용자 단말(100)과의 통신 연결을 담당한다.

    또한, 제2 네트워크 인터페이스부(210)는 사용자 단말(100)로부터 전송된 명령어를 파싱하고, 파싱된 결과에 따라 그 명령어를 실행할 수 있는 기능 블록으로 해당 명령어를 전달한다.

    키 생성부(220)는 공개키 알고리즘을 이용하여 암호화폐 소유자의 개인키 및 공개키를 생성한다. 여기서, 암호화폐 소유자의 공개키는 암호화폐 소유자의 암호화폐 주소를 생성하는데 사용될 수 있으며, 암호화폐 소유자의 개인키는 결제를 위해 생성된 트랜잭션 데이터에 대한 서명에 사용될 수 있다.

    주소 생성부(230)는 상기 암호화폐 소유자의 공개키를 이용하여 암호화폐 소유자의 암호화폐 주소를 생성한다. 이때, 주소 생성부(230)는 상기 암호화폐 소유자의 공개키를 해쉬 함수를 위한 키 값으로 사용하여 일정 길이를 갖는 암호화폐 주소를 생성한다.

    암복호화부(240)는 타인의 공개키나 상기 키 생성부(220)에서 생성된 암호키를 이용하여 암호화폐 관련된 데이터에 대한 암호화 및 복호화를 수행한다.

    예컨대, 암복호화부(240)는 암호화폐 소유자의 암호화폐 주소 및 결제할 금액이 포함된 트랜잭션 데이터를 타인의 공개키를 이용하여 암호화하거나, 타 사용자 단말에서 전송된 암호화된 트랜잭션 데이터를 소유자의 개인키를 이용하여 복호화할 수 있다. 이때, 타인의 공개키는 사용자 단말(100)의 제1 저장부(110)에 저장되어 있는데, 네트워크 인터페이스를 통해 SE(200)로 전달된다.

    또한, 암복호화부(240)는 암호화된 트랜잭션 데이터에 대해 암호화폐 소유자의 개인키를 이용하여 서명을 할 수도 있다.

    해쉬 생성부(250)는 암호화폐 관련된 데이터에 대한 일정한 길이의 해쉬 데이터를 생성한다. 해쉬 데이터는 원본 데이터가 한 비트만 변경되어도 극적으로 그 값이 달라지므로, 원본 데이터의 무결성 유무를 확인할 때 사용된다.

    제2 저장부(260)는 암호화폐, 상기 암호화폐 소유자의 암호화폐 주소, 상기 암호화폐 소유자의 개인키 및 공개키를 저장한다.

    이하, 도 4 내지 도 6을 참조하여 본 발명의 실시예에 따른 SE(Secure element)를 이용한 암호화폐 관리 방법을 설명한다.

    도 4는 본 발명의 실시예에 따른 SE(Secure element)를 이용한 암호화폐 관리방법의 제1 예시도로서, 암호화폐 소유자의 암호화폐 주소를 생성하는 과정이 도시된다.

    도 4에서 참조번호 100은 결제 금액을 지불하는 자가 사용하는 발신자 사용자 단말을 지칭하고, 참조번호 200은 발신자 SE를 지칭한다. 암호화폐 주소를 생성하는 과정은 발신자 사용자 단말뿐만 아니라, 수신자 사용자 단말에서도 수행될 수 있으나, 설명의 편의를 위해 발신자 사용자 단말에서 해당 과정이 수행되는 것으로 가정한다.

    먼저, 발신자 사용자 단말(100)에서 암호화폐 지갑 어플리케이션이 구동되고, 이에 암호화폐 주소 생성 요청이 입력된다(S410).

    다음으로, 제어부(130)는 제1 네트워크 인터페이스부(131)에 암호화폐 주소 생성을 위한 키쌍 생성 요청을 전달하고(S420), 제1 네트워크 인터페이스부(131)는 키쌍 생성 명령을 생성한다(S430).

    이후, 발신자 사용자 단말(100)은 발신자 SE(200)로 생성된 키쌍 생성 명령을 전달한다(S440).

    발신자 SE(200)의 키 생성부(220)는 전송된 키쌍 생성 명령에 따라, 공개키 암호 알고리즘을 이용하여 암호화폐 소유자의 개인키 및 공개키를 생성하고, 필요하다면 암복호용 암호키 쌍도 생성한다(S450).

    생성된 키쌍, 예컨대 개인키 및 공개키 및/또는 암복호용 암호키쌍은 제2 저장부(260)에 저장된다(S460).

    이후, 주소 생성부(230)는 상기 암호화폐 소유자의 공개키를 이용하여 암호화폐 소유자의 암호화폐 주소를 생성한다(S470). 이때, 주소 생성부(230)는 상기 암호화폐 소유자의 공개키를 해쉬 함수를 위한 키 값으로 사용하여 일정 길이를 갖는 암호화폐 주소를 생성한다.

    생성된 암호화폐 주소는 발신자 SE(200)에서 발신자 사용자 단말(100)로 전달되고(S480), 발신자 사용자 단말(100)의 제어부(130)는 전달된 암호화폐 주소를 표시한다(S490).

    도 5 및 도 6은 본 발명의 실시예에 따른 SE(Secure element)를 이용한 암호화폐 관리방법의 제2 예시도로서, 암호화폐를 이용한 결제 과정이 도시된다.

    도 5에서 참조번호 100은 결제 금액을 지불하는 자가 사용하는 발신자 사용자 단말을 지칭하고, 참조번호 200은 발신자 SE를 지칭한다. 또한, 도 6에서 참조번호 100'은 결제 금액을 수신하는 자가 사용하는 수신자 사용자 단말을 지칭하고, 참조번호 200'은 수신자 SE를 지칭한다.

    먼저, 발신자 사용자 단말(100)에서 암호화폐 지갑 어플리케이션이 구동되고, 이에 암호화폐를 이용한 결제 요청이 입력된다(S505). 예컨대, 암호화폐 지갑 어플리케이션에서는 결제 금액을 지급받을 수신자 암호화폐 주소 및 결제 금액을 선택할 수 있는 사용자 인터페이스가 제공되고, 사용자는 이를 이용하여 수신자 암호화폐 주소 및 결제 금액을 선택한 결제 요청을 입력한다.

    다음으로, 제어부(130)는 제1 네트워크 인터페이스부(131)에 결제를 위한 트랜잭션 데이터 생성 요청을 전달하고(S510), 제1 네트워크 인터페이스부(131)는 트랜잭션 데이터 생성 명령을 생성한다(S515).

    이후, 발신자 사용자 단말(100)은 발신자 SE(200)로 생성된 트랜잭션 데이터 생성 명령을 전달한다(S520).

    발신자 SE(200)는 트랜잭션 데이터 생성 명령에 따라, 발신자 암호화폐 주소 및 결제 금액이 선택된 트랜잭션 데이터를 생성하고(S525), 수신자 공개키를 이용하여 선택된 발신자 암호화폐 주소 및 결제 금액 데이터를 암호화한다(S530).

    이후, 발신자 SE(200)는 발신자 개인키를 이용하여 암호화된 트랜잭션 데이터에 서명하여 트랜잭션 데이터 생성을 완료한다(S535).

    트랜잭션 데이터가 성공적으로 생성된 경우, 발신자 SE(200)는 발신자 사용자 단말(100)로 트랜잭션 데이터 생성 완료 메시지를 전달한다(S540).

    트랜잭션 데이터 생성 완료 메시지를 수신한 발신자 사용자 단말(100)은 트랜잭션 데이터 전송을 위한 전송 명령을 생성하고(S545), 이를 발신자 SE(200)로 전달한다(S550).

    트랜잭션 전송 명령을 수신한 발신자 SE(200)는 암호화 및 서명된 트랜잭션 데이터의 무결성을 보장하기 위해 해쉬 값을 생성하고(S555), 이 해쉬 값과 함께 암호화 및 서명된 트랜잭션 데이터를 발신자 사용자 단말(100)로 전송한다(S560).

    도 6을 참조하여 설명을 이어나가면, 발신자 사용자 단말(100)은 결제 금액을 수신할 수신자 사용자 단말(100')로 해쉬 값과 함께 암호화 및 서명된 트랜잭션 데이터 및 발신자 공개키를 전송한다(S565).

    수신자 사용자 단말(100')의 제어부(130)는 암호화 및 서명된 트랜잭션 데이터 인증 요청을 제1 네트워크 인터페이스부(131)에 전달하고(S605), 제1 네트워크 인터페이스부(131)는 암호화 및 서명된 트랜잭션 데이터의 인증을 위한 명령을 생성한다(S610).

    이후, 수신자 사용자 단말(100')은 수신자 SE(200')로 생성된 인증 명령과 함께 발신자 공개키를 전달한다(S615).

    수신자 SE(200')는 인증 명령에 따라, 해쉬 값을 이용하여 암호화 및 서명된 트랜잭션 데이터의 무결성을 확인하고(S620), 무결성이 확인되는 경우, 발신자 공개키를 이용하여 트랜잭션 데이터에 대한 서명의 유효성을 확인한다(S625).

    유효성이 확인된 암호화된 트랜잭션 데이터는 수신자 개인키에 의해 복호화되고(S630), 트랜잭션 데이터에 포함되어 결제 금액은 수신자 암호화폐 주소에 저장된다(S635).

    결제 금액에 상당하는 암호화폐가 수신자 암호화폐 주소에 저장이 완료되면, 저장완료 메시지 및 수신자의 암호화폐 잔고가 수신자 SE(200')에서 수신자 사용자 단말(100')로 전송된다(S640).

    저장완료 메시지 및 수신자의 암호화폐 잔고가 수신자 사용자 단말(100')로 전송되면, 수신자 사용자 단말(100')의 제어부(130)는 구동되고 있는 암호화폐 지갑 어플리케이션 상에서 정상 거래 완료 및 암호화폐 잔고를 표시한다(S645).

    본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 본 발명의 보호범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구의 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.

    高效检索全球专利

    专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

    我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

    申请试用

    分析报告

    专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

    申请试用

    QQ群二维码
    意见反馈