KR102311996B1 - Device and method for anti-forensic unlocking for media files - Google Patents

Device and method for anti-forensic unlocking for media files Download PDF

Info

Publication number
KR102311996B1
KR102311996B1 KR1020200040287A KR20200040287A KR102311996B1 KR 102311996 B1 KR102311996 B1 KR 102311996B1 KR 1020200040287 A KR1020200040287 A KR 1020200040287A KR 20200040287 A KR20200040287 A KR 20200040287A KR 102311996 B1 KR102311996 B1 KR 102311996B1
Authority
KR
South Korea
Prior art keywords
secret key
encrypted file
file
encryption
forensic
Prior art date
Application number
KR1020200040287A
Other languages
Korean (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 KR1020200040287A priority Critical patent/KR102311996B1/en
Application granted granted Critical
Publication of KR102311996B1 publication Critical patent/KR102311996B1/en

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/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
    • 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
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2131Lost password, e.g. recovery of lost or forgotten passwords

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)

Abstract

The present invention relates to a device and method for releasing an anti-forensic for a media file, wherein the device comprises: an encrypted file receiving part that receives an encrypted file generated as a result of encrypting a non-encrypted file; a secret key verification code obtaining part that obtains a secret key verification code associated with the encrypted file; a user secret key restoration part that restores a unique user secret key used in the encryption process by using the secret key verification code; and a non-encrypted file generating part that generates the non-encrypted file by decrypting the encrypted file based on the encrypted file and the user secret key. Therefore, the present invention can decrypt the encrypted data by analyzing an application that provides data encryption.

Description

미디어 파일에 대한 안티 포렌식 해제 장치 및 방법{DEVICE AND METHOD FOR ANTI-FORENSIC UNLOCKING FOR MEDIA FILES}DEVICE AND METHOD FOR ANTI-FORENSIC UNLOCKING FOR MEDIA FILES

본 발명은 미디어 파일에 대한 안티 포렌식 해제 기술에 관한 것으로, 보다 상세하게는 데이터 암호화를 제공하는 애플리케이션을 분석하여 암호화된 데이터를 복호화 할 수 있는 미디어 파일에 대한 안티 포렌식 해제 장치 및 방법에 관한 것이다.The present invention relates to an anti-forensic decryption technology for a media file, and more particularly, to an anti-forensic decryption apparatus and method for a media file capable of decrypting encrypted data by analyzing an application that provides data encryption.

모바일 기기의 편의성이 증가함에 따라 사용자와 모바일 기기는 긴밀한 관계를 형성하고 있다. 또한, 모바일 기기에는 통화 내역, 메시지 등의 개인정보가 저장되므로 사용자들의 개인정보보호에 대한 인식이 높아지고 있다. 이에 따라, 사생활 침해를 예방하기 위한 개인정보보호 애플리케이션이 출시되고 있다. 사생활 보호 애플리케이션들은 권한이 있는 사용자만 데이터에 접근할 수 있도록 데이터 은닉과 암호화 등 다양한 기법을 제공한다. As the convenience of mobile devices increases, users and mobile devices are forming a close relationship. In addition, since personal information such as call history and messages are stored in mobile devices, users' awareness of personal information protection is increasing. Accordingly, a personal information protection application for preventing invasion of privacy has been released. Privacy protection applications provide various techniques such as data hiding and encryption so that only authorized users can access data.

한편, 사생활 보호 애플리케이션은 개인정보를 보호하기 위해 만들어졌지만, 데이터의 접근을 어렵게 한다는 점 때문에 범죄 행위의 증거 인멸 수단으로 사용하는 사례가 다수 존재한다. 그러나, 범죄 행위를 입증하기 위해 데이터를 수집해야 하는 디지털 포렌식 입장에서는 데이터 보호 기법이 안티 포렌식 행위로 작용할 수 있다. 따라서, 이에 대한 대응기법으로 사생활 보호 애플리케이션 분석을 통해 원본 데이터를 획득하는 연구가 필수적으로 수반되어야 한다.On the other hand, although privacy protection applications are designed to protect personal information, there are many cases where they are used as a means of destroying evidence of criminal activity because it makes it difficult to access data. However, for digital forensics who need to collect data to prove criminal activity, data protection techniques can act as an anti-forensic activity. Therefore, as a countermeasure against this, research to acquire original data through privacy protection application analysis is essential.

한국공개특허 제10-2007-0001055호 (2007.01.03)Korean Patent Laid-Open Patent No. 10-2007-0001055 (2007.01.03)

본 발명의 일 실시예는 데이터 암호화를 제공하는 애플리케이션을 분석하여 암호화된 데이터를 복호화 할 수 있는 미디어 파일에 대한 안티 포렌식 해제 장치 및 방법을 제공하고자 한다.An embodiment of the present invention is to provide an anti-forensic decryption apparatus and method for a media file capable of decrypting encrypted data by analyzing an application providing data encryption.

본 발명의 일 실시예는 디지털 포렌식 수사관점에서 안티 포렌식으로 작용하는 데이터의 은닉 및 암호화 과정을 분석하여 범죄 행위의 증거 인멸에 효과적으로 대응할 수 있는 미디어 파일에 대한 안티 포렌식 해제 장치 및 방법을 제공하고자 한다.An embodiment of the present invention provides an anti-forensic release device and method for media files that can effectively respond to the destruction of evidence of criminal activity by analyzing the data hiding and encryption process acting as an anti-forensic from the digital forensic investigation point of view. .

본 발명의 일 실시예는 암호화 대상에 따라 상이하게 형성되는 시그니처를 사용한 암호화 파일의 복호화를 제공하고 사용자 검증 데이터를 기초로 사용자 입력 패스워드를 복구할 수 있는 미디어 파일에 대한 안티 포렌식 해제 장치 및 방법을 제공하고자 한다.An embodiment of the present invention provides an anti-forensic decryption apparatus and method for a media file that provides decryption of an encrypted file using a signature that is formed differently according to an encryption target and can recover a user input password based on user verification data would like to provide

실시예들 중에서, 미디어 파일에 대한 안티 포렌식 해제 장치는 비암호화 파일을 암호화 한 결과로서 생성된 암호화 파일을 수신하는 암호화 파일 수신부, 상기 암호화 파일과 연관된 비밀키 검증코드를 획득하는 비밀키 검증코드 획득부, 상기 비밀키 검증코드를 이용하여 상기 암호화 과정에서 사용된 고유의 사용자 비밀키를 복원하는 사용자 비밀키 복원부 및 상기 암호화 파일 및 상기 사용자 비밀키를 기초로 상기 암호화 파일을 해독하여 상기 비암호화 파일을 생성하는 비암호화 파일 생성부를 포함한다.Among the embodiments, the anti-forensic decryption device for the media file includes an encrypted file receiving unit that receives an encrypted file generated as a result of encrypting a non-encrypted file, and obtains a secret key verification code for obtaining a secret key verification code associated with the encrypted file unit, a user secret key restoration unit that restores a unique user secret key used in the encryption process using the secret key verification code, and decrypts the encrypted file based on the encrypted file and the user secret key to decrypt the non-encrypted file It includes a non-encrypted file generator for generating a file.

상기 암호화 파일 및 상기 비암호화 파일은 외부 파일 저장영역의 최상위 폴더 내에 각각 독립적으로 저장될 수 있다.The encrypted file and the non-encrypted file may be independently stored in an uppermost folder of an external file storage area.

상기 비밀키 검증코드 획득부는 상기 사용자 비밀키에 대해 해시함수를 반복 적용한 결과로서 상기 비밀키 검증코드를 생성하고, 상기 반복 적용 과정에서 최초의 해시함수는 상기 사용자 비밀키를 입력으로 사용하여 해시함수 값을 출력으로 생성하되 나머지 해시함수는 이전 단계의 해시함수 값과 상기 사용자 비밀키 간의 연접 연산을 통해 생성된 값을 입력으로 사용할 수 있다.The secret key verification code obtaining unit generates the secret key verification code as a result of repeatedly applying the hash function to the user secret key, and in the repeated application process, the first hash function is a hash function using the user secret key as an input. A value is generated as an output, but the rest of the hash function may use a value generated through a concatenation operation between the hash function value of the previous step and the user secret key as an input.

상기 사용자 비밀키 복원부는 생성규칙에 의해 순차적으로 생성되는 복수의 후보 사용자 비밀키들 중에서 상기 해시함수에 반복 적용한 결과값이 상기 비밀키 검증코드와 일치하는 경우 해당 후보 사용자 비밀키를 상기 사용자 비밀키로서 결정할 수 있다.The user secret key restoration unit uses the candidate user secret key as the user secret key when the result value repeatedly applied to the hash function from among a plurality of candidate user secret keys sequentially generated by the generation rule matches the secret key verification code can decide

상기 비암호화 파일 생성부는 상기 암호화 파일을 분해하여 시그니처(Signature), 제1 변수, 제2 변수 및 암호문(Ciphertext)을 각각 추출하고, 상기 시그니처는 상기 암호화의 대상에 따라 상이하게 결정되고 상기 제2 변수의 크기는 상기 제1 변수의 크기보다 더 크게 형성될 수 있다.The non-encrypted file generator decomposes the encrypted file to extract a signature, a first variable, a second variable, and a ciphertext, respectively, and the signature is determined differently according to the target of the encryption, and the second The size of the variable may be formed to be larger than the size of the first variable.

상기 시그니처는 적어도 6바이트의 크기로 형성되고 상기 암호화의 대상이 파일명인 경우 상기 암호화의 횟수에 따라 증가하는 카운터를 포함할 수 있다.The signature may have a size of at least 6 bytes and include a counter that increases according to the number of times of encryption when the target of the encryption is a file name.

상기 비암호화 파일 생성부는 상기 사용자 비밀키에 해시함수를 적용하여 비밀코드를 생성하고 상기 비밀코드 및 상기 제2 변수를 제1 암호 알고리즘의 입력 파라미터로 사용하여 상기 암호키를 생성할 수 있다.The non-encryption file generator may generate a secret code by applying a hash function to the user secret key, and generate the encryption key using the secret code and the second variable as input parameters of a first encryption algorithm.

상기 비암호화 파일 생성부는 상기 비암호화 파일, 상기 암호키 및 상기 제1 변수를 입력 파라미터로 사용하여 상기 암호문을 출력으로 생성하는 제2 암호 알고리즘의 암호화 과정을 해독하여 상기 비암호화 파일을 생성할 수 있다.The unencrypted file generation unit can generate the unencrypted file by decrypting the encryption process of a second encryption algorithm that generates the cipher text as an output using the unencrypted file, the encryption key, and the first variable as input parameters. have.

실시예들 중에서, 미디어 파일에 대한 안티 포렌식 해제 방법은 비암호화 파일을 암호화 한 결과로서 생성된 암호화 파일을 수신하는 단계, 상기 암호화 파일과 연관된 비밀키 검증코드를 획득하는 단계, 상기 비밀키 검증코드를 이용하여 상기 암호화 과정에서 사용된 고유의 사용자 비밀키를 복원하는 단계 및 상기 암호화 파일 및 상기 사용자 비밀키를 기초로 상기 암호화 파일을 해독하여 상기 비암호화 파일을 생성하는 단계를 포함한다.In embodiments, the anti-forensic decryption method for a media file includes receiving an encrypted file generated as a result of encrypting an unencrypted file, obtaining a secret key verification code associated with the encrypted file, and the secret key verification code restoring the unique user secret key used in the encryption process using

개시된 기술은 다음의 효과를 가질 수 있다. 다만, 특정 실시예가 다음의 효과를 전부 포함하여야 한다거나 다음의 효과만을 포함하여야 한다는 의미는 아니므로, 개시된 기술의 권리범위는 이에 의하여 제한되는 것으로 이해되어서는 아니 될 것이다.The disclosed technology may have the following effects. However, this does not mean that a specific embodiment should include all of the following effects or only the following effects, so the scope of the disclosed technology should not be construed as being limited thereby.

본 발명의 일 실시예에 따른 미디어 파일에 대한 안티 포렌식 해제 장치 및 방법은 디지털 포렌식 수사관점에서 안티 포렌식으로 작용하는 데이터의 은닉 및 암호화 과정을 분석하여 범죄 행위의 증거 인멸에 효과적으로 대응할 수 있다.The anti-forensic release apparatus and method for a media file according to an embodiment of the present invention can effectively respond to the destruction of evidence of criminal activity by analyzing the data hiding and encryption process acting as an anti-forensic from the digital forensic investigation point of view.

본 발명의 일 실시예에 따른 미디어 파일에 대한 안티 포렌식 해제 장치 및 방법은 암호화 대상에 따라 상이하게 형성되는 시그니처를 사용한 암호화 파일의 복호화를 제공하고 사용자 검증 데이터를 기초로 사용자 입력 패스워드를 복구할 수 있다.The anti-forensic decryption apparatus and method for a media file according to an embodiment of the present invention provides decryption of an encrypted file using a signature that is formed differently depending on an encryption target, and can recover a user input password based on user verification data. have.

도 1은 본 발명에 따른 안티 포렌식 해제 시스템을 설명하는 도면이다.
도 2는 도 1의 안티 포렌식 해제 장치의 물리적 구성을 설명하는 도면이다.
도 3은 도 1의 안티 포렌식 해제 장치의 기능적 구성을 설명하는 도면이다.
도 4는 도 1의 안티 포렌식 해제 장치에서 수행되는 미디어 파일에 대한 안티 포렌식 해제 과정을 설명하는 순서도이다.
도 5는 본 발명에 따른 암호화 파일의 파일 구조를 설명하는 도면이다.
도 6 내지 9는 본 발명에 따른 미디어 파일에 대한 암호화 과정을 설명하는 도면이다.
1 is a view for explaining an anti-forensic release system according to the present invention.
FIG. 2 is a diagram for explaining a physical configuration of the anti-forensic release device of FIG. 1 .
FIG. 3 is a view for explaining a functional configuration of the anti-forensic release device of FIG. 1 .
FIG. 4 is a flowchart illustrating an anti-forensic release process for a media file performed by the anti-forensic release device of FIG. 1 .
5 is a diagram for explaining the file structure of an encrypted file according to the present invention.
6 to 9 are diagrams for explaining an encryption process for a media file according to the present invention.

본 발명에 관한 설명은 구조적 내지 기능적 설명을 위한 실시예에 불과하므로, 본 발명의 권리범위는 본문에 설명된 실시예에 의하여 제한되는 것으로 해석되어서는 아니 된다. 즉, 실시예는 다양한 변경이 가능하고 여러 가지 형태를 가질 수 있으므로 본 발명의 권리범위는 기술적 사상을 실현할 수 있는 균등물들을 포함하는 것으로 이해되어야 한다. 또한, 본 발명에서 제시된 목적 또는 효과는 특정 실시예가 이를 전부 포함하여야 한다거나 그러한 효과만을 포함하여야 한다는 의미는 아니므로, 본 발명의 권리범위는 이에 의하여 제한되는 것으로 이해되어서는 아니 될 것이다.Since the description of the present invention is merely an embodiment for structural or functional description, the scope of the present invention should not be construed as being limited by the embodiment described in the text. That is, since the embodiment may have various changes and may have various forms, it should be understood that the scope of the present invention includes equivalents capable of realizing the technical idea. In addition, since the object or effect presented in the present invention does not mean that a specific embodiment should include all of them or only such effects, it should not be understood that the scope of the present invention is limited thereby.

한편, 본 출원에서 서술되는 용어의 의미는 다음과 같이 이해되어야 할 것이다.On the other hand, the meaning of the terms described in the present application should be understood as follows.

"제1", "제2" 등의 용어는 하나의 구성요소를 다른 구성요소로부터 구별하기 위한 것으로, 이들 용어들에 의해 권리범위가 한정되어서는 아니 된다. 예를 들어, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다.Terms such as “first” and “second” are for distinguishing one component from another, and the scope of rights should not be limited by these terms. For example, a first component may be termed a second component, and similarly, a second component may also be termed a first component.

어떤 구성요소가 다른 구성요소에 "연결되어"있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결될 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어"있다고 언급된 때에는 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 한편, 구성요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.When a component is referred to as being “connected” to another component, it should be understood that the component may be directly connected to the other component, but other components may exist in between. On the other hand, when it is mentioned that a certain element is "directly connected" to another element, it should be understood that the other element does not exist in the middle. Meanwhile, other expressions describing the relationship between elements, that is, “between” and “between” or “neighboring to” and “directly adjacent to”, etc., should be interpreted similarly.

단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한 복수의 표현을 포함하는 것으로 이해되어야 하고, "포함하다"또는 "가지다" 등의 용어는 실시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이며, 하나 또는 그 이상의 다른 특징이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The singular expression is to be understood to include the plural expression unless the context clearly dictates otherwise, and terms such as "comprises" or "have" refer to the embodied feature, number, step, action, component, part or these It is intended to indicate that a combination exists, and it should be understood that it does not preclude the possibility of the existence or addition of one or more other features or numbers, steps, operations, components, parts, or combinations thereof.

각 단계들에 있어 식별부호(예를 들어, a, b, c 등)는 설명의 편의를 위하여 사용되는 것으로 식별부호는 각 단계들의 순서를 설명하는 것이 아니며, 각 단계들은 문맥상 명백하게 특정 순서를 기재하지 않는 이상 명기된 순서와 다르게 일어날 수 있다. 즉, 각 단계들은 명기된 순서와 동일하게 일어날 수도 있고 실질적으로 동시에 수행될 수도 있으며 반대의 순서대로 수행될 수도 있다.Identifiers (eg, a, b, c, etc.) in each step are used for convenience of description, and the identification code does not describe the order of each step, and each step clearly indicates a specific order in context. Unless otherwise specified, it may occur in a different order from the specified order. That is, each step may occur in the same order as specified, may be performed substantially simultaneously, or may be performed in the reverse order.

본 발명은 컴퓨터가 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현될 수 있고, 컴퓨터가 읽을 수 있는 기록 매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다. 컴퓨터가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장 장치 등이 있다. 또한, 컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산 방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.The present invention can be embodied as computer-readable codes on a computer-readable recording medium, and the computer-readable recording medium includes all types of recording devices in which data readable by a computer system is stored. . Examples of the computer-readable recording medium include ROM, RAM, CD-ROM, magnetic tape, floppy disk, optical data storage device, and the like. In addition, the computer-readable recording medium may be distributed in a network-connected computer system, and the computer-readable code may be stored and executed in a distributed manner.

