KR20200030345A - 프라이빗 블록체인 기반 개인정보 관리 서비스 제공 방법 - Google Patents

프라이빗 블록체인 기반 개인정보 관리 서비스 제공 방법 Download PDF

Info

Publication number
KR20200030345A
KR20200030345A KR1020180109105A KR20180109105A KR20200030345A KR 20200030345 A KR20200030345 A KR 20200030345A KR 1020180109105 A KR1020180109105 A KR 1020180109105A KR 20180109105 A KR20180109105 A KR 20180109105A KR 20200030345 A KR20200030345 A KR 20200030345A
Authority
KR
South Korea
Prior art keywords
personal information
management service
user terminal
site
information management
Prior art date
Application number
KR1020180109105A
Other languages
English (en)
Other versions
KR102118556B1 (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 KR1020180109105A priority Critical patent/KR102118556B1/ko
Publication of KR20200030345A publication Critical patent/KR20200030345A/ko
Application granted granted Critical
Publication of KR102118556B1 publication Critical patent/KR102118556B1/ko

Links

Images

Classifications

    • 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
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/30Profiles
    • H04L67/306User profiles
    • 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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • 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/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0866Generation of secret information including derivation or calculation of cryptographic keys or passwords involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics
    • 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 Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Power Engineering (AREA)
  • Storage Device Security (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

프라이빗 블록체인 기반 개인정보 관리 서비스 제공 방법이 제공되며, 사용자 단말로부터 적어도 하나의 사이트의 URL과, 아이디 및 패스워드를 포함하는 적어도 하나의 계정정보를 수집하는 단계, 수집된 적어도 하나의 사이트와 적어도 하나의 계정정보를 매핑되도록 개인정보로 프라이빗 블록체인(Private Blockchain) 내의 적어도 하나의 노드에 분산되도록 저장하는 단계, 사용자 단말에서 적어도 하나의 사이트에 엑세스하는 이벤트가 발생하는 경우, 분산저장된 개인정보를 적어도 하나의 노드로부터 추출하는 단계, 추출된 개인정보 중 사용자 단말에서 엑세스한 적어도 하나의 사이트에 매핑되어 저장된 계정정보를 필터링하는 단계, 및 필터링된 계정정보를 사용자 단말에서 엑세스한 적어도 하나의 사이트에 적용하여 로그인 처리하는 단계를 포함한다.

Description

프라이빗 블록체인 기반 개인정보 관리 서비스 제공 방법{METHOD FOR PROVIDING PRIVATE BLOCKCHAIN BASED PRIVACY INFORMATION MANAGEMENT SERVICE}
본 발명은 프라이빗 블록체인 기반 개인정보 관리 서비스 제공 방법에 관한 것으로, 계정정보를 포함한 개인정보를 폐쇄형 블록체인 내에 저장하는 방법을 제공한다.
4차 산업혁명의 핵심 분야로 인공지능과 블록체인이 거론되면서 블록체인에 대한 관심이 급증하고, 다양한 분야에 다양한 형태로 블록체인을 활용하려는 시도가 이루어지고 있다. 블록체인은 변조가 불가능한 저장소, 분산 통신 시스템, 공유 저장소, 발행/운영 주체가 없는 P2P 화폐 시스템, 증권(security) 발행 및 유통 시스템 등 다양한 의미를 갖고 있으며 블록체인을 활용하려는 다양한 시도도 이러한 여러 의미 중 일부 특징을 활용하려는 것이다. 인증과 관련해서는 블록체인 내에서 이루어지는 인증과 블록체인을 활용한 인증 2가지로 구분할 수 있는데, 후자의 경우 기존에 존재하던 인증 방식이나 시스템에 블록체인을 접목하는 접근을 의미한다.
이때, 블록체인을 활용한 인증방법은 공개키와 개인키 기반의 구조로 암호화되는 방법으로 개발 및 공개되었는데, 이와 관련하여 선행기술인 한국등록특허 제10-1590076호(2016년02월01일 공개)에는, 사용자 단말을 통해 블록체인에 사용자 정보를 사용자 개인키를 설정하여 등록하고, 사용자 개인키로 열람할 수 있는 사용자 공개키를 설정하여 특정정보를 암호화하여 기록하고, 블록체인에 서버 정보를 서버 개인키를 설정하여 등록하고, 서버 개인키로 열람할 수 있는 서버 공개키를 설정하여 특정정보를 암호화하여 기록하며, 서버로부터 서버에 가입 등록된 사용자 단말의 사용자 공개키와 서버가 필요로 하는 요구정보를 블록체인에 트랜잭션 기록하고, 블록체인에서 사용자 단말에 서버의 요구정보를 사용자 공개키를 통해 요청하며, 사용자 단말이 사용자 공개키로 암호화된 서버의 요구정보를 사용자 단말의 사용자 개인키로 열람하여 그 내용인 요청정보를 확인하는 구성이 개시되어 있다.
다만, 아이디와 인증정보가 블록체인에 저장되어 공개될 경우, 서버에서는 자체적인 인증정보 저장소를 갖지 않아도 블록체인에 저장된 인증정보를 활용하여 사용자를 인증할 수 있지만, 그 인증정보가 비밀의 성격을 띠는 경우는 그렇지 않다. 상술한 대칭키 방식의 인증 정보의 경우 대칭키를 알면 아이디를 포함한 계정정보 및 개인정보를 도용할 수 있으므로 공개 저장소에 저장하면 안된다. 즉, 분산장부와 같은 공개키 기반 인증의 경우 원래 공개를 전제로 하는 기술이므로 블록체인에 저장 및 공개하기 적합한 형태이나, 개인고유정보를 포함한 개인정보가 도용될 가능성이 존재하는 데이터에는 적합하지 않다.
본 발명의 일 실시예는, 프라이빗(폐쇄형) 블록체인 내의 적어도 하나의 P2P 분산 노드에 개인정보를 저장하되, 해시 알고리즘을 이용하여 암호화함으로써 저장하고, 허가된 기관만이 엑세스 가능하고 부분분기를 허용하지 않는 폐쇄형 블록체인 내의 노드를 이용함으로써 개인정보의 유출 및 도용을 방지할 수 있는, 프라이빗 블록체인 기반 개인정보 관리 서비스 제공 방법을 제공할 수 있다. 다만, 본 실시예가 이루고자 하는 기술적 과제는 상기된 바와 같은 기술적 과제로 한정되지 않으며, 또 다른 기술적 과제들이 존재할 수 있다.
상술한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 발명의 일 실시예는, 사용자 단말로부터 적어도 하나의 사이트의 URL과, 아이디 및 패스워드를 포함하는 적어도 하나의 계정정보를 수집하는 단계, 수집된 적어도 하나의 사이트와 적어도 하나의 계정정보를 매핑되도록 개인정보로 프라이빗 블록체인(Private Blockchain) 내의 적어도 하나의 노드에 분산되도록 저장하는 단계, 사용자 단말에서 적어도 하나의 사이트에 엑세스하는 이벤트가 발생하는 경우, 분산저장된 개인정보를 적어도 하나의 노드로부터 추출하는 단계, 추출된 개인정보 중 사용자 단말에서 엑세스한 적어도 하나의 사이트에 매핑되어 저장된 계정정보를 필터링하는 단계, 및 필터링된 계정정보를 사용자 단말에서 엑세스한 적어도 하나의 사이트에 적용하여 로그인 처리하는 단계를 포함한다.
전술한 본 발명의 과제 해결 수단 중 어느 하나에 의하면, 개인이 개인정보를 관리하는데 수십 내지 수백개의 아이디와 패스워드를 정리하면서 관리하지 않아도 되고, 프라이빗(폐쇄형) 블록체인 내의 적어도 하나의 P2P 분산 노드에 개인정보를 저장하되, 해시 알고리즘을 이용하여 암호화함으로써 저장하고, 허가된 기관만이 엑세스 가능하고 부분분기를 허용하지 않는 폐쇄형 블록체인 내의 노드를 이용함으로써 개인정보의 유출 및 도용을 방지할 수 있다.
도 1은 본 발명의 일 실시예에 따른 프라이빗 블록체인 기반 개인정보 관리 서비스 제공 시스템을 설명하기 위한 도면이다.
도 2는 도 1의 시스템에 포함된 개인정보 관리 서비스 제공 서버를 설명하기 위한 블록 구성도이다.
도 3은 본 발명의 일 실시예에 따른 프라이빗 블록체인 기반 개인정보 관리 서비스가 구현된 일 실시예를 설명하기 위한 도면이다.
도 4는 본 발명의 일 실시예에 따른 도 1의 프라이빗 블록체인 기반 개인정보 관리 서비스 제공 시스템에 포함된 각 구성들 상호 간에 데이터가 송수신되는 과정을 나타낸 도면이다.
도 5는 본 발명의 일 실시예에 따른 프라이빗 블록체인 기반 개인정보 관리 서비스 제공 방법을 설명하기 위한 동작 흐름도이다.
아래에서는 첨부한 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 발명의 실시예를 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미하며, 하나 또는 그 이상의 다른 특징이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
명세서 전체에서 사용되는 정도의 용어 "약", "실질적으로" 등은 언급된 의미에 고유한 제조 및 물질 허용오차가 제시될 때 그 수치에서 또는 그 수치에 근접한 의미로 사용되고, 본 발명의 이해를 돕기 위해 정확하거나 절대적인 수치가 언급된 개시 내용을 비양심적인 침해자가 부당하게 이용하는 것을 방지하기 위해 사용된다. 본 발명의 명세서 전체에서 사용되는 정도의 용어 "~(하는) 단계" 또는 "~의 단계"는 "~ 를 위한 단계"를 의미하지 않는다.
본 명세서에 있어서 '부(部)'란, 하드웨어에 의해 실현되는 유닛(unit), 소프트웨어에 의해 실현되는 유닛, 양방을 이용하여 실현되는 유닛을 포함한다. 또한, 1개의 유닛이 2개 이상의 하드웨어를 이용하여 실현되어도 되고, 2개 이상의 유닛이 1개의 하드웨어에 의해 실현되어도 된다.
본 명세서에 있어서 단말, 장치 또는 디바이스가 수행하는 것으로 기술된 동작이나 기능 중 일부는 해당 단말, 장치 또는 디바이스와 연결된 서버에서 대신 수행될 수도 있다. 이와 마찬가지로, 서버가 수행하는 것으로 기술된 동작이나 기능 중 일부도 해당 서버와 연결된 단말, 장치 또는 디바이스에서 수행될 수도 있다.
본 명세서에서 있어서, 단말과 매핑(Mapping) 또는 매칭(Matching)으로 기술된 동작이나 기능 중 일부는, 단말의 식별 정보(Identifying Data)인 단말기의 고유번호나 개인의 식별정보를 매핑 또는 매칭한다는 의미로 해석될 수 있다.
이하 첨부된 도면을 참고하여 본 발명을 상세히 설명하기로 한다.
도 1은 본 발명의 일 실시예에 따른 프라이빗 블록체인 기반 개인정보 관리 서비스 제공 시스템을 설명하기 위한 도면이다. 도 1을 참조하면, 프라이빗 블록체인 기반 개인정보 관리 서비스 제공 시스템(1)은, 적어도 하나의 사용자 단말(100), 개인정보 관리 서비스 제공 서버(300), 적어도 하나의 사이트 제공 서버(400)를 포함할 수 있다. 다만, 이러한 도 1의 프라이빗 블록체인 기반 개인정보 관리 서비스 제공 시스템(1)은, 본 발명의 일 실시예에 불과하므로, 도 1을 통하여 본 발명이 한정 해석되는 것은 아니다.
이때, 도 1의 각 구성요소들은 일반적으로 네트워크(network, 200)를 통해 연결된다. 예를 들어, 도 1에 도시된 바와 같이, 적어도 하나의 사용자 단말(100)은 네트워크(200)를 통하여 개인정보 관리 서비스 제공 서버(300), 및 사이트 제공 서버(400)와 연결될 수 있다. 그리고, 개인정보 관리 서비스 제공 서버(300)는, 네트워크(200)를 통하여 적어도 하나의 사용자 단말(100), 적어도 하나의 사이트 제공 서버(400)와 연결될 수 있다. 또한, 적어도 하나의 사이트 제공 서버(400)는, 네트워크(200)를 통하여 개인정보 관리 서비스 제공 서버(300), 및 사용자 단말(100)과 연결될 수 있다.
여기서, 네트워크는, 복수의 단말 및 서버들과 같은 각각의 노드 상호 간에 정보 교환이 가능한 연결 구조를 의미하는 것으로, 이러한 네트워크의 일 예에는 RF, 3GPP(3rd Generation Partnership Project) 네트워크, LTE(Long Term Evolution) 네트워크, 5GPP(5rd Generation Partnership Project) 네트워크, WIMAX(World Interoperability for Microwave Access) 네트워크, 인터넷(Internet), LAN(Local Area Network), Wireless LAN(Wireless Local Area Network), WAN(Wide Area Network), PAN(Personal Area Network), 블루투스(Bluetooth) 네트워크, NFC 네트워크, 위성 방송 네트워크, 아날로그 방송 네트워크, DMB(Digital Multimedia Broadcasting) 네트워크 등이 포함되나 이에 한정되지는 않는다.
하기에서, 적어도 하나의 라는 용어는 단수 및 복수를 포함하는 용어로 정의되고, 적어도 하나의 라는 용어가 존재하지 않더라도 각 구성요소가 단수 또는 복수로 존재할 수 있고, 단수 또는 복수를 의미할 수 있음은 자명하다 할 것이다. 또한, 각 구성요소가 단수 또는 복수로 구비되는 것은, 실시예에 따라 변경가능하다 할 것이다.
적어도 하나의 사용자 단말(100)은, 프라이빗 블록체인 기반 개인정보 관리 서비스 관련 웹 페이지, 앱 페이지, 프로그램 또는 애플리케이션을 이용하여 계정정보를 포함한 개인정보를 관리하는 사용자의 단말일 수 있다. 이를 위해, 적어도 하나의 사용자 단말(100)은, 개인정보 관리 서비스 제공 서버(300)에 사용자 등록을 하고, 자동 또는 수동으로 사이트의 URL, 아이디 및 패스워드를 포함하는 계정정보를 입력하는 단말일 수 있다. 이때, 적어도 하나의 사용자 단말(100)은 자동으로 입력을 요청하는 경우, 개인정보 관리 서비스 제공 서버(300)에서 적어도 하나의 사용자 단말(100)에 기 저장된 계정정보에 접근 및 추출하는데 승인을 한 단말일 수 있다. 그리고, 적어도 하나의 사용자 단말(100)은, 사이트 제공 서버(400)에서 제공하는 사이트에 접근할 때 개인정보 관리 서비스 제공 서버(300)에 의해 제공되는 계정정보를 이용하여 사이트에 자동로그인되는 단말일 수 있다. 이때, 적어도 하나의 사용자 단말(100)은, 사이트에 접근하는 이벤트가 발생할 때마다 개인정보 관리 서비스 제공 서버(300)의 이벤트 모니터링을 허가한 단말일 수 있다. 이때, 적어도 하나의 사용자 단말(100)은, 계정정보 이외에도 개인정보를 개인정보 관리 서비스 제공 서버(300)에 저장하는 단말일 수 있고, 개인정보 관리 서비스 제공 서버(300)에 수수료 또는 이용료를 지불하는 단말일 수 있다.
여기서, 적어도 하나의 사용자 단말(100)은, 네트워크를 통하여 원격지의 서버나 단말에 접속할 수 있는 컴퓨터로 구현될 수 있다. 여기서, 컴퓨터는 예를 들어, 네비게이션, 웹 브라우저(WEB Browser)가 탑재된 노트북, 데스크톱(Desktop), 랩톱(Laptop) 등을 포함할 수 있다. 이때, 적어도 하나의 사용자 단말(100)은, 네트워크를 통해 원격지의 서버나 단말에 접속할 수 있는 단말로 구현될 수 있다. 적어도 하나의 사용자 단말(100)은, 예를 들어, 휴대성과 이동성이 보장되는 무선 통신 장치로서, 네비게이션, PCS(Personal Communication System), GSM(Global System for Mobile communications), PDC(Personal Digital Cellular), PHS(Personal Handyphone System), PDA(Personal Digital Assistant), IMT(International Mobile Telecommunication)-2000, CDMA(Code Division Multiple Access)-2000, W-CDMA(W-Code Division Multiple Access), Wibro(Wireless Broadband Internet) 단말, 스마트폰(smartphone), 스마트 패드(smartpad), 타블렛 PC(Tablet PC) 등과 같은 모든 종류의 핸드헬드(Handheld) 기반의 무선 통신 장치를 포함할 수 있다.
개인정보 관리 서비스 제공 서버(300)는, 프라이빗 블록체인 기반 개인정보 관리 서비스 웹 페이지, 앱 페이지, 프로그램 또는 애플리케이션을 제공하는 서버일 수 있다. 그리고, 개인정보 관리 서비스 제공 서버(300)는, 사용자 단말(100)로부터 사용자 등록을 받는 서버일 수 있고, 사용자 단말(100)로부터 계정정보를 포함하는 개인정보를 수동 또는 자동으로 입력받는 단말일 수 있다. 이때, 개인정보 관리 서비스 제공 서버(300)는 자동으로 입력받는 경우 사용자 단말(100)의 승인을 받고 사용자 단말(100)에 기 저장된 정보를 추출하는 서버일 수 있다. 그리고 나서, 개인정보 관리 서비스 제공 서버(300)는 수집한 개인정보를 사용자 단말(100)의 식별부호 등과 매핑하여 저장하되, 해시 알고리즘으로 암호화를 수행한 후 블록체인을 이루는 적어도 하나의 노드 내에 분산저장하는 서버일 수 있다. 또한, 개인정보 관리 서비스 제공 서버(300)는 사용자 단말(100)에서 사이트를 제공하는 사이트 제공 서버(400)에 엑세스하는 경우, 엑세스 이벤트를 하이재킹하여 엑세스하는 사이트의 URL과 사용자의 식별부호로 계정정보를 추출하며, 추출된 계정정보를 비암호화하여 사이트 제공 서버(400)에 제공함으로써 자동으로 로그인되도록 하는 서버일 수 있다. 또는, 개인정보 관리 서비스 제공 서버(300)는 비암호화된 계정정보를 사용자 단말(100)로 전송하여 사용자 단말(100)의 사용자가 직접 해당 사이트에 계정정보를 입력 및 로그인하도록 하는 서버일 수도 있다. 그리고, 개인정보 관리 서비스 제공 서버(300)는 사용자 단말(100)로 주기적 또는 실시간으로 수수료를 부과하여 정산되도록 하는 서버일 수 있다.
여기서, 개인정보 관리 서비스 제공 서버(300)는, 네트워크를 통하여 원격지의 서버나 단말에 접속할 수 있는 컴퓨터로 구현될 수 있다. 여기서, 컴퓨터는 예를 들어, 네비게이션, 웹 브라우저(WEB Browser)가 탑재된 노트북, 데스크톱(Desktop), 랩톱(Laptop) 등을 포함할 수 있다.
적어도 하나의 사이트 제공 서버(400)는, 프라이빗 블록체인 기반 개인정보 관리 서비스 관련 웹 페이지, 앱 페이지, 프로그램 또는 애플리케이션에 의해 사용자가 로그인되도록 하는 사이트를 제공하는 서버일 수 있다. 이때, 적어도 하나의 사이트 제공 서버(400)는, 사용자 단말(100)에서 적어도 하나의 사이트 제공 서버(400)에서 제공한은 사이트에 엑세스할 때 개인정보 관리 서비스 제공 서버(300)에서 제공하는 계정정보의 자동입력 및 로그인 처리를 허용하는 서버일 수 있다. 여기서, 적어도 하나의 사이트 제공 서버(400)는, 네트워크를 통하여 원격지의 서버나 단말에 접속할 수 있는 컴퓨터로 구현될 수 있다. 여기서, 컴퓨터는 예를 들어, 네비게이션, 웹 브라우저(WEB Browser)가 탑재된 노트북, 데스크톱(Desktop), 랩톱(Laptop) 등을 포함할 수 있다. 이때, 적어도 하나의 사이트 제공 서버(400)는, 네트워크를 통해 원격지의 서버나 단말에 접속할 수 있는 단말로 구현될 수 있다.
관리자 단말(미도시)는, 프라이빗 블록체인 기반 개인정보 관리 서비스 관련 웹 페이지, 앱 페이지, 프로그램 또는 애플리케이션을 제공하는 개인정보 관리 서비스 제공 서버(300)의 데이터 등을 관리하는 관리자의 단말일 수 있다. 이때, 관리자 단말은 회원 관리, 데이터 관리, 블록체인 관리 등을 수행할 수 있으나, 이는 중앙집중형 블록체인을 관리한다는 의미는 아님은 자명하다 할 것이다. 물론, 중앙집중형 블록체인을 배제하는 것은 아니다.
여기서, 관리자 단말(600)은, 네트워크를 통하여 원격지의 서버나 단말에 접속할 수 있는 컴퓨터로 구현될 수 있다. 여기서, 컴퓨터는 예를 들어, 네비게이션, 웹 브라우저(WEB Browser)가 탑재된 노트북, 데스크톱(Desktop), 랩톱(Laptop) 등을 포함할 수 있다. 이때, 관리자 단말(600)은, 네트워크를 통해 원격지의 서버나 단말에 접속할 수 있는 단말로 구현될 수 있다. 관리자 단말(600)은, 예를 들어, 휴대성과 이동성이 보장되는 무선 통신 장치로서, 네비게이션, PCS(Personal Communication System), GSM(Global System for Mobile communications), PDC(Personal Digital Cellular), PHS(Personal Handyphone System), PDA(Personal Digital Assistant), IMT(International Mobile Telecommunication)-2000, CDMA(Code Division Multiple Access)-2000, W-CDMA(W-Code Division Multiple Access), Wibro(Wireless Broadband Internet) 단말, 스마트폰(smartphone), 스마트 패드(smartpad), 타블렛 PC(Tablet PC) 등과 같은 모든 종류의 핸드헬드(Handheld) 기반의 무선 통신 장치를 포함할 수 있다.
도 2는 도 1의 시스템에 포함된 개인정보 관리 서비스 제공 서버를 설명하기 위한 블록 구성도이고, 도 3은 본 발명의 일 실시예에 따른 프라이빗 블록체인 기반 개인정보 관리 서비스가 구현된 일 실시예를 설명하기 위한 도면이다.
도 2를 참조하면, 개인정보 관리 서비스 제공 서버(300)는, 수집부(310), 저장부(320), 추출부(330), 필터링부(340), 처리부(350)를 포함할 수 있다.
본 발명의 일 실시예에 따른 개인정보 관리 서비스 제공 서버(300)나 연동되어 동작하는 다른 서버(미도시)가 적어도 하나의 사용자 단말(100), 적어도 하나의 사이트 제공 서버(400), 관리자 단말(미도시)로 프라이빗 블록체인 기반 개인정보 관리 서비스 애플리케이션, 프로그램, 앱 페이지, 웹 페이지 등을 전송하는 경우, 적어도 하나의 사용자 단말(100), 적어도 하나의 사이트 제공 서버(400), 및 관리자 단말은, 프라이빗 블록체인 기반 개인정보 관리 서비스 애플리케이션, 프로그램, 앱 페이지, 웹 페이지 등을 설치하거나 열 수 있다. 또한, 웹 브라우저에서 실행되는 스크립트를 이용하여 서비스 프로그램이 적어도 하나의 사용자 단말(100), 적어도 하나의 사이트 제공 서버(400), 및 관리자 단말에서 구동될 수도 있다. 여기서, 웹 브라우저는 웹(WWW: world wide web) 서비스를 이용할 수 있게 하는 프로그램으로 HTML(hyper text mark-up language)로 서술된 하이퍼 텍스트를 받아서 보여주는 프로그램을 의미하며, 예를 들어 넷스케이프(Netscape), 익스플로러(Explorer), 크롬(chrome) 등을 포함한다. 또한, 애플리케이션은 단말 상의 응용 프로그램(application)을 의미하며, 예를 들어, 모바일 단말(스마트폰)에서 실행되는 앱(app)을 포함한다.
도 2를 참조하면, 수집부(310)는, 사용자 단말(100)로부터 적어도 하나의 사이트의 URL과, 아이디 및 패스워드를 포함하는 적어도 하나의 계정정보를 수집할 수 있다. 예를 들어, www.abc.com에 아이디는 aaa 패스워드는 bbb이고, 사용자 단말(100)의 식별부호는 ccc라고 가정하면, 수집부(310)는 ccc(사용자 식별부호)-www.abc.com(사이트 URL)-aaa(아이디)-bbb(패스워드)와 같이 수집할 수 있고, 이를 이하의 저장부(320)에서 레이블화된 테이블에 저장할 수 있도록 한다. 이때, 각 계정의 정보가 단수이거나 소수이면 사용자의 입력이 용이할 수 있지만, 사이트와 계정정보가 많은 경우에는 일일이 계정정보 등을 입력하기가 곤란할 수 있다. 따라서, 수집부(310)는, 사용자 단말(100)로부터 사용자 단말(100)에 저장되거나 사용자 단말(100)의 계정에 저장된 정보에 사용자의 허가를 받아 엑세스한 후 자동으로 추출 및 수집할 수도 있다. 이때, 수집된 계정정보가 잘못 저장된 정보일 수도 있으므로, 수집부(310)는, 해당 사이트에 해당 계정정보로 로그인이 되는지의 여부를 해당 사이트에서 해당 계정정보로 로그인을 시도해서 먼저 확인한 후, 수집할 수도 있다. 여기서, 수집부(310)는, 자동으로 정보를 수집하되 해당 계정정보로 로그인이 불가한 경우에만 사용자 단말(100)로 정보 확인 요청을 하여 수정된 정보로 수집하는 방식으로 구동될 수도 있다.
저장부(320)는, 수집된 적어도 하나의 사이트와 적어도 하나의 계정정보를 매핑되도록 개인정보로 프라이빗 블록체인(Private Blockchain) 내의 적어도 하나의 노드에 분산되도록 저장할 수 있다. 이때, 인증과 관련해서는 블록체인 내에서 이뤄지는 인증과 블록체인을 활용한 인증 2가지로 구분할 수 있다. 블록체인 내에서의 인증은 블록체인 마다 의미가 다른데, 암호화폐 유통만을 제공하는 비트코인에서는 암호화폐 소유인증 만의 의미가 있듯이, 본 발명의 일 실시예에서는 프라이빗(폐쇄형) 블록체인의 네트워크를 이루는 하나의 노드라는 것을 증명하는 용도로 사용될 수 있다. 예를 들어, 스마트 컨트랙트(Smart Contract)를 제공하는 분산 컴퓨팅 플랫폼을 제공하는 블록체인에서는 프로그램 실행자격 등을 인증할 수 있고, 폐쇄형 블록체인에서는 모든 처리과정에서 권한 관리가 수반되므로 권한 관리를 위한 인증 절차가 포함될 수 있다.
한편, 블록체인을 활용한 인증, 즉 본 발명의 일 실시예에 따라 사용자가 사이트에 접근하기 위하여 블록체인을 이용하는 방식은 공유 저장소라는 의미에서 블록체인을 활용하는 것으로 공인 인증서의 대체수단으로 이용될 수도 있다. 이때, 사용자 단말(100)에서 사이트에 접근할 때 이외에도, IoT 환경 등에서의 기기인증을 위하여 이용될 수도 있고, 예를 들어, 센서 네트워크, 애드혹 네트워크 등은 원래 P2P 성격, 즉 분산된 노드들이 특정 신뢰 주체 없이 동작하는 구조로 블록체인의 그것과 유사한 점이 많아, 블록체인을 기기인증에 이용할 수도 있다. 물론, 용도는 나열된 것들로 한정되지는 않는다.
상술한 바와 같이 후자의 저장, 즉 블록체인을 활용한 인증을 위하여 저장부(320)는, 수집된 적어도 하나의 사이트와 적어도 하나의 계정정보를 매핑되도록 개인정보로 프라이빗 블록체인(Private Blockchain) 내의 적어도 하나의 노드에 분산되도록 저장할 때, 개인정보는 분산되도록 저장되기 전, 적어도 하나의 종류의 해시 알고리즘(Hash Algorithm)으로 암호화되도록 할 수 있다. 여기서, 해시 알고리즘은 암호학적 해시함수 또는 비암호학적 해시함수를 이용하는 알고리즘을 포함하며, 암호학적 해시함수는 램포트 해시체인(Lamport Hash-chain), SHA(Secure Hash Algorithm), 및 MD(Message Digest) 중 어느 하나 또는 적어도 하나의 조합을 포함할 수 있다.
여기서, 램포트 해시체인(Lamport Hash-chain)은 클라이언트에서 생성한 비밀 값으로부터 연속적으로 해시 값을 계산하는 방식으로, 효율적 비동기화 방식의 일회용 패스워드 인증 기법이다. 이를 통한 S/Key 일회용 패스워드 방식이 RFC 2289에 적용되어 있으며, 네트워크상의 도청, 재전송 공격 등으로부터 안전한 개체 인증을 제공할 수 있다. 그리고, 램포트 서명(Lamport Digital Signature)은 일방향함수를 이용한 디지털 서명 생성 기법으로 256비트의 암호학적 해시 함수와 안전한 난수 발생기로 다음과 같은 절차를 통해 서명을 수행할 수 있다. 우선, 키 생성인데, 개인키를 생성하기 위해, 난수 발생기를 이용해 256개의 랜덤값의 쌍을 만든다. 각각의 랜덤값들은 사용자의 개인키가 되고, 키 하나당 256비트의 길이를 갖는다. 그리고, 공개키를 생성하기 위해, 사용자는 개인키 쌍들의 해시 값을 각각 구하고, 해시함수를 통해 생성된 512개의 해시값들이 사용자의 공개키가 된다. 그 다음으로, 메시지 서명인데, 메시지에 서명하고자 하는 경우, 메시지 M에 대한 해시 값을 구하고, 각각의 비트에 대응되는 위치의 개인키 쌍에서 값을 선택한다. 해시 값의 첫 번째 비트 값이 0인 경우, 첫 번째 개인키 쌍의 첫 번째 값을 선택하고, 첫 번째 비트값이 1일 때에는 첫번째 개인키 쌍의 두 번째 값을 선택한다. 이러한 방식으로 순차적으로 진행하여 256개의 값을 개인키 쌍에서 선택할 수 있으며 구해진 값은 사용자의 서명이 된다. 이 때, 공개된 사용자의 개인키는 다시 사용되거나, 사용하지 않은 랜덤 값은 공개되거나 사용되지 않아야 한다.
그리고 나서, 서명 검증을 실행하는데, 수신자가 서명을 확인하기 위해 우선적으로 메시지 M의 해시 값을 구하고, 얻어진 해시 값을 이용해 송신자의 공개키에서 256개의 값을 선택한다. 그리고 메시지와 함께 공개되어 있는 서명 값들의 해시 값을 구하고 공개키에서 선택한 해시값과 비교한다. 양쪽의 값들 이 모두 일치한다면 서명은 올바른 것으로 판단한다. 물론, 해시 알고리즘을 이용한 방법은 상술한 방법에 한정되지 않으며 실시예에 따라 다양한 알고리즘이 이용될 수 있음은 자명하다 할 것이다.
추출부(330)는, 사용자 단말(100)에서 적어도 하나의 사이트에 엑세스하는 이벤트가 발생하는 경우, 분산저장된 개인정보를 적어도 하나의 노드로부터 추출할 수 있다. 이때, 추출부(330)는, 사용자 단말(100)이 임의의 사이트에서 로그인을 시도하는지를 모니터링해야 엑세스하는 이벤트를 확인할 수 있다. 따라서, 추출부(330)는, 사용자 단말(100)에서 어떠한 사이트로 이동을 하고 로그인을 시도하는지를 확인하도록 각각의 이벤트를 모니터링할 수 있고, 로그인 요청이 발생하는 경우 사용자 단말(100)에서 사이트 제공 서버(400)로의 연결을 하이재킹할 수 있다. 예를 들어, 하이재킹은 세션 하이재킹이나 TCP 하이재킹일 수 있는데 이에 한정되지는 않는다. 여기서, 세션 하이재킹은 시스템에 접근할 적법한 사용자 아이디와 패스워드를 모를 경우 공격 대상이 이미 시스템에 접속되어 세션이 연결되어 있는 상태를 가로채기 하는 공격으로 아이디와 패스워드를 몰라도 시스템에 접근하여 자원이나 데이터를 사용할 수 있는 공격인데, 이를 역이용하여 사용자가 사이트에 접속할 수 있도록 하는데 이용할 수 있다. 마찬가지로, TCP 하이재킹은, TCP 세션을 훔쳐서 서버에게 새로운 시퀀스 넘버를 보내고 마치 클라이언트 인척하며 연결을 이어나가는 공격 기법인데, 이 또한 개인정보 관리 서비스 제공 서버(300)를 통하여 연결이 되도록 본 발명의 일 실시예에서 사용자가 사이트에 로그인시도할 때 이용할 수 있다.
필터링부(340)는, 추출된 개인정보 중 사용자 단말(100)에서 엑세스한 적어도 하나의 사이트에 매핑되어 저장된 계정정보를 필터링할 수 있다. 여기서, 필터링부(340)는, 추출된 개인정보 중 암호화된 필터링된 계정정보를 해시 알고리즘을 이용하여 비암호화할 수 있다. 즉 사용자가 로그인하고자 하는 사이트의 계정정보만을 추출해서 비암호화할 수 있는데, 이는 상술한 해시 알고리즘을 이용하여 역암호화(비암호화)할 수 있고 이는 상술한 종류의 암호화 알고리즘에 따라 다양한 방법이 적용될 수 있다.
처리부(350)는, 필터링된 계정정보를 사용자 단말(100)에서 엑세스한 적어도 하나의 사이트에 적용하여 로그인 처리할 수 있다. 여기서, 처리부(350)는, 사용자 단말(100)에서 필터링된 계정정보를 질의하는 경우 사용자 단말(100)의 사용자를 식별하기 위한 적어도 하나의 질문을 사용자 단말(100)로 전송할 수 있다. 즉, 상술한 블록체인 인증 방법 중 전자인 경우로, 처리부(350)는, 사용자 단말(100)에서 적어도 하나의 질문에 대한 응답을 전송하는 경우, 전송된 응답과 기 저장된 응답을 비교하여 사용자를 인증할 수 있고, 인증결과 사용자임이 확인되는 경우 질의에 대한 응답인 계정정보를 사용자 단말(100)로 전송할 수 있다.
이때, 블록체인 내의 인증 방법은 다양할 수 있는데, 예를 들어 이하와 같을 수 있다. 우선, ID/password 기반 인증으로, 각 사용자의 ID와 패스워드를 서버의 DB에 저장하고 저장된 지식을 기반으로 인증하는 방식인데, 서버에 저장된 패스워드 리스트가 노출되어 인증이 무력화됨을 막기 위해 해시 함수를 통해 값을 저장하는 방식을 채택할 수 있다. 보다 높은 안전성을 보장하기 위해 SSID를 숨기거나, AP와 디바이스 간 WEP키 사용, PAP 인증 방식 채택, RFID 방식을 더 사용할 수도 있다. 두 번째는, MAC Address 기반 인증으로, 네트워크 인터페이스에 할당된 고유의 식별 주소인 MAC(Media Access Control) Address를 활용한 인증 방식이며, 디바이스가 네트워크 접속 요청 시 서버에 등록되어있는 MAC 주소와 디바이스로부터 요청받은 메시지와 함께 전송된 MAC 주소를 비교해 인증하는 절차를 가지며, ID/Password 기반 인증 방식보다 간편하고 속도도 빠르다. 세 번째는, 암호 프로토콜 기반 인증으로, 공개키 암호, 대칭키 암호를 기반으로 개체를 인증하는 프로토콜이며, 802.1x/802.11i, WPA 등 다양한 표준을 이용할 수 있고, 암호 프로토콜 기반 인증 방식은 사용하는 암호 프로토콜에 따라 ID/Password 기반 인증, MAC 주소 기반 인증, 인증서 기반 기기 인증서 인증 등의 구성을 포함할 수 있고, 채택한 암호 프로토콜에 따라 부인방지 기능도 제공이 가능하다.
네 번째는, 인증서 기반 인증으로, 공개키 암호를 이용하는 전자서명을 통해 인증하는 방식으로, 인증서에 전자서명을 위한 정보를 수록하여 이를 기반으로 인증을 수행하고, 인증기관인 Root CA 하에 5개의 공인인증기관을 통해 인증서의 발급 및 인증을 수행할 수 있다. 인증서 기반의 인증기술은 강력한 인증 기능을 통해 높은 안전성을 제공하며, 부인방지 기능 또한 제공할 수 있다. 다섯 번째는, IBE를 이용한 인증으로, 아이디 기반 인증(ID-based Authentication)은 사용자의 이메일 주소, 이름, IP주소 등 사용자의 ID를 공개키로 사용하는 공개키 암호 시스템으로 서명 및 인증을 제공한다. 사전 키 분배가 필요하지 않으며, 연산량이 적고 키 길이가 상대적으로 짧으며, Hess’s Algorithm, Lynn’s Algorithm, Gentry and Silverberg’s Algorithm 등 다양한 인증 스킴 등이 더 적용될 수도 있다.
한편, 프라이빗 블록체인 내에 분산저장되는 개인정보는 주민번호, 이름, 주소, 이메일, 최종학교, 가상의 이름, 가상의 숫자 및 가상의 특수기호 중 어느 하나 또는 적어도 하나의 조합을 포함할 수 있다. 그리고, 적어도 하나의 노드는 P2P(Peer to Peer)로 연결될 수 있고, 사용자 단말(100)은 이동 단말 및 고정 단말을 포함하고, 이동 단말 및 고정 단말 간의 연동으로 데이터는 자동으로 동기화되고, 적어도 하나의 사이트는 웹 페이지, 앱 페이지, 애플리케이션, 및 프로그램 중 어느 하나 또는 적어도 하나일 수 있다.
블록체인 인증에서 후자로 설명되었던 블록체인을 이용한 인증의 구조는, 예를 들어, 사용자가 제시하는 아이디가 해당 사용자의 것이 맞는지 확인하는 과정으로, 등록과정과 로그인과정 2가지 단계로 구성될 수 있다. 우선, 인증정보 저장소(repository)에 id와 인증정보를 저장하는 것이 등록과정이고, 로그인 과정은 사용자가 id와 함께 제출하는 증거인 인증정보를 등록과정에서 저장해둔 인증정보와 비교하는 것이다. 인증정보는 인증 방법에 따라 패스워드, 생체정보 템플릿, 훈련된 머신러닝 모델, 공개키, 대칭키 등을 포함할 수 있다. 이때, PKI 기반 인증과정은, 사용자가 로그인하기 위해 아이디를 제출하면 서버는 난수로 구성된 challenge 값을 제시하고 사용자는 자신의 비밀키를 이용해 challenge 값에 서명한 후 서명값인 signature와 공개키 인증서를 서버에 제출한다. 이때 공개키 인증서는 사용자의 아이디와 공개키를 인증기관인 CA가 서명한 정보이다. 개인정보 관리 서비스 제공 서버(300)는 사용자의 서명을 공개키 인증서에 포함된 공개키를 이용해 검증하게 되고, 인증서 자체의 위변조를 확인하기 위해 인증서에 포함된 CA의 서명을 검증하게 되는데 이를 위해서는 CA의 공개키가 개인정보 관리 서비스 제공 서버(300)측에 저장되어 있어야 한다. PKI 기반 인증에서는 CA에서 인증서를 발급받는 것이 등록과정에 해당되고, 개인정보 관리 서비스 제공 서버(300)에 별도로 등록하는 과정이 필요 없다. 공개키 인증서를 사용하지 않는 공개키 기반 인증도 가능한데 이때는 개인정보 관리 서비스 제공 서버(300)의 인증정보 저장소에 아이디와 함께 공개키를 등록하는 등록과정이 필요하다. 한편, 공개키 인증서는 비밀 정보가 아니고 공개정보이다. 즉, 사용자가 인증서를 제출할 수도 있지만, CA가 공개 저장소에 저장해 놓은 공개키 인증서를 개인정보 관리 서비스 제공 서버(300)가 다운로드하여 사용할 수도 있다. 즉 공개키 인증서는 CA가 확인해서 배포하는 공개, 공유 인증정보라고 할 수 있다.
상술한 블록체인을 이용한 인증으로 인증이 진행되는 과정은 다음과 같을 수 있다. 우선, 개인정보 관리 서비스 제공 서버(300)는, 상술한 바와 같이 인증 기초 정보 저장할 수 있는데, 여기서 인증 기초 정보는 CA의 공개키 등 전체 서버들이 모두 참조해야할 정보를 의미할 수 있다. CA의 공개키는 인증구조 신뢰의 출발점(Anchor of Trust)로서 이를 안전하게 공유하는 것이 쉽지 않은 문제이나, 블록체인은 위변조가 거의 불가능한 공유저장소이므로 이러한 인증 기초 정보를 게시하기에 적합하다. 그 다음으로, 개인정보 관리 서비스 제공 서버(300)는 인증정보 저장하는데, 아이디와 인증정보가 블록체인에 저장되어 공개될 경우, 개인정보 관리 서비스 제공 서버(300)에서는 자체적인 인증정보저장소를 갖지 않아도 블록체인에 저장된 인증정보를 활용하여 사용자를 인증할 수 있다. 다만 그 인증정보가 비밀의 성격을 띠는 경우, 예를 들어 대칭키 방식의 인증 정보의 경우 대칭키를 알면 아이디를 도용할 수 있으므로 공개 저장소에 저장하면 안된다. 지문 템플릿이나 생체인식 머신러닝 모델 등은 그 자체가 생체정보는 아니므로 문제가 없다고 생각될 수도 있지만 템플릿에서 지문을 복원하거나 머신러닝 모델에서 원래 생체정보를 추출하는 것이 가능하므로 이러한 정보도 공개 저장하는 것이 바람직하지 않다. 따라서, 본 발명의 일 실시예는 폐쇄형 블록체인 내의 노드에서만 분산저장하는 것을 기반으로 하게 된다. 이렇게 공개키를 블록체인을 통해 공유하면 공개키 인증서와 마찬가지로 서버에서 별도 등록과정 없이 사용자가 제시하는 아이디에 대한 인증을 할 수 있게 된다.
세 번째로, 개인정보 관리 서비스 제공 서버(300)는 인증정보 검증 시스템 역할을 수행해야 하는데, 스마트컨트랙트를 제공하는 블록체인으로 인증정보저장과 검증을 함께 수행하는 일종의 공통 인증 서버의 역할을 수행할 수 있다. 가장 간단한 구조로 아이디와 공개키를 데이터로 저장하고 있고 인증 요청이 들어오면 공개키를 이용해 서명을 검증하는 인증서버를 스마트 컨트랙트로 구현할 수 있다.
한편, 인증에 블록체인을 이용할 때 인증정보를 처음에 블록체인에 저장하는 부분이 문제가 될 수 있다. 즉, 기존 인증에서는 등록 시에 서버가 사용자가 인증정보를 보유했는지 확인한다. PKI를 사용하지 않는 공개키 인증 방식에서는 등록 과정에서 사용자가 공개키에 해당하는 비밀키를 소유하였는지 서명 시험을 통해 확인하는 POP (Proof of Possession) 과정을 거친다. 그렇게 확인된 내용은 해당 서버에 적용되므로 서버가 정확한 확인을 하지 않을 이유가 없다. PKI 기반 공개키 인증 방식에서는 CA가 이 확인 과정을 수행하며 등록을 해주는 셈이고 서버들은 CA를 신뢰하기 때문에 공개키 인증서에 들어있는 내용을 신뢰하고 사용한다.
하지만, 블록체인은 어떤 노드에 대한 신뢰를 전제로 하고 있지 않다. CA가 없는 환경에서 CA가 아닌 어떤 노드가 게시한 특정 아이디의 인증정보를 신뢰할 근거가 없다. 블록체인을 활용한 인증 체계의 유효성을 논할 때는 이러한 오라클 문제 즉, CA가 아닌 노드가 게시한 정보를 어떻게 신뢰하는 것인지 반드시 고려해야 한다. 이에 따라, 본 발명의 일 실시예에 따른 개인정보 관리 서비스 제공 서버(300)는, 오라클 문제의 해결 방법으로 일반적으로 정보 입력자에 대한 평판 등 신뢰관리, 입력되는 정보에 대한 표결로 신뢰여부 결정, 인텔 SGX 등 신뢰할 수 있는 실행환경으로부터 위변조없는 정보 입력 채널 형성, 정보 생성 단계에 대한 검증 등의 방법을 더 이용할 수 있다.
또한, 개인정보 관리 서비스 제공 서버(300)는, P2P 컴퓨팅 환경에서 주변 기기(노드)의 모니터링을 바탕으로 서비스를 이용하기만 하고 서비스를 위해 자신의 자원을 내놓지 않는 이기적인 노드를 구분하여, 페널티(협조적인 노드에게는 인센티브)를 부여하는 메커니즘을 더 이용할 수 있다. 예를 들어 비트코인을 이용하여, P2P 환경을 위한 암호화폐로서 이러한 인센티브가 곧 암호화폐가 되는 시스템을 적용할 수 있다. 기기인증에서 고스트 공격같은 고도화된 공격에 대응하기 위해서는 주변 노드들의 협조가 필요한데, 이를 위해서 개인정보 관리 서비스 제공 서버(300)는, 블록체인의 인센티브 시스템을 더 적용할 수 있다. 또한 주변 노드를 신뢰할 수 없기 때문에 여러 노드들의 모니터링(검증) 결과를 합의하는 과정이 필요하므로 개인정보 관리 서비스 제공 서버(300)는 폐쇄형 블록체인의 합의구조를 통하여 구현하도록 한다.
이하, 상술한 도 2의 개인정보 관리 서비스 제공 서버의 구성에 따른 동작 과정을 도 3을 예로 들어 상세히 설명하기로 한다. 다만, 실시예는 본 발명의 다양한 실시예 중 어느 하나일 뿐, 이에 한정되지 않음은 자명하다 할 것이다.
도 3을 참조하면, (a) 개인정보 관리 서비스 제공 서버(300)는 계정정보를 포함한 개인정보, 예를 들어, 주민번호, 주소, 닉네임, 최종학교, 가상의 이름 등을 저장할 수 있고, 이는 사이트별, 사용자별로 구분될 수 있다. 이렇게 저장된 개인정보는 (b) 개인정보 관리 서비스 제공 서버(300)에 암호화과정을 거쳐서 프라이빗(폐쇄형) 블록체인 내의 적어도 하나의 노드에 분산되도록 저장되고, (c) 개인정보 관리 서비스 제공 서버(300)는, 사용자 단말(100)에서 로그인 이벤트가 발생하는 경우, 사용자 단말(100)에서 사이트 제공 서버(400)로 자동로그인이 될 수 있도록 암호화된 계정정보를 비암호화하여 사이트 제공 서버(400)로 제공할 수 있다.
덧붙여서, 본 발명의 일 실시예에 따른 개인정보 관리 서비스 제공 서버(300)는, 사이트 제공 서버(400)에서 주기적으로 비밀번호를 변경하는 것을 요청하는 경우, 자동으로 비밀번호를 변경 및 저장하는 과정을 더 수행할 수도 있다. 예를 들어, 각 사이트는 사용가능한 암호의 조합이나 체계가 모두 다르고, 비밀번호를 변경해야 하는 주기도 다르며, 비밀번호를 변경할 때마다 시스템이 업데이트 됨에 따라 기존의 체계를 인정하지 않는 경우도 있는 등 다양한 플랫폼이 운영되고 있다. 이때, 사용자가 20개의 사이트를 이용하고, 각 사이트가 6개월마다 비밀번호를 변경해야 한다고 가정할 때, 각 주기와 시기가 동일하다면 6개월마다 사이트에 접속할 때 20개의 비밀번호를 모두 변경해야 하고, 하루에 한 개씩만 변경한다고 가정해도 영업일 기준으로 모든 영업일에 계속해서 비밀번호를 변경해야 함을 의미한다. 이 과정은 보안에 필수적이지만 사용자로 하여금 사이트를 이용함에 따른 불편함으로 이어지므로, 본 발명의 일 실시예에 따른 방법은, 주기적으로 변경해야 하는 사이트의 비밀번호 규칙, 예를 들어, 영어, 숫자, 특수문자 포함 10 캐릭터(Character) 등과 같은 규칙을 파악하고, 해당 규칙에 맞게 비밀번호를 생성한 후 해당 사이트에 등록하고, 비밀번호를 블록체인 내에서 업데이트하는 방식을 포함할 수 있다.
이와 같은 도 2 및 도 3의 프라이빗 블록체인 기반 개인정보 관리 서비스 제공 방법에 대해서 설명되지 아니한 사항은 앞서 도 1을 통해 프라이빗 블록체인 기반 개인정보 관리 서비스 제공 방법에 대하여 설명된 내용과 동일하거나 설명된 내용으로부터 용이하게 유추 가능하므로 이하 설명을 생략하도록 한다.
도 4는 본 발명의 일 실시예에 따른 도 1의 프라이빗 블록체인 기반 개인정보 관리 서비스 제공 시스템에 포함된 각 구성들 상호 간에 데이터가 송수신되는 과정을 나타낸 도면이다. 이하, 도 4를 통해 각 구성들 상호간에 데이터가 송수신되는 과정의 일 예를 설명할 것이나, 이와 같은 실시예로 본원이 한정 해석되는 것은 아니며, 앞서 설명한 다양한 실시예들에 따라 도 4에 도시된 데이터가 송수신되는 과정이 변경될 수 있음은 기술분야에 속하는 당업자에게 자명하다.
도 4를 참조하면, 개인정보 관리 서비스 제공 서버(300)는, 사용자 단말(100)에서 사용자 등록을 신청하면(S4100), 사용자 단말(100)로 개인정보를 요청하고(S4200), 이에 대한 응답으로 계정정보를 포함하는 개인정보를 자동으로 추출 또는 수동으로 입력받는다(S4300). 그리고, 개인정보 관리 서비스 제공 서버(300)는 사용자의 식별부호, 사이트, 및 계정정보를 매핑하고(S4400), 해시 알고리즘으로 암호화를 진행한 후(S4500), 프라이빗 블록체인에 암호화된 데이터를 분산저장한다(S4600). 한편, 개인정보 관리 서비스 제공 서버(300)는 사용자 단말(100)에서 사이트 제공 서버(400)의 사이트로 엑세스 및 로그인하려는 시도가 있는 경우(S4700), 사이트의 URL과 사용자의 식별부호를 추출하여(S4800), 사이트의 URL과 사용자의 식별부호에 매핑되어 저장된 계정정보를 프라이빗 블록체인의 분산노드로부터 추출하고(S4810), 추출된 계정정보를 비암호화하여(S4900), 사용자 단말(100)에서 사이트 제공 서버(400)로의 로그인처리가 되도록 제어한다(S4910). 이렇게 엑세스 허가처리를 받은 사용자 단말(100)은 로그인 후 사이트 제공 서버(400)에서 제공하는 서비스를 이용할 수 있게 된다(S4920).
상술한 단계들(S4100~S4920)간의 순서는 예시일 뿐, 이에 한정되지 않는다. 즉, 상술한 단계들(S4100~S4920)간의 순서는 상호 변동될 수 있으며, 이중 일부 단계들은 동시에 실행되거나 삭제될 수도 있다.
이와 같은 도 4의 프라이빗 블록체인 기반 개인정보 관리 서비스 제공 방법에 대해서 설명되지 아니한 사항은 앞서 도 1 내지 도 3을 통해 프라이빗 블록체인 기반 개인정보 관리 서비스 제공 방법에 대하여 설명된 내용과 동일하거나 설명된 내용으로부터 용이하게 유추 가능하므로 이하 설명을 생략하도록 한다.
도 5는 본 발명의 일 실시예에 따른 프라이빗 블록체인 기반 개인정보 관리 서비스 제공 방법을 설명하기 위한 동작 흐름도이다. 도 5를 참조하면, 개인정보 관리 서비스 제공 서버는, 사용자 단말로부터 적어도 하나의 사이트의 URL과, 아이디 및 패스워드를 포함하는 적어도 하나의 계정정보를 수집하고(S5100), 수집된 적어도 하나의 사이트와 적어도 하나의 계정정보를 매핑되도록 개인정보로 프라이빗 블록체인(Private Blockchain) 내의 적어도 하나의 노드에 분산되도록 저장한다(S5200). 그리고, 개인정보 관리 서비스 제공 서버는, 사용자 단말에서 적어도 하나의 사이트에 엑세스하는 이벤트가 발생하는 경우, 분산저장된 개인정보를 적어도 하나의 노드로부터 추출하고(S5300), 추출된 개인정보 중 사용자 단말에서 엑세스한 적어도 하나의 사이트에 매핑되어 저장된 계정정보를 필터링한다(S5400).
마지막으로, 개인정보 관리 서비스 제공 서버는 필터링된 계정정보를 사용자 단말에서 엑세스한 적어도 하나의 사이트에 적용하여 로그인 처리한다(S5500).
이와 같은 도 5의 프라이빗 블록체인 기반 개인정보 관리 서비스 제공 방법에 대해서 설명되지 아니한 사항은 앞서 도 1 내지 도 4를 통해 프라이빗 블록체인 기반 개인정보 관리 서비스 제공 방법에 대하여 설명된 내용과 동일하거나 설명된 내용으로부터 용이하게 유추 가능하므로 이하 설명을 생략하도록 한다.
도 5를 통해 설명된 일 실시예에 따른 프라이빗 블록체인 기반 개인정보 관리 서비스 제공 방법은, 컴퓨터에 의해 실행되는 애플리케이션이나 프로그램 모듈과 같은 컴퓨터에 의해 실행가능한 명령어를 포함하는 기록 매체의 형태로도 구현될 수 있다. 컴퓨터 판독 가능 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체를 모두 포함한다. 또한, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체를 모두 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함한다.
전술한 본 발명의 일 실시예에 따른 프라이빗 블록체인 기반 개인정보 관리 서비스 제공 방법은, 단말기에 기본적으로 설치된 애플리케이션(이는 단말기에 기본적으로 탑재된 플랫폼이나 운영체제 등에 포함된 프로그램을 포함할 수 있음)에 의해 실행될 수 있고, 사용자가 애플리케이션 스토어 서버, 애플리케이션 또는 해당 서비스와 관련된 웹 서버 등의 애플리케이션 제공 서버를 통해 마스터 단말기에 직접 설치한 애플리케이션(즉, 프로그램)에 의해 실행될 수도 있다. 이러한 의미에서, 전술한 본 발명의 일 실시예에 따른 프라이빗 블록체인 기반 개인정보 관리 서비스 제공 방법은 단말기에 기본적으로 설치되거나 사용자에 의해 직접 설치된 애플리케이션(즉, 프로그램)으로 구현되고 단말기에 등의 컴퓨터로 읽을 수 있는 기록매체에 기록될 수 있다.
전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.
본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.

Claims (10)

  1. 개인정보 관리 서비스 제공 서버에서 실행되는 개인정보 관리 서비스 제공 방법에 있어서,
    사용자 단말로부터 적어도 하나의 사이트의 URL과, 아이디 및 패스워드를 포함하는 적어도 하나의 계정정보를 수집하는 단계;
    상기 수집된 적어도 하나의 사이트와 상기 적어도 하나의 계정정보를 매핑되도록 개인정보로 프라이빗 블록체인(Private Blockchain) 내의 적어도 하나의 노드에 분산되도록 저장하는 단계;
    상기 사용자 단말에서 적어도 하나의 사이트에 엑세스하는 이벤트가 발생하는 경우, 상기 분산저장된 개인정보를 상기 적어도 하나의 노드로부터 추출하는 단계;
    상기 추출된 개인정보 중 상기 사용자 단말에서 엑세스한 적어도 하나의 사이트에 매핑되어 저장된 계정정보를 필터링하는 단계; 및
    상기 필터링된 계정정보를 상기 사용자 단말에서 엑세스한 적어도 하나의 사이트에 적용하여 로그인 처리하는 단계;
    를 포함하는 것인, 프라이빗 블록체인 기반 개인정보 관리 서비스 제공 방법.
  2. 제 1 항에 있어서,
    상기 프라이빗 블록체인 내에 분산저장되는 개인정보는 주민번호, 이름, 주소, 이메일, 최종학교, 가상의 이름, 가상의 숫자 및 가상의 특수기호 중 어느 하나 또는 적어도 하나의 조합을 포함하는 것인, 프라이빗 블록체인 기반 개인정보 관리 서비스 제공 방법.
  3. 제 1 항에 있어서,
    상기 수집된 적어도 하나의 사이트와 상기 적어도 하나의 계정정보를 매핑되도록 개인정보로 프라이빗 블록체인(Private Blockchain) 내의 적어도 하나의 노드에 분산되도록 저장하는 단계에서,
    상기 개인정보는 분산되도록 저장되기 전, 적어도 하나의 종류의 해시 알고리즘(Hash Algorithm)으로 암호화되는 것인, 프라이빗 블록체인 기반 개인정보 관리 서비스 제공 방법.
  4. 제 3 항에 있어서,
    상기 해시 알고리즘은 암호학적 해시함수 또는 비암호학적 해시함수를 이용하는 알고리즘을 포함하며,
    상기 암호학적 해시함수는 램포트 해시체인(Lamport Hash-chain), SHA(Secure Hash Algorithm), 및 MD(Message Digest) 중 어느 하나 또는 적어도 하나의 조합을 포함하는 것인, 프라이빗 블록체인 기반 개인정보 관리 서비스 제공 방법.
  5. 제 1 항에 있어서,
    상기 추출된 개인정보 중 상기 사용자 단말에서 엑세스한 적어도 하나의 사이트에 매핑되어 저장된 계정정보를 필터링하는 단계에서,
    상기 추출된 개인정보 중 암호화된 상기 필터링된 계정정보를 해시 알고리즘을 이용하여 비암호화하는 단계;
    를 포함하는 것인, 프라이빗 블록체인 기반 개인정보 관리 서비스 제공 방법.
  6. 제 1 항에 있어서,
    상기 적어도 하나의 노드는 P2P(Peer to Peer)로 연결되는 것인, 프라이빗 블록체인 기반 개인정보 관리 서비스 제공 방법.
  7. 제 1 항에 있어서,
    상기 사용자 단말은 이동 단말 및 고정 단말을 포함하고,
    상기 이동 단말 및 고정 단말 간의 연동으로 데이터는 자동으로 동기화되고,
    상기 적어도 하나의 사이트는 웹 페이지, 앱 페이지, 애플리케이션, 및 프로그램 중 어느 하나 또는 적어도 하나인 것인, 프라이빗 블록체인 기반 개인정보 관리 서비스 제공 방법.
  8. 제 1 항에 있어서,
    상기 필터링된 계정정보를 상기 사용자 단말에서 엑세스한 적어도 하나의 사이트에 적용하여 로그인 처리하는 단계는,
    상기 사용자 단말에서 상기 필터링된 계정정보를 질의하는 경우 상기 사용자 단말의 사용자를 식별하기 위한 적어도 하나의 질문을 상기 사용자 단말로 전송하는 단계;
    상기 사용자 단말에서 상기 적어도 하나의 질문에 대한 응답을 전송하는 경우, 상기 전송된 응답과 기 저장된 응답을 비교하여 사용자를 인증하는 단계;
    상기 인증결과 사용자임이 확인되는 경우 상기 질의에 대한 응답인 계정정보를 상기 사용자 단말로 전송하는 단계;
    를 포함하는 것인, 프라이빗 블록체인 기반 개인정보 관리 서비스 제공 방법.
  9. 개인정보 관리 서비스 제공 서버와 연동되어 제 1 항 내지 제 8 항 중 어느 한 항의 방법을 실행하기 위하여 매체에 저장된 애플리케이션.
  10. 제 1 항 내지 제 8 항 중 어느 한 항의 프라이빗 블록체인 기반 개인정보 관리 서비스 제공 방법을 실행하기 위한 프로그램이 기록된 컴퓨터로 읽을 수 있는 기록매체.
KR1020180109105A 2018-09-12 2018-09-12 프라이빗 블록체인 기반 개인정보 관리 서비스 제공 방법 KR102118556B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180109105A KR102118556B1 (ko) 2018-09-12 2018-09-12 프라이빗 블록체인 기반 개인정보 관리 서비스 제공 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180109105A KR102118556B1 (ko) 2018-09-12 2018-09-12 프라이빗 블록체인 기반 개인정보 관리 서비스 제공 방법

Publications (2)

Publication Number Publication Date
KR20200030345A true KR20200030345A (ko) 2020-03-20
KR102118556B1 KR102118556B1 (ko) 2020-06-03

Family

ID=69958413

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180109105A KR102118556B1 (ko) 2018-09-12 2018-09-12 프라이빗 블록체인 기반 개인정보 관리 서비스 제공 방법

Country Status (1)

Country Link
KR (1) KR102118556B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114268472A (zh) * 2021-12-10 2022-04-01 杭州溪塔科技有限公司 基于区块链的应用***的用户认证方法及***
WO2022265404A1 (ko) * 2021-06-15 2022-12-22 주식회사 에스앤피랩 개인정보 관리 서버 및 이의 작동 방법

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180003065A (ko) * 2016-06-30 2018-01-09 (주)에이티솔루션즈 매체 연동 로그인 자동화 방법
KR101880175B1 (ko) * 2018-02-13 2018-07-19 주식회사 마크로젠 복수의 블록체인에 기반을 둔 생명정보 데이터 제공 방법, 생명정보 데이터 저장 방법 및 생명정보 데이터 전송 시스템

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180003065A (ko) * 2016-06-30 2018-01-09 (주)에이티솔루션즈 매체 연동 로그인 자동화 방법
KR101880175B1 (ko) * 2018-02-13 2018-07-19 주식회사 마크로젠 복수의 블록체인에 기반을 둔 생명정보 데이터 제공 방법, 생명정보 데이터 저장 방법 및 생명정보 데이터 전송 시스템

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022265404A1 (ko) * 2021-06-15 2022-12-22 주식회사 에스앤피랩 개인정보 관리 서버 및 이의 작동 방법
CN114268472A (zh) * 2021-12-10 2022-04-01 杭州溪塔科技有限公司 基于区块链的应用***的用户认证方法及***
CN114268472B (zh) * 2021-12-10 2023-12-15 杭州溪塔科技有限公司 基于区块链的应用***的用户认证方法及***

Also Published As

Publication number Publication date
KR102118556B1 (ko) 2020-06-03

Similar Documents

Publication Publication Date Title
US11651362B2 (en) Method and system for zero-knowledge and identity based key management for decentralized applications
CN110537346B (zh) 安全去中心化域名***
Lim et al. Blockchain technology the identity management and authentication service disruptor: a survey
WO2022262078A1 (zh) 基于零信任安全的访问控制方法、设备及存储介质
Lee Authentication scheme for smart learning system in the cloud computing environment
EP2805298B1 (en) Methods and apparatus for reliable and privacy protecting identification of parties' mutual friends and common interests
Oktian et al. BorderChain: Blockchain-based access control framework for the Internet of Things endpoint
EP2957064B1 (en) Method of privacy-preserving proof of reliability between three communicating parties
Luo et al. Lightweight three factor scheme for real-time data access in wireless sensor networks
Huang et al. An efficient authentication and key agreement protocol for IoT-enabled devices in distributed cloud computing architecture
JP2001186122A (ja) 認証システム及び認証方法
Gupta et al. Hash based multi-server key exchange protocol using smart card
US20140013116A1 (en) Apparatus and method for performing over-the-air identity provisioning
Hanumanthappa et al. Privacy preserving and ownership authentication in ubiquitous computing devices using secure three way authentication
KR102118556B1 (ko) 프라이빗 블록체인 기반 개인정보 관리 서비스 제공 방법
Chen et al. A novel three-factor authentication scheme with high security for multi-server environments
CN102083066A (zh) 统一安全认证的方法和***
Alsaid et al. Preventing phishing attacks using trusted computing technology
Binu et al. A mobile based remote user authentication scheme without verifier table for cloud based services
Hölzl et al. Real-world Identification for an Extensible and Privacy-preserving Mobile eID
Kim et al. Secure user authentication based on the trusted platform for mobile devices
Jesudoss et al. Enhanced certificate-based authentication for distributed environment
CN114915494B (zh) 一种匿名认证的方法、***、设备和存储介质
Dong et al. Tiger tally: cross-domain scheme for different authentication mechanism
Lin et al. An improved lightweight pseudonym identity based authentication scheme on multi-server environment

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant