KR20200136629A - 종단간 암호화가 적용된 파일에 대한 복호화 장치 및 방법 - Google Patents

종단간 암호화가 적용된 파일에 대한 복호화 장치 및 방법 Download PDF

Info

Publication number
KR20200136629A
KR20200136629A KR1020190062397A KR20190062397A KR20200136629A KR 20200136629 A KR20200136629 A KR 20200136629A KR 1020190062397 A KR1020190062397 A KR 1020190062397A KR 20190062397 A KR20190062397 A KR 20190062397A KR 20200136629 A KR20200136629 A KR 20200136629A
Authority
KR
South Korea
Prior art keywords
encrypted file
decryption
encrypted
file
user account
Prior art date
Application number
KR1020190062397A
Other languages
English (en)
Other versions
KR102216869B1 (ko
Inventor
김종성
이세훈
허욱
김기윤
Original Assignee
국민대학교산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 국민대학교산학협력단 filed Critical 국민대학교산학협력단
Priority to KR1020190062397A priority Critical patent/KR102216869B1/ko
Publication of KR20200136629A publication Critical patent/KR20200136629A/ko
Application granted granted Critical
Publication of KR102216869B1 publication Critical patent/KR102216869B1/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/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/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • 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/6209Protecting access to data via a platform, e.g. using keys or access control rules to a single file or object, e.g. in a secure envelope, encrypted and accessed using a key, or with access control rules appended to the object itself
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0825Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/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
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0866Generation of secret information including derivation or calculation of cryptographic keys or passwords involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • General 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)
  • Health & Medical Sciences (AREA)
  • Storage Device Security (AREA)

Abstract

본 발명은 종단간 암호화가 적용된 파일에 대한 복호화 장치 및 방법에 관한 것으로, 상기 복호화 장치는 사용자 계정에 관한 개인키 및 공개키를 저장하는 제1 암호화 파일을 복호화하는 제1 암호화 파일 복호화부, 상기 제1 암호화 파일에 대한 복호화 결과를 기초로 상기 사용자 계정의 메시지를 암호화하기 위한 대칭키를 저장하는 제2 암호화 파일을 복호화하는 제2 암호화 파일 복호화부 및 상기 제2 암호화 파일에 대한 복호화 결과를 기초로 상기 사용자 계정의 메시지를 저장하는 제3 암호화 파일을 복호화하는 제3 암호화 파일 복호화부를 포함한다.

Description

종단간 암호화가 적용된 파일에 대한 복호화 장치 및 방법{APPARATUS AND METHOD FOR DECRYPTING END-TO-END ENCRYPTED FILES}
본 발명은 종단간 암호화가 적용된 파일에 대한 복호화 기술에 관한 것으로, 더욱 상세하게는 사용자들 간의 메시지에 대한 암호화 과정에서 사용되는 중요 정보를 획득할 수 있는 종단간 암호화가 적용된 파일에 대한 복호화 장치 및 방법에 관한 것이다.
모바일 인스턴트 메신저 애플리케이션은 사용자의 개인정보 보호를 위하여 모든 데이터를 암호화하고 메시지 전송 시에는 종단간 암호화(End-to-end encryption)을 제공하고 있다. 메시지 암호화에 사용되는 비밀키는 공개키 시스템을 통해 정당한 이용자들만 생성할 수 있으며, 생성된 비밀키들은 다시 한번 자신만의 패스워드에 의해 암호화되어 애플리케이션이 작동한 기기 내에 저장되거나 매회 공개키 시스템을 이용하여 유도된다.
디지털 포렌식 관점에서 암호화된 데이터의 정보를 알 수 없거나 또는 증거의 획득이 불가능한 경우 악의적인 범죄자들에 의해 악용될 소지가 다분하다. 따라서 암호화된 메신저에 대한 복호화 프로그램은 포렌식 수사에 도움이 될 수 있다.
한국등록특허 제10-0666708(2007.01.03)호
본 발명의 일 실시예는 사용자들 간의 메시지에 대한 암호화 과정에서 사용되는 중요 정보를 획득할 수 있는 종단간 암호화가 적용된 파일에 대한 복호화 장치 및 방법을 제공하고자 한다.
본 발명의 일 실시예는 원본 데이터의 훼손없이 증거 수집 및 사건 재구성이 가능하며 용의자가 패스워드를 제공하지 않는 경우에도 증거 수집이 가능한 종단간 암호화가 적용된 파일에 대한 복호화 장치 및 방법을 제공하고자 한다.
본 발명의 일 실시예는 사용자의 민감한 데이터를 순차적으로 복구하고 이를 토대로 사용자 패스워드를 최종 복구할 수 있는 종단간 암호화가 적용된 파일에 대한 복호화 장치 및 방법을 제공하고자 한다.
실시예들 중에서, 종단간(end to end) 암호화가 적용된 파일에 대한 복호화 장치는 사용자 계정에 관한 개인키 및 공개키를 저장하는 제1 암호화 파일을 복호화하는 제1 암호화 파일 복호화부, 상기 제1 암호화 파일에 대한 복호화 결과를 기초로 상기 사용자 계정의 메시지를 암호화하기 위한 대칭키를 저장하는 제2 암호화 파일을 복호화하는 제2 암호화 파일 복호화부 및 상기 제2 암호화 파일에 대한 복호화 결과를 기초로 상기 사용자 계정의 메시지를 저장하는 제3 암호화 파일을 복호화하는 제3 암호화 파일 복호화부를 포함한다.
상기 제1 및 제2 암호화 파일들은 상기 사용자 계정의 패스워드(password)와 적어도 하나의 중간값을 기초로 각각 생성된 비밀키를 이용하여 암호화된 데이터를 포함하고, 상기 암호화된 데이터는 상기 적어도 하나의 중간값과 순서대로 연접하여 저장될 수 있다.
상기 제1 암호화 파일은 상기 제1 암호화 파일이 저장되는 위치에 따라 결정되는 아이덴티티(identity) 값 및 상기 사용자 계정의 패스워드를 연접한 후 상기 적어도 하나의 중간값과 함께 해시 함수를 반복 적용함으로써 생성된 비밀키를 이용하여 암호화된 데이터를 포함할 수 있다.
상기 제2 암호화 파일은 상기 사용자 계정의 패스워드를 상기 적어도 하나의 중간값과 함께 해시 함수를 반복 적용함으로써 생성된 비밀키를 이용하여 암호화된 데이터를 포함하고, 상기 반복 적용의 횟수는 상기 제1 암호화 파일에 관한 반복 적용의 횟수와 상이할 수 있다.
상기 제2 암호화 파일 복호화부는 상기 제2 암호화 파일이 존재하지 않는 경우 상기 제1 암호화 파일의 복호화를 통해 획득한 상기 사용자 계정의 개인키와 상기 사용자 계정과 연관된 상대방의 공개키를 기초로 산출된 중간값에 해시 함수를 적용하여 상기 대칭키를 획득할 수 있다.
상기 제2 암호화 파일 복호화부는 상기 제2 암호화 파일에 대한 복호화를 통해 해시맵(hashmap) 객체를 획득하는 단계, 상기 해시맵 객체를 파싱하여 키(key)의 시작지점을 결정하는 단계 및 키와 밸류(value)를 분리하는 구분자(seperator)를 검색하여 사용자 계정별 대칭키를 획득하는 단계를 수행할 수 있다.
상기 제3 암호화 파일 복호화부는 상기 제3 암호화 파일에 저장된 메시지의 타입(type)을 판별하고 상기 메시지의 타입에 따라 암호화된 메시지를 복호화하여 원본 데이터를 획득할 수 있다.
상기 제3 암호화 파일 복호화부는 상기 메시지의 타입이 미디어(media)인 경우 데이터 링크(link)를 통해 상기 암호화된 메시지를 다운로드한 후 복호화를 수행하고, 상기 메시지의 타입이 지아이에프(gif)인 경우 상기 암호화된 메시지를 복호화한 결과로서 획득한 데이터 링크를 통해 상기 원본 데이터를 다운로드할 수 있다.
상기 종단간 암호화가 적용된 파일에 대한 복호화 장치는 상기 제1 암호화 파일 또는 상기 제2 암호화 파일을 이용하여 상기 사용자 계정의 패스워드를 복구하는 패스워드 복구부를 더 포함할 수 있다.
상기 패스워드 복구부는 후보 패스워드를 추정하는 단계, 추정된 상기 후보 패스워드를 기초로 후보키를 생성하는 단계, 상기 후보키를 대체 암호 알고리즘에 적용하여 상기 제1 암호화 파일 또는 상기 제2 암호화 파일의 특정 블록을 복호화하는 단계 및 상기 특정 블록에 대한 복호화 결과로서 획득한 데이터가 상기 제1 암호화 파일 또는 상기 제2 암호화 파일에 관한 고정 데이터와 일치하는 경우 상기 후보 패스워드를 상기 사용자 계정의 패스워드로 결정하는 단계를 수행할 수 있다.
실시예들 중에서, 종단간 암호화가 적용된 파일에 대한 복호화 방법은 사용자 계정에 관한 개인키 및 공개키를 저장하는 제1 암호화 파일을 복호화하는 단계, 상기 제1 암호화 파일에 대한 복호화 결과를 기초로 상기 사용자 계정의 메시지를 암호화하기 위한 대칭키를 저장하는 제2 암호화 파일을 복호화하는 단계 및 상기 제2 암호화 파일에 대한 복호화 결과를 기초로 상기 사용자 계정의 메시지를 저장하는 제3 암호화 파일을 복호화하는 단계를 포함한다.
개시된 기술은 다음의 효과를 가질 수 있다. 다만, 특정 실시예가 다음의 효과를 전부 포함하여야 한다거나 다음의 효과만을 포함하여야 한다는 의미는 아니므로, 개시된 기술의 권리범위는 이에 의하여 제한되는 것으로 이해되어서는 아니 될 것이다.
본 발명의 일 실시예에 따른 종단간 암호화가 적용된 파일에 대한 복호화 장치 및 방법은 원본 데이터의 훼손없이 증거 수집 및 사건 재구성이 가능하며 용의자가 패스워드를 제공하지 않는 경우에도 패스워드를 복구하여 증거 수집이 가능할 수 있다.
본 발명의 일 실시예에 따른 종단간 암호화가 적용된 파일에 대한 복호화 장치 및 방법은 사용자의 민감한 데이터를 순차적으로 복구하고 이를 토대로 사용자 패스워드를 최종 복구할 수 있다.
도 1은 본 발명에 따른 종단간 암호화가 적용된 파일에 대한 복호화 시스템의 구성을 설명하는 도면이다.
도 2는 도 1에 있는 복호화 장치의 물리적 구성을 설명하는 블록도이다.
도 3은 도 1에 있는 복호화 장치의 기능적 구성을 설명하는 블록도이다.
도 4는 도 1에 있는 복호화 장치에서 수행되는 종단간 암호화가 적용된 파일에 대한 복호화 과정을 설명하는 순서도이다.
도 5는 암호화 파일의 고정 데이터 및 패스워드 복구 알고리즘의 일 실시예를 설명하는 예시도이다.
도 6은 본 발명의 일 실시예에 따른 종단간 암호화가 적용된 파일에 대한 복호화 과정을 설명하는 순서도이다.
본 발명에 관한 설명은 구조적 내지 기능적 설명을 위한 실시예에 불과하므로, 본 발명의 권리범위는 본문에 설명된 실시예에 의하여 제한되는 것으로 해석되어서는 아니 된다. 즉, 실시예는 다양한 변경이 가능하고 여러 가지 형태를 가질 수 있으므로 본 발명의 권리범위는 기술적 사상을 실현할 수 있는 균등물들을 포함하는 것으로 이해되어야 한다. 또한, 본 발명에서 제시된 목적 또는 효과는 특정 실시예가 이를 전부 포함하여야 한다거나 그러한 효과만을 포함하여야 한다는 의미는 아니므로, 본 발명의 권리범위는 이에 의하여 제한되는 것으로 이해되어서는 아니 될 것이다.
한편, 본 출원에서 서술되는 용어의 의미는 다음과 같이 이해되어야 할 것이다.
"제1", "제2" 등의 용어는 하나의 구성요소를 다른 구성요소로부터 구별하기 위한 것으로, 이들 용어들에 의해 권리범위가 한정되어서는 아니 된다. 예를 들어, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다.
어떤 구성요소가 다른 구성요소에 "연결되어"있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결될 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어"있다고 언급된 때에는 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 한편, 구성요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한 복수의 표현을 포함하는 것으로 이해되어야 하고, "포함하다"또는 "가지다" 등의 용어는 실시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이며, 하나 또는 그 이상의 다른 특징이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
각 단계들에 있어 식별부호(예를 들어, a, b, c 등)는 설명의 편의를 위하여 사용되는 것으로 식별부호는 각 단계들의 순서를 설명하는 것이 아니며, 각 단계들은 문맥상 명백하게 특정 순서를 기재하지 않는 이상 명기된 순서와 다르게 일어날 수 있다. 즉, 각 단계들은 명기된 순서와 동일하게 일어날 수도 있고 실질적으로 동시에 수행될 수도 있으며 반대의 순서대로 수행될 수도 있다.
본 발명은 컴퓨터가 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현될 수 있고, 컴퓨터가 읽을 수 있는 기록 매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다. 컴퓨터가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장 장치 등이 있다. 또한, 컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산 방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.
여기서 사용되는 모든 용어들은 다르게 정의되지 않는 한, 본 발명이 속하는 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한 이상적이거나 과도하게 형식적인 의미를 지니는 것으로 해석될 수 없다.
도 1은 본 발명에 따른 종단간 암호화가 적용된 파일에 대한 복호화 시스템의 구성을 설명하는 도면이다.
도 1을 참조하면, 종단간 암호화가 적용된 파일에 대한 복호화 시스템(100)은 사용자 단말(110), 복호화 장치(130) 및 데이터베이스(150)를 포함할 수 있다.
사용자 단말(110)은 메신저를 통해 상대방과 메시지를 주고 받을 수 있는 컴퓨팅 장치에 해당할 수 있고, 스마트폰, 노트북 또는 컴퓨터로 구현될 수 있으며, 반드시 이에 한정되지 않고, 태블릿 PC 등 다양한 디바이스로도 구현될 수 있다. 사용자 단말(110)은 복호화 장치(130)와 네트워크를 통해 연결될 수 있고, 복수의 사용자 단말(110)들은 복호화 장치(130)와 동시에 연결될 수 있다.
복호화 장치(130)는 사용자 단말(110) 간의 메시지 통신 과정에서 암호화되는 중요 정보를 복호화할 수 있는 컴퓨터 또는 프로그램에 해당하는 서버로 구현될 수 있다. 복호화 장치(130)는 사용자 단말(110)과 블루투스, WiFi, 통신망 등을 통해 무선으로 연결될 수 있고, 네트워크를 통해 사용자 단말(110)과 데이터를 주고 받을 수 있다.
일 실시예에서, 복호화 장치(130)는 데이터베이스(150)와 연동하여 암호화된 파일을 복호화 하기 위하여 필요한 정보를 저장할 수 있다. 한편, 복호화 장치(130)는 도 1과 달리, 데이터베이스(150)를 내부에 포함하여 구현될 수 있다. 또한, 복호화 장치(130)는 프로세서, 메모리, 사용자 입출력부 및 네트워크 입출력부를 포함하여 구현될 수 있으며, 이에 대해서는 도 2에서 보다 자세히 설명한다.
데이터베이스(150)는 사용자 간에 주고 받은 메시지를 암호화하고 이를 기초로 중요 데이터를 복구하는 과정에서 필요한 다양한 정보들을 저장하는 저장장치에 해당할 수 있다. 데이터베이스(150)는 사용자 단말(110)로부터 상대방과 주고 받은 메시지 정보, 개인 정보 및 암호화에 사용된 대칭키 정보를 저장할 수 있고, 반드시 이에 한정되지 않고, 복호화 장치(130)가 암호화된 파일로부터 복호화하여 원본 메시지를 복구하는 과정에서 다양한 형태로 수집 또는 가공된 정보들을 저장할 수 있다.
도 2는 도 1에 있는 복호화 장치의 물리적 구성을 설명하는 블록도이다.
도 2를 참조하면, 복호화 장치(130)는 프로세서(210), 메모리(230), 사용자 입출력부(250) 및 네트워크 입출력부(270)를 포함하여 구현될 수 있다.
프로세서(210)는 사용자들 간의 메시지를 복호화하거나 또는 패스워드를 복구하는 과정에서의 각 동작들을 처리하는 각 프로시저를 실행할 수 있고, 그 과정 전반에서 읽혀지거나 작성되는 메모리(230)를 관리할 수 있으며, 메모리(230)에 있는 휘발성 메모리와 비휘발성 메모리 간의 동기화 시간을 스케줄할 수 있다. 프로세서(210)는 복호화 장치(130)의 동작 전반을 제어할 수 있고, 메모리(230), 사용자 입출력부(250) 및 네트워크 입출력부(270)와 전기적으로 연결되어 이들 간의 데이터 흐름을 제어할 수 있다. 프로세서(210)는 복호화 장치(130)의 CPU(Central Processing Unit)로 구현될 수 있다.
메모리(230)는 SSD(Solid State Drive) 또는 HDD(Hard Disk Drive)와 같은 비휘발성 메모리로 구현되어 복호화 장치(130)에 필요한 데이터 전반을 저장하는데 사용되는 보조기억장치를 포함할 수 있고, RAM(Random Access Memory)과 같은 휘발성 메모리로 구현된 주기억장치를 포함할 수 있다.
사용자 입출력부(250)는 사용자 입력을 수신하기 위한 환경 및 사용자에게 특정 정보를 출력하기 위한 환경을 포함할 수 있다. 예를 들어, 사용자 입출력부(250)는 터치 패드, 터치 스크린, 화상 키보드 또는 포인팅 장치와 같은 어댑터를 포함하는 입력장치 및 모니터 또는 터치스크린과 같은 어댑터를 포함하는 출력장치를 포함할 수 있다. 일 실시예에서, 사용자 입출력부(250)는 원격 접속을 통해 접속되는 컴퓨팅 장치에 해당할 수 있고, 그러한 경우, 복호화 장치(130)는 서버로서 수행될 수 있다.
네트워크 입출력부(270)은 네트워크를 통해 외부 장치 또는 시스템과 연결하기 위한 환경을 포함하고, 예를 들어, LAN(Local Area Network), MAN(Metropolitan Area Network), WAN(Wide Area Network) 및 VAN(Value Added Network) 등의 통신을 위한 어댑터를 포함할 수 있다.
도 3은 도 1에 있는 복호화 장치의 기능적 구성을 설명하는 블록도이다.
도 3을 참조하면, 복호화 장치(130)는 제1 암호화 파일 복호화부(310), 제2 암호화 파일 복호화부(330), 제3 암호화 파일 복호화부(350), 패스워드 복구부(370) 및 제어부(390)를 포함할 수 있다.
제1 암호화 파일 복호화부(310)는 사용자 계정에 관한 개인키 및 공개키를 저장하는 제1 암호화 파일을 복호화할 수 있다. 즉, 제1 암호화 파일 복호화부(310)는 제1 암호화 파일을 복호화하여 사용자 계정별로 고유한 개인키와 공개키를 획득할 수 있다. 제1 암호화 파일 복호화부(310)는 제1 암호화 파일로부터 데이터를 분리하고 복호화키를 생성하여 원본 데이터를 획득할 수 있다.
또한, 제1 암호화 파일은 사용자 간에 메시지를 주고 받는 애플리케이션에 따라 특정 형식의 파일 이름을 가질 수 있다. 예를 들어, 제1 암호화 파일은 사용자 계정에 연관된 로그인 ID를 파일 이름으로 포함할 수 있다. 또한, 개인키 및 공개키는 메시지 암호화에 사용되는 대칭키, 즉 비밀키를 생성하는데 사용될 수 있다.
제2 암호화 파일 복호화부(330)는 제1 암호화 파일에 대한 복호화 결과를 기초로 사용자 계정의 메시지를 암호화하기 위한 대칭키를 저장하는 제2 암호화 파일을 복호화할 수 있다. 즉, 제2 암호화 파일 복호화부(330)는 제2 암호화 파일을 복호화하여 사용자 계정별로 고유한 대칭키를 획득할 수 있다. 대칭키는 메시지 암호화에 사용되는 비밀키에 해당할 수 있다. 제2 암호화 파일 복호화부(330)는 제2 암호화 파일로부터 데이터를 분리하고 복호화키를 재구성하여 원본 데이터를 획득할 수 있다.
일 실시예에서, 제1 및 제2 암호화 파일들은 사용자 계정의 패스워드(password)와 적어도 하나의 중간값을 기초로 각각 생성된 비밀키를 이용하여 암호화된 데이터를 포함하고, 암호화된 데이터는 적어도 하나의 중간값과 순서대로 연접하여 저장될 수 있다.
예를 들어, Username.ssi(즉, 제1 암호화 파일)의 원본 데이터는 사용자의 로그인 패스워드를 기반으로 암호화된 후 GNU-Zip에 의해 압축되어 저장될 수 있다. 이 때, 사용된 암호 알고리즘은 AES-256-GCM이며 다음의 수학식 1과 같이 표현될 수 있다.
[수학식 1]
Encrypted_Username.ssi = GNU-Zip(AES-256-GCMsecrets-key(Username.ssi))
암호화에 사용된 비밀키(secrets-key)는 사용자의 로그인 패스워드에 특정 값을 연접한 후 PBKDF2-HMAC-SHA256을 1000회 돌려 생성될 수 있고, 다음의 수학식 2로 표현될 수 있다.
[수학식 2]
Secrets-key = PBKDF2((password||identity), salt, iter=1000, HMAC-SHA256)
여기에서, 수학식 1에 사용되는 iv값과 수학식 2에 사용되는 salt값은 암호화에 사용되는 중간값으로서 모두 랜덤하게 생성된 16 bytes에 해당할 수 있고, 암호화가 완료된 후 암호화된 데이터의 앞부분에 연접되어 저장될 수 있으며, 다음의 수학식 3과 같이 표현될 수 있다.
[수학식 3]
Username.ssi = iv||salt||encrypted_Username.ssi
또한, Secrets.sss(즉, 제2 암호화 파일)의 원본 데이터는 다음의 수학식 4 내지 6과 같이 표현되는 암호화 과정을 통해 암호화되어 저장될 수 있다.
[수학식 4]
Encrypted_secrets.sss = AES-256-GCMsecrets-key(Secrets.sss)
[수학식 5]
Secrets-key = PBKDF2(password, salt, iter=5000, HMAC-SHA256)
[수학식 6]
Secrets.sss = iv||salt||encrypted_Secrets.sss
따라서, 제2 암호화 파일은 제1 암호화 파일과 비교하여 GNU-zip이 존재하지 않고, 수학식 2의 identity가 존재하지 않고, PBKDF2의 반복 횟수가 다를 수 있다.
일 실시예에서, 제1 암호화 파일은 제1 암호화 파일이 저장되는 위치에 따라 결정되는 아이엔티티(identity) 값 및 사용자 계정의 패스워드를 연접한 후 적어도 하나의 중간값과 함께 해시 함수를 반복 적용함으로써 생성된 비밀키를 이용하여 암호화된 데이터를 포함할 수 있다. 즉, 수학식 2에서 identity 값은 데이터가 저장되는 위치에 따라 다른 값을 가질 수 있다. 예를 들어, username.ssi 파일이 기기 스토리지 내부에 저장되는 경우 identity = _cache_identity에 해당될 수 있고, 애플리케이션 내부에서 백업 기능을 이용하여 추출한 경우 identity = _export_identity에 해당될 수 있다.
일 실시예에서, 제2 암호화 파일은 사용자 계정의 패스워드를 적어도 하나의 중간값과 함께 해시 함수를 반복 적용함으로써 생성된 비밀키를 이용하여 암호화된 데이터를 포함하고, 반복 적용의 횟수는 제1 암호화 파일에 관한 반복 적용의 횟수와 상이할 수 있다. 즉, 제2 암호화 파일은 수학식 5를 통해 비밀키를 생성할 수 있고, 이를 이용하여 수학식 4를 통해 암호화된 데이터를 생성할 수 있다. 특히, 수학식 5에서 비밀키 생성을 위해 해시 함수가 적용되는 반복 횟수는 수학식 2에서 적용되는 반복 횟수와 서로 다를 수 있다.
일 실시예에서, 제2 암호화 파일 복호화부(330)는 제2 암호화 파일이 존재하지 않는 경우 제1 암호화 파일의 복호화를 통해 획득한 사용자 계정의 개인키와 사용자 계정과 연관된 상대방의 공개키를 기초로 산출된 중간값에 해시 함수를 적용하여 대칭키를 획득할 수 있다. 예를 들어, Secrets.sss(제2 암호화 파일)에 저장되어 있는 메시지 암호화 용의 비밀키는 자기 자신의 개인키와 대화를 나누는 상대방의 공개키를 ECDH알고리즘을 통해 생성 후 SHA256으로 해싱한 값에 해당할 수 있으며, 다음의 수학식 7 및 8과 같이 표현될 수 있다.
[수학식 7]
Sharing-secrets = MyPrivateKey * OtherPublicKey
[수학식 8]
Message-Enc/Decrypt-Key = SHA256(sharing-secrets)
일 실시예에서, 제2 암호화 파일 복호화부(330)는 제2 암호화 파일에 대한 복호화를 통해 해시맵(hashmap) 객체를 획득하는 단계, 해시맵 객체를 파싱하여 키(key)의 시작지점을 결정하는 단계 및 키와 밸류(value)를 분리하는 구분자(seperator)를 검색하여 사용자 계정별 대칭키를 획득하는 단계를 수행할 수 있다.
예를 들어, 제2 암호화 파일 복호화부(330)에 의해 획득된 데이터는 JAVA Hashmap Object의 형식으로 생성될 수 있으며, 그 Key 값은 사용자 id와 상대방 id, 각 사용자의 애플리케이션 버전 등 복합적인 데이터로 구성될 수 있으며, 그에 해당하는 Value 값은 메시지 암호화에 사용되는 비밀키에 해당할 수 있다. 제2 암호화 파일 복호화부(330) JAVA Hashmap Object의 key의 시작 지점을 모두 파싱할 수 있고, key와 value를 구분하는 값을 찾아(예를 들어, 0x00000020) 사용자 별로 메시지 암호화에 사용하는 키를 획득할 수 있다.
제3 암호화 파일 복호화부(350)는 제2 암호화 파일에 대한 복호화 결과를 기초로 사용자 계정의 메시지를 저장하는 제3 암호화 파일을 복호화할 수 있다. 즉, 제3 암호화 파일 복호화부(350)는 제2 암호화 파일 복호화부(330)에 의해 획득한 대칭키를 이용하여 암호화 과정의 역순으로 동작하는 복호화를 수행함으로써 사용자 계정에 의해 주고 받은 원본 메시지에 관한 정보를 획득할 수 있다.
예를 들어, Message.sss(즉, 제3 암호화 파일)은 GNU-zip에 의해 압축되어 있는 파일로 압축 해제시 메시지인 Data를 제외한 모든 데이터가 평문으로 존재할 수 있다. 다만, 복호화에 필요한 IV값은 Base64Encoded되어 저장될 수 있다. 암호화된 메시지(Data)는 (암호화된 메시지||인증자)를 Base64로 인코딩한 데이터로 원본 데이터 획득 방법은 다음의 수학식 9와 같이 표현될 수 있다.
[수학식 9]
Original-Message=AES-256-GCMkey(Base64Decode(Data), Base64Decode(IV), mode=decryption)
일 실시예에서, 제3 암호화 파일 복호화부(350)는 제3 암호화 파일에 저장된 메시지의 타입(type)을 판별하고 메시지의 타입에 따라 암호화된 메시지를 복호화하여 원본 데이터를 획득할 수 있다. 예를 들어, 제3 암호화 파일 복호화부(350)는 제3 암호화 파일 내에 같이 저장되어 있는 MimeType 변수를 통해 메시지 타입을 판별할 수 있다.
일 실시예에서, 제3 암호화 파일 복호화부(350)는 메시지의 타입이 미디어(media)인 경우 데이터 링크(link)를 통해 암호화된 메시지를 다운로드한 후 복호화를 수행하고, 메시지의 타입이 지아이에프(gif)인 경우 암호화된 메시지를 복호화한 결과로서 획득한 데이터 링크를 통해 원본 데이터를 다운로드할 수 있다.
보다 구체적으로, 제3 암호화 파일 복호화부(350)는 사진 및 음성녹음의 경우 Data에 URL이 저장되어 있으므로 해당 URL로부터 데이터를 다운로드한 후 수학식 9를 통해 복호화를 수행할 수 있고, GIF 이미지의 경우 Data를 복호화하면 URL이 나타나며 URL로부터 데이터를 다운로드함으로써 원본 파일을 획득할 수 있다.
패스워드 복구부(370)는 제1 암호화 파일 또는 제2 암호화 파일을 이용하여 사용자 계정의 패스워드를 복구할 수 있다. 예를 들어, 로그인 패스워드를 복구하기 위해서는 암호화된 Username.s냐 또는 Secrets.sss가 필요하며 Username.ssi를 사용시 Secrets.sss에 비해 약 5배 빠른 복구가 가능할 수 있다.
일 실시예에서, 패스워드 복구부(370)는 후보 패스워드를 추정하는 단계, 추정된 후보 패스워드를 기초로 후보키를 생성하는 단계, 후보키를 대체 암호 알고리즘에 적용하여 제1 암호화 파일 또는 제2 암호화 파일의 특정 블록을 복호화하는 단계 및 특정 블록에 대한 복호화 결과로서 획득한 데이터가 제1 암호화 파일 또는 제2 암호화 파일에 관한 고정 데이터와 일치하는 경우 후보 패스워드를 사용자 계정의 패스워드로 결정하는 단계를 수행할 수 있다. 이에 대해서는 도 5에서 보다 자세히 설명한다.
제어부(390)는 복호화 장치(130)의 전체적인 동작을 제어하고, 제1 암호화 파일 복호화부(310), 제2 암호화 파일 복호화부(330), 제3 암호화 파일 복호화부(350) 및 패스워드 복구부(370) 간의 제어 흐름 또는 데이터 흐름을 관리할 수 있다.
도 4는 도 1에 있는 복호화 장치에서 수행되는 종단간 암호화가 적용된 파일에 대한 복호화 과정을 설명하는 순서도이다.
도 4를 참조하면, 복호화 장치(130)는 제1 암호화 파일 복호화부(310)를 통해 사용자 계정에 관한 개인키 및 공개키를 저장하는 제1 암호화 파일을 복호화할 수 있다(단계 S410). 복호화 장치(130)는 제2 암호화 파일 복호화부(330)를 통해 제1 암호화 파일에 대한 복호화 결과를 기초로 사용자 계정의 메시지를 암호화하기 위한 대칭키를 저장하는 제2 암호화 파일을 복호화할 수 있다(단계 S430).
또한, 복호화 장치(130)는 제3 암호화 파일 복호화부(350)를 통해 제2 암호화 파일에 대한 복호화 결과를 기초로 사용자 계정의 메시지를 저장하는 제3 암호화 파일을 복호화할 수 있다(단계 S450). 복호화 장치(130)는 패스워드 복구부(370)를 통해 제1 암호화 파일 또는 제2 암호화 파일을 이용하여 사용자 계정의 패스워드를 복구할 수 있다(단계 S470).
도 5는 암호화 파일의 고정 데이터 및 패스워드 복구 알고리즘의 일 실시예를 설명하는 예시도이다.
도 5를 참조하면, 복호화된 제1 암호화 파일(Username.ssi) 및 제2 암호화 파일(Secrets.sss)에는 도 5의 그림 (a)와 같은 고정 데이터가 존재할 수 있다. 두 데이터를 암호화하는데 사용되는 AES-256-GCM는 암호화와 무결성 보장을 동시에 제공하기 위해 생성된 모드로 실제로 암호화에 사용된 알고리즘은 AES-256-CTR모드와 동일할 수 있다.
따라서, 사용자 로그인 패스워드를 추측한 후, 수학식 2 또는 수학식 5에 의해 생성된 키와 AES-256-CTR모드를 사용하여, 암호화된 Username.ssi 또는 Secrets.sss의 1블록(16bytes)를 복호화한 결과가 그림 (a)의 고정 데이터와 일치한다면, 올바른 패스워드를 찾아낸 것으로 볼 수 있다.
단, AES-256-CTR모드에 사용되는 IV는 AES-256-GCM에 사용된 IV와는 다르며, AES-256-GCM에 사용된 IV를 GHASH 알고리즘을 통해 변형한 IV(Counter) 값에 해당할 수 있다. 도 5의 그림 (b)는 상세한 로그인 패스워드 복구 알고리즘에 해당할 수 있다.
도 6은 본 발명의 일 실시예에 따른 종단간 암호화가 적용된 파일에 대한 복호화 과정을 설명하는 순서도이다.
도 6을 참조하면, 복호화 장치(130)는 복호화 하려고 하는 message.sss 파일을 선택하여 메시지 복호화를 시작할 수 있다. 복호화 장치(130)는 데이터 복호화 작업에 필요한 [Username].ssi 및 secret.sss 파일이 존재하는지를 확인한 뒤 모두 존재하지 않으면 작업을 종료할 수 있다. 만약 패스워드를 알지 못하는 경우 복호화 장치(130)는 알고리즘 10에서 패스워드를 복구할 수 있다. 복호화 장치(130)는 [Username].ssi를 이용한 복구방법이 더 효율적이기 때문에 이 방법을 우선하여 적용할 수 있다.
또한, 복호화 장치(130)는 복구한 패스워드를 바탕으로 secret.sss를 복호화하여 메시지 암호화에 사용된 대칭키를 복구할 수 있다. 복호화 장치(130)는 secret.sss가 없는 경우 복호화된 [Username].ssi를 기초로 알고리즘 7, 8을 통해 대칭키를 유도하여 복구할 수 있다.
마지막으로, 복호화 장치(130)는 복구된 대칭키와 메시지에 남아있는 IV 정보를 이용하여 AES-256-GCM 알고리즘을 통해 데이터를 복호화함으로써 원본 메시지를 획득할 수 있다. 복호화 장치(130)는 미디어의 종류에 따라 링크로부터 데이터를 다운로드할 필요가 있는 경우 추가 과정을 수행할 수 있다. 만약 추가적으로 누락된 Message ID가 존재한다면 복호화 장치(130)는 캐시 데이터를 기초로 미디어 데이터에 한정하여 데이터를 복구할 수 있다. 이 경우, 복호화 장치(130)는 알고리즘 11을 이용하여 사용된 IV를 복구할 수 있다.
상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
100: 종단간 암호화가 적용된 파일에 대한 복호화 시스템
110: 사용자 단말 130: 복호화 장치
150: 데이터베이스
210: 프로세서 230: 메모리
250: 사용자 입출력부 270: 네트워크 입출력부
310: 제1 암호화 파일 복호화부 330: 제2 암호화 파일 복호화부
350: 제3 암호화 파일 복호화부 370: 패스워드 복구부
390: 제어부