여기서 사용되는 모든 용어들은 다르게 정의되지 않는 한, 본 발명이 속하는 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한 이상적이거나 과도하게 형식적인 의미를 지니는 것으로 해석될 수 없다.All terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs, unless otherwise defined. Terms defined in general used in the dictionary should be interpreted as being consistent with the meaning in the context of the related art, and cannot be interpreted as having an ideal or excessively formal meaning unless explicitly defined in the present application.

도 1은 본 발명에 따른 안티 포렌식 해제 시스템을 설명하는 도면이다.1 is a view for explaining an anti-forensic release system according to the present invention.

도 1을 참조하면, 안티 포렌식 해제 시스템(100)은 사용자 단말(110), 안티 포렌식 해제 장치(130) 및 데이터베이스(150)를 포함할 수 있다.Referring to FIG. 1 , the anti-forensic release system 100 may include a user terminal 110 , an anti-forensic release device 130 , and a database 150 .

사용자 단말(110)은 사용자로부터 비밀번호를 입력 받아 비암호화 파일을 암호화하고 그 결과로서 암호화 파일을 생성할 수 있는 컴퓨팅 장치에 해당할 수 있다. 이를 위하여 사용자 단말(110)은 데이터 암호화를 제공하는 전용 애플리케이션을 설치하여 실행시킬 수 있다. 예를 들어, 전용 애플리케이션은 암호화 기능을 제공하여 사진이나 동영상 파일 등 미디어 파일을 암호화하는 애플리케이션을 포함할 수 있다.The user terminal 110 may correspond to a computing device capable of receiving a password from a user, encrypting a non-encrypted file, and generating an encrypted file as a result. To this end, the user terminal 110 may install and execute a dedicated application that provides data encryption. For example, the dedicated application may include an application that provides an encryption function to encrypt a media file such as a photo or video file.

또한, 사용자 단말(110)은 스마트폰, 노트북 또는 컴퓨터로 구현될 수 있으며, 반드시 이에 한정되지 않고, 태블릿 PC 등 다양한 디바이스로도 구현될 수 있다. 사용자 단말(110)은 안티 포렌식 해제 장치(130)와 네트워크를 통해 연결될 수 있고, 복수의 사용자 단말(110)들은 안티 포렌식 해제 장치(130)와 동시에 연결될 수 있다.In addition, the user terminal 110 may be implemented as a smartphone, a notebook computer, or a computer, and is not necessarily limited thereto, and may be implemented in various devices such as a tablet PC. The user terminal 110 may be connected to the anti-forensic release device 130 through a network, and a plurality of user terminals 110 may be simultaneously connected to the anti-forensic release device 130 .

안티 포렌식 해제 장치(130)는 암호화 파일을 해독하여 비암호화 파일을 복원하고 암호화 과정에서 사용된 패스워드를 복구할 수 있는 컴퓨터 또는 프로그램에 해당하는 서버로 구현될 수 있다. 또한, 안티 포렌식 해제 장치(130)는 사용자 단말(110)과 유선 네트워크 또는 블루투스, WiFi 등과 같은 무선 네트워크로 연결될 수 있고, 유선 또는 무선 네트워크를 통해 사용자 단말(110)과 통신을 수행할 수 있다. 안티 포렌식 해제 장치(130)는 데이터베이스(150)와 연동하여 암호화 파일에 대한 해독 연산을 수행하기 위해 필요한 다양한 정보들을 저장할 수 있다.The anti-forensic release device 130 may be implemented as a server corresponding to a computer or program capable of decrypting an encrypted file to restore a non-encrypted file and recovering a password used in an encryption process. Also, the anti-forensic release device 130 may be connected to the user terminal 110 through a wired network or a wireless network such as Bluetooth or WiFi, and may communicate with the user terminal 110 through a wired or wireless network. The anti-forensic unlocking device 130 may store various pieces of information necessary to perform a decryption operation on an encrypted file in conjunction with the database 150 .

한편, 안티 포렌식 해제 장치(130)는 도 1과 달리, 데이터베이스(150)를 내부에 포함하여 구현될 수 있다. 안티 포렌식 해제 장치(130)는 기본적인 시스템 구성으로서 프로세서, 메모리, 사용자 입출력부 및 네트워크 입출력부를 포함하여 구현될 수 있으며, 이에 대해서는 도 2에서 보다 자세히 설명한다.Meanwhile, the anti-forensic release device 130 may be implemented by including the database 150 therein, unlike FIG. 1 . The anti-forensic release device 130 may be implemented including a processor, a memory, a user input/output unit, and a network input/output unit as a basic system configuration, which will be described in more detail with reference to FIG. 2 .

데이터베이스(150)는 안티 포렌식 해제 장치(130)가 애플리케이션을 분석하여 암호화된 데이터를 복호화 하는 과정에서 필요한 다양한 정보들을 저장할 수 있다. 예를 들어, 데이터베이스(150)는 사용자 단말(110)로부터 획득한 암호화 파일에 관한 정보를 저장할 수 있고, 암호화 파일의 복호화 결과로서 생성한 비암호화 파일에 관한 정보를 저장할 수 있으며, 반드시 이에 한정되지 않고, 안티 포렌식 해제 방법을 적용하여 암호화 파일을 기초로 비암호화 파일을 생성하는 과정에서 다양한 형태로 수집 또는 가공된 정보들을 저장할 수 있다.The database 150 may store various pieces of information necessary for the anti-forensic unlocking device 130 to analyze the application and decrypt the encrypted data. For example, the database 150 may store information about an encrypted file obtained from the user terminal 110 and may store information about a non-encrypted file generated as a result of decrypting the encrypted file, but is not necessarily limited thereto. Instead, information collected or processed in various forms can be stored in the process of generating a non-encrypted file based on the encrypted file by applying the anti-forensic deactivation method.

도 2는 도 1의 안티 포렌식 해제 장치의 물리적 구성을 설명하는 도면이다.FIG. 2 is a diagram for explaining a physical configuration of the anti-forensic release device of FIG. 1 .

도 2를 참조하면, 안티 포렌식 해제 장치(130)는 프로세서(210), 메모리(230), 사용자 입출력부(250) 및 네트워크 입출력부(270)를 포함하여 구현될 수 있다.Referring to FIG. 2 , the anti-forensic release device 130 may be implemented including a processor 210 , a memory 230 , a user input/output unit 250 , and a network input/output unit 270 .

프로세서(210)는 안티 포렌식 해제 장치(130)가 동작하는 과정에서의 각 단계들을 처리하는 프로시저를 실행할 수 있고, 그 과정 전반에서 읽혀지거나 작성되는 메모리(230)를 관리할 수 있으며, 메모리(230)에 있는 휘발성 메모리와 비휘발성 메모리 간의 동기화 시간을 스케줄할 수 있다. 프로세서(210)는 사용자 검출 장치(130)의 동작 전반을 제어할 수 있고, 메모리(230), 사용자 입출력부(250) 및 네트워크 입출력부(270)와 전기적으로 연결되어 이들 간의 데이터 흐름을 제어할 수 있다. 프로세서(210)는 안티 포렌식 해제 장치(130)의 CPU(Central Processing Unit)로 구현될 수 있다.The processor 210 may execute a procedure for processing each step in the process of the anti-forensic release device 130 operating, and manage the memory 230 that is read or written throughout the process, and the memory ( 230) may schedule a synchronization time between the volatile memory and the non-volatile memory. The processor 210 may control the overall operation of the user detection device 130 , and is electrically connected to the memory 230 , the user input/output unit 250 , and the network input/output unit 270 to control data flow between them. can The processor 210 may be implemented as a central processing unit (CPU) of the anti-forensic release device 130 .

메모리(230)는 SSD(Solid State Drive) 또는 HDD(Hard Disk Drive)와 같은 비휘발성 메모리로 구현되어 안티 포렌식 해제 장치(130)에 필요한 데이터 전반을 저장하는데 사용되는 보조기억장치를 포함할 수 있고, RAM(Random Access Memory)과 같은 휘발성 메모리로 구현된 주기억장치를 포함할 수 있다.The memory 230 is implemented as a non-volatile memory, such as a solid state drive (SSD) or a hard disk drive (HDD), and may include an auxiliary storage device used to store overall data required for the anti-forensic release device 130, and , and may include a main memory implemented as a volatile memory such as random access memory (RAM).

사용자 입출력부(250)는 사용자 입력을 수신하기 위한 환경 및 사용자에게 특정 정보를 출력하기 위한 환경을 포함할 수 있다. 예를 들어, 사용자 입출력부(250)는 터치 패드, 터치 스크린, 화상 키보드 또는 포인팅 장치와 같은 어댑터를 포함하는 입력장치 및 모니터 또는 터치스크린과 같은 어댑터를 포함하는 출력장치를 포함할 수 있다. 일 실시예에서, 사용자 입출력부(250)는 원격 접속을 통해 접속되는 컴퓨팅 장치에 해당할 수 있고, 그러한 경우, 안티 포렌식 해제 장치(130)는 서버로서 수행될 수 있다.The user input/output unit 250 may include an environment for receiving a user input and an environment for outputting specific information to the user. For example, the user input/output unit 250 may include an input device including an adapter such as a touch pad, a touch screen, an on-screen keyboard, or a pointing device, and an output device including an adapter such as a monitor or a touch screen. In an embodiment, the user input/output unit 250 may correspond to a computing device accessed through a remote connection, and in such a case, the anti-forensic release device 130 may be implemented as a server.

