KR101231592B1 - 안전한 삭제를 위한 플래시 메모리 제어 장치 및 방법 - Google Patents

안전한 삭제를 위한 플래시 메모리 제어 장치 및 방법 Download PDF

Info

Publication number
KR101231592B1
KR101231592B1 KR1020110035739A KR20110035739A KR101231592B1 KR 101231592 B1 KR101231592 B1 KR 101231592B1 KR 1020110035739 A KR1020110035739 A KR 1020110035739A KR 20110035739 A KR20110035739 A KR 20110035739A KR 101231592 B1 KR101231592 B1 KR 101231592B1
Authority
KR
South Korea
Prior art keywords
data
file
flash memory
encryption key
page
Prior art date
Application number
KR1020110035739A
Other languages
English (en)
Other versions
KR20120118267A (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 KR1020110035739A priority Critical patent/KR101231592B1/ko
Priority to PCT/KR2011/009554 priority patent/WO2012144717A1/ko
Publication of KR20120118267A publication Critical patent/KR20120118267A/ko
Application granted granted Critical
Publication of KR101231592B1 publication Critical patent/KR101231592B1/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/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/78Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
    • G06F21/79Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data in semiconductor storage media, e.g. directly-addressable memories
    • 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/2143Clearing memory, e.g. to prevent the data from being stolen

Landscapes

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

Abstract

헤더 영역과 데이터 영역으로 구분되는 플래시 메모리를 제어하는 장치 및 방법에 있어서, 마스터키를 생성하는 키생성부; 플래시 메모리 상에 데이터 파일을 저장하는 요청을 수신하면, 파일 암호키를 생성하고, 파일 암호키로 데이터 파일을 암호화하여 데이터 영역에 저장하고, 파일 암호키를 마스터키로 암호화하여 헤더 영역에 저장하는 저장부; 및 플래시 메모리 상에서 데이터 파일을 삭제하는 요청을 수신하면, 데이터 영역에 저장된 데이터 파일의 삭제 연산을 수행하고, 데이터 파일의 파일 암호키가 저장된 헤더 영역의 페이지에 덮어쓰기 연산을 수행하는 삭제부를 포함하는 구성을 마련한다.
상기와 같은 장치 및 방법에 의하여, 삭제된 데이터 파일은 플래시 메모리 상에서 암호화되어 남겨지고 상기 데이터 파일의 암호키는 덮어쓰기 되므로, 삭제 연산 후에도 파일의 데이터가 복원되어 유출될 수 없다.

Description

안전한 삭제를 위한 플래시 메모리 제어 장치 및 방법 { A flash memory control device for secure deletion and the method thereof }
본 발명은 플래시 메모리 상에서 데이터 파일을 안전하고 완전하게 삭제하기 위한 플래시 메모리 제어 장치 및 방법에 관한 것이다.
특히, 본 발명은 데이터 파일을 암호키로 암호화하여 저장하고 암호키를 별도 헤더 영역에 저장하여, 데이터 파일 삭제시 암호키를 덮어쓰기 연산을 수행하는 플래시 메모리 제어 장치 및 방법에 관한 것이다.
정보기술의 발전에 따라 일반인들도 손쉽게 다양한 전자제품들을 사용할 수 있게 되었다. 그중 USB 플래시 메모리는 작은 크기에도 불구하고 대용량의 데이터를 저장할 수 있는 장점으로 인해 가장 널리 사용되는 대표적인 기기 중 하나이다.
특히, 이동이 잦은 사람들은 USB 플래시 메모리에 많은 정보 데이터를 저장하여 가지고 다닌다. 예를 들어, 공인인증서 등 개인정보 파일이나, 회사의 기밀 문서 등 문서 파일을 저장하여 이동하는데, USB 플래시 메모리가 많이 이용된다.
그러나 사용자 개인 정보 및 기밀 데이터 저장에 사용된 USB 플래시 메모리를 분실할 경우, 해당 데이터가 이미 삭제되었다 하더라도 복원 프로그램 등을 통해 손쉽게 복원할 수 있다. 이 경우 해당 USB 플래시 메모리에 저장되어 있던 사용자 개인 정보 및 기밀 정보는 제 3자에게 노출되어 심각한 피해를 초래하게 된다.
이러한 문제점을 방지하기 위해, 안전한 데이터 삭제를 위한 다양한 지침들이 발표되었으며, 발표된 지침들을 준수하는 소프트웨어도 다수 개발되었다. 상기와 같은 종래의 안전한 데이터 삭제 지침들은 주로 기존의 하드 디스크에 저장된 데이터를 안전하게 삭제하기 위한 지침들이다.
그런데 하드 디스크와 USB 플래시 메모리의 동작 방법이 물리적으로 다르기 때문에, 하드 디스크에 주로 적용되던 종래의 삭제 지침을 곧바로 USB 플래시 메모리에 적용하면, 효율이 떨어지거나 안전하게 삭제되지 않는 경우가 발생할 수 있다.
따라서 플래시 메모리의 특성을 고려한 새로운 삭제 방법을 적용해야 한다. 최근 플래시 메모리의 특성을 고려하여 플래시 메모리에 적합한 안전한 삭제 기술이 연구되고 있으나, 종래 기술은 안전한 데이터 삭제 지침을 따르고 있지 않아 안전성을 보장할 수 없는 문제점이 존재한다.
본 발명의 목적은 상술한 바와 같은 문제점을 해결하기 위한 것으로, 최소한의 연산을 통해 안전한 데이터 삭제 지침을 준수하여, 안전성과 효율성이 극대화된 플래시 메모리에 적합한 안전한 삭제 방법을 제공하는 플래시 메모리 제어 장치 및 방법을 제공하는 것이다.
또한, 본 발명의 목적은 데이터 파일을 암호키로 암호화하여 저장하고 암호키를 별도 헤더 영역에 저장하여, 데이터 파일 삭제시 암호키를 덮어쓰기 연산을 수행하는 플래시 메모리 제어 장치 및 방법을 제공하는 것이다.
또한, 본 발명의 목적은 데이터 파일의 암호키를 덮어쓰기 연산으로 삭제할 때, 암호키가 저장된 페이지를 포함하는 블록 삭제 연산의 가능여부를 판단하여 삭제 연산을 하는 플래시 메모리 제어 장치 및 방법을 제공하는 것이다.
상기 목적을 달성하기 위해 본 발명은 헤더 영역과 데이터 영역으로 구분되는 플래시 메모리 상에서 데이터 파일의 저장 및 삭제를 수행하는 플래시 메모리 제어 장치에 관한 것으로서, 마스터키를 생성하는 키생성부; 데이터 파일의 저장 요청을 수신하면, 파일 암호키를 생성하고, 상기 파일 암호키로 상기 데이터 파일을 암호화하여 상기 데이터 영역에 저장하고, 상기 파일 암호키를 상기 마스터키로 암호화하여 상기 헤더 영역에 저장하는 저장부; 데이터 파일의 삭제 요청을 수신하면, 상기 데이터 영역에 저장된 상기 데이터 파일의 삭제 연산을 수행하고, 상기 데이터 파일의 파일 암호키가 저장된 헤더 영역의 페이지에 덮어쓰기 연산을 수행하는 삭제부를 포함한다.
또, 본 발명은 플래시 메모리 제어 장치에 있어서, 상기 마스터키는 사용자로부터 입력받은 패스워드에 의해 생성되는 것을 특징으로 한다.
또, 본 발명은 플래시 메모리 제어 장치에 있어서, 상기 마스터키는 일방향 함수를 이용하여 상기 패스워드를 반복 연산함으로써 생성되는 것을 특징으로 한다.
또, 본 발명은 플래시 메모리 제어 장치에 있어서, 상기 파일 암호키는 난수에 의해 생성되는 것을 특징으로 한다.
또, 본 발명은 플래시 메모리 제어 장치에 있어서, 상기 덮어쓰기 연산은 사전에 정해진 패턴의 데이터로 상기 페이지에 덮어쓰기를 하는 연산인 것을 특징으로 한다.
또, 본 발명은 플래시 메모리 제어 장치에 있어서, 상기 삭제부는, 상기 덮어쓰기 연산이 수행된 페이지를 포함하는 블록에 유효한 페이지가 존재하지 않으면, 상기 블록에 삭제 연산을 수행하는 것을 특징으로 한다.
또, 본 발명은 플래시 메모리 제어 장치에 있어서, 상기 유효한 페이지는 삭제 대상이 되는 파일의 헤더 정보를 포함하고 있지 않거나, 알려진 패턴의 데이터로 기존에 이미 덮어쓰기가 수행되지 않은 페이지인 것을 특징으로 한다.
또한, 본 발명은 헤더 영역과 데이터 영역으로 구분되는 플래시 메모리 상에서 데이터 파일의 저장 및 삭제를 수행하는 플래시 메모리 제어 방법에 관한 것으로서, (a) 마스터키를 생성하는 단계; (b) 데이터 파일의 저장 요청을 수신하면, 파일 암호키를 생성하고, 상기 파일 암호키로 상기 데이터 파일을 암호화하여 상기 데이터 영역에 저장하고, 상기 파일 암호키를 상기 마스터키로 암호화하여 상기 헤더 영역에 저장하는 단계; (c) 데이터 파일의 삭제 요청을 수신하면, 상기 데이터 영역에 저장된 상기 데이터 파일의 삭제 연산을 수행하고, 상기 데이터 파일의 파일 암호키가 저장된 헤더 영역의 페이지에 덮어쓰기 연산을 수행하는 단계를 포함한다.
또, 본 발명은 플래시 메모리 제어 장치에 있어서, 상기 덮어쓰기 연산은 사전에 정해진 패턴의 데이터로 상기 페이지에 덮어쓰기를 하는 연산인 것을 특징으로 한다.
또, 본 발명은 플래시 메모리 제어 장치에 있어서, 상기 (c)단계에서, 상기 덮어쓰기 연산이 수행된 페이지를 포함하는 블록에 유효한 페이지가 존재하지 않으면, 상기 블록에 삭제 연산을 수행하는 것을 특징으로 한다.
또, 본 발명은 플래시 메모리 제어 장치에 있어서, 상기 유효한 페이지는 삭제 대상이 되는 파일의 헤더 정보를 포함하고 있지 않거나, 알려진 패턴의 데이터로 기존에 이미 덮어쓰기가 수행되지 않은 페이지인 것을 특징으로 한다.
또한, 본 발명은 상기 방법을 수행하는 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체에 관한 것이다.
상술한 바와 같이, 본 발명에 따른 플래시 메모리 제어 장치 및 방법에 의하면, 안전한 데이터 삭제를 위한 지침을 준수하여 플래시 메모리에 저장된 데이터가 복구될 수 없도록 함으로써, 사용자 데이터의 외부 유출을 방지할 수 있는 효과가 얻어진다.
즉, 본 발명에 따른 플래시 메모리 제어 장치 및 방법에 의하면, 삭제된 데이터 파일은 플래시 메모리 상에서 암호화되어 남겨지고 상기 데이터 파일의 암호키는 덮어쓰기 되므로, 삭제 연산 후에도 파일의 데이터가 복원되어 유출될 수 없는 효과가 얻어진다.
또한, 본 발명에 따른 플래시 메모리 제어 장치 및 방법에 의하면, 삭제를 위한 덮어쓰기 연산을 수행할 때 블록 삭제 연산 여부를 판단하여 수행함으로써, 플래시 메모리의 프리징 현상을 줄여 삭제 효율성을 높일 수 있는 효과가 얻어진다.
도 1은 본 발명을 실시하기 위한 전체 시스템 구성의 일례를 도시한 도면이다.
도 2는 본 발명의 일실시예에 따른 플래시 메모리 제어 장치의 구성에 대한 블록도이다.
도 3 내지 도 6은 본 발명의 일실시예에 따른 플래시 메모리 제어 방법을 설명하는 흐름도이다.

* 도면의 주요 부분에 대한 부호의 설명 *
10 : 단말기 20 : 플래시 메모리
22 : 데이터 영역 24 : 헤더 영역
30 : 플래시 메모리 제어 장치 31 : 키생성부
32 : 저장부 33 : 삭제부
34 : 일방향 함수 연산부 35 : 암호화 연산부
36 : 난수생성기
이하, 본 발명의 실시를 위한 구체적인 내용을 도면에 따라서 설명한다.
또한, 본 발명을 설명하는데 있어서 동일 부분은 동일 부호를 붙이고, 그 반복 설명은 생략한다.
먼저, 본 발명을 실시하기 위한 전체 시스템 구성의 일례를 도 1을 참조하여 설명한다.
도 1a에서 도시한 바와 같이, 본 발명을 실시하기 위한 전체 시스템은 단말기(10), 플래시 메모리(20), 및 플래시 메모리 제어장치(30)로 구성된다.
단말기(10)는 PC, 노트북, PDA, 태블릿PC, 스마트폰 등 컴퓨팅 기능을 가진 단말기로서, 사용자가 플래시 메모리(20)를 사용하기 위한 단말이다. 단말기(10)는 플래시 메모리(20)와 데이터 통신을 할 수 있는 인터페이스를 구비한다.
플래시 메모리 제어장치(30)는 단말기(10)에 설치되는 프로그램 장치로서, 단말기(10)의 인터페이스에 의해 연결된 플래시 메모리(20)의 저장, 삭제 등을 제어한다. 즉, 플래시 메모리(20)가 단말기(10)에 삽입되면, 제어장치(30)는 작동하여 플래시 메모리(20)의 저장 및 삭제 등을 제어한다.
도 2에서 보는 바와 같이, 플래시 메모리(20)는 사용자 데이터를 저장하는 장치로서, 데이터 영역(22)과 헤더 영역(24)으로 구분된다. 데이터 영역(22) 및 헤더 영역(24)은 각각 다수의 블록으로 구성되고, 블록은 다시 다수의 페이지로 구분된다.
플래시 메모리(20)는 다수의 메모리 셀로 형성된 저장매체이다. 따라서 플래시 메모리(20)는 특성상 데이터를 쓰고 읽는 연산은 페이지 단위로 수행될 수 있으나, 페이지 단위로 클리어(clear) 연산을 수행하지는 못한다. 메모리 셀의 클리어(clear) 연산은 블록 단위로만 가능하다.
따라서 페이지 단위로 삭제하는 경우, 실제 메모리 셀에 기록된 데이터를 물리적으로 삭제하지는 않고, 단지 삭제되었음을 나타내는 표시(일종의 flag가 될 수 있다.)만 해둔다. 그리고 그 페이지가 속한 블록에 유효한 데이터가 없는 경우에 블록을 삭제해야 한다. 예를 들어, 블록 내에 모든 셀에 데이터가 저장되지 않았다거나 삭제 표시가 있는 경우에만, 블록 전체를 클리어(clear) 연산을 수행함으로써, 각 페이지를 클리어(clear)하게 된다.
한편, 도 1b에서 보는 바와 같이, 다른 실시예로서, 플래시 메모리 제어장치(30)는 플래시 메모리(20) 내에서 설치될 수도 있다. 즉, 플래시 메모리(20) 내에 마이크로 프로세서에 의해 수행되는 프로그램 장치로서 구현되거나, ASIC(주문형 반도체) 등 하나의 제어 칩으로 구현될 수도 있다.
다음으로, 본 발명의 일실시예에 따른 플래시 메모리 제어장치(30)의 구성을 도 2를 참조하여 설명한다.
도 2에서 보는 바와 같이, 플래시 메모리 제어장치(30)는 키생성부(31), 저장부(32), 및, 삭제부(33)로 구성된다. 또한 추가적으로, 일방향 함수 연산부(34) 및, 암호화 연산부(35)를 더 포함하여 구성될 수 있다.
키생성부(31)는 마스터키를 생성한다. 이러한 마스터키는 사용자로부터 입력받은 패스워드에 의해 생성될 수 있으며, 여타의 규칙에 따른 자동화된 패스워드 생성 방법에 의해 생성될 수도 있다. 또한, 상기 마스터키는 일방향 함수를 이용하여 상기 패스워드를 반복 연산함으로써 생성된다. 따라서, 일단 생성된 마스터키를 역으로 연산함으로써 원래의 패스워드를 얻을 수는 없으며, 그로부터 마스터키 및 패스워드에 대한 안전성을 보장할 수 있다. 이를 위해 상기된 일방향 함수는 역방향 연산에 강인하도록 사전에 설계된 일련의 연산으로 구성될 수 있다.
즉, 키생성부(31)는 일방향 함수 연산부(34)를 통해 마스터키를 생성하되, 일방향 함수 연산부(34)는 사용자로부터 입력받은 패스워드 또는 자동화 규칙에 따라 생성된 패스워드를 입력값으로 하여 일방향 함수가 사전에 정의하고 있는 일련의 연산을 따라 여러 번 반복 수행을 통해 마스터키를 생성한다.
저장부(32)는 데이터 파일의 저장 요청을 수신하면, 파일 암호키를 생성한다. 이때, 난수 생성기(36)를 통해 사용자 데이터를 암호화하기 위한 파일 암호키를 생성한다.
그리고 저장부(32)는 상기 파일 암호키로 상기 데이터 파일을 암호화하여 플래시 메모리의 데이터 영역(22)에 저장하고, 상기 파일 암호키를 상기 마스터키로 암호화하여 상기 헤더 영역(24)에 저장한다. 이때, 파일 암호키는 난수생성기(36)에 의해 생성된다.
이때, 암호화 연산부(16)를 통해, 파일 암호키를 이용하여 사용자 데이터(또는 데이터 파일)에 대한 암호화를 수행하고, 이때 사용된 파일 암호키는 상기 마스터키를 사용하여 암호화된다.
데이터 영역(22)은 실제 사용자가 저장하고자 하는 데이터(또는 데이터 파일)를 저장한다. 이때, 데이터 파일은 상기 파일 암호키를 이용하여 암호화된 형태로 저장된다.
헤더 영역(24)은 파일의 메타정보 등과 같이 데이터 블록(24)에 저장된 데이터와 관련된 정보를 저장한다. 이때, 데이터 블록(24)에 저장된 데이터 암호화에 사용된 파일 암호키는 암호화된 형태로 헤더 블록(22)에 저장된다.
삭제부(33)는 데이터 파일의 삭제 요청을 수신하면, 상기 데이터 영역(22)에 저장된 상기 데이터 파일의 삭제 연산을 수행하고, 상기 데이터 파일의 파일 암호키가 저장된 헤더 영역(24)의 페이지에 덮어쓰기 연산을 수행한다.
특히, 덮어쓰기 연산은 사전에 정해진 패턴의 데이터로 상기 페이지에 덮어쓰기를 하는 연산이다. 여기서 사전에 정해진 패턴이란, 덮어쓰기 연산을 통해 암호키가 저장된 헤더 영역(24)을 복구할 수 없도록 해당 페이지의 데이터를 변조함으로써, 삭제 연산을 되살리기(undo)할 수 없도록 하는 역할을 수행한다. 따라서, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 헤더 영역(24)에 저장된 암호키가 복구될 수 없도록 변조에 의한 데이터의 비가역성을 보장할 수 있는 패턴을 설계하여 본 실시예에 적용할 수 있다.
또한, 삭제부(33)는 상기 덮어쓰기 연산이 수행된 페이지를 포함하는 블록에 유효한 페이지가 존재하지 않으면, 상기 블록에 삭제 연산을 수행한다. 이때, 유효한 페이지는 삭제 대상이 되는 파일의 헤더 정보를 포함하고 있지 않거나, 알려진 패턴의 데이터로 기존에 이미 덮어쓰기가 수행되지 않은 페이지일 때를 말한다.
다음으로, 본 발명의 일실시예 따른 플래시 메모리 제어 방법을 도 3을 참조하여 설명한다.
도 3에서 보는 바와 같이, 본 발명에 따른 플래시 메모리 제어 방법은 (a) 마스터 생성단계(S10), (b) 데이터 파일 및 파일 암호키를 저장하는 단계(S20), (c) 데이터 파일 및 파일 암호키를 삭제하는 단계(S30)로 구분된다.
먼저, 도 4와 같이, 마스터 생성단계(S10)에서, 마스터키를 생성한다.
먼저, 사용자로부터 패스워드 입력을 받는다(S11). 그리고 사용자 패스워드에 일방향 함수를 연산을 수행한다(S12). 상기 연산을 n번 반복할 때까지 수행한다(S13). 일방향 함수 연산을 반복 적용하여 최종적으로 얻은 결과값을 마스터키로 생성한다(S14). 즉, 해당 마스터 키는 사용자 패스워드에 일방향 연산(12)을 여러 번 적용한 출력값이다.
다음으로, 도 5와 같이, 저장하는 단계(S20)에서, 데이터 파일의 저장 요청을 수신하면, 파일 암호키를 생성하고, 상기 파일 암호키로 상기 데이터 파일을 암호화하여 상기 데이터 영역에 저장하고, 상기 파일 암호키를 상기 마스터키로 암호화하여 상기 헤더 영역에 저장한다.
사용자가 선택한 데이터는 플래시 메모리(20)에 저장되기에 앞서 암호화 과정을 거치게 된다. 난수 생성기(36)로부터 출력된 파일 암호키는 사용자 데이터를 암호화하기 위해 사용되며, 해당 파일 암호키는 마스터키를 이용하여 다시 암호화된다.
앞선 과정을 통해 출력된 암호화된 데이터(또는 데이터 파일)는 데이터 블록(또는 데이터 영역)(22)에 저장되며, 암호화된 파일 암호키는 해당 데이터 블록(22)에 대한 정보가 저장된 헤더 블록(24)에 저장된다.
다음으로, 도 5에서 보는 바와 같이, 삭제하는 단계(S30)에서, 데이터 파일의 삭제 요청을 수신하면, 상기 데이터 영역에 저장된 상기 데이터 파일의 삭제 연산을 수행하고, 상기 데이터 파일의 파일 암호키가 저장된 헤더 영역의 페이지에 덮어쓰기 연산을 수행한다.
먼저, 데이터 파일의 삭제 요청이 되면, 그 때 삭제를 시작한다(S31).
그리고 삭제하고자 하는 데이터(또는 데이터 파일)의 파일 암호키가 저장된 헤더 블록(24)을 검색한다(S32). 해당 암호키가 저장된 헤더 블록의 페이지를 알려진 패턴의 데이터로 덮어쓰기를 수행한다(S33).
덮어쓰기가 완료된 후, 덮어쓰기가 수행된 페이지를 포함하고 있는 블록에 유효한 페이지가 존재하는지 확인한다(S34). 이때, 유효한 페이지는 삭제 대상이 되는 파일의 헤더 정보를 포함하고 있지 않거나, 알려진 패턴의 데이터로 기존에 이미 덮어쓰기가 수행되지 않은 페이지를 의미한다.
유효한 페이지가 존재할 경우에는 삭제 연산이 종료되며, 유효한 페이지가 존재하지 않을 경우에는 해당 헤더 블록에 대해 삭제 연산을 수행한 후에 삭제 연산이 종료된다(S35).
이상, 본 발명자에 의해서 이루어진 발명을 실시 예에 따라 구체적으로 설명하였지만, 본 발명은 실시 예에 한정되는 것은 아니고, 그 요지를 이탈하지 않는 범위에서 여러 가지로 변경 가능한 것은 물론이다.
본 발명은 최소한의 연산을 통해 안전한 데이터 삭제 지침을 준수하여, 안전성과 효율성이 극대화된 플래시 메모리에 적합한 안전한 삭제 방법을 제공하는 플래시 메모리 제어 장치를 개발하는 데 적용이 가능하다.

Claims (12)

  1. 헤더 영역과 데이터 영역으로 구분되는 플래시 메모리를 제어하는 장치에 있어서,
    마스터키를 생성하는 키생성부;
    상기 플래시 메모리 상에 데이터 파일을 저장하는 요청을 수신하면, 파일 암호키를 생성하고, 상기 파일 암호키로 상기 데이터 파일을 암호화하여 상기 데이터 영역에 저장하고, 상기 파일 암호키를 상기 마스터키로 암호화하여 상기 헤더 영역에 저장하는 저장부; 및
    상기 플래시 메모리 상에서 데이터 파일을 삭제하는 요청을 수신하면, 상기 데이터 영역에 저장된 상기 데이터 파일의 삭제 연산을 수행하고, 상기 데이터 파일의 파일 암호키가 저장된 헤더 영역의 페이지에 덮어쓰기 연산을 수행하는 삭제부를 포함하되,
    상기 마스터키는 사용자로부터 입력받은 패스워드를 일방향 함수를 이용하여 반복 연산함으로써 생성되는 것을 특징으로 하는 장치.
  2. 삭제
  3. 삭제
  4. 제1항에 있어서,
    상기 파일 암호키는 난수에 의해 생성되는 것을 특징으로 하는 장치.
  5. 제1항에 있어서,
    상기 덮어쓰기 연산은 사전에 정해진 패턴의 데이터로 상기 페이지에 덮어쓰기를 하는 연산인 것을 특징으로 하는 장치.
  6. 제1항에 있어서,
    상기 삭제부는, 상기 덮어쓰기 연산이 수행된 페이지를 포함하는 블록에 유효한 페이지가 존재하지 않으면, 상기 블록에 삭제 연산을 수행하는 것을 특징으로 하는 장치.
  7. 제6항에 있어서,
    상기 유효한 페이지는 삭제 대상이 되는 파일의 헤더 정보를 포함하고 있지 않거나, 알려진 패턴의 데이터로 기존에 이미 덮어쓰기가 수행되지 않은 페이지인 것을 특징으로 하는 장치.
  8. 헤더 영역과 데이터 영역으로 구분되는 플래시 메모리를 제어하는 방법에 있어서,
    (a) 마스터키를 생성하는 단계;
    (b) 상기 플래시 메모리 상에 데이터 파일을 저장하는 요청을 수신하면, 파일 암호키를 생성하고, 상기 파일 암호키로 상기 데이터 파일을 암호화하여 상기 데이터 영역에 저장하고, 상기 파일 암호키를 상기 마스터키로 암호화하여 상기 헤더 영역에 저장하는 단계; 및
    (c) 상기 플래시 메모리 상에서 데이터 파일을 삭제하는 요청을 수신하면, 상기 데이터 영역에 저장된 상기 데이터 파일의 삭제 연산을 수행하고, 상기 데이터 파일의 파일 암호키가 저장된 헤더 영역의 페이지에 덮어쓰기 연산을 수행하는 단계를 포함하되,
    상기 마스터키는 사용자로부터 입력받은 패스워드를 일방향 함수를 이용하여 반복 연산함으로써 생성되는 것을 특징으로 하는 방법.
  9. 제8항에 있어서,
    상기 덮어쓰기 연산은 사전에 정해진 패턴의 데이터로 상기 페이지에 덮어쓰기를 하는 연산인 것을 특징으로 하는 방법.
  10. 제8항에 있어서,
    상기 (c)단계에서, 상기 덮어쓰기 연산이 수행된 페이지를 포함하는 블록에 유효한 페이지가 존재하지 않으면, 상기 블록에 삭제 연산을 수행하는 것을 특징으로 하는 방법.
  11. 제10항에 있어서,
    상기 유효한 페이지는 삭제 대상이 되는 파일의 헤더 정보를 포함하고 있지 않거나, 알려진 패턴의 데이터로 기존에 이미 덮어쓰기가 수행되지 않은 페이지인 것을 특징으로 하는 방법.
  12. 제8항 내지 제11항 중 어느 한 항의 방법을 수행하는 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
KR1020110035739A 2011-04-18 2011-04-18 안전한 삭제를 위한 플래시 메모리 제어 장치 및 방법 KR101231592B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020110035739A KR101231592B1 (ko) 2011-04-18 2011-04-18 안전한 삭제를 위한 플래시 메모리 제어 장치 및 방법
PCT/KR2011/009554 WO2012144717A1 (ko) 2011-04-18 2011-12-12 안전한 삭제를 위한 플래시 메모리 제어 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110035739A KR101231592B1 (ko) 2011-04-18 2011-04-18 안전한 삭제를 위한 플래시 메모리 제어 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20120118267A KR20120118267A (ko) 2012-10-26
KR101231592B1 true KR101231592B1 (ko) 2013-02-08

Family

ID=47041787

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110035739A KR101231592B1 (ko) 2011-04-18 2011-04-18 안전한 삭제를 위한 플래시 메모리 제어 장치 및 방법

Country Status (2)

Country Link
KR (1) KR101231592B1 (ko)
WO (1) WO2012144717A1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11675504B2 (en) 2020-08-12 2023-06-13 Samsung Electronics Co., Ltd. Memory controller, memory system including the same, and method of operating the same
WO2024034997A1 (ko) * 2022-08-09 2024-02-15 박종성 단말장치 및 이를 이용한 데이터를 복구 불가능하게 삭제하는 방법

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101284465B1 (ko) * 2013-03-26 2013-07-09 서울과학기술대학교 산학협력단 낸드 기반 블록 장치에서 안전 파일 삭제를 지원하는 페이지 사상 방법 및 이를 기록하는 기록매체
KR101707183B1 (ko) 2015-11-12 2017-02-15 네이버비즈니스플랫폼 주식회사 파일 안전 삭제 기능 제공 방법 및 컴퓨터 프로그램
WO2018237052A1 (en) 2017-06-21 2018-12-27 Benkert John E METHOD AND SYSTEM FOR EMERGENCY DATA DESTRUCTION
US11899958B2 (en) 2019-12-09 2024-02-13 Korea University Research And Business Foundation Method for discarding personal information in NAND flash memory

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100874872B1 (ko) * 2007-06-20 2008-12-19 한양대학교 산학협력단 안전한 갱신을 지원하는 플래시 메모리 기반 보안 2차 저장장치
KR20100025116A (ko) * 2008-08-27 2010-03-09 (주) 애니컴페니언 완전삭제를 이용한 자동적인 문서유출 방지 시스템

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7661132B2 (en) * 2003-09-26 2010-02-09 Nippon Telegraph And Telephone Corporation Tag privacy protection method, tag device, backend apparatus, updater, update solicitor and record medium carrying such programs in storage
KR100941368B1 (ko) * 2007-12-27 2010-02-11 한국전자통신연구원 파일 안전 삭제 기능을 갖는 플래시 메모리 장치 및 플래시파일 안전 삭제 방법

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100874872B1 (ko) * 2007-06-20 2008-12-19 한양대학교 산학협력단 안전한 갱신을 지원하는 플래시 메모리 기반 보안 2차 저장장치
KR20100025116A (ko) * 2008-08-27 2010-03-09 (주) 애니컴페니언 완전삭제를 이용한 자동적인 문서유출 방지 시스템

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11675504B2 (en) 2020-08-12 2023-06-13 Samsung Electronics Co., Ltd. Memory controller, memory system including the same, and method of operating the same
WO2024034997A1 (ko) * 2022-08-09 2024-02-15 박종성 단말장치 및 이를 이용한 데이터를 복구 불가능하게 삭제하는 방법

Also Published As

Publication number Publication date
KR20120118267A (ko) 2012-10-26
WO2012144717A1 (ko) 2012-10-26

Similar Documents

Publication Publication Date Title
KR101231592B1 (ko) 안전한 삭제를 위한 플래시 메모리 제어 장치 및 방법
Lee et al. Secure Data Deletion for USB Flash Memory.
CN101231622B (zh) 基于闪存的数据存储方法和设备、及数据读取方法和设备
US9749132B1 (en) System and method for secure deletion of data
JP4869337B2 (ja) データの安全な処理
CN109190401A (zh) 一种Qemu虚拟可信根的数据存储方法、装置及相关组件
US8898807B2 (en) Data protecting method, mobile communication device, and memory storage device
CN104298926A (zh) 一种运行加密文件的方法和装置
KR101497067B1 (ko) 디지털 포렌식 기반의 전자기록물 이관 방법 및 이관 장치
KR101467227B1 (ko) Ssd에 적합한 보안 삭제 기능을 가진 패스워드 기반의 암호화 파일 관리 방법 및 이들을 이용한 암호화 파일 관리 시스템
JP2006195629A (ja) 携帯記憶装置
Chen et al. The block-based mobile pde systems are not secure-experimental attacks
KR101648262B1 (ko) Ssd에 적합한 보안 삭제 기능을 가진 패스워드 기반의 암호화 파일 관리 방법 및 이들을 이용한 암호화 파일 관리 시스템
WO2023073368A1 (en) Methods and systems for secure data storage
CN103488951A (zh) 一种基于云存储的文件保护方法及系统
Tiwari et al. Secure Wipe Out in BYOD Environment
US11182492B2 (en) Secure portable data apparatus
US10956080B2 (en) Erasure of data from a memory of a data storage apparatus by identifying available free space in the memory and iteratively writing a sequence of files decreasing size to the memory using a file-based protocol
CN108038387B (zh) 一种外发文件的处理方法和系统
CN112380559A (zh) 基于双混沌哈希文件控制的安卓文件密码箱系统
Choi et al. Password-based single-file encryption and secure data deletion for solid-state drive
RU96433U1 (ru) Система безвозвратного удаления файла (шредер файла)
Uz The effectiveness of remote wipe as a valid defense for enterprises implementing a BYOD policy
JP6215468B2 (ja) プログラム保護装置
JP5539024B2 (ja) データ暗号化装置およびその制御方法

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20160201

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20170109

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee