KR102023101B1 - 원본 데이터의 위변조 방지 장치 및 그 방법 - Google Patents

원본 데이터의 위변조 방지 장치 및 그 방법 Download PDF

Info

Publication number
KR102023101B1
KR102023101B1 KR1020180166714A KR20180166714A KR102023101B1 KR 102023101 B1 KR102023101 B1 KR 102023101B1 KR 1020180166714 A KR1020180166714 A KR 1020180166714A KR 20180166714 A KR20180166714 A KR 20180166714A KR 102023101 B1 KR102023101 B1 KR 102023101B1
Authority
KR
South Korea
Prior art keywords
forgery
digital data
data
generated
blockchain server
Prior art date
Application number
KR1020180166714A
Other languages
English (en)
Inventor
김재룡
강준우
Original Assignee
주식회사 엔퍼
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 엔퍼 filed Critical 주식회사 엔퍼
Priority to KR1020180166714A priority Critical patent/KR102023101B1/ko
Application granted granted Critical
Publication of KR102023101B1 publication Critical patent/KR102023101B1/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/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • 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/602Providing cryptographic facilities or services
    • 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/62Protecting access to data via a platform, e.g. using keys or access control rules
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • 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/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • H04L2209/38
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Power Engineering (AREA)
  • Computing Systems (AREA)
  • Storage Device Security (AREA)

Abstract

본 발명은 원본 데이터의 위변조 방지 장치 및 그 방법을 개시한다. 즉, 본 발명은 블록체인 상에 원본 데이터를 전송하기 전까지의 해당 원본 데이터에 대한 위변조 가능성을 차단하기 위해서 오프라인 데이터의 디지털화 시 디지털화된 데이터에 대해서 실시간으로 생성되는 개인키를 통해 암호화하고, 암호화된 디지털 데이터를 곧바로 블록체인 상으로 전송함으로써, 블록체인 상에 원본 데이터를 전송하기 전까지의 해당 원본 데이터에 대한 위변조 가능성을 차단하며, 오라클 문제를 해결하여 원본 데이터에 대한 신뢰성을 확보할 수 있다.

Description

원본 데이터의 위변조 방지 장치 및 그 방법{Apparatus for preventing forgery of original data and method thereof}
본 발명은 원본 데이터의 위변조 방지 장치 및 그 방법에 관한 것으로, 특히 블록체인 상에 원본 데이터를 전송하기 전까지의 해당 원본 데이터에 대한 위/변조 가능성을 차단하기 위해서 오프라인 데이터의 디지털화 시 디지털화된 데이터에 대해서 실시간으로 생성되는 개인키를 통해 암호화하고, 암호화된 디지털 데이터를 곧바로 블록체인 상으로 전송하는 원본 데이터의 위변조 방지 장치 및 그 방법에 관한 것이다.
오프라인 형식의 데이터는 원본 데이터를 손실, 분실 변경될 가능성이 존재하며, 대규모로 공간을 차지하고 데이터를 찾을 때 많은 시간을 소요하게 함으로써 시간과 공간을 낭비시킨다.
블록체인 상에 데이터를 전송하고 보관하면 원본 데이터의 영구 보전의 가능성과 데이터 위변조 차단이 가능하다.
이러한 블록체인(block chain)은 관리 대상 데이터를 '블록(block)'이라고 하는 소규모의 데이터들이 P2P(peer to peer) 방식을 기반으로 생성된 체인 형태의 연결고리 기반 분산 데이터 저장환경에 저장되어 누구도 임의로 수정할 수 없고 누구나 변경의 결과를 열람할 수 있는 분산 컴퓨팅 기술 기반의 데이터 위변조 방지기술이다.
이는 근본적으로 분산 데이터 저장기술의 한 형태로, 지속적으로 변경되는 데이터를 모든 참여 노드에 기록한 변경리스트로서 분산 노드의 운영자에 의한 임의 조작이 불가능하도록 고안되었다.
이렇게 블록체인 상에 올라오는 데이터가 위변조되지 않은 데이터임을 확인할 수 없는 문제점인 오라클 문제(oracle problem)가 존재하며, 이는 블록체인 위에 올라간 데이터는 위변조할 수 없지만, 블록체인에 올라가기 전까지의 데이터가 원본임을 어떻게 확인할 수 있는지에 대한 데이터의 무결성에 대한 의문이 존재할 수 있는 상태이다.
한국공개특허 제10-2018-0115282호 [제목: 블록체인을 이용하는 피어 - 투 - 피어 분산 장부에서 개체들의 효율적인 전송을 위한 방법 및 시스템]
본 발명의 목적은 블록체인 상에 원본 데이터를 전송하기 전까지의 해당 원본 데이터에 대한 위변조 가능성을 차단하기 위해서 오프라인 데이터의 디지털화 시 디지털화된 데이터에 대해서 실시간으로 생성되는 개인키를 통해 암호화하고, 암호화된 디지털 데이터를 곧바로 블록체인 상으로 전송하는 원본 데이터의 위변조 방지 장치 및 그 방법을 제공하는 데 있다.
본 발명의 다른 목적은 블록체인이 모든 데이터를 외부에 공개하여야 한다는 특징을 가지고 있지만, 개인정보 보호법 등에 의하여 위변조가 이뤄지면 아니하되, 관리하는 사람만 접근해야 하는 민감한 정보 등에 대해서, 블록체인 상에 데이터를 암호화하여 전송하고, 별도의 키를 사용하여 해당 암호화된 데이터에 접근하는 원본 데이터의 위변조 방지 장치 및 그 방법을 제공하는 데 있다.
본 발명의 실시예에 따른 원본 데이터의 위변조 방지 장치는 전용 앱을 통해 원본 데이터인 오프라인 데이터를 미리 설정된 형식으로 스캔하여 디지털 데이터를 생성하고, 상기 생성된 디지털 데이터를 미리 설정된 암호화 방식을 통해 암호화하여, 암호화된 디지털 데이터를 생성하는 제어부; 및 상기 암호화된 디지털 데이터 및 상기 위변조 방지 장치의 식별 정보를 블록체인 서버에 전송하는 통신부를 포함하며, 상기 블록체인 서버는, 상기 암호화된 디지털 데이터 및 상기 위변조 방지 장치의 식별 정보를 상기 블록체인 서버 내의 블록체인에 저장할 수 있다.
본 발명과 관련된 일 예로서 상기 미리 설정된 형식은, 이미지 파일 형식 또는 워드 파일 형식일 수 있다.
본 발명과 관련된 일 예로서 상기 제어부는, 상기 전용 앱을 통해 랜덤 시드를 생성하고, 상기 생성된 랜덤 시드를 미리 설정된 해시 함수에 적용하여 개인키 및 상기 개인키에 대응하는 공개키를 생성하고, 상기 전용 앱을 통해 상기 생성된 개인키를 사용하여 상기 생성된 디지털 데이터를 암호화할 수 있다.
본 발명의 실시예에 따른 원본 데이터의 위변조 방지 방법은 위변조 방지 장치에 의해, 전용 앱을 통해 원본 데이터인 오프라인 데이터를 미리 설정된 형식으로 스캔하여 디지털 데이터를 생성하는 단계; 상기 위변조 방지 장치에 의해, 상기 생성된 디지털 데이터를 미리 설정된 암호화 방식을 통해 암호화하여, 암호화된 디지털 데이터를 생성하는 단계; 상기 위변조 방지 장치에 의해, 상기 암호화된 디지털 데이터 및 상기 위변조 방지 장치의 식별 정보를 블록체인 서버에 전송하는 단계; 및 상기 블록체인 서버에 의해, 상기 수신된 암호화된 디지털 데이터 및 상기 위변조 방지 장치의 식별 정보를 상기 블록체인 서버 내의 블록체인에 저장하는 단계를 포함할 수 있다.
본 발명과 관련된 일 예로서 상기 암호화된 디지털 데이터를 생성하는 단계는, 상기 위변조 방지 장치에 의해, 미리 설정된 제 1 비트수의 랜덤 코드를 생성하는 과정; 상기 생성된 랜덤 코드를 미리 설정된 해시 함수에 적용하여 암호화된 데이터를 생성하는 과정; 상기 생성된 암호화된 데이터 중에서 미리 설정된 구간에 대응하는 비트 구간을 추출하는 과정; 상기 추출된 비트 구간을 상기 생성된 랜덤 코드의 마지막 부분에 추가하여, 특정 코드를 생성하는 과정; 상기 생성된 특정 코드를 미리 설정된 비트 단위로 분할하여, 복수의 서브 코드를 생성하는 과정; 상기 생성된 복수의 서브 코드에 대응하는 인덱스를 확인하는 과정; 미리 설정된 BIP 표준 단어 리스트 중에서 상기 확인된 인덱스에 대응하는 인덱스별 단어를 각각 확인하는 과정; 상기 확인된 인덱스별 단어를 미리 설정된 재귀 함수에 적용하여 랜덤 시드를 생성하는 과정; 상기 생성된 랜덤 시드를 미리 설정된 해시 함수에 적용하여 개인키 및 상기 개인키에 대응하는 공개키를 생성하는 과정; 및 상기 생성된 개인키를 사용하여 상기 생성된 디지털 데이터를 암호화하는 과정을 포함할 수 있다.
본 발명과 관련된 일 예로서 상기 위변조 방지 장치에서 상기 블록체인 서버에 등록된 특정 블록에 대한 정보 등을 확인하고자 할 때, 상기 위변조 방지 장치에 의해, 상기 블록체인 서버에 등록된 복수의 블록 중에서 상기 특정 블록에 대한 전송을 요청하기 위한 블록 요청 신호를 생성하는 단계; 상기 위변조 방지 장치에 의해, 상기 생성된 블록 요청 신호 및 상기 위변조 방지 장치의 식별 정보를 상기 블록체인 서버에 전송하는 단계; 상기 블록체인 서버에 의해, 상기 블록체인 서버에 등록된 복수의 블록 중에서 상기 블록 요청 신호에 대응하는 정보를 추출하는 단계; 상기 블록체인 서버에 의해, 상기 추출된 정보를 상기 위변조 방지 장치에 전송하는 단계; 상기 위변조 방지 장치에 의해, 앞서 전송된 블록 요청 신호에 응답하여 상기 블록체인 서버로부터 전송되는 추출된 정보를 복호화하는 단계; 및 상기 위변조 방지 장치에 의해, 상기 복호화된 디지털 데이터를 출력하는 단계를 더 포함할 수 있다.
본 발명은 블록체인 상에 원본 데이터를 전송하기 전까지의 해당 원본 데이터에 대한 위변조 가능성을 차단하기 위해서 오프라인 데이터의 디지털화 시 디지털화된 데이터에 대해서 실시간으로 생성되는 개인키를 통해 암호화하고, 암호화된 디지털 데이터를 곧바로 블록체인 상으로 전송함으로써, 블록체인 상에 원본 데이터를 전송하기 전까지의 해당 원본 데이터에 대한 위변조 가능성을 차단하며, 오라클 문제를 해결하여 원본 데이터에 대한 신뢰성을 확보할 수 있는 효과가 있다.
또한, 본 발명은 관리하는 사람만 접근해야 하는 민감한 정보 등에 대해서, 블록체인 상에 데이터를 암호화하여 전송하고, 접근 권한이 있는 사용자가 별도의 키를 사용하여 해당 암호화된 데이터에 접근함으로써, 개인정보 보호 기능을 강화할 수 있는 효과가 있다.
도 1은 본 발명의 실시예에 따른 위변조 방지 장치가 적용된 시스템의 구성을 나타낸 블록도이다.
도 2는 본 발명의 실시예에 따른 위변조 방지 장치의 구성을 나타낸 블록도이다.
도 3은 본 발명의 실시예에 따른 원본 데이터의 위변조 방지 방법을 나타낸 흐름도이다.
도 4는 본 발명의 실시예에 따른 디지털화된 데이터를 암호화하기 위해 사용되는 랜덤 시드의 생성 방법을 나타낸 흐름도이다.
도 5는 본 발명의 실시예에 따른 인덱스별 단어를 나타내는 도이다.
본 발명에서 사용되는 기술적 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아님을 유의해야 한다. 또한, 본 발명에서 사용되는 기술적 용어는 본 발명에서 특별히 다른 의미로 정의되지 않는 한, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 의미로 해석되어야 하며, 과도하게 포괄적인 의미로 해석되거나, 과도하게 축소된 의미로 해석되지 않아야 한다. 또한, 본 발명에서 사용되는 기술적인 용어가 본 발명의 사상을 정확하게 표현하지 못하는 잘못된 기술적 용어일 때에는 당업자가 올바르게 이해할 수 있는 기술적 용어로 대체되어 이해되어야 할 것이다. 또한, 본 발명에서 사용되는 일반적인 용어는 사전에 정의되어 있는 바에 따라, 또는 전후 문맥상에 따라 해석되어야 하며, 과도하게 축소된 의미로 해석되지 않아야 한다.
또한, 본 발명에서 사용되는 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한 복수의 표현을 포함한다. 본 발명에서 "구성된다" 또는 "포함한다" 등의 용어는 발명에 기재된 여러 구성 요소들 또는 여러 단계를 반드시 모두 포함하는 것으로 해석되지 않아야 하며, 그 중 일부 구성 요소들 또는 일부 단계들은 포함되지 않을 수도 있고, 또는 추가적인 구성 요소 또는 단계들을 더 포함할 수 있는 것으로 해석되어야 한다.
또한, 본 발명에서 사용되는 제 1, 제 2 등과 같이 서수를 포함하는 용어는 구성 요소들을 설명하는데 사용될 수 있지만, 구성 요소들은 용어들에 의해 한정되어서는 안 된다. 용어들은 하나의 구성 요소를 다른 구성 요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제 1 구성 요소는 제 2 구성 요소로 명명될 수 있고, 유사하게 제 2 구성 요소도 제 1 구성 요소로 명명될 수 있다.
이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 실시예를 상세히 설명하되, 도면 부호에 관계없이 동일하거나 유사한 구성 요소는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다.
또한, 본 발명을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 첨부된 도면은 본 발명의 사상을 쉽게 이해할 수 있도록 하기 위한 것일 뿐, 첨부된 도면에 의해 본 발명의 사상이 제한되는 것으로 해석되어서는 아니 됨을 유의해야 한다.
도 1은 본 발명의 실시예에 따른 위변조 방지 장치가 적용된 시스템(10)의 구성을 나타낸 블록도이다.
도 1에 도시한 바와 같이, 위변조 방지 장치가 적용된 시스템(10)은 위변조 방지 장치(100) 및 블록체인 서버(200)로 구성된다. 도 1에 도시된 위변조 방지 장치가 적용된 시스템(10)의 구성 요소 모두가 필수 구성 요소인 것은 아니며, 도 1에 도시된 구성 요소보다 많은 구성 요소에 의해 위변조 방지 장치가 적용된 시스템(10)이 구현될 수도 있고, 그보다 적은 구성 요소에 의해서도 위변조 방지 장치가 적용된 시스템(10)이 구현될 수도 있다.
상기 위변조 방지 장치(100)는 스마트 폰(Smart Phone), 휴대 단말기(Portable Terminal), 이동 단말기(Mobile Terminal), 폴더블 단말기(Foldable Terminal), 개인 정보 단말기(Personal Digital Assistant: PDA), PMP(Portable Multimedia Player) 단말기, 텔레매틱스(Telematics) 단말기, 내비게이션(Navigation) 단말기, 개인용 컴퓨터(Personal Computer), 노트북 컴퓨터, 슬레이트 PC(Slate PC), 태블릿 PC(Tablet PC), 울트라북(ultrabook), 웨어러블 디바이스(Wearable Device, 예를 들어, 워치형 단말기(Smartwatch), 글래스형 단말기(Smart Glass), HMD(Head Mounted Display) 등 포함), 와이브로(Wibro) 단말기, IPTV(Internet Protocol Television) 단말기, 스마트 TV, 디지털방송용 단말기, AVN(Audio Video Navigation) 단말기, A/V(Audio/Video) 시스템, 플렉시블 단말기(Flexible Terminal), 디지털 사이니지 장치 등과 같은 다양한 단말기에 적용될 수 있다.
또한, 상기 위변조 방지 장치(100)는 웹 서버, 데이터베이스 서버, 프록시 서버 등의 형태로 구현될 수 있다. 또한, 상기 위변조 방지 장치(100)에는 네트워크 부하 분산 메커니즘, 내지 상기 위변조 방지 장치(100)가 인터넷 또는 다른 네트워크상에서 동작할 수 있도록 하는 다양한 소프트웨어 중 하나 이상이 설치될 수 있으며, 이를 통해 컴퓨터화된 시스템으로 구현될 수 있다. 또한, 네트워크는 http 네트워크일 수 있으며, 전용 회선(private line), 인트라넷 또는 임의의 다른 네트워크일 수 있다. 나아가, 상기 위변조 방지 장치(100)와 다른 단말의 연결은 데이터가 임의의 해커 또는 다른 제3자에 의한 공격을 받지 않도록 보안 네트워크로 연결될 수 있다. 또한, 상기 위변조 방지 장치(100)는 복수의 데이터베이스 서버를 포함할 수 있으며, 이러한 데이터베이스 서버가 분산 데이터베이스 서버 아키텍처를 비롯한 임의의 유형의 네트워크 연결을 통해 상기 위변조 방지 장치(100)와 별도로 연결되는 방식으로 구현될 수 있다.
이와 같이, 상기 위변조 방지 장치(100)는 일반적인 단말 형태로 구성되거나 또는, 학교, 관공서 등에서 특정 목적(예를 들어 학업 관리, 시험 관리, 인사 관리, 노무 관리 등 포함)에 따라 특정 기능을 수행하도록 구성된 서버 형태로 구성될 수 있다.
또한, 도 2에 도시한 바와 같이, 원본 데이터의 위변조 방지 장치(100)는 통신부(110), 저장부(120), 표시부(130), 음성 출력부(140) 및 제어부(150)로 구성된다. 도 2에 도시된 원본 데이터의 위변조 방지 장치(100)의 구성 요소 모두가 필수 구성 요소인 것은 아니며, 도 2에 도시된 구성 요소보다 많은 구성 요소에 의해 원본 데이터의 위변조 방지 장치(100)가 구현될 수도 있고, 그보다 적은 구성 요소에 의해서도 원본 데이터의 위변조 방지 장치(100)가 구현될 수도 있다.
상기 통신부(110)는 유/무선 통신망을 통해 내부의 임의의 구성 요소 또는 외부의 임의의 적어도 하나의 단말기와 통신 연결한다. 이때, 상기 외부의 임의의 단말기는 상기 블록체인 서버(200), 서버(미도시), 다른 단말(미도시) 등을 포함할 수 있다. 여기서, 무선 인터넷 기술로는 무선랜(Wireless LAN: WLAN), DLNA(Digital Living Network Alliance), 와이브로(Wireless Broadband: Wibro), 와이맥스(World Interoperability for Microwave Access: Wimax), HSDPA(High Speed Downlink Packet Access), HSUPA(High Speed Uplink Packet Access), IEEE 802.16, 롱 텀 에볼루션(Long Term Evolution: LTE), LTE-A(Long Term Evolution-Advanced), 광대역 무선 이동 통신 서비스(Wireless Mobile Broadband Service: WMBS) 등이 있으며, 상기 통신부(110)는 상기에서 나열되지 않은 인터넷 기술까지 포함한 범위에서 적어도 하나의 무선 인터넷 기술에 따라 데이터를 송수신하게 된다. 또한, 근거리 통신 기술로는 블루투스(Bluetooth), RFID(Radio Frequency Identification), 적외선 통신(Infrared Data Association: IrDA), UWB(Ultra Wideband), 지그비(ZigBee), 인접 자장 통신(Near Field Communication: NFC), 초음파 통신(Ultra Sound Communication: USC), 가시광 통신(Visible Light Communication: VLC), 와이 파이(Wi-Fi), 와이 파이 다이렉트(Wi-Fi Direct) 등이 포함될 수 있다. 또한, 유선 통신 기술로는 전력선 통신(Power Line Communication: PLC), USB 통신, 이더넷(Ethernet), 시리얼 통신(serial communication), 광/동축 케이블 등이 포함될 수 있다.
또한, 상기 통신부(110)는 유니버설 시리얼 버스(Universal Serial Bus: USB)를 통해 임의의 단말과 정보를 상호 전송할 수 있다.
또한, 상기 통신부(110)는 이동통신을 위한 기술표준들 또는 통신방식(예를 들어, GSM(Global System for Mobile communication), CDMA(Code Division Multi Access), CDMA2000(Code Division Multi Access 2000), EV-DO(Enhanced Voice-Data Optimized or Enhanced Voice-Data Only), WCDMA(Wideband CDMA), HSDPA(High Speed Downlink Packet Access), HSUPA(High Speed Uplink Packet Access), LTE(Long Term Evolution), LTE-A(Long Term Evolution-Advanced) 등)에 따라 구축된 이동 통신망 상에서 기지국, 상기 블록체인 서버(200), 상기 서버, 상기 다른 단말 등과 무선 신호를 송수신한다.
또한, 상기 통신부(110)는 상기 블록체인 서버(200)로부터 전송되는 다양한 정보 등을 수신한다.
상기 저장부(120)는 다양한 사용자 인터페이스(User Interface: UI), 그래픽 사용자 인터페이스(Graphic User Interface: GUI) 등을 저장한다.
또한, 상기 저장부(120)는 상기 위변조 방지 장치(100)가 동작하는데 필요한 데이터와 프로그램 등을 저장한다.
즉, 상기 저장부(120)는 상기 위변조 방지 장치(100)에서 구동되는 다수의 응용 프로그램(application program 또는 애플리케이션(application)), 위변조 방지 장치(100)의 동작을 위한 데이터들, 명령어들을 저장할 수 있다. 이러한 응용 프로그램 중 적어도 일부는 무선 통신을 통해 외부 서버로부터 다운로드 될 수 있다. 또한, 이러한 응용 프로그램 중 적어도 일부는 위변조 방지 장치(100)의 기본적인 기능을 위하여 출고 당시부터 위변조 방지 장치(100)상에 존재할 수 있다. 한편, 응용 프로그램은 상기 저장부(120)에 저장되고, 위변조 방지 장치(100)에 설치되어, 제어부(150)에 의하여 상기 위변조 방지 장치(100)의 동작(또는 기능)을 수행하도록 구동될 수 있다.
또한, 상기 저장부(120)는 플래시 메모리 타입(Flash Memory Type), 하드 디스크 타입(Hard Disk Type), 멀티미디어 카드 마이크로 타입(Multimedia Card Micro Type), 카드 타입의 메모리(예를 들면, SD 또는 XD 메모리 등), 자기 메모리, 자기 디스크, 광디스크, 램(Random Access Memory: RAM), SRAM(Static Random Access Memory), 롬(Read-Only Memory: ROM), EEPROM(Electrically Erasable Programmable Read-Only Memory), PROM(Programmable Read-Only Memory) 중 적어도 하나의 저장매체를 포함할 수 있다. 또한, 위변조 방지 장치(100)는 인터넷(internet)상에서 저장부(120)의 저장 기능을 수행하는 웹 스토리지(web storage)를 운영하거나, 또는 상기 웹 스토리지와 관련되어 동작할 수도 있다.
또한, 상기 저장부(120)는 상기 제어부(150)의 제어에 의해 상기 수신된 다양한 정보 등을 저장한다.
상기 표시부(또는 디스플레이부)(130)는 상기 제어부(150)의 제어에 의해 상기 저장부(120)에 저장된 사용자 인터페이스 및/또는 그래픽 사용자 인터페이스를 이용하여 다양한 메뉴 화면 등과 같은 다양한 콘텐츠를 표시할 수 있다. 여기서, 상기 표시부(130)에 표시되는 콘텐츠는 다양한 텍스트 또는 이미지 데이터(각종 정보 데이터 포함)와 아이콘, 리스트 메뉴, 콤보 박스 등의 데이터를 포함하는 메뉴 화면 등을 포함한다. 또한, 상기 표시부(130)는 터치 스크린 일 수 있다.
또한, 상기 표시부(130)는 액정 디스플레이(Liquid Crystal Display: LCD), 박막 트랜지스터 액정 디스플레이(Thin Film Transistor-Liquid Crystal Display: TFT LCD), 유기 발광 다이오드(Organic Light-Emitting Diode: OLED), 플렉시블 디스플레이(Flexible Display), 3차원 디스플레이(3D Display), 전자잉크 디스플레이(e-ink display), LED(Light Emitting Diode) 중에서 적어도 하나를 포함할 수 있다.
또한, 상기 표시부(130)는 상기 제어부(150)의 제어에 의해 상기 수신된 다양한 정보 등을 표시한다.
상기 음성 출력부(140)는 상기 제어부(150)에 의해 소정 신호 처리된 신호에 포함된 음성 정보를 출력한다. 여기서, 상기 음성 출력부(140)에는 리시버(receiver), 스피커(speaker), 버저(buzzer) 등이 포함될 수 있다.
또한, 상기 음성 출력부(140)는 상기 제어부(150)에 의해 생성된 안내 음성을 출력한다.
또한, 상기 음성 출력부(140)는 상기 제어부(150)에 의해 상기 수신된 다양한 정보 등에 대응하는 음성 정보(또는 음향 효과)를 출력한다.
상기 제어부(controller, 또는 MCU(microcontroller unit)(150)는 상기 레이더 시스템을 위한 위변조 방지 장치(100)의 전반적인 제어 기능을 실행한다.
또한, 상기 제어부(150)는 상기 저장부(120)에 저장된 프로그램 및 데이터를 이용하여 레이더 시스템을 위한 위변조 방지 장치(100)의 전반적인 제어 기능을 실행한다. 상기 제어부(150)는 RAM, ROM, CPU, GPU, 버스를 포함할 수 있으며, RAM, ROM, CPU, GPU 등은 버스를 통해 서로 연결될 수 있다. CPU는 상기 저장부(120)에 액세스하여, 상기 저장부(120)에 저장된 O/S를 이용하여 부팅을 수행할 수 있으며, 상기 저장부(120)에 저장된 각종 프로그램, 콘텐츠, 데이터 등을 이용하여 다양한 동작을 수행할 수 있다.
또한, 상기 제어부(150)는 상기 블록체인 서버(200)와의 연동에 의해, 상기 블록체인 서버(200)에 블록(또는 데이터/트랜잭션)을 등록(또는 저장)하기 위한 사용자로 회원 가입하며, 개인 정보 등을 상기 블록체인 서버(200)에 등록한다.
또한, 회원 가입 절차 수행 시, 상기 제어부(150)는 본인 인증 수단(예를 들어 이동 전화, 신용카드, 아이핀 등 포함)을 통한 인증 기능을 완료해야 상기 블록체인 서버(200)에 대한 회원 가입 절차를 정상적으로 완료할 수 있다.
또한, 상기 제어부(150)는 원본 데이터인 오프라인 데이터를 스캔하고, 스캔된 데이터(또는 디지털 데이터)를 암호화하고, 암호화된 디지털 데이터를 상기 블록체인 서버(200)에 전송하는 기능을 수행하는 전용 앱(또는 애플리케이션/특정 앱)을 해당 위변조 방지 장치(100)에 설치할 수 있다. 이때, 상기 전용 앱은 상기 블록체인 서버(200)로부터 제공될 수 있다.
또한, 상기 제어부(150)는 해당 위변조 방지 장치(100)에 미리 설치된 전용 앱(또는 애플리케이션)을 통해 원본 데이터인 오프라인 데이터를 미리 설정된 형식으로 스캔하여 디지털 데이터를 생성한다. 여기서, 상기 오프라인 데이터는 시험지, 보고서, 신문, 책, 광고지 등의 프린트물(또는 인쇄물), 그 값이 연속적으로 변하는 아날로그 데이터(또는 아날로그 신호) 등을 포함한다. 또한, 상기 미리 설정된 형식은 이미지 파일 형식(예를 들어 tif, jpg, bmp, ico, pcx, png 등 포함), 문서 파일(또는 워드 파일) 형식(예를 들어 hwp, doc, pdf 등 포함) 등을 포함한다.
또한, 상기 제어부(150)는 상기 전용 앱을 통한 제어에 의해, 상기 위변조 방지 장치(100)에 연결된 스캐너(미도시)를 통해 상기 오프라인 데이터를 미리 설정된 형식으로 스캔하고, 상기 스캐너를 통해 스캔된 디지털 데이터를 수신할(또는 입력받을) 수도 있다.
또한, 상기 제어부(150)는 상기 생성된 디지털 데이터를 상기 표시부(130) 및/또는 상기 음성 출력부(140)를 통해 출력한다.
또한, 상기 제어부(150)는 상기 생성된 디지털 데이터를 미리 설정된 암호화 방식을 통해 암호화하여, 암호화된 디지털 데이터를 생성한다.
즉, 상기 제어부(150)는 상기 전용 앱을 통해 랜덤 시드를 생성한다.
또한, 상기 제어부(150)는 상기 생성된 랜덤 시드를 미리 설정된 해시 함수에 적용하여 개인키 및 해당 개인키에 대응하는 공개키를 생성한다.
또한, 상기 제어부(150)는 상기 전용 앱을 통해 상기 생성된 개인키를 사용하여 상기 생성된 디지털 데이터를 암호화한다.
또한, 상기 제어부(150)는 상기 전용 앱을 통해 상기 암호화된 디지털 데이터, 상기 위변조 방지 장치(100)의 식별 정보 등을 상기 블록체인 서버(200)에 전송한다. 여기서, 상기 위변조 방지 장치(100)의 식별 정보는 MDN(Mobile Directory Number), 모바일 IP, 모바일 MAC, Sim(subscriber identity module: 가입자 식별 모듈) 카드 고유 정보, 시리얼번호 등을 포함한다.
또한, 상기 암호화된 디지털 데이터 등을 상기 블록체인 서버(200)에 전송하는 경우, 상기 제어부(150)는 상기 암호화된 디지털 데이터 이외에 상기 디지털 데이터를 암호화하는데 사용한 개인키에 대응하는 공개키, 해당 원본 데이터인 오프라인 데이터와 관련한 사용자 정보 등을 상기 암호화된 디지털 데이터와 함께 상기 블록체인 서버(200)에 전송할 수 있다. 여기서, 상기 사용자 정보는 해당 오프라인 데이터와 관련한 사용자를 식별(또는 확인)할 수 있는 정보로서, 이름, 고유 코드(예를 들어 학번, 주민등록번호 중 일부/전체, 사번 등 포함) 등을 포함한다.
이와 같이, 상기 위변조 방지 장치(100)는 해당 위변조 방지 장치(100)에 미리 설치된 전용 앱을 통해 상기 오프라인 데이터에 대한 스캔 과정에 의한 디지털 데이터 생성 과정, 암호화된 디지털 데이터 생성 과정, 생성된 암호화된 디지털 데이터의 등록 과정 등을 수행함으로써, 해당 오프라인 데이터를 디지털화하고, 암호화하여 상기 블록체인 서버(200)에 전송하기 전까지 제3자를 거치지 않고, 외부/내부에서 해당 오프라인 데이터를 위/변조하는 것을 방지(또는 차단)하며, 해당 원본 데이터인 오프라인 데이터에 대한 오라클 문제를 해결할 수 있다.
본 발명의 실시예에서는, 상기 위변조 방지 장치(100)에 설치된 앱을 통해, 본 발명에 따른 기술적 구성을 수행하는 것을 설명하고 있으나, 이에 한정되는 것은 아니며, 상기 위변조 방지 장치(100)는 상기 블록체인 서버(200)에서 제공하는 웹 사이트에 접속하여, 상기 스캔 기능, 암호화 기능, 전송 기능 등을 수행할 수도 있다.
이와 같이, 상기 전용 앱 또는 웹 사이트를 통해 구현되는 본 발명의 기술적 구성에 있어서, 상기 원본 데이터인 오프라인 데이터에 대한 스캔, 암호화, 전송 등에 따른 일련의 과정에서, 다른 입력 장치(예를 들어 키보드, 프린터 등 포함)나 해당 기능을 수행 중인 프로세서 이외의 다른 프로세서에서 현재 작업 중인 파일(예를 들어 원본 데이터인 오프라인 데이터를 스캔한 디지털 데이터, 상기 디지털 데이터를 암호화한 암호화된 데이터 등 포함)에 대한 접근(또는 액세스)을 방지(또는 차단)하여, 해당 오프라인 데이터가 스캔 및 암호화 과정을 거쳐 상기 블록체인 서버(200)에 등록되기 전까지 외부 요소에 의한 위/변조를 원천적으로 차단하도록 구성할 수 있다.
또한, 상기 제어부(150)는 다음의 과정을 통해 상기 랜덤 시드를 생성할 수 있다.
즉, 상기 제어부(150)는 미리 설정된 제 1 비트수(예를 들어 128비트 ~ 256비트 길이)의 랜덤 코드(또는 랜덤 넘버)(N)를 생성한다.
이때, 상기 제어부(150)는 128비트, 160비트, 192비트, 224비트 및 256비트 중 어느 하나의 비트수에 대응하는 랜덤 코드를 생성할 수 있다.
본 발명의 실시예에서는, 상기 랜덤 코드를 128비트 ~ 256비트로 생성하는 것을 설명하고 있으나, 이에 한정되는 것은 아니며, 설계자의 설계에 따라 해당 비트 범위(128비트 ~ 256비트)보다 작거나 또는 큰 값으로 해당 랜덤 코드를 생성할 수도 있다.
또한, 상기 제어부(150)는 상기 생성된 랜덤 코드(N)를 미리 설정된 해시 함수(예를 들어 SHA256)에 적용하여 암호화된 데이터(또는 암호화된 코드)를 생성한다.
또한, 상기 제어부(150)는 상기 생성된 암호화된 데이터(또는 암호화된 코드) 중에서 미리 설정된 구간(예를 들어 처음 4비트 ~ 8비트)에 대응하는 비트 구간을 추출한다.
이때, 상기 제어부(150)는 128비트의 랜덤 넘버를 생성한 경우 앞 부분의 4비트를 추출하고, 160비트의 랜덤 넘버를 생성한 경우 앞 부분의 5비트를 추출하고, 192비트의 랜덤 넘버를 생성한 경우 앞 부분의 6비트를 추출하고, 224비트의 랜덤 넘버를 생성한 경우 앞 부분의 7비트를 추출하고, 256비트의 랜덤 넘버를 생성한 경우 앞부분의 8비트를 추출한다.
또한, 상기 제어부(150)는 상기 추출된 비트 구간을 상기 생성된 랜덤 코드(N)의 마지막 부분에 추가하여, 특정 코드(예를 들어 132비트 ~ 264비트 길이의 특정 코드)를 생성한다.
또한, 상기 제어부(150)는 상기 생성된 특정 코드를 미리 설정된 비트 단위(예를 들어 11비트)로 분할하여, 복수의 서브 코드(또는 복수의 로우 바이너리 코드(raw binary code))를 생성한다. 이때, 상기 미리 설정된 비트 단위는 상기 생성된 특정 코드를 임의의 자연수에 해당하는 개수만큼 분할할 수 있는 값일 수 있다.
또한, 상기 제어부(150)는 상기 생성된 복수의 서브 코드에 대응하는 인덱스를 확인(또는 산출)한다.
즉, 상기 제어부(150)는 2진수 형태(또는 바이너리 코드 형태)의 상기 복수의 서브 코드에 대응하는 10진수 값의 인덱스를 확인한다.
또한, 상기 제어부(150)는 미리 설정된 BIP 표준 단어 리스트 중에서 상기 확인된(또는 산출된) 인덱스에 대응하는 단어(또는 인덱스별 단어)를 각각 확인한다.
즉, 상기 제어부(150)는 미리 설정된 연상 기호(mnemonic)에 따른 상기 복수의 서브 코드에 대응하는 인덱스별 단어를 각각 확인한다.
또한, 상기 제어부(150)는 상기 확인된 인덱스별 단어를 미리 설정된 재귀 함수에 적용하여 랜덤 시드를 생성한다. 여기서, 상기 재귀 함수는 키 스트레칭 함수(key stretching function) 등을 포함한다.
또한, 상기 제어부(150)는 상기 생성된 랜덤 시드를 실시간으로 생성되는 디지털 데이터를 암호화하는데 사용한다.
또한, 상기 위변조 방지 장치(100)에서 상기 블록체인 서버(200)에 등록된 특정 블록에 대한 정보 등을 확인하고자 하는 경우, 상기 제어부(150)는 상기 블록체인 서버(200)에 등록된 복수의 블록 중에서 특정 블록에 대한 전송을 요청하기 위한 블록 요청 신호(또는 정보 요청 신호)를 생성한다. 여기서, 상기 블록 요청 신호는 해당 위변조 방지 장치(100)에서 확인하고자 하는 특정 블록에 대한 정보 등을 포함한다.
또한, 상기 제어부(150)는 상기 생성된 블록 요청 신호, 상기 위변조 방지 장치(100)의 식별 정보 등을 상기 통신부(110)를 통해 상기 블록체인 서버(200)에 전송한다.
또한, 상기 제어부(150)는 앞서 전송된 블록 요청 신호에 응답하여 상기 블록체인 서버(200)로부터 전송되는 추출된 정보(또는 상기 암호화된 디지털 데이터에 해당하는 정보)를 상기 통신부(110)를 통해 수신한다.
또한, 상기 제어부(150)는 미리 설정된 복호화 방식을 통해 상기 수신된 추출된 정보(또는 상기 암호화된 디지털 데이터에 해당하는 정보)를 복호화한다.
즉, 상기 제어부(150)는 상기 생성된 개인키를 사용하여 상기 수신된 추출된 정보(또는 상기 암호화된 디지털 데이터에 해당하는 정보)를 복호화한다.
또한, 상기 제어부(150)는 상기 복호화된 디지털 데이터를 상기 표시부(130) 및/또는 상기 음성 출력부(140)를 통해 출력한다.
상기 블록체인 서버(200)는 상기 위변조 방지 장치(100) 등과 통신한다.
또한, 상기 블록체인 서버(200)는 블록체인 네트워크를 관리하는 플랫폼을 제공하는 장치(또는 단말/시스템)일 수 있다.
또한, 상기 블록체인 서버(200)는 상기 위변조 방지 장치(100)와의 연동에 의해, 상기 위변조 방지 장치(100)의 사용자에 대한 회원 가입 절차 등을 수행한다.
또한, 상기 블록체인 서버(200)는 상기 위변조 방지 장치(100)의 사용자와 관련한 개인 정보 등을 등록한다.
또한, 상기 블록체인 서버(200)는 상기 위변조 방지 장치(100)의 사용자에 대한 회원 관리 기능을 수행한다.
또한, 상기 블록체인 서버(200)는 상기 위변조 방지 장치(100)로부터 전송되는 상기 암호화된 디지털 데이터, 위변조 방지 장치(100)의 식별 정보 등을 수신한다.
또한, 상기 블록체인 서버(200)는 상기 수신된 암호화된 디지털 데이터, 위변조 방지 장치(100)의 식별 정보 등을 해당 블록체인 서버(200) 내의 블록체인에 등록(또는 저장)한다. 이때, 상기 블록체인 서버(20)는 미리 설정된 암호화 방식에 따른 공개키 또는 개인키를 이용하여 추가로 암호화 기능을 수행할 수 있다. 여기서, 상기 암호화 방식은 대칭형 암호화 방식, 비대칭형 암호화 방식 등의 공지된 다양한 방식을 사용할 수 있다.
또한, 상기 블록체인 서버(200)는 상기 위변조 방지 장치(100)로부터 전송되는 상기 암호화된 디지털 데이터, 상기 디지털 데이터를 암호화하는데 사용한 개인키에 대응하는 공개키, 해당 원본 데이터인 오프라인 데이터와 관련한 사용자 정보, 상기 위변조 방지 장치(100)의 식별 정보 등을 수신한다.
또한, 상기 블록체인 서버(200)는 상기 수신된 암호화된 디지털 데이터, 상기 공개키, 상기 사용자 정보 등을 매칭하여 저장한다. 이때, 상기 블록체인 서버(200)는 상기 암호화된 디지털 데이터, 상기 공개키, 상기 사용자 정보 등이 매칭된 정보를 블록체인에 등록(또는 저장)할 수 있다.
이와 같이, 상기 암호화된 디지털 데이터, 상기 공개키, 상기 사용자 정보 등이 매칭된 정보는 상기 암호화된 디지털 데이터와 관련된 사용자를 확인하기 위한 용도로 사용될 수 있다.
즉, 다른 단말(미도시)에 의해 상기 암호화된 디지털 데이터와 관련된 사용자 정보 확인 요청이 있는 경우, 상기 블록체인 서버(200)는 상기 매칭된 정보에서 상기 공개키 및 상기 사용자 정보를 통해 해당 암호화된 디지털 데이터와 관련한 사용자를 확인하고, 상기 확인된 사용자에 대한 정보를 상기 다른 단말에 제공할 수 있다.
또한, 상기 블록체인 서버(200)는 상기 위변조 방지 장치(100)로부터 전송되는 상기 블록 요청 신호, 상기 위변조 방지 장치(100)의 식별 정보 등을 수신한다.
또한, 상기 블록체인 서버(200)는 해당 블록체인 서버(200)에 저장된(또는 등록된) 복수의 블록(또는 복수의 블록체인) 중에서 해당 블록 요청 신호에 대응하는 정보(또는 블록)를 추출(또는 확인)한다. 여기서, 상기 추출된 정보(또는 추출된 블록/추출 정보/암호화된 정보/추출된 암호화된 정보)는 해당 위변조 방지 장치(100)와 관련한 정보 등을 포함한다.
또한, 상기 블록체인 서버(200)는 상기 추출된 정보(또는 상기 암호화된 디지털 데이터에 해당하는 정보)를 상기 위변조 방지 장치(100)에 전송한다. 여기서, 상기 추출된 정보가 해당 블록체인 서버(200)에 의해 추가로 암호화된 상태인 경우, 상기 블록체인 서버(200)는 상기 추출된 암호화된 정보를 미리 설정된 다른 복호화 방식에 따라 복호화하고, 상기 복호화된 정보(또는 상기 암호화된 디지털 데이터에 해당하는 정보)를 상기 위변조 방지 장치(100)에 전송할 수 있다.
이때, 상기 블록체인 서버(200)는 상기 위변조 방지 장치(100)와의 연동에 의해, 해당 위변조 방지 장치(100)(또는 해당 위변조 방지 장치(100)를 사용하는/관리하는 사용자)에 대한 인증 절차를 수행하여, 해당 인증 절차가 정상적으로 완료되어 해당 위변조 방지 장치(100)가 해당 특정 블록에 대한 접근 권한을 가진 경우에 한해, 상기 추출된 정보를 상기 위변조 방지 장치(100)에 전송할 수 있다.
이와 같이, 상기 블록체인 서버(200)는 상기 블록 요청 신호를 근거로 추출된 정보를 그대로 상기 위변조 방지 장치(100)에 제공할 수도 있고 또는, 해당 추출된 정보에 대한 접근 권한을 가진 해당 위변조 방지 장치(100)에만 상기 추출된 정보를 제공할 수도 있다.
이와 같이, 블록체인 상에 원본 데이터를 전송하기 전까지의 해당 원본 데이터에 대한 위변조 가능성을 차단하기 위해서 오프라인 데이터의 디지털화 시 디지털화된 데이터에 대해서 실시간으로 생성되는 개인키를 통해 암호화하고, 암호화된 디지털 데이터를 곧바로 블록체인 상으로 전송할 수 있다.
또한, 이와 같이, 관리하는 사람만 접근해야 하는 민감한 정보 등에 대해서, 블록체인 상에 데이터를 암호화하여 전송하고, 접근 권한이 있는 사용자가 별도의 키를 사용하여 해당 암호화된 데이터에 접근할 수 있다.
이하에서는, 본 발명에 따른 원본 데이터의 위변조 방지 방법을 도 1 내지 도 5를 참조하여 상세히 설명한다.
도 3은 본 발명의 실시예에 따른 원본 데이터의 위변조 방지 방법을 나타낸 흐름도이다.
먼저, 위변조 방지 장치(100)는 해당 위변조 방지 장치(100)에 미리 설치된 전용 앱(또는 애플리케이션)을 통해 원본 데이터인 오프라인 데이터를 미리 설정된 형식으로 스캔하여 디지털 데이터를 생성한다. 여기서, 상기 오프라인 데이터는 시험지, 보고서, 신문, 책, 광고지 등의 프린트물(또는 인쇄물), 그 값이 연속적으로 변하는 아날로그 데이터 등을 포함한다. 또한, 상기 미리 설정된 형식은 이미지 파일 형식(예를 들어 tif, jpg, bmp, ico, pcx, png 등 포함), 문서 파일(또는 워드 파일) 형식(예를 들어 hwp, doc, pdf 등 포함) 등을 포함한다.
일 예로, 상기 위변조 방지 장치(100)는 홍길동이 작성한 제 1 시험지에 대해서 상기 위변조 방지 장치(100)에 미리 설치된 위변조 방지 앱을 통해 상기 제 1 시험지에 대한 스캔 과정을 수행하여, 상기 제 1 시험지에 대응하는 제 1 디지털 데이터를 생성한다(S310).
이후, 상기 위변조 방지 장치(100)는 상기 생성된 디지털 데이터를 미리 설정된 암호화 방식을 통해 암호화하여, 암호화된 디지털 데이터를 생성한다.
즉, 상기 위변조 방지 장치(100)는 상기 전용 앱을 통해 랜덤 시드를 생성하고, 상기 생성된 랜덤 시드를 미리 설정된 해시 함수에 적용하여 개인키 및 해당 개인키에 대응하는 공개키를 생성한다.
또한, 상기 위변조 방지 장치(100)는 상기 전용 앱을 통해 상기 생성된 개인키를 사용하여 상기 생성된 디지털 데이터를 암호화한다.
또한, 상기 위변조 방지 장치(100)는 상기 전용 앱을 통해 상기 암호화된 디지털 데이터, 상기 위변조 방지 장치(100)의 식별 정보 등을 블록체인 서버(200)에 전송한다. 여기서, 상기 위변조 방지 장치(100)의 식별 정보는 MDN, 모바일 IP, 모바일 MAC, Sim(가입자 식별 모듈) 카드 고유 정보, 시리얼번호 등을 포함한다.
일 예로, 상기 위변조 방지 장치(100)는 상기 제 1 디지털 데이터가 생성되는 시점에 제 1 랜덤 시드를 생성하고, 상기 생성된 제 1 랜덤 시드를 미리 설정된 해시 함수(예를 들어 SHA256(Secure Hash Algorithm256))에 적용하여 제 1 개인키 및 해당 제 1 개인키에 대응하는 제 1 공개키를 생성한다.
또한, 상기 위변조 방지 장치(100)는 상기 생성된 제 1 개인키를 근거로 상기 생성된 제 1 디지털 데이터를 암호화하여, 암호화된 제 1 디지털 데이터를 생성한다.
또한, 상기 위변조 방지 장치(100)는 상기 생성된 암호화된 제 1 디지털 데이터, 상기 위변조 방지 장치(100)의 식별 정보 등을 상기 블록체인 서버(200)에 전송한다(S320).
이후, 상기 블록체인 서버(200)는 상기 위변조 방지 장치(100)로부터 전송되는 상기 암호화된 디지털 데이터, 위변조 방지 장치(100)의 식별 정보 등을 수신한다.
또한, 상기 블록체인 서버(200)는 상기 수신된 암호화된 디지털 데이터, 위변조 방지 장치(100)의 식별 정보 등을 해당 블록체인 서버(200) 내의 블록체인에 등록(또는 저장)한다. 이때, 상기 블록체인 서버(20)는 미리 설정된 암호화 방식에 따른 공개키 또는 개인키를 이용하여 추가로 암호화 기능을 수행할 수 있다. 여기서, 상기 암호화 방식은 대칭형 암호화 방식, 비대칭형 암호화 방식 등의 공지된 다양한 방식을 사용할 수 있다.
일 예로, 상기 블록체인 서버(200)는 상기 위변조 방지 장치(100)로부터 전송되는 상기 암호화된 제 1 디지털 데이터, 상기 위변조 방지 장치(100)의 식별 정보 등을 수신한다.
또한, 상기 블록체인 서버(200)는 상기 수신된 암호화된 제 1 디지털 데이터, 상기 위변조 방지 장치(100)의 식별 정보 등을 상기 블록체인 서버(200) 내의 블록체인에 분산하여 저장한다.
다른 일 예로, 상기 블록체인 서버(200)는 상기 위변조 방지 장치(100)로부터 전송되는 상기 암호화된 제 1 디지털 데이터, 상기 위변조 방지 장치(100)의 식별 정보 등을 수신한다.
또한, 상기 블록체인 서버(200)는 상기 수신된 암호화된 제 1 디지털 데이터 등을 AES(Advanced Encryption Standard) 방식을 통해 암호화하여 제 1 암호화 정보를 생성한다.
또한, 상기 블록체인 서버(200)는 상기 암호화된(또는 생성된) 제 1 암호화 정보, 상기 위변조 방지 장치(100)의 식별 정보 등을 상기 블록체인 서버(200) 내의 블록체인에 분산하여 저장한다(S330).
이후, 상기 위변조 방지 장치(100)에서 상기 블록체인 서버(200)에 등록된 특정 블록에 대한 정보 등을 확인하고자 하는 경우, 상기 위변조 방지 장치(100)는 상기 블록체인 서버(200)에 등록된 복수의 블록 중에서 특정 블록에 대한 전송을 요청하기 위한 블록 요청 신호(또는 정보 요청 신호)를 생성한다. 여기서, 상기 블록 요청 신호는 해당 위변조 방지 장치(100)에서 확인하고자 하는 특정 블록에 대한 정보 등을 포함한다.
또한, 상기 위변조 방지 장치(100)는 상기 생성된 블록 요청 신호, 상기 위변조 방지 장치(100)의 식별 정보 등을 상기 블록체인 서버(200)에 전송한다.
일 예로, 상기 위변조 방지 장치(100)에서 상기 블록체인 서버(200)에 등록된 복수의 블록 정보 중에서 상기 암호화된 제 1 디지털 데이터와 관련한 제 11 블록에 대한 정보 등을 요청하고자 할 때, 상기 위변조 방지 장치(100)는 상기 위변조 방지 장치(100)의 사용자 요청에 따른 제 11 블록 요청 신호를 생성하고, 상기 생성된 제 11 블록 요청 신호, 상기 위변조 방지 장치(100)의 식별 정보 등을 상기 블록체인 서버(200)에 전송한다(S340).
이후, 상기 블록체인 서버(200)는 상기 위변조 방지 장치(100)로부터 전송되는 상기 블록 요청 신호, 상기 위변조 방지 장치(100)의 식별 정보 등을 수신한다.
또한, 상기 블록체인 서버(200)는 해당 블록체인 서버(200)에 저장된(또는 등록된) 복수의 블록(또는 복수의 블록체인) 중에서 해당 블록 요청 신호에 대응하는 정보(또는 블록)를 추출(또는 확인)한다. 여기서, 상기 추출된 정보(또는 추출된 블록/추출 정보/암호화된 정보/추출된 암호화된 정보)는 해당 위변조 방지 장치(100)와 관련한 정보 등을 포함한다.
또한, 상기 블록체인 서버(200)는 상기 추출된 정보(또는 상기 암호화된 디지털 데이터에 해당하는 정보)를 상기 위변조 방지 장치(100)에 전송한다. 여기서, 상기 추출된 정보가 해당 블록체인 서버(200)에 의해 추가로 암호화된 상태인 경우, 상기 블록체인 서버(200)는 상기 추출된 암호화된 정보를 미리 설정된 다른 복호화 방식에 따라 복호화하고, 상기 복호화된 정보(또는 상기 암호화된 디지털 데이터에 해당하는 정보)를 상기 위변조 방지 장치(100)에 전송할 수 있다.
이때, 상기 블록체인 서버(200)는 상기 위변조 방지 장치(100)와의 연동에 의해, 해당 위변조 방지 장치(100)(또는 해당 위변조 방지 장치(100)를 사용하는/관리하는 사용자)에 대한 인증 절차를 수행하여, 해당 인증 절차가 정상적으로 완료되어 해당 위변조 방지 장치(100)가 해당 특정 블록에 대한 접근 권한을 가진 경우에 한해, 상기 추출된 정보를 상기 위변조 방지 장치(100)에 전송할 수 있다.
이와 같이, 상기 블록체인 서버(200)는 상기 블록 요청 신호를 근거로 추출된 정보를 그대로 상기 위변조 방지 장치(100)에 제공할 수도 있고 또는, 해당 추출된 정보에 대한 접근 권한을 가진 해당 위변조 방지 장치(100)에만 상기 추출된 정보를 제공할 수도 있다.
일 예로, 상기 블록체인 서버(200)는 상기 위변조 방지 장치(100)로부터 전송되는 상기 제 11 블록 요청 신호, 상기 위변조 방지 장치(100)의 식별 정보 등을 수신한다.
또한, 상기 블록체인 서버(200)는 해당 블록체인 서버(200)를 구성하는 복수의 블록체인 중에서 상기 수신된 제 11 블록 요청 신호에 대응하는 제 11 블록(또는 상기 암호화된 제 1 디지털 데이터가 저장된 블록에 대응)을 추출한다.
또한, 상기 블록체인 서버(200)는 상기 추출된 제 11 블록에 대한 정보(또는 상기 제 11 블록과 관련한 암호화된 제 1 디지털 데이터)를 상기 위변조 방지 장치(100)에 전송한다(S350).
이후, 상기 위변조 방지 장치(100)는 앞서 전송된 블록 요청 신호에 응답하여 상기 블록체인 서버(200)로부터 전송되는 추출된 정보(또는 상기 암호화된 디지털 데이터에 해당하는 정보)를 수신한다.
또한, 상기 위변조 방지 장치(100)는 미리 설정된 복호화 방식을 통해 상기 수신된 추출된 정보(또는 상기 암호화된 디지털 데이터에 해당하는 정보)를 복호화하여, 복호화된 디지털 데이터를 출력한다.
즉, 상기 위변조 방지 장치(100)는 상기 생성된 개인키를 사용하여 상기 수신된 추출된 정보(또는 상기 암호화된 디지털 데이터에 해당하는 정보)를 복호화하고, 상기 복호화된 디지털 데이터를 출력한다.
일 예로, 상기 위변조 방지 장치(100)는 앞서 전송된 제 11 블록 요청 신호, 상기 위변조 방지 장치(100)의 식별 정보 등에 응답하여 상기 블록체인 서버(200)로부터 전송되는 제 11 블록에 대응하는 상기 암호화된 제 1 디지털 데이터를 수신한다.
또한, 상기 위변조 방지 장치(100)는 미리 설정된 복호화 방식을 통해 상기 수신된 암호화된 제 1 디지털 데이터를 복호화하고, 상기 복호화된 제 1 디지털 데이터를 출력한다(S360).
도 4는 본 발명의 실시예에 따른 디지털화된 데이터를 암호화하기 위해 사용되는 랜덤 시드의 생성 방법을 나타낸 흐름도이다.
먼저, 위변조 방지 장치(100)는 미리 설정된 제 1 비트수(예를 들어 128비트 ~ 256비트 길이)의 랜덤 코드(또는 랜덤 넘버)(N)를 생성한다.
즉, 상기 위변조 방지 장치(100)는 128비트, 160비트, 192비트, 224비트 및 256비트 중 어느 하나의 비트수에 대응하는 랜덤 코드를 생성할 수 있다.
일 예로, 상기 위변조 방지 장치(100)는 미리 설정된 128비트의 제 1 랜덤 코드(예를 들어 001101110110100111110110~1001)을 생성한다(S410).
이후, 상기 위변조 방지 장치(100)는 상기 생성된 랜덤 코드(N)를 미리 설정된 해시 함수(예를 들어 SHA256)에 적용하여 암호화된 데이터(또는 암호화된 코드)를 생성한다.
일 예로, 상기 위변조 방지 장치(100)는 상기 SHA256 함수에 상기 제 1 랜덤 코드를 적용하여 복수의 비트로 구성되는 제 1 암호화된 데이터를 생성한다(S420).
이후, 상기 위변조 방지 장치(100)는 상기 생성된 암호화된 데이터(또는 암호화된 코드) 중에서 미리 설정된 구간(예를 들어 처음 4비트 ~ 8비트)에 대응하는 비트 구간을 추출한다.
이때, 상기 위변조 방지 장치(100)는 128비트의 랜덤 넘버를 생성한 경우 앞 부분의 4비트를 추출하고, 160비트의 랜덤 넘버를 생성한 경우 앞 부분의 5비트를 추출하고, 192비트의 랜덤 넘버를 생성한 경우 앞 부분의 6비트를 추출하고, 224비트의 랜덤 넘버를 생성한 경우 앞 부분의 7비트를 추출하고, 256비트의 랜덤 넘버를 생성한 경우 앞부분의 8비트를 추출한다.
일 예로, 상기 위변조 방지 장치(100)는 상기 생성된 복수의 비트로 구성되는 제 1 암호화된 데이터 중에서 0번째 비트 ~ 3번째 비트까지의 제 1 비트 구간(예를 들어 1110)을 추출한다(S430).
이후, 상기 위변조 방지 장치(100)는 상기 추출된 비트 구간을 상기 생성된 랜덤 코드(N)의 마지막 부분에 추가하여, 특정 코드(예를 들어 132비트 ~ 264비트 길이의 특정 코드)를 생성한다.
일 예로, 상기 위변조 방지 장치(100)는 상기 생성된 128비트의 제 1 랜덤 코드(예를 들어 001101110110100111110110~1001)에 상기 추출된 4비트의 제 1 비트 구간(예를 들어 1110)을 추가하여, 132비트의 특정 코드(예를 들어 001101110110100111110110~10011110)를 생성한다(S440).
이후, 상기 위변조 방지 장치(100)는 상기 생성된 특정 코드를 미리 설정된 비트 단위(예를 들어 11비트)로 분할하여, 복수의 서브 코드(또는 복수의 로우 바이너리 코드(raw binary code))를 생성한다. 이때, 상기 미리 설정된 비트 단위는 상기 생성된 특정 코드를 임의의 자연수에 해당하는 개수만큼 분할할 수 있는 값일 수 있다.
일 예로, 상기 위변조 방지 장치(100)는 상기 생성된 132비트의 특정 코드를 미리 설정된 11비트 단위로 분할하여 12개의 서브 코드(예를 들어 제 1 서브 코드에 해당하는 '00110111011', 제 2 서브 코드에 해당하는 '01001111101', 제 3 서브 코드에 해당하는 '10000111011', ... , 제 12 서브 코드에 해당하는 '11010011110' 등 포함)를 생성한다(S450).
이후, 상기 위변조 방지 장치(100)는 상기 생성된 복수의 서브 코드에 대응하는 인덱스를 확인(또는 산출)한다.
즉, 상기 위변조 방지 장치(100)는 2진수 형태(또는 바이너리 코드 형태)의 상기 복수의 서브 코드에 대응하는 10진수 값의 인덱스를 확인한다.
일 예로, 상기 위변조 방지 장치(100)는 상기 생성된 제 1 서브 코드 내지 제 12 서브 코드 각각에 대응하는 10진수 값의 제 1 인덱스 내지 제 12 인덱스(예를 들어 443, 637, 1083, ... , 1694)를 각각 확인한다(S460).
이후, 상기 위변조 방지 장치(100)는 미리 설정된 BIP 표준 단어 리스트 중에서 상기 확인된(또는 산출된) 인덱스에 대응하는 단어(또는 인덱스별 단어)를 각각 확인한다.
즉, 상기 위변조 방지 장치(100)는 미리 설정된 연상 기호(mnemonic)에 따른 상기 복수의 서브 코드에 대응하는 인덱스별 단어를 각각 확인한다.
일 예로, 도 5에 도시된 바와 같이, 상기 위변조 방지 장치(100)는 상기 미리 설정된 2048개의 단어로 구성된 BIP 표준 단어 리스트(예를 들어 BIP39 단어 리스트)(510) 중에서 상기 확인된 제 1 인덱스 내지 제 12 인덱스에 각각 대응하는 제 1 단어 내지 제 12 단어(예를 들어 danger, exile, manual, pulse, ethics, vicious, elite, thumb, hedgehog, best, lyrics, stable)(520)를 각각 확인한다(S470).
이후, 상기 위변조 방지 장치(100)는 상기 확인된 인덱스별 단어를 미리 설정된 재귀 함수에 적용하여 랜덤 시드를 생성한다. 여기서, 상기 재귀 함수는 키 스트레칭 함수(key stretching function) 등을 포함한다.
또한, 상기 위변조 방지 장치(100)는 상기 생성된 랜덤 시드를 실시간으로 생성되는 디지털 데이터를 암호화하는데 사용한다.
일 예로, 상기 위변조 방지 장치(100)는 상기 확인된 인덱스별 단어인 제 1 단어 내지 제 12 단어(예를 들어 danger, exile, manual, pulse, ethics, vicious, elite, thumb, hedgehog, best, lyrics, stable)를 미리 설정된 키 스트레칭 함수의 입력값으로 사용하여, 출력값인 제 1 랜덤 시드를 생성하고, 상기 생성된 제 1 랜덤 시드를 미리 설정된 해시 함수(예를 들어 SHA256)에 적용하여 제 1 개인키 및 해당 제 1 개인키에 대응하는 제 1 공개키를 생성한다.
또한, 상기 위변조 방지 장치(100)는 상기 생성된 제 1 개인키를 이용해서 오프라인 데이터를 근거로 생성된 제 1 디지털 데이터를 암호화하여, 암호화된 제 1 디지털 데이터를 생성한다(S480).
본 발명의 실시예는 앞서 설명된 바와 같이, 블록체인 상에 원본 데이터를 전송하기 전까지의 해당 원본 데이터에 대한 위변조 가능성을 차단하기 위해서 오프라인 데이터의 디지털화 시 디지털화된 데이터에 대해서 실시간으로 생성되는 개인키를 통해 암호화하고, 암호화된 디지털 데이터를 곧바로 블록체인 상으로 전송하여, 블록체인 상에 원본 데이터를 전송하기 전까지의 해당 원본 데이터에 대한 위변조 가능성을 차단하며, 오라클 문제를 해결하여 원본 데이터에 대한 신뢰성을 확보할 수 있다.
또한, 본 발명의 실시예는 앞서 설명된 바와 같이, 관리하는 사람만 접근해야 하는 민감한 정보 등에 대해서, 블록체인 상에 데이터를 암호화하여 전송하고, 접근 권한이 있는 사용자가 별도의 키를 사용하여 해당 암호화된 데이터에 접근하여, 개인정보 보호 기능을 강화할 수 있다.
전술된 내용은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 수정 및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.
10: 위변조 방지 장치가 적용된 시스템 100: 위변조 방지 장치
200: 블록체인 서버 110: 통신부
120: 저장부 130: 표시부
140: 음성 출력부 150: 제어부

Claims (6)

  1. 전용 앱을 통해 원본 데이터인 오프라인 데이터를 미리 설정된 형식으로 스캔하여 디지털 데이터를 생성하고, 상기 생성된 디지털 데이터를 미리 설정된 암호화 방식을 통해 암호화하여, 암호화된 디지털 데이터를 생성하는 제어부; 및
    상기 암호화된 디지털 데이터 및 위변조 방지 장치의 식별 정보를 블록체인 서버에 전송하는 통신부를 포함하며,
    상기 블록체인 서버는,
    상기 암호화된 디지털 데이터 및 위변조 방지 장치의 식별 정보를 상기 블록체인 서버 내의 블록체인에 저장하며,
    상기 제어부는,
    상기 전용 앱을 통해 랜덤 시드를 생성하고, 상기 생성된 랜덤 시드를 미리 설정된 해시 함수에 적용하여 개인키 및 상기 개인키에 대응하는 공개키를 생성하고, 상기 전용 앱을 통해 상기 생성된 개인키를 사용하여 상기 생성된 디지털 데이터를 암호화하는 것을 특징으로 하는 원본 데이터의 위변조 방지 장치.
  2. 제 1 항에 있어서,
    상기 미리 설정된 형식은,
    이미지 파일 형식 또는 워드 파일 형식인 것을 특징으로 하는 원본 데이터의 위변조 방지 장치.
  3. 삭제
  4. 위변조 방지 장치에 의해, 전용 앱을 통해 원본 데이터인 오프라인 데이터를 미리 설정된 형식으로 스캔하여 디지털 데이터를 생성하는 단계;
    상기 위변조 방지 장치에 의해, 상기 생성된 디지털 데이터를 미리 설정된 암호화 방식을 통해 암호화하여, 암호화된 디지털 데이터를 생성하는 단계;
    상기 위변조 방지 장치에 의해, 상기 암호화된 디지털 데이터 및 상기 위변조 방지 장치의 식별 정보를 블록체인 서버에 전송하는 단계; 및
    상기 블록체인 서버에 의해, 상기 수신된 암호화된 디지털 데이터 및 상기 위변조 방지 장치의 식별 정보를 상기 블록체인 서버 내의 블록체인에 저장하는 단계를 포함하며,
    상기 암호화된 디지털 데이터를 생성하는 단계는,
    상기 위변조 방지 장치에 의해, 미리 설정된 제 1 비트수의 랜덤 코드를 생성하는 과정;
    상기 생성된 랜덤 코드를 미리 설정된 해시 함수에 적용하여 암호화된 데이터를 생성하는 과정;
    상기 생성된 암호화된 데이터 중에서 미리 설정된 구간에 대응하는 비트 구간을 추출하는 과정;
    상기 추출된 비트 구간을 상기 생성된 랜덤 코드의 마지막 부분에 추가하여, 특정 코드를 생성하는 과정;
    상기 생성된 특정 코드를 미리 설정된 비트 단위로 분할하여, 복수의 서브 코드를 생성하는 과정;
    상기 생성된 복수의 서브 코드에 대응하는 인덱스를 확인하는 과정;
    미리 설정된 BIP 표준 단어 리스트 중에서 상기 확인된 인덱스에 대응하는 인덱스별 단어를 각각 확인하는 과정;
    상기 확인된 인덱스별 단어를 미리 설정된 재귀 함수에 적용하여 랜덤 시드를 생성하는 과정;
    상기 생성된 랜덤 시드를 미리 설정된 해시 함수에 적용하여 개인키 및 상기 개인키에 대응하는 공개키를 생성하는 과정; 및
    상기 생성된 개인키를 사용하여 상기 생성된 디지털 데이터를 암호화하는 과정을 포함하는 것을 특징으로 하는 원본 데이터의 위변조 방지 방법.
  5. 삭제
  6. 제 4 항에 있어서,
    상기 위변조 방지 장치에서 상기 블록체인 서버에 등록된 특정 블록에 대한 정보 등을 확인하고자 할 때, 상기 위변조 방지 장치에 의해, 상기 블록체인 서버에 등록된 복수의 블록 중에서 상기 특정 블록에 대한 전송을 요청하기 위한 블록 요청 신호를 생성하는 단계;
    상기 위변조 방지 장치에 의해, 상기 생성된 블록 요청 신호 및 상기 위변조 방지 장치의 식별 정보를 상기 블록체인 서버에 전송하는 단계;
    상기 블록체인 서버에 의해, 상기 블록체인 서버에 등록된 복수의 블록 중에서 상기 블록 요청 신호에 대응하는 정보를 추출하는 단계;
    상기 블록체인 서버에 의해, 상기 추출된 정보를 상기 위변조 방지 장치에 전송하는 단계;
    상기 위변조 방지 장치에 의해, 앞서 전송된 블록 요청 신호에 응답하여 상기 블록체인 서버로부터 전송되는 추출된 정보를 복호화하는 단계; 및
    상기 위변조 방지 장치에 의해, 상기 복호화된 디지털 데이터를 출력하는 단계를 더 포함하는 것을 특징으로 하는 원본 데이터의 위변조 방지 방법.
KR1020180166714A 2018-12-20 2018-12-20 원본 데이터의 위변조 방지 장치 및 그 방법 KR102023101B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180166714A KR102023101B1 (ko) 2018-12-20 2018-12-20 원본 데이터의 위변조 방지 장치 및 그 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180166714A KR102023101B1 (ko) 2018-12-20 2018-12-20 원본 데이터의 위변조 방지 장치 및 그 방법

Publications (1)

Publication Number Publication Date
KR102023101B1 true KR102023101B1 (ko) 2019-11-04

Family

ID=68577996

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180166714A KR102023101B1 (ko) 2018-12-20 2018-12-20 원본 데이터의 위변조 방지 장치 및 그 방법

Country Status (1)

Country Link
KR (1) KR102023101B1 (ko)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102208399B1 (ko) * 2020-07-07 2021-01-27 박재용 개인 ip 보호 시스템 및 그 방법
KR20210063055A (ko) 2019-11-22 2021-06-01 서강대학교산학협력단 신뢰 실행 환경을 이용한 분산 블록체인 오라클 시스템 및 상기 시스템에서의 외부 데이터 전달 방법
KR20210071394A (ko) 2019-12-06 2021-06-16 서강대학교산학협력단 블록체인을 기반으로 한 센서 네트워크 시스템 및 상기 센서 네트워크 시스템에서의 동적 링크키 생성 방법
CN113076528A (zh) * 2021-03-24 2021-07-06 珠海奔图电子有限公司 防伪信息嵌入方法、提取方法、装置及存储介质
KR20220005930A (ko) 2020-07-07 2022-01-14 삼성에스디에스 주식회사 데이터 위변조 방지 방법 및 장치, 데이터 위변조 검출 방법 및 장치
KR20220021576A (ko) 2020-08-14 2022-02-22 서강대학교산학협력단 신뢰 실행 환경을 기반으로 한 탈중앙형 오라클 시스템 및 상기 시스템에서의 외부 데이터 전달 방법
CN117150545A (zh) * 2023-08-11 2023-12-01 湖北大学 基于优化的分布式计算的数据评估方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080032732A (ko) * 2006-10-10 2008-04-16 주식회사 스타뱅크 스캐닝 원본문서의 위·변조 방지를 위한 보안 관리 시스템및 진본 유지를 위한 보안 관리 방법
KR101628005B1 (ko) * 2015-02-05 2016-06-13 주식회사 코인플러그 블록체인을 기반으로 하는 디지털 콘텐츠의 저작권리 위변조 감지시스템
KR20180115282A (ko) 2016-02-23 2018-10-22 엔체인 홀딩스 리미티드 블록체인을 이용하는 피어 - 투 - 피어 분산 장부에서 개체들의 효율적인 전송을 위한 방법 및 시스템

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080032732A (ko) * 2006-10-10 2008-04-16 주식회사 스타뱅크 스캐닝 원본문서의 위·변조 방지를 위한 보안 관리 시스템및 진본 유지를 위한 보안 관리 방법
KR101628005B1 (ko) * 2015-02-05 2016-06-13 주식회사 코인플러그 블록체인을 기반으로 하는 디지털 콘텐츠의 저작권리 위변조 감지시스템
KR20180115282A (ko) 2016-02-23 2018-10-22 엔체인 홀딩스 리미티드 블록체인을 이용하는 피어 - 투 - 피어 분산 장부에서 개체들의 효율적인 전송을 위한 방법 및 시스템

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210063055A (ko) 2019-11-22 2021-06-01 서강대학교산학협력단 신뢰 실행 환경을 이용한 분산 블록체인 오라클 시스템 및 상기 시스템에서의 외부 데이터 전달 방법
KR20210071394A (ko) 2019-12-06 2021-06-16 서강대학교산학협력단 블록체인을 기반으로 한 센서 네트워크 시스템 및 상기 센서 네트워크 시스템에서의 동적 링크키 생성 방법
KR102208399B1 (ko) * 2020-07-07 2021-01-27 박재용 개인 ip 보호 시스템 및 그 방법
KR20220005930A (ko) 2020-07-07 2022-01-14 삼성에스디에스 주식회사 데이터 위변조 방지 방법 및 장치, 데이터 위변조 검출 방법 및 장치
US11244415B2 (en) 2020-07-07 2022-02-08 EZ-Trust Co., Ltd. Personal IP protection system and method
US11470388B2 (en) 2020-07-07 2022-10-11 Samsung Sds Co., Ltd. Method and apparatus for preventing forgery of data, method and apparatus for detecting forgery of data
KR20220021576A (ko) 2020-08-14 2022-02-22 서강대학교산학협력단 신뢰 실행 환경을 기반으로 한 탈중앙형 오라클 시스템 및 상기 시스템에서의 외부 데이터 전달 방법
CN113076528A (zh) * 2021-03-24 2021-07-06 珠海奔图电子有限公司 防伪信息嵌入方法、提取方法、装置及存储介质
CN117150545A (zh) * 2023-08-11 2023-12-01 湖北大学 基于优化的分布式计算的数据评估方法

Similar Documents

Publication Publication Date Title
KR102023101B1 (ko) 원본 데이터의 위변조 방지 장치 및 그 방법
US11128466B2 (en) Zero-knowledge environment based social networking engine
EP3210157B1 (en) Encrypted collaboration system and method
US10289812B2 (en) Apparatus, system, and method of preventing forgery or falsification of electronic document based on content
US9785787B2 (en) Encrypting images on a client device for secure transmission and storage on a storage device
KR102222612B1 (ko) 스마트 계약 화이트리스트
US9542864B2 (en) Methods and apparatus for digital steganography
US20130179684A1 (en) Encrypted database system, client terminal, encrypted database server, natural joining method, and program
KR102000244B1 (ko) 형태보존 암호화가 적용된 영지식증명 기반의 블록체인 시스템 및 그의 제어 방법
US20150310206A1 (en) Password management
US20180068127A1 (en) Non-transitory computer-readable storage medium, and information processing device
TWI649661B (zh) 合成文件存取技術
CN107729345B (zh) 网站数据处理方法、装置、网站数据处理平台及存储介质
WO2021158778A1 (en) Systems and methods for encoding executable code in barcodes
CN112769565A (zh) 密码加密算法的升级方法、装置、计算设备和介质
Milczarski et al. Applications of secure data exchange method using social media to distribute public keys
David et al. Analysis of Algorithms for Effective Cryptography for Enhancement of IoT Security
Carter Efficient techniques for secure multiparty computation on mobile devices
Damsika et al. A novel mechanism for secure e-tendering in an open electronic network
AJALA Design and Implementation of an Improved Electronic Document Management System (Encodoc)
Mali et al. Digital Signature Authentication and Verification on Smart Phones using CRιPT Algorithm
KR20130070786A (ko) 금칙어 검사 기능을 채용한 사용자 단말기 및 금칙어 검사 방법
Liao et al. Design and Implementation of an eBook Access Control Protocol
NZ731490B2 (en) Encrypted collaboration system and method
Velev Security aspects of cloud-based mobile learning

Legal Events

Date Code Title Description
GRNT Written decision to grant