Claims (11)

  1. 사용자 계정에 관한 개인키 및 공개키를 저장하는 제1 암호화 파일을 복호화하는 제1 암호화 파일 복호화부;
    상기 제1 암호화 파일에 대한 복호화 결과를 기초로 상기 사용자 계정의 메시지를 암호화하기 위한 대칭키를 저장하는 제2 암호화 파일을 복호화하는 제2 암호화 파일 복호화부; 및
    상기 제2 암호화 파일에 대한 복호화 결과를 기초로 상기 사용자 계정의 메시지를 저장하는 제3 암호화 파일을 복호화하는 제3 암호화 파일 복호화부를 포함하는 종단간(end to end) 암호화가 적용된 파일에 대한 복호화 장치.
  2. 제1항에 있어서,
    상기 제1 및 제2 암호화 파일들은 상기 사용자 계정의 패스워드(password)와 적어도 하나의 중간값을 기초로 각각 생성된 비밀키를 이용하여 암호화된 데이터를 포함하고,
    상기 암호화된 데이터는 상기 적어도 하나의 중간값과 순서대로 연접하여 저장되는 것을 특징으로 하는 종단간 암호화가 적용된 파일에 대한 복호화 장치.
  3. 제2항에 있어서, 상기 제1 암호화 파일은
    상기 제1 암호화 파일이 저장되는 위치에 따라 결정되는 아이덴티티(identity) 값 및 상기 사용자 계정의 패스워드를 연접한 후 상기 적어도 하나의 중간값과 함께 해시 함수를 반복 적용함으로써 생성된 비밀키를 이용하여 암호화된 데이터를 포함하는 것을 종단간 암호화가 적용된 파일에 대한 복호화 장치.
  4. 제3항에 있어서,
    상기 제2 암호화 파일은 상기 사용자 계정의 패스워드를 상기 적어도 하나의 중간값과 함께 해시 함수를 반복 적용함으로써 생성된 비밀키를 이용하여 암호화된 데이터를 포함하고,
    상기 반복 적용의 횟수는 상기 제1 암호화 파일에 관한 반복 적용의 횟수와 상이한 것을 특징으로 하는 종단간 암호화가 적용된 파일에 대한 복호화 장치.
  5. 제1항에 있어서, 상기 제2 암호화 파일 복호화부는
    상기 제2 암호화 파일이 존재하지 않는 경우 상기 제1 암호화 파일의 복호화를 통해 획득한 상기 사용자 계정의 개인키와 상기 사용자 계정과 연관된 상대방의 공개키를 기초로 산출된 중간값에 해시 함수를 적용하여 상기 대칭키를 획득하는 것을 특징으로 하는 종단간 암호화가 적용된 파일에 대한 복호화 장치.
  6. 제1항에 있어서, 상기 제2 암호화 파일 복호화부는
    상기 제2 암호화 파일에 대한 복호화를 통해 해시맵(hashmap) 객체를 획득하는 단계;
    상기 해시맵 객체를 파싱하여 키(key)의 시작지점을 결정하는 단계; 및
    키와 밸류(value)를 분리하는 구분자(seperator)를 검색하여 사용자 계정별 대칭키를 획득하는 단계를 수행하는 것을 특징으로 하는 종단간 암호화가 적용된 파일에 대한 복호화 장치.
  7. 제1항에 있어서, 상기 제3 암호화 파일 복호화부는
    상기 제3 암호화 파일에 저장된 메시지의 타입(type)을 판별하고 상기 메시지의 타입에 따라 암호화된 메시지를 복호화하여 원본 데이터를 획득하는 것을 특징으로 하는 종단간 암호화가 적용된 파일에 대한 복호화 장치.
  8. 제7항에 있어서, 상기 제3 암호화 파일 복호화부는
    상기 메시지의 타입이 미디어(media)인 경우 데이터 링크(link)를 통해 상기 암호화된 메시지를 다운로드한 후 복호화를 수행하고,
    상기 메시지의 타입이 지아이에프(gif)인 경우 상기 암호화된 메시지를 복호화한 결과로서 획득한 데이터 링크를 통해 상기 원본 데이터를 다운로드하는 것을 특징으로 하는 종단간 암호화가 적용된 파일에 대한 복호화 장치.
  9. 제1항에 있어서,
    상기 제1 암호화 파일 또는 상기 제2 암호화 파일을 이용하여 상기 사용자 계정의 패스워드를 복구하는 패스워드 복구부를 더 포함하는 것을 특징으로 하는 종단간 암호화가 적용된 파일에 대한 복호화 장치.
  10. 제9항에 있어서, 상기 패스워드 복구부는
    후보 패스워드를 추정하는 단계;
    추정된 상기 후보 패스워드를 기초로 후보키를 생성하는 단계;
    상기 후보키를 대체 암호 알고리즘에 적용하여 상기 제1 암호화 파일 또는 상기 제2 암호화 파일의 특정 블록을 복호화하는 단계; 및
    상기 특정 블록에 대한 복호화 결과로서 획득한 데이터가 상기 제1 암호화 파일 또는 상기 제2 암호화 파일에 관한 고정 데이터와 일치하는 경우 상기 후보 패스워드를 상기 사용자 계정의 패스워드로 결정하는 단계를 수행하는 것을 특징으로 하는 종단간 암호화가 적용된 파일에 대한 복호화 장치.
  11. 종단간(end to end) 암호화가 적용된 파일에 대한 복호화 장치에서 수행되는 복호화 방법에 있어서,
    사용자 계정에 관한 개인키 및 공개키를 저장하는 제1 암호화 파일을 복호화하는 단계;
    상기 제1 암호화 파일에 대한 복호화 결과를 기초로 상기 사용자 계정의 메시지를 암호화하기 위한 대칭키를 저장하는 제2 암호화 파일을 복호화하는 단계; 및
    상기 제2 암호화 파일에 대한 복호화 결과를 기초로 상기 사용자 계정의 메시지를 저장하는 제3 암호화 파일을 복호화하는 단계를 포함하는 종단간 암호화가 적용된 파일에 대한 복호화 방법.

KR1020190062397A 2019-05-28 2019-05-28 종단간 암호화가 적용된 파일에 대한 복호화 장치 및 방법 KR102216869B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190062397A KR102216869B1 (ko) 2019-05-28 2019-05-28 종단간 암호화가 적용된 파일에 대한 복호화 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190062397A KR102216869B1 (ko) 2019-05-28 2019-05-28 종단간 암호화가 적용된 파일에 대한 복호화 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20200136629A true KR20200136629A (ko) 2020-12-08
KR102216869B1 KR102216869B1 (ko) 2021-02-17

Family

ID=73779154

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190062397A KR102216869B1 (ko) 2019-05-28 2019-05-28 종단간 암호화가 적용된 파일에 대한 복호화 장치 및 방법

Country Status (1)

Country Link
KR (1) KR102216869B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113032802A (zh) * 2021-03-09 2021-06-25 航天信息股份有限公司 一种数据安全存储方法及系统
CN116192365A (zh) * 2023-01-18 2023-05-30 无锡航天江南数据系统科技有限公司 基于电文服务系统的PPP-B2b信号传输方法及系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030083858A (ko) * 2002-04-22 2003-11-01 소프트포럼 주식회사 키 관리 방법 및 그를 위한 시스템
KR20060081337A (ko) * 2005-01-07 2006-07-12 엘지전자 주식회사 비밀키를 이용한 암호화 및 복호화 방법
KR100666708B1 (ko) 2005-11-09 2007-01-09 주식회사 케이티프리텔 개방형 모바일 비즈니스 지원 시스템에서 사용자종단(mt) 메시지 전송 장치 및 방법
JP2013235465A (ja) * 2012-05-10 2013-11-21 Hitachi Ltd ファイル処理システム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030083858A (ko) * 2002-04-22 2003-11-01 소프트포럼 주식회사 키 관리 방법 및 그를 위한 시스템
KR20060081337A (ko) * 2005-01-07 2006-07-12 엘지전자 주식회사 비밀키를 이용한 암호화 및 복호화 방법
KR100666708B1 (ko) 2005-11-09 2007-01-09 주식회사 케이티프리텔 개방형 모바일 비즈니스 지원 시스템에서 사용자종단(mt) 메시지 전송 장치 및 방법
JP2013235465A (ja) * 2012-05-10 2013-11-21 Hitachi Ltd ファイル処理システム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Myungseo Park 외 2명, How to decrypt PIN-Based encrypted backup data of Samsung smartphones, ELSEVIER, Digital Investigation, Vol.26 (2018.)* *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113032802A (zh) * 2021-03-09 2021-06-25 航天信息股份有限公司 一种数据安全存储方法及系统
CN113032802B (zh) * 2021-03-09 2023-09-19 航天信息股份有限公司 一种数据安全存储方法及系统
CN116192365A (zh) * 2023-01-18 2023-05-30 无锡航天江南数据系统科技有限公司 基于电文服务系统的PPP-B2b信号传输方法及系统
CN116192365B (zh) * 2023-01-18 2024-03-22 无锡航天江南数据系统科技有限公司 基于电文服务系统的PPP-B2b信号传输方法及系统