네트워크 입출력부(270)은 네트워크를 통해 외부 장치 또는 시스템과 연결하기 위한 환경을 포함하고, 예를 들어, LAN(Local Area Network), MAN(Metropolitan Area Network), WAN(Wide Area Network) 및 VAN(Value Added Network) 등의 통신을 위한 어댑터를 포함할 수 있다.The network input/output unit 270 includes an environment for connecting with an external device or system through a network, for example, a local area network (LAN), a metropolitan area network (MAN), a wide area network (WAN), and a VAN (Wide Area Network) (VAN). It may include an adapter for communication such as Value Added Network).

도 3은 도 1의 안티 포렌식 해제 장치의 기능적 구성을 설명하는 도면이다.FIG. 3 is a view for explaining a functional configuration of the anti-forensic release device of FIG. 1 .

도 3을 참조하면, 안티 포렌식 해제 장치(130)는 암호화 파일 수신부(310), 비밀키 검증코드 획득부(330), 사용자 비밀키 복원부(350), 비암호화 파일 생성부(370) 및 제어부(390)를 포함할 수 있다.Referring to FIG. 3 , the anti-forensic unlocking device 130 includes an encrypted file receiving unit 310 , a secret key verification code obtaining unit 330 , a user private key restoring unit 350 , a non-encrypting file generating unit 370 and a control unit. (390).

암호화 파일 수신부(310)는 비암호화 파일을 암호화 한 결과로서 생성된 암호화 파일을 수신할 수 있다. 암호화 파일은 사용자 단말(110)에 의해 실행된 애플리케이션에 의해 암호화된 파일에 해당할 수 있고, 비암호화 파일은 암호화되는 원래의 파일로서 사진, 동영상 등의 미디어 파일에 해당할 수 있다. 한편, 본 발명에서는 미디어 파일의 암호화 및 복호화를 중심으로 설명하고 있으나, 반드시 이에 한정되지 않고, 다양한 형태의 파일에 대해서도 본 발명이 적용될 수 있음은 물론이다. 암호화 파일은 사용자 단말(110) 상에서 생성될 수 있고, 암호화 파일 수신부(310)는 사용자 단말(110) 상에서 암호화 파일이 저장되는 특정 위치에 접근하여 암호화 파일을 수신할 수 있다.The encrypted file receiving unit 310 may receive the encrypted file generated as a result of encrypting the non-encrypted file. The encrypted file may correspond to a file encrypted by an application executed by the user terminal 110 , and the non-encrypted file may correspond to a media file such as a picture or a video as an original encrypted file. Meanwhile, in the present invention, encryption and decryption of media files are mainly described, but the present invention is not necessarily limited thereto, and the present invention can be applied to various types of files. The encrypted file may be generated on the user terminal 110 , and the encrypted file receiving unit 310 may receive the encrypted file by accessing a specific location where the encrypted file is stored on the user terminal 110 .

일 실시예에서, 암호화 파일 및 비암호화 파일은 외부 파일 저장영역의 최상위 폴더 내에 각각 독립적으로 저장될 수 있다. 암호화 파일은 사용자 단말(110) 상에서 동작하는 전용 애플리케이션에 의해 생성될 수 있으며, 전용 애플리케이션의 동작에 따라 사용자 단말(110) 상의 특정 위치에 저장될 수 있다. In an embodiment, the encrypted file and the non-encrypted file may be stored independently of each other in the top-level folder of the external file storage area. The encrypted file may be generated by a dedicated application operating on the user terminal 110 , and may be stored in a specific location on the user terminal 110 according to the operation of the dedicated application.

예를 들어, SafeCamera 애플리케이션은 암호화 파일 및 비암호화 파일을 외부 파일 저장소 최상위 폴더에 각각 SafeCamera, SafeCameraDecrypted 폴더를 생성하여 저장할 수 있다. 여기에서, SafeCamera 애플리케이션은 최초 사용 시 사용자 입력 패스워드를 등록하여 애플리케이션의 접근을 제어할 수 있고, 암/복호화 기능의 대상은 해당 애플리케이션을 통해 촬영한 사진과 기존에 저장되어 있던 사진 및 동영상 파일에 해당할 수 있다. 또한, SafeCamera 애플리케이션은 촬영된 사진을 즉시 암호화 하여 저장하며 기존에 저장되어 있던 미디어 파일을 암호화 하는 경우 원본 데이터의 삭제 유무를 확인하여 암호화를 수행할 수 있다.For example, the SafeCamera application can store encrypted and non-encrypted files by creating SafeCamera and SafeCameraDecrypted folders respectively in the top-level folder of the external file storage. Here, when the SafeCamera application is used for the first time, access to the application can be controlled by registering a user input password, and the target of the encryption/decryption function corresponds to photos taken through the application and previously stored photos and video files. can do. In addition, the SafeCamera application immediately encrypts and stores the captured photos, and when the previously stored media files are encrypted, the encryption can be performed by checking whether the original data has been deleted.

비밀키 검증코드 획득부(330)는 암호화 파일과 연관된 비밀키 검증코드를 획득할 수 있다. 암호화를 제공하는 전용 애플리케이션은 사용자 입력 패스워드를 알 수 없는 경우 암호화 파일의 복호화가 불가능하도록 암호화 파일에 대한 보호수단을 제공할 수 있다. 애플리케이션은 패스워드를 평문 형태로 저장하진 않지만 권한이 있는 사용자만 접근할 수 있도록 하기 위해 패스워드 검증용 데이터를 저장할 수 있다.The secret key verification code obtaining unit 330 may obtain a secret key verification code associated with the encrypted file. A dedicated application that provides encryption may provide a means of protecting the encrypted file so that decryption of the encrypted file is impossible when the user input password is unknown. Applications do not store passwords in plaintext, but may store data for password verification to ensure that only authorized users can access them.

즉, 비밀키 검증코드 획득부(330)는 암호화 파일과 연관된 패스워드 검증용 데이터로서 비밀키 검증코드를 획득할 수 있다. 비밀키 검증코드는 애플리케이션에 따라 저장되는 위치 및 저장되는 파일이 상이할 수 있다. 예를 들어, SafeCamera 애플리케이션의 경우 'SafeCamera' 폴더 내에 숨김 처리 파일 '.hash'와 패키지 하위 폴더 'shared_prefs' 내에 존재하는 'default_prefs.xml' 내에 패스워드 검증용 데이터가 저장될 수 있다.That is, the secret key verification code obtaining unit 330 may obtain the secret key verification code as password verification data associated with the encrypted file. The location where the secret key verification code is stored and the file to be stored may be different depending on the application. For example, in the case of the SafeCamera application, data for password verification may be stored in the hidden processing file '.hash' in the 'SafeCamera' folder and 'default_prefs.xml' in the package subfolder 'shared_prefs'.

일 실시예에서, 비밀키 검증코드 획득부(330)는 사용자 비밀키에 대해 해시함수를 반복 적용한 결과로서 비밀키 검증코드를 생성할 수 있다. 이 때, 해시함수를 반복 적용하는 과정에서 최초의 해시함수는 사용자 비밀키를 입력으로 사용하여 해시함수 값을 출력으로 생성하되 나머지 해시함수는 이전 단계의 해시함수 값과 사용자 비밀키 간의 연접 연산을 통해 생성된 값을 입력으로 사용할 수 있다. 이 경우 다음과 같이 표현될 수 있다.In one embodiment, the secret key verification code obtaining unit 330 may generate the secret key verification code as a result of repeatedly applying the hash function to the user's private key. At this time, in the process of repeatedly applying the hash function, the first hash function uses the user secret key as an input and generates a hash function value as an output, but the rest of the hash functions perform a concatenation operation between the hash function value of the previous step and the user secret key. The generated value can be used as input. In this case, it can be expressed as follows.

1) Hash Value A = SHA512(Password)1) Hash Value A = SHA512(Password)

2) Verify Data = SHA512(Hash Value A || Password)2) Verify Data = SHA512(Hash Value A || Password)

즉, 비밀키 검증코드 획득부(330)는 사용자 비밀키(즉, 사용자 입력 패스워드에 해당함)를 SHA512 해시함수를 통해 해싱하고, 그 결과값에 다시 한번 사용자 비밀키를 연접하여 SHA512 해시함수로 해싱한 결과로서 비밀키 검증코드를 생성할 수 있다.That is, the secret key verification code obtaining unit 330 hashes the user secret key (that is, corresponding to the user input password) through the SHA512 hash function, and connects the user secret key to the result value once again and hashes it with the SHA512 hash function. As a result, a secret key verification code can be generated.

사용자 비밀키 복원부(350)는 비밀키 검증코드를 이용하여 암호화 과정에서 사용된 고유의 사용자 비밀키를 복원할 수 있다. 즉, 사용자 비밀키는 암호화 과정에서 사용된 사용자 입력 패스워드에 해당할 수 있다. 보다 구체적으로, 사용자 비밀키 복원부(350)는 사용자 비밀키에 대한 해시함수의 반복 적용으로 비밀키 검증코드를 획득하는 연산 과정을 역으로 이용하여 비밀키 검증코드를 기초로 사용자 비밀키를 복원할 수 있다. 결과적으로, 사용자 비밀키 복원부(350)는 SHA512 해시함수를 두 번 사용하는 것으로 쉽게 사용자 비밀키를 검증할 수 있다.The user secret key restoration unit 350 may restore the unique user secret key used in the encryption process by using the secret key verification code. That is, the user secret key may correspond to the user input password used in the encryption process. More specifically, the user secret key restoration unit 350 restores the user secret key based on the secret key verification code by reversely using the operation process of obtaining the secret key verification code by repeatedly applying the hash function to the user secret key. can do. As a result, the user secret key restoration unit 350 can easily verify the user secret key by using the SHA512 hash function twice.

일 실시예에서, 사용자 비밀키 복원부(350)는 생성규칙에 의해 순차적으로 생성되는 복수의 후보 사용자 비밀키들 중에서 해시함수에 반복 적용한 결과값이 비밀키 검증코드와 일치하는 경우 해당 후보 사용자 비밀키를 사용자 비밀키로서 결정할 수 있다. 예를 들어, SafeCamera 애플리케이션은 사용자 입력 패스워드로 최소 6자리를 사용하며, 0~9, a~z 및 A~Z와 특수문자 6개를 조합하여 12자리의 입력문자로 사용하기를 권장하고 있다. 사용자 비밀키 복원부(350)는 해당 생성규칙을 적용하여 복수의 후보 사용자 비밀키들을 순차적으로 생성할 수 있고, 각 후보 사용자 비밀키에 대해 SHA512 해시함수를 반복 적용한 결과를 비밀키 검증코드와 비교하는 검증 과정을 통해 최종적으로 사용자 비밀키를 결정할 수 있다.In one embodiment, the user secret key restoration unit 350 is the candidate user secret key when the result value repeatedly applied to the hash function from among the plurality of candidate user secret keys sequentially generated by the generation rule matches the secret key verification code can be determined as the user secret key. For example, the SafeCamera application uses a minimum of 6 characters for the user input password, and it is recommended to use a combination of 0~9, a~z, and A~Z plus 6 special characters as 12-character input characters. The user secret key restoration unit 350 may sequentially generate a plurality of candidate user secret keys by applying the corresponding generation rule, and compare the result of repeatedly applying the SHA512 hash function to each candidate user secret key with the secret key verification code. Through the verification process, the user's secret key can be finally determined.

한편, 사용자 비밀키 복원부(350)는 사용자 비밀키 복원을 위한 복구 실험을 수행할 수 있으며, 실험 환경은 Processor: intel(R) Core(TM) i7-4790 CPU, Threads: single, Memory(ram): 32.0GB, System: windows 10 x64 와 같이 구축될 수 있다. 이에 대한 구체적인 실험 결과는 다음과 같다. 즉, Password digits 1의 경우 0.16 s, Password digits 2의 경우 0.28 s, Password digits 3의 경우 2.60 s, Password digits 4의 경우 2.41 m, Password digits 5의 경우 2.89 h 와 같은 시간(time)이 소요되었으며, Password digits 6의 경우 8.18 days, Password digits 7의 경우 556.8 days 와 같은 시간이 소요될 것으로 예측(estimate)되었다.Meanwhile, the user secret key restoration unit 350 may perform a recovery experiment for restoring the user secret key, and the experimental environment is Processor: intel(R) Core(TM) i7-4790 CPU, Threads: single, Memory (ram). ): 32.0 GB, System: can be built like windows 10 x64. Specific experimental results for this are as follows. That is, it took 0.16 s for Password digits 1, 0.28 s for Password digits 2, 2.60 s for Password digits 3, 2.41 m for Password digits 4, and 2.89 h for Password digits 5. , it was estimated that it would take 8.18 days for Password digits 6 and 556.8 days for Password digits 7.

참고로, 해시함수 기반의 비밀번호 복구 도구 Hashcat의 벤치마크에 의하면 RTX 2080 ti GPU 1대 기준 초당 약 22억 번 이상의 SHA512 해시함수 사용이 가능하다. 단순 계산 시 초당 약 11억 번의 패스워드 검증이 가능함을 의미한다. 따라서, RTX 2080 ti GPU 1대 기준으로 6자리 비밀번호는 약 90초 이하로 복구할 수 있으며 이후 한 자릿수 당 약 68배 이하의 시간이 소요될 수 있다.For reference, according to the benchmark of Hashcat, a hash function-based password recovery tool, it is possible to use the SHA512 hash function more than 2.2 billion times per second based on one RTX 2080 ti GPU. It means that password verification is possible about 1.1 billion times per second for simple calculations. Therefore, based on one RTX 2080 ti GPU, a six-digit password can be recovered in about 90 seconds or less, and it may take about 68 times or less for each digit thereafter.

비암호화 파일 생성부(370)는 암호화 파일 및 사용자 비밀키를 기초로 암호화 파일을 해독하여 비암호화 파일을 생성할 수 있다. 미디어 파일에 대한 암호화를 제공하는 애플리케이션은 비암호화 파일을 기초로 사용자 비밀키를 입력 받아 암호화 연산을 수행한 결과로서 암호화 파일을 생성할 수 있다. 즉, 비암호화 파일 생성부(370)는 비암호화 파일에 대해 암호화 연산을 역으로 적용하여 암호화 파일을 복원할 수 있고, 이 과정에서 사용자 비밀키 복원부(350)에 의해 복원된 사용자 비밀키가 사용될 수 있다.The non-encrypted file generation unit 370 may generate a non-encrypted file by decrypting the encrypted file based on the encrypted file and the user's secret key. An application that provides encryption for a media file may generate an encrypted file as a result of performing an encryption operation by receiving a user secret key based on an unencrypted file. That is, the non-encrypted file generating unit 370 may restore the encrypted file by reversely applying the encryption operation to the non-encrypted file, and in this process, the user secret key restored by the user secret key restoration unit 350 is can be used

일 실시예에서, 비암호화 파일 생성부(370)는 암호화 파일을 분해하여 시그니처(Signature), 제1 변수, 제2 변수 및 암호문(Ciphertext)을 각각 추출할 수 있다. 여기에서, 시그니처, 제1 변수 및 제2 변수는 암호화 과정에서 사용되는 파라미터에 해당할 수 있고, 외부 공격으로부터 암호화 과정을 보호하기 위해 예측 불가능성을 제공하는 역할을 담당할 수 있다. 이 때, 시그니처는 암호화의 대상에 따라 상이하게 결정되고 제2 변수의 크기는 제1 변수의 크기보다 더 크게 형성될 수 있다. 암호화 파일의 구조에 대해서는 도 5에서 보다 자세히 설명한다. In an embodiment, the non-encrypted file generator 370 decomposes the encrypted file to extract a signature, a first variable, a second variable, and a ciphertext, respectively. Here, the signature, the first variable, and the second variable may correspond to parameters used in the encryption process, and may serve to provide unpredictability to protect the encryption process from external attacks. In this case, the signature may be determined differently depending on the target of encryption, and the size of the second variable may be larger than the size of the first variable. The structure of the encrypted file will be described in more detail with reference to FIG. 5 .

일 실시예에서, 시그니처는 적어도 6바이트의 크기로 형성되고 암호화의 대상이 파일명인 경우 암호화의 횟수에 따라 증가하는 카운터를 포함할 수 있다. 예를 들어, 시그니처는 암호화 대상이 미디어 파일의 데이터인 경우 'SCAES.'에 해당할 수 있고, 암호화 대상이 미디어 파일의 파일명인 경우 'zzSC-cnt_'에 해당할 수 있다. 시그니처는 그 효과를 일정 수준으로 보장하기 위하여 최소 6바이트의 크기로 생성되어 암호화 과정에서 사용될 수 있다. 한편, 파일명 시그니처의 cnt는 시그니처는 같지만 서로 다른 데이터의 암호화 시 중복으로 인한 덮어쓰기를 방지하기 위한 카운터로 전용 애플리케이션을 통한 미디어 파일의 암호화 시 1 씩 증가될 수 있다.In one embodiment, the signature is formed in a size of at least 6 bytes and may include a counter that is increased according to the number of times of encryption when the target of encryption is a file name. For example, the signature may correspond to 'SCAES.' if the encryption target is data of a media file, and may correspond to 'zzSC-cnt_' if the encryption target is the file name of a media file. In order to guarantee the effect to a certain level, the signature is generated with a size of at least 6 bytes and can be used in the encryption process. Meanwhile, cnt of the file name signature is a counter to prevent overwriting due to duplication when encrypting different data with the same signature, and may be incremented by 1 when encrypting a media file through a dedicated application.

일 실시예에서, 비암호화 파일 생성부(370)는 사용자 비밀키에 해시함수를 적용하여 비밀코드를 생성하고 비밀코드 및 제2 변수를 제1 암호 알고리즘의 입력 파라미터로 사용하여 암호키를 생성할 수 있다. 즉, 제1 암호 알고리즘은 암호키 생성을 위한 알고리즘에 해당할 수 있다. 예를 들어, SafeCamera 애플리케이션은 SHA512 해시함수를 사용하고 PBE를 암호 알고리즘으로 사용하여 암호키를 생성할 수 있다. 또한, SafeCamera 애플리케이션은 사용자 비밀키를 해시함수로 해싱 후, 그 해시값을 PBE의 Passphrase로 사용할 수 있다. 암호키 생성 과정은 다음과 같을 수 있다.In one embodiment, the non-encryption file generation unit 370 generates a secret code by applying a hash function to the user secret key, and generates an encryption key using the secret code and the second variable as input parameters of the first encryption algorithm. can That is, the first encryption algorithm may correspond to an algorithm for generating an encryption key. For example, a SafeCamera application can generate a cryptographic key using a SHA512 hash function and PBE as its cryptographic algorithm. In addition, the SafeCamera application can use the hash value as a passphrase of the PBE after hashing the user's secret key with a hash function. The encryption key generation process may be as follows.

