KR102067882B1 - 블록체인 기반 데이터 접근 제어 시스템 및 방법 - Google Patents

블록체인 기반 데이터 접근 제어 시스템 및 방법 Download PDF

Info

Publication number
KR102067882B1
KR102067882B1 KR1020170183719A KR20170183719A KR102067882B1 KR 102067882 B1 KR102067882 B1 KR 102067882B1 KR 1020170183719 A KR1020170183719 A KR 1020170183719A KR 20170183719 A KR20170183719 A KR 20170183719A KR 102067882 B1 KR102067882 B1 KR 102067882B1
Authority
KR
South Korea
Prior art keywords
data
transaction
blockchain
access
address
Prior art date
Application number
KR1020170183719A
Other languages
English (en)
Other versions
KR20190081299A (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 KR1020170183719A priority Critical patent/KR102067882B1/ko
Publication of KR20190081299A publication Critical patent/KR20190081299A/ko
Application granted granted Critical
Publication of KR102067882B1 publication Critical patent/KR102067882B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/604Tools and structures for managing or administering access control systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • 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/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
    • H04L2209/38

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Automation & Control Theory (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Storage Device Security (AREA)

Abstract

본 발명은 데이터 접근 제어 시스템 및 방법에 관한 것으로, 더욱 상세하게는 클라우드 서버에 데이터 저장 시 블록체인에 기반하여 데이터를 업로드하고, 저장되는 데이터의 공유 시 블록체인에 기반하여 인증을 수행한 후 해당 데이터를 공유하는 블록체인 기반 데이터 접근 제어 시스템 및 방법에 관한 것이다.

Description

블록체인 기반 데이터 접근 제어 시스템 및 방법{Block chain based data access control system and method thereof}
본 발명은 데이터 접근 제어 시스템 및 방법에 관한 것으로, 더욱 상세하게는 클라우드 서버에 데이터 저장 시 블록체인에 기반하여 데이터를 업로드하고, 저장되는 데이터의 공유 시 블록체인에 기반하여 인증을 수행한 후 해당 데이터를 공유하는 블록체인 기반 데이터 접근 제어 시스템 및 방법에 관한 것이다.
최근 통신기술 및 모바일 단말 기술의 급속한 발전으로, 모바일 단말기를 이용하여 인터넷 상에서 판매되는 상품을 구매하여 결제하는 인터넷 쇼핑 시스템 및 금융 거래 시스템, 인터넷 상의 클라우드 서버에 데이터를 등록하여 저장한 후 언제 어디서나 다운로드 받아 활용할 수 있는 클라우드 시스템 등과 같은 다양한 정보 처리 시스템들이 개발되어 적용되고 있다.
정보 처리 시스템은 개인들의 중요한 정보를 다루므로 제3자에 의한 해킹을 방지하기 위해 다양한 보안 기술들이 적용되고 있다.
특히, 최근에는 가상화폐인 비트코인과 비트코인에 적용된 블록체인(Block Chain) 보안 기술에 대한 관심이 급속도로 커지고 있다.
비트코인은 누구나 열람할 수 있는 장부에 거래 내역을 투명하게 기록하며, 비트코인을 사용하는 여러 컴퓨터가 10분에 한 번씩 이 기록을 검증하여 해킹을 막는다. 일부 국가에선 비트코인으로 영화표나 비행기 표를 구매할 수 있으며, 국내에도 몇 개의 비트코인 거래소가 개설되어 현금으로 교환할 수 있을 정도이다.
이러한 비트코인에 적용되는 기술 중 하나가 블록체인이다.
구체적으로, 블록체인은 공공 거래 장부라고도 부르며 가상 화폐로 거래할 때 발생할 수 있는 해킹을 막는 기술이다. 기존 금융 회사의 경우 중앙 집중형 서버에 거래 기록을 보관하는 반면, 블록체인은 거래에 참여하는 모든 사용자에게 거래 내역을 보내 주며 거래 때마다 이를 대조해 데이터 위조 여부를 판단한다.
한편, 사용자들의 데이터를 온라인상의 하드웨어에 저장하여 공유하는 클라우드 시스템 등과 같은 데이터 접근 제어 시스템은 중앙 집중형 클라우드 서버를 이용한 클라우드 저장소(Storage)에 접속하여 데이터 또는 파일들을 저장하고 관리한다.
그러나 제3자가 이러한 중앙 집중형 클라우드 서버만 해킹하면 클라우드 저장소에 있는 모든 데이터가 상기 제3자를 통해 외부로 유출될 수 있는 문제점이 있었다.
대한민국 등록특허 제10-1781583호(2017.09.27.공개)
따라서 본 발명의 목적은 클라우드 서버에 데이터 저장 시 블록체인에 기반하여 데이터를 업로드하고, 저장되는 데이터의 공유 시 블록체인에 기반하여 인증을 수행한 후 해당 데이터를 공유하는 블록체인 기반 데이터 접근 제어 시스템 및 방법을 제공함에 있다.
상기와 같은 목적을 달성하기 위한 본 발명에 따른 블록체인 기반 데이터 접근 제어 시스템은: 다수의 사용자 단말부들을 등록하고 블록체인 주소를 생성하여 할당하는 인증기관 서버를 포함하며, 사용자 단말부들 중 임의의 사용자 단말부에서 발생되는 트랜잭션을 다른 전체 사용자 단말부들에 분산 저장하여 블록체인을 형성하는 블록체인 네트워크; 상기 블록체인 네트워크에 포함되어 상기 사용자 단말부들의 트랜잭션을 분산 저장하고, 블록체인 네트워크의 임의의 사용자 단말부로부터 데이터를 수신받아 저장하고, 저장된 데이터에 대해 임의의 사용자 단말부로부터 접근 요청 발생 시 상기 블록체인을 통한 토큰 트랜잭션에 의해 검증을 수행하여 인증 성공 시 해당 사용자 단말부의 해당 데이터 접근을 허용하는 클라우드 서버; 데이터 소유주 모드에서 상기 블록체인 네트워크에 등록된 사용자 단말부로 상기 클라우드 서버에 데이터를 저장한 후 공유 요청하고, 상기 데이터에 접근하기 위한 접근 권한 요청 트랜잭션의 발생 시 토큰 트랜잭션을 생성하여 상기 블록체인에 분산 저장하는 데이터 소유주 단말부로 동작하고, 데이터 요청 모드에서 상기 블록체인 네트워크에 등록된 사용자 단말부로 상기 클라우드 서버에 저장된 임의의 데이터에 접근하고자 할 때 상기 데이터를 저장한 상기 데이터 소유주 단말부에 분산 저장되도록 상기 접근 권한 요청 트랜잭션을 상기 블록체인에 분산 저장하고, 상기 데이터 소유주 단말부에 의해 분산 저장된 토큰 트랜잭션에 의해 상기 클라우드 서버의 해당 데이터에 접근하는 데이터 요청자 단말부로 동작하는 사용자 단말부를 포함하는 것을 특징으로 한다.
상기 사용자 단말부는, 상기 인증기관 서버로 등록을 요청하는 등록 요청 트랜잭션을 전송하여 등록하고 그에 따라 상기 인증기관 서버로부터 등록 응답 트랜잭션을 수신받아 상기 블록체인 주소인 인증된 주소를 생성하며 검증 트랜잭션을 생성하여 클라우드 서버를 통해 부분 공개키를 수신받아 인증 개인키를 생성하여 블록체인 네트워크에 등록하는 사용자 등록부; 상기 데이터 소유주 단말부로 동작하기 위한 동작 처리를 수행하는 데이터 공유 처리부; 상기 데이터 요청자 단말부로 동작하기 위한 동작 처리를 수행하는 데이터 요청 처리부; 및 상기 사용자 등록부, 공유 처리부 및 데이터 요청 처리부에서 발생되는 트랜잭션들을 상기 블록체인 네트워크상의 블록체인에 분산 저장하는 블록체인 처리부를 포함하는 것을 특징으로 한다.
상기 사용자 등록부는, 블록체인 네트워크에서 사용할 공개키를 생성하는 공개키 생성부; 블록체인 네트워크에서 사용할 개인키를 생성하는 개인키 생성부; 주소를 생성하는 주소 생성부; 상기 공개키 및 주소를 포함하는 상기 등록 요청 트랜잭션을 생성하여 인증기관 서버로 제공하고, 그에 따른 상기 등록 응답 트랜잭션을 수신받는 등록 처리부; 상기 생성된 블록체인 주소 및 등록 응답 트랜잭션에 근거하여 인증된 인증 주소를 생성하는 인증주소 생성부; 상기 인증 주소의 인증여부를 검사하기 위한 검증 트랜잭션을 생성하는 검증 트랜잭션 생성부; 상기 검증 트랜잭션을 포함하는 부분 개인키 요청 신호를 클라우드 서버로 전송하고 그에 따른 부분 개인키를 획득하는 부분 개인키 획득부; 및 상기 부분 개인키를 활용하여 인증 개인키를 생성하는 인증 개인키 생성부를 포함하는 것을 특징으로 한다.
상기 데이터 공유 처리부는, 클라우드 서버에 업로드한 데이터에 대한 암호화 및 데이터 요청자에 대한 권한을 승인하는 권한 승인부; 및 업로드한 상기 데이터의 업데이트 여부를 모니터링하고, 업데이트 시의 레코드 업데이트 트랜잭션을 생성하여 데이터의 접근을 허용한 데이터 요청자 단말부로 전송하고, 상기 데이터에 대한 접근권한을 업데이트하는 업데이트부를 포함하되, 상기 권한 승인부는, 업로드한 데이터에 대한 해시결과를 포함하는 데이터 해시 트랜잭션을 생성하여 블록체인 네트워크에 추가하는 데이터 해시 트랜잭션 생성부; 상기 데이터의 요청 발생 시 권한 부여를 위한 토큰 트랜잭션을 생성하여 데이터 요청자 단말부로 제공하는 토큰 트랜잭션 생성부; 및 상기 데이터를 재암호화하기 위해 상기 토큰 트랜잭션에 대응하고 요청자의 공개키를 사용하는 재암호화키를 생성하여 클라우드 서버로 전송하는 재암호화키 생성부를 포함하는 것을 특징으로 한다.
데이터 요청 처리부는, 데이터 소유주 단말부로부터 수신한 토큰 트랜잭션에 근거하여 상기 데이터에 접근을 요청하는 정보 접근 요청 트랜잭션을 상기 클라우드 서버로 전송하여 데이터의 접근을 요청하는 권한 요청부; 및 상기 데이터의 접근 요청에 대해 상기 클라우드 서버로부터 재암호화키에 의해 재암호화된 암호화 데이터를 획득하고, 상기 토큰 트랜잭션에 근거한 비밀키로 복호화하여 데이터를 획득하는 데이터 접근부를 포함하는 것을 특징으로 한다.
상기 데이터 요청 처리부는, 상기 데이터 소유주 단말부로부터 데이터 업데이트에 대한 레코드 업데이트 트랜잭션을 수신받고, 상기 레코드 업데이트 트랜잭션에 포함된 토큰으로 이전 토큰을 갱신하는 토큰 업데이트부를 더 포함하는 것을 특징으로 한다.
상기와 같은 목적을 달성하기 위한 본 발명에 따른 블록체인 기반 데이터 접근 제어 방법은: 데이터 소유주 단말부, 데이터 요청자 단말부, 클라우드 서버가 인증기관 서버로부터 블록체인 주소를 할당받아 블록체인 네트워크에 등록하는 블록체인 네트워크 등록 과정; 상기 데이터 소유주 단말부 및 데이터 요청자 단말부가 상기 블록체인 주소에 근거하여 인증된 주소를 생성하고, 인증된 주소에 근거한 검증 트랜잭션을 생성하여 상기 블록체인 네트워크에 분산 등록하고, 상기 검증 트랜잭션을 상기 클라우드 서버로 제공한 후 상기 검증 트랜잭션에 대한 부분 개인키를 수신받아 인증 개인키를 생성하여 상기 클라우드 서버에 등록하는 클라우드 서버 등록 과정; 상기 데이터 소유주 단말부가 공개할 데이터를 공개키로 암호화하여 클라우드 서버에 등록하는 데이터 공유 과정; 데이터 요청자 단말부가 상기 데이터에 접근하기 위해 상기 데이터 소유주 단말부로 상기 데이터에 대한 접근 권한을 요청하고, 그에 대해 상기 블록체인 네트워크에 분산 등록된 토큰 트랜잭션을 수신받아 상기 데이터에 대한 접근 권한을 승인받는 접근 권한 획득 과정; 및 상기 데이터 요청자 단말부가 상기 클라우드 서버로 상기 토큰 트랜잭션을 포함하는 정보 접근 요청 트랜잭션을 전송하여 상기 데이터에 대한 접근을 요청하고, 상기 클라우드 서버의 토큰 트랜잭션에 의한 검증 성공 시 해당 데이터에 접근하는 데이터 접근 과정을 포함하는 것을 특징으로 한다.
블록체인 네트워크 등록 과정은, 블록체인 네트워크에서 사용할 공개키를 생성하는 공개키 생성 단계; 블록체인 네트워크에서 사용할 개인키를 생성하는 개인키 생성 단계; 주소를 생성하는 주소 생성 단계; 및 상기 생성된 공개키 및 주소를 사용하여 등록 요청 트랜잭션을 생성하여 인증기관 서버로 제공하고, 그에 따른 등록 응답 트랜잭션을 수신받아 블록체인 네트워크에 사용할 인증된 주소인 블록체인 주소를 생성하는 블록체인 주소 생성 단계를 포함하는 것을 특징으로 한다.
상기 클라우드 서버 등록 과정은, 생성된 상기 주소 및 등록 응답 트랜잭션에 근거하여 인증된 인증 주소인 블록체인 주소를 생성하는 인증주소 생성 단계; 상기 인증 주소의 인증여부를 검사하기 위한 검증 트랜잭션을 생성하는 검증 트랜잭션 생성 단계; 상기 검증 트랜잭션을 블록체인 네트워크에 분산 등록하는 검증 트랜잭션 블록체인 형성 단계; 상기 검증 트랜잭션을 포함하는 부분 개인키 요청 신호를 클라우드 서버로 전송하고 그에 따른 부분 개인키를 획득하는 부분 개인키 획득 단계; 및 상기 부분 개인키를 활용하여 인증 개인키를 생성하는 인증 개인키 생성 단계를 포함하는 것을 특징으로 한다.
상기 접근 권한 획득 과정은, 데이터 요청자 단말부가 상기 데이터에 접근하기 위해 상기 데이터 소유주 단말부로 상기 데이터에 대한 접근 권한을 요청하는 접근 권한 요청 단계; 상기 데이터 소유주 단말부가 상기 데이터 요청자 단말부로부터 접근 권한 요청 발생 시 그에 대해 토큰 트랜잭션을 생성하여 상기 블록체인 네트워크에 분산 등록한 후 상기 데이터 요청자 단말부로 제공하는 접근 권한 부여 단계; 상기 데이터 요청자 단말부가 상기 토큰 트랜잭션을 수신받아 상기 데이터에 대한 접근 권한을 승인받는 접근 권한 승인 획득 단계를 포함하는 것을 특징으로 한다.
상기 접근 권한 부여 단계는, 상기 데이터 소유주 단말부가 상기 데이터 요청자 단말부로부터 접근 권한 요청 발생 시 그에 대해 토큰 트랜잭션을 생성하는 토큰 트랜잭션 생성 단계; 상기 토큰 트랜잭션을 상기 블록체인 네트워크에 분산 등록하는 토큰 트랜잭션 블록체인 형성 단계; 상기 블록체인 형성 후 상기 토큰 트랜잭션을 상기 데이터 요청자 단말부로 제공하는 토큰 트랜잭션 제공 단계; 상기 토큰 트랜잭션에 근거한 재암호화키를 생성하는 재암호화키 생성 단계; 및 상기 재암호화키를 클라우드 서버에 제공하여 해당 데이터에 맵핑하여 저장하는 재암호화키 등록 단계를 포함하는 것을 특징으로 한다.
데이터 접근 과정은, 상기 데이터 요청자 단말부가 상기 클라우드 서버로 상기 토큰 트랜잭션을 포함하는 정보 접근 요청 트랜잭션을 전송하는 정보 접근 요청 단계; 클라우드 서버가 정보 접근 요청 트랜잭션에 포함된 토큰 트랜잭션과 블록체인 상의 데이터 소유주 단말부에 대한 정보 접근 요청 트랜잭션의 기록을 확인하여 유효성을 판단하는 접근 유효성 판단 단계; 유효하면 상기 정보 접근 요청에 대응하는 데이터를 상기 데이터 소유자 단말부로부터 등록된 상기 재암호화키로 암호화하여 상기 데이터 요청자 단말부로 제공하는 암호화 데이터 제공 단계; 및 상기 데이터 요청자 단말부가 상기 토큰 트랜잭션에 근거한 비밀키로 상기 암호화 데이터를 복호하여 해당 데이터를 획득하는 데이터 접근 단계를 포함하는 것을 특징으로 한다.
본 발명은 트랜잭션들을 블록체인 네트워크의 블록체인에 형성하는 시스템 및 장치들에 분산 저장한 후, 블록체인을 통한 검증을 수행하므로 데이터 접근 제어에 따른 보안성을 높일 수 있는 효과를 갖는다.
또한, 본 발명은 시스템에서 발생되는 트랜잭션들이 블록체인 네트워크의 모든 시스템 및 장치에 분산 저장되므로 클라우드 서버를 통하지 않고도 자신의 데이터에 대한 접근기록을 확인할 수 있는 효과를 갖는다.
도 1은 본 발명에 따른 블록체인 기반 데이터 접근 제어 시스템의 구성을 나타낸 도면이다.
도 2는 본 발명에 따라 블록체인 기반 데이터 접근 제어 시스템에서 블록체인 적용 개념을 나타낸 도면이다.
도 3은 본 발명에 따른 블록체인 기반 데이터 접근 제어 시스템의 사용자 단말부의 구성을 나타낸 도면이다.
도 4는 본 발명에 따른 블록체인 기반 데이터 접근 제어 방법을 나타낸 절차도이다.
도 5는 본 발명에 따른 블록체인 기반 데이터 접근 제어 방법 중 사용자 등록 방법을 나타낸 절차도이다.
도 6은 본 발명에 따른 블록체인 기반 데이터 접근 제어 방법 중 권한 요청 및 권한 부여 방법을 나타낸 절차도이다.
도 7은 본 발명에 따른 블록체인 기반 데이터 접근 제어 방법 중 데이터 요청자의 데이터 접근 방법을 나타낸 절차도이다.
이하 첨부된 도면을 참조하여 본 발명에 따른 블록체인 기반 데이터 접근 제어 시스템의 구성 및 동작을 상세히 설명하고, 상기 시스템에서의 블록체인 기반 데이터 접근 제어 방법을 설명한다.
도 1은 본 발명에 따른 블록체인 기반 데이터 접근 제어 시스템의 구성을 나타낸 도면이고, 도 2는 본 발명에 따라 블록체인 기반 데이터 접근 제어 시스템에서 블록체인 적용 개념을 나타낸 도면이다. 이하 도 1 및 도 2를 참조하여 설명한다.
본 발명에 따른 블록체인 기반 데이터 접근 제어 시스템은 사용자 단말부(100)인 데이터 소유주 단말부(100-1), 사용자 단말부인 데이터 요청자 단말부(100-2) 및 클라우드 서버(300)를 포함하고, 상기 데이터 소유주 단말부(100-1), 데이터 요청자 단말부(100-2) 및 클라우드 서버(300)가 가입되어 있고, 인증기관 서버(200) 및 다수의 사용자 단말부(100)를 포함하는 블랙체인 네트워크(400)를 포함한다.
상기 블랙체인 네트워크(400)에 포함되는 데이터 소유주 단말부(100-1), 데이터 요청자 단말부(100-2), 클라우드 서버(300) 및 인증기관 서버(200)는 유무선 데이터 통신망(500)을 통해 연결되어 데이터 통신을 수행한다.
상기 유무선 데이터 통신망(500)은 와이파이(WiFi) 망을 포함하는 인터넷망, 3세대(3 Generation: 3G), 4G, 5G 등을 포함하는 이동통신망, 와이브로망 등 중 적어도 하나 이상이 결합되어 있는 통신망이다.
데이터 소유주 단말부(100-1)는 블록체인 네트워크(400)에 등록된 사용자 단말부(100)로, 컴퓨터 단말기(10) 및 스마트폰, 스마트 패드 등과 같은 모바일 단말기(20)가 될 수 있으며, 임의의 데이터를 클라우드 서버(300)에 저장하여 공유하는 데이터 소유주의 사용자 단말부(100)이다.
데이터 요청자 단말부(100-2)는 블록체인 네트워크(400)에 등록된 사용자 단말부(100)로, 컴퓨터 단말기(10) 및 모바일 단말기(20)가 될 수 있으며, 상기 클라우드 서버(300)에 저장된 임의의 데이터 소유주 단말부(100-1)가 저장한 데이터에 접근하고자 하는 사용자 단말부(100)로서, 상기 데이터 소유주 단말부(100-1)로부터 해당 데이터의 접근 권한을 받은 후 클라우드 서버(300)의 해당 데이터에 접근한다.
인증기관 서버(200)는 블록체인 네트워크(400)에 등록된 서버로 블록체인 네트워크(400)에 등록하고자 하는 사용자 단말부(100)들로 인증된 주소인 블록체인 주소를 생성하여 할당한다.
클라우드 서버(300)는 데이터를 저장하고 공유하는 클라우드 서비스를 제공하고 블록체인 네트워크(400)에 등록된 서버로서, 데이터 소유주 단말부(100-1)로부터 데이터를 업로드받아 등록하고 데이터 소유주 단말부(100-1)의 공유 요청에 따라 데이터를 공유하되, 데이터 요청자 단말부(100-2)로부터 데이터 접근 요청 발생 시 블록체인에 등록된 토큰에 기반한 검증을 수행한 후 검증 여부에 따라 해당 데이터를 공유한다.
블록체인 네트워크(400)는 상기 데이터 소유주 단말부(100-1), 데이터 요청자 단말부(100-2)를 포함하는 다수의 사용자 단말부(100)들 및 인증기관 서버(200), 클라우드 서버(300)를 포함하는 네트워크로 상호 발생되는 트랜잭션들을 다른 사용자 단말부(100), 인증기관 서버(200) 및 클라우드 서버(300)에 분산 저장하여 블렉체인을 형성한다.
도 3은 본 발명에 따른 블록체인 기반 데이터 접근 제어 시스템의 사용자 단말부의 구성을 나타낸 도면이다.
본 발명에 따른 사용자 단말부(100)는 사용자 등록부(110), 데이터 공유 처리부(120), 데이터 요청 처리부(130) 및 블록체인 처리부(140)를 포함한다.
사용자 등록부(110)는 공개키 생성부(111), 개인키 생성부(112), 주소 생성부(113), 등록 처리부(114), 인증 주소 생성부(115), 검증 트랜잭션 생성부(116), 부분 공개키 생성부(117) 및 인증 개인키 생성부(118)를 포함하여 블록체인 네트워크(400)를 통해 클라우드 서버(300)에 사용자 단말부(100)를 등록한다.
구체적으로 설명하면, 공개키 생성부(111)는 블록체인 네트워크(400)에서 사용할 공개키(Public Key: PK)를 생성한다.
개인키 생성부(112)는 블록체인 네트워크(400)에서 사용할 개인키(Private Key)를 생성한다.
주소 생성부(113)는 주소(Address)를 생성한다.
등록 처리부(114)는 상기 개인키, 공개키 및 주소를 포함하는 등록 요청 트랜잭션을 생성하여 인증기관 서버(200)로 제공하고, 그에 따른 상기 등록 응답 트랜잭션을 수신받는다.
인증주소 생성부(115)는 상기 등록 처리부(114)를 통해 수신된 등록 응답 트랜잭션에 근거하여 블록체인 네트워크(400)에서 사용할 인증된 주소인 블록체인 주소를 생성하고 주소의 생성에 관여된 비밀키로 생성된 서명 및 공개키를 포함하는 트랜잭션의 형태로 블록체인 네트워크(400)에 저장하여 사용자 단말부 및 사용자 중 적어도 하나 이상을 등록 처리한다.
검증 트랜잭션 생성부(116)는 상기 인증 주소의 인증여부를 검사하기 위한 검증 트랜잭션을 생성한다.
부분 개인키 획득부(117)는 상기 검증 트랜잭션을 포함하는 부분 개인키 요청 신호를 클라우드 서버(300)로 전송하고 그에 따른 부분 개인키를 클라우드 서버(300)로부터 획득한다.
인증 개인키 생성부(118)는 상기 부분 개인키를 활용하여 인증 개인키(=비밀키)를 생성한다. 비밀키는 트랜잭션의 서명을 생성하는 데 사용된다.
데이터 공유 처리부(120)는 권한 승인부(121) 및 업데이트부(122)를 포함하여 데이터 소유주 모드에서 데이터 소유주 단말부로 동작하기 위한 동작 처리를 수행하는 것으로, 사용자가 선택한 데이터를 클라우드 서버(300)에 업로드하고, 업로드한 데이터의 암호화, 데이터에 접근하고자 하는 데이터 요청자 단말부(100-2)에 대해 블록체인을 활용한 권한 승인, 데이터의 업데이트에 대한 블록체인을 활용한 암호화 업데이트 등을 수행한다.
구체적으로 설명하면, 권한 승인부(121)는 업로드한 데이터에 대한 해시결과를 포함하는 데이터 해시 트랜잭션을 생성하여 블록체인 네트워크(400)에 추가하는 데이터 해시 트랜잭션 생성부(122), 데이터 요청 발생 시 권한 부여를 위한 토큰 트랜잭션을 생성하여 데이터 요청자 단말부(100-2)로 제공하는 토큰 트랜잭션 생성부(123) 및 상기 데이터를 재암호화하기 위해 상기 토큰 트랜잭션에 대응하고 요청자의 공개키를 사용하는 재암호화키를 생성하여 클라우드 서버(300)로 전송하는 재암호화키 생성부(124)를 포함한다.
업데이트부(125)는 상기 데이터의 업데이트를 모니터링하고, 상기 데이터의 업데이트 시 상기 데이터 해시 트랜잭션 생성부(121)를 구동하여 데이터의 해시 트랜잭션을 생성하여 갱신한다. 이 경우 이전에 생성된 토큰 트랜잭션을 사용할 수 없으며, 데이터 소유주는 업데이트 시 기존 발급한 접근 권한에 대해 갱신하거나 폐기함으로써 접근 관리가 가능하다.
데이터 요청 처리부(130)는 권한 요청부(131), 토큰 업데이트부(132), 데이터 접근부(133)를 포함하여, 데이터 요청 모드에서 데이터 요청자 단말부(100-2)로 동작하기 위한 동작 처리를 수행하는 것으로, 클라우드 서버(300)에 등록된 임의의 데이터에 대해 블록체인 네트워크(400)를 활용한 권한을 승인받아 해당 데이터에 접근한다.
상기 권한 요청부(131)는 데이터 소유주 단말부(100-1)로부터 수신한 토큰 트랜잭션에 근거하여 상기 데이터에 접근을 요청하는 정보 접근 요청 트랜잭션을 상기 클라우드 서버(300)로 전송하여 데이터의 접근을 요청한다.
상기 데이터 접근부(133)는 상기 데이터의 접근 요청에 대해 상기 클라우드 서버로부터 재암호화키에 의해 재암호화된 암호화 데이터를 획득하고, 상기 토큰 트랜잭션에 근거한 비밀키로 복호화하여 데이터를 획득한다.
상기 토큰 업데이트부(132)는 데이터 소유주 단말부(100-1)가 자신이 업로드한 데이터를 업데이트하는 경우 데이터 소유주 단말부(100-1)로부터 레코드 업데이트 트랜잭션을 포함하는 토큰 업데이트 요청 정보를 수신받아 포함된 레코드 업데이트 트랜잭션의 토큰으로 이전 토큰을 갱신한다.
블록체인 처리부(140)는 상기 사용자 등록부(110), 데이터 공유 처리부(120) 및 데이터 요청 처리부(130)에서 발생되는 트랜잭션들을 블록체인 네트워크(400)에 분산 저장하여 블록체인에 등록하는 동작을 수행한다.
도 4는 본 발명에 따른 블록체인 기반 데이터 접근 제어 방법을 나타낸 절차도이다.
도 4를 참조하여 설명함에 있어 데이터 소유주 단말부(100-1)는 클라우드 서버(300)에 데이터를 저장한 후 해당하는 데이터 트랜잭션의 트랜잭션 식별자를 접근 요청자 단말부(100-2)를 포함하는 다른 사용자 단말부(100)들로 알려주는 과정, 즉 블록체인 네트워크(400)에 포함시키는 과정을 전제로 하여 설명한다.
데이터 소유주 단말부(100-1) 및 데이터 요청자 단말부(100-2)를 포함하는 사용자 단말부(100)들과 클라우드 서버(300)는 인증기관 서버(200)에 접속하고, 인증기관 서버(200)를 통해 블록체인 주소를 생성하여 블록체인 네트워크(400)에 등록하는 등록 과정(S11)과, 데이터 소유주 단말부(100-1) 및 데이터 요청자 단말부(100-2)를 포함하는 사용자 단말부(100)는 클라우드 서버(300)에 데이터를 등록하고 등록된 데이터를 이용하기 위한 클라우드 서비스에 등록하기 위한 서비스 등록 과정(S12)을 포함하는 사용자 등록 과정을 수행하여야 한다(S100).
상기 사용자 등록 과정의 수행 후 데이터 소유주 단말부(100-1)는 공개할 데이터를 상기 사용자 등록 과정에서 생성된 공개키로 공개할 데이터를 암호화한(S13) 후 클라우드 서버(300)로 업로드하여 등록하는(S15) 데이터 공유 과정(S200)을 수행한다.
상기 데이터 공유 과정(S200)을 통해 데이터가 공유되면 상기 데이터 공유 과정에서 등록된 데이터에 접근하여 활용하고자 하는 임의의 데이터 요청자 단말부(100-2)는 데이터 소유주 단말부(100-1)로 상기 데이터에 대한 접근 권한을 요청하고(S17), 상기 접근 권한 요청을 받은 데이터 소유주 단말부(100-1)는 상기 접근 권한 요청에 대한 토큰 트랜잭션을 생성한(S19) 후 상기 토큰 트랜잭션을 데이터 요청자 단말부(100-2)로 전송하여(S21) 상기 데이터의 접근 권한을 부여하는 접근 권한 요청 및 접근 권한 부여 과정(S300)을 수행한다.
데이터 접근 권한을 부여받은 데이터 요청자 단말부(100-2)는 상기 토큰 트랜잭션을 소비하고, 데이터 트랜잭션을 참조하여 정보 접근 허가 요청 정보인 정보 접근 요청 트랜잭션을 생성하여 전송하고(S23), 그에 따른 인증기관 서버(200)를 통한 토큰 트랜잭션의 검증(S25) 후 데이터 요청자 단말부(100-2)의 요청자의 공개키로 암호화된 데이터를 획득하고(S29), 상기 토큰 트랜잭션에 근거한 비밀키로 상기 암호화된 데이터를 복호화하는 데이터 접근 과정(S400)을 수행한다.
이는 데이터 소유주 단말부(100-1)가 본인만의 비밀키로 자산이 업로드한 데이터를 복호할 수 있도록 최초 클라우드에 데이터를 업로드할 때 자신만 복호화가 가능하도록 자신의 공개키로 암호화하고, 데이터 요청자 단말부(100-2)가 적합한 접근 권한을 가지고 있을 경우, 암호화된 데이터를 복호화할 수 있는 권한을 위임하기 위한 것이다. 상기 재암화화키는 이러한 권한 위임을 가능하게 해주는 키로 데이터 소유주인 데이터 소유주 단말부(100-1)에 의해서 생성되며, 재암호화키를 사용한 재암호화 연산이후의 데이터는 데이터 접근을 요청한 데이터 요청자 단말부(100-2)의 비밀키로 복호화할 수 있는 상태로 변경한다. 즉, 재암호화키는 암호화에 사용되는 것이 아니라 사용자의 공개키로 암호화된 데이터를 접근 요청자가 복호화할 수 있도록 만들어주는 키이다.
도 5는 본 발명에 따른 블록체인 기반 데이터 접근 제어 방법 중 사용자 등록 방법을 나타낸 절차도이다. 도 5를 참조하여 사용자 단말부(100) 관점에서의 사용자 등록 방법(과정)을 상세히 설명한다.
데이터 소유주 단말부(100-1), 데이터 요청자 단말부(100-2) 및 제3사용자 단말부(100-n)의 사용자 단말부(100)는 사용자 등록부(110)의 공개키 생성부(111), 개인키 생성부(112) 및 주소 생성부(113)를 통해 블록체인에서 사용할 공개키, 개인키 및 주소를 생성한다(S111).
공개키, 개인키 및 주소가 생성되면 데이터 소유주 단말부(100-1)는 등록 요청 트랜잭션을 인증기관 서버(200)로 전송한다(S113).
인증기관 서버(200)는 상기 등록 요청 트랜잭션을 수신받아 저장하여 등록한(S115) 후, 등록 응답 트랜잭션을 생성하여 사용자 단말부(100)로 제공한다.
상기 등록 요청 트랜잭션 및 등록 응답 트랜잭션은 타임스탬프, 트랜잭션 식별정보, 공개키, 사인(Sign), 주소 등을 포함한다.
등록 응답 트랜잭션을 수신한 사용자 단말부(100)는 수신된 등록 응답 트랜잭션에 근거하여 인증된 주소를 생성하여(S119) 블록체인 네트워크 등록 과정을 수행한다.
인증된 주소가 생성되면 사용자 단말부(100)는 인증된 주소를 검증하기 위한 검증 트랜잭션을 생성한다(S121). 상기 검증 트랜잭션은 상기 인증된 주소를 포함할 것이다.
상기 검증 트랜잭션이 생성되면 사용자 단말부(100)는 인증된 주소를 포함하는 부분 개인키 요청 트랜잭션을 클라우드 서버(300)로 전송한다(S123).
부분 개인키 요청 트랜잭션을 수신한 클라우드 서버(300)는 상기 부분 개인키 요청 트랜잭션에 의해 부분 개인키를 생성한 후 저장하여 상기 사용자 단말부(100)를 클라우드 서비스 가입자로 등록하고(S125), 생성된 부분 개인키를 사용자 단말부(100)로 전송한다(S127).
사용자 단말부(100)는 상기 부분 개인키를 이용하여 인증된 인증 개인키를 생성하여 저장한다(S129).
도 6은 본 발명에 따른 블록체인 기반 데이터 접근 제어 방법 중 권한 요청 및 권한 부여 방법을 나타낸 절차도이다.
우선, 데이터 소유주 단말부(100-1)는 암호화하여 클라우드 서버(300)에 업로드한 데이터에 대한 데이터 해시 트랜잭션을 생성하여 블록체인 네트워크(400)에 분산 등록한다(S211).
상기 클라우드 서버(300)에 업로드되고 블록체인 네트워크(400)에 데이터 해시 트랜잭션이 추가된 데이터에 접근하고자 하는 데이터 요청자 단말부(100-2)는 접근 권한 요청 트랜잭션을 생성하여 데이터 소유주 단말부(100-1)로 전송하고(S213) 접근 권한 요청 트랜잭션을 블록체인 네트워크(400)에 분산 저장한다(S215).
데이터 소유주 단말부(100-1)는 임의의 데이터 요청자 단말부(100-2)로부터 접근 권한 요청 트랜잭션이 수신되면 토큰 트랜잭션을 생성하고, 토큰 트랜잭션을 데이터 요청자 단말부(100-2)로 전송한다(S221). 토큰 트랜잭션은 접근 권한 요청 트랜잭션의 출력 소비하면서 요청하는 데이터에 대한 데이터 트랜잭션을 참조한다. 일반적인 트랜잭션은 단 한번만 소비될 수 있으나, 본 발명에서는 참조라는 형태의 관계를 형성한다. 여기서 소비된 트랜잭션은 이후 다시 사용될 수 있으며, 이는 블록체인에 기록된다.
토큰 트랜잭션을 데이터 요청자 단말부(100-2)로 전송한 후, 데이터 소유주 단말부(100-1)는 상기 토큰에 근거한 재암호화키를 생성하고(S223), 생성된 재암호화키를 클라우드 서버(300)로 전송한다(S225).
부가적으로 데이터 소유주 단말부(100-1)는 업로드한 데이터를 갱신하는 데이터 업데이트 이벤트가 발생하는지를 모니터링하고(S227), 데이터 업데이트가 발생되면 클라우드 서버(300)로 업데이트된 데이터를 업로드한(S229) 후, 레코드 업데이트 트랜잭션을 생성하여 데이터 요청자 단말부(100-2)로 전송한다(S233).
레코드 업데이트 트랜잭션을 수신한 데이터 요청자 단말부(100-2)는 상기 데이터 소유주 단말부(100-2)에 대해 저장된 토큰을 상기 레코드업데이트 트랜잭션을 반영하여 업데이트한다(S235).
도 7은 본 발명에 따른 블록체인 기반 데이터 접근 제어 방법 중 데이터 요청자의 데이터 접근 방법을 나타낸 절차도이다.
데이터 소유주 단말부(100-1)로부터 토큰 트랜잭션을 수신하여 데이터 접근 권한을 부여 받은 데이터 요청자 단말부(100-2)는 상기 토큰 트랜잭션을 소비하여 정보 접근 요청 트랜잭션을 생성한(S311) 후, 클라우드 서버(300)로 전송한다(S313).
정보 접근 요청 트랜잭션을 수신한 클라우드 서버(300)는 블록체인 네트워크(400) 상의 데이터 소주에 대한 정보 접근 요청 트랜잭션의 기록을 확인하여(S315), 상기 수신된 정보 접근 요청 트랜잭션이 유효한지를 판단한다(S317).
유효하면 클라우드 서버(300)는 해당 데이터를 상기 도 6의 S225에서 수신하여 저장하고 있던 재암호화키로 해당 데이터를 재암호화한(S319) 후 데이터 요청자 단말부(100-2)로 전송한다(S321).
재암호화된 데이터를 수신한 데이터 요청자 단말부(100-2)는 토큰 트랜잭션에 근거한 비밀키로 복호화하여 데이터를 획득한다(S323).
재암호화된 데이터를 전송한 클라우드 서버(300)는 확인 트랜잭션을 생성한(S325) 후, 상기 데이터를 업로드한 데이터 소유주 단말부(100-1)로 전송한다(S327).
확인 트랜잭션을 수신한 데이터 소유주 단말부(100-1)는 데이터 접근 기록을 표시수단을 통해 표시하여 데이터 소유주에게 확인시킬 것이다(S329).
한편, 본 발명은 전술한 전형적인 바람직한 실시예에만 한정되는 것이 아니라 본 발명의 요지를 벗어나지 않는 범위 내에서 여러 가지로 개량, 변경, 대체 또는 부가하여 실시할 수 있는 것임은 당해 기술분야에서 통상의 지식을 가진 자라면 용이하게 이해할 수 있을 것이다. 이러한 개량, 변경, 대체 또는 부가에 의한 실시가 이하의 첨부된 특허청구범위의 범주에 속하는 것이라면 그 기술사상 역시 본 발명에 속하는 것으로 보아야 한다.
10: 컴퓨터 단말기 20: 모바일 단말기
100: 사용자 단말부 110: 사용자 등록부
111: 공개키 생성부 112: 개인키 생성부
113: 주소 생성부 114: 등록 처리부
115: 인증 주소 생성부 116: 검증 트랜잭션 생성부
117: 부분 공개키 획득부 118: 인증 개인키 생성부
120: 데이터 공유 처리부 121: 권한 승인부
122: 데이터 해시 트랜잭션 생성부
123: 토큰 트랜잭션 생성부
124: 재암화키 생성부 125: 업데이트부
130: 데이터 요청 처리부 131: 권한 요청부
132: 토큰 업데이트부 133: 데이터 접근부
140: 블록체인 처리부 200: 인증기관 서버
300: 클라우드 서버 400: 블록체인 네트워크
500: 유무선 데이터 통신망

Claims (12)

  1. 다수의 사용자 단말부들을 등록하고 블록체인 주소를 생성하여 할당하는 인증기관 서버를 포함하며, 사용자 단말부들 중 임의의 사용자 단말부에서 발생되는 트랜잭션을 다른 전체 사용자 단말부들에 분산 저장하여 블록체인을 형성하는 블록체인 네트워크;
    상기 블록체인 네트워크에 포함되어 상기 사용자 단말부들의 트랜잭션을 분산 저장하고, 블록체인 네트워크의 임의의 사용자 단말부로부터 데이터를 수신받아 저장하고, 저장된 데이터에 대해 접근 요청 발생 시 상기 블록체인을 통한 토큰 트랜잭션에 의해 검증을 수행하여 인증 성공 시 해당 사용자 단말부의 해당 데이터 접근을 허용하는 클라우드 서버;
    상기 블록체인 네트워크에 등록된 사용자 단말부로, 공개할 데이터를 상기 블록체인 네트워크 등록 시 할당받은 공개키로 암호화하여 클라우드 서버에 등록하고, 상기 데이터에 접근하기 위한 접근 권한 요청 트랜잭션의 발생 시 토큰 트랜잭션을 생성하여 상기 블록체인 네트워크에 분산 저장하는 데이터 소유주 단말부; 및
    상기 블록체인 네트워크에 등록된 사용자 단말부로, 상기 클라우드 서버에 저장된 임의의 데이터에 접근하고자 할 때 상기 데이터를 저장한 상기 데이터 소유주 단말부에 분산 저장되도록 상기 접근 권한 요청 트랜잭션을 상기 블록체인 네트워크에 분산 저장하고, 상기 데이터 소유주 단말부에 의해 분산 저장된 토큰 트랜잭션에 의해 상기 클라우드 서버의 해당 데이터에 접근하는 데이터 요청자 단말부를 포함하고,
    상기 데이터 소유주 단말부는,
    상기 인증기관 서버로 등록을 요청하는 등록 요청 트랜잭션을 전송하여 등록하고 그에 따라 상기 인증기관 서버로부터 등록 응답 트랜잭션을 수신받아 상기 블록체인 주소인 인증된 주소를 생성하며 검증 트랜잭션을 생성하여 클라우드 서버를 통해 부분 공개키를 수신받아 인증 개인키를 생성하여 블록체인 네트워크에 등록하는 사용자 등록부;
    상기 클라우드 서버에 데이터를 저장한 후 공유 요청하는 데이터 공유 처리부;
    상기 사용자 등록부 및 데이터 공유 처리부에서 발생되는 트랜잭션들을 상기 블록체인 네트워크상의 블록체인에 분산 저장하는 블록체인 처리부를 포함하고,
    상기 데이터 요청 단말부는,
    상기 인증기관 서버로 등록을 요청하는 등록 요청 트랜잭션을 전송하여 등록하고 그에 따라 상기 인증기관 서버로부터 등록 응답 트랜잭션을 수신받아 상기 블록체인 주소인 인증된 주소를 생성하며 검증 트랜잭션을 생성하여 클라우드 서버를 통해 부분 공개키를 수신받아 인증 개인키를 생성하여 블록체인 네트워크에 등록하는 사용자 등록부;
    상기 데이터 요청자 단말부로 동작하기 위한 동작 처리를 수행하는 데이터 요청 처리부; 및
    상기 사용자 등록부 및 데이터 요청 처리부에서 발생되는 트랜잭션들을 상기 블록체인 네트워크상의 블록체인에 분산 저장하는 블록체인 처리부를 포함하고,
    상기 데이터 공유 처리부는,
    클라우드 서버에 업로드한 데이터에 대한 암호화 및 데이터 요청자에 대한 권한을 승인하는 권한 승인부; 및
    업로드한 상기 데이터의 업데이트 여부를 모니터링하고, 업데이트 시의 레코드 업데이트 트랜잭션을 생성하여 데이터의 접근을 허용한 데이터 요청자 단말부로 전송하고, 상기 데이터에 대한 접근권한을 업데이트하는 업데이트부를 포함하되,
    상기 권한 승인부는,
    업로드한 데이터에 대한 해시결과를 포함하는 데이터 해시 트랜잭션을 생성하여 블록체인 네트워크에 추가하는 데이터 해시 트랜잭션 생성부;
    상기 데이터의 요청 발생 시 권한 부여를 위한 토큰 트랜잭션을 생성하여 데이터 요청자 단말부로 제공하는 토큰 트랜잭션 생성부; 및
    상기 데이터를 재암호화하기 위해 상기 토큰 트랜잭션에 대응하고 요청자의 공개키를 사용하는 재암호화키를 생성하여 클라우드 서버로 전송하는 재암호화키 생성부를 포함하는 것을 특징으로 하는 블록체인 기반 데이터 접근 제어 시스템.
  2. 삭제
  3. 제1항에 있어서,
    상기 사용자 등록부는,
    블록체인 네트워크에서 사용할 공개키를 생성하는 공개키 생성부;
    블록체인 네트워크에서 사용할 개인키를 생성하는 개인키 생성부;
    주소를 생성하는 주소 생성부;
    상기 공개키 및 주소를 포함하는 상기 등록 요청 트랜잭션을 생성하여 인증기관 서버로 제공하고, 그에 따른 상기 등록 응답 트랜잭션을 수신받는 등록 처리부;
    상기 생성된 블록체인 주소 및 등록 응답 트랜잭션에 근거하여 인증된 인증 주소를 생성하는 인증주소 생성부;
    상기 인증 주소의 인증여부를 검사하기 위한 검증 트랜잭션을 생성하는 검증 트랜잭션 생성부;
    상기 검증 트랜잭션을 포함하는 부분 개인키 요청 신호를 클라우드 서버로 전송하고 그에 따른 부분 개인키를 획득하는 부분 개인키 획득부; 및
    상기 부분 개인키를 활용하여 인증 개인키를 생성하는 인증 개인키 생성부를 포함하는 것을 특징으로 하는 블록체인 기반 데이터 접근 제어 시스템.
  4. 삭제
  5. 제1항에 있어서,
    데이터 요청 처리부는,
    데이터 소유주 단말부로부터 수신한 토큰 트랜잭션에 근거하여 상기 데이터에 접근을 요청하는 정보 접근 요청 트랜잭션을 상기 클라우드 서버로 전송하여 데이터의 접근을 요청하는 권한 요청부; 및
    상기 데이터의 접근 요청에 대해 상기 클라우드 서버로부터 재암호화키에 의해 재암호화된 암호화 데이터를 획득하고, 상기 토큰 트랜잭션에 근거한 비밀키로 복호화하여 데이터를 획득하는 데이터 접근부를 포함하는 것을 특징으로 하는 블록체인 기반 데이터 접근 제어 시스템.
  6. 제5항에 있어서,
    상기 데이터 요청 처리부는,
    상기 데이터 소유주 단말부로부터 데이터 업데이트에 대한 레코드 업데이트 트랜잭션을 수신받고, 상기 레코드 업데이트 트랜잭션에 포함된 토큰으로 이전 토큰을 갱신하는 토큰 업데이트부를 더 포함하는 것을 특징으로 하는 블록체인 기반 데이터 접근 제어 시스템.
  7. 데이터 소유주 단말부, 데이터 요청자 단말부, 클라우드 서버가 인증기관 서버로부터 블록체인 주소를 할당받아 블록체인 네트워크에 등록하는 블록체인 네트워크 등록 과정;
    상기 데이터 소유주 단말부 및 데이터 요청자 단말부가 상기 블록체인 주소에 근거하여 인증된 주소를 생성하고, 인증된 주소에 근거한 검증 트랜잭션을 생성하여 상기 블록체인 네트워크에 분산 등록하고, 상기 검증 트랜잭션을 상기 클라우드 서버로 제공한 후 상기 검증 트랜잭션에 대한 부분 개인키를 수신받아 인증 개인키를 생성하여 상기 클라우드 서버에 등록하는 클라우드 서버 등록 과정;
    상기 데이터 소유주 단말부가 공개할 데이터를 공개키로 암호화하여 클라우드 서버에 등록하는 데이터 공유 과정;
    데이터 요청자 단말부가 상기 데이터에 접근하기 위해 상기 데이터 소유주 단말부로 상기 데이터에 대한 접근 권한을 요청하고, 그에 대해 상기 블록체인 네트워크에 분산 등록된 토큰 트랜잭션을 수신받아 상기 데이터에 대한 접근 권한을 승인받는 접근 권한 획득 과정; 및
    상기 데이터 요청자 단말부가 상기 클라우드 서버로 상기 토큰 트랜잭션을 포함하는 정보 접근 요청 트랜잭션을 전송하여 상기 데이터에 대한 접근을 요청하고, 상기 클라우드 서버의 토큰 트랜잭션에 의한 검증 성공 시 해당 데이터에 접근하는 데이터 접근 과정을 포함하되,
    상기 접근 권한 획득 과정은,
    데이터 요청자 단말부가 상기 데이터에 접근하기 위해 상기 데이터 소유주 단말부로 상기 데이터에 대한 접근 권한을 요청하는 접근 권한 요청 단계;
    상기 데이터 소유주 단말부가 상기 데이터 요청자 단말부로부터 접근 권한 요청 발생 시 그에 대해 토큰 트랜잭션을 생성하여 상기 블록체인 네트워크에 분산 등록한 후 상기 데이터 요청자 단말부로 제공하는 접근 권한 부여 단계; 및
    상기 데이터 요청자 단말부가 상기 토큰 트랜잭션을 수신받아 상기 데이터에 대한 접근 권한을 승인받는 접근 권한 승인 획득 단계를 포함하고,
    상기 접근 권한 부여 단계는,
    상기 데이터 소유주 단말부가 상기 데이터 요청자 단말부로부터 접근 권한 요청 발생 시 그에 대해 토큰 트랜잭션을 생성하는 토큰 트랜잭션 생성 단계;
    상기 토큰 트랜잭션을 상기 블록체인 네트워크에 분산 등록하는 토큰 트랜잭션 블록체인 형성 단계;
    상기 블록체인 형성 후 상기 토큰 트랜잭션을 상기 데이터 요청자 단말부로 제공하는 토큰 트랜잭션 제공 단계;
    상기 토큰 트랜잭션에 근거한 재암호화키를 생성하는 재암호화키 생성 단계; 및
    상기 재암호화키를 클라우드 서버에 제공하여 해당 데이터에 맵핑하여 저장하는 재암호화키 등록 단계를 포함하는 것을 특징으로 하는 블록체인 기반 데이터 접근 제어 방법.
  8. 제7항에 있어서,
    블록체인 네트워크 등록 과정은,
    블록체인 네트워크에서 사용할 공개키를 생성하는 공개키 생성 단계;
    블록체인 네트워크에서 사용할 개인키를 생성하는 개인키 생성 단계;
    주소를 생성하는 주소 생성 단계; 및
    상기 생성된 공개키 및 주소를 사용하여 등록 요청 트랜잭션을 생성하여 인증기관 서버로 제공하고, 그에 따른 등록 응답 트랜잭션을 수신받아 블록체인 네트워크에 사용할 인증된 주소인 블록체인 주소를 생성하는 블록체인 주소 생성 단계를 포함하는 것을 특징으로 하는 블록체인 기반 데이터 접근 제어 방법.
  9. 제8항에 있어서,
    상기 클라우드 서버 등록 과정은,
    생성된 상기 주소 및 등록 응답 트랜잭션에 근거하여 인증된 인증 주소인 블록체인 주소를 생성하는 인증주소 생성 단계;
    상기 인증 주소의 인증여부를 검사하기 위한 검증 트랜잭션을 생성하는 검증 트랜잭션 생성 단계;
    상기 검증 트랜잭션을 블록체인 네트워크에 분산 등록하는 검증 트랜잭션 블록체인 형성 단계;
    상기 검증 트랜잭션을 포함하는 부분 개인키 요청 신호를 클라우드 서버로 전송하고 그에 따른 부분 개인키를 획득하는 부분 개인키 획득 단계; 및
    상기 부분 개인키를 활용하여 인증 개인키를 생성하는 인증 개인키 생성 단계를 포함하는 것을 특징으로 하는 블록체인 기반 데이터 접근 제어 방법.
  10. 삭제
  11. 삭제
  12. 제7항에 있어서,
    데이터 접근 과정은,
    상기 데이터 요청자 단말부가 상기 클라우드 서버로 상기 토큰 트랜잭션을 포함하는 정보 접근 요청 트랜잭션을 전송하는 정보 접근 요청 단계;
    클라우드 서버가 정보 접근 요청 트랜잭션에 포함된 토큰 트랜잭션과 블록체인 상의 데이터 소유주 단말부에 대한 정보 접근 요청 트랜잭션의 기록을 확인하여 유효성을 판단하는 접근 유효성 판단 단계;
    유효하면 상기 정보 접근 요청에 대응하는 데이터를 상기 데이터 소유주 단말부로부터 등록된 상기 재암호화키로 암호화하여 상기 데이터 요청자 단말부로 제공하는 암호화 데이터 제공 단계; 및
    상기 데이터 요청자 단말부가 상기 토큰 트랜잭션에 근거한 비밀키로 상기 암호화 데이터를 복호하여 해당 데이터를 획득하는 데이터 접근 단계를 포함하는 것을 특징으로 하는 블록체인 기반 데이터 접근 제어 방법.
KR1020170183719A 2017-12-29 2017-12-29 블록체인 기반 데이터 접근 제어 시스템 및 방법 KR102067882B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020170183719A KR102067882B1 (ko) 2017-12-29 2017-12-29 블록체인 기반 데이터 접근 제어 시스템 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170183719A KR102067882B1 (ko) 2017-12-29 2017-12-29 블록체인 기반 데이터 접근 제어 시스템 및 방법

Publications (2)

Publication Number Publication Date
KR20190081299A KR20190081299A (ko) 2019-07-09
KR102067882B1 true KR102067882B1 (ko) 2020-02-11

Family

ID=67261658

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170183719A KR102067882B1 (ko) 2017-12-29 2017-12-29 블록체인 기반 데이터 접근 제어 시스템 및 방법

Country Status (1)

Country Link
KR (1) KR102067882B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102179498B1 (ko) 2020-04-13 2020-11-17 주식회사 한국정보보호경영연구소 Did 기반의 스마트 모임 통장 서비스 제공 방법 및 그 시스템
KR20220118796A (ko) * 2021-02-19 2022-08-26 부경대학교 산학협력단 퍼블릭 블록체인에서의 개인 간 데이터 거래 및 공유를 지원하는 액세스 제어 시스템 및 방법

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102256361B1 (ko) * 2019-08-26 2021-05-25 단국대학교 산학협력단 데이터의 접근 제어를 위한 네트워크 장치 및 방법, 그리고 이를 이용한 데이터 접근 제어 시스템
KR102140325B1 (ko) * 2019-08-29 2020-07-31 유한회사 엘민벤처스 블록체인 기반의 팩트체킹과 검색 기능이 있는 컨텐츠 관리 방법 및 그 시스템
KR102065315B1 (ko) * 2019-10-04 2020-01-13 주식회사 도우테크 블록체인 기반 파일 보관 및 공유 시스템 및 방법
KR102095944B1 (ko) * 2019-10-23 2020-04-01 박성집 봉사 인증 시스템 및 이를 이용한 봉사 인증 방법
KR102297192B1 (ko) * 2019-11-07 2021-09-02 이중찬 위치 기반 일자리 추천 시스템 및 방법
WO2021095926A1 (ko) * 2019-11-11 2021-05-20 전자부품연구원 복합 iot 디바이스 및 이를 이용한 공유서비스 제공방법, 및 블록체인 응용 외부 정보 인식 및 정보 제공방법
CN111222165B (zh) * 2020-01-10 2022-09-23 北京百度网讯科技有限公司 基于区块链的多方计算方法、装置、设备和介质
KR102287729B1 (ko) * 2020-02-17 2021-08-20 주식회사 아웃라이어스 블록체인 기반 사용자 정보 관리 방법 및 시스템
CN111461710B (zh) * 2020-03-06 2023-06-23 重庆邮电大学 一种基于联盟链的分布式账本访问控制方法
US11687656B2 (en) 2020-04-16 2023-06-27 American Express Travel Related Services Company, Inc. Secure application development using distributed ledgers
CN112115199A (zh) * 2020-09-16 2020-12-22 安徽长泰信息安全服务有限公司 一种基于区块链技术的数据管理系统
KR102500968B1 (ko) * 2020-10-12 2023-02-17 가톨릭대학교 산학협력단 블록체인 기반의 헬스케어 데이터 제공 방법, 서비스 서버 및 시스템
KR102282633B1 (ko) * 2020-11-17 2021-07-28 대아티아이 (주) 철도관제시스템과 복수의 무선폐색장치 간의 연계인증 방법 및 그 연계인증 장치
KR102311462B1 (ko) * 2020-11-19 2021-10-13 주식회사 마크애니 블록체인 did 기반의 디지털 증거 관리 시스템 및 방법
KR20220073552A (ko) * 2020-11-26 2022-06-03 삼성전자주식회사 블록 체인 네트워크를 이용하여 데이터를 공유하는 전자 장치 및 이의 동작 방법
KR102471800B1 (ko) * 2020-12-15 2022-11-29 사회복지법인 삼성생명공익재단 의료 데이터 유통 방법 및 그 시스템
KR102531929B1 (ko) * 2020-12-15 2023-05-11 포항공과대학교 산학협력단 개인 정보 보안 강화된 블록체인 기반 의료 정보 제공 방법 및 시스템
CN112650954B (zh) * 2020-12-30 2023-09-22 杭州趣链科技有限公司 区块链数据分享方法、装置、设备及存储介质
KR102492228B1 (ko) * 2021-06-29 2023-01-27 주식회사 레드윗 블록체인 기반의 연구노트 관리 시스템
CN114024720A (zh) * 2021-10-13 2022-02-08 北京八分量信息科技有限公司 一种基于区块链的社交数据共享系统
CN114143055B (zh) * 2021-11-24 2023-12-01 国网江苏省电力有限公司营销服务中心 一种基于区块链的数据分发方法和可信溯源方法
KR102544213B1 (ko) * 2021-12-16 2023-06-15 박원규 사용자 승인 시스템 및 그 방법
CN114679330A (zh) * 2022-03-31 2022-06-28 广西玉林链向千禧大数据有限公司 一种基于区块链的万物互联数据访问控制方法
KR102529277B1 (ko) * 2022-10-17 2023-05-08 주식회사 레드윗 웹3.0을 구현하기 위한 데이터 암호화 방법 및 장치
CN116582352B (zh) * 2023-06-13 2023-11-14 国网浙江省电力有限公司宁波供电公司 一种用于数据交互的智能化数字监管方法及系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017098806A (ja) * 2015-11-26 2017-06-01 株式会社bitFlyer 電子データの存在証明プログラムおよび存在証明サーバ
WO2017107976A1 (zh) * 2015-12-23 2017-06-29 索尼公司 用于授权访问的客户端装置、服务器装置和访问控制系统
WO2017145003A1 (en) 2016-02-23 2017-08-31 nChain Holdings Limited Blockchain-based exchange with tokenisation
KR101781583B1 (ko) 2016-08-31 2017-09-27 서강대학교산학협력단 블록체인을 기반으로 한 파일 관리/검색 시스템 및 파일 관리/검색 방법

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017098806A (ja) * 2015-11-26 2017-06-01 株式会社bitFlyer 電子データの存在証明プログラムおよび存在証明サーバ
WO2017107976A1 (zh) * 2015-12-23 2017-06-29 索尼公司 用于授权访问的客户端装置、服务器装置和访问控制系统
WO2017145003A1 (en) 2016-02-23 2017-08-31 nChain Holdings Limited Blockchain-based exchange with tokenisation
KR101781583B1 (ko) 2016-08-31 2017-09-27 서강대학교산학협력단 블록체인을 기반으로 한 파일 관리/검색 시스템 및 파일 관리/검색 방법

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102179498B1 (ko) 2020-04-13 2020-11-17 주식회사 한국정보보호경영연구소 Did 기반의 스마트 모임 통장 서비스 제공 방법 및 그 시스템
KR20220118796A (ko) * 2021-02-19 2022-08-26 부경대학교 산학협력단 퍼블릭 블록체인에서의 개인 간 데이터 거래 및 공유를 지원하는 액세스 제어 시스템 및 방법
KR102446967B1 (ko) * 2021-02-19 2022-09-23 부경대학교 산학협력단 퍼블릭 블록체인에서의 개인 간 데이터 거래 및 공유를 지원하는 액세스 제어 시스템 및 방법

Also Published As

Publication number Publication date
KR20190081299A (ko) 2019-07-09

Similar Documents

Publication Publication Date Title
KR102067882B1 (ko) 블록체인 기반 데이터 접근 제어 시스템 및 방법
US11178143B2 (en) System, method and apparatus for device authentication
CN110034924B (zh) 一种数据处理方法和装置
US11038673B2 (en) Data processing method and apparatus
US9548859B2 (en) Ticket-based implementation of content leasing
US8843415B2 (en) Secure software service systems and methods
KR102008885B1 (ko) 데이터 관리 및 큐레이션 시스템
CN104077501B (zh) 可互操作的密钥箱
KR101702748B1 (ko) 이중 암호화를 이용한 사용자 인증 방법과 시스템 및 기록매체
US20190238319A1 (en) Rights management of content
JP2008501177A (ja) プライバシーを保護する情報配布システムにおけるライセンス管理
US20070005989A1 (en) User identity privacy in authorization certificates
KR20080058833A (ko) 개인 정보 보호 장치 및 방법
WO2005098639A9 (ja) ログインシステム及び方法
KR20230041971A (ko) 분산적 컴퓨터 네트워크 상에서 안전한 데이터 전송을 위한 방법, 장치 및 컴퓨터 판독가능 매체
JP2019106639A (ja) 電子取引装置、電子取引方法及びプログラム
KR20160085143A (ko) 익명 서비스 제공 방법 및 사용자 정보 관리 방법 및 이를 위한 시스템
JP6293245B1 (ja) 強化されたセキュリティを有する取引相互監視システム
KR102131206B1 (ko) 법인 관련 서비스 제공 방법, 이를 지원하는 방법, 이를 수행하는 서비스 서버 및 인증 서버
EP1276066A2 (en) Licensing method and license providing system
JP7156889B2 (ja) 決済処理方法
KR20220125567A (ko) 의료 클라우드 환경에서 환자의 의료 데이터 공유 시스템 및 방법
JP2004032220A (ja) 電子チケットを用いたアクセス権管理装置
CN102236753A (zh) 版权管理方法及系统
KR101763293B1 (ko) 결제 정보 사전 등록 기반의 간편 결제 시스템 및 이를 이용한 간편 결제 방법

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant