KR20220092811A - 암호화 데이터를 저장하는 방법 및 장치 - Google Patents

암호화 데이터를 저장하는 방법 및 장치 Download PDF

Info

Publication number
KR20220092811A
KR20220092811A KR1020210187519A KR20210187519A KR20220092811A KR 20220092811 A KR20220092811 A KR 20220092811A KR 1020210187519 A KR1020210187519 A KR 1020210187519A KR 20210187519 A KR20210187519 A KR 20210187519A KR 20220092811 A KR20220092811 A KR 20220092811A
Authority
KR
South Korea
Prior art keywords
encrypted
file
data
authentication metadata
hash function
Prior art date
Application number
KR1020210187519A
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 상하이 쿤야오 네트워크 사이언스&테크놀로지 씨오., 엘티디.
Publication of KR20220092811A publication Critical patent/KR20220092811A/ko

Links

Images

Classifications

    • 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/0863Generation of secret information including derivation or calculation of cryptographic keys or passwords involving passwords or one-time passwords
    • 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
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0825Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/10Integrity

Landscapes

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

Abstract

본 출원의 목적은 암호화 데이터를 저장하는 방법, 시스템 및 장치를 제공하는 것이다. 본 출원은 암호화할 원본 데이터를 획득하고, 제1 해시 함수를 사용하여 상기 암호화할 원본 데이터를 해시 처리하고, 암호화 키를 생성하는 단계; 제2 해시 함수를 사용하여 상기 암호화할 원본 데이터를 해시 계산하여 제 1 인증 메타 데이터를 얻는 단계; 상기 암호화 키를 기반으로, 원본 데이터를 저장하는 원본 파일을 암호화하여 암호화 파일을 생성하고, 상기 제2 해시 함수를 기반으로 상기 암호화 파일을 해시 계산하여 제 2 인증 메타 데이터를 얻는 단계; 상기 제1 해시 함수, 제1 인증 메타 데이터, 제2 인증 메타 데이터에 기반하여 콘텐츠 기술자를 생성하는 단계; 상기 암호화 파일, 제1 인증 메타 데이터 및 제2 인증 메타 데이터를 상기 콘텐츠 기술자를 식별정보로 사용하는 파일에 저장하여 암호화 저장 파일을 얻는 단계를 통해 중복 암호화 데이터 삭제 및 검색을 실현하고 하위 호환성과 프라이버시성을 겸비한다.

Description

암호화 데이터를 저장하는 방법 및 장치{METHOD AND DEVICE FOR STORING ENCRYPTED DATA}
본 출원은 컴퓨터 분야에 관한 것으로, 특히 암호화 데이터를 저장하는 방법 및 장치에 관한 것이다.
프라이버시 데이터는 암호화하여 저장해야 하는 경우가 많고, 암호화 저장의 키는 사용자마다 별도로 관리하는 경우가 많기 때문에, 원본 데이터가 같더라도 암호화된 데이터는 완전히 다르게 되고, 이에 암호화된 중복 데이터를 삭제하는 것이 불가능하게 된다. 또한, 암호화 알고리즘은 끊임없이 진보하고 있고, 기술의 발전과 하드웨어의 지속적인 반복에 따라, 일부 암호화 알고리즘 및 해시 알고리즘의 안전성이 위협받을 수 있고, 그러면 사용자가 암호화하는 알고리즘에 변화가 생길 수 있다. 암호화 알고리즘은 진보되었으나 어떻게 암호화 알고리즘을 식별하며 동시에 암호화 중복 데이터를 삭제할지는 여전히 문제가 되고 있다.
중복 데이터를 삭제할 때, 데이터의 암호화 및 암호문 검색을 실현하는 것은 클라우드 저장 보안 분야의 뜨거운 연구과제이다. 사용자 데이터 암호화의 조건에서도 중복 데이터 삭제가 가능하도록 하기 위해서, 클라우드 저장시스템에서는 종종 수렴적 암호화 기술을 채용하거나 추가적인 독립 서버를 도입한다. 그러나, 이러한 방식은 온라인 무차별 대입 공격 위협 및 원가 제한 등의 문제를 갖고 있다.
나아가, 패스워드 인증 키 교환(Password authenticated key exchange, PAKE) 규약에 기반한 서버 측 중복 데이터 삭제 방안이 제기되었다. 여기서 사용자들은 개인 정보를 서로 비교하고 키를 공유한다. 이 방안은 별도의 서버를 필요로 하지 않고 바로 사용자 간의 중복 데이터 삭제를 실현하며, 사용자가 로컬 클라이언트 측에서 데이터를 암호화하는 것을 허용할 뿐만 아니라 악의적인 사용자나 서버가 유발하는 무차별 대입 공격을 방어할 수 있다는 장점이 있다. 한편, Bellare 등은 무차별 대입 공격을 방어하기 위해, 서버 측의 중복 데이터 삭제 방안에 키 관리서버를 도입했다. Puzio 등은 클라우드 저장시스템 하에 데이터 블록 레벨 중복 데이터 삭제 방안을 설계하여, 수렴적 암호화를 기초로 별도의 암호화 작업 및 접근 제어 방식을 도입하여 사전단어공격을 방어한다. 그러나, 이러한 방법들은 특정 상황에 대해 실현하는 것이고, 전문적인 관리서버를 필요로 하며, 통용되지 않고, 파일 시스템의 기본 지원이 부족하다는 통상적인 문제가 있다. 또한, 데이터의 안전 및 프라이버시 보호는 갈수록 업계에서 중시되어, 사용자 측이 암호화 데이터를 업로드 하는 것은 이미 보편화 되었다. 현재의 구현은, 암호화는 일반적으로 사용자 설정키로 사생활을 보호한다. 그리하여 원본 데이터가 같더라도 암호화된 데이터는 완전히 달라지고, 중복 데이터 삭제는 하나의 난제가 되었다.
다른 측면으로, 암호학이 부단히 발전하고 있으며, 암호화 기술이 끊임없이 진보하여, 업계에서는 확장성 통용 암호화 구조를 필요로 하게 되었다. 학술계는 데이터 암호화 방식을 신분 기반 암호화 방식과 속성 기반 암호화 방식으로 크게 두 가지로 분류하였다. 신분 기반 암호화 방식은 임의의 두 사용자가 개인키나 공개키를 교환하지 않고도 안전한 통신 및 신분 인증을 실현할 수 있다. 속성 기반 암호화 방식은 사용자 속성을 집결하여 결정되는 사용자 신분으로 키를 생성하여, 속성이 동일한 사용자는 모두 암호문을 해제할 수 있도록 하는 방식을 채용한다. 속성 기반 암호화 방식에 존재하는 문제점은 사용자 권한 제어가 복잡하고 및 신분 개인 정보가 유출되는 것이다. 따라서 암호화 데이터의 공유 범위가 과도하게 넓어지게 되고, 항상 키를 제3자에게 업로드 해야 해서, 데이터 아웃소싱에 환경에 적용하기 어렵다.
암호문 검색은 데이터 암호화에 대응되는 핵심 기술이다. 명문 키워드 기반 검색은 사용자가 저장된 데이터 직접 암호 해제하거나 다운로드 후 암호 해제해야 하므로, 악의적인 사용자나 서비스 제공자가 사용자의 프라이버시 정보를 도용하기 쉬우며, 암호화 저장시스템에는 적합하지 않다. 현재의 연구진행 상황은 단일 키워드 또는 부울 키워드 암호문 검색을 기초로 다중 키워드 순위 암호문 검색 방식을 구축하는 것이다. 이 중 데이터 소유자는 암호화 파일과 암호화 검색 가능 인덱스를 저장서버에 업로드하고, 데이터 사용자는 검색 제어 매커니즘을 통해 여러 키워드에 해당하는 검색 트랩도어를 획득한 후, 이 정보를 저장서버로 전송한다. 서버는 요청을 수신한 후, 검색 순위를 부여하고, 최종적으로 검색 결과를 피드백한다. 검색 과정에서, 파일 및 쿼리 키워드 간의 상관도는 내적 유사도를 기반으로 한 k-최인접 이웃 알고리즘(k-nearestneighbor, kNN) 기술을 채용하여 계산하는데, 요청 벡터에 랜덤 변수를 추가하고 파일 데이터의 이진 벡터에 가짜 키워드가 추가된다. 따라서 암호문 데이터만 획득하는 서버가 검색 트랩도어를 수신하면 그 상관도를 분석하는 난이도가 높아진다. 그러나 두 개의 검색 트랩도어 간의 상관도와 같은 배경 지식을 안다면, 클라우드 서버는 규모 분석을 통해 키워드와 같은 개인 정보를 얻을 수 있다. 따라서 데이터의 이진 벡터에 여러 개의 가짜 키워드를 추가하면 파일 검색 시 사용되는 키워드의 프라이버시성을 보호할 수 있다. 키워드 사전에 빈 단어를 추가하여, 즉, 대응되는 데이터의 이진 벡터에 0을 설정하여, 파일 추가, 수정, 삭제와 같은 동적 작업을 지원한다.
암호문 검색과 관련된 분야로 IPFS(분상형 파일 시스템) 저장 네트워크와 같은 콘텐츠 주소 지정이 있다. 각 데이터 블록에 대해 해시(hash) 값을 계산하고 해시값을 비교하여 콘텐츠가 저장되어 있는지 점검하여, 저장되어 있다면 기존 데이터를 직접 사용하고 검색할 수 있다. 현재로서 암호화 데이터 콘텐츠 기반에 연관된 콘텐츠 주소 지정에 대한 연구는 아직 없다.
상술한 바를 종합하면, 종래의 많은 저장시스템에서 중복 데이터 삭제 및 콘텐츠 주소 지정(검색)을 구현했지만, 이러한 시스템들은 모두 다음과 같은 문제를 처리하지 못했다.
1. 이러한 중복 데이터 삭제 및 콘텐츠 주소 지정(검색)은 암호화되지 않은 데이터에 한해서만 진행되는 것으로, 동일한 콘텐츠의 데이터를 암호화하여 암호문이 다르게 되면 중복 데이터 삭제 및 콘텐츠 주소 지정은 구현할 수 없다.
2. 이러한 중복 데이터 삭제 및 암호화 방식은 필연적으로 사용자 콘텐츠를 비교하게 되는데, 대부분의 경우 콘텐츠는 상이한 사용자의 것이고, 저장시스템은 반드시 상이한 사용자의 콘텐츠에 따라 계산을 수행해야 하므로 사용자 프라이버시 보호에 대해서는 위반이 된다.
3. 기존의 암호화 시스템 및 암호화 어플리케이션은 모두 맞춤화된 전용 시스템으로 협의의 방식으로 해결할 수 없고, 확장성 및 하위 호환성이 결여된다.
본 출원의 목적은 암호화 데이터를 저장하는 방법 및 장치를 제공하고, 종래 기술의 암호화 중복 데이터를 식별하거나 삭제할 수 없는 문제점과 종래의 시스템이 확장성 및 하위 호환성 결여된 문제를 해결하는데 있다.
본 출원의 일 측면에 따르면, 암호화할 원본 데이터를 획득하고, 제1 해시 함수를 사용하여 상기 암호화할 원본 데이터를 해시 처리하고, 암호화 키를 생성하는 단계; 제2 해시 함수를 사용하여 상기 암호화할 원본 데이터를 해시 계산하여 제 1 인증 메타 데이터를 얻는 단계; 상기 암호화 키를 기반으로, 원본 데이터를 저장하는 원본 파일을 암호화하여 암호화 파일을 생성하고, 상기 제2 해시 함수를 기반으로 상기 암호화 파일을 해시 계산하여 제 2 인증 메타 데이터를 얻는 단계; 상기 제1 해시 함수, 상기 제1 인증 메타 데이터, 상기 제2 인증 메타 데이터를 기반으로 콘텐츠 기술자(content descriptor)를 생성하는 단계; 상기 암호화 파일, 상기 제1 인증 메타 데이터 및 상기 제2 인증 메타 데이터를 상기 콘텐츠 기술자를 식별정보로 사용하는 파일에 저장하여 암호화 저장 파일을 얻는 단계를 포함하는 암호화 데이터를 저장하는 방법이 제공된다.
선택적으로, 상기 암호화 키를 기반으로, 원본 데이터를 저장하는 원본 파일을 암호화하고, 암호화 파일을 생성하는 것은, 상기 암호화 키와 지정 암호화 함수를 기반으로 원본 데이터를 저장하는 원본 파일을 암호화하고, 지정 암호화된 암호화 파일을 생성하는 것을 포함한다.
선택적으로, 상기 제2 해시 함수를 기반으로 상기 암호화 파일을 해시 계산하여 제 2 인증 메타 데이터를 얻는 것은, 상기 제2 해시 함수를 기반으로 상기 지정 암호화된 암호화 파일을 해시 계산하여 제 2 인증 메타 데이터를 얻는 것을 포함한다.
여기서 상기 제1 해시 함수, 상기 제1 인증 메타 데이터, 상기 제2 인증 메타 데이터를 기반으로 콘텐츠 기술자를 생성하는 단계는 상기 제1 해시 함수, 상기 제1 인증 메타 데이터, 상기 제2 인증 메타 데이터 및 상기 지정 암호화 함수를 기반으로 콘텐츠 기술자를 생성하는 것을 포함한다.
선택적으로, 상기 제1 해시 함수, 상기 제1 인증 메타 데이터, 상기 제2 인증 메타 데이터를 기반으로 콘텐츠 기술자를 생성하는 단계는 상기 제1 해시 함수, 상기 제2 해시 함수, 상기 제1 인증 메타 데이터, 상기 제2 인증 메타 데이터 및 상기 지정 암호화 함수를 기반으로 콘텐츠 기술자를 생성하는 것을 포함한다.
선택적으로, 상기 방법은 상기 콘텐츠 기술자를 사용자에게 발송하고 상기 사용자가 상기 콘텐츠 기술자를 기반으로 상기 암호화 저장 파일을 검색한 검색 결과를 획득하는 단계를 포함한다.
선택적으로, 상기 사용자가 상기 콘텐츠 기술자를 기반으로 상기 암호화 저장 파일을 검색한 검색 결과를 획득하는 단계 후에, 상기 검색 결과 상기 암호화 저장 파일이 검색되었으면, 상기 암호화 저장 파일에 압축 풀기를 진행하여 암호화 파일 및 제2 인증 메타 데이터를 얻는 단계; 상기 제2 인증 메타 데이터 및 상기 콘텐츠 기술자의 제2 해시 함수에 따라 상기 암호화 파일을 검증하여 검증 결과를 얻는 단계; 상기 검증 결과에 기반하여 상기 암호화 키 및 상기 콘텐츠 기술자의 지정 암호화 함수를 사용하여 검증에 통과한 암호화 파일에 대해 암호 해제를 진행하여 원본 파일을 얻는 단계; 상기 콘텐츠 기술자의 제1 해시 함수 및 제1 인증 메타 데이터에 따라 상기 원본 파일을 검증하여 검증에 통과한 원본 파일을 사용자에게 피드백하는 단계를 포함한다.
본 출원의 다른 일 측면에 따르면, 암호화 데이터를 저장하는 시스템이 더 제공된다. 상기 시스템은 데이터 획득 모듈, 데이터 처리 모듈, 데이터 암호화 모듈, 데이터 식별 모듈 및 데이터 저장 모듈을 포함한다.
상기 데이터 획득 모듈은 암호화할 원본 데이터를 획득하고, 제1 해시 함수를 사용하여 상기 암호화할 원본 데이터를 해시 처리하고, 암호화 키를 생성한다.
상기 데이터 처리 모듈은 제2 해시 함수를 사용하여 상기 암호화할 원본 데이터를 해시 계산하여 제 1 인증 메타 데이터를 획득한다.
데이터 암호화 모듈은 상기 암호화 키를 기반으로, 원본 데이터를 저장하는 원본 파일을 암호화하여 암호화 파일을 생성하고, 상기 제2 해시 함수를 기반으로 상기 암호화 파일을 해시 계산하여 제2 인증 메타 데이터를 획득한다.
상기 데이터 식별 모듈은 상기 제1 해시 함수, 상기 제1 인증 메타 데이터, 상기 제2 인증 메타 데이터를 기반으로 콘텐츠 기술자를 생성한다.
상기 데이터 저장 모듈은 상기 암호화 파일, 상기 제1 인증 메타 데이터 및 상기 제2 인증 메타 데이터를 상기 콘텐츠 기술자를 식별정보로 사용하는 파일에 저장하여 암호화 저장 파일을 획득한다.
본 출원의 다른 측면에 따르면, 또한 컴퓨터 판독가능 매체로서, 프로세서에 의해 실행되어 전술한 어느 한 항의 방법을 실현할 수 있는 컴퓨터 판독가능 명령어를 저장하는 컴퓨터 판독가능 매체를 제공한다.
본 출원의 또 다른 측면에 따르면, 암호화 데이터를 저장하는 장치를 더 제공하며, 상기 장치는 하나 이상의 프로세서; 및 컴퓨터 판독가능 명령어를 저장하는 메모리를 포함하고, 상기 컴퓨터 판독가능 명령어는 실행될 때 상기 프로세서가 전술한 어느 한 항의 방법을 실행하는 조작을 하도록 한다.
전술한 종래 기술과 비교하여, 본 출원은 암호화할 원본 데이터를 획득하고, 제1 해시 함수를 사용하여 상기 암호화할 원본 데이터를 해시 처리하고, 암호화 키를 생성하는 단계; 제2 해시 함수를 사용하여 상기 암호화할 원본 데이터를 해시 계산하여 제 1 인증 메타 데이터를 얻는 단계; 상기 암호화 키를 기반으로, 원본 데이터를 저장하는 원본 파일을 암호화하여 암호화 파일을 생성하고, 상기 제2 해시 함수를 기반으로 상기 암호화 파일을 해시 계산하여 제 2 인증 메타 데이터를 얻는 단계; 상기 제1 해시 함수, 제1 인증 메타 데이터, 제2 인증 메타 데이터에 기반하여 콘텐츠 기술자를 생성하는 단계; 상기 암호화 파일, 제1 인증 메타 데이터 및 제2 인증 메타 데이터를 상기 콘텐츠 기술자를 식별정보로 사용하는 파일에 저장하여 암호화 저장 파일을 얻는 단계를 통해 암호화 데이터에 대하여 중복 데이터 삭제와 검색이 가능하고, 사용자 파일 콘텐츠들을 비교할 필요가 없어 사용자의 프라이버시 정보를 보호하고, 확장성과 하위 호환성을 향상시키며, 다른 시스템에 적용할 수 있다.
본 출원의 다른 특징, 목적 및 장점들은 이하의 첨부된 도면들을 참조하여 비 제한적인 실시예들의 상세한 설명을 통해 더욱 명백해질 것이다.
도 1은 본 출원의 일 측면에 따라 제공되는 암호화 데이터를 저장하는 방법의 흐름도이다.
도 2는 본 출원의 바람직한 일 실시예의 지정 양식 암호화 저장 파일 설명도이다.
도 3은 본 출원의 바람직한 일 실시예의 콘텐츠 기술자 획득 방법의 흐름도이다.
도 4는 본 출원의 바람직한 일 실시예의 암호화 저장 파일의 암호화 저장 및 검색 응용 상황 설명도이다.
도 5는 본 출원 다른 측면에 따라 제공되는 암호화 데이터를 저장하는 시스템의 프레임의 구조 설명도이다.
첨부된 도면에서 동일하거나 유사한 참조 번호는 동일하거나 유사한 구성요소를 나타낸다.
아래에서는 첨부 도면을 결합하여 본 출원에 대해 좀 더 상세히 설명한다.
본 출원의 전형적인 구성에서, 단말기, 서비스 네트워크 내의 디바이스 및 신뢰성 있는 당사자 모두는 하나 이상의 프로세서(CPU), 입력/출력 인터페이스, 네트워크 인터페이스, 및 메모리를 포함한다.
메모리는 컴퓨터 판독가능 매체 내의 휘발성 메모리, RAM(random access memory), 및/또는 비휘발성 메모리 등, 예를 들어, ROM(read-only memory) 또는 플래시 메모리를 포함할 수 있다. 메모리는 컴퓨터 판독가능 매체의 예시이다.
컴퓨터 판독가능 매체는 임의의 방법 또는 기술을 사용함으로써 정보 저장을 구현할 수 있는 비휘발성 매체, 휘발성 매체, 착탈식 매체, 또는 비착탈식 매체를 포함한다. 정보는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈, 또는 다른 데이터일 수 있다. 컴퓨터 저장 매체의 예시들은, 비제한적인 예시로서, PRAM(parameter random access memory), SRAM(static random access memory), DRAM(dynamic random access memory), 다른 유형의 RAM(random access memory), ROM(read-only memory), EEPROM(electrically erasable programmable read-only memory), 플래시 메모리 또는 다른 메모리 기술, CD-ROM(compact disc read-only memory), DVD(digital versatile disc) 또는 다른 광학 저장장치, 자기 카세트, 자기 테이프, 자기 디스크 또는 다른 자기 저장 디바이스, 또는 컴퓨팅 디바이스에 액세스가능한 정보를 저장하기 위해 이용될 수 있는 임의의 다른 비 전송 매체를 포함한다. 본 명세서의 정의에 기초하여, 컴퓨터 판독가능 매체는 변조 데이터 신호 및 반송파와 같은 컴퓨터 판독가능 비 일시적 매체(transitory media)를 포함하지 않는다.
도 1은 본 출원의 일 측면에 따라 제공되는 암호화 데이터를 저장하는 방법의 흐름도이며, 상기 방법은, 암호화할 원본 데이터를 획득하고, 제1 해시 함수를 사용하여 상기 암호화할 원본 데이터를 해시 처리하고, 암호화 키를 생성하는 단계(S100); 제2 해시 함수를 사용하여 상기 암호화할 원본 데이터를 해시 계산하여 제 1 인증 메타 데이터를 얻는 단계(S200); 상기 암호화 키를 기반으로, 원본 데이터를 저장하는 원본 파일을 암호화하여 암호화 파일을 생성하고, 상기 제2 해시 함수를 기반으로 상기 암호화 파일을 해시 계산하여 제 2 인증 메타 데이터를 얻는 단계(S300); 상기 제1 해시 함수, 상기 제1 인증 메타 데이터, 상기 제2 인증 메타 데이터를 기반으로 콘텐츠 기술자를 생성하는 단계(S400); 상기 암호화 파일, 상기 제1 인증 메타 데이터 및 상기 제2 인증 메타 데이터를 상기 콘텐츠 기술자를 식별정보로 사용하는 파일에 저장하여 암호화 저장 파일을 얻는 단계(S500). 따라서 암호화 데이터에 대해 중복 데이터 삭제와 검색이 가능하고, 사용자 파일 콘텐츠들을 비교할 필요가 없어 사용자의 프라이버시 정보를 보호하고, 확장성과 하위 호환성을 향상시키며, 다른 시스템에 적용할 수 있다.
구체적으로, 단계 S100에서는, 암호화할 원본 데이터를 획득하고, 제1 해시 함수를 사용하여 상기 암호화할 원본 데이터를 해시 처리하고, 암호화 키를 생성한다. 여기서, 상기 암호화할 원본 데이터는 제1 해시 함수를 사용하여 계산되고, 획득한 해시 데이터가 암호화 키이다. 따라서 암호화할 원본 데이터가 동일하고 해시 함수가 동일하면, 획득한 암호화 키도 동일하다. 원본 데이터 자체를 이용하여 특정 해시 알고리즘을 통해 콘텐츠를 암호화 키로 생성한다. 이것이 데이터 암호화를 구현하는 동시에 중복 데이터 삭제를 구현하는 핵심이다.
단계 S200에서는, 제2 해시 함수를 사용하여 상기 암호화할 원본 데이터를 해시 계산하여 제 1 인증 메타 데이터를 얻는다. 여기서, 상기 암호화할 원본 데이터는 제2 해시 함수를 사용하여 계산되고, 획득한 해시 데이터가 제1 인증 메타 데이터이다. 상기 제1 인증 메타 데이터는 암호 해제 후 획득한 암호 해제 데이터가 암호화할 원본 데이터와 일치하는지 여부를 검출한다.
단계 S300에서는, 상기 암호화 키를 기반으로, 원본 데이터를 저장하는 원본 파일을 암호화하여 암호화 파일을 생성하고, 상기 제2 해시 함수를 기반으로 상기 암호화 파일을 해시 계산하여 제2 인증 메타 데이터를 얻는다. 여기서, 상기 암호화는 지정 암호화 방식을 사용하여 암호화 파일을 얻을 수 있으며, 제2 인증 메타 데이터를 획득한 이후, 지정 암호화 방식과 제2 인증 메타 데이터에 근거하여 암호화된 데이터의 일치성을 검증할 수 있다.
단계 S400에서는, 상기 제1 해시 함수, 상기 제1 인증 메타 데이터, 상기 제2 인증 메타 데이터를 기반으로 콘텐츠 기술자를 생성한다. 여기서, 상기 제1 해시 함수는 이와 대응되는 유형 정보를 콘텐츠 기술자에 인코딩하기만 하면 된다. 어떠한 원본 데이터에 대해서도 사용한 제1 해시 함수, 제2 해시 함수, 제2 인증 메타 데이터가 동일하다면, 동일한 원본 데이터가 동일한 암호화 방식을 거치게 되고 동일한 암호화 결과를 얻는다. 그러나, 원본 데이터를 알고 있는 경우에만 암호화 키를 알 수 있다. 콘텐츠 기술자에 기반하여, 일반 사람들은 본 출원의 제1 해시 함수 명칭, 제2 해시 함수 명칭, 제1 인증 메타 데이터 및 제2 인증 메타 데이터를 알 수 있으며, 이러한 콘텐츠 기술자를 통해 원본 데이터에서 사용자 프라이버시를 해석하지 않고도, 직접 암호화된 파일 데이터에 대해 대응 검색을 진행할 수 있고, 중복되는 암호화 데이터를 식별하기 용이하며, 중복 암호화 데이터의 삭제 및 검색을 실현할 수 있으며, 확장성과 하위 호환성을 향상시키며, 다른 시스템에 적용할 수 있다.
단계 S500에서, 상기 암호화 파일, 상기 제1 인증 메타 데이터 및 상기 제2 인증 메타 데이터를 상기 콘텐츠 기술자를 식별정보로 사용하는 파일에 저장하여 암호화 저장 파일을 얻는다. 여기서, 상기 암호화 저장 파일은 지정 양식 저장 파일일 수 있고, 상기 지정 양식 저장 파일에 상기 암호화 파일, 상기 제1 인증 메타 데이터 및 상기 제2 인증 메타 데이터가 포함된다. 상기 제1 인증 메타 데이터 및 상기 제2 인증 메타 데이터를 상기 콘텐츠 기술자에 기록하여, 상기 콘텐츠 기술자를 식별정보로 사용하여 상기 암호화 파일을 식별하고, 지정 양식으로 저장된 암호화 저장 파일을 획득한다.
도 2는 본 출원의 바람직한 일 실시예의 지정 양식 암호화 저장 파일 설명도이다. 상기 지정 양식의 암호화 저장 파일은 원본 데이터와 원본 데이터의 해시정보로 구성된다. 인증 메타 데이터는 원본 데이터의 일치성 및 완전성을 검증하는 역할을 한다. 또한 파일 콘텐츠 기술자(Cid)를 도입하여 파일 암호화 전과 후의 고유 식별로 삼고, Cid정보에는 인증 메타 데이터가 포함될 수 있다.
본 출원의 바람직한 일 실시예에서, 단계 S300에서는, 상기 암호화 키와 지정 암호화 함수를 기반으로 원본 데이터를 저장하는 원본 파일을 암호화하고, 지정 암호화된 암호화 파일을 생성한다. 여기서, 상기 지정 암호화 방식은 대칭 데이터 암호화 방식일 수 있고, 상기 암호화 키와 대칭 데이터 암호화 함수를 기반으로 원본 데이터를 저장하는 원본 파일을 암호화하고, 대칭 암호화된 암호화 파일을 생성한다.
본 출원의 바람직한 일 실시예에서, 단계 S300에서는, 상기 제2 해시 함수를 기반으로 상기 지정 암호화된 암호화 파일을 해시 계산하여 제 2 인증 메타 데이터를 얻고, 상기 제1 해시 함수, 상기 제1 인증 메타 데이터, 상기 제2 인증 메타 데이터 및 상기 지정 암호화 함수를 기반으로 콘텐츠 기술자를 생성한다. 여기서, 상기 지정 암호화 함수는 이에 대응되는 암호화 함수 유형만을 콘텐츠 기술자에 인코딩하여 콘텐츠 기술자의 콘텐츠를 더 단순화할 수 있다. 본 출원에서, 사용되는 암호화 방식, 해시 함수 모두 누구나 획득할 수 있는 데이터이지만, 암호화할 원본 데이터를 알고 있는 경우에만 암호화된 데이터 파일을 암호 해제할 수 있다.
본 출원의 바람직한 일 실시예에서, 단계 S300에서는, 상기 제1 해시 함수, 상기 제2 해시 함수, 상기 제1 인증 메타 데이터, 상기 제2 인증 메타 데이터 및 상기 지정 암호화 함수를 기반으로 콘텐츠 기술자를 생성한다. 여기서, 제1 해시 함수의 유형 정보, 상기 제2 해시 함수의 유형 정보, 상기 제1 인증 메타 데이터, 상기 제2 인증 메타 데이터 및 상기 지정 암호화 함수에 대응하는 암호화 함수 유형을 콘텐츠 기술자에 인코딩할 수 있다. 이러한 콘텐츠 기술자를 통해 원본 데이터에서 사용자 프라이버시를 해석하지 않고도, 직접 암호화된 파일 데이터 대응 검색을 진행할 수 있고, 중복되는 암호화 데이터를 식별하기 용이하며, 중복 암호화 데이터의 삭제 및 검색을 실현할 수 있으며, 확장성과 하위 호환성을 향상시키며, 다른 시스템에 적용할 수 있다.
도 3은 본 출원의 바람직한 일 실시예의 콘텐츠 기술자 획득 방법의 흐름도이다. 제1 해시 함수를 해시 알고리즘(H1)으로, 제2 해시 함수를 해시 알고리즘(H2)으로, 제1 인증 메타 데이터를 인증 메타 데이터(Id)로, 제2 인증 메타 데이터 EncID로 식별한다. 파일 원본 데이터(D)를 기초로 제1 해시 함수를 사용하여 계산한 후 파일 암호화 키(key)를 얻고, 대칭 암호화 알고리즘(Enc) 및 파일 암호화 키를 사용하여 상기 파일 원본 데이터(D) 암호화하여 파일 암호화 데이터(G)를 획득한다. 상기 파일 원본 데이터(D)에 대하여 해시 알고리즘(H2)을 사용하여 계산한 후 인증 메타 데이터(Id)를 획득하고, 상기 인증 메타 데이터(Id)를 인코딩한 후 D'Id를 획득하고 파일 콘텐츠 기술자(Cid)에 기입한다. 이어서 해시 알고리즘(H1)의 알고리즘 유형 정보ID(H1)를 D'Id를 포함하는 콘텐츠 기술자에 기입한다. 대칭 암호화 알고리즘 유형(Enc)을 인코딩한 후 획득한 ID(Enc)를 ID(H1)와 D'Id를 포함하는 콘텐츠 기술자에 기입한다. 해시 알고리즘(H2)의 알고리즘 유형 정보ID(H2)를 ID(Enc), ID(H1) 및 D'Id를 포함하는 콘텐츠 기술자에 기입하고, 최종적으로 획득하는 Cid는 다음을 만족한다. Cid=ID(H2)||ID(Enc)||ID(H1)||D'Id. 설명해 둘 것은, 본 실시예에서 ID는 상수 정의이며, 확장을 지원하고, 다른 알고리즘을 정의하는데 사용된다. 각 단계의 해시 알고리즘은 모두 대체 가능하여 하위 호환을 효과적으로 실현한다.
본 출원의 바람직한 일 실시예에서, 상기 콘텐츠 기술자를 사용자에게 발송하고 상기 사용자가 상기 콘텐츠 기술자를 기반으로 상기 암호화 저장 파일을 검색한 검색 결과를 획득한다. 여기서 사용자는 콘텐츠 기술자를 획득한 후에 암호화 파일에 대해 검색을 진행할 수 있다.
본 출원의 바람직한 일 실시예에서, 상기 사용자가 상기 콘텐츠 기술자를 기반으로 상기 암호화 저장 파일을 검색한 검색 결과를 획득한 후에, 상기 검색 결과 상기 암호화 저장 파일이 검색되었으면, 상기 암호화 저장 파일에 압축 풀기를 진행하여 암호화 파일 및 제2 인증 메타 데이터를 얻고; 상기 제2 인증 메타 데이터 및 상기 콘텐츠 기술자의 제2 해시 함수에 따라 상기 암호화 파일을 검증하여 검증 결과를 얻고; 상기 검증 결과에 기반하여 상기 암호화 키 및 상기 콘텐츠 기술자의 지정 암호화 함수를 사용하여 검증에 통과한 암호화 파일에 대해 암호 해제를 진행하여 원본 파일을 얻고; 상기 콘텐츠 기술자의 제1 해시 함수 및 제1 인증 메타 데이터에 따라 상기 원본 파일을 검증하여 검증에 통과한 원본 파일을 사용자에게 피드백한다. 여기서, 콘텐츠 기술자에 기반하여 사용자가 암호화 파일을 검색하고 및 암호 해제할 수 있으며, 중복 암호화 데이터를 식별하기 편리하고, 중복 암호화 데이터의 삭제 및 검색을 실현할 수 있으며, 확장성과 하위 호환성을 향상시키며, 다른 시스템에 적용할 수 있다.
도 4는 본 출원의 바람직한 일 실시예의 암호화 저장 파일의 암호화 저장 및 검색 응용 상황 설명도이다. 여기서 상기 제1 해시 함수는 바람직하게 키 생성 알고리즘(H1)이고, 상기 제2 해시 함수 바람직하게 데이터 지문 알고리즘(H2)이다. 사용자는 원본 데이터(D)를 획득한 후, 키 생성 알고리즘(H1), 데이터 지문 알고리즘(H2) 및 데이터 암호화 알고리즘(Enc)에 따라 원본 데이터(D)에 대해 암호화 저장 처리한다. 먼저 원본 데이터(D)와 데이터 지문 알고리즘(H2)에 따라 지문정보(Id)를 생성하고, H1알고리즘을 사용하여 원본 데이터(D)를 계산하여 키(Key)를 생성하고, Enc 및 key를 사용하여 업로드할 파일(D)을 파일(G)로 암호화하고, 해시 알고리즘(H2)을 사용하여 파일(G)의 EncID를 계산하여 파일(G)의 일치성을 검증하는데 사용한다. H1, H2, Enc 및 지문정보(Id)를 기반으로 파일 콘텐츠 기술자(Cid)를 생성하는데, 이때 Cid가 존재하는지 여부를 판단하여, 존재한다면 파일(G) 및 EncID를 자체 인증 저장 양식의 파일(F)로 저장하고 하드 디스크와 같은 대응되는 저장 위치에 저장한다. 만약 Cid가 존재하지 않을 경우 새롭게 Cid를 생성한다.
상기 실시예에 따르면, 사용자가 Cid를 사용하여 파일을 검색한 후, 대응되는 파일 대상이 존재할 경우, 상기 Cid에 따라 파일(F)을 획득할 수 있다. 파일(F)을 압축 풀기한 후, 파일(G) 및 자체 인증 정보(EncID)를 획득하고, EncID, Cid의 해시 알고리즘(H2)에 따라 파일(G)의 완전성을 검증하고, 키(Key), Cid의 암호화 알고리즘(Enc)을 사용하여 파일(G)를 암호 해제하여 파일(D)를 얻는다. Cid의 Id에 따라 파일(D)의 완전성을 검증하여, 검증 통과하면, 사용자에 파일(D)를 피드백한다.
본 출원의 실시예는 또한 컴퓨터 판독가능 매체로서, 프로세서에 의해 실행되어 전술한 암호화 데이터를 저장하는 방법을 실현할 수 있는 컴퓨터 판독가능 명령어를 저장하는 컴퓨터 판독가능 매체를 제공한다.
위에서 서술한 방법에 대응하여, 본 출원은 상기 도 1, 2, 3, 4 또는 각각의 실시예에 기재된 상기 방법 단계를 실행할 수 있는 모듈이나 유닛을 포함하는 단말을 더 제공한다. 이러한 모듈이나 유닛은 하드웨어, 소프트웨어 또는 소프트웨어와 하드웨어의 조합의 방식으로 구현될 수 있으며, 본 출원은 이를 한정하지 않는다. 예를 들어, 본 출원의 일 실시예는, 암호화 데이터를 저장하는 장치를 더 제공한다. 상기 장치는 하나 이상의 프로세서; 및 컴퓨터 판독가능 명령어를 저장하는 메모리를 포함하고, 상기 컴퓨터 판독가능 명령어는 실행될 때 상기 프로세서가 전술한 암호화 데이터를 저장하는 방법을 실행하는 조작을 하도록 한다.
예를 들어, 컴퓨터 판독가능 명령어가 실행될 때 상기 하나 이상의 프로세서는: 암호화할 원본 데이터를 획득하고, 제1 해시 함수를 사용하여 상기 암호화할 원본 데이터를 해시 처리하고, 암호화 키를 생성하고; 제2 해시 함수를 사용하여 상기 암호화할 원본 데이터를 해시 계산하여 제 1 인증 메타 데이터를 얻고; 상기 암호화 키를 기반으로, 원본 데이터를 저장하는 원본 파일을 암호화하여 암호화 파일을 생성하고, 상기 제2 해시 함수를 기반으로 상기 암호화 파일을 해시 계산하여 제 2 인증 메타 데이터를 얻고; 상기 제1 해시 함수, 상기 제1 인증 메타 데이터, 상기 제2 인증 메타 데이터를 기반으로 콘텐츠 기술자를 생성하고; 상기 암호화 파일, 상기 제1 인증 메타 데이터 및 상기 제2 인증 메타 데이터를 상기 콘텐츠 기술자를 식별정보로 사용하는 파일에 저장하여 암호화 저장 파일을 얻도록 한다.
도 5는 본 출원 다른 측면에 따라 제공되는 암호화 데이터를 저장하는 시스템의 프레임의 구조 설명도이다. 상기 시스템은 데이터 획득 모듈(100), 데이터 처리 모듈(200), 데이터 암호화 모듈(300), 데이터 식별 모듈(400) 및 데이터 저장 모듈(500)을 포함한다. 상기 데이터 획득 모듈(100)은 암호화할 원본 데이터를 획득하고, 제1 해시 함수를 사용하여 상기 암호화할 원본 데이터를 해시 처리하고, 암호화 키를 생성한다; 상기 데이터 처리 모듈(200)은 제2 해시 함수를 사용하여 상기 암호화할 원본 데이터를 해시 계산하여 제 1 인증 메타 데이터를 얻는다; 상기 데이터 암호화 모듈(300)은 상기 암호화 키를 기반으로, 원본 데이터를 저장하는 원본 파일을 암호화하여 암호화 파일을 생성하고, 상기 제2 해시 함수를 기반으로 상기 암호화 파일을 해시 계산하여 제 2 인증 메타 데이터를 얻는다; 상기 데이터 식별 모듈(400)은 상기 제1 해시 함수, 상기 제1 인증 메타 데이터, 상기 제2 인증 메타 데이터를 기반으로 콘텐츠 기술자를 생성한다; 상기 데이터 저장 모듈(500)은 상기 암호화 파일, 상기 제1 인증 메타 데이터 및 상기 제2 인증 메타 데이터를 상기 콘텐츠 기술자를 식별정보로 사용하는 파일에 저장하여 암호화 저장 파일을 얻는다. 따라서 암호화 데이터에 대해 중복 데이터 삭제와 검색이 가능하고, 사용자 파일 콘텐츠들을 비교할 필요가 없어 사용자의 프라이버시 정보를 보호하고, 확장성과 하위 호환성을 향상시키며, 다른 시스템에 적용할 수 있다.
상기 데이터 획득 모듈(100), 상기 데이터 처리 모듈(200), 상기 데이터 암호화 모듈(300), 상기 데이터 식별 모듈(400) 및 상기 데이터 저장 모듈(500)의 실행에 대한 내용은 각각 상기 단계S100, S200, S300 S400 및 S500의 내용과 동일하거나 상응하게 동일하여 여기서는 간결성을 위해 반복하여 설명하지 않음을 알려둔다.
본 출원의 바람직한 일 실시예에서, 상기 데이터 저장 모듈(500)은 또한 상기 콘텐츠 기술자를 사용자에게 발송하고 상기 사용자가 상기 콘텐츠 기술자를 기반으로 상기 암호화 저장 파일을 검색한 검색 결과를 획득한다.
본 출원의 바람직한 일 실시예에서, 상기 데이터 처리 모듈(200)은 또한 상기 검색 결과 상기 암호화 저장 파일이 검색되었으면, 상기 암호화 저장 파일에 압축 풀기를 진행하여 암호화 파일 및 제2 인증 메타 데이터를 얻고; 상기 제2 인증 메타 데이터 및 상기 콘텐츠 기술자의 제2 해시 함수에 따라 상기 암호화 파일을 검증하여 검증 결과를 얻고; 상기 검증 결과에 기반하여 상기 암호화 키 및 상기 콘텐츠 기술자의 지정 암호화 함수를 사용하여 검증에 통과한 암호화 파일에 대해 암호 해제를 진행하여 원본 파일을 얻고; 상기 콘텐츠 기술자의 제1 해시 함수 및 제1 인증 메타 데이터에 따라 상기 원본 파일을 검증하여 검증에 통과한 원본 파일을 사용자에게 피드백한다.
상기 데이터 처리 모듈(200) 및 상기 데이터 저장 모듈(500)의 실행에 대한 내용은 각각 상기 방법 실시예에서 대응되는 실행 내용과 동일하거나 상응하게 동일하여 여기서는 간결성을 위해 반복하여 설명하지 않음을 알려둔다.
물론, 통상의 기술자는 본 출원의 사상이나 범위를 벗어나지 않는 한, 본 출원에 대해 다양한 변경과 변형을 가할 수 있다. 이로써, 본 출원의 이러한 수정과 변형이 본 출원의 청구범위 및 이의 등가적 기술 범위에 포함된다면, 본 출원도 이러한 변경 및 변형을 포함하도록 의도된 것이다.
본 출원은 소프트웨어 및/또는 소프트웨어와 하드웨어의 조합으로 구현될 수 있음을 주의해야 한다. 예를 들어, 주문형 집적 회로(ASIC), 범용 컴퓨터, 또는 임의의 다른 유사한 하드웨어 디바이스를 사용하여 구현될 수 있다. 일 실시예에서, 본 출원의 소프트웨어 프로그램은 전술한 단계나 기능을 구현하기 위해 프로세서에 의해 실행될 수 있다. 마찬가지로, 본 출원에서의 소프트웨어 프로그램(관련 데이터 구조를 포함함)은 컴퓨터 판독가능 저장 매체, 예를 들어, RAM 메모리, 자기 또는 광학 드라이브, 또는 플로피 디스크 및 유사한 디바이스에 저장될 수 있다. 또한, 본 출원의 일부 단계나 기능은 하드웨어, 예를 들어, 프로세서와 협력하여 단계 또는 기능을 실행하는 회로를 사용하여 구현될 수 있다.
또한, 본 출원의 일부는 컴퓨터 프로그램 명령어와 같은 컴퓨터 프로그램 제품으로서 구현될 수 있다. 컴퓨터 프로그램 명령어가 컴퓨터에 의해 실행될 때, 본 출원에 따른 방법 및/또는 기술 방안은 컴퓨터의 동작에 의해 호출되거나 제공될 수 있다. 또한, 본 출원의 방법을 호출하기 위한 프로그램 명령어는 고정식 또는 착탈식 기록 매체에 저장될 수 있고/있거나, 방송 또는 기타 신호 포함 매체의 데이터 흐름에 의해 전송될 수 있고/있거나, 상기 프로그램 명령어에 따라 운행하는 컴퓨터 디바이스의 작업 메모리에 저장된다. 여기서, 본 출원에 따른 일 실시예는 컴퓨터 프로그램 명령어를 저장하도록 구성된 메모리와 컴퓨터 프로그램 명령어를 실행하도록 구성된 프로세서를 구비하는 장치를 포함하고, 컴퓨터 프로그램 명령어가 프로세서에 의해 실행될 때, 컴퓨터 프로그램 명령어는 전술한 본 출원에 따른 복수의 실시예에의 방법 및/또는 기술 방안에 기초하여 장치가 운행하도록 촉발한다.
본 출원은 전술한 예시적인 실시예의 세부사항으로 한정되지 않으며, 본 출원은 본 출원의 사상과 기본적 특징을 벗어나지 않고서 다른 특정 형태로 구현될 수 있음은 당업자에게 자명하다. 따라서, 어떤 관점에서 보아도 실시예는 예시적이고 비제한적인 것으로 간주되어야 하며, 본 출원의 범위는 상기 설명이 아닌 첨부된 청구항에 의해 한정된다. 따라서, 본 출원은 청구항의 등가 요소의 의미 및 범위 내의 모든 변경을 포함한다. 청구항에서의 어떤 참조 번호도 관련 청구항에 대한 제한으로 간주되어서는 안된다. 또한, "포함하다"라는 단어는 다른 유닛 또는 단계를 배제하지 않으며, 단수 형태는 복수 형태를 배제하지 않는다는 것이 명백하다. 장치 청구항에서 기재된 복수의 유닛이나 장치는 하나의 유닛 또는 장치으로 소프트웨어 또는 하드웨어를 사용함으로써 구현될 수 있다. "제1" 및 "제2"와 같은 용어는 명칭을 나타내는데 사용된 것이며, 임의의 특정 시퀀스를 나타내지는 않는다.

Claims (9)

  1. 암호화 데이터를 저장하는 방법에 있어서,
    암호화할 원본 데이터를 획득하고, 제1 해시 함수를 사용하여 상기 암호화할 원본 데이터를 해시 처리하고, 암호화 키를 생성하는 단계;
    제2 해시 함수를 사용하여 상기 암호화할 원본 데이터를 해시 계산하여 제 1 인증 메타 데이터를 얻는 단계;
    상기 암호화 키를 기반으로, 원본 데이터를 저장하는 원본 파일을 암호화하여 암호화 파일을 생성하고, 상기 제2 해시 함수를 기반으로 상기 암호화 파일을 해시 계산하여 제 2 인증 메타 데이터를 얻는 단계;
    상기 제1 해시 함수, 상기 제1 인증 메타 데이터, 상기 제2 인증 메타 데이터를 기반으로 콘텐츠 기술자를 생성하는 단계;
    상기 암호화 파일, 상기 제1 인증 메타 데이터 및 상기 제2 인증 메타 데이터를 상기 콘텐츠 기술자를 식별정보로 사용하는 파일에 저장하여 암호화 저장 파일을 얻는 단계
    를 포함하는,
    암호화 데이터를 저장하는 방법.
  2. 제1항에 있어서,
    상기 암호화 키를 기반으로, 원본 데이터를 저장하는 원본 파일을 암호화하여 암호화 파일을 생성하는 단계는,
    상기 암호화 키와 지정 암호화 함수를 기반으로 원본 데이터를 저장하는 원본 파일을 암호화하고, 지정 암호화된 암호화 파일을 생성하는 단계를 포함하는,
    암호화 데이터를 저장하는 방법.
  3. 제2항에 있어서,
    상기 제2 해시 함수를 기반으로 상기 암호화 파일을 해시 계산하여 제 2 인증 메타 데이터를 얻는 단계는,
    상기 제2 해시 함수를 기반으로 상기 지정 암호화된 암호화 파일을 해시 계산하여 제 2 인증 메타 데이터를 얻는 단계를 포함하고,
    상기 제1 해시 함수, 상기 제1 인증 메타 데이터, 상기 제2 인증 메타 데이터를 기반으로 콘텐츠 기술자를 생성하는 단계는,
    상기 제1 해시 함수, 상기 제1 인증 메타 데이터, 상기 제2 인증 메타 데이터 및 상기 지정 암호화 함수를 기반으로 콘텐츠 기술자를 생성하는 단계를 포함하는,
    암호화 데이터를 저장하는 방법.
  4. 제3항에 있어서,
    상기 제1 해시 함수, 상기 제1 인증 메타 데이터, 상기 제2 인증 메타 데이터를 기반으로 콘텐츠 기술자를 생성하는 단계는,
    상기 제1 해시 함수, 상기 제2 해시 함수, 상기 제1 인증 메타 데이터, 상기 제2 인증 메타 데이터 및 상기 지정 암호화 함수를 기반으로 콘텐츠 기술자를 생성하는 단계를 포함하는,
    암호화 데이터를 저장하는 방법.
  5. 제4항에 있어서,
    상기 콘텐츠 기술자를 사용자에게 발송하고 상기 사용자가 상기 콘텐츠 기술자를 기반으로 상기 암호화 저장 파일을 검색한 검색 결과를 획득하는 단계를 포함하는, 암호화 데이터를 저장하는 방법.
  6. 제5항에 있어서,
    상기 사용자가 상기 콘텐츠 기술자를 기반으로 상기 암호화 저장 파일을 검색한 검색 결과를 획득하는 단계 후에,
    상기 검색 결과 상기 암호화 저장 파일이 검색되었으면, 상기 암호화 저장 파일에 압축 풀기를 진행하여 암호화 파일 및 제2 인증 메타 데이터를 얻는 단계;
    상기 제2 인증 메타 데이터 및 상기 콘텐츠 기술자의 제2 해시 함수에 따라 상기 암호화 파일을 검증하여 검증 결과를 얻는 단계;
    상기 검증 결과에 기반하여 상기 암호화 키 및 상기 콘텐츠 기술자의 지정 암호화 함수를 사용하여 검증에 통과한 암호화 파일에 대해 암호 해제를 진행하여 원본 파일을 얻는 단계;
    상기 콘텐츠 기술자의 제1 해시 함수 및 제1 인증 메타 데이터에 따라 상기 원본 파일을 검증하여 검증에 통과한 원본 파일을 사용자에게 피드백하는 단계를 포함하는, 암호화 데이터를 저장하는 방법.
  7. 데이터 획득 모듈, 데이터 처리 모듈, 데이터 암호화 모듈, 데이터 식별 모듈 및 데이터 저장 모듈을 포함하는 암호화 데이터를 저장하는 시스템에 있어서,
    상기 데이터 획득 모듈은 암호화할 원본 데이터를 획득하고, 제1 해시 함수를 사용하여 상기 암호화할 원본 데이터를 해시 처리하고, 암호화 키를 생성하고,
    상기 데이터 처리 모듈은 제2 해시 함수를 사용하여 상기 암호화할 원본 데이터를 해시 계산하여 제 1 인증 메타 데이터를 얻고,
    상기 데이터 암호화 모듈은 상기 암호화 키를 기반으로, 원본 데이터를 저장하는 원본 파일을 암호화하여 암호화 파일을 생성하고, 상기 제2 해시 함수를 기반으로 상기 암호화 파일을 해시 계산하여 제 2 인증 메타 데이터를 얻고,
    상기 데이터 식별 모듈은 상기 제1 해시 함수, 상기 제1 인증 메타 데이터, 상기 제2 인증 메타 데이터를 기반으로 콘텐츠 기술자를 생성하고,
    상기 데이터 저장 모듈은 상기 암호화 파일, 상기 제1 인증 메타 데이터 및 상기 제2 인증 메타 데이터를 상기 콘텐츠 기술자를 식별정보로 사용하는 파일에 저장하여 암호화 저장 파일을 얻는, 암호화 데이터를 저장하는 시스템.
  8. 컴퓨터 판독가능 매체로서, 프로세서에 의해 실행되어 제1항 내지 제6항 중 어느 한 항의 방법을 실현할 수 있는 컴퓨터 판독가능 명령어를 저장하는 컴퓨터 판독가능 매체.
  9. 암호화 데이터를 저장하는 장치로서,
    하나 이상의 프로세서;및
    컴퓨터 판독가능 명령어를 저장하는 메모리를 포함하고,
    상기 컴퓨터 판독가능 명령어는 실행될 때 상기 프로세서가 제1항 내지 제6항 중 어느 한 항의 방법을 실행하는 조작을 하도록 하는 장치.
KR1020210187519A 2020-12-25 2021-12-24 암호화 데이터를 저장하는 방법 및 장치 KR20220092811A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202011567499.6 2020-12-25
CN202011567499.6A CN112685753B (zh) 2020-12-25 2020-12-25 一种用于加密数据存储的方法及设备

Publications (1)

Publication Number Publication Date
KR20220092811A true KR20220092811A (ko) 2022-07-04

Family

ID=75453417

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210187519A KR20220092811A (ko) 2020-12-25 2021-12-24 암호화 데이터를 저장하는 방법 및 장치

Country Status (5)

Country Link
US (1) US20220209945A1 (ko)
EP (1) EP4020265A1 (ko)
JP (1) JP2022103117A (ko)
KR (1) KR20220092811A (ko)
CN (1) CN112685753B (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102657163B1 (ko) * 2023-06-09 2024-04-15 인스피언 주식회사 데이터 관리 장치, 데이터 관리 방법 및 데이터 관리 프로그램을 저장하는 컴퓨터로 판독 가능한 저장 매체

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11595190B2 (en) * 2021-01-27 2023-02-28 Dell Products L.P. Encrypted data storage system
CN117763593B (zh) * 2024-02-21 2024-05-07 电子科技大学 隐藏模式的多关键词对称可搜索加密方法、终端及服务器

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4872512B2 (ja) * 2006-08-02 2012-02-08 ソニー株式会社 記憶装置、記憶制御方法、並びに、情報処理装置および方法
US8041641B1 (en) * 2006-12-19 2011-10-18 Symantec Operating Corporation Backup service and appliance with single-instance storage of encrypted data
US8856534B2 (en) * 2010-05-21 2014-10-07 Intel Corporation Method and apparatus for secure scan of data storage device from remote server
JP2014507841A (ja) * 2011-01-07 2014-03-27 トムソン ライセンシング オンラインストレージのための装置及び方法、送信装置及び方法並びに受信装置及び方法
US9037856B2 (en) * 2012-07-18 2015-05-19 Nexenta Systems, Inc. System and method for distributed deduplication of encrypted chunks
US9372998B2 (en) * 2014-10-07 2016-06-21 Storagecraft Technology Corporation Client-side encryption in a deduplication backup system
CN104580487A (zh) * 2015-01-20 2015-04-29 成都信升斯科技有限公司 一种海量数据存储系统及处理方法
CN104601579A (zh) * 2015-01-20 2015-05-06 成都市酷岳科技有限公司 一种保障信息安全的计算机系统及其方法
KR102450295B1 (ko) * 2016-01-04 2022-10-04 한국전자통신연구원 암호 데이터의 중복 제거 방법 및 장치
CN107294937B (zh) * 2016-04-11 2020-11-24 平安科技(深圳)有限公司 基于网络通信的数据传输方法、客户端及服务器
CN106612172B (zh) * 2016-07-15 2019-09-17 李福帮 云存储中一种可验证还原数据真实性的数据篡改恢复算法
CN106611128A (zh) * 2016-07-19 2017-05-03 四川用联信息技术有限公司 云存储中基于二次加密的数据验证和数据恢复算法
CN107707600B (zh) * 2017-05-26 2018-09-18 贵州白山云科技有限公司 一种数据存储方法及装置
CN107888591B (zh) * 2017-11-10 2020-02-14 国信嘉宁数据技术有限公司 一种电子数据保全的方法及系统
CN109905351B (zh) * 2017-12-08 2021-02-26 北京京东尚科信息技术有限公司 存储数据的方法、装置、服务器和计算机可读存储介质
CN111435913B (zh) * 2019-01-14 2022-04-08 海信集团有限公司 一种物联网终端的身份认证方法、装置和存储介质

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102657163B1 (ko) * 2023-06-09 2024-04-15 인스피언 주식회사 데이터 관리 장치, 데이터 관리 방법 및 데이터 관리 프로그램을 저장하는 컴퓨터로 판독 가능한 저장 매체

Also Published As

Publication number Publication date
JP2022103117A (ja) 2022-07-07
CN112685753B (zh) 2023-11-28
US20220209945A1 (en) 2022-06-30
CN112685753A (zh) 2021-04-20
EP4020265A1 (en) 2022-06-29

Similar Documents

Publication Publication Date Title
US20210099287A1 (en) Cryptographic key generation for logically sharded data stores
US10586057B2 (en) Processing data queries in a logically sharded data store
JP6306077B2 (ja) 暗号化データのコミュニティベース重複排除
Li et al. A hybrid cloud approach for secure authorized deduplication
Kaaniche et al. A secure client side deduplication scheme in cloud storage environments
JP6180177B2 (ja) プライバシーを保護することができる暗号化データの問い合わせ方法及びシステム
US7313694B2 (en) Secure file access control via directory encryption
CN107948152B (zh) 信息存储方法、获取方法、装置及设备
KR20220092811A (ko) 암호화 데이터를 저장하는 방법 및 장치
CA3065767C (en) Cryptographic key generation for logically sharded data stores
CN115225409B (zh) 基于多备份联合验证的云数据安全去重方法
Virvilis et al. A cloud provider-agnostic secure storage protocol
Almrezeq ‏ An Enhanced Approach to Improve the Security and Performance for Deduplication
JP2019207281A (ja) 大小判定サーバ、大小判定暗号化システム、及び大小判定方法
Mahalakshmi et al. Effectuation of secure authorized deduplication in hybrid cloud
WO2023216987A1 (zh) 容器镜像构建方法及装置
Thota et al. Split key management framework for Open Stack Swift object storage cloud
CN115694921B (zh) 一种数据存储方法、设备及介质
Gonthireddy et al. Secure Big Data Deduplication with Dynamic Ownership Management in Cloud Computing
Baligodugula et al. A Comparative Study of Secure and Efficient Data Duplication Mechanisms for Cloud-Based IoT Applications
CN111526146B (zh) 数据持有验证方法、数据搜索方法及相应的系统
CN117235767A (zh) 一种文档管理方法、装置、电子设备及可读存储介质
Gao et al. Similarity-based Secure Deduplication for IIoT Cloud Management System
CN115694921A (zh) 一种数据存储方法、设备及介质
Rishi et al. Record Suppression with Personalized Security System

Legal Events

Date Code Title Description
A201 Request for examination