KR102467441B1 - 텐더민트 bft를 이용한 비정형 데이터의 암호화 방법, 장치 및 컴퓨터-판독가능 기록매체 - Google Patents

텐더민트 bft를 이용한 비정형 데이터의 암호화 방법, 장치 및 컴퓨터-판독가능 기록매체 Download PDF

Info

Publication number
KR102467441B1
KR102467441B1 KR1020210145663A KR20210145663A KR102467441B1 KR 102467441 B1 KR102467441 B1 KR 102467441B1 KR 1020210145663 A KR1020210145663 A KR 1020210145663A KR 20210145663 A KR20210145663 A KR 20210145663A KR 102467441 B1 KR102467441 B1 KR 102467441B1
Authority
KR
South Korea
Prior art keywords
accessor
unstructured data
access
data
blockchain
Prior art date
Application number
KR1020210145663A
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 KR1020210145663A priority Critical patent/KR102467441B1/ko
Application granted granted Critical
Publication of KR102467441B1 publication Critical patent/KR102467441B1/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/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
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • 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
    • 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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • 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 Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Power Engineering (AREA)
  • Storage Device Security (AREA)

Abstract

네트워크 상의 접근성을 감시하는 텐더민트(Tendermint) BFT(Byzantine Fault-Tolerant algorithms)를 이용한 합의 방식을 이용하여 비정형 데이터에 대한 암호화를 이용한 비인가 사용자의 데이터 공격을 방어하되, 암호화에 소요되는 데이터의 양을 감소시켜 데이터 베이스 관리 효율 및 속도를 향상시킬 수 있는 기술을 제공한다. 본 발명의 일 실시예에 따른 텐더민트 BFT를 이용한 비정형 데이터의 암호화 방법은, 하나 이상의 프로세서 및 프로세서에서 수행 가능한 명령들을 저장하는 하나 이상의 메모리를 포함하는 컴퓨팅 장치로 구현되며, 블록체인형 데이터 베이스에 포함된 비정형 데이터에 대한 생성, 변경 또는 엑세스를 포함하는 접근을 감지 시, 접근 대상이 되는 비정형 데이터가 속한 텐더민트 BFT(Byzantine Fault-Tolerant algorithms) 블록체인을 활성화하는 제1 단계; 감지된 접근의 유효성을 검증하여 접근자가 접근 대상이 되는 비정형 데이터에 대한 유효한 접근자인지 여부를 블록체인 시스템에 포함된 복수의 노드들 중 텐더민트 BFT 검증자 및 위임자의 합의 결과를 기반으로 판단하는 제2 단계; 상기 제2 단계의 판단 결과, 접근자가 인가된 접근자인 경우, 암호화 기술을 비활성화하여 접근자에게 비정형 데이터에 대한 접근을 허용하는 제3 단계; 및 상기 제2 단계의 판단 결과, 접근자가 비인가 접근자인 경우, 접근 대상이 되는 비정형 데이터에 대한 암호화 기술을 활성화하여, 접근자에게 비정형 데이터에 대한 추출이 불가능하도록 하는 제4 단계;를 포함하는 것을 특징으로 한다.

Description

텐더민트 BFT를 이용한 비정형 데이터의 암호화 방법, 장치 및 컴퓨터-판독가능 기록매체{PROVIDING METHOD, APPARATUS AND COMPUTER-READABLE MEDIUM OF ENCRYPTIING UNSTRUCTURED DATA USING TENDERMINT BFT ALGORITHM}
본 발명은 네트워크 상의 접근성을 감시하는 텐더민트(Tendermint) BFT(Byzantine Fault-Tolerant algorithms)를 이용한 합의 방식을 이용하여 비정형 데이터에 대한 암호화를 이용한 비인가 사용자의 데이터 공격을 방어하되, 암호화에 소요되는 데이터의 양을 감소시켜 데이터 베이스 관리 효율 및 속도를 향상시킬 수 있는 기술에 관한 것이다.
수치적으로 정형화되어 관리되는 정형 데이터와, 문서, 그림, 음성 등 일반적으로 데이터베이스에 저장되어, 빅데이터(Big-Data)의 활용 등에 사용되는 비정형 데이터는, 암호화의 방식이 완전히 다르다. 즉 정형 데이터는 데이터의 구조가 정해져 있기 때문에 해당 구조를 이용한 암호화 방식이 적합하고 적용 가능하나, 비정형 데이터는 데이터의 구조 및 크기 등이 정해져 있지 않아, 정형 데이터를 이용한 암호화 방식과는 다른 방식이 적용되어야 한다.
이에 따라서 API 방식의 암호화 방식 또는 OS 단에서의 암호화 방식 등이 사용되고 있으며, 이를 위해서는 네트워크 상 또는 데이터베이스 상에서 데이터를 암호화하여야 하고, 이를 위해서 소요되는 데이터의 양이 매우 많다.
한편, 블록체인 상의 알고리즘 중, 텐더민트 BFT(Tendermint Byzantine Fault-Tolerant algorithms)은 악의적인 사용자에 대한 네트워크 상에서의 접근을 제어하는 기술이다. 텐더민트 상에서는 사용자에 대한 접근 시도 시, 블록체인을 이루는 각 노드 간의 합의를 통하여 이에 대한 접근을 제어하게 된다.
Tendermint의 검증자는 비트코인 채굴자와 비슷한 역할을 하지만 대신 암호화 서명을 이용해 투표를 한다. 검증자는 블록을 커밋하는 작업을 담당하는 안전한 전용 시스템이다. 비 유효성 검사자는 블록 수수료와 원자 보상의 일부를 얻기 위해 자신의 스테이킹 토큰("원자")을 검증자에게 위임할 수 있지만, 인증자가 해킹을 당하거나 프로토콜을 위반할 경우 처벌을 받을 위험이 있다. Tendermint BFT 합의의 입증된 안전 보장과 이해관계자(유효성 검증자 및 위임자)의 부가 보증금은 노드 및 경량 고객에게 입증 가능하고 수량화할 수 있는 보안을 제공하게 된다.
기존에는, 이러한 텐더민트 BFT가 네트워크 상에서의 악의적인 사용자의 접근을 제어하는 데 사용되었음은 상술한 바와 같으며, 이와 관련된 기술로는 한국등록특허 제10-2250810호에 게시되어 있다. 그러나 이러한 텐더민트 BFT는, 빅데이터 등에 포함된 비정형 데이터에 대한 암호화에 사용되어 오지 않았으며, 매우 효율적이고 간편한 접근 제어 방식을 이용하여 비정형 데이터를 관리 시, 암호화에 소요되는 데이터를 줄여 효율적이고 속도가 향상된 암호화를 통한 데이터베이스 관리가 가능한 바, 이에 대한 필요성이 지적되어 왔다.
이에 본 발명은 빅데이터 등에 사용되기 위해서 관리되는 데이터베이스 상의 대용량 및 다수의 비정형 데이터에 대한 암호화 기술을 제공하되, 텐더민트 BFT를 이용하여 비정형 데이터의 암호화에 사용되는 데이터 및 프로그램 트래픽의 양을 최소화하는 동시에 접근자에 대한 접근 인가에 대해서 매우 정밀하고 해킹 불가능하게 판단할 수 있는 기술을 제공하여, 암호화의 보안성을 크게 향상시키는 동시에 암호화에 소요되는 데이터를 줄여 보안성, 효율성 및 속도를 동시에 향상시킬 수 있는 기술을 제공하는 데 일 목적이 있다.
상기 목적을 달성하기 위해서, 본 발명의 일 실시예에 따른 텐더민트 BFT를 이용한 비정형 데이터의 암호화 방법은, 하나 이상의 프로세서 및 상기 프로세서에서 수행 가능한 명령들을 저장하는 하나 이상의 메모리를 포함하는 컴퓨팅 장치로 구현되며, 블록체인형 데이터 베이스에 포함된 비정형 데이터에 대한 생성, 변경 또는 엑세스를 포함하는 접근을 감지 시, 접근 대상이 되는 비정형 데이터가 속한 텐더민트 BFT(Byzantine Fault-Tolerant algorithms) 블록체인을 활성화하는 제1 단계; 감지된 접근의 유효성을 검증하여 접근자가 접근 대상이 되는 비정형 데이터에 대한 유효한 접근자인지 여부를 블록체인 시스템에 포함된 복수의 노드들 중 텐더민트 BFT 검증자 및 위임자의 합의 결과를 기반으로 판단하는 제2 단계; 상기 제2 단계의 판단 결과, 접근자가 인가된 접근자인 경우, 암호화 기술을 비활성화하여 접근자에게 비정형 데이터에 대한 접근을 허용하는 제3 단계; 및 상기 제2 단계의 판단 결과, 접근자가 비인가 접근자인 경우, 접근 대상이 되는 비정형 데이터에 대한 암호화 기술을 활성화하여, 접근자에게 비정형 데이터에 대한 추출이 불가능하도록 하는 제4 단계;를 포함하는 것을 특징으로 한다.
상기 제3 단계 및 제4 단계의 수행 후, 접근자의 접근을 위한 접근 기록을 포함하는 접근자에 대해서 비정형 데이터에 대한 접근에 관한 로그 데이터를 ABCI(Applcation Black-Chain Interface)를 이용하여 수집하는 제5 단계; 및 상기 제5 단계에 의하여 수집된 로그 데이터를 암호화한 암호 로그 데이터를 블록체인형 데이터베이스에 저장하고, 블록체인형 데이터베이스에 저장된 암호 로그 데이터에 대한 해시 데이터와 블록 정보를 검색 서버에 저장하는 제6 단계;를 더 포함하는 것이 바람직하다.
상기 제2 단계는, 상기 접근자의 권한 정보에 관련된 트랜잭션(Transactoin)에 대해서 권한 정보의 유효성 여부에 대한 판단 결과가, 상기 블록체인형 데이터베이스를 구성하는 복수의 블록체인 서버들 중 과반수가 동일한 결과를 추출하는 경우, 상기 접근자가 인가된 접근자인 것으로 판단하는 것이 가능하다.
상기 제2 단계는, 각 블록체인 서버들이, 기 저장된 접근자 식별 정보와 권한 정보의 매칭 관계를 이용하여, 감지된 접근의 접근자의 식별 정보를 이용하여 접근자의 권한 정보를 추출하고, 추출된 권한 정보의 유효성을 기설정된 판단 기준에 따라서 판단하는 것이 가능하다.
상기 제4 단계는, 상기 접근 대상이 되는 비정형 데이터에 대한 암호화 시, 제2 단계의 판단 시점에서 데이터를 후킹하여 파일 단위로 암호화하여, 블록체인형 데이터베이스에 대한 분산 저장 방식과 함께 비정형 데이터에 대한 보안성을 향상시키는 것이 가능하다.
상기 제4 단계는, 상기 비정형 데이터에 대한 블록 정보를 포함한 접근 주소를 랜덤하게 변환하여 상기 접근자에게 제공함으로써, 상기 비정형 데이터에 대해서 블록체인 서버에 저장된 데이터에 대한 해시 데이터 및 블록 정보와의 불일치성을 통해서 상기 접근 대상이 되는 비정형 데이터에 대한 접근을 차단하는 것이 가능하다.
상기 제4 단계는, 상기 접근 대상이 되는 비정형 데이터에 대한 해시 데이터 및 블록 정보를 상기 제2 단계의 판단 시점에서 기설정된 정형 데이터 암호화 알고리즘을 통해 암호화하는 것이 가능하다.
상기 제2 단계는, 상기 제2 단계의 수행 시점에서, 상기 접근 대상이 되는 비정형 데이터에 대한 해시 데이터 및 블록 정보를 기설정된 정형 데이터 암호화 알고리즘을 통해 암호화한 뒤, 상기 제3 단계의 수행 시, 상기 암호화된 해시 데이터 및 블록 정보에 대한 복호화를 진행하여, 상기 접근 대상이 되는 비정형 데이터에 대한 접근이 가능하도록 하는 것이 가능하다.
한편, 본 발명의 일 실시예에 따른 텐더민트 BFT를 이용한 비정형 데이터의 암호화 장치는, 하나 이상의 프로세서 및 상기 프로세서에서 수행 가능한 명령들을 저장하는 하나 이상의 메모리를 포함하는 컴퓨팅 장치로 구현되며, 블록체인형 데이터 베이스에 포함된 비정형 데이터에 대한 생성, 변경 또는 엑세스를 포함하는 접근을 감지 시, 접근 대상이 되는 비정형 데이터가 속한 텐더민트 BFT(Byzantine Fault-Tolerant algorithms) 블록체인을 활성화하는 제1 모듈; 감지된 접근의 유효성을 검증하여 접근자가 접근 대상이 되는 비정형 데이터에 대한 유효한 접근자인지 여부를 블록체인 시스템에 포함된 복수의 노드들 중 텐더민트 BFT 검증자 및 위임자의 합의 결과를 기반으로 판단하는 제2 모듈; 상기 제2 모듈의 판단 결과, 접근자가 인가된 접근자인 경우, 암호화 기술을 비활성화하여 접근자에게 비정형 데이터에 대한 접근을 허용하는 제3 모듈; 및 상기 제2 모듈의 판단 결과, 접근자가 비인가 접근자인 경우, 접근 대상이 되는 비정형 데이터에 대한 암호화 기술을 활성화하여, 접근자에게 비정형 데이터에 대한 추출이 불가능하도록 하는 제4 모듈;를 포함하는 것을 특징으로 한다.
본 발명에 의하면, 데이터베이스에 저장된 빅 데이터에 포함된 비정형 데이터에 대한 접근자의 접근을 감지 시, 접근 여부를 텐더민트 BFT로 판단하기 위한 해당 비정형 데이터가 속한 블록체인이 활성화된다. 이후, 접근자에 대한 인가 여부를 텐더민트 BFT를 이용하여 판단한 뒤, 접근이 비인가된 접근자의 접근에 대해서는 비정형 데이터를 암호화하는 동시에 접근을 차단하도록 한다.
이를 통해서, 단순히 데이터의 암호화하는데 비하여, 접근 대상이 되는 비정형 데이터만을 파일 후킹 방식으로 암호화하여 암호화에 소요되는 데이터의 양을 최소화할 수 있는 동시에, 데이터에 대한 접근 차단 및 암호화 방식을 동시에 사용함으로써 보안성이 크게 향상되는 효과가 있다.
이에 따라서 암호화의 보안성, 효율성 및 속도가 크게 향상됨으로써, 다수의 비정형 데이터에 대한 보안 관리가 매우 효율적으로 가능해지는 장점이 있다.
도 1 내지 2는 본 발명의 일 실시예에 따른 텐더민트 BFT를 이용한 비정형 데이터의 암호화 방법의 플로우차트.
도 3은 본 발명의 일 실시예에 따른 텐더민트 BFT를 이용한 비정형 데이터의 암호화 장치의 구성 블록도.
도 4는 본 발명의 제2 및 제3 단계의 실시에 따라서 비정형 데이터의 암호화 여부가 결정되는 방식을 설명하기 위한 예.
도 5 및 6은 본 발명의 일 실시예에 따라서 제4 단계가 실시되는 예를 설명하기 위한 도면.
도 7은 본 발명의 일 실시 예에 따른 컴퓨팅 장치의 내부 구성의 일 예.
이하에서는, 다양한 실시 예들 및/또는 양상들이 이제 도면들을 참조하여 개시된다. 하기 설명에서는 설명을 목적으로, 하나이상의 양상들의 전반적 이해를 돕기 위해 다수의 구체적인 세부사항들이 개시된다. 그러나, 이러한 양상(들)은 이러한 구체적인 세부사항들 없이도 실행될 수 있다는 점 또한 본 발명의 기술 분야에서 통상의 지식을 가진 자에게 인식될 수 있을 것이다. 이후의 기재 및 첨부된 도면들은 하나 이상의 양상들의 특정한 예시적인 양상들을 상세하게 기술한다. 하지만, 이러한 양상들은 예시적인 것이고 다양한 양상들의 원리들에서의 다양한 방법들 중 일부가 이용될 수 있으며, 기술되는 설명들은 그러한 양상들 및 그들의 균등물들을 모두 포함하고자 하는 의도이다.
본 명세서에서 사용되는 "실시 예", "예", "양상", "예시" 등은 기술되는 임의의 양상 또는 설계가 다른 양상 또는 설계들보다 양호하다거나, 이점이 있는 것으로 해석되지 않을 수도 있다.
또한, "포함한다" 및/또는 "포함하는"이라는 용어는, 해당 특징 및/또는 구성요소가 존재함을 의미하지만, 하나이상의 다른 특징, 구성요소 및/또는 이들의 그룹의 존재 또는 추가를 배제하지 않는 것으로 이해되어야 한다.
또한, 제 1, 제 2 등과 같이 서수를 포함하는 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되지는 않는다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제 1 구성요소는 제 2 구성요소로 명명될 수 있고, 유사하게 제 2 구성요소도 제 1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.
또한, 본 발명의 실시 예들에서, 별도로 다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 발명의 실시 예에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
도 1 내지 2는 본 발명의 일 실시예에 따른 텐더민트 BFT를 이용한 비정형 데이터의 암호화 방법의 플로우차트, 도 3은 본 발명의 일 실시예에 따른 텐더민트 BFT를 이용한 비정형 데이터의 암호화 장치의 구성 블록도, 도 4는 본 발명의 제2 및 제3 단계의 실시에 따라서 비정형 데이터의 암호화 여부가 결정되는 방식을 설명하기 위한 예, 도 5 및 6은 본 발명의 일 실시예에 따라서 제4 단계가 실시되는 예를 설명하기 위한 도면이다. 이하의 설명에 있어서 본 발명의 다양한 실시예 및 구성에 대한 설명을 위해서 하나 이상의 도면이 함께 참조될 것이다.
상술한 도면들을 함께 참조하면, 본 발명의 일 실시예에 따른 텐더민트 BFT를 이용한 비정형 데이터의 암호화 방법은, 후술하는 본 발명의 일 실시예에 따른 텐더민트 BFT를 이용한 비정형 데이터의 암호화 장치(이하 본 발명의 장치라 함)의 각 구성에 의하여 수행되는 것을 특징으로 한다. 또한 본 발명의 장치는, 후술하는 도 7에 도시된 바와 같은 컴퓨팅 장치에 포함되거나, 그 자체 또는 다수의 컴퓨팅 장치의 그룹으로 이해될 수 있다. 따라서, 본 발명의 각 실시예는, 예를 들어 도 7에 도시된 바와 같은 하나 이상의 프로세서 및 프로세서에서 수행 가능한 명령들을 저장하는 하나 이상의 메모리를 포함하는 컴퓨팅 장치에 의하여 수행되는 것으로 이해될 수 있다.
이를 바탕으로 설명하면, 컴퓨팅 장치는 먼저, 블록체인형 데이터 베이스에 포함된 비정형 데이터에 대한 생성, 변경 또는 엑세스를 포함하는 접근을 감지 시, 접근 대상이 되는 비정형 데이터가 속한 텐더민트 BFT(Byzantine Fault-Tolerant algorithms) 블록체인을 활성화하는 제1 단계(S10)를 수행한다.
본 발명에서 비정형 데이터는, 비정형 데이터(unstructured data, unstructured information, 비정형 정보), 비구조화 데이터, 비구조적 데이터는 미리 정의된 데이터 모델이 없거나 미리 정의된 방식으로 정리되지 않은 정보를 말한다. 비정형 정보는 일반적으로 텍스트 중심으로 되어 있으나 날짜, 숫자, 사실과 같은 데이터도 포함할 수 있다. 이로써 변칙과 모호함이 발생하므로 데이터베이스의 칸 형식의 폼에 저장되거나 문서에 주석화된(의미적으로 태그된) 데이터에 비해 전통적인 프로그램을 사용하여 이해하는 것을 불가능하게 만드는 특징이 있다.
이러한 비정형 데이터는 빅데이터 솔루션 등에서 분석 대상이 되며, 이에 따라서 데이터베이스 내에 매우 다수가 저장 및 관리되고 있으며, 비정형 데이터로부터 키워드, 문서, 수치 등을 추출하여 빅데이터를 활용한 다양한 솔루션에 사용되고 있다. 이러한 비정형 데이터는 정형 데이터와 다른 암호화 기법을 필요로 한다.
이에 따라서 비정형 데이터의 암호화 기법으로서 가장 각광받고 있는 방식은 운영체제(OS) 커널 방식의 암호화다. 암호화 솔루션은 크게 3가지 방식으로 구성된다. API 방식과 에이전트 방식, OS 커널 방식 등이다. 에이전트 방식은 서버 내에 암호화를 수행하는 별도의 에이전트를 설치하는 방식이다. 애플리케이션 내 소스코드를 수정하지 않아도 암호화할 수 있다는 장점이 있지만, 서버 내에 설치됨으로써 시스템 성능을 감소시킨다는 단점이 있다.
API 방식은 애플리케이션에서 암호화를 진행한다. 다른 두 가지 방식에 비해 구축기간이 길지만 맞춤형 개발이 가능하다는 장점이 있다. 하지만 시스템의 소스코드를 수정해야 하는 만큼, 특정한 형식이 정해지지 않은 비정형데이터를 보호하기 위해선 데이터의 형식별로 소스코드를 수정해야 한다는 단점도 있다.
반면 커널 방식의 암호화는 OS 커널 레벨에서 암호화를 수행하기 때문에, 데이터의 종류에 상관없이 암호화가 가능하며, 애플리케이션의 소스코드를 변경할 필요도 없다. 다만 시스템에 영향을 줘 성능 이슈가 있을 수도 있다. 또 지원하지 않는 OS에서는 사용이 불가능하다는 단점도 있지만, 현재 주로 사용되는 리눅스, 윈도우NT, 유닉스는 대부분 지원함으로써 보완해 나가고 있다.
본 발명에서 후술하는 비정형 데이터의 암호화에 있어서 데이터 자체를 암호화하는 실시예에서는 상술한 다양한 암호화 방식 및 공지의 암호화 기법이 사용될 수 있다.
본 발명에서 비정형 데이터는 상술한 바와 같이 블록체인형 데이터베이스에 포함되어 관리되는 것을 특징으로 한다. 이때, 블록체인형 데이터베이스에 속하여 관리됨은, 데이터 자체가 블록체인 방식으로 저장되어 보안성 및 위조 가능성이 차단되도록 하거나, 비정형 데이터에 대한 해시 데이터 및 그 접근 주소가 블록체인에 의하여 관리되고, 데이터 자체는 별도의 데이터베이스에 의하여 관리되는 방식을 모두 포함하는 개념으로 이해될 수 있다.
후자의 경우에는, 데이터에 대한 접근을 위해서 블록체인 방식으로 관리되는 해시 데이터 및 접근 주소에 접근자가 접근 후, 인가 시 획득된 해시 데이터 및 접근 주소를 이용하여 데이터베이스에 엑세스(Access)하여 데이터를 획득할 수 있는 방식으로 데이터에 대한 접근이 이루어질 수 있다.
S10 단계에 있어서 블록체인 서버는 블록체인 BFT를 관리하는 별도의 서버 또는 블록체인에 포함된 노드(Node) 중 어느 하나의 단말을 의미하여, S10 단계에서는 접근 대상이 되는 데이터가 존재함을, 즉 접근자가 데이터에 대한 접근을 시도함을 감지하고, 감지 여부에 따라서 비정형 데이터가 속한 텐더민트 BFT 블록체인을 활성화하는 기능을 수행한다.
텐더민트 비잔틴 장애 허용(Tendermint BTF) 또는 약칭 텐더민트는 코스모스코인(Cosmos)의 블록체인 합의 알고리즘이다. 코스모스 블록체인의 특징, 성능, 한계는 전적으로 텐더민트 합의 엔진의 특성, 성능, 한계를 따라간다. 텐더민트 합의 엔진의 경우 블록이 생성될 때마다 전송이 완전히 완료(One block finality)된다. 텐더민트 합의 엔진은 합의 후 블록이 만들어지므로 포크(Fork)가 발생하지 않는다. 텐더민트 합의 엔진 기반의 블록체인 사용자들은 블록 데이터 싱크가 필요 없는 라이트 클라이언트(Lite-client)를 경험할 수 있다.
텐더민트 스택의 설계는 애플리케이션 레이어(코스모스-SDK), 합의(consensus) 레이어, 네트워킹(Tendermint Core)로 구성된다. 텐더민트는 새로운 방식으로 P2P 가십(gossip) 프로토콜을 합의와 연결한다. 텐더민트 코어(Tendermint core)는 텐더민트라고 불리며 텐더민트 코어 및 코스모스 네트워크 소프트웨어 스택을 구현하는 조직과 동의어이다. 텐더민트 코어는 합의 알고리즘과 P2P 네트워킹 프로토콜 두 개의 프로토콜로 구성된 low-level 프로토콜이다. 텐더민트는 자체 블록체인 위에 애플리케이션을 구현하려는 개발자에게 도움을 준다. 미리 조립된 상태로 제공돼 개발자는 디앱존(DappZone)의 성능을 높일 수 있다. 텐더민트의 합의 및 네트워킹 레이어와 인터페이스 하기 위해 ABCI(Application Blockchain Interface)라 부르는 텐더민트 소켓 프로토콜을 사용한다. 텐더민트는 새로운 버전의 비잔틴 장애 허용(BFT) 지분증명(PoS) 합의 알고리즘을 제시한다. 이는 일반적으로 BF 기반의 지분증명(PoS)로 분류된다.
텐더민트 합의 엔진 기반의 블록체인 사용자들은 블록체인에 저장된 모든 데이터를 전부 내려받지 않고, 가장 최근에 생성된 블록정보를 가져와 사용해도 안전하다. 블록 데이터의 싱크가 필요 없으며 이것은 라이트-클라이언트(Lite-client)라고 한다. 기존 블록체인은 사용자들이 안전하게 블록체인 기반 서비스를 사용하기 위해 블록체인에 저장된 모든 블록데이터를 다운 받아야 했으며 이를 이용하려는 사용자들은 불편을 감수해야 했다. 이런 비효율적인 시스템이 발생하는 큰 이유는 기존 블록체인이 '선-블록생성, 후-합의'의 메커니즘을 가지고있기 때문이다. 하지만 텐더민트의 경우 기존 블록체인들과 반대로 '선-합의, 후-블록생성'의 메커니즘을 가지고 있다. 블록을 생성하기 전 블록 생성에 참여하는 노드(node)가 먼저 합의를 하고, 합의가 완료된 뒤 블록을 생성해 네트워크에 전파한다. 이런 합의 메커니즘으로 포크가 발생하지 않는다.
고아블록을 생성한다. 텐더민트는 부분 동시성 통신 하에서 합의하는 프로토콜이다. 부분 동시성 시스템은 동시성, 비동시성을 번갈아 나타낸다. 텐더민트는 비트코인의 10분, 이더리움의 15초의 시간처럼 설정되지만 진행속도는 시스템의 매개변수에 의존하지 않고 실제 네트워크 속도에 따라 결정된다.
비트코인은 블록생성 상한선 시간인 10분이 유지되지 않는 경우 합의 알고리즘이 깨지고 체인이 포크된다. 상한선은 10분으로 한 것은 안전성을 유지하기 위해 보수적으로 책정된 숫자이다. 텐더민트는 1/3이하의 프로세스 결함이 있는 경우, 비 동시성이 발생하더라도 절대로 포크하지 않는다. 다시 말해 2/3이상이 합의에 도달하기 전까지 일시적으로 포크를 중단한다. 이는 비잔틴 장애 허용 기반의 지분증명 프로토콜이 가능케 해준다.
텐더민트는 검증자 집합을 가중 라운드로빈(round-robin) 방식으로 번갈아 리더를 선출한다. 검증자는 투표권이 많을수록 더 많은 비중을 갖게 되고 이와 비례해 지도자로 선출될 가능성이 늘어난다. 알고리즘 작동 방식은 다음과 같다.
1. 검증자의 가중치가 설정되어 있다.
2. 검증자가 리더로 선출되고 새로운 블록을 제안한다.
3. 가중치가 다시 계산되고 라운드가 완료된 후 약간의 양이 감소한다.
4. 각 라운드가 진행됨에 따라 가증치는 투표권에 비례해 증가한다.
5. 검증자들 중 리더가 다시 선출된다.
리더가 누군지 예측할 수 있는 경우 공격자는 해당 리더를 대상으로 디도스(DDOS)공격을 감행해 잠재적으로 블록체인의 진행을 중단시킬 수 있는데 이런 공격에 텐더민트는 센트리 아키텍처(Sentry Architecture)을 구현해 대응한다.
센트리 아키텍처에 있어서, 제대로 된 검증자는 검증자 노드의 IP 주소를 노출, 타 노드와의 연결을 허용하지 않을 것이다. 실제 위치를 찾지 못하게 하려고 풀노드의 프록시(proxy)역할을 하는 센트리노드를 능동적으로 생성해 P2P단에서의 IP주소가 노출되지 않게 한다. 센트리 노트 아키텍처를 이용하는 것은 검증자의 선택사항이나 결함을 감내할 수 있는 풀노드를 유지, 관리하는 것은 검증자의 책임이다. 거의 모든 검증자들이 센트리 아키텍처를 이용하며 그렇지 않을 경우 해당 검증자는 검증자 집합에서 퇴장되고 스테이킹한 지분이 슬래싱(slashing)이 될 수 있기 때문이다.
이러한 합의는 검증자 또는 위임자들에 대응되는 각 노드 시스템의 자동 투표에 의하여 정해지는데, 이러한 자동 투표는, 예를 들어 트랜잭션에 포함된 정보가 유효한지 여부를 각 노드에 저장된 데이터와 비교하여, 데이터의 일치 여부에 따라서 유효 여부에 대한 투표를 자동으로 수행하는 것에서 비롯된다.
즉 본 발명의 장치는 S10 단계의 수행 후, 감지된 접근의 유효성을 검증하여 접근자가 접근 대상이 되는 비정형 데이터에 대한 유효한 접근자인지 여부를 블록체인 시스템에 포함된 복수의 노드들 중 텐더민트 BFT 검증자 및 위임자의 합의 결과를 기반으로 판단하는 제2 단계(S20)를 수행한다.
상술한 바와 같이 S20 단계의 수행에 있어서, 컴퓨팅 장치는, 접근자의 권한 정보에 관련된 트랜잭션(Transactoin)에 대해서 권한 정보의 유효성 여부에 대한 판단 결과가, 블록체인형 데이터베이스를 구성하는 복수의 블록체인 서버(즉 노드)들 중 과반수가 동일한 결과를 추출하는 경우, 접근자가 인가된 접근자인 것으로 판단하는 것으로 이해될 수 있다.
노드들은 상술한 바와 같이 접근자의 인가 정보의 유효성에 대하여 접근자, 즉 접근하고자 하는 단말이 제출한 인가 정보의 유효성과 각 노드에 저장된 유효성에 대한 정보가 일치하는 경우, 즉 해당 데이터에 대한 유효한 접근인 것으로 판단되는 인가 정보가 존재하고 해당 인가 정보가 접근자가 제출한 인가 정보와 동일한 경우, 유효함을 나타내는 투표를 진행하게 된다.
이 경우, 각 투표에 가중치를 적용하여 합산한 결과가 총 투표수의 과반수(바람직하게는 텐더민트 BFT 상에서 2/3 이상)가 되는 경우, 접근자의 인가 정보의 유효성을 긍정으로 판단하여, 접근자가 인가된 접근자인 것으로 판단하게 되는 것이다.
즉 S20 단계에 있어서, 각 블록체인 서버들이, 기 저장된 접근자 식별 정보와 권한 정보의 매칭 관계를 이용하여, 감지된 접근의 접근자의 식별 정보를 이용하여 접근자의 권한 정보를 추출하고, 추출된 권한 정보의 유효성을 기설정된 판단 기준에 따라서 판단하는 것이다. 이때 기설정된 판단 기준은, 상술한 바와 같이 권한 정보의 유효여부에 대한 정보의 일치성 및 유효성을 증명하는 데이터를 포함하는지 여부로 결정될 수 있다.
S20 단계의 판단 결과, 접근자가 인가된 접근자인 경우, 암호화 기술을 비활성화하여 접근자에게 비정형 데이터에 대한 접근을 허용하는 제3 단계(S30)가 수행된다. S30 단계의 수행 시, 비정형 데이터는 암호화되지 않음이 바람직하며, 이에 따라서 유효성을 인증받은 접근자는 암호화된 데이터에 대한 별도의 복호화 프로세스가 없이 그대로 비정형 데이터에 대한 접근을 수행할 수 있게 된다.
한편, S20 단계의 판단 결과, 접근자가 비인가 접근자인 경우, 접근 대상이 되는 비정형 데이터에 대한 암호화 기술을 활성화하여, 접근자에게 비정형 데이터에 대한 추출이 불가능하도록 하는 제4 단계(S40)가 수행된다. 즉, S30 및 S40 단계는 시계열적 순서에 따르지 않고, 선택적으로 수행되는 프로세스로 이해됨이 바람직할 것이다.
즉 본 발명에서는 텐더민트 BFT에 의한 합의에 의하여, 비정형 데이터를 무조건적으로 암호화하는 것이 아니라 인증되지 않은 접근에 대해서만 비정형 데이터에 대한 암호화를 수행하게 되는 데 그 특징이 있다.
즉 도 4에 도시된 바와 같이 접근자(50)가 인가 정보 또는 권한 정보(51)를 제출하면서 데이터(31)에 대한 접근을 시도 시, 관리자(N1), 검증자(N2), 위임자(N3)로 상술한 바와 같이 구성되는 합의체(20)가 텐더민트 BFT 방식을 이용하여 합의를 수행하게 되며, 그 결과 비정형 데이터에 대한 암호화 프로세스(141) 진행 여부를 판단하여, 암호화 프로세스(141)를 진행하게 된다.
이러한 경우, 단순한 접근 차단 방식을 적용 시에 접근을 우회하여 해킹하게 되는 문제를 암호화에 의하여 효율적으로 해결할 수 있고, 모든 데이터의 암호화 방식에 비하여, 그 암호화 및 추후 접근 허용 시의 복호화에 필요시되는 데이터의 소모량을 최소화할 수 있어, 데이터의 보안성이 크게 향상되는 동시에 데이터의 효율성 및 처리 속도의 향상을 비약적으로 증가시킬 수 있는 효과가 있는 것이다.
이때 S40 단계에 있어서 비정형 데이터는 접근 대상이 되는 데이터임은 상술한 바와 같다. 이에 따라서, S40 단계의 수행 시, 컴퓨팅 장치는 접근 대상이 되는 비정형 데이터에 대한 암호화 시, 제2 단계의 판단 시점에서 데이터를 후킹하여 파일 단위로 암호화하여, 블록체인형 데이터베이스에 대한 분산 저장 방식과 함께 비정형 데이터에 대한 보안성을 향상시키는 것이 가능하게 된다.
이러한 비정형 데이터에 대한 암호화에 있어서 비정형 데이터 자체의 암호화에 비하여 더욱 효율화되고 보안성이 향상된 암호화 방식을 제공하기 위해서, 본 발명의 제1 실시예에 있어서 S40 단계의 수행 시, 컴퓨팅 장치는 비정형 데이터에 대한 블록 정보를 포함한 접근 주소를 랜덤하게 변환하여 접근자에게 제공함으로써, 비정형 데이터에 대해서 블록체인 서버에 저장된 데이터에 대한 해시 데이터 및 블록 정보와의 불일치성을 통해서 접근 대상이 되는 비정형 데이터에 대한 접근을 차단할 수 있다.
이때 상술한 바와 같이 S20 단계의 판단 시점에서 데이터를 암호화하기 위해서, S40 단계의 수행 시, 컴퓨팅 장치는 접근 대상이 되는 비정형 데이터에 대한 해시 데이터 및 블록 정보를 S20 단계의 판단 시점에서 기설정된 정형 데이터 암호화 알고리즘을 통해 암호화할 수 있다. 정형 데이터 암호화 알고리즘은, 공지의 다양한 알고리즘이 사용될 수 있는 것으로 이해될 것이다.
즉 해시 데이터 및 블록 정보는 비정형 데이터의 접근을 제어하거나 비정형 데이터와의 매칭을 위해서 관리되는 정형 데이터이기 때문에 보다 단순한 암호화 알고리즘인 정형 데이터의 암호화 알고리즘을 이용하여, 그 암호화 효율성을 더욱 높일 수 있는 것이다.
한편 제2 실시예에 있어서, 비정형 데이터 자체에 대한 암호화가 수행될 수 있으며, 상술한 다양한 비정형 데이터에 대한 암호화 알고리즘이 적용될 수 있다. 이때 제1 실시예 및 제2 실시예가 함께 적용되어, 그 보안성을 크게 높일 수 있다.
즉, 도 5에 도시된 바와 같이, 비정형 데이터(31)에 대한 해시 데이터(H1) 및 블록 주소나 접근 주소 등에 대한 주소 데이터(A1)를 포함하는 관리 데이터(32)는 상술한 바와 같이 블록체인에 의하여 관리될 수 있으며, 그 자체로 보안성이 검증된다.
이때, 상술한 바에 따라서 접근자(50)가 검색서버(40) 등에 접속하여 비정형 데이터(31)에 대한 접근을 시도하고, 상술한 실시예에 의하여 접근자(50)가 비인가됨이 검증되면, 관리 데이터(32)를 랜덤하게 변환하거나 암호화하여 제공하고, 암호화하여 제공 시 복호화 키를 제공하지 않도록 함으로써, 접근자(50)는 잘못된 관리 데이터(32)를 이용하여 검색서버(40)를 이용하게 되며, 이에 의하여 접근 대상이 되는 비정형 데이터(31)에 대한 접근이 차단될 것이다.
또한, 상술한 바와 같이 비정형 데이터 자체에 대해서도 암호화가 수행될 수 있어, 블록체인 자체에 의한 위변조 차단에 의한 접근 제어, 관리 데이터(32)의 암호화에 의한 접근 제어 및 비정형 데이터 자체에 대한 암호화에 의한 접근 제어가 동시에 이루어져, 매우 향상된 보안성을 얻을 수 있다. 동시에, 상술한 바와 같이 접근 대상이 되는 비정형 데이터에 대한 암호화만이 진행되기 때문에 처리 효율성 및 속도가 크게 향상되는 효과가 있다.
한편 비정형 데이터의 관리 데이터로서 해시 데이터 및 블록 정보를 암호화하는 데 있어서, S40 단계에서 컴퓨팅 장치, 구체적으로 후술하는 제4 모듈(14)은, 도 6에 도시된 바와 같이 S20 단계의 수행 시점에서, 접근 대상이 되는 비정형 데이터(D2)에 대한 해시 데이터 및 블록 정보를 기설정된 정형 데이터 암호화 알고리즘을 통해 암호화한 뒤, S30 단계의 수행 시, 암호화된 해시 데이터 및 블록 정보에 대한 복호화 키(131)를 인가된 접근자(50)에게 제공함으로써 그 복호화를 진행하여, 접근 대상이 되는 비정형 데이터에 대한 접근이 가능하도록 할 수 있다.
즉 비정형 데이터 전체를 암호화하는 것이 아니라, 상술한 관리 데이터만을 S20 단계의 수행 시점에서 암호화하고, 이에 대한 복호화 키를 S30 단계가 수행되는 경우에만 접근자에게 제공함으로써, 속도의 향상성을 유지하는 동시에 보안성을 더욱 크게 향상시키게 되는 것이다.
한편 본 발명에서는 접근자의 접근 로그를 향상된 보안성으로 관리하여, 그 접근에 대한 정확한 접근 제어 여부, 접근 여부에 따른 보안성 달성 여부 등을 관리하는 동시에, 비정상 접근자에 대한 추적이 가능하도록 할 수 있다.
이를 위하여, 도 2에 도시된 바와 같이 컴퓨팅 장치는 먼저, S30 및 S40 단계의 수행 후, 접근자의 접근을 위한 접근 기록을 포함하는 접근자에 대해서 비정형 데이터에 대한 접근에 관한 로그 데이터를 ABCI(Applcation Black-Chain Interface)를 이용하여 수집하는 제5 단계(S50)를 수행하게 된다.
이후, S50 단계에 의하여 수집된 로그 데이터를 암호화한 암호 로그 데이터를 블록체인형 데이터베이스에 저장하고, 블록체인형 데이터베이스에 저장된 암호 로그 데이터에 대한 해시 데이터와 블록 정보를 검색 서버에 저장하는 제6 단계(S60)를 수행한다.
한편 도 3은 상술한 본 발명의 장치(10)의 구성 블록도이다. 이하의 설명에 있어서, 도 1 내지 2 및 도 4 내지 6에 대한 설명에서 언급된 중복되는 내용에 대한 설명은 생략하기로 한다.
도 3을 참조하면, 본 발명의 장치(10)는 제1 모듈 내지 제6 모듈(11, 12, 13, 14, 15, 16)을 포함하는 것을 특징으로 한다. 또한 상술한 바와 같이 관리자(21, 블록체인 관리 서버에 대응), 검증자(22) 및 위임자(23)를 포함하는 합의체(20)로서의 블록체인 시스템과, 상술한 접근자(50), 검색서버(40), 블록체인형 또는 일반 데이터베이스(30)가 포함되어 구성됨은 상술한 바와 같다.
제1 모듈(11)은 블록체인형 데이터 베이스에 포함된 비정형 데이터에 대한 생성, 변경 또는 엑세스를 포함하는 접근을 감지 시, 접근 대상이 되는 비정형 데이터가 속한 텐더민트 BFT(Byzantine Fault-Tolerant algorithms) 블록체인을 활성화하는 기능을 수행한다. 즉 상술한 설명에 있어서 S10 단계에 대한 설명에서 언급된 모든 기능을 수행하는 구성으로 이해될 것이다.
제2 모듈(12)은 감지된 접근의 유효성을 검증하여 접근자가 접근 대상이 되는 비정형 데이터에 대한 유효한 접근자인지 여부를 블록체인 시스템에 포함된 복수의 노드들 중 텐더민트 BFT 검증자 및 위임자의 합의 결과를 기반으로 판단하는 기능을 수행한다. 즉 상술한 설명에 있어서 S20 단계에 대한 설명에서 언급된 모든 기능을 수행하는 구성으로 이해될 것이다.
제3 모듈(13)은 제2 모듈(12)의 판단 결과, 접근자가 인가된 접근자인 경우, 암호화 기술을 비활성화하여 접근자에게 비정형 데이터에 대한 접근을 허용하는 기능을 수행한다. 즉 상술한 설명에 있어서 S30 단계에 대한 설명에서 언급된 모든 기능을 수행하는 구성으로 이해될 것이다.
제4 모듈(14)은 제2 모듈(12)의 판단 결과, 접근자가 비인가 접근자인 경우, 접근 대상이 되는 비정형 데이터에 대한 암호화 기술을 활성화하여, 접근자에게 비정형 데이터에 대한 추출이 불가능하도록 하는 기능을 수행한다. 즉 상술한 설명에 있어서 S40 단계에 대한 설명에서 언급된 모든 기능을 수행하는 구성으로 이해될 것이다.
제5 모듈(15)은 제3 모듈(13) 또는 제4 모듈(14)의 기능 수행 후, 접근자의 접근을 위한 접근 기록을 포함하는 접근자에 대해서 비정형 데이터에 대한 접근에 관한 로그 데이터를 ABCI(Applcation Black-Chain Interface)를 이용하여 수집하는 기능을 수행한다. 즉 상술한 설명에 있어서 S50 단계에 대한 설명에서 언급된 모든 기능을 수행하는 구성으로 이해될 것이다.
제6 모듈(16)은 제5 모듈(15)에 의하여 수집된 로그 데이터를 암호화한 암호 로그 데이터를 블록체인형 데이터베이스에 저장하고, 블록체인형 데이터베이스에 저장된 암호 로그 데이터에 대한 해시 데이터와 블록 정보를 검색 서버에 저장하는 기능을 수행한다. 즉 즉 상술한 설명에 있어서 S60 단계에 대한 설명에서 언급된 모든 기능을 수행하는 구성으로 이해될 것이다.
도 7은 본 발명의 일 실시 예에 따른 컴퓨팅 장치의 내부 구성의 일 예를 도시하였으며, 이하의 설명에 있어서, 상술한 도 1 내지 4에 대한 설명과 중복되는 불필요한 실시 예에 대한 설명은 생략하기로 한다.
도 7에 도시한 바와 같이, 컴퓨팅 장치(10000)은 적어도 하나의 프로세서(processor)(11100), 메모리(memory)(11200), 주변장치 인터페이스(peripheral interface)(11300), 입/출력 서브시스템(I/O subsystem)(11400), 전력 회로(11500) 및 통신 회로(11600)를 적어도 포함할 수 있다. 이때, 컴퓨팅 장치(10000)은 촉각 인터페이스 장치에 연결된 유저 단말이기(A) 혹은 전술한 컴퓨팅 장치(B)에 해당될 수 있다.
메모리(11200)는, 일례로 고속 랜덤 액세스 메모리(high-speed random access memory), 자기 디스크, 에스램(SRAM), 디램(DRAM), 롬(ROM), 플래시 메모리 또는 비휘발성 메모리를 포함할 수 있다. 메모리(11200)는 컴퓨팅 장치(10000)의 동작에 필요한 소프트웨어 모듈, 명령어 집합 또는 그밖에 다양한 데이터를 포함할 수 있다.
이때, 프로세서(11100)나 주변장치 인터페이스(11300) 등의 다른 컴포넌트에서 메모리(11200)에 액세스하는 것은 프로세서(11100)에 의해 제어될 수 있다.
주변장치 인터페이스(11300)는 컴퓨팅 장치(10000)의 입력 및/또는 출력 주변장치를 프로세서(11100) 및 메모리 (11200)에 결합시킬 수 있다. 프로세서(11100)는 메모리(11200)에 저장된 소프트웨어 모듈 또는 명령어 집합을 실행하여 컴퓨팅 장치(10000)을 위한 다양한 기능을 수행하고 데이터를 처리할 수 있다.
입/출력 서브시스템(11400)은 다양한 입/출력 주변장치들을 주변장치 인터페이스(11300)에 결합시킬 수 있다. 예를 들어, 입/출력 서브시스템(11400)은 모니터나 키보드, 마우스, 프린터 또는 필요에 따라 터치스크린이나 센서 등의 주변장치를 주변장치 인터페이스(11300)에 결합시키기 위한 컨트롤러를 포함할 수 있다. 다른 측면에 따르면, 입/출력 주변장치들은 입/출력 서브시스템(11400)을 거치지 않고 주변장치 인터페이스(11300)에 결합될 수도 있다.
전력 회로(11500)는 단말기의 컴포넌트의 전부 또는 일부로 전력을 공급할 수 있다. 예를 들어 전력 회로(11500)는 전력 관리 시스템, 배터리나 교류(AC) 등과 같은 하나 이상의 전원, 충전 시스템, 전력 실패 감지 회로(power failure detection circuit), 전력 변환기나 인버터, 전력 상태 표시자 또는 전력 생성, 관리, 분배를 위한 임의의 다른 컴포넌트들을 포함할 수 있다.
통신 회로(11600)는 적어도 하나의 외부 포트를 이용하여 다른 컴퓨팅 장치와 통신을 가능하게 할 수 있다.
또는 상술한 바와 같이 필요에 따라 통신 회로(11600)는 RF 회로를 포함하여 전자기 신호(electromagnetic signal)라고도 알려진 RF 신호를 송수신함으로써, 다른 컴퓨팅 장치와 통신을 가능하게 할 수도 있다.
이러한 도 7의 실시 예는, 컴퓨팅 장치(10000)의 일례일 뿐이고, 컴퓨팅 장치(11000)은 도 7에 도시된 일부 컴포넌트가 생략되거나, 도 7에 도시되지 않은 추가의 컴포넌트를 더 구비하거나, 2개 이상의 컴포넌트를 결합시키는 구성 또는 배치를 가질 수 있다. 예를 들어, 모바일 환경의 통신 단말을 위한 컴퓨팅 장치는 도 7에도시된 컴포넌트들 외에도, 터치스크린이나 센서 등을 더 포함할 수도 있으며, 통신 회로(1160)에 다양한 통신방식(WiFi, 3G, LTE, Bluetooth, NFC, Zigbee 등)의 RF 통신을 위한 회로가 포함될 수도 있다. 컴퓨팅 장치(10000)에 포함 가능한 컴포넌트들은 하나 이상의 신호 처리 또는 어플리케이션에 특화된 집적 회로를 포함하는 하드웨어, 소프트웨어, 또는 하드웨어 및 소프트웨어 양자의 조합으로 구현될 수 있다.
본 발명의 실시 예에 따른 방법들은 다양한 컴퓨팅 장치를 통하여 수행될 수 있는 프로그램 명령(instruction) 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 특히, 본 실시 예에 따른 프로그램은 PC 기반의 프로그램 또는 모바일 단말 전용의 어플리케이션으로 구성될 수 있다. 본 발명이 적용되는 애플리케이션은 파일 배포 시스템이 제공하는 파일을 통해 이용자 단말에 설치될 수 있다. 일 예로, 파일 배포 시스템은 이용자 단말이기의 요청에 따라 상기 파일을 전송하는 파일 전송부(미도시)를 포함할 수 있다.
이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시 예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술 분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로 (collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상장치(virtual equipment), 컴퓨터 저장 매체 또는 장치에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨팅 장치상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시 예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시 예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광 기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 실시 예들이 비록 한정된 실시 예와 도면에 의해 설명되었으나, 해당 기술 분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다. 그러므로, 다른 구현들, 다른 실시 예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.

Claims (10)

  1. 하나 이상의 프로세서 및 상기 프로세서에서 수행 가능한 명령들을 저장하는 하나 이상의 메모리를 포함하는 컴퓨팅 장치로 구현되는 텐더민트 BFT를 이용한 비정형 데이터의 암호화 방법에 관한 것으로,
    블록체인형 데이터 베이스에 포함된 비정형 데이터에 대한 생성, 변경 또는 엑세스를 포함하는 접근을 감지 시, 접근 대상이 되는 비정형 데이터가 속한 텐더민트 BFT(Byzantine Fault-Tolerant algorithms) 블록체인을 활성화하는 제1 단계;
    감지된 접근의 유효성을 검증하여 접근자가 접근 대상이 되는 비정형 데이터에 대한 유효한 접근자인지 여부를 판단하는 제2 단계;
    상기 제2 단계의 판단 결과, 접근자가 인가된 접근자인 경우, 암호화 기술을 비활성화하여 접근자에게 비정형 데이터에 대한 접근을 허용하는 제3 단계; 및
    상기 제2 단계의 판단 결과, 접근자가 비인가 접근자인 경우, 접근 대상이 되는 비정형 데이터에 대한 암호화 기술을 활성화하여, 접근자에게 비정형 데이터에 대한 추출이 불가능하도록 하는 제4 단계;를 포함하고,
    상기 제2 단계는,
    상기 접근자의 권한 정보에 관련된 트랜잭션(Transactoin)에 대해서 권한 정보의 유효성 여부에 대한 판단 결과가, 상기 블록체인형 데이터베이스를 구성하는 복수의 블록체인 서버들 중 과반수가 동일한 결과를 추출하는 경우, 상기 접근자가 인가된 접근자인 것으로 판단하고,
    각 블록체인 서버들이, 기 저장된 접근자 식별 정보와 권한 정보의 매칭 관계를 이용하여, 감지된 접근의 접근자의 식별 정보를 이용하여 접근자의 권한 정보를 추출하고, 추출된 권한 정보의 유효성을 기설정된 판단 기준에 따라서 판단하는 것을 특징으로 하는 텐더민트 BFT를 이용한 비정형 데이터의 암호화 방법
  2. 제1항에 있어서,
    상기 제3 단계 및 제4 단계의 수행 후,
    접근자의 접근을 위한 접근 기록을 포함하는 접근자에 대해서 비정형 데이터에 대한 접근에 관한 로그 데이터를 ABCI(Applcation Black-Chain Interface)를 이용하여 수집하는 제5 단계; 및
    상기 제5 단계에 의하여 수집된 로그 데이터를 암호화한 암호 로그 데이터를 블록체인형 데이터베이스에 저장하고, 블록체인형 데이터베이스에 저장된 암호 로그 데이터에 대한 해시 데이터와 블록 정보를 검색 서버에 저장하는 제6 단계;를 더 포함하는 것을 특징으로 하는 텐더민트 BFT를 이용한 비정형 데이터의 암호화 방법.
  3. 삭제
  4. 삭제
  5. 제1항에 있어서,
    상기 제4 단계는,
    상기 접근 대상이 되는 비정형 데이터에 대한 암호화 시, 제2 단계의 판단 시점에서 데이터를 후킹하여 파일 단위로 암호화하여, 블록체인형 데이터베이스에 대한 분산 저장 방식과 함께 비정형 데이터에 대한 보안성을 향상시키는 것을 특징으로 하는 텐더민트 BFT를 이용한 비정형 데이터의 암호화 방법.
  6. 제1항에 있어서,
    상기 제4 단계는,
    상기 비정형 데이터에 대한 블록 정보를 포함한 접근 주소를 랜덤하게 변환하여 상기 접근자에게 제공함으로써, 상기 비정형 데이터에 대해서 블록체인 서버에 저장된 데이터에 대한 해시 데이터 및 블록 정보와의 불일치성을 통해서 상기 접근 대상이 되는 비정형 데이터에 대한 접근을 차단하는 것을 특징으로 하는 텐더민트 BFT를 이용한 비정형 데이터의 암호화 방법.
  7. 제1항에 있어서,
    상기 4단계는,
    상기 접근 대상이 되는 비정형 데이터에 대한 해시 데이터 및 블록 정보를 상기 제2 단계의 판단 시점에서 기설정된 정형 데이터 암호화 알고리즘을 통해 암호화하는 것을 특징으로 하는 텐더민트 BFT를 이용한 비정형 데이터의 암호화 방법.
  8. 제7항에 있어서,
    상기 제2 단계는,
    상기 제2 단계의 수행 시점에서, 상기 접근 대상이 되는 비정형 데이터에 대한 해시 데이터 및 블록 정보를 기설정된 정형 데이터 암호화 알고리즘을 통해 암호화한 뒤,
    상기 제3 단계의 수행 시, 상기 암호화된 해시 데이터 및 블록 정보에 대한 복호화를 진행하여, 상기 접근 대상이 되는 비정형 데이터에 대한 접근이 가능하도록 하는 것을 특징으로 하는 텐더민트 BFT를 이용한 비정형 데이터의 암호화 방법.
  9. 하나 이상의 프로세서 및 상기 프로세서에서 수행 가능한 명령들을 저장하는 하나 이상의 메모리를 포함하는 컴퓨팅 장치로 구현되는 텐더민트 BFT를 이용한 비정형 데이터의 암호화 장치에 관한 것으로,
    블록체인형 데이터 베이스에 포함된 비정형 데이터에 대한 생성, 변경 또는 엑세스를 포함하는 접근을 감지 시, 접근 대상이 되는 비정형 데이터가 속한 텐더민트 BFT(Byzantine Fault-Tolerant algorithms) 블록체인을 활성화하는 제1 모듈;
    감지된 접근의 유효성을 검증하여 접근자가 접근 대상이 되는 비정형 데이터에 대한 유효한 접근자인지 여부를 판단하되, 상기 접근자의 권한 정보에 관련된 트랜잭션(Transactoin)에 대해서 권한 정보의 유효성 여부에 대한 판단 결과가, 상기 블록체인형 데이터베이스를 구성하는 복수의 블록체인 서버들 중 과반수가 동일한 결과를 추출하는 경우, 상기 접근자가 인가된 접근자인 것으로 판단하고, 각 블록체인 서버들이, 기 저장된 접근자 식별 정보와 권한 정보의 매칭 관계를 이용하여, 감지된 접근의 접근자의 식별 정보를 이용하여 접근자의 권한 정보를 추출하고, 추출된 권한 정보의 유효성을 기설정된 판단 기준에 따라서 판단하는 제2 모듈;
    상기 제2 모듈의 판단 결과, 접근자가 인가된 접근자인 경우, 암호화 기술을 비활성화하여 접근자에게 비정형 데이터에 대한 접근을 허용하는 제3 모듈; 및
    상기 제2 모듈의 판단 결과, 접근자가 비인가 접근자인 경우, 접근 대상이 되는 비정형 데이터에 대한 암호화 기술을 활성화하여, 접근자에게 비정형 데이터에 대한 추출이 불가능하도록 하는 제4 모듈;를 포함하는 것을 특징으로 하는 텐더민트 BFT를 이용한 비정형 데이터의 암호화 장치.
  10. 컴퓨터-판독가능 기록매체로서,
    상기 컴퓨터-판독가능 기록매체는, 컴퓨팅 장치로 하여금 이하의 단계들을 수행하도록 하는 명령들을 저장하며, 상기 단계들은:
    블록체인형 데이터 베이스에 포함된 비정형 데이터에 대한 생성, 변경 또는 엑세스를 포함하는 접근을 감지 시, 접근 대상이 되는 비정형 데이터가 속한 텐더민트 BFT(Byzantine Fault-Tolerant algorithms) 블록체인을 활성화하는 제1 단계;
    감지된 접근의 유효성을 검증하여 접근자가 접근 대상이 되는 비정형 데이터에 대한 유효한 접근자인지 여부를 판단하는 제2 단계;
    상기 제2 단계의 판단 결과, 접근자가 인가된 접근자인 경우, 암호화 기술을 비활성화하여 접근자에게 비정형 데이터에 대한 접근을 허용하는 제3 단계; 및
    상기 제2 단계의 판단 결과, 접근자가 비인가 접근자인 경우, 접근 대상이 되는 비정형 데이터에 대한 암호화 기술을 활성화하여, 접근자에게 비정형 데이터에 대한 추출이 불가능하도록 하는 제4 단계;를 포함하고,
    상기 제2 단계는,
    상기 접근자의 권한 정보에 관련된 트랜잭션(Transactoin)에 대해서 권한 정보의 유효성 여부에 대한 판단 결과가, 상기 블록체인형 데이터베이스를 구성하는 복수의 블록체인 서버들 중 과반수가 동일한 결과를 추출하는 경우, 상기 접근자가 인가된 접근자인 것으로 판단하고,
    각 블록체인 서버들이, 기 저장된 접근자 식별 정보와 권한 정보의 매칭 관계를 이용하여, 감지된 접근의 접근자의 식별 정보를 이용하여 접근자의 권한 정보를 추출하고, 추출된 권한 정보의 유효성을 기설정된 판단 기준에 따라서 판단하는 것을 특징으로 하는 컴퓨터-판독가능 기록매체.
KR1020210145663A 2021-10-28 2021-10-28 텐더민트 bft를 이용한 비정형 데이터의 암호화 방법, 장치 및 컴퓨터-판독가능 기록매체 KR102467441B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020210145663A KR102467441B1 (ko) 2021-10-28 2021-10-28 텐더민트 bft를 이용한 비정형 데이터의 암호화 방법, 장치 및 컴퓨터-판독가능 기록매체

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210145663A KR102467441B1 (ko) 2021-10-28 2021-10-28 텐더민트 bft를 이용한 비정형 데이터의 암호화 방법, 장치 및 컴퓨터-판독가능 기록매체

Publications (1)

Publication Number Publication Date
KR102467441B1 true KR102467441B1 (ko) 2022-11-17

Family

ID=84233411

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210145663A KR102467441B1 (ko) 2021-10-28 2021-10-28 텐더민트 bft를 이용한 비정형 데이터의 암호화 방법, 장치 및 컴퓨터-판독가능 기록매체

Country Status (1)

Country Link
KR (1) KR102467441B1 (ko)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060068699A (ko) * 2004-12-16 2006-06-21 삼성전자주식회사 가입자 등급에 따른 브이오아이피 호 처리 방법 및 그시스템
KR20200116014A (ko) * 2019-03-29 2020-10-08 알리바바 그룹 홀딩 리미티드 블록 체인 네트워크에서 민감 데이터 요소를 관리하는 방법
KR20200131307A (ko) * 2018-03-19 2020-11-23 후아웨이 테크놀러지 컴퍼니 리미티드 데이터 액세스 권한 제어 방법 및 장치
KR102207072B1 (ko) * 2019-01-02 2021-01-25 주식회사 체커 블록체인 기반의 데이터 접근 감사 시스템 및 그 방법
KR102208891B1 (ko) * 2018-11-07 2021-01-29 어드밴스드 뉴 테크놀로지스 씨오., 엘티디. 블록체인 기밀 트랜잭션에서 암호화된 트랜잭션 정보 복구

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060068699A (ko) * 2004-12-16 2006-06-21 삼성전자주식회사 가입자 등급에 따른 브이오아이피 호 처리 방법 및 그시스템
KR20200131307A (ko) * 2018-03-19 2020-11-23 후아웨이 테크놀러지 컴퍼니 리미티드 데이터 액세스 권한 제어 방법 및 장치
KR102208891B1 (ko) * 2018-11-07 2021-01-29 어드밴스드 뉴 테크놀로지스 씨오., 엘티디. 블록체인 기밀 트랜잭션에서 암호화된 트랜잭션 정보 복구
KR102207072B1 (ko) * 2019-01-02 2021-01-25 주식회사 체커 블록체인 기반의 데이터 접근 감사 시스템 및 그 방법
KR20200116014A (ko) * 2019-03-29 2020-10-08 알리바바 그룹 홀딩 리미티드 블록 체인 네트워크에서 민감 데이터 요소를 관리하는 방법

Similar Documents

Publication Publication Date Title
US9055052B2 (en) Method and system for improving storage security in a cloud computing environment
CN103201746B (zh) 用于数据存储装置处的安全管理供应的技术
KR101937220B1 (ko) 키 관리가 필요없는 블록체인을 기반한 전자서명 또는 메시지 인증 코드를 생성 및 검증 방법
EP2862119B1 (en) Network based management of protected data sets
US10333925B2 (en) Seamless provision of authentication credential data to cloud-based assets on demand
CN110061842A (zh) 带外远程认证
TW200824401A (en) Software authorization utilizing software reputation
CN116711264A (zh) 保护边缘设备信任分数的方法
Zhou et al. Cssp: The consortium blockchain model for improving the trustworthiness of network software services
Lone et al. Reputation driven dynamic access control framework for iot atop poa ethereum blockchain
US20170093844A1 (en) Data Theft Deterrence
KR20210060282A (ko) 하드웨어 보안 모듈을 이용한 클라우드를 통한 IoT(Internet of Thing) 디바이스 인증 시스템 및 방법
US20230247020A1 (en) Network management using trusted execution environments
KR102467441B1 (ko) 텐더민트 bft를 이용한 비정형 데이터의 암호화 방법, 장치 및 컴퓨터-판독가능 기록매체
JP5865386B2 (ja) バックエンド制約委譲モデル
US20240323192A1 (en) Method, apparatus, and computer-readable recording medium for controlling execution of event stream-based container workload in cloud environment
Zhao et al. SOMR: Towards a security-oriented MapReduce infrastructure
KR102714421B1 (ko) 접근자의 세부 역할 기반의 컨테이너 플랫폼 승인 제어 방법, 장치 및 컴퓨터-판독 가능 기록 매체
KR102702107B1 (ko) 전자 서명 기반의 지속적 신뢰 검증을 통해 내부 자원에 대한 접근을 통제하는 방법, 장치 및 컴퓨터-판독 가능 기록 매체
Wang et al. Bottom-up: A SGX-based Blockchain Trusted Startup and Verification Scheme
KR102690039B1 (ko) 2차원 바코드를 이용하여 전자 서명 기반으로 신원이 확인된 사용자 및 사용자 단말의 신뢰 수준을 검증하는 방법, 장치 및 컴퓨터-판독 가능 기록 매체
KR102393537B1 (ko) 신뢰실행환경에 기반한 소프트웨어 라이선스 관리 방법 및 시스템
KR102277389B1 (ko) 블록 체인을 이용한 투명성이 보장되는 투표 관리 및 집계 방법, 장치 및 컴퓨터-판독가능 기록매체
Mei et al. Secure Big Data Computing Based on Trusted Computing and Key Management
Khattak et al. Proof of concept implementation of trustworthy mutual attestation architecture for true single sign-on

Legal Events

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