KR101447554B1 - 암호화된 파일을 복호화하는 장치 및 그 방법 - Google Patents

암호화된 파일을 복호화하는 장치 및 그 방법 Download PDF

Info

Publication number
KR101447554B1
KR101447554B1 KR1020130135631A KR20130135631A KR101447554B1 KR 101447554 B1 KR101447554 B1 KR 101447554B1 KR 1020130135631 A KR1020130135631 A KR 1020130135631A KR 20130135631 A KR20130135631 A KR 20130135631A KR 101447554 B1 KR101447554 B1 KR 101447554B1
Authority
KR
South Korea
Prior art keywords
key
encrypted
encryption
file
unit
Prior art date
Application number
KR1020130135631A
Other languages
English (en)
Inventor
박정열
김현진
이동훈
Original Assignee
한국전자통신연구원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국전자통신연구원 filed Critical 한국전자통신연구원
Priority to KR1020130135631A priority Critical patent/KR101447554B1/ko
Priority to US14/465,495 priority patent/US20150134971A1/en
Priority to JP2014188784A priority patent/JP5914604B2/ja
Application granted granted Critical
Publication of KR101447554B1 publication Critical patent/KR101447554B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/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
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09CCIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
    • G09C1/00Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system
    • G09C1/06Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system wherein elements corresponding to the signs making up the clear text are operatively connected with elements corresponding to the signs making up the ciphered text, the connections, during operation of the apparatus, being automatically and continuously permuted by a coding or key member
    • 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
    • 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/2107File encryption

Landscapes

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

Abstract

본 발명은 시간-메모리 절충 방법을 이용하여 암호화에 사용된 패스워드가 아닌 키를 이용하여 암호화된 MS-OFFICE 파일을 복호화하는 장치 및 그 방법에 관한 것이다. 암호화된 파일을 복호화하는 장치는 암호화된 파일에서 사용된 암호 알고리즘에 대응하는 테이블을 생성하는 테이블 생성부, 암호화된 파일에서 암호화 헤더를 추출하고, 추출한 암호화 헤더에 대응하는 블록의 암호화된 고정평문을 추출하는 자료 추출부, 암호화된 고정평문을 토대로 키 체인을 생성하여, 생성한 키 체인이 포함하는 최종키 후보군을 생성하고, 최종키 후보군과 테이블을 이용하여 시작키를 탐색하는 자료 탐색부, 시작키를 이용하여 암호화키의 유효성을 검증하는 키 검증부 및 암호화키를 이용하여 암호화된 파일을 재암호하는 재암호화부를 포함한다.

Description

암호화된 파일을 복호화하는 장치 및 그 방법{APPARATUS AND METHOD FOR DECRYPTING ENCRYPTED FILES}
본 발명은 암호화된 파일을 복호화하는 장치 및 그 방법에 관한 것으로, 특히 시간-메모리 절충 방법(Time-memory Trade-off, TMTO)을 이용하여 암호화에 사용된 패스워드가 아닌 키를 이용하여 암호화된 MS-OFFICE 파일을 복호화하는 장치 및 그 방법에 관한 것이다.
문서를 저장하는 다양한 형식의 파일 중에서 MS-OFFICE 파일은 매우 큰 부분을 차지하고 있다.
MS-OFFICE는 현재 2013 버전까지 출시되어 사용되고 있으나 과거 버전을 사용하는 저사양 PC(personal computer) 등과의 업무 연속성을 위해 여전히 2000이하 버전에서 사용되는 형식으로 저장된 파일이 상당수를 차지한다. 2000이하 버전의 MS-OFFICE 파일은 고유의 암호 알고리즘으로 암호화하여 저장할 수 있는데, 이 때 사용되는 기본 알고리즘은 설계상의 취약점을 찾기 어려워 패스워드 탐색을 통한 암호문 해독이 사실상 가장 효율적인 공격방법으로 알려져 있다.
취약점이 알려지지 않은 암호 알고리즘의 암호문으로부터 패스워드를 찾는 방법으로 잘 알려진 것으로는 이미 알고 있는 패스워드의 사전, 또는 그로부터 유도되는 패스워드들을 조사하는 사전식 공격방법과, 모든 가능한 패스워드 조합을 조사하는 전수조사 공격방법의 두 가지 공격방법이 존재한다.
예를 들어, 한국공개특허 제10-2010-0098094호 "그래픽 프로세서를 이용한 MS-OFFICE 파일로부터의 고속 패스워드 복구 시스템 및 방법"에서는 패스워드가 설정되어 암호화된 MS-OFFICE 파일에 대해, 후보 패스워드가 옳은 패스워드인지의 여부를 그래픽 프로세서를 이용하여 병렬적으로 빠르게 검증함으로써 패스워드를 복구하는 기술에 관하여 기재하고 있다.
이와 같은, 사전식 공격방법은 암호화에 사용된 패스워드가 사전 단어의 단순한 변형이 아닐 경우 실패할 가능성이 높으며, 전수조사 공격방법은 계산량이 너무 많은 단점이 있다. 예를 들어, 영어 대소문자, 숫자, 특수문자 등의 95 글자를 사용하고 길이가 9인 경우에 대해 전수조사 공격방법을 사용한다면 가능한 패스워드의 조합은
Figure 112013102016558-pat00001
가지가 되어 현실적으로 탐색이 어렵다. 따라서 복잡한 패스워드를 사용한 경우에는 다른 공격방법이 필요하게 된다.
상기 두 가지 공격방법과 다른 공격방법으로는 시간-메모리 절충 방법(Time-memory Trade-off, TMTO)을 사용한 패스워드 탐색 공격이 있다. 이러한 패스워드 탐색 공격방법은 시간을 투자하는 공격방법(예를 들어, 전수조사 공격방법)과 메모리(저장공간)에 의존하는 공격방법(예를 들어, 모든 패스워드에 대해 암호문의 테이블을 작성한 뒤 테이블에서 암호문을 검색하여 패스워드를 바로 읽어내는 방법)의 절충점으로써 제안된 공격방법에 해당한다.
시간-메모리 절충 방법(Time-memory Trade-off, TMTO)을 사용한 패스워드 탐색 공격방법은 특별한 규칙에 의해 선정된 일부 패스워드에 대한 암호문만을 특정한 규칙으로 변형하여 테이블의 형태로 저장해둔 뒤, 암호문 또는 그 변형을 테이블에서 찾아내어 원래 패스워드를 역으로 계산하는 방법이다.
이와 같은, 시간-메모리 절충 방법(Time-memory Trade-off, TMTO)은 효율이 매우 높은 것으로 알려져 있으나, 암호문의 원래 평문이 특정한 형태를 띠고 있어야만 적용 가능한 단점이 있다.
본 발명의 목적은 시간-메모리 절충 방법을 이용하여 암호화에 사용된 패스워드가 아닌 키를 이용하여 암호화된 MS-OFFICE 파일을 복호화하는 장치 및 그 방법을 제공하는 것이다.
상기한 목적을 달성하기 위한 본 발명에 따른 암호화된 파일을 복호화하는 장치는
암호화된 파일에서 사용된 암호 알고리즘에 대응하는 테이블을 생성하는 테이블 생성부; 상기 암호화된 파일에서 암호화 헤더를 추출하고, 추출한 암호화 헤더에 대응하는 블록의 암호화된 고정평문을 추출하는 자료 추출부; 상기 암호화된 고정평문을 토대로 키 체인을 생성하여, 생성한 키 체인이 포함하는 최종키 후보군을 생성하고, 상기 최종키 후보군과 상기 테이블을 이용하여 시작키를 탐색하는 자료 탐색부; 상기 시작키를 이용하여 암호화키의 유효성을 검증하는 키 검증부; 및 상기 암호화키를 이용하여 상기 암호화된 파일을 재암호하는 재암호화부를 포함한다.
이 때, 상기 암호화된 파일은 암호화된 MS-OFFICE 파일에 해당하는 것으로, 2000이하 버전에서 사용된 40-bit RC4 알고리즘 또는 CryptoAPI RC4 알고리즘을 이용하여 암호화된 것을 특징으로 한다.
이 때, 상기 테이블 생성부는 상기 암호화된 파일에 대응하는 암호화 알고리즘에 따라 리덕션 함수를 선택하는 선택부; 상기 리덕션 함수를 토대로 키체인을 생성하고, 생성한 키체인을 토대로 시작키와 최종키를 계산하는 키 체인 생성부; 및 상기 시작키와 최종키를 이용하여 암호화 알고리즘에 따라 테이블을 생성하는 생성부를 포함하는 것을 특징으로 한다.
이 때, 상기 생성부는 MS-WORD, MS-EXCEL 파일에 사용되는 40-bit RC4 알고리즘용 테이블, MS-POWERPOINT 파일에 사용되는 CryptoAPI RC4 알고리즘용 테이블로서 BlockNum 0을 사용하는 블록들을 위한 테이블, 동 알고리즘용 테이블로서 BlockNum 0이 아닌 블록들을 위한 테이블 중 적어도 하나를 생성하는 것을 특징으로 한다.
이 때, 상기 키 체인 생성부는 무지개 키 체인 형태인 것을 특징으로 한다.
이 때, 상기 자료 추출부는 입력받은 암호 파일에서 암호화에 사용된 패스워드를 검증하기 위한 암호화 헤더를 추출하는 암호화 헤더 추출부; 및 상기 암호파일에 대응하는 암호화 알고리즘에 따라 상기 암호화된 고정평문을 추출하는 복수개의 고정평문 추출부를 포함하는 것을 특징으로 한다.
이 때, 상기 키 검증부는 상기 자료 탐색부에서 탐색한 시작키를 이용하여 키 체인을 다시 생성하는 키 체인 생성부; 및 상기 키 체인 생성부에서 다시 생성한 키 체인이 포함하는 키 값들 중에서 상기 암호화된 고정평문이 존재하는지 확인하고, 상기 암호화된 고정평문이 존재하는 경우에 시간-메모리 절충기법의 원리에 따라 암호화키를 재암호화부로 전달하는 확인부를 포함하는 것을 특징으로 한다.
이 때, 상기 재암호화부는 상기 암호화된 파일에서 추출한 암호화 헤더를 재구성하는 헤더 재암호화부; 상기 키 검증부로부터 전달받은 암호화 키를 이용하여 각 암호화된 블록을 복호화하는 블록 복호화부; 및 상기 블록 복호화부에서 복호화된 블록을 재구성된 암호화 헤더에서 사용된 암호화 키를 이용하여 다시 암호화 하는 블록 재암호화부를 포함하는 것을 특징으로 한다.
또한, 본 발명의 일실시예에 따른 암호화된 파일을 복호화하는 방법은
암호화된 파일에서 사용된 암호 알고리즘에 대응하는 테이블을 생성하는 단계; 상기 암호화된 파일에서 암호화 헤더를 추출하고, 추출한 암호화 헤더에 대응하는 블록의 암호화된 고정평문을 추출하는 단계; 상기 암호화된 고정평문을 토대로 키 체인을 생성하여, 생성한 키 체인이 포함하는 최종키 후보군을 생성하고, 상기 최종키 후보군과 상기 테이블을 이용하여 시작키를 탐색하는 단계; 상기 시작키를 이용하여 암호화키의 유효성을 검증하는 단계; 및 상기 암호화키를 이용하여 상기 암호화된 파일을 재암호하는 단계를 포함한다.
이 때, 상기 테이블을 생성하는 단계는 암호화된 MS-OFFICE 파일에 해당하는 것으로, 2000이하 버전에서 사용된 40-bit RC4 알고리즘 또는 CryptoAPI RC4 알고리즘을 이용하여 암호화된 파일에서 사용된 암호 알고리즘에 대응하는 테이블을 생성하는 것을 특징으로 한다.
이 때, 상기 테이블을 생성하는 단계는 상기 암호화된 파일에 대응하는 암호화 알고리즘에 따라 리덕션 함수를 선택하는 단계; 상기 리덕션 함수를 토대로 키체인을 생성하고, 생성한 키체인을 토대로 시작키와 최종키를 계산하는 단계; 및 상기 시작키와 최종키를 이용하여 암호화 알고리즘에 따라 테이블을 생성하는 단계를 포함하는 것을 특징으로 한다.
이 때, 상기 시작키와 최종키를 이용하여 암호화 알고리즘에 따라 테이블을 생성하는 단계는 MS-WORD, MS-EXCEL 파일에 사용되는 40-bit RC4 알고리즘용 테이블, MS-POWERPOINT 파일에 사용되는 CryptoAPI RC4 알고리즘용 테이블로서 BlockNum 0을 사용하는 블록들을 위한 테이블, 동 알고리즘용 테이블로서 BlockNum 0이 아닌 블록들을 위한 테이블 중 적어도 하나를 생성하는 것을 특징으로 한다.
이 때, 상기 암호화된 고정평문을 추출하는 단계는 입력받은 암호 파일에서 암호화에 사용된 패스워드를 검증하기 위한 암호화 헤더를 추출하는 단계; 및 상기 암호파일에 대응하는 암호화 알고리즘에 따라 상기 암호화된 고정평문을 추출하는 단계를 포함하는 것을 특징으로 한다.
이 때, 상기 재암호하는 단계는 상기 암호화된 파일에서 추출한 암호화 헤더를 재구성하는 단계; 유효성이 검증된 암호화 키를 이용하여 각 암호화된 블록을 복호화하는 단계; 및 복호화된 블록을 재구성된 암호화 헤더에서 사용된 암호화 키를 이용하여 다시 암호화 하는 단계를 포함하는 것을 특징으로 한다.
본 발명에 따르면, 암호화된 파일을 복호화하는 장치 및 그 방법은 2000이하 버전의 MS-OFFICE 파일이 사용하는 암호화 알고리즘으로 암호화된 파일의 키를 찾아내어 파일을 미리 약속한 새로운 패스워드로 암호화함으로써, 우회적으로 복호화하는 효과를 얻을 수 있다. 또한, 이 과정에서 기존 패스워드 탐색 방식을 이용할 때 발생되는 방대한 시간소요와 낮은 성공률이라는 문제점을 해결할 수 있다.
즉, 본 발명은 고속으로 높은 성공률을 가지고 파일을 복호화하는 것을 가능하게 한다.
도 1은 본 발명의 실시예에 따른 암호화된 파일을 복호화하는 장치를 개략적으로 나타내는 구성도이다.
도 2는 본 발명의 실시예에 따른 테이블 생성부를 나타내는 구성도이다.
도 3은 본 발명의 실시예에 따른 키 체인 생성부를 나타내는 도면이다.
도 4는 본 발명의 실시예에 따른 생성부를 나타내는 도면이다.
도 5는 본 발명의 실시예에 따른 자료 추출부를 나타내는 구성도이다.
도 6은 본 발명의 실시예에 따른 자료 탐색부를 나타내는 구성도이다.
도 7은 본 발명의 실시예에 따른 키 검증부를 나타내는 구성도이다.
도 8은 본 발명의 실시예에 따른 재암호화부를 나타내는 구성도이다.
도 9는 본 발명의 실시예에 따른 암호화된 파일을 복호화하는 방법을 나타내는 흐름도이다.
본 발명을 첨부된 도면을 참조하여 상세히 설명하면 다음과 같다. 여기서, 반복되는 설명, 본 발명의 요지를 불필요하게 흐릴 수 있는 공지 기능, 및 구성에 대한 상세한 설명은 생략한다. 본 발명의 실시형태는 당 업계에서 평균적인 지식을 가진 자에게 본 발명을 보다 완전하게 설명하기 위해서 제공되는 것이다. 따라서, 도면에서의 요소들의 형상 및 크기 등은 보다 명확한 설명을 위해 과장될 수 있다.
이하, 본 발명에 따른 바람직한 실시예 따른 시간-메모리 절충 방법(Time-memory Trade-off, TMTO)을 이용하여 암호화에 사용된 패스워드가 아닌 키를 이용하여 암호화된 MS-OFFICE 파일을 복호화하는 장치 및 그 방법에 대하여 첨부한 도면을 참조하여 상세하게 설명한다.
도 1은 본 발명의 실시예에 따른 암호화된 파일을 복호화하는 장치를 개략적으로 나타내는 구성도이다.
도 1을 참고하면, 암호화된 파일을 복호화하는 장치는 테이블 생성부(100), 자료 추출부(200), 자료 탐색부(300), 키 검증부(400) 및 재암호화부(500)를 포함한다.
테이블 생성부(100)는 MS-OFFICE 파일(예를 들어, MS-WORD, MS-EXCEL, MS-POWERPOINT)에 대해 사용된 암호 알고리즘에 대응하는 TMTO 테이블을 생성한다.
자료 추출부(200)는 암호화된 파일에서 암호화 헤더를 추출하고, 추출한 암호화 헤더에 대응하는 블록의 암호화된 고정평문을 추출한다. 여기서, 암호화된 파일은 암호화된 MS-OFFICE 파일에 해당한다.
자료 탐색부(300)는 암호화된 고정평문을 토대로 키 체인을 생성하여, 키 체인을 포함하는 최종키 후보군을 생성하고, 최종키 후보군과 TMTO 테이블을 이용하여 시작키를 탐색한다.
키 검증부(400)는 자료 탐색부(300)에서 탐색한 결과를 바탕으로 암호화 헤더를 이용하여 키의 유효성을 검증한다.
구체적으로, 자료 탐색부(300)에서 발견된 시작키로부터 키 체인을 생성하고, 생성한 키 체인에서 암호화된 고정평문이 존재하는지 여부를 확인한다. 이때, 키 검증부(400)는 키 체인에서 암호화된 고정평문이 존재하지 않는 경우, 자료 탐색부(300)의 탐색 결과가 잘못된 것으로 판단한다. 반면에, 키 검증부(400)는 키 체인에서 암호화된 고정평문이 존재하는 경우, 시간-메모리 절충방법의 원리에 따라 발견된 키 값의 바로 앞 키값이 암호화 키가 되므로, 암호화 키를 재암호화부(500)로 전달한다.
재암호화부(500)는 키 검증부(400)에서 검증된 키 즉, 암호화키를 이용하여 암호화된 파일을 재암호화한다.
다음, 암호화된 파일을 복호화하는 장치의 테이블 생성부(100)를 도 2를 참조하여 상세하게 설명한다.
도 2는 본 발명의 실시예에 따른 테이블 생성부를 나타내는 구성도이다.
도 2를 참고하면, 테이블 생성부(100)는 선택부(110), 키 체인 생성부(120) 및 생성부(130)를 포함한다.
선택부(110)는 MS-OFFICE 2000이하 버전에서 사용되는 암호화 알고리즘에 따라 두 가지의 리덕션 함수(reduction function) 중 하나를 선택한다.
키 체인 생성부(120)는 선택부(110)에서 선택한 리덕션 함수를 바탕으로 키 체인을 생성하고, 생성한 키 체인을 토대로 체인의 시작키와 최종키를 계산한다. 여기서, 키 체인 생성부(120)가 생성한 키 체인은 무지개 키 체인(rainbow key chain) 형태인 것을 특징으로 한다.
생성부(130)는 시작키와 최종키를 이용하여 암호화 알고리즘에 따라 테이블을 생성한다. 이때, 테이블 생성부(130)는 암호화 알고리즘에 따라 테이블 A(총 1종) 또는 테이블 B0와 테이블 B1(총 2종)을 생성한다.
테이블 A는 MS-WORD, MS-EXCEL 파일에 사용되는 40-bit RC4 알고리즘용 테이블에 해당한다.
테이블 B0는 MS-POWERPOINT 파일에 사용되는 CryptoAPI RC4 알고리즘용 테이블로서 BlockNum 0을 사용하는 블록들을 위한 테이블에 해당한다.
테이블 B1는 동 알고리즘용 테이블로서 BlockNum 0이 아닌 블록들을 위한 테이블에 해당한다.
테이블을 생성할 때, 키 체인 생성부(120)에서 사용할 체인의 길이 NCOL과 생성된 테이블의 열의 개수 NROW는 수학식 1과 같은 조건을 만족해야 한다.
[수학식 1]
NCOL*NROW= 240
선택부(110)에서 선택한 리덕션 함수는 RC-4 암호화 알고리즘의 출력 8바이트 또는 12바이트를 입력받아, 이 중에서 일부 비트를 추출하여 총 40비트(5바이트)를 출력하는 함수이다.
선택부(110)에서 선택한 리덕션 함수에서 어떤 비트를 추출할 것인지는 미국 마이크로소프트사(社)에서 공개한 MS-OFFICE 2000이하 버전에서 사용하는 암호화 방법에 대한 문서 내용을 분석하여 얻어진 내용에 따라 결정되며, MS-OFFICE 문서 파일을 구성하는 각 데이터 블록의 첫 8바이트 또는 12바이트 중에서 항상 값이 고정되는 비트들의 위치를 가져오게 됨을 특징으로 한다.
이러한 위치들은 MS-OFFICE 파일이 사용하는 암호화 알고리즘이 40-bit RC-4 알고리즘인 경우에는 총 1세트, CryptoAPI RC-4 알고리즘인 경우 총 2세트가 존재하며, 그로 인해 리덕션 함수도 같은 수만큼 존재한다. 따라서, 생성되는 테이블의 종류도 1종 또는 2종이 된다.
다음, 테이블 생성부(100)의 키 체인 생성부(120)를 도 3을 참조하여 상세하게 설명한다.
도 3은 본 발명의 실시예에 따른 키 체인 생성부를 나타내는 도면이다.
도 3을 참고하면, 키 체인 생성부(120)는 암호문 생성부(121) 및 리덕션 함수부(122)를 포함한다.
먼저, 키 체인 생성부(120)는 임의의 40비트(5바이트) 시작키와 8바이트 또는 12바이트 길이의 고정평문을 입력받아 동작을 시작한다. 이때, 고정평문의 특정 위치는 특정한 값으로 고정되어 있어야 하며, 해당 위치와 그값은 마이크로소프트사의 공개문서에 따라 특정되어 리덕션 함수부(122)에서 수집하고 있는 비트들의 위치 및 그 값과 일치해야 한다.
암호문 생성부(121)는 입력받은 시작키와 고정평문에 RC-4 암호화 알고리즘을 적용하여 8바이트 또는 12바이트 길이의 암호문을 생성한다.
리덕션 함수부(122)는 암호문 생성부(121)에서 생성한 암호문을 선택부(110)에서 선택한 리덕션 함수에 적용하여 5바이트의 결과물을 출력한다. 여기서, 결과물을 새로운 키로 설정하고, 상기 과정을 NCOL번 반복한 결과물을 최종키로 설정한다.
즉, 리덕션 함수부(122)는 암호문 생성부(121)에서 생성한 암호문을 리덕션 함수에 이전에 설정된 반복횟수만큼 적용한 결과물을 최종키로 설정한다.
본 발명의 실시예에에 따른 키 체인 생성부(120)에서는 출력결과를 40비트의 정수로 보고, 반복횟수를 더한 결과를 사용하는 방식의 변형을 적용할 수 있으며, 이에 한정되지 않는다.
다음, 테이블 생성부(100)의 생성부(130)를 도 4를 참조하여 상세하게 설명한다.
도 4는 본 발명의 실시예에 따른 생성부를 나타내는 도면이다.
도 4를 참고하면, 생성부(130)는 키 체인 생성부(120)로부터 시작키와 최종키 쌍을 입력받는다.
생성부(130)는 제1 파일 생성부(131)와 제2 파일 생성부(132)를 포함한다.
제1 파일 생성부(131)는 5바이트 길이의 시작키와 최종키의 하위 1바이트를 추출하여 총 6 바이트의 저장 데이터를 생성하고, 6 바이트의 저장 데이터를 최종키 기준으로 정렬 및 병합하여 키 체인 데이터 파일(133)을 생성한다.
제2 파일 생성부(132)는 5바이트 길이의 최종키의 상위 3바이트를 추출하고, 인덱스 계산을 수행하여 인덱스 파일(134)을 생성한다.
본 발명의 실시예에 따른 생성부(130)에서 생성된 파일 즉, 키 체인 데이터 파일(133)과 인덱스 파일(134)은 테이블에 해당한다.
이와 같이, 테이블 생성부(100)에서 테이블을 생성하는 과정은 암호화된 파일을 복호화하는 장치 적용 시 단 1회 수행되는 것으로 충분하다. 다만, 1회 수행 시 복수개의 테이블을 생성할 수 있다.
본 발명의 실시예에 따른 테이블 생성부(100)는 키 체인의 길이를 NCOL=5500으로 설정하였을 경우, 테이블 1개의 크기가 약 1.2G 정도일 수 있다.
다음, 암호화된 파일을 복호화하는 장치의 자료 추출부(200)를 도 5를 참조하여 상세하게 설명한다.
도 5는 본 발명의 실시예에 따른 자료 추출부를 나타내는 구성도이다.
먼저, 자료 추출부(200)는 암호화된 파일 예를 들어, 암호화된 MS-OFFICE 파일(=도 5의 암호파일)을 입력받는다.
도 5를 참고하면, 자료 추출부(200)는 암호화 헤더 추출부(210) 및 고정평문 추출부(220)를 포함한다.
암호화 헤더 추출부(210)는 입력받은 암호파일(E)에서 암호화에 사용된 패스워드를 검증하기 위해 필요한 3가지 값 즉, Salt, EncryptedVerifier 및 EncryptedVerifierHash를 추출한다.
본 발명의 실시예에 따른, 암호파일은 패스워드가 아닌 패스워드와 임의로 정해진 Salt로부터 유도된 암호키를 이용하여 RC-4 알고리즘을 통해 파일을 구성하는 각 블록을 그 블록의 번호(BlockNum)에 맞게 암호화하며, 파일 내부에 사용된 Salt와 함께 암호키 검증값인 EncryptedVerifier 및 EncryptedVerifierHash를 기록해 둔다.
사용자가 파일을 복호화하기 위해 패스워드를 입력했을 때는 이 패스워드의 유효성을 검증하기 위해 입력된 패스워드와 Salt로부터 암호키를 유도한 뒤 이 값을 EncryptedVerifier와 EncryptedVerifierHash를 이용하여 검증한다.
패스워드와 Salt로부터 암호키를 유도하는 과정은 암호화 알고리즘으로 40-bit RC-4 알고리즘 또는 CryptoAPI RC-4 알고리즘이 사용되었는지에 따라 약간의 차이가 있다.
고정평문 추출부(220)는 제1 고정평문 추출부(221) 및 제2 고정평문 추출부(222)를 포함한다.
제1 고정평문 추출부(221) 및 제2 고정평문 추출부(222)는 각각 40-bit RC-4 알고리즘이 사용된 암호화와 CryptoAPI RC-4 알고리즘이 사용된 암호화에 대응하여 암호화된 파일을 구성하는 암호화된 각 블록의 첫 8바이트 또는 12바이트로부터 40비트(5바이트) 길이의 암호화된 고정평문을 추출한다.
고정평문 추출부(220)에서 암호화된 고정평문을 추출하는 방법은 도 3에서와 같이, 고정평문에서 리덕션 함수를 이용하여 특정 위치의 40비트(5바이트)를 추출하는 방법과 유사하다.
40-bit RC-4 알고리즘이 사용된 경우는 제1 고정평문 추출부(221)를 따라 BlockNum 0을 사용하는 블록에서 단 하나의 암호화된 고정평문(도 5의 암호화된 고정평문 A)을 추출하는 것으로 충분하다.
반면에, CryptoAPI RC-4 알고리즘이 사용된 경우는 제2 고정평문 추출부(222)를 따라 모든 블록번호에 대해 해당 BlockNum를 가지는 블록에서 암호화된 고정평문(도 5의 암호화된 고정평문 B0~암호화된 고정평문 Bn)을 추출해야 한다. 따라서, CryptoAPI RC-4 알고리즘이 사용된 경우, 추출될 암호화된 고정평문의 개수는 암호화된 파일을 구성하는 암호화된 블록의 개수와 같다.
다음, 암호화된 파일을 복호화하는 장치의 자료 탐색부(300)를 도 6을 참조하여 상세하게 설명한다.
도 6은 본 발명의 실시예에 따른 자료 탐색부를 나타내는 구성도이다.
도 6을 참고하면, 자료 탐색부(300)는 최종키 후보군 생성부(310) 및 시작키 탐색부(320)를 포함한다.
최종키 후보군 생성부(310)는 암호화된 고정평문을 이용하여 NCOL개의 키 체인을 생성함으로써, NCOL개의 최종키 후보군을 생성한다.
구체적으로, 최종키 후보군 생성부(310)는 자료 추출부(200)에서 추출된 암호화된 고정평문을 입력받아, 암호화된 고정평문 각각에 대하여 아래와 같은 과정을 수행한다.
암호화된 고정평문은 각각 40비트(5바이트) 길이이므로, 이를 도 3에서 도시하고 있는 키 체인 생성부(120)에서 사용하는 시작키처럼 취급하되, RC-4 암호화 알고리즘과 리덕션 함수를 적용하는 과정을 반복하는 횟수를 각각 0회 수행 후 종료, 1회 수행 후 종료 ~ (NCOL-1)회 수행 후 종료하여 NCOL개의 최종키를 얻는다. 이와 같은 과정을 통해 획득한 NCOL개의 최종키가 도 6에서 도시하고 있는 최종키 후보군이다. 이와 같은 과정에서, 키 체인 생성부(120)에 관하여 설명한 부분에서 반복횟수를 더한 결과를 사용하는 방식의 변형은 반복횟수가 아닌 변형된 값을 기준으로 한다. 예를 들어, 3회 수행 후 종료하여 획득한 최종키가 있다면, 최종키를 계산할 때 총 3번의 리덕션 함수를 적용하는 과정을 통과해야한다. 이때, 첫번째 리덕션 함수부(122)에 가하는 변형은 (NCOL - 2)에 대응하는 변형을 가하고, 두 번째는 (NCOL - 1)에 대응하는 변형을, 마지막 세 번째는 NCOL에 대응하는 변형을 가하여 해당 최종키가 계산 과정에서 마지막으로 통과하는 리덕션 함수에 대한 변형은 NCOL에 대응하는 변형이 되도록 한다.
다음, 시작키 탐색부(320)는 최종키 후보군 생성부(310)에서 생성한 최종키 후보군을 테이블 생성부(100)에서 생성한 테이블에서 탐색하여, 최종키 후보군에 대응하는 시작키를 탐색한다.
도 4에서 기재한 것과 같이, 테이블은 도 4에서 기재한 것과 같이, 최종키의 상위 3 바이트로 구성된 인덱스 파일(134)과 시작키 및 최종키의 상위 1바이트로 구성된 저장데이터를 최종키를 기준으로 정렬한 키 체인 데이터 파일(133)로 구성되어 있다.
따라서, 시작키 탐색부(320)는 최종키의 후보군의 각 키의 상위 3바이트를 인덱스 파일(134)에서 검색하고, 검색한 인덱스 파일에 대응하는 키 체인 데이터 파일(133)의 해당 범위를 탐색하여 최종키의 하위 1바이트와 일치하는 값을 가지는 저장 데이터를 탐색한다. 탐색에 성공하면 최종키 후보군의 각 키에 대응하는 시작키를 탐색할 수 있다.
다음, 암호화된 파일을 복호화하는 장치의 키 검증부(400)를 도 7을 참조하여 상세하게 설명한다.
도 7은 본 발명의 실시예에 따른 키 검증부를 나타내는 구성도이다.
도 7을 참고하면, 키 검증부(400)는 키 체인 생성부(410), 확인부(420) 및 키 체인 탐색부(430)를 포함한다.
키 체인 생성부(410)는 도 2의 키 체인 생성부(120)와 같은 동작으로 키 체인을 생성하는 것이나, 자료 탐색부(300)에서 탐색한 시작키를 입력받아 최종키를 계산하는 과정에서 얻어지는 (NCOL - 1)개의 40비트(5바이트) 길이의 키 값들을 모두 출력한다.
확인부(420)는 자료 탐색부(300)에서 탐색한 시작키에 대응하는 최종키와 키 체인 생성부(410)에서 출력하는 (NCOL - 1)개의 키값을 합쳐 총 NCOL개의 키값들 중에서 최초 암호화된 파일에서 추출한 암호화된 고정평문이 존재하는지를 확인한다.
확인부(420)는 암호화된 고정평문이 존재하지 않는 경우, 시작키 탐색부(320)에서 다른 시작키를 탐색해야 한다.
확인부(420)는 암호화된 고정평문이 존재하는 경우, 시간-메모리 절충기법의 원리에 따라 해당 키의 바로 앞 키가 암호화 키가 되므로, 암호화 키를 재암호화부(500)로 전달한다.
다음, 암호화된 파일을 복호화하는 장치의 재암호화부(500)를 도 8을 참조하여 상세하게 설명한다.
도 8은 본 발명의 실시예에 따른 재암호화부를 나타내는 구성도이다.
도 8을 참고하면, 재암호화부(500)는 헤더 재암호화부(510), 블록 복호화부(520) 및 블록 재암호화부(530)를 포함한다.
헤더 재암호화부(510)는 입력받은 암호파일(E)에서 추출한 암호화 헤더를 재구성한다. 즉, 헤더 재암호화부(510)는 암호화 헤더 추출부(210)에서 추출한 Salt, EncryptedVerifier 및 EncryptedVerifierHash를 새로운 패스워드(NP)로부터 유도된 새로운 암호화 키 즉, 확인부(420)에서 전달한 암호화 키에 대응하게 변형시킨다.
헤더 재암호화부(510)는 암호화 헤더 추출부(210)에서 추출한 Salt를 변경하거나 변경하지 않을 수 있으며, 새로운 암호화 키를 "1234"등의 미리 정해진 기억하기 쉬운 패스워드로부터 암호화 알고리즘을 이용하여 도출된 값을 사용할 수 있으며, 이에 한정되지 않는다.
블록 복호화부(520)는 확인부(420)에서 전달한 암호화 키를 이용하여 각 암호화된 블록을 복호화한다.
만일, MS-OFFICE 파일의 암호화에 40-bit RC-4 알고리즘이 사용되었다면 하나의 암호화 키로 모든 블록을 복호화할 수 있으나, CryptoAPI RC-4 알고리즘이 사용되었다면 서로 다른 BlockNum을 가진 암호화된 블록에 대해 서로 다른 암호화 키가 필요하다. 따라서, 이와 같은 경우에는 자료 탐색부(300)와 키 검증부(400)에서 모든 BlockNum에 대한 암호화키를 탐색해야 한다.
즉, 블록 복호화부(520)는 BlockNum에 대응하는 암호화 키를 넘겨받아, 암호화된 파일의 각 블록을 복호화한다.
블록 재암호화부(530)는 블록 복호화부(520)에서 복호화된 블록을 헤더 재암호화부(510)에서 사용된 새로운 패스워드(NP) 및 그로부터 유도되는 암호화 키를 이용하여 다시 암호화한다. 이때, 패스워드를 알면 모든 BlockNum에 대해 필요한 암호화 키를 유도할 수 있으므로, 블록 재암호화부(530)에 대해 두 알고리즘의 차이점은 없다. 모든 블록이 새로이 암호화되어 하나의 파일로 저장되면, 그 파일은 새로운 패스워드(NP)로 복호화 가능한 MS-OFFICE 파일이 되어 사용자가 내용을 확인할 수 있게 된다.
다음, 암호화된 파일을 복호화하는 방법을 도 9를 참조하여 상세하게 설명한다.
도 9는 본 발명의 실시예에 따른 암호화된 파일을 복호화하는 방법을 나타내는 흐름도이다.
도 9를 참고하면, 암호화된 파일을 복호화하는 장치의 테이블 생성부(100)는 MS-OFFICE 파일(예를 들어, MS-WORD, MS-EXCEL, MS-POWERPOINT)에 대해 사용된 암호 알고리즘에 대응하는 TMTO 테이블을 생성한다(S100).
암호화된 파일을 복호화하는 장치의 자료 추출부(200)는 암호화된 파일에서 암호화 헤더를 추출하고, 추출한 암호화 헤더에 대응하는 블록의 암호화된 고정평문을 추출한다(S200).
암호화된 파일을 복호화하는 장치의 자료 탐색부(300)는 암호화된 고정평문을 토대로 키 체인을 생성하여, 키 체인을 포함하는 최종키 후보군을 생성하고, 최종키 후보군과 TMTO 테이블을 이용하여 시작키를 탐색한다(S300).
암호화된 파일을 복호화하는 장치의 키 검증부(400)는 S300 단계에서 발견된 시작키로부터 키 체인을 생성하고, 생성한 키 체인에서 암호화된 고정평문이 존재하는지 여부를 확인한다(S400).
S400 단계에서 키 체인에서 암호화된 고정평문이 존재하지 않는 경우에는 S300 단계에서 발견한 시작키가 잘못된 것으로 판단하고, S300 단계에서와 같이 시작키를 다시 탐색해야 한다.
반면에, 키 체인에서 암호화된 고정평문이 존재하는 경우에는 시간-메모리 절충방법의 원리에 따라 발견된 키 값의 바로 앞 키값이 암호화 키가 되므로, 암호화 키를 다음 단계에 적용한다.
암호화된 파일을 복호화하는 장치의 재암호화부(500)는 S400 단계에서 검증된 키 즉, 암호화 키를 이용하여 암호화된 파일을 재암호화한다(S500).
이와 같이, 본 발명의 실시예에 따른, 암호화된 파일을 복호화하는 장치는 2000이하 버전의 MS-OFFICE 파일이 사용하는 암호화 알고리즘으로 암호화된 파일의 키를 찾아내어 파일을 미리 약속한 새로운 패스워드로 암호화함으로써, 우회적으로 복호화하는 효과를 얻을 수 있다.
이상에서와 같이 도면과 명세서에서 최적의 실시예가 개시되었다. 여기서 특정한 용어들이 사용되었으나, 이는 단지 본 발명을 설명하기 위한 목적에서 사용된 것이지 의미 한정이나 특허청구범위에 기재된 본 발명의 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로, 본 기술 분야의 통상의 지식을 가진자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다.
100; 테이블 생성부
110; 선택부 120; 키 체인 생성부
121; 암호문 생성부 122; 리덕션 함수부
130; 생성부
131; 제1 파일 생성부 132; 제2 파일 생성부
200; 자료 추출부
210; 암호화 헤더 추출부 220; 고정평문 추출부
221; 제1 고정평문 추출부 222; 제2 고정평문 추출부
300; 자료 탐색부
310; 최종키 후보군 생성부 320; 시작키 탐색부
400; 키 검증부 410; 키 체인 생성부
420; 확인부 430; 키 체인 탐색부
500; 재암호화부 510; 헤더 재암호화부
520; 블록 복호화부 530; 블록 재암호화부

Claims (14)

  1. 암호화된 파일에서 사용된 암호 알고리즘에 대응하는 테이블을 생성하는 테이블 생성부;
    상기 암호화된 파일에서 암호화 헤더를 추출하고, 추출한 암호화 헤더에 대응하는 블록의 암호화된 고정평문을 추출하는 자료 추출부;
    상기 암호화된 고정평문을 토대로 키 체인을 생성하여, 생성한 키 체인이 포함하는 최종키 후보군을 생성하고, 상기 최종키 후보군과 상기 테이블을 이용하여 시작키를 탐색하는 자료 탐색부;
    상기 시작키를 이용하여 암호화키의 유효성을 검증하는 키 검증부; 및
    상기 암호화키를 이용하여 상기 암호화된 파일을 재암호하는 재암호화부
    를 포함하는 암호화된 파일을 복호화하는 장치.
  2. 청구항 1에 있어서,
    상기 암호화된 파일은 암호화된 MS-OFFICE 파일에 해당하는 것으로, 2000이하 버전에서 사용된 40-bit RC4 알고리즘 또는 CryptoAPI RC4 알고리즘을 이용하여 암호화된 것을 특징으로 하는 암호화된 파일을 복호화하는 장치.
  3. 청구항 1에 있어서,
    상기 테이블 생성부는
    상기 암호화된 파일에 대응하는 암호화 알고리즘에 따라 리덕션 함수를 선택하는 선택부;
    상기 리덕션 함수를 토대로 키체인을 생성하고, 생성한 키체인을 토대로 시작키와 최종키를 계산하는 키 체인 생성부; 및
    상기 시작키와 최종키를 이용하여 암호화 알고리즘에 따라 테이블을 생성하는 생성부
    를 포함하는 것을 특징으로 하는 암호화된 파일을 복호화하는 장치.
  4. 청구항 3에 있어서,
    상기 생성부는
    MS-WORD, MS-EXCEL 파일에 사용되는 40-bit RC4 알고리즘용 테이블, MS-POWERPOINT 파일에 사용되는 CryptoAPI RC4 알고리즘용 테이블로서 BlockNum 0을 사용하는 블록들을 위한 테이블, 동 알고리즘용 테이블로서 BlockNum 0이 아닌 블록들을 위한 테이블 중 적어도 하나를 생성하는 것을 특징으로 하는 암호화된 파일을 복호화하는 장치.
  5. 청구항 3에 있어서,
    상기 키 체인 생성부는 무지개 키 체인 형태인 것을 특징으로 하는 암호화된 파일을 복호화하는 장치.
  6. 청구항 1에 있어서,
    상기 자료 추출부는
    입력받은 암호 파일에서 암호화에 사용된 패스워드를 검증하기 위한 암호화 헤더를 추출하는 암호화 헤더 추출부; 및
    상기 암호 파일에 대응하는 암호화 알고리즘에 따라 상기 암호화된 고정평문을 추출하는 복수개의 고정평문 추출부
    를 포함하는 것을 특징으로 하는 암호화된 파일을 복호화하는 장치.
  7. 청구항 1에 있어서,
    상기 키 검증부는
    상기 자료 탐색부에서 탐색한 시작키를 이용하여 키 체인을 다시 생성하는 키 체인 생성부; 및
    상기 키 체인 생성부에서 다시 생성한 키 체인이 포함하는 키 값들 중에서 상기 암호화된 고정평문이 존재하는지 확인하고, 상기 암호화된 고정평문이 존재하는 경우에 시간-메모리 절충기법의 원리에 따라 암호화키를 재암호화부로 전달하는 확인부
    를 포함하는 것을 특징으로 하는 암호화된 파일을 복호화하는 장치.
  8. 청구항 1에 있어서,
    상기 재암호화부는
    상기 암호화된 파일에서 추출한 암호화 헤더를 재구성하는 헤더 재암호화부;
    상기 키 검증부로부터 전달받은 암호화 키를 이용하여 각 암호화된 블록을 복호화하는 블록 복호화부; 및
    상기 블록 복호화부에서 복호화된 블록을 재구성된 암호화 헤더에서 사용된 암호화 키를 이용하여 다시 암호화 하는 블록 재암호화부
    를 포함하는 것을 특징으로 하는 암호화된 파일을 복호화하는 장치.
  9. 암호화된 파일에서 사용된 암호 알고리즘에 대응하는 테이블을 생성하는 단계;
    상기 암호화된 파일에서 암호화 헤더를 추출하고, 추출한 암호화 헤더에 대응하는 블록의 암호화된 고정평문을 추출하는 단계;
    상기 암호화된 고정평문을 토대로 키 체인을 생성하여, 생성한 키 체인이 포함하는 최종키 후보군을 생성하고, 상기 최종키 후보군과 상기 테이블을 이용하여 시작키를 탐색하는 단계;
    상기 시작키를 이용하여 암호화키의 유효성을 검증하는 단계; 및
    상기 암호화키를 이용하여 상기 암호화된 파일을 재암호하는 단계
    를 포함하는 암호화된 파일을 복호화하는 방법.
  10. 청구항 9에 있어서,
    상기 테이블을 생성하는 단계는
    암호화된 MS-OFFICE 파일에 해당하는 것으로, 2000이하 버전에서 사용된 40-bit RC4 알고리즘 또는 CryptoAPI RC4 알고리즘을 이용하여 암호화된 파일에서 사용된 암호 알고리즘에 대응하는 테이블을 생성하는 것을 특징으로 하는 암호화된 파일을 복호화하는 방법.
  11. 청구항 9에 있어서,
    상기 테이블을 생성하는 단계는
    상기 암호화된 파일에 대응하는 암호화 알고리즘에 따라 리덕션 함수를 선택하는 단계;
    상기 리덕션 함수를 토대로 키체인을 생성하고, 생성한 키체인을 토대로 시작키와 최종키를 계산하는 단계; 및
    상기 시작키와 최종키를 이용하여 암호화 알고리즘에 따라 테이블을 생성하는 단계
    를 포함하는 것을 특징으로 하는 암호화된 파일을 복호화하는 방법.
  12. 청구항 11에 있어서,
    상기 시작키와 최종키를 이용하여 암호화 알고리즘에 따라 테이블을 생성하는 단계는
    MS-WORD, MS-EXCEL 파일에 사용되는 40-bit RC4 알고리즘용 테이블, MS-POWERPOINT 파일에 사용되는 CryptoAPI RC4 알고리즘용 테이블로서 BlockNum 0을 사용하는 블록들을 위한 테이블, 동 알고리즘용 테이블로서 BlockNum 0이 아닌 블록들을 위한 테이블 중 적어도 하나를 생성하는 것을 특징으로 하는 암호화된 파일을 복호화하는 방법.
  13. 청구항 9에 있어서,
    상기 암호화된 고정평문을 추출하는 단계는
    입력받은 암호 파일에서 암호화에 사용된 패스워드를 검증하기 위한 암호화 헤더를 추출하는 단계; 및
    상기 암호 파일에 대응하는 암호화 알고리즘에 따라 상기 암호화된 고정평문을 추출하는 단계
    를 포함하는 것을 특징으로 하는 암호화된 파일을 복호화하는 방법.
  14. 청구항 9에 있어서,
    상기 재암호하는 단계는
    상기 암호화된 파일에서 추출한 암호화 헤더를 재구성하는 단계;
    유효성이 검증된 암호화 키를 이용하여 각 암호화된 블록을 복호화하는 단계; 및
    복호화된 블록을 재구성된 암호화 헤더에서 사용된 암호화 키를 이용하여 다시 암호화 하는 단계
    를 포함하는 것을 특징으로 하는 암호화된 파일을 복호화하는 방법.
