KR101659590B1 - 메모리에 저장된 데이터의 안전한 삭제 - Google Patents

메모리에 저장된 데이터의 안전한 삭제 Download PDF

Info

Publication number
KR101659590B1
KR101659590B1 KR1020157001560A KR20157001560A KR101659590B1 KR 101659590 B1 KR101659590 B1 KR 101659590B1 KR 1020157001560 A KR1020157001560 A KR 1020157001560A KR 20157001560 A KR20157001560 A KR 20157001560A KR 101659590 B1 KR101659590 B1 KR 101659590B1
Authority
KR
South Korea
Prior art keywords
memory
controller
block
encryption key
array
Prior art date
Application number
KR1020157001560A
Other languages
English (en)
Other versions
KR20150032871A (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 인텔 코포레이션
Publication of KR20150032871A publication Critical patent/KR20150032871A/ko
Application granted granted Critical
Publication of KR101659590B1 publication Critical patent/KR101659590B1/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
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1416Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1408Protection against unauthorised use of memory or access to memory by using cryptography
    • 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/2107File encryption
    • 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)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Storage Device Security (AREA)

Abstract

일부 실시예들에 따르면, 블록과 같은 메모리의 단위는 침입자가 그 블록에 대한 액세스를 얻는 것을 매우 어렵게 만드는 방식으로 삭제될 수 있다. 더욱이, 삭제는 충분히 효율적인 방식 및 사용자에게 지나치게 부담을 주지 않는 방식으로 행해질 수 있다. 일부 실시예들에서, (블록과 같은) 메모리의 단위크기의 암호화는 메모리내에서 완전히 처리될 수 있다. 그 후, 암호화 프로세스는 외부로부터 액세스될 수 없고, 암호화 프로세스가 스토리지 디바이스 내에서 자동으로 행해지기 때문에 사용자는 암호화 시퀀스의 시퀀스로 부담받을 필요가 없다.

Description

메모리에 저장된 데이터의 안전한 삭제{SECURE DELETION OF DATA STORED IN A MEMORY}
본 발명은 일반적으로 전자 메모리들에 저장된 데이터를 삭제하는 것에 관한 것이다.
통상적으로, 사용자가 반도체 메모리에 저장된 데이터의 삭제를 시도하는 경우에, 사용자가 시스템으로부터 전부 삭제되었다고 생각하는 데이터는 여전히 존재하고 추출될 수 있다. 이것은 물리적 디바이스를 획득하거나 원격으로 디바이스에 액세스함으로써 사용자의 컴퓨터에 대한 액세스를 얻는 침입자의 수중에 기밀 데이터가 들어갈 수 있기 때문에 보안 문제를 발생시킨다.
메모리에 저장된 삭제 데이터에 대한 액세스를 제한하는 일 방식은 데이터를 반복적으로 덮어쓰기하는 것이다. 그러나, 이것은 시간 소모적인 경향이 있고, 반복된 기록들이 데이터를 전부 덮어쓰기하지 않을 수 있어, 데이터의 일부 부분들이 여전히 액세스되게 하기 때문에 에러 발생이 있을 수 있다.
다른 접근방식은 메모리의 각각의 파일을 암호화하여 다른 파일에 암호화 키를 저장하는 것이다. 그러나, 이러한 방법은 일반적으로 사용자에게 가시적이어서, 사용자에게 일부 오버헤드를 부여한다. 또한, 이것은 암호화 키가 공격자에게 액세스가능한 파일에 저장되기 때문에 보안 문제를 초래할 수 있다. 따라서, 사용자의 관점으로부터, 삭제 프로세스는 사용자의 주의를 요구한다.
미국 특허출원공개공보 US 2012/0079289호 미국 특허출원공개공보 US 2011/0154060호 미국 특허출원공개공보 US 2009/0172265호 미국 특허출원공개공보 US 2007/0300031호 미국 특허출원공개공보 US 2005/0013217호
일부 실시예들은 아래의 도면들에 관하여 설명된다.
도 1은 본 발명에 따른 플랫폼의 일 실시예의 개략도이다.
도 2는 본 발명의 일 실시예에 따른 블록을 판독하는 시퀀스이다.
도 3은 본 발명의 일 실시예에 따른 블록을 기록하는 시퀀스이다.
도 4는 본 발명의 일 실시예에 따른 블록을 삭제하는 시퀀스이다.
도 5는 본 발명의 일 실시예의 단면도이다.
도 6은 일 실시예에 따른 도 5의 라인 6-6을 따라 일반적으로 취해진 단면도이다.
본원에서 사용되는 바와 같이, 삭제는 저장된 정보에 대한 장래의 액세스를 제한하기 위해 취해지는 임의의 조치를 지칭한다.
일부 실시예들에 따르면, 블록과 같은 메모리의 단위크기(granularity)는 침입자가 그 블록에 대한 액세스를 얻는 것을 매우 어렵게 만드는 방식으로 삭제될 수 있다. 더욱이, 삭제는 충분히 효율적인 방식 및 사용자에게 지나치게 부담을 주지 않는 방식으로 행해질 수 있다. 일 실시예에서, 블록은 가장 작은 어드레스가능한 저장 단위크기이다. 블록 보다 큰 다른 단위크기들이 또한 사용될 수 있다.
일부 실시예들에서, (블록과 같은) 메모리의 단위의 암호화는 메모리 내에서 전체적으로 처리될 수 있다. 그 후, 암호화 프로세스는 외부로부터 액세스될 수 없고, 암호화 프로세스가 스토리지 디바이스 내에서 자동으로 행해지기 때문에 사용자는 암호화 시퀀스로 부담받을 필요가 없다.
본 발명의 실시예들에 따라 구현될 수 있는 스토리지 디바이스들의 타입들은 반도체, 자기 및 광학 메모리들을 포함한다. 일반적으로, 이들 메모리들은 바람직하게는 메모리 외부로부터 액세스불가능한 일부 타입의 온보드 프로세싱 능력을 포함한다. 그 결과, 암호화 프로세스 및 블록과 같은 메모리의 단위크기들을 삭제하는 프로세스는 외부 소프트웨어에 의해 간섭받지 않을 수 있다.
따라서, 도 1을 참조하면, 플랫폼(10)은 입력/출력 디바이스(14)에 결합된 하나 이상의 프로세서들(12)을 포함할 수 있다. 통상의 입력/출력 디바이스들은 몇몇 예를 들자면, 키보드들, 프린터들, 모니터들 또는 디스플레이들, 마우스들, 및 터치 스크린들을 포함한다.
프로세서는 임의의 타입의 전자 스토리지일 수 있는 스토리지 디바이스(16)에 결합될 수 있다. 스토리지 디바이스는 임의의 종래의 또는 장래의 메모리 기술의 행(row)과 열(column) 셀들로 이루어진 메모리 어레이(18)를 포함할 수 있다. 일 실시예에서, 그 어레이의 일 영역이 암호화 키 스토어(20)를 저장하기 위해 사용될 수 있다. 그러나, 다른 실시예들에서, 암호화 키는 스토리지 디바이스(16)내의 개별 메모리에 저장될 수 있다.
어레이(18)는 명령어들을 실행할 수 있는 프로세서-기반 디바이스일 수 있는 온보드 제어기(17)에 의해 제어될 수 있다. 이것은 블록과 같은 메모리의 단위크기를 판독하고, 기록하며, 삭제하는 것 중 하나 이상을 위한 시퀀스들을 구현할 수 있다. 따라서, 외부 엔터티들에 의한 간섭없이 메모리 부분의 삭제를 위한 동작들을 수행할 수 있다. 제어기(17)는 그 메모리 어레이에 대한 집적된 양을 둘러싸는 패키지내의 집적 회로일 수 있다. 일 실시예에서, 메모리 어레이 및 제어기는 동일한 집적 회로 다이 상에 형성된다.
일 실시예에서, 제어기는 타겟 메모리 부분에서 데이터를 암호화하기 위해 사용되는 암호화 키를 간단히 변경함으로써 어레이의 일부 또는 전체 어레이를 소거할 수 있다. 그 후, 데이터가 침입자에 의해 액세스되더라도, 암호화 키가 발견될 수 없기 때문에 데이터는 암호해독될 수 없다. 더욱이, 침입자가 데이터에 액세스를 시도할 때, 그 데이터는 잘못된 키로 암호해독된다. 이러한 방식으로, 각 메모리 셀로부터 저장된 상태를 물리적으로 실제로 제거하기 보다는, 메모리의 일부는 암호화 키를 간단히 액세스불가능하게 함으로써 전체적으로 소거될 수 있어서, 누군가가 그 내부에 인코딩된 정보를 판독할 수 있는 것을 방지한다.
판독, 기록, 및 소거(22, 30 및 40)를 위한 다수의 상이한 시퀀스들이 어레이에 저장될 수 있다. 다른 실시예들에서, 시퀀스들은 하드웨어 또는 펌웨어로 구현될 수 있다.
일부 실시예들에서, 시퀀스들은 자기, 광학 및/또는 반도체 스토리지와 같은 하나 이상의 비일시적 컴퓨터 판독가능 매체에 저장된 컴퓨터 실행 명령어들에 의해 구현될 수 있다. 일 실시예에서, 컴퓨터 실행 명령어들은 스토리지 디바이스(16)내의 제어기(17)에 의해 전체적으로 구현될 수 있고, 이 제어기는 스토리지 디바이스(16) 외부로부터 대부분 또는 전체적으로 액세스불가능할 수 있다.
스토리지 디바이스(16)는 통상적으로 고정된 사이즈의 블록들로 조직화된다. 소프트웨어는 한 번에 하나의 블록에 대해 동작한다. 더 높은 레벨들은 더 미세한 단위크기를 제공한다.
레지스터들의 어레이가, 예를 들어, 암호화 키 스토어(20)에서 각각의 블록에 대해 하나가 스토리지 디바이스에서 정의될 수 있다. 블록 N에 대한 레지스터는 블록 N을 암호화하기 위해 사용된 암호화 키를 포함한다. 키 레지스터는 일부 실시예들에서 스토리지 디바이스(16) 외부로부터 액세스불가능하다. 대신에, 레지스터는 그 동작들을 수행하기 위해 스토리지 디바이스(16)에 의해 단독으로 사용된다.
암호화 프로세스 자체는 스토리지 디바이스(16) 외부의 사용자에게 투명할 수 있다. 스토리지 디바이스(16)는 블록의 암호화 키를 사용하여 데이터를 자동으로 암호화하고 암호해독한다. 암호화된 데이터는 스토리지 디바이스(16)가 플랫폼(10)으로부터 제거되어 다른 수단에 의해 판독될 때만 보여질 수 있다.
소프트웨어가 블록 또는 다른 단위크기를 삭제하기를 원하는 경우에, 새로운 암호화 키가 암호화 키 스토리지(20)를 이용하여 레지스터에서 그 블록에 대해 생성되고, 이전의 키를 무효로 한다. 일부 실시예들에서, 새로운 키는 제어기(17)에 의해 생성된다.
저장된 데이터가 삭제된 이후에 메모리 어레이(18) 상에서 여전히 변경되지 않았지만, 실제로 파괴되거나 소거된 데이터를 디코딩하기 위해 고유 키가 필요하기 때문에 임의의 공격자에게 쓸모없게 된다.
스토리지 디바이스(16)를 통한 삭제된 데이터에 액세스하는 임의의 시도는 암호해독할 수 없는 자료를 발생시키는 잘못된 암호화 키를 사용하는 자동의 쓸데없는 암호해독 시도를 발생시킨다.
키를 홀딩하는 레지스터가 외부로부터 액세스불가능하기 때문에, 일부 실시예들에서 레지스터의 카피들이 존재하지 않을 수 있다. 일부 실시예들에서 메모리 어레이(18) 상의 데이터가 자동으로 암호화되고 암호해독되기 때문에, 원래의 암호화된 데이터는 스토리지 디바이스(16)가 물리적으로 제거될 때를 제외하고 스토리지(16) 외부에 일반적으로 가시적이지 않다.
일 실시예에서, 스토리지 디바이스(16)가 파워 오프될 때, 모든 데이터를 단순히 분실할 수 있어서, 가장 높은 레벨의 보안을 보장한다. 이것은 디바이스가 임시 데이터를 홀딩하고 있거나 저장된 데이터가 매우 민감한 경우들에 유용할 수 있다. 다른 실시예들에서 전력의 간헐적 손실을 회피하기 위해 널리 알려진 기법들이 또한 사용될 수 있다.
다른 실시예에 따르면, 키 어레이가 스토리지 디바이스(16)내의 내부 영구 메모리(persistent memory)에 기록될 수 있다. 키 어레이는 소정의 디바이스 특정 키를 사용하여 키를 암호화하기 위해 사용될 수 있다. 파워 온될 때, 스토리지 디바이스는 데이터를 재암호화할 수 있어서, 내부 영구 메모리에서의 키 어레이의 카피를 쓸모없게 만들어 버린다. 또 다른 실시예에서, 키 어레이의 카피를 안전하게 삭제하기 위해 다른 기법들이 사용될 수 있다. 이러한 경우에, 문제점은 전체 메모리 디스크를 안전하게 삭제하는 것으로부터 비교적 작은 저장 매체를 안전하게 삭제하는 것으로 감소되었다.
다른 실시예에 따르면, 키 어레이는 외부 착탈식 저장 매체에 기록될 수 있다.
일 실시예에서, 키 어레이는 소정의 디바이스, 특정 키를 사용하거나 사용자 정의 키를 사용하여 암호화될 수 있다. 이러한 암호화는 사용자가 스토리지 디바이스로부터 키 어레이를 제거하게 하여, 그것의 콘텐츠를 공격자들에 대해 쓸모없게 만든다. 일부 실시예들에서, 암호화 키 또는 그 암호화된 데이터 어느 것도 원격으로 공격자들에 액세스가능하지 않다. 암호화를 회피하기 위해 리눅스 dd 커맨드를 사용하는 시도는 잘못된 키를 사용하여 삭제된 데이터를 암호해독하여, 데이터를 공격자에게 쓸모없게 만든다.
도 2를 참조하면, 메모리의 블록 또는 다른 단위크기를 판독하기 위해, 시퀀스 판독 블록(22)은 소프트웨어, 펌웨어 및/또는 하드웨어로 구현될 수 있다. 일 실시예에서, 시퀀스 판독 블록은 제어기(17)에 의해 구현될 수 있다. 소프트웨어 및 펌웨어 실시예들에서, 시퀀스 판독 블록은 자기, 반도체 또는 광학 스토리지와 같은 하나 이상의 비일시적 컴퓨터 판독가능 매체에 저장된 컴퓨터 실행 명령어들에 의해 구현될 수 있다.
초기에, 블록(24)에서, 메모리의 블록은 제어기(17)에 의해 저장 매체로부터 판독된다. 그 후, 제어기(17)는 블록(26)에 나타낸 바와 같이 블록 자체의 암호화 키를 사용하여 블록을 암호해독한다. 최종으로, 제어기(17)는 데이터의 암호해독된 블록을 프로세서(12)(도 1)에 전달한다(28).
메모리 어레이에 블록을 기록하기 위해, 도 3의 시퀀스(30)가 사용될 수 있다. 시퀀스(30)는 펌웨어, 하드웨어 및/또는 소프트웨어에서 실행될 수 있다. 소프트웨어 및 펌웨어 실시예들에서, 시퀀스는 자기, 반도체 또는 광학 스토리지와 같은 하나 이상의 비일시적 컴퓨터 판독가능 매체에 저장된 컴퓨터 실행 명령어들에 의해 구현될 수 있다. 일 실시예에서, 시퀀스는 제어기(17)에 의해 구현될 수 있다.
기록될 데이터는 예를 들어, 블록(32)에 나타낸 바와 같이 프로세서(12)로부터 획득될 수 있다. 그 후, 데이터는 블록(34)에 나타낸 바와 같이 블록의 암호화 키로 제어기(17)에 의해 암호화된다. 따라서, 암호화된 데이터는 블록(36)에 나타낸 바와 같이 제어기(17)에 의해 어레이(18)에 실제로 저장된다.
도 4에 도시한 삭제 블록 시퀀스(40)가 소프트웨어, 펌웨어 및/또는 하드웨어에서 구현될 수 있다. 소프트웨어 및 펌웨어 실시예들에서, 삭제 블록 시퀀스는 자기, 광학 또는 반도체 스토리지와 같은 하나 이상의 비일시적 컴퓨터 판독가능 매체에 저장된 컴퓨터 실행 명령어들에 의해 구현될 수 있다. 일 실시예에서, 삭제 블록 시퀀스는 제어기(17)에 의해 구현될 수 있다.
블록(42)에서, 시퀀스는 새로운 암호화 키를 생성함으로써 시작한다. 그 후, 새로운 암호화 키는 블록(44)에 나타낸 바와 같이 블록의 키 레지스터에 기록되어 이전의 암호화 키를 덮어쓰기한다. 이것은 플랫폼(10)의 나머지로부터 스토리지를 적어도 제거하지 않고 스토리지에 대한 액세스를 방지하는 결과를 갖는다.
도 5를 참조하면, 스토리지 디바이스(16)는 회로 보드(50) 상에 탑재될 수 있다. 일부 실시예들에서, 회로 보드(50)는 개인 컴퓨터와 같은 플랫폼을 구현하기 위해 사용될 수 있다. 그러나, 회로 보드는 몇몇 예를 들자면, 랩탑 컴퓨터들, 셀룰러 폰들, 모바일 인터넷 디바이스들, 태블릿들, 및 데스크탑 컴퓨터들을 포함하는 광범위한 프로세서 기반 디바이스들과 관련하여 또한 사용될 수 있다.
회로 보드(50)는 솔더 볼들, 핀들 등(미도시)과 같은 적절한 인터커넥트들을 가질 수 있는 패키지(46)를 통해 스토리지 디바이스(16)에 고정될 수 있다. 일 실시예에서, 패키지(46) 내부에 단일 집적 회로(48)가 있을 수 있다. 그러나, 다른 실시예들에서, 하나 보다 많은 집적 회로가 패키지 내부에 제공될 수 있다. 예를 들어, 일부 실시예들에서, 개별 집적 회로들이 제어기(17) 및 메모리 어레이(18)에 대해 제공될 수 있다. 이러한 경우에서, 제어기 및 메모리 어레이는 비아들, 와이어들, 또는 다른 상호연결 디바이스들과 같은 인터커넥트들을 사용하여 연결될 수 있다.
일부 실시예들에서, 도 6에 도시된 바와 같이, 단일 집적 회로(48)는 제어기(17)에 대한 부분 및 메모리 제어기(18)에 대한 부분을 포함할 수 있다. 따라서, 일부 실시예들에서, 하나의 단일 집적 회로가 제어기 및 메모리 어레이 모두를 통합한다. 이것은 일부 실시예들에서, 경제적일 수 있고 비교적 작은 점유공간(footprint)을 발생시킬 수 있다.
아래의 조항들 및/또는 예들은 다른 실시예들에 관한 것이다:
일 예시적인 실시예는, 암호화 키를 사용하여 메모리에 저장될 데이터를 암호화하는 단계; 및 삭제된 블록이 액세스되는 경우에, 잘못된 암호화 키를 사용하여 자동으로 암호해독되도록 암호화 키를 소거함으로써 메모리의 블록을 삭제하는 단계를 포함하는 방법일 수 있다. 이 방법은 메모리 내부로부터 암호화하는 단계를 포함할 수 있다. 이 방법은 블록을 삭제하기 위해 상기 메모리 내부의 제어기를 사용하는 단계를 포함할 수 있다. 이 방법은 상기 제어기에 대한 외부 액세스를 방지하는 단계를 포함할 수 있다. 이 방법은 상기 메모리 내의 상기 블록을 삭제하기 위한 명령어들을 실행하는 단계를 포함할 수 있다. 이 방법은 복수의 블록들을 메모리에 저장하고, 각각의 블록에 대한 암호화 키들을 상기 메모리 내에 저장하는 단계를 포함할 수 있다. 이 방법은 메모리로부터 기록하고 판독하기 위해 상기 메모리를 둘러싸는 패키지내의 제어기를 사용하는 단계를 또한 포함할 수 있다. 이 방법은 동일한 다이 상에 집적된 메모리 및 제어기를 사용하는 단계를 포함할 수 있다. 이 방법은 암호화 키를 사용자에 대해 액세스불가능하게 하는 단계를 포함할 수 있다. 이 방법은 암호화된 데이터를 삭제 이후에 판독불가능하게 하는 단계를 또한 포함할 수 있다.
일 예시적인 실시예는, 제어기로 하여금, 암호화 키를 사용하여 메모리에 저장될 데이터를 암호화하는 것, 및 삭제된 유닛이 액세스되는 경우에, 잘못된 암호화 키가 암호해독 시도에 사용되도록 암호화 키를 소거함으로써 메모리의 단위를 삭제하는 것을 포함하는 시퀀스를 수행하게 하는 명령어들을 저장한 비일시적 컴퓨터 판독가능 매체일 수 있다. 매체는 메모리 내부로부터 암호화하는 것을 또한 포함할 수 있다. 매체는 유닛을 삭제하기 위해 상기 메모리 내부의 제어기를 사용하는 것을 또한 포함할 수 있다. 매체는 상기 제어기에 대한 외부 액세스를 방지하는 것을 또한 포함할 수 있다. 매체는 메모리 내의 상기 유닛을 삭제하기 위한 명령어들을 실행하는 것을 또한 포함할 수 있다. 매체는 복수의 메모리 유닛들을 메모리에 저장하는 것 및 각각의 유닛에 대한 암호화 키들을 상기 메모리 내에 저장하는 것을 또한 포함할 수 있다. 매체는 메모리로부터 기록하고 판독하기 위해 메모리 패키지내의 제어기를 사용하는 것을 또한 포함할 수 있다.
다른 예시적인 실시예는, 메모리 어레이 및 암호화 키를 사용하여 메모리에 저장될 데이터를 암호화하고 삭제된 블록이 액세스되는 경우에, 잘못된 암호화 키를 사용하여 자동으로 암호해독되도록 암호화 키를 소거함으로써 메모리의 블록을 삭제하도록 상기 어레이에 결합된 제어기를 포함하는 메모리일 수 있다. 메모리는 상기 메모리 내부에 있는 제어기를 또한 포함할 수 있다. 메모리는 상기 메모리 어레이를 둘러싸는 패키지 내부에 있는 상기 제어기를 또한 포함할 수 있다. 메모리는 메모리 내부로부터 암호화하는 상기 제어기를 포함할 수 있다. 메모리는 상기 제어기에 대한 외부 액세스를 방지하는 상기 제어기를 포함할 수 있다. 메모리는 상기 메모리 내의 블록을 삭제하기 위한 명령어들을 실행하는 상기 제어기를 포함할 수 있다. 메모리는 복수의 메모리 블록들을 포함하고 각각의 블록에 대한 암호화 키들을 상기 메모리 내에 저장할 수 있다. 메모리는 동일한 다이 상에 집적된 상기 제어기 및 상기 메모리 어레이를 포함할 수 있다.
일 예시적인 실시예는, 프로세서 및 암호화 키를 사용하여 메모리에 저장될 데이터를 암호화하고 삭제된 블록이 액세스되는 경우에, 잘못된 암호화 키를 사용하여 자동으로 암호해독되도록 암호화 키를 소거함으로써 메모리의 블록을 삭제하도록 상기 프로세서에 결합된 메모리를 포함하는 시스템일 수 있다. 시스템은 상기 메모리 내부에 있는 상기 프로세서를 포함할 수 있다. 상기 시스템은 상기 메모리 내부로부터 암호화하는 상기 프로세서를 포함할 수 있다. 시스템은 상기 프로세서에 대한 외부 액세스를 방지하는 상기 프로세서를 포함할 수 있다. 시스템은 상기 메모리 내의 상기 블록을 삭제하기 위한 명령어들을 실행하는 상기 프로세서를 또한 포함할 수 있다.
본 명세서 전체에 걸쳐서 "일 실시예" 또는 "실시예"에 대한 언급은, 실시예와 관련하여 설명한 특정한 구성, 구조, 또는 특징이 본 발명 내에 포함되는 적어도 하나의 구현예 내에 포함된다는 것을 의미한다. 따라서, 어구 "일 실시예" 또는 "실시예에서"의 출현이 반드시 동일한 실시예를 지칭하지는 않는다. 또한, 특정한 구성들, 구조들, 또는 특징들은 예시된 특정한 실시예 이외의 다른 적합한 형태들로 실시될 수 있고, 모든 이러한 형태들은 본 출원의 특허청구범위 내에 포함될 수 있다.
본 발명이 한정된 수의 실시예들에 관하여 설명되었지만, 당업자는 그로부터의 다수의 변형들 및 변경들을 이해할 것이다. 첨부한 청구항들이 본 발명의 실제 사상 및 범주 내에 있는 한 모든 이러한 변형들 및 변경들을 포괄하는 것으로 의도된다.

Claims (19)

  1. 방법으로서,
    제1 암호화 키를 사용하여 메모리에 저장될 데이터를, 제어기를 사용하여, 암호화하는 단계 - 상기 제어기 및 상기 메모리는 하나의 단일 집적 회로로 집적되고, 상기 단일 집적 회로는 상기 제어기에 대한 부분 및 상기 메모리에 대한 부분을 포함하고, 상기 제어기는 상기 메모리 및 상기 제어기를 포함하는 스토리지 디바이스 외부로부터 액세스불가능함 -; 및
    상기 제1 암호화 키 대신 새로운 암호화 키를 기록함으로써 상기 메모리의 블록을 삭제하여, 상기 삭제된 블록이 상기 제1 암호화키로 액세스되는 경우에, 잘못된 암호화 키를 사용하여 자동으로 암호해독되게 하는 단계
    를 포함하는 방법.
  2. 제1항에 있어서,
    상기 메모리 내부로부터 암호화하는 단계를 포함하는 방법.
  3. 제2항에 있어서,
    상기 블록을 삭제하기 위해 상기 메모리 내부의 제어기를 사용하는 단계를 포함하는 방법.
  4. 제3항에 있어서,
    상기 제어기에 대한 외부 액세스를 방지하는 단계를 포함하는 방법.
  5. 제4항에 있어서,
    상기 메모리 내의 상기 블록을 삭제하기 위한 명령어들을 실행하는 단계를 포함하는 방법.
  6. 제1항에 있어서,
    상기 메모리에 복수의 블록들을 저장하고, 각각의 블록에 대한 암호화 키들을 상기 메모리 내에 저장하는 단계를 포함하는 방법.
  7. 제1항에 있어서,
    상기 메모리로부터 기록하고 판독하기 위해 상기 메모리를 둘러싸는 패키지내의 제어기를 사용하는 단계를 포함하는 방법.
  8. 제3항에 있어서,
    동일한 다이 상에 집적된 메모리 및 제어기를 사용하는 단계를 포함하는 방법.
  9. 제1항에 있어서,
    상기 암호화 키를 사용자에 대해 액세스불가능하게 하는 단계를 포함하는 방법.
  10. 제1항에 있어서,
    상기 암호화된 데이터를 삭제 이후에 판독불가능하게 하는 단계를 포함하는 방법.
  11. 삭제
  12. 메모리로서,
    메모리 어레이; 및
    제1 암호화 키를 사용하여 상기 메모리 어레이에 저장될 데이터를 암호화하고, 새로운 암호화 키를 기록함으로써 메모리 어레이의 블록을 삭제하여, 상기 삭제된 블록이 상기 제1 암호화 키로 액세스되는 경우에, 잘못된 암호화 키를 사용하여 자동으로 암호해독되게 하는, 상기 메모리 어레이에 결합된 제어기 - 상기 제어기 및 상기 메모리 어레이는 하나의 단일 집적 회로에 함께 집적되고, 상기 단일 집적 회로는 상기 제어기에 대한 부분 및 상기 메모리에 대한 부분을 포함하고, 상기 제어기는 상기 메모리 외부로부터 액세스불가능함 -
    를 포함하는 메모리.
  13. 삭제
  14. 제12항에 있어서,
    상기 제어기는 상기 메모리 어레이를 둘러싸는 패키지 내부에 있는 메모리.
  15. 제12항에 있어서,
    상기 제어기는 상기 메모리 어레이 내부로부터 암호화하는 메모리.
  16. 제12항에 있어서,
    상기 제어기는 상기 제어기에 대한 외부 액세스를 방지하는 메모리.
  17. 제15항에 있어서,
    상기 제어기는 상기 메모리 어레이 내의 상기 블록을 삭제하는 명령어들을 실행하는 메모리.
  18. 제12항에 있어서,
    복수의 메모리 블록들을 포함하고, 각각의 블록에 대한 암호화 키들을 상기 메모리 내에 저장하는 메모리.
  19. 제12항에 있어서,
    상기 제어기 및 상기 메모리 어레이는 동일한 다이에서 집적되는 메모리.
KR1020157001560A 2012-09-04 2013-09-03 메모리에 저장된 데이터의 안전한 삭제 KR101659590B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/602,518 US20140068277A1 (en) 2012-09-04 2012-09-04 Secure Deletion of Data Stored in a Memory
US13/602,518 2012-09-04
PCT/US2013/057883 WO2014039453A1 (en) 2012-09-04 2013-09-03 Secure deletion of data stored in a memory

Publications (2)

Publication Number Publication Date
KR20150032871A KR20150032871A (ko) 2015-03-30
KR101659590B1 true KR101659590B1 (ko) 2016-09-26

Family

ID=50189160

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020157001560A KR101659590B1 (ko) 2012-09-04 2013-09-03 메모리에 저장된 데이터의 안전한 삭제

Country Status (6)

Country Link
US (1) US20140068277A1 (ko)
EP (1) EP2893451A4 (ko)
JP (1) JP6219391B2 (ko)
KR (1) KR101659590B1 (ko)
CN (1) CN104205070B (ko)
WO (1) WO2014039453A1 (ko)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104038634A (zh) * 2014-06-25 2014-09-10 深圳市中兴移动通信有限公司 一种移动终端及其防止隐私泄露方法
US9824231B2 (en) 2014-12-24 2017-11-21 International Business Machines Corporation Retention management in a facility with multiple trust zones and encryption based secure deletion
US9762548B2 (en) * 2015-03-13 2017-09-12 Western Digital Technologies, Inc. Controlling encrypted data stored on a remote storage device
CN107533514A (zh) 2015-09-30 2018-01-02 慧与发展有限责任合伙企业 存储器内容的基于密码的初始化
US11216569B2 (en) * 2016-06-29 2022-01-04 Prosper Creative Co., Ltd. Data masking system
GB201701747D0 (en) 2017-02-02 2017-03-22 Blancco Tech Group Ip Oy Intelligent verification of cryptographic erase and other firmware erasure processes
US10691837B1 (en) 2017-06-02 2020-06-23 Apple Inc. Multi-user storage volume encryption via secure enclave
KR20210149521A (ko) 2020-06-02 2021-12-09 삼성전자주식회사 메모리 시스템 및 이의 동작 방법
US11720504B2 (en) * 2021-04-15 2023-08-08 Apple Inc. Secure storage of datasets in a thread network device
CN114996725B (zh) * 2022-05-06 2023-07-28 北京中科昊芯科技有限公司 一种保护开发程序的方法以及处理器

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120093318A1 (en) * 2010-09-15 2012-04-19 Obukhov Omitry Encryption Key Destruction For Secure Data Erasure

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08185448A (ja) * 1994-09-30 1996-07-16 Mitsubishi Corp データ著作権管理システム及びデータ著作権管理装置
JP3905944B2 (ja) * 1997-02-28 2007-04-18 株式会社東芝 磁気ディスク装置用制御回路素子及び同制御回路素子を備えた磁気ディスク装置
JPH11224461A (ja) * 1998-02-06 1999-08-17 Sony Corp 情報処理装置、情報処理方法、提供媒体、および記録媒体
JP3722767B2 (ja) * 2002-03-13 2005-11-30 三菱電機インフォメーションテクノロジー株式会社 ハードディスク装置、コンピュータ
US7162644B1 (en) * 2002-03-29 2007-01-09 Xilinx, Inc. Methods and circuits for protecting proprietary configuration data for programmable logic devices
JP4104488B2 (ja) * 2003-05-12 2008-06-18 日本電信電話株式会社 暗号鍵保管装置、およびそのプログラムとそのプログラムを記録した記録媒体
JP2004341768A (ja) * 2003-05-15 2004-12-02 Fujitsu Ltd 磁気ディスク装置、暗号処理方法及びプログラム
JP4255324B2 (ja) * 2003-07-18 2009-04-15 パイオニア株式会社 情報記録再生装置及び情報記録消去方法
JP2005227995A (ja) * 2004-02-12 2005-08-25 Sony Corp 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム
EP1802030A1 (en) * 2005-12-23 2007-06-27 Nagracard S.A. Secure system-on-chip
US20070300031A1 (en) * 2006-06-22 2007-12-27 Ironkey, Inc. Memory data shredder
US8117377B2 (en) * 2007-12-27 2012-02-14 Electronics And Telecommunications Research Institute Flash memory device having secure file deletion function and method for securely deleting flash file
US8250380B2 (en) * 2009-12-17 2012-08-21 Hitachi Global Storage Technologies Netherlands B.V. Implementing secure erase for solid state drives
US20120079289A1 (en) * 2010-09-27 2012-03-29 Skymedi Corporation Secure erase system for a solid state non-volatile memory device

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120093318A1 (en) * 2010-09-15 2012-04-19 Obukhov Omitry Encryption Key Destruction For Secure Data Erasure