Also Published As

Publication number Publication date
KR102216869B1 (ko) 2021-02-17

Similar Documents

Publication Publication Date Title
EP3291481B1 (en) Decrypting encrypted data on an electronic device
CN109150519B (zh) 基于公共密钥池的抗量子计算云存储安全控制方法和系统
US9584321B2 (en) Secure storage for shared documents
WO2015188277A1 (en) Methods, systems and computer program product for providing encryption on a plurality of devices
CN106599723B (zh) 一种文件加密方法及装置、文件解密方法及装置
CN107786331B (zh) 数据处理方法、装置、系统及计算机可读存储介质
CN110084599B (zh) 密钥处理方法、装置、设备和存储介质
CN111385084A (zh) 数字资产的密钥管理方法、装置及计算机可读存储介质
WO2020123010A1 (en) System and method for secure sensitive data storage and recovery
CN111404953A (zh) 一种消息加密方法、解密方法及相关装置、系统
KR102216869B1 (ko) 종단간 암호화가 적용된 파일에 대한 복호화 장치 및 방법
WO2019120038A1 (zh) 数据加密存储
Park et al. A methodology for the decryption of encrypted smartphone backup data on android platform: A case study on the latest samsung smartphone backup system
Hur et al. Data acquisition methods using backup data decryption of Sony smartphones
CN111639357A (zh) 一种加密网盘系统及其认证方法和装置
CN112818404B (zh) 数据访问权限的更新方法、装置、设备及可读存储介质
CN113507482B (zh) 数据安全传输方法、安全交易方法、系统、介质和设备
TW201608412A (zh) 用於提供安全性雲端服務的代理器及用於安全性雲端服務的安全性訊標裝置
US9825920B1 (en) Systems and methods for multi-function and multi-purpose cryptography
CN112702582B (zh) 一种基于sm2的监控视频安全传输方法和设备
GB2488753A (en) Encrypted communication
JP4684714B2 (ja) ファイル管理システム、及びプログラム
JP6369554B2 (ja) 解析システム、解析方法、及び、解析プログラム
CN109412788B (zh) 基于公共密钥池的抗量子计算代理云存储安全控制方法和系统
Beugin et al. Building a privacy-preserving smart camera system

Legal Events

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