1) Passphrase = SHA512(Password)1) Passphrase = SHA512(Password)

2) Key = PBEwithSHA256and256bitAES-CBC-BC(Passphrase, Salt, 2048, 256)2) Key = PBEwithSHA256and256bitAES-CBC-BC(Passphrase, Salt, 2048, 256)

여기에서, Passphrase는 비밀코드에 해당하고, Password는 사용자 비밀키에 해당하며, Key는 암호키에 해당하고, Salt는 제2 변수에 해당할 수 있다. PBE는 Password Based Encryption에 해당할 수 있고, 비밀코드를 기반으로 Salt 및 Iv 등 암호화에 필요한 변수들을 생성하여 암호화할 수 있는 알고리즘에 해당할 수 있다. SafeCamera 애플리케이션은 PBEwithSHA256and256bitAES-CBC-BC를 암호키 생성 용도로만 사용할 수 있다. 또한, PBE에 사용된 Salt는 SHA-1PRNG를 통해 생성된 32-byte의 랜덤 데이터에 해당할 수 있다.Here, Passphrase may correspond to a secret code, Password may correspond to a user secret key, Key may correspond to an encryption key, and Salt may correspond to a second variable. The PBE may correspond to Password Based Encryption, and may correspond to an algorithm capable of encryption by generating variables necessary for encryption such as Salt and Iv based on the secret code. SafeCamera applications can only use PBEwithSHA256and256bitAES-CBC-BC for encryption key generation. In addition, the salt used for PBE may correspond to 32-byte random data generated through SHA-1PRNG.

일 실시예에서, 비암호화 파일 생성부(370)는 비암호화 파일, 암호키 및 제1 변수를 입력 파라미터로 사용하여 암호문을 출력으로 생성하는 제2 암호 알고리즘의 암호화 과정을 해독하여 비암호화 파일을 생성할 수 있다. 즉, 제2 암호 알고리즘은 암호문 생성을 위한 알고리즘에 해당할 수 있다. 예를 들어, SafeCamera 애플리케이션은 AES-256-CBC/PKCS#7을 사용하여 암호화 연산을 수행할 수 있고, 이 때 비암호화 파일, 암호키 및 제1 변수를 입력 파라미터로 사용할 수 있으며, Ciphertext = AES-256-CBC/PKCS#7(Plaintext, Key, Iv)로 표현될 수 있다. 여기에서, Ciphertext는 암호문에 해당하고, Plaintext는 평문에 해당하며, Iv는 제1 변수에 해당할 수 있다.In one embodiment, the non-encrypted file generation unit 370 decrypts the encryption process of the second encryption algorithm that generates a cipher text as an output using the non-encrypted file, the encryption key, and the first variable as input parameters to generate the non-encrypted file. can create That is, the second encryption algorithm may correspond to an algorithm for generating a ciphertext. For example, the SafeCamera application can perform cryptographic operations using AES-256-CBC/PKCS#7, where an unencrypted file, an encryption key and a first variable can be used as input parameters, Ciphertext = AES It can be expressed as -256-CBC/PKCS#7 (Plaintext, Key, Iv). Here, Ciphertext may correspond to ciphertext, Plaintext may correspond to plaintext, and Iv may correspond to the first variable.

한편, 비암호화 파일 생성부(370)에 의해 수행되는 암호화 과정을 정리하면 다음과 같을 수 있다.Meanwhile, the encryption process performed by the non-encrypted file generating unit 370 may be summarized as follows.

1) Passphrase = SHA512(Password)1) Passphrase = SHA512(Password)

2) Key = PBEwithSHA256and256bitAES-CBC-BC(Passphrase, Salt, 2048, 256)2) Key = PBEwithSHA256and256bitAES-CBC-BC(Passphrase, Salt, 2048, 256)

3) Ciphertext = AES-256-CBC/PKCS#7(Plaintext, Key, Iv)3) Ciphertext = AES-256-CBC/PKCS#7(Plaintext, Key, Iv)

제어부(390)는 안티 포렌식 해제 장치(130)의 전체적인 동작을 제어하고, 암호화 파일 수신부(310), 비밀키 검증코드 획득부(330), 사용자 비밀키 복원부(350) 및 비암호화 파일 생성부(370) 간의 제어 흐름 또는 데이터 흐름을 관리할 수 있다.The control unit 390 controls the overall operation of the anti-forensic unlocking device 130 , the encrypted file receiving unit 310 , the secret key verification code obtaining unit 330 , the user private key restoring unit 350 , and the non-encrypting file generating unit It can manage the control flow or data flow between 370 .

도 4는 도 1의 안티 포렌식 해제 장치에서 수행되는 미디어 파일에 대한 안티 포렌식 해제 과정을 설명하는 순서도이다.4 is a flowchart illustrating an anti-forensic release process for a media file performed by the anti-forensic release device of FIG. 1 .

도 4를 참조하면, 안티 포렌식 해제 장치(130)는 암호화 파일 수신부(310)를 통해 비암호화 파일을 암호화 한 결과로서 생성된 암호화 파일을 수신할 수 있다(단계 S410). 안티 포렌식 해제 장치(130)는 비밀키 검증코드 획득부(330)를 통해 암호화 파일과 연관된 비밀키 검증코드를 획득할 수 있다(단계 S430).Referring to FIG. 4 , the anti-forensic unlocking device 130 may receive the encrypted file generated as a result of encrypting the non-encrypted file through the encrypted file receiving unit 310 (step S410 ). The anti-forensic release device 130 may acquire the secret key verification code associated with the encrypted file through the secret key verification code obtaining unit 330 (step S430).

또한, 안티 포렌식 해제 장치(130)는 사용자 비밀키 복원부(350)를 통해 비밀키 검증코드를 이용하여 암호화 과정에서 사용된 고유의 사용자 비밀키를 복원할 수 있다(단계 S450). 안티 포렌식 해제 장치(130)는 비암호화 파일 생성부(370)를 통해 암호화 파일 및 사용자 비밀키를 기초로 암호화 파일을 해독하여 비암호화 파일을 생성할 수 있다(단계 S470).In addition, the anti-forensic release device 130 may restore the unique user secret key used in the encryption process using the secret key verification code through the user secret key restoration unit 350 (step S450). The anti-forensic decryption apparatus 130 may generate a non-encrypted file by decrypting the encrypted file based on the encrypted file and the user's secret key through the non-encrypting file generating unit 370 (step S470).

도 5는 본 발명에 따른 암호화 파일의 파일 구조를 설명하는 도면이다.5 is a diagram for explaining the file structure of an encrypted file according to the present invention.

도 5를 참조하면, 안티 포렌식 해제 장치(130)는 비암호화 파일 생성부(350)를 통해 사용자 비밀키를 기초로 암호화 파일을 해독하여 비암호화 파일을 생성할 수 있다. 이 때, 비암호화 파일 생성부(350)는 암호화 파일을 분해하여 시그니처(Signature), 제1 변수, 제2 변수 및 암호문(Ciphertext)을 각각 추출할 수 있다.Referring to FIG. 5 , the anti-forensic decryption apparatus 130 may generate a non-encrypted file by decrypting the encrypted file based on the user's secret key through the non-encrypting file generator 350 . In this case, the non-encrypted file generator 350 may decompose the encrypted file to extract a signature, a first variable, a second variable, and a ciphertext, respectively.

도 5에서, 암호 애플리케이션에 의해 암호화된 결과로서 생성되는 암호화 파일은 시그니처, 제1 변수, 제2 변수 및 암호문을 순서대로 연접한 결과로서 형성될 수 있다. 제1 변수는 Iv에 해당되고, 제2 변수는 Salt에 해당될 수 있다. Salt는 암호키 생성 과정에서 사용되고 SHA-1PRNG를 통해 생성된 32-byte의 랜덤 데이터로 암호화 후 암호문 앞에 연접될 수 있다. Iv는 암호문 생성 과정에서 사용되고 SHA-1PRNG를 통해 생성된 16-byte의 랜덤 데이터로 Salt 앞에 연접될 수 있다. 즉 제2 변수의 크기는 제1 변수의 크기보다 더 크게 형성될 수 있다.In FIG. 5 , the encrypted file generated as a result of being encrypted by the cryptographic application may be formed as a result of concatenating the signature, the first variable, the second variable, and the ciphertext in order. The first variable may correspond to Iv, and the second variable may correspond to Salt. Salt is used in the encryption key generation process and is 32-byte random data generated through SHA-1PRNG and can be concatenated in front of the ciphertext after encryption. Iv is used in the ciphertext generation process and can be concatenated before Salt as 16-byte random data generated through SHA-1PRNG. That is, the size of the second variable may be larger than the size of the first variable.

한편, 시그니처(Signature)는 암호문과 함께 암호화 파일을 형성함으로써 암호화 파일의 노출에도 불구하고 암호문의 복구를 방지하는 효과를 제공할 수 있다. 특히, 시그니처는 적어도 6byte의 크기로 형성될 수 있고, 암호화의 대상에 따라 상이하게 형성되어 암호문에 추가될 수 있다. 예를 들어, 암호화의 대상이 미디어 파일의 데이터인 경우 시그니처는 'SCAES.' 이며 파일명인 경우 'zzSC-cnt_'에 해당할 수 있다. 파일명 시그니처의 cnt는 파일명이 같지만 서로 다른 데이터의 암호화 시 중복으로 인한 덮어쓰기를 방지하기 위한 카운터로 전용 애플리케이션을 통한 미디어 파일 암호화 시 1씩 증가될 수 있다.Meanwhile, the signature may provide an effect of preventing recovery of the cipher text despite exposure of the encrypted file by forming the encrypted file together with the cipher text. In particular, the signature may be formed in a size of at least 6 bytes, and may be formed differently depending on the target of encryption and added to the ciphertext. For example, if the target of encryption is data in a media file, the signature is 'SCAES.' and may correspond to 'zzSC-cnt_' in the case of a file name. The cnt of the file name signature is a counter to prevent overwriting due to duplication when encrypting different data with the same file name.

도 6 내지 9는 본 발명에 따른 미디어 파일에 대한 암호화 과정을 설명하는 도면이다.6 to 9 are diagrams for explaining an encryption process for a media file according to the present invention.

도 6을 참조하면, 안티 포렌식 해제 장치(130)는 암호화 과정을 역으로 이용하여 암호화 파일에 대한 복호화를 수행할 수 있다. 도 6에서, 암호화 파일에 대한 암호화 과정은 총 3 단계로 구분될 수 있다. 첫 번째 단계는 암호화 과정에서 사용되는 암호키를 생성하는 단계(S610)이고, 두 번째 단계는 입력(Input)에 해당하는 비암호화 파일(600)과 암호키를 이용하여 암호문(ciphertext)을 생성하는 단계(S630)이며, 세 번째 단계는 암호문에 시그니처를 추가하여 암호화 파일을 생성하는 단계(S650)에 해당할 수 있다.Referring to FIG. 6 , the anti-forensic unlocking apparatus 130 may decrypt an encrypted file by using the encryption process in reverse. In FIG. 6 , an encryption process for an encrypted file may be divided into three steps. The first step is a step (S610) of generating an encryption key used in the encryption process, and the second step is to generate a ciphertext using the non-encrypted file 600 and the encryption key corresponding to the input. Step S630, and the third step may correspond to step S650 of generating an encrypted file by adding a signature to the ciphertext.

도 7을 참조하면, 암호화 과정의 첫 번째 단계는 암호화 과정에서 사용되는 암호키를 생성하는 단계(S610)에 해당할 수 있다. 암호키를 생성하는 단계는 사용자로부터 사용자 비밀키(User Password)를 입력 받고 사용자 비밀키에 해시 함수를 적용하여 비밀코드를 생성하며 비밀코드와 제2 변수를 입력 파라미터로 하는 알고리즘 연산을 통해 암호화 과정에서 사용되는 암호키를 출력으로 생성하는 동작이 수행될 수 있다. 첫 번째 단계에서 생성된 암호키는 두 번째 단계(S630)로 전달될 수 있다.Referring to FIG. 7 , the first step of the encryption process may correspond to the step of generating an encryption key used in the encryption process ( S610 ). In the step of generating an encryption key, a user password is inputted from a user, a hash function is applied to the user secret key to generate a secret code, and an encryption process is performed through an algorithm operation using the secret code and a second variable as input parameters. An operation of generating the encryption key used in the output as an output may be performed. The encryption key generated in the first step may be transferred to the second step (S630).

도 8을 참조하면, 암호화 과정의 두 번째 단계는 입력(Input)에 해당하는 비암호화 파일(600)과 암호키를 이용하여 암호문(Ciphertext)을 생성하는 단계(S630)에 해당할 수 있다. 암호문을 생성하는 단계는 비암호화 파일(600)과 첫 번째 단계에서 생성한 암호키 및 제1 변수를 입력 파라미터로 하는 알고리즘 연산을 통해 암호문을 생성하는 동작이 수행될 수 있다. 두 번째 단계에서 생성된 암호문은 세 번째 단계(S650)로 전달될 수 있다.Referring to FIG. 8 , the second step of the encryption process may correspond to a step S630 of generating a ciphertext using an unencrypted file 600 corresponding to an input and an encryption key. In the step of generating the cipher text, the operation of generating the cipher text may be performed through an algorithm operation using the non-encrypted file 600, the encryption key generated in the first step, and the first variable as input parameters. The ciphertext generated in the second step may be transmitted to the third step (S650).

도 9를 참조하면, 암호화 과정의 세 번째 단계는 암호문에 시그니처를 추가하여 암호화 파일(900)을 생성하는 단계(S650)에 해당할 수 있다. 암호화 파일(900)을 생성하는 단계는 입력이 파일 데이터인지 또는 파일명인지에 따라 서로 다른 시그니처를 결정하고, 결정된 시그니처와 제1 변수, 제2 변수 및 암호문을 순서대로 연접한 결과로서 암호화 파일(900)을 생성할 수 있다. 한편, 암호화가 모두 완료된 경우 최종적으로 암호화 파일(900)의 확장자가 변경될 수 있다.Referring to FIG. 9 , the third step of the encryption process may correspond to the step S650 of generating an encrypted file 900 by adding a signature to the encrypted text. In the step of generating the encrypted file 900, different signatures are determined depending on whether the input is file data or a file name, and the encrypted file 900 is a result of sequentially concatenating the determined signature with the first variable, the second variable, and the cipher text. ) can be created. Meanwhile, when all encryption is completed, the extension of the encrypted file 900 may be finally changed.

결과적으로, 안티 포렌식 해제 장치(130)는 안티 포렌식 행위로 작용할 수 있는 암호화 과정을 역으로 적용하여 암호화된 데이터를 복호화하는 동작을 수행할 수 있고, 그 과정에서 사용자 입력 패스워드를 복구할 수 있다.As a result, the anti-forensic unlocking device 130 may perform an operation of decrypting encrypted data by reversely applying an encryption process that may act as an anti-forensic action, and may recover a user input password in the process.

상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.Although the above has been described with reference to preferred embodiments of the present invention, those skilled in the art can variously modify and change the present invention within the scope without departing from the spirit and scope of the present invention as set forth in the claims below. You will understand that it can be done.

100: 안티 포렌식 해제 시스템
110: 사용자 단말 130: 안티 포렌식 해제 장치
150: 데이터베이스
210: 프로세서 230: 메모리
250: 사용자 입출력부 270: 네트워크 입출력부
310: 암호화 파일 수신부 330: 비밀키 검증코드 획득부
350: 사용자 비밀키 복원부 370: 비암호화 파일 생성부
390: 제어부
600: 비암호화 파일
900: 암호화 파일
100: Anti-Forensic Release System
110: user terminal 130: anti-forensic release device
150: database
210: processor 230: memory
250: user input/output unit 270: network input/output unit
310: encryption file receiving unit 330: secret key verification code acquisition unit
350: user secret key restoration unit 370: non-encrypted file generation unit
390: control unit
600: unencrypted file
900: encrypted file

Claims (9)

비암호화 파일을 암호화 한 결과로서 생성된 암호화 파일을 수신하는 암호화 파일 수신부;
상기 암호화 파일과 연관된 비밀키 검증코드를 획득하는 비밀키 검증코드 획득부;
상기 비밀키 검증코드를 이용하여 상기 암호화의 과정에서 사용된 고유의 사용자 비밀키를 복원하는 사용자 비밀키 복원부; 및
상기 암호화 파일 및 상기 사용자 비밀키를 기초로 상기 암호화 파일을 해독하여 상기 비암호화 파일을 생성하는 비암호화 파일 생성부를 포함하되,
상기 비암호화 파일 생성부는 상기 암호화 파일을 분해하여 시그니처(Signature), 제1 변수, 제2 변수 및 암호문(Ciphertext)을 각각 추출하고,
상기 시그니처는 상기 암호화의 대상에 따라 상이하게 결정되고 상기 제2 변수의 크기는 상기 제1 변수의 크기보다 더 크게 형성되는 것을 특징으로 하는 미디어 파일에 대한 안티 포렌식 해제 장치.
an encrypted file receiving unit for receiving an encrypted file generated as a result of encrypting the non-encrypted file;
a secret key verification code obtaining unit for obtaining a secret key verification code associated with the encrypted file;
a user secret key restoration unit for restoring a unique user secret key used in the encryption process by using the secret key verification code; and
Comprising a non-encrypted file generator for generating the non-encrypted file by decrypting the encrypted file based on the encrypted file and the user secret key,
The non-encrypted file generator decomposes the encrypted file to extract a signature, a first variable, a second variable, and a ciphertext, respectively,
The anti-forensic release apparatus for a media file, wherein the signature is determined differently according to the target of the encryption, and the size of the second variable is larger than the size of the first variable.
제1항에 있어서,
상기 암호화 파일 및 상기 비암호화 파일은 외부 파일 저장영역의 최상위 폴더 내에 각각 독립적으로 저장되는 것을 특징으로 하는 미디어 파일에 대한 안티 포렌식 해제 장치.
According to claim 1,
The anti-forensic release device for media files, characterized in that the encrypted file and the non-encrypted file are each independently stored in an uppermost folder of an external file storage area.
제1항에 있어서, 상기 비밀키 검증코드 획득부는
상기 사용자 비밀키에 대해 해시함수를 반복 적용한 결과로서 상기 비밀키 검증코드를 생성하고,
상기 반복 적용 과정에서 최초의 해시함수는 상기 사용자 비밀키를 입력으로 사용하여 해시함수 값을 출력으로 생성하되 나머지 해시함수는 이전 단계의 해시함수 값과 상기 사용자 비밀키 간의 연접 연산을 통해 생성된 값을 입력으로 사용하는 것을 특징으로 하는 미디어 파일에 대한 안티 포렌식 해제 장치.
The method of claim 1, wherein the secret key verification code obtaining unit
To generate the secret key verification code as a result of repeatedly applying a hash function to the user secret key,
In the repeated application process, the first hash function uses the user secret key as an input to generate a hash function value as an output, but the remaining hash functions are values generated through concatenation operation between the hash function value of the previous step and the user secret key. An anti-forensic release device for media files, characterized in that it uses as an input.
제3항에 있어서, 상기 사용자 비밀키 복원부는
생성규칙에 의해 순차적으로 생성되는 복수의 후보 사용자 비밀키들 중에서 상기 해시함수에 반복 적용한 결과값이 상기 비밀키 검증코드와 일치하는 경우 해당 후보 사용자 비밀키를 상기 사용자 비밀키로서 결정하는 것을 특징으로 하는 미디어 파일에 대한 안티 포렌식 해제 장치.
The method of claim 3, wherein the user secret key restoration unit
When a result value repeatedly applied to the hash function from among a plurality of candidate user secret keys sequentially generated according to a generation rule matches the secret key verification code, the candidate user secret key is determined as the user secret key Anti-Forensic Disable Device for Media Files.
삭제delete 제1항에 있어서, 상기 시그니처는
적어도 6바이트의 크기로 형성되고 상기 암호화의 대상이 파일명인 경우 상기 암호화의 횟수에 따라 증가하는 카운터를 포함하는 것을 특징으로 하는 미디어 파일에 대한 안티 포렌식 해제 장치.
The method of claim 1, wherein the signature is
The anti-forensic release device for media files, comprising a counter that is formed in a size of at least 6 bytes and increases according to the number of times of the encryption when the target of the encryption is a file name.
제1항에 있어서, 상기 비암호화 파일 생성부는
상기 사용자 비밀키에 해시함수를 적용하여 비밀코드를 생성하고 상기 비밀코드 및 상기 제2 변수를 제1 암호 알고리즘의 입력 파라미터로 사용하여 암호키를 생성하는 것을 특징으로 하는 미디어 파일에 대한 안티 포렌식 해제 장치.
The method of claim 1, wherein the non-encrypted file generation unit
Anti-forensic release for media files, characterized in that applying a hash function to the user secret key to generate a secret code, and generating an encryption key using the secret code and the second variable as input parameters of a first encryption algorithm Device.
제7항에 있어서, 상기 비암호화 파일 생성부는
상기 비암호화 파일, 상기 암호키 및 상기 제1 변수를 입력 파라미터로 사용하여 상기 암호문을 출력으로 생성하는 제2 암호 알고리즘의 암호화 과정을 해독하여 상기 비암호화 파일을 생성하는 것을 특징으로 하는 미디어 파일에 대한 안티 포렌식 해제 장치.
The method of claim 7, wherein the non-encrypted file generating unit
In a media file, characterized in that the non-encrypted file is generated by decrypting the encryption process of a second encryption algorithm that generates the encrypted text as an output using the unencrypted file, the encryption key, and the first variable as input parameters. For anti-forensic release devices.
비암호화 파일을 암호화 한 결과로서 생성된 암호화 파일을 수신하는 단계;
상기 암호화 파일과 연관된 비밀키 검증코드를 획득하는 단계;
상기 비밀키 검증코드를 이용하여 상기 암호화의 과정에서 사용된 고유의 사용자 비밀키를 복원하는 단계; 및
상기 암호화 파일 및 상기 사용자 비밀키를 기초로 상기 암호화 파일을 해독하여 상기 비암호화 파일을 생성하는 단계를 포함하되,
상기 비암호화 파일을 생성하는 단계는 상기 암호화 파일을 분해하여 시그니처(Signature), 제1 변수, 제2 변수 및 암호문(Ciphertext)을 각각 추출하는 단계를 포함하고,
상기 시그니처는 상기 암호화의 대상에 따라 상이하게 결정되고 상기 제2 변수의 크기는 상기 제1 변수의 크기보다 더 크게 형성되는 것을 특징으로 하는 미디어 파일에 대한 안티 포렌식 해제 방법.
receiving an encrypted file generated as a result of encrypting the unencrypted file;
obtaining a secret key verification code associated with the encrypted file;
restoring a unique user secret key used in the encryption process using the secret key verification code; and
Decrypting the encrypted file based on the encrypted file and the user secret key to generate the unencrypted file,
The generating of the non-encrypted file includes decomposing the encrypted file to extract a signature, a first variable, a second variable, and a ciphertext, respectively,
The method of claim 1, wherein the signature is determined differently depending on the encryption target, and the size of the second variable is larger than the size of the first variable.
KR1020200040287A 2020-04-02 2020-04-02 Device and method for anti-forensic unlocking for media files KR102311996B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200040287A KR102311996B1 (en) 2020-04-02 2020-04-02 Device and method for anti-forensic unlocking for media files

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200040287A KR102311996B1 (en) 2020-04-02 2020-04-02 Device and method for anti-forensic unlocking for media files

Publications (1)

Publication Number Publication Date
KR102311996B1 true KR102311996B1 (en) 2021-10-13

Family

ID=78114984

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200040287A KR102311996B1 (en) 2020-04-02 2020-04-02 Device and method for anti-forensic unlocking for media files

Country Status (1)

Country Link
KR (1) KR102311996B1 (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070001055A (en) 2003-10-13 2007-01-03 톰슨 라이센싱 Method and apparatus for decrypting an encrypted supplementary data set
KR20170001633A (en) * 2015-06-25 2017-01-04 충남대학교산학협력단 Tokenization-based encryption key managemnent sytem and method
KR101925941B1 (en) * 2017-10-13 2018-12-06 주식회사 오스랩스 Transaction signing authentication method based on information virtualization
KR20190021022A (en) * 2017-08-22 2019-03-05 덕성여자대학교 산학협력단 Method for setting secure key between lightweight devices in internet of things using different secure strength and different out-of-band channel
WO2019096748A1 (en) * 2017-11-14 2019-05-23 Nagravision S.A. Integrated circuit personalisation

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070001055A (en) 2003-10-13 2007-01-03 톰슨 라이센싱 Method and apparatus for decrypting an encrypted supplementary data set
KR20170001633A (en) * 2015-06-25 2017-01-04 충남대학교산학협력단 Tokenization-based encryption key managemnent sytem and method
KR20190021022A (en) * 2017-08-22 2019-03-05 덕성여자대학교 산학협력단 Method for setting secure key between lightweight devices in internet of things using different secure strength and different out-of-band channel
KR101925941B1 (en) * 2017-10-13 2018-12-06 주식회사 오스랩스 Transaction signing authentication method based on information virtualization
WO2019096748A1 (en) * 2017-11-14 2019-05-23 Nagravision S.A. Integrated circuit personalisation

Similar Documents

Publication Publication Date Title
JP6884642B2 (en) Computer implementation systems and methods for protecting sensitive data through data re-encryption
US20080301775A1 (en) Method and apparatus for securing data in a memory device
CN112469036B (en) Message encryption and decryption method and device, mobile terminal and storage medium
US20130136256A1 (en) Block encryption
CN107453880B (en) Cloud data secure storage method and system
TW201329779A (en) Method and system for secure data access among two devices
CN110298186B (en) Non-key data encryption and decryption method based on dynamic reconfigurable cipher chip
CN111614467B (en) System backdoor defense method and device, computer equipment and storage medium
KR102387169B1 (en) Digital forensic data decoding device
CN108574567A (en) Private file protection and cryptographic-key management system and method, the information processing terminal
Belenko et al. “Secure Password Managers” and “Military-Grade Encryption” on Smartphones: Oh, Really?
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
WO2020201997A1 (en) Cryptographic systems
CN101539979B (en) Method for controlling and protecting electronic document and device thereof
KR102216869B1 (en) Apparatus and method for decrypting end-to-end encrypted files
KR102542213B1 (en) Real-time encryption/decryption security system and method for data in network based storage
CN115694921B (en) Data storage method, device and medium
KR102311996B1 (en) Device and method for anti-forensic unlocking for media files
CN103684740A (en) Encrypting method and system, decrypting method and system, encryption and decryption method and system for photo album of mobile terminal
CN116361849A (en) Backup data encryption and decryption method and device for encrypted database
KR20230095750A (en) Whitebox cryptographic method and device based on block cipher mode of operation using one-way function
KR102319699B1 (en) White box cryptographic encoding device and method using anti-inversion function
KR102083415B1 (en) Apparatus and method for decrypting encrypted files
Shin et al. Forensic analysis of note and journal applications
Sri et al. Concealing the Data Using Cryptography

Legal Events

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