Also Published As

Publication number Publication date
WO2014039453A1 (en) 2014-03-13
JP2015529064A (ja) 2015-10-01
EP2893451A4 (en) 2016-05-11
KR20150032871A (ko) 2015-03-30
CN104205070A (zh) 2014-12-10
US20140068277A1 (en) 2014-03-06
JP6219391B2 (ja) 2017-10-25
EP2893451A1 (en) 2015-07-15
CN104205070B (zh) 2018-05-04

Similar Documents

Publication Publication Date Title
KR101659590B1 (ko) 메모리에 저장된 데이터의 안전한 삭제
US9397834B2 (en) Scrambling an address and encrypting write data for storing in a storage device
US8839000B2 (en) System and method for securely storing data in an electronic device
KR102176612B1 (ko) 보안 서브시스템
JP4157595B2 (ja) セキュア処理装置、方法、プログラム
US9251358B2 (en) System and method for providing secure access to system memory
JP2009225437A (ja) 記憶データの安全な処分
US20180260151A1 (en) Data Storage Device and Operating Method Therefor
US9323943B2 (en) Decrypt and encrypt data of storage device
KR20080069018A (ko) 플래시 변환 레이어에서 데이터를 암호화하여 처리하기위한 방법 및 장치
TWI423064B (zh) A method and apparatus for coupling a computer memory and a motherboard
JP2011248859A (ja) データ処理装置およびデータ処理システムおよびその制御方法
JP2008527535A (ja) ホスト装置、携帯用保存装置、及び携帯用保存装置に保存された権利オブジェクトのメタ情報を更新する方法。
Zhang et al. Ensuring data confidentiality via plausibly deniable encryption and secure deletion–a survey
US9003201B2 (en) Hardware protection for encrypted strings and protection of security parameters
US20130198528A1 (en) Modifying a Length of an Element to Form an Encryption Key
CN107861892B (zh) 一种实现数据处理的方法及终端
JP2004336344A (ja) 暗復号化装置
McGregor et al. Braving the cold: New methods for preventing cold boot attacks on encryption keys
TWI575401B (zh) 行動裝置及一種適用於行動裝置的監控方法
JP7302392B2 (ja) ファイルデータ管理装置,ファイルデータ管理プログラム及びファイルデータ管理方法
JP2005175948A (ja) データ漏洩防止システム
KR101810044B1 (ko) 암호화 키 갱신 장치 및 방법
JP4617110B2 (ja) セキュリティ支援方法および電子機器
JP4714726B2 (ja) デジタルデータ記録再生装置およびデジタルデータ記録再生方法

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20190829

Year of fee payment: 4