KR1020130135631A 2013-11-08 2013-11-08 암호화된 파일을 복호화하는 장치 및 그 방법 KR101447554B1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020130135631A KR101447554B1 (ko) 2013-11-08 2013-11-08 암호화된 파일을 복호화하는 장치 및 그 방법
US14/465,495 US20150134971A1 (en) 2013-11-08 2014-08-21 Apparatus and method for decrypting encrypted file
JP2014188784A JP5914604B2 (ja) 2013-11-08 2014-09-17 暗号化されたファイルを復号化する装置およびその方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130135631A KR101447554B1 (ko) 2013-11-08 2013-11-08 암호화된 파일을 복호화하는 장치 및 그 방법

Publications (1)

Publication Number Publication Date
KR101447554B1 true KR101447554B1 (ko) 2014-10-08

Family

ID=51996637

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130135631A KR101447554B1 (ko) 2013-11-08 2013-11-08 암호화된 파일을 복호화하는 장치 및 그 방법

Country Status (3)

Country Link
US (1) US20150134971A1 (ko)
JP (1) JP5914604B2 (ko)
KR (1) KR101447554B1 (ko)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101618247B1 (ko) 2015-10-13 2016-05-04 대한민국 Asic 칩을 이용한 암호 탐색 장치
KR20170006334A (ko) * 2015-07-07 2017-01-18 (주)이더블유비엠 보안기능을 가지는 SoC 및 SoC의 보안방법
KR20200013963A (ko) * 2018-07-31 2020-02-10 국민대학교산학협력단 암호화 파일에 대한 복호화 장치 및 방법
CN116980232A (zh) * 2023-09-21 2023-10-31 深圳市能数科技有限公司 一种数据处理方法、装置、计算机设备和可读存储介质

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11630918B2 (en) 2015-12-04 2023-04-18 Early Warning Services, Llc Systems and methods of determining compromised identity information
US20170161746A1 (en) * 2015-12-04 2017-06-08 Xor Data Exchange, Inc Compromised Identity Exchange Systems and Methods
US10367639B2 (en) * 2016-12-29 2019-07-30 Intel Corporation Graphics processor with encrypted kernels
US11409734B2 (en) 2018-10-29 2022-08-09 Electronics And Telecommunications Research Institute Blockchain system and operation method thereof
US11502834B2 (en) 2020-02-26 2022-11-15 International Business Machines Corporation Refreshing keys in a computing environment that provides secure data transfer
US11652616B2 (en) 2020-02-26 2023-05-16 International Business Machines Corporation Initializing a local key manager for providing secure data transfer in a computing environment
US11489821B2 (en) 2020-02-26 2022-11-01 International Business Machines Corporation Processing a request to initiate a secure data transfer in a computing environment
US11405215B2 (en) * 2020-02-26 2022-08-02 International Business Machines Corporation Generation of a secure key exchange authentication response in a computing environment
US11310036B2 (en) 2020-02-26 2022-04-19 International Business Machines Corporation Generation of a secure key exchange authentication request in a computing environment
US11184160B2 (en) 2020-02-26 2021-11-23 International Business Machines Corporation Channel key loading in a computing environment
US11546137B2 (en) 2020-02-26 2023-01-03 International Business Machines Corporation Generation of a request to initiate a secure data transfer in a computing environment
CN112907247B (zh) * 2021-03-18 2024-01-26 上海零数众合信息科技有限公司 一种区块链授权计算控制方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003107992A (ja) 2001-09-28 2003-04-11 Mitsubishi Electric Corp 暗号解析装置及び暗号解析方法
KR20080043217A (ko) * 2006-11-13 2008-05-16 한국전자통신연구원 스트림 암호를 이용한 메시지 인증 코드 생성 방법과스트림 암호를 이용한 인증 암호화 방법 및 스트림 암호를이용한 인증 복호화 방법
KR100971854B1 (ko) 2002-06-28 2010-07-22 마이크로소프트 코포레이션 보안 서버 키 동작을 제공하기 위한 시스템 및 방법

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001222537A (ja) * 2000-02-07 2001-08-17 Mitsubishi Electric Corp 一致データ検索装置
JP2003163663A (ja) * 2001-11-22 2003-06-06 Mitsubishi Electric Corp 鍵探索装置及び鍵探索方法
US7599492B1 (en) * 2006-04-17 2009-10-06 Elcomsoft Co. Ltd. Fast cryptographic key recovery system and method
US7783046B1 (en) * 2007-05-23 2010-08-24 Elcomsoft Co. Ltd. Probabilistic cryptographic key identification with deterministic result
KR101081574B1 (ko) * 2009-02-27 2011-11-09 한국전자통신연구원 그래픽 프로세서를 이용한 ms―office 파일로부터의 고속 패스워드 복구 시스템 및 방법
KR101329007B1 (ko) * 2012-05-31 2013-11-12 삼성에스디에스 주식회사 아이디 기반 암호 시스템을 위한 비밀키 생성 장치 및 그 방법, 그리고 그 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 기록매체

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003107992A (ja) 2001-09-28 2003-04-11 Mitsubishi Electric Corp 暗号解析装置及び暗号解析方法
KR100971854B1 (ko) 2002-06-28 2010-07-22 마이크로소프트 코포레이션 보안 서버 키 동작을 제공하기 위한 시스템 및 방법
KR20080043217A (ko) * 2006-11-13 2008-05-16 한국전자통신연구원 스트림 암호를 이용한 메시지 인증 코드 생성 방법과스트림 암호를 이용한 인증 암호화 방법 및 스트림 암호를이용한 인증 복호화 방법

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
논문: 한국통신학회 *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170006334A (ko) * 2015-07-07 2017-01-18 (주)이더블유비엠 보안기능을 가지는 SoC 및 SoC의 보안방법
KR101711926B1 (ko) 2015-07-07 2017-03-06 (주)이더블유비엠 보안기능을 가지는 SoC 및 SoC의 보안방법
KR101618247B1 (ko) 2015-10-13 2016-05-04 대한민국 Asic 칩을 이용한 암호 탐색 장치
KR20200013963A (ko) * 2018-07-31 2020-02-10 국민대학교산학협력단 암호화 파일에 대한 복호화 장치 및 방법
KR102083415B1 (ko) 2018-07-31 2020-03-02 국민대학교산학협력단 암호화 파일에 대한 복호화 장치 및 방법
CN116980232A (zh) * 2023-09-21 2023-10-31 深圳市能数科技有限公司 一种数据处理方法、装置、计算机设备和可读存储介质
CN116980232B (zh) * 2023-09-21 2024-01-12 深圳市能数科技有限公司 一种数据处理方法、装置、计算机设备和可读存储介质

Also Published As

Publication number Publication date
JP5914604B2 (ja) 2016-05-11
JP2015094944A (ja) 2015-05-18
US20150134971A1 (en) 2015-05-14

Similar Documents

Publication Publication Date Title
KR101447554B1 (ko) 암호화된 파일을 복호화하는 장치 및 그 방법
US11709948B1 (en) Systems and methods for generation of secure indexes for cryptographically-secure queries
US9237014B2 (en) Partial CipherText updates using variable-length segments delineated by pattern matching and encrypted by fixed-length blocks
JP5412414B2 (ja) 検索可能暗号処理システム
CN108334612A (zh) 一种针对密文域的形近汉字全文模糊检索方法
CN111199053B (zh) 用于对加密数据进行多字符通配符搜索的系统和方法
CN110941817B (zh) 一种密码加密及密文解密的方法和装置
CN110457873B (zh) 一种水印嵌入与检测方法及装置
CN104704501B (zh) 在计算机系统中安全生成和存储密码
CN106778292B (zh) 一种Word加密文档的快速还原方法
Geetha et al. Tamilian cryptography: an efficient hybrid symmetric key encryption algorithm
US20170366514A1 (en) Code obfuscation and associated objects
CN103595524B (zh) 一种基于流密码的丢位加密-补位解密的加解密方法
CN112532379A (zh) 一种文件保护方法及装置
CN110008724B (zh) 固态硬盘控制器安全加载方法、装置及存储介质
KR101428648B1 (ko) 블록 토큰 기반의 암호화 방법 및 블록 토큰 기반의 복호화 방법
Fathurrahmad et al. Development And Implementation Of The Rijndael Algorithm And Base-64 Advanced Encryption Standard (AES) For Website Data Security
JP6672451B2 (ja) 暗号化検索インデックスマージサーバ、暗号化検索インデックスマージシステム、及び暗号化検索インデックスマージ方法
CN114422209A (zh) 一种数据处理的方法、装置及存储介质
CN112287374A (zh) Excel密文文档恢复方法、计算机设备及存储介质
KR102083415B1 (ko) 암호화 파일에 대한 복호화 장치 및 방법
CN109710899B (zh) 存储介质内文件解密、取证方法和装置
Zhang et al. An extensive analysis of truecrypt encryption forensics
EP3018647B1 (en) Fake information based on n-gram randomizations
JP2015082077A (ja) 暗号化装置、制御方法、及びプログラム

Legal Events

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

Payment date: 20170703

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20180625

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20190701

Year of fee payment: 6