KR20200060434A - 정보 처리 장치, 정보 처리 장치의 제어 방법 및 프로그램 - Google Patents

정보 처리 장치, 정보 처리 장치의 제어 방법 및 프로그램 Download PDF

Info

Publication number
KR20200060434A
KR20200060434A KR1020207011581A KR20207011581A KR20200060434A KR 20200060434 A KR20200060434 A KR 20200060434A KR 1020207011581 A KR1020207011581 A KR 1020207011581A KR 20207011581 A KR20207011581 A KR 20207011581A KR 20200060434 A KR20200060434 A KR 20200060434A
Authority
KR
South Korea
Prior art keywords
data
information
decoding
main memory
storage device
Prior art date
Application number
KR1020207011581A
Other languages
English (en)
Other versions
KR102414866B1 (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 KR20200060434A publication Critical patent/KR20200060434A/ko
Application granted granted Critical
Publication of KR102414866B1 publication Critical patent/KR102414866B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • 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/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/575Secure boot
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1052Security improvement
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4411Configuring for operating with peripheral devices; Loading of device drivers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/423Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder

Abstract

정보 처리 장치(1)는, 메인 메모리(101)와 외부 기억 장치(11)를 접속하는 데이터 버스(DB) 상에 마련되고, 해당 데이터 버스(DB)를 통해서 전송되는 정보에 대한 복호 처리를 유효로 할지, 무효로 할지를 전환 가능한 복호 회로(12b)와, 외부 기억 장치(11)에 기입된 정보를 메인 메모리(101)에 판독하는 CPU(100)를 구비한다. CPU(100)는, 외부 기억 장치(11)에 기입된 정보로서 메인 메모리(101)의 스냅샷 이미지를 판독하는 경우에, 복호 회로(12b)의 복호 처리를 유효로 한다.

Description

정보 처리 장치, 정보 처리 장치의 제어 방법 및 프로그램
본 발명은, 정보 처리 장치, 정보 처리 장치의 제어 방법 및 프로그램에 관한 것이다.
카 내비게이션 시스템이나 게임기 등이 다양한 정보 처리 장치에서는, 그의 기동 조작(전원 투입 조작)이 행해진 직후부터, 해당 정보 처리 장치의 기능을 이용하기 위한 요구가 있다.
특허문헌 1에는, 전원이 절단되기 직전의 휘발성 메모리의 기억 상태, 주변 디바이스의 레지스터값, 및 프로세서의 레지스터값을 나타내는 데이터를 불휘발성 메모리에 저장함과 더불어, 전원의 재투입 시에 있어서, 불휘발성 메모리에 저장한 데이터를 이용해서 전원 절단 전의 상태를 재현함으로써, 정보 처리 장치의 고속 기동을 실현하는 기술이 기재되어 있다.
일본 특허공개 2015-156205호 공보
고속 기동을 행하는 목적으로 불휘발성 메모리에 저장한 데이터(휘발성 메모리의 스냅샷 이미지)는, 통상, 암호화되어 있지 않기 때문에, 제삼자에게 용이하게 도취(盜取)될 리스크가 있다. 그의 대책으로서, 휘발성 메모리의 스냅샷 이미지를 암호화한 뒤에 불휘발성 메모리에 저장하는 것이 생각된다.
그러나, 이와 같이 한 경우, 전원의 재투입 시에 있어서는, 암호화된 스냅샷 이미지를 복호한 후, 휘발성 메모리 등에 전개할 필요가 생긴다. 그러면, 스냅샷 이미지를 복호하기 위한 처리 시간을 필요로 하게 되어, 고속 기동의 효과가 손상될 수 있다.
상기 과제를 감안하여, 본 발명은, 고속 기동을 가능하게 하고, 또한, 시큐리티 성능을 높일 수 있는 정보 처리 장치, 정보 처리 장치의 제어 방법 및 프로그램을 제공한다.
본 발명의 제 1 태양에 의하면, 정보 처리 장치(1)는, 메인 메모리(101)와 외부 기억 장치(11)를 접속하는 데이터 버스(DB) 상에 마련되고, 해당 데이터 버스를 통해서 전송되는 정보에 대한 복호 처리를 유효로 할지 무효로 할지를 전환 가능한 복호 회로(12b)와, 상기 외부 기억 장치에 기입된 정보를 상기 메인 메모리에 판독하는 판독 처리부(1002)를 구비한다. 또한, 상기 판독 처리부는, 상기 외부 기억 장치에 기입된 정보로서 상기 메인 메모리의 스냅샷 이미지를 판독하는 경우에, 상기 복호 회로의 복호 처리를 유효로 한다.
이와 같이 함으로써, 전원의 투입 직후, 스냅샷 이미지를 메인 메모리에 판독할 때에는, 암호화된 스냅샷 이미지가 외부 기억 장치로부터 메인 메모리를 향해 데이터 버스 상을 전송되는 과정에서, 하드웨어로서 구성된 복호 회로에 의해서 고속으로 복호된다. 따라서, 고속 기동의 효과를 손상시키지 않고 암호화된 스냅샷 이미지를 판독할 수 있다.
또한, 본 발명의 제 2 태양에 의하면, 전술의 정보 처리 장치는, 상기 데이터 버스 상에 마련되고, 해당 데이터 버스를 통해서 전송되는 정보에 대한 암호화 처리를 유효로 할지, 무효로 할지를 전환 가능한 암호화 회로(12a)와, 상기 메인 메모리에 저장되는 정보를 상기 외부 기억 장치에 기입하는 기입 처리부를 구비한다. 또한, 상기 기입 처리부는, 상기 메인 메모리에 저장되는 정보로서 해당 메인 메모리의 스냅샷 이미지를 기입하는 경우에, 상기 암호화 회로의 암호화 처리를 유효로 한다.
이와 같이 함으로써, 전원을 절단하기 직전, 스냅샷 이미지를 외부 기억 장치(11)에 기입할 때에는, 평문(平文)의 스냅샷 이미지가 메인 메모리측 장치(10)로부터 외부 기억 장치(11)를 향해 데이터 버스(DB) 상을 전송되는 과정에서, 하드웨어로서 구성된 암호화 회로(12a)에 의해서 고속으로 암호화된다. 따라서, 전원 절단 시에 있어서 외부 기억 장치(11)에 기입해야 할 스냅샷 이미지의 암호화를 고속화할 수 있다.
또한, 본 발명의 제 3 태양에 의하면, 상기 복호 회로는, 상기 복호 처리를 행하기 위한 논리 연산 소자(121b)와, 입력되는 제어 신호에 따라서, 상기 데이터 버스를 통해서 전송되는 정보가 상기 논리 연산 소자를 경유하는지 여부를 선택 가능한 선택 소자(120b)를 구비한다.
이와 같이 함으로써, 하드웨어로서, 복호 처리를 유효로 할지, 무효로 할지를 전환 가능한 복호 회로를, 극히 간소한 구성으로 실현할 수 있다.
또한, 본 발명의 제 4 태양에 의하면, 전술의 정보 처리 장치는, 복호용 데이터가 기록된 복호용 데이터 기록 메모리(13)를 더 구비한다. 또한, 상기 복호 회로는, 상기 복호용 데이터 기록 메모리로부터 판독된 상기 복호용 데이터에 기초해서, 상기 데이터 버스를 통해서 전송되는 정보에 대한 복호 처리를 행한다.
이와 같이 함으로써, 복호 회로는, 전용의 메모리(복호용 데이터 기록 메모리)로부터 직접 판독되는 복호용 데이터를 이용해서 고속으로 복호를 행할 수 있다.
또한, 본 발명의 제 5 태양에 의하면, 상기 복호용 데이터는, 전원이 투입된 직후의 초기 상태에 있어서, 상기 메인 메모리에 기록되어 있는 정보이다.
이와 같이 함으로써, 초기 상태로부터 메인 메모리에 기록되어 있는 정보(PUF 정보)에 기초해서 스냅샷 이미지의 암호화를 도모할 수 있다. 이에 의해, 정보 처리 장치(1)의 시큐리티 성능을 한층 높일 수 있다.
또한, 본 발명의 제 6 태양에 의하면, 정보 처리 장치의 제어 방법은, 메인 메모리와 외부 기억 장치를 접속하는 데이터 버스 상에 마련되고, 해당 데이터 버스를 통해서 전송되는 정보에 대한 복호 처리를 유효로 할지, 무효로 할지를 전환 가능한 복호 회로를 구비하는 정보 처리 장치의 제어 방법으로서, 상기 외부 기억 장치에 기입된 정보를 상기 메인 메모리에 판독하는 판독 스텝을 갖는다. 또한, 상기 판독 스텝에 있어서, 상기 외부 기억 장치에 기입된 정보로서 상기 메인 메모리의 스냅샷 이미지를 판독하는 경우에, 상기 복호 회로의 복호 처리를 유효로 한다.
또한, 본 발명의 제 7 태양에 의하면, 프로그램은, 메인 메모리와 외부 기억 장치를 접속하는 데이터 버스 상에 마련되고, 해당 데이터 버스를 통해서 전송되는 정보에 대한 복호 처리를 유효로 할지, 무효로 할지를 전환 가능한 복호 회로를 구비하는 정보 처리 장치를, 상기 외부 기억 장치에 기입된 정보를 상기 메인 메모리에 판독하는 판독 처리부로서 기능하게 한다. 또한, 상기 판독 처리부는, 상기 외부 기억 장치에 기입된 정보로서 상기 메인 메모리의 스냅샷 이미지를 판독하는 경우에, 상기 복호 회로의 복호 처리를 유효로 한다.
전술의 정보 처리 장치, 정보 처리 장치의 제어 방법 및 프로그램에 의하면, 고속 기동을 가능하게 하고, 또한, 시큐리티 성능을 높일 수 있다.
도 1은 제 1 실시형태에 따른 정보 처리 장치의 하드웨어 구성을 모식적으로 나타내는 도면이다.
도 2는 제 1 실시형태에 따른 CPU의 기능 구성을 나타내는 도면이다.
도 3은 제 1 실시형태에 따른 정보 처리 장치의 기능 구성 및 각종 정보의 흐름을 나타내는 도면이다.
도 4는 제 1 실시형태에 따른 정보 처리 장치의 제 1 처리 플로를 나타내는 도면이다.
도 5는 제 1 실시형태에 따른 정보 처리 장치의 제 1 처리 플로에 따른 동작을 설명하기 위한 도면이다.
도 6은 제 1 실시형태에 따른 정보 처리 장치의 제 2 처리 플로를 나타내는 도면이다.
도 7은 제 1 실시형태에 따른 정보 처리 장치의 제 2 처리 플로에 따른 동작을 상세하게 설명하기 위한 도면이다.
도 8은 제 1 실시형태에 따른 정보 처리 장치의 제 2 처리 플로에 따른 동작을 상세하게 설명하기 위한 도면이다.
도 9는 제 2 실시형태에 따른 CPU의 기능 구성을 나타내는 도면이다.
도 10은 제 2 실시형태에 따른 정보 처리 장치의 제 2 처리 플로를 나타내는 도면이다.
<제 1 실시형태>
이하, 도 1∼도 8을 참조하면서, 제 1 실시형태에 따른 정보 처리 장치에 대해서 상세하게 설명한다.
(정보 처리 장치의 하드웨어 구성)
도 1은, 제 1 실시형태에 따른 정보 처리 장치의 하드웨어 구성을 모식적으로 나타내는 도면이다.
도 1에 나타내는 바와 같이, 정보 처리 장치(1)는, CPU(100)와, 메인 메모리(101)와, 외부 기억 장치(11)와, 암호화 회로(12a)와, 복호 회로(12b)와, 난수(亂數) 기록 메모리(복호용 데이터 기록 메모리)(13)를 구비하고 있다. 또한, CPU(100), 메인 메모리(101), 외부 기억 장치(11)는, 데이터 버스(DB)에 의해서 각각 접속되어 있다.
CPU(100)는, 정보 처리 장치(1) 전체의 동작을 담당하는 프로세서로서, 미리 준비된 프로그램에 따라서 명령을 축차 실행함으로써 여러 가지의 기능을 발휘한다. CPU(100)는, 프로그램에 기초해서 메인 메모리(101)에 판독된 각종 명령, 데이터에 액세스하면서 연산 처리를 실행한다.
메인 메모리(101)는, CPU(100)로부터의 고속인 액세스를 가능하게 하는 휘발성 메모리로서 주기억 장치라고도 불린다. 메인 메모리(101)는, 예를 들면, DRAM(Dynamic Random Access Memory) 등이다.
외부 기억 장치(11)는, 대용량의 불휘발성 메모리로서 보조 기억 장치라고도 불린다. 외부 기억 장치(11)는, 예를 들면, 하드 디스크 드라이브(Hard Disk Drive; HDD), 솔리드 스테이트 드라이브(Solid State Drive; SSD) 등이다.
한편, 본 실시형태에 따른 외부 기억 장치(11)는, 정보 처리 장치(1)에 내장되는 태양으로서 설명하지만(도 1 참조), 다른 실시형태에 있어서는, 정보 처리 장치(1)에 외부 부착되는 태양이어도 된다.
이하의 설명에 있어서, CPU(100)와 메인 메모리(101)를 총칭해서 메인 메모리측 장치(10)라고도 표기한다.
데이터 버스(DB)는, CPU(100)와 메인 메모리(101) 사이, 및 CPU(100)와 외부 기억 장치(11) 사이에서 데이터(연산의 대상으로 하는 수치, 그 연산 결과 등)의 교환을 행하기 위한 신호선이다.
한편, 도시를 생략하고 있지만, 정보 처리 장치(1)는, 데이터 버스(DB) 외에, 어드레스 버스, 컨트롤 버스를 구비하고 있다. 어드레스 버스, 컨트롤 버스는, 데이터 버스(DB)와 동양(同樣)으로, CPU(100), 메인 메모리(101) 및 외부 기억 장치(11)를 접속하는 신호선이다. 어드레스 버스는, 메인 메모리(101) 및 외부 기억 장치(11)에 있어서의, 기입, 판독의 목적으로 하는 데이터의 저장 장소(어드레스)를 지정하기 위한 신호선이다. 또한, 컨트롤 버스는, 어드레스 버스로 지정된 저장 장소에 대해서, 데이터의 판독을 행할지, 기입을 행할지를 지정하기 위한 신호선이다.
암호화 회로(12a)는, 데이터 버스(DB) 상에 마련되고, 해당 데이터 버스(DB)를 통해서 전송되는 정보에 대한 암호화 처리를 행하는 논리 회로이다. 암호화 회로(12a)는, 별도 입력되는 제어 신호에 따라서, 암호화 처리를 유효로 할지, 무효로 할지를 전환 가능하게 된다.
복호 회로(12b)는, 데이터 버스(DB) 상에 마련되고, 해당 데이터 버스(DB)를 통해서 전송되는 정보에 대한 복호 처리를 행하는 논리 회로이다. 복호 회로(12b)는, 별도 입력되는 제어 신호에 따라서, 복호 처리를 유효로 할지, 무효로 할지를 전환 가능하게 된다.
난수 기록 메모리(13)는, CPU(100)가 생성한 난수가 기록되는 기억 장치이다. 여기에서, CPU(100)가 생성하는 난수는, 암호화 회로(12a)가 암호화 처리를 행할 때에 이용되는 암호화용 데이터가 되고, 또한, 복호 회로(12b)가 복호 처리를 행할 때에 이용되는 복호용 데이터가 된다. 본 실시형태에 있어서는, 암호화용 데이터 및 복호 데이터는, 동일한 난수가 된다.
본 실시형태에 따른 난수 기록 메모리(13)는, 플래시 메모리 등의 재기입 가능한 불휘발성 메모리가 된다.
(CPU의 기능 구성)
도 2는, 제 1 실시형태에 따른 CPU의 기능 구성을 나타내는 도면이다.
도 2에 나타내는 바와 같이, CPU(100)는, 미리 준비된 프로그램에 따라서 동작함으로써, 기입 처리부(1001), 판독 처리부(1002), 및 난수 생성부(1003)로서의 기능을 발휘한다.
기입 처리부(1001)는, 메인 메모리(101)에 저장되는 정보를 외부 기억 장치(11)에 기입하는 처리를 행한다.
판독 처리부(1002)는, 외부 기억 장치(11)에 기입된 정보를 메인 메모리(101)에 판독하는 처리를 행한다. 여기에서, 정보 처리 장치(1)의 전원 투입 직후에 있어서는, CPU(100)는, 최초로, 미리 정해진 기동용의 프로그램(부트 로더)을 판독한다. 전원 투입 직후의 CPU(100)는, 여기에서 판독된 기동용의 프로그램(부트 로더)에 따라서 동작함으로써, 외부 기억 장치(11)에 저장되어 있는 데이터(후술하는 스냅샷 이미지)를 메인 메모리(101)에 판독하는 판독 처리부(1002)로서 기능한다.
난수 생성부(1003)는, 난수를 발생시킴과 더불어, 그 난수를 난수 기록 메모리(13)에 저장하는 처리를 행한다.
(정보 처리 장치의 기능 구성 및 각종 정보의 흐름)
도 3은, 제 1 실시형태에 따른 정보 처리 장치의 기능 구성 및 각종 정보의 흐름을 나타내는 도면이다.
도 3에 나타내는 바와 같이, 정보 처리 장치(1)는, 메인 메모리측 장치(10)와, 외부 기억 장치(11) 사이에서 각종 정보(데이터, 어드레스 및 제어 신호)의 교환을 행한다.
우선, 도 3을 참조하면서, 암호화 회로(12a) 및 복호 회로(12b)의 하드웨어 구성에 대해서 설명한다.
도 3에 나타내는 바와 같이, 암호화 회로(12a)는, 멀티플렉서(120a)(선택 소자)와, 논리 연산 소자(121a)를 가져서 이루어진다.
멀티플렉서(120a)는, 2개의 입력 포트[1], [2] 중, 어느 한쪽에 입력되는 정보를 출력 포트[4]로부터 출력한다. 구체적으로는, 선택 포트[3]에 입력되는 제어 신호(WR_mux)가 "L"(Low)였던 경우, 멀티플렉서(120a)는, 입력 포트[1]에 입력되는 정보를 출력 포트[4]로부터 출력한다. 또한, 선택 포트[3]에 입력되는 제어 신호(WR_mux)가 "H"(High)였던 경우, 멀티플렉서(120a)는, 입력 포트[2]에 입력되는 정보를 출력 포트[4]로부터 출력한다.
논리 연산 소자(121a)는, 입력되는 2개의 정보의 배타적 논리합(XOR)을 연산하는 논리 연산 소자이다.
멀티플렉서(120a)의 입력 포트[1], 및 논리 연산 소자(121a)에는, 기입 데이터(WR_data)가 입력된다. 기입 데이터(WR_data)는, 데이터 버스(DB)를 통해서 메인 메모리측 장치(10)로부터 외부 기억 장치(11)를 향해 전송되는 정보로서, CPU(100)(기입 처리부(1001))가 외부 기억 장치(11)에 기입해야 할 정보로서 출력하는 정보이다.
논리 연산 소자(121a)에는, 또, 난수 기록 메모리(13)에 기록되어 있는 암호화용 데이터(XOR_data)가 입력된다. 암호화용 데이터(XOR_data)는, 암호화 회로(12a)에 있어서의 암호화 처리에 이용되는 정보이며, 구체적으로는, 논리 연산 소자(121a)에 있어서, 기입 데이터(WR_data)와 함께 배타적 논리합 연산(XOR)의 대상이 되는 정보이다.
멀티플렉서(120a)의 입력 포트[2]에는, 논리 연산 소자(121a)에 의한, 기입 데이터(WR_data)와 암호화용 데이터(XOR_data)의 배타적 논리합의 연산 결과가 입력된다.
멀티플렉서(120a)의 출력 포트[4]로부터는, 기억 장치 기입 데이터(Storage_WR_data)가 출력된다. 기억 장치 기입 데이터(Storage_WR_data)는, 외부 기억 장치(11)에 실제로 기입되는 정보이다. 멀티플렉서(120a)의 선택 포트[3]에 입력되는 제어 신호(WR_mux)가 "L"이었던 경우, 기억 장치 기입 데이터(Storage_WR_data)는, 기입 데이터(WR_data) 그 자체가 된다. 즉, 제어 신호(WR_mux)가 "L"이었던 경우, 암호화 회로(12a)의 암호화 처리가 무효화된다. 한편, 멀티플렉서(120a)의 선택 포트[3]에 입력되는 제어 신호(WR_mux)가 "H"였던 경우, 기억 장치 기입 데이터(Storage_WR_data)는, 논리 연산 소자(121a)에 의한 배타적 논리합의 연산 결과가 된다. 즉, 제어 신호(WR_mux)가 "H"였던 경우, 암호화 회로(12a)의 암호화 처리가 유효화된다.
또한, 도 3에 나타내는 바와 같이 복호 회로(12b)는, 멀티플렉서(120b)(선택 소자)와, 논리 연산 소자(121b)를 가져서 이루어진다.
멀티플렉서(120b)는, 2개의 입력 포트[1], [2] 중, 어느 한쪽에 입력되는 정보를 출력 포트[4]로부터 출력한다. 구체적으로는, 선택 포트[3]에, 입력되는 제어 신호(RD_mux)가 "H"(High)였던 경우, 멀티플렉서(120b)는, 입력 포트[2]에 입력되는 정보를 출력 포트[4]로부터 출력한다. 또한, 선택 포트[3]에, 입력되는 제어 신호(RD_mux)가 "L"(Low)였던 경우, 멀티플렉서(120b)는, 입력 포트[1]에 입력되는 정보를 출력 포트[4]로부터 출력한다.
논리 연산 소자(121b)는, 입력되는 2개의 정보의 배타적 논리합(XOR)을 연산하는 논리 연산 소자이다.
멀티플렉서(120b)의 입력 포트[1], 및 논리 연산 소자(121b)에는, 기억 장치 판독 데이터(Storage_RD_data)가 입력된다. 기억 장치 판독 데이터(Storage_RD_data)는, 데이터 버스(DB)를 통해서 외부 기억 장치(11)로부터 메인 메모리측 장치(10)를 향해 전송되는 정보로서, CPU(100)(판독 처리부(1002))가 메인 메모리(101)에 판독해야 할 정보로서 출력하는 정보이다.
논리 연산 소자(121b)에는, 또, 난수 기록 메모리(13)에 기록되어 있는 복호용 데이터(XOR_data)가 입력된다(본 실시형태에 따른 복호용 데이터는, 암호화용 데이터와 동일한 정보이기 때문에, 암호화용 데이터와 동일한 부호(XOR_data)를 붙여서 설명함). 복호용 데이터(XOR_data)는, 복호 회로(12b)에 있어서의 복호 처리에 이용되는 정보이며, 구체적으로는, 논리 연산 소자(121b)에 있어서, 기억 장치 판독 데이터(Storage_RD_data)와 함께 배타적 논리합(XOR)의 연산 대상이 되는 정보이다.
멀티플렉서(120b)의 입력 포트[2]에는, 논리 연산 소자(121b)에 의한, 기억 장치 판독 데이터(Storage_RD_data)와 복호용 데이터(XOR_data)의 배타적 논리합의 연산 결과가 입력된다.
멀티플렉서(120b)의 출력 포트[4]로부터는, 판독 데이터(RD_data)가 출력된다. 판독 데이터(RD_data)는, 메인 메모리(101)에 실제로 판독되는(전개되는) 정보이다. 멀티플렉서(120b)의 선택 포트[3]에 입력되는 제어 신호(RD_mux)가 "L"이었던 경우, 판독 데이터(RD_data)는, 기억 장치 판독 데이터(Storage_RD_data) 그 자체가 된다. 즉, 제어 신호(RD_mux)가 "L"이었던 경우, 복호 회로(12b)의 복호 처리가 무효화된다. 한편, 멀티플렉서(120b)의 선택 포트[3]에 입력되는 제어 신호(RD_mux)가 "H"였던 경우, 판독 데이터(RD_data)는, 논리 연산 소자(121b)에 의한 배타적 논리합의 연산 결과가 된다. 즉, 제어 신호(RD_mux)가 "H"였던 경우, 복호 회로(12b)의 복호 처리가 유효화된다.
도 3에 있어서, 어드레스 정보(Address)는, 어드레스 버스를 통해서 메인 메모리측 장치(10)로부터 외부 기억 장치(11)에 전송되는 정보로서, 외부 기억 장치(11)에 대한 기입, 판독의 대상으로 하는 데이터의 저장 장소(어드레스)를 지정하는 정보이다.
기입 제어 신호(WR#)는, 컨트롤 버스를 통해서 메인 메모리측 장치(10)로부터 외부 기억 장치(11)에 전송되는 정보로서, 외부 기억 장치(11)의 어드레스 정보(Address)로 지정되는 저장 장소에 대해서, 기억 장치 기입 데이터(Storage_WR_data)를 기입하는 것을 지시하는 신호이다.
판독 제어 신호(RD#)는, 컨트롤 버스를 통해서 메인 메모리측 장치(10)로부터 외부 기억 장치(11)에 전송되는 정보로서, 외부 기억 장치(11)의 어드레스 정보(Address)로 지정되는 저장 장소에 저장되어 있는 기억 장치 판독 데이터(Storage_RD_data)를 판독하는 것을 지시하는 신호이다.
다음으로, 메인 메모리측 장치(10)로부터 난수 기억 메모리(13)에 출력되는 각종 정보에 대해서 설명한다.
난수 기록 메모리 어드레스 정보(Data_address)는, CPU(100)(난수 생성부(1003))가 생성한 난수(난수(Random_data))를 저장해야 할 저장 장소를 지정하는 정보이다.
난수(Random_data)는, CPU(100)(난수 생성부(1003))가 생성한 난수이다.
난수 기록 메모리 기입 제어 신호(WR#_random)는, 난수 기록 메모리(13)의 난수 기록 메모리 어드레스 정보(Data_address)로 지정되는 저장 장소에, 난수(Random_data)를 기입하는 것을 지시하는 신호이다.
(정보 처리 장치의 제 1 처리 플로)
도 4는, 제 1 실시형태에 따른 정보 처리 장치의 제 1 처리 플로를 나타내는 도면이다.
또한, 도 5는, 제 1 실시형태에 따른 정보 처리 장치의 제 1 처리 플로에 따른 동작을 상세하게 설명하기 위한 도면이다.
도 4에 나타내는 제 1 처리 플로는, 전원 절단 후의 고속 기동을 가능하게 하기 위해서, 통상의 동작 중에, 미리 난수(암호화용 데이터, 복호용 데이터)를 난수 기록 메모리(13)에 기록하는 처리의 흐름을 나타내고 있다.
도 4에 나타내는 바와 같이, CPU(100)의 난수 생성부(1003)는, 정보 처리 장치(1)의 통상의 동작 중에 있어서, 난수(Random_data)를 생성한다(스텝 S01).
다음으로, 난수 생성부(1003)는, 생성한 난수(Random_data)를, 난수 기록 메모리(13)의 지정 어드레스에 기록한다(스텝 S02).
예를 들면, 도 5에 나타내는 바와 같이, 난수 생성부(1003)는, "A0000"이라는 난수 기록 메모리 어드레스 정보(Data_address)와, "X0001"이라는 난수(Random_data)를 출력한다. 그리고, 난수 생성부(1003)는, 난수 기록 메모리 기입 제어 신호(WR#_random)를 "H"로부터 "L"로 천이시킴으로써, 난수 "X0001"가 난수 기록 메모리(13)의 어드레스 "A0000"에 기입된다.
난수 생성부(1003)는, 난수 기록 메모리(13)의 별도의 어드레스(예를 들면, "A0001")에 대해서도 동양으로, 생성한 별도의 난수(Random_data)(예를 들면, "X0010")를 기입해 간다.
이와 같이 해서 난수 기록 메모리(13)에 기록된 난수(Random_data)는, 메인 메모리(101)의 스냅샷 이미지의 기입 시, 판독 시에 있어서, 각각, 암호화용 데이터(XOR_data), 복호용 데이터(XOR_data)로서 난수 기록 메모리(13)로부터 판독된다.
(정보 처리 장치의 제 2 처리 플로)
도 6은, 제 1 실시형태에 따른 정보 처리 장치의 제 2 처리 플로를 나타내는 도면이다.
또한, 도 7, 도 8은, 제 1 실시형태에 따른 정보 처리 장치의 제 2 처리 플로에 따른 동작을 상세하게 설명하기 위한 도면이다.
도 6에 나타내는 제 2 처리 플로는, 전원이 투입되고, 재차, 전원이 절단되기까지의, 정보 처리 장치(1)의 일련의 처리의 흐름을 나타내고 있다.
우선, 전원 오프 상태에 있는 정보 처리 장치(1)는, 사용자의 조작 등에 의해서 전원이 투입된다(스텝 S11).
전원이 투입되면, CPU(100)는, 미리 정해진 기억 영역(도 1에 도시하지 않는 전용의 ROM, 플래시 메모리 등)에 액세스하고, 부트 로더로서 동작하기 위한 기동용의 프로그램을 판독한다(스텝 S12).
부트 로더로서 동작하는 CPU(100)의 판독 처리부(1002)는, 복호 회로(12b)의 멀티플렉서(120b)에 대해서 입력하는 제어 신호(RD_mux)를 "H"로 한다(스텝 S13).
다음으로, 판독 처리부(1002)는, 메인 메모리(101)의 스냅샷 이미지를 외부 기억 장치(11)로부터 판독한다(스텝 S14). 스냅샷 이미지란, 정보 처리 장치(1)의 전원이 절단되기 직전에 있어서의 메인 메모리(101)의 전체 기억 영역(또는 일부의 기억 영역)에 있어서의 데이터의 저장 상태를 나타내는 정보이다. 후술하는 바와 같이, 스냅샷 이미지는, 정보 처리 장치(1)의 전원이 끊기기 직전에, CPU(100)(판독 처리부(1002))에 의해서 외부 기억 장치(11)이 정해진 기억 영역에 기입된다.
전술의 스텝 S14의 처리에 대해서, 도 7을 참조하면서 상세하게 설명한다.
도 6의 스텝 S14에 있어서 판독 처리부(1002)가 행하는 스냅샷 이미지의 판독 처리는, 도 7의 기간(B1)에 나타나는 대로이다.
즉, 판독 처리부(1002)는, 멀티플렉서(120b)의 제어 신호(RD_mux)를 "H"로 유지한 상태로, 외부 기억 장치(11)에 대하여, 스냅샷 이미지가 기입되어 있는 어드레스(예를 들면, "A1000"이라는 어드레스)를 나타내는 어드레스 정보(Address)를 출력한다. 한편, 외부 기억 장치(11) 중, 메인 메모리(101)의 스냅샷 이미지가 기입되는 어드레스는 미리 정해져 있다. 또한, 기동용의 프로그램(부트 로더)에는, 스냅샷 이미지를 판독하기 위해서 지정해야 할 외부 기억 장치(11)의 어드레스가 미리 기술되어 있다.
여기에서, 도 7의 기간(B1)에 나타내는 바와 같이, 외부 기억 장치(11)의 "A1000"이라는 어드레스에는, "D1010"이라는 기억 장치 판독 데이터(Storage_RD_data)(스냅샷 이미지)가 기입되어 있다. 또한, 난수 기록 메모리(13)의 "A1000"이라는 어드레스(외부 기억 장치(11)의 어드레스 "A1000"에 대응하는 어드레스)에는, "X0010"이라는 복호용 데이터(XOR_data)가 기입되어 있다. 이 경우에 있어서, 판독 처리부(1002)가 판독 제어 신호(RD#)를 "H"로부터 "L"로 천이시키면, 외부 기억 장치(11)로부터 "D1010"이라는 기억 장치 판독 데이터(Storage_RD_data)가 출력되고, 난수 기록 메모리(13)로부터 "X0010"이라는 복호용 데이터(XOR_data)가 출력된다. 그 결과, 복호 회로(12b)의 논리 연산 소자(121b)는, 즉시, 이들 정보에 대한 배타적 논리합을 연산하고, 그 결과를 출력한다. 도 7의 기간(B1)에 나타내는 바와 같이, 멀티플렉서(120b)에 입력되는 제어 신호(RD_mux)는 "H"이므로, 멀티플렉서(120b)로부터 출력되는 판독 데이터(RD_data)는, 기억 장치 판독 데이터(Storage_RD_data)(D1010)와 복호용 데이터(XOR_data)(X0010)의 배타적 논리합(D1000)이 된다. 즉, 메인 메모리측 장치(10)에는, 암호화된 스냅샷 이미지(D1010)에 대해서 복호 회로(12b)에 의한 복호가 이루어진 스냅샷 이미지(D1000)가 입력된다.
도 6으로 되돌아가서, 판독 처리부(1002)는, 메인 메모리(101)에 스냅샷 이미지를 판독해서, 전원이 절단되기 직전의 상태를 복원함으로써 고속 기동을 완료한다. 고속 기동이 완료되면, CPU(100)는, OS 및 어플리케이션 프로그램에 기초하는 통상의 동작이 가능해진다. OS, 어플리케이션 프로그램에 기초하는 통상의 동작이 가능해진 단계에서, CPU(100)는, 제어 신호(WR_mux) 및 제어 신호(RD_mux)의 양쪽을 "L"로 한다(스텝 S15).
스텝 S15를 완료하면, CPU(100)는, 정보 처리 장치(1)로서의 본래의 기능을 발휘하도록, OS 및 어플리케이션 프로그램에 기초해서, 외부 기억 장치(11)에 대한 통상의 데이터의 판독, 및 기입을 행한다(스텝 S16).
전술의 스텝 S16의 처리에 대해서, 도 7 및 도 8을 참조하면서 상세하게 설명한다.
도 6의 스텝 S16에 있어서 판독 처리부(1002)가 행하는 통상의 데이터의 판독 처리는, 도 7의 기간(A1)에 나타나는 대로이다.
즉, 판독 처리부(1002)는, 멀티플렉서(120b)의 제어 신호(RD_mux)를 "L"로 유지한 상태로, 외부 기억 장치(11)에 대하여, 통상의 데이터가 기입되어 있는 어드레스(예를 들면, "A0000"이라는 어드레스)를 나타내는 어드레스 정보(Address)를 출력한다.
여기에서, 도 7의 기간(A1)에 나타내는 바와 같이, 외부 기억 장치(11)의 "A0000"이라는 어드레스에는, "D0000"이라는 기억 장치 판독 데이터(Storage_RD_data)(통상의 데이터)가 기입되어 있다. 또한, 난수 기록 메모리(13)의 "A0000"이라는 어드레스(외부 기억 장치(11)의 어드레스 "A0000"에 대응하는 어드레스)에는, "X0001"이라는 복호용 데이터(XOR_data)가 기입되어 있다. 이 경우에 있어서, 판독 처리부(1002)가 판독 제어 신호(RD#)를 "H"로부터 "L"로 천이시키면, 외부 기억 장치(11)로부터 "D0000"이라는 기억 장치 판독 데이터(Storage_RD_data)가 출력되고, 난수 기록 메모리(13)로부터 "X0001"이라는 복호용 데이터(XOR_data)가 출력된다. 그러면, 복호 회로(12b)의 논리 연산 소자(121b)는, 즉시, 이들 정보에 대한 배타적 논리합을 연산하고, 그 결과를 출력한다. 그러나, 기간(A1)에 있어서 멀티플렉서(120b)에 입력되는 제어 신호(RD_mux)는 "L"이므로, 멀티플렉서(120b)로부터 출력되는 판독 데이터(RD_data)는, 논리 연산 소자(121b)를 통하지 않고서 출력되는 기억 장치 판독 데이터(Storage_RD_data)(D0000) 그 자체가 된다. 즉, 이 경우, 메인 메모리측 장치(10)에는, 외부 기억 장치(11)로부터 출력된 통상의 데이터(D0000) 그 자체가 입력된다.
한편, 도 6의 스텝 S16에 있어서 기입 처리부(1001)가 행하는 통상의 데이터의 기입 처리는, 도 8의 기간(A2)에 나타나는 대로이다.
즉, 기입 처리부(1001)는, 멀티플렉서(120a)의 제어 신호(WR_mux)를 "L"로 유지한 상태로, 외부 기억 장치(11)에 대하여, 통상의 데이터를 기입하고자 하는 어드레스(예를 들면, "A0000"이라는 어드레스)를 나타내는 어드레스 정보(Address)를 출력한다.
여기에서, 도 8의 기간(A2)에 나타내는 바와 같이, 외부 기억 장치(11)의 "A0000"이라는 어드레스에는, 메인 메모리측 장치(10)로부터 출력되는 "D0000"이라는 기입 데이터(WR_data)(통상의 데이터)가 기입되고자 하고 있다. 또한, 난수 기록 메모리(13)의 "A0000"이라는 어드레스(외부 기억 장치(11)의 어드레스 "A0000"에 대응하는 어드레스)에는, "X0001"이라는 암호화용 데이터(XOR_data)가 기입되어 있다. 이 경우에 있어서, 기입 처리부(1001)가 기입 제어 신호(WR#)를 "H"로부터 "L"로 천이시키면, 메인 메모리측 장치(10)로부터 "D0000"이라는 기입 데이터(WR_data)가 출력되고, 난수 기록 메모리(13)로부터 "X0001"이라는 암호화용 데이터(XOR_data)가 출력된다. 그러면, 암호화 회로(12a)의 논리 연산 소자(121a)는, 즉시, 이들 정보에 대한 배타적 논리합을 연산하고, 그 결과를 출력한다. 그러나, 기간(A2)에 있어서 멀티플렉서(120a)에 입력되는 제어 신호(WR_mux)는 "L"이므로, 멀티플렉서(120a)로부터 출력되는 기억 장치 기입 데이터(Storage_WR_data)는, 논리 연산 소자(121a)를 통하지 않고서 출력되는 기입 데이터(WR_data)(D0000) 그 자체가 된다. 즉, 외부 기억 장치(11)에는, 메인 메모리측 장치(10)로부터 출력된 통상의 데이터(D0000) 그 자체가 입력된다.
이와 같이, 기동이 완료된 CPU(100)는, 스텝 S15에서 제어 신호(WR_mux) 및 제어 신호(RD_mux)의 양쪽을 "L"로 함으로써, 스텝 S16의 통상의 처리에 있어서는, 외부 기억 장치(11)와의 사이에서, 암호화 처리, 복호 처리를 통하지 않는, 통상의 데이터의 기입 및 판독을 행할 수 있다.
CPU(100)는, 정보 처리 장치(1)에 대하여 전원 절단 지시(예를 들면, 사용자에 의한 전원 OFF 버튼의 누름 등)가 입력되었는지 여부를 판정한다(스텝 S17). 전원 절단 지시가 입력되어 있지 않은 경우(스텝 S17: NO), CPU(100)는, 정보 처리 장치(1)로서의 통상의 처리에 있어서, 외부 기억 장치(11)에 대한 통상의 데이터의 판독 및 기입을 행한다. 한편, 전원 절단 지시가 입력된 경우(스텝 S17: YES), CPU(100)는, 실제로 전원을 절단하기 전에, 이하와 같이, 메인 메모리(101)의 스냅샷 이미지를 외부 기억 장치(11)에 기입해서 퇴피하는 처리를 행한다.
구체적으로는, 기입 처리부(1001)는, 우선, 암호화 회로(12a)의 멀티플렉서(120a)에 대해서 입력하는 제어 신호(WR_mux)를 "H"로 한다(스텝 S18).
그리고, 기입 처리부(1001)는, 메인 메모리(101)의 스냅샷 이미지를 외부 기억 장치(11)에 기입한다(스텝 S19).
스냅샷 이미지의 기입이 완료되면, CPU(100)는, 전원을 절단한다(스텝 S20).
전술의 스텝 S19의 처리에 대해서, 도 8을 참조하면서 상세하게 설명한다.
도 6의 스텝 S19에 있어서 기입 처리부(1001)가 행하는 스냅샷 이미지의 판독 처리는, 도 8의 기간(B2)에 나타나는 대로이다.
즉, 기입 처리부(1001)는, 멀티플렉서(120a)의 제어 신호(WR_mux)를 "H"로 유지한 상태로, 외부 기억 장치(11)에 대하여, 스냅샷 이미지를 기입하고자 하는 어드레스(예를 들면, "A1000"이라는 어드레스)를 나타내는 어드레스 정보(Address)를 출력한다. 한편, 전술한 바와 같이, 외부 기억 장치(11) 중, 메인 메모리(101)의 스냅샷 이미지가 기입되는 어드레스는 미리 정해져 있다.
여기에서, 도 8의 기간(B2)에 나타내는 바와 같이, 외부 기억 장치(11)의 "A1000"이라는 어드레스에는, "D1000"이라는 기입 데이터(WR_data)(스냅샷 이미지)가 기입되고자 하고 있다. 또한, 난수 기록 메모리(13)의 "A1000"이라는 어드레스(외부 기억 장치(11)의 어드레스 "A1000"에 대응하는 어드레스)에는, "X0010"이라는 암호화용 데이터(XOR_data)가 기입되어 있다. 이 경우에 있어서, 기입 처리부(1001)가 기입 제어 신호(WR#)를 "H"로부터 "L"로 천이시키면, 메인 메모리측 장치(10)로부터 "D1000"이라는 기입 데이터(WR_data)가 출력되고, 난수 기록 메모리(13)로부터 "X0010"이라는 암호화용 데이터(XOR_data)가 출력된다. 그 결과, 암호화 회로(12a)의 논리 연산 소자(121a)는, 즉시, 이들 정보에 대한 배타적 논리합을 연산하고, 그 결과를 출력한다. 도 8의 기간(B2)에 나타내는 바와 같이, 멀티플렉서(120a)에 입력되는 제어 신호(WR_mux)는 "H"이므로, 멀티플렉서(120a)로부터 출력되는 기억 장치 기입 데이터(Storage_WR_data)는, 기입 데이터(WR_data)(D1000)와 암호화용 데이터(XOR_data)(X0010)의 배타적 논리합(D1010)이 된다. 즉, 외부 기억 장치(11)에는, 평문의(암호화되어 있지 않은) 스냅샷 이미지(D1000)에 대해서 암호화 회로(12a)에 의한 암호화가 이루어진 스냅샷 이미지(D1010)가 입력된다.
(작용·효과)
이상과 같이, 제 1 실시형태에 따른 정보 처리 장치(1)는, 메인 메모리(101)와 외부 기억 장치(11)를 접속하는 데이터 버스(DB) 상에 마련되고, 해당 데이터 버스(DB)를 통해서 전송되는 정보에 대한 복호 처리를 유효로 할지, 무효로 할지를 전환 가능한 복호 회로(12b)와, 외부 기억 장치(11)에 기입된 정보를 메인 메모리(101)에 판독하는 판독 처리부(1002)(CPU(100))를 구비하고 있다. 그리고, 판독 처리부(1002)는, 외부 기억 장치(11)에 기입된 정보로서 메인 메모리(101)의 스냅샷 이미지를 판독하는 경우에, 복호 회로(12b)의 복호 처리를 유효로 한다.
이와 같이 함으로써, 전원의 투입 직후, 스냅샷 이미지를 메인 메모리(101)에 판독할 때에는, 암호화된 스냅샷 이미지가 외부 기억 장치(11)로부터 메인 메모리측 장치(10)를 향해 데이터 버스(DB) 상을 전송되는 과정에서, 하드웨어로서 구성된 복호 회로(12b)에 의해서 고속으로 복호된다.
또한, OS 및 어플리케이션 프로그램이 기동한 후, 외부 기억 장치(11)로부터 통상의 데이터가 판독될 때에는, 복호 회로(12b)에 의한 복호 처리가 무효화된 뒤에, 해당 통상의 데이터가 외부 기억 장치(11)로부터 메인 메모리측 장치(10)를 향해 데이터 버스(DB) 상을 전송되게 된다.
따라서, 제 1 실시형태에 따른 정보 처리 장치(1)에 의하면, 고속 기동의 효과를 손상시키지 않고 암호화된 스냅샷 이미지를 판독할 수 있으므로, 고속 기동을 가능하게 하고, 또한, 시큐리티 성능을 높일 수 있다.
또한, 제 1 실시형태에 따른 정보 처리 장치(1)는, 데이터 버스(DB) 상에 마련되고, 해당 데이터 버스(DB)를 통해서 전송되는 정보에 대한 암호화 처리를 유효로 할지, 무효로 할지를 전환 가능한 암호화 회로(12a)와, 메인 메모리(101)에 저장되는 정보를 외부 기억 장치(11)에 기입하는 기입 처리부(1001)(CPU(100))를 구비하고 있다. 그리고, 기입 처리부(1001)는, 메인 메모리(101)에 저장되는 정보로서 메인 메모리(101)의 스냅샷 이미지를 기입하는 경우에, 암호화 회로(12a)의 암호화 처리를 유효로 한다.
이와 같이 함으로써, 정보 처리 장치(1)는, 전원을 절단하기 직전, 스냅샷 이미지를 외부 기억 장치(11)에 기입할 때에는, 평문의 스냅샷 이미지가 메인 메모리측 장치(10)로부터 외부 기억 장치(11)를 향해 데이터 버스(DB) 상을 전송되는 과정에서, 하드웨어로서 구성된 암호화 회로(12a)에 의해서 고속으로 암호화된다.
또한, OS 및 어플리케이션 프로그램이 기동한 후, 외부 기억 장치(11)에 통상의 데이터를 기입할 때에는, 암호화 회로(12a)에 의한 암호화 처리가 무효화된 뒤에, 해당 통상의 데이터가 메인 메모리측 장치(10)로부터 외부 기억 장치(11)를 향해 데이터 버스(DB) 상을 전송되게 된다.
따라서, 제 1 실시형태에 따른 정보 처리 장치(1)에 의하면, 전원 절단 시에 있어서 외부 기억 장치(11)에 기입해야 할 스냅샷 이미지의 암호화를 고속화할 수 있다.
또한, 복호 회로(12b)는, 복호 처리를 행하기 위한 논리 연산 소자(121b)와, 입력되는 제어 신호(RD_mux)에 따라서, 데이터 버스(DB)를 통해서 전송되는 정보가 논리 연산 소자(121b)를 경유하는지 여부를 선택 가능한 멀티플렉서(120b)(선택 소자)를 가져서 이루어진다.
이와 같이 함으로써, 하드웨어로서, 복호 처리를 유효로 할지, 무효로 할지를 전환 가능한 복호 회로(12b)를, 극히 간소한 구성으로 실현할 수 있다.
동양으로, 암호화 회로(12a)는, 암호화 처리를 행하기 위한 논리 연산 소자(121a)와, 입력되는 제어 신호(WR_mux)에 따라서, 데이터 버스(DB)를 통해서 전송되는 정보가 논리 연산 소자(121a)를 경유하는지 여부를 선택 가능한 멀티플렉서(120a)(선택 소자)를 가져서 이루어진다.
이와 같이 함으로써, 하드웨어로서, 암호화 처리를 유효로 할지, 무효로 할지를 전환 가능한 암호화 회로(12a)를, 극히 간소한 구성으로 실현할 수 있다.
또한, 제 1 실시형태에 따른 정보 처리 장치(1)는, 복호용 데이터(XOR_data)가 기록된 난수 기록 메모리(13)(복호용 데이터 기록 메모리)를 더 구비한다. 그리고, 복호 회로(12b)는, 난수 기록 메모리(13)로부터 판독된 복호용 데이터(XOR_data)에 기초해서, 데이터 버스(DB)를 통해서 전송되는 정보에 대한 복호 처리를 행한다.
이와 같이 함으로써, 복호 회로(12b)는, 전용의 메모리(난수 기록 메모리(13))로부터 직접 판독되는 복호용 데이터(XOR_data)를 이용해서 고속으로 복호를 행할 수 있다.
또한, 제 1 실시형태에 따른 정보 처리 장치(1)는, 암호화용 데이터(XOR_data)가 기록된 난수 기록 메모리(13)(암호화용 데이터 기록 메모리)를 더 구비한다. 그리고, 암호화 회로(12a)는, 난수 기록 메모리(13)로부터 판독된 암호화용 데이터(XOR_data)에 기초해서, 데이터 버스(DB)를 통해서 전송되는 정보에 대한 암호화 처리를 행한다. 또한, 본 실시형태에 있어서는, 암호화용 데이터(XOR_data)는, 복호용 데이터(XOR_data)와 동일하게 된다.
이와 같이 함으로써, 암호화 회로(12a)는, 전용의 메모리(난수 기록 메모리(13))로부터 직접 판독되는 암호화용 데이터(XOR_data)를 이용해서 고속으로 암호화를 행할 수 있다.
한편, 제 1 실시형태에 따른 정보 처리 장치(1)는, 이하의 특징을 더 가져도 된다.
즉, 전원 투입(도 9에 나타내는 스텝 S11)의 직후, 정보 처리 장치(1)의 CPU(100)는, 우선, 부트 로더로서 동작하기 위한 기동용의 프로그램을 판독하는 것(스텝 S12)을 설명했다. 그러나, 전원 투입 직후에 있어 CPU(100)의 레지스터 등이 초기화되어 있지 않은 단계에서는, 제어 신호(RD_mux)가 "H"로서 출력되는 경우가 있다. 이 경우, 상기 기동용의 프로그램(부트 로더)이, 데이터 버스(DB) 상에 마련된 복호 회로(12b)를 경유해서, 해당 복호 회로(12b)에 의한 복호 처리가 실시된 뒤에 메인 메모리(101)에 판독되는 것이 상정된다. 그러면, 상기 기동용의 프로그램이 의도하지 않는 복호 처리(변환 처리)에 의해서 파괴되어, 정상적으로 기동하지 않게 되는 것이 생각된다.
그래서, 부트 로더로서 동작하기 위한 기동용의 프로그램이 전개되는 기억 영역(이하, 「부트 로더용 기억 영역」이라고 표기)을, 메인 메모리(101)와는 별도로 준비하고, 또한, 해당 부트 로더용 기록 기억 영역에는, 복호 회로(12b)가 마련되어 있지 않은 별도의 데이터 버스(DB)가 접속되는 태양으로 해도 된다. 이에 의해, 상기 기동용의 프로그램은, 복호 회로(12b)가 마련되어 있지 않은 데이터 버스(DB)를 경유해서, 그대로의 상태로 부트 로더용 기억 영역에 저장된다.
또한, 다른 실시형태에 있어서는, 부트 로더로서 동작하기 위한 기동용의 프로그램이 저장되는 메인 메모리(101) 상의 어드레스를 미리 규정해 둠과 더불어, 어드레스 정보(Address)를 입력하는 별도의 전용 회로(어드레스 디코더)를 구비하는 태양이어도 된다. 이 경우, 상기 전용 회로는, 어드레스 버스를 통해서 입력되는 어드레스 정보(Address)가 상기 미리 규정된 어드레스인 것을 검지한 경우에, 강제적으로, 멀티플렉서(120b)에 입력되는 제어 신호(RD_mux)를 "L"로 한다. 이와 같이 함으로써, 상기 기동용의 프로그램이 메인 메모리(101)에 전개되는 경우에는, 항상, 제어 신호(RD_mux)가 "L"이 되는 것이 보장되므로, 해당 프로그램은, 그대로의 상태로 메인 메모리(101)에 저장된다.
이상, 제 1 실시형태에 따른 정보 처리 장치(1)에 대해서 상세하게 설명했지만, 정보 처리 장치(1)의 구체적인 태양은, 전술한 것으로 한정되지 않고, 요지를 일탈하지 않는 범위 내에 있어서 여러 가지의 설계 변경 등을 가하는 것은 가능하다.
예를 들면, 암호화 회로(12a) 및 복호 회로(12b)는, 배타적 논리합을 연산하는 논리 연산 소자(121a, 121b)를 구비하는 태양으로 설명했지만, 다른 실시형태에 있어서는 이 태양으로 한정되지 않는다.
즉, 다른 실시형태에 따른 암호화 회로(12a), 복호 회로(12b)는, 하드웨어로서 데이터 버스(DB) 상에 구성되고, 목적으로 하는 암호화 처리 및 복호 처리를 실현 가능한 구성이면, 배타적 논리합 이외의 연산을 행하는 논리 연산 소자, 또는, 복수 종류의 논리 연산 소자의 조합으로 구성되어도 된다.
또한, 다른 실시형태에 있어서의 정보 처리 장치(1)는, 하드웨어로서 구성되는 암호화 회로(12a)를 구비하지 않는 태양이어도 된다.
즉, 다른 실시형태에 따른 정보 처리 장치(1)는, 전원의 절단 직전에 있어서 메인 메모리(101)의 스냅샷 이미지를 외부 기억 장치(11)에 기입할 때, CPU(100)의 처리(소프트웨어 처리)로 암호화함과 더불어, 해당 암호화된 스냅샷 이미지를 외부 기억 장치(11)에 기입하는 태양이어도 된다.
<제 2 실시형태>
다음으로, 도 9, 도 10을 참조하면서, 제 2 실시형태에 따른 정보 처리 장치에 대해서 상세하게 설명한다.
(CPU의 기능 구성)
도 9는, 제 2 실시형태에 따른 CPU의 기능 구성을 나타내는 도면이다.
한편, 제 2 실시형태에 따른 정보 처리 장치(1)의 하드웨어 구성에 대해서는, 제 1 실시형태(도 1)와 동양이기 때문에, 도시를 생략한다.
도 9에 나타내는 바와 같이, 제 2 실시형태에 따른 CPU(100)는, PUF 정보 기록 처리부(1003a)로서의 기능을 발휘한다.
PUF 정보 기록 처리부(1003a)는, 메인 메모리(101)의 PUF(physical unclonable function) 정보를 취득해서, 난수 기록 메모리(13)에 기록하는 처리를 행한다. 여기에서, 「PUF 정보」란, 전원이 투입된 직후의 초기 상태(초기화가 이루어지기 전의 상태)에 있어서 메인 메모리(101)에 기록되어 있는 정보로서, 메인 메모리(101)를 구성하는 트랜지스터 등의 전기 특성의 근소한 개체차에 기초해서 생기는 정보이다. 따라서, PUF 정보는, 메인 메모리(101)마다 상이한 정보가 된다.
(정보 처리 장치의 제 2 처리 플로)
도 10은, 제 2 실시형태에 따른 정보 처리 장치의 제 2 처리 플로를 나타내는 도면이다.
제 2 실시형태에 따른 정보 처리 장치(1)의 제 2 처리 플로는, 스텝 S13a를 갖는 점에서 제 1 실시형태와 상이하다.
즉, CPU(100)의 PUF 정보 기록 처리부(1003a)(도 9)는, 스냅샷 이미지를 메인 메모리(101)에 판독하기(스텝 S14) 전에, 전원 투입(스텝 S11) 직후의 메인 메모리(101)로부터 PUF 정보를 판독한다. 그리고, PUF 정보 기록 처리부(1003a)는, 판독한 PUF 정보를 난수 기록 메모리(13)에 기록한다(스텝 S13a).
PUF 정보 기록 처리부(1003a)에 의한 스텝 S13a의 처리를 거쳐서, 난수 기록 메모리(13)에는, 메인 메모리(101)의 PUF 정보가 기록되어 있다. 계속해서, 판독 처리부(1002)는, 제 1 실시형태와 동양으로, 외부 기억 장치(11)에 기입되어 있는 스냅샷 이미지를 메인 메모리(101)에 판독하는 처리를 행한다(스텝 S14). 여기에서, 복호 회로(12b)의 논리 연산 소자(121b)에는, 스텝 S13a에서 난수 기록 메모리(13)에 기록된 PUF 정보(복호용 데이터(XOR_data))가 입력된다. 이에 의해, 메인 메모리(101)에는, PUF 정보에 기초해서 복호된 스냅샷 이미지가 판독된다.
또한, 전원 절단 지시를 접수한 경우(스텝 S17), 기입 처리부(1001)는, 제 1 실시형태와 동양으로, 메인 메모리(101)의 스냅샷 이미지를 외부 기억 장치(11)에 기입하는 처리를 행한다(스텝 S19). 여기에서, 암호화 회로(12a)의 논리 연산 소자(121a)에는, 스텝 S13a에서 난수 기록 메모리(13)에 기록된 PUF 정보(암호화용 데이터(XOR_data))가 입력된다. 이에 의해, 외부 기억 장치(11)에는, PUF 정보에 기초해서 암호화된 스냅샷 이미지가 기입된다.
(작용·효과)
이상과 같이, 제 2 실시형태에 따른 정보 처리 장치(1)에 의하면, 복호용 데이터 및 암호화용 데이터는, 정보 처리 장치(1)의 전원이 투입된 직후의 초기 상태에 있어서, 메인 메모리(101)에 기록되어 있는 PUF 정보가 된다.
이와 같이 함으로써, 초기 상태로부터 메인 메모리에 기록되어 있는 정보(PUF 정보)에 기초해서 스냅샷 이미지의 암호화를 도모할 수 있다. 이에 의해, 정보 처리 장치(1)의 시큐리티 성능을 한층 높일 수 있다.
한편, 제 2 실시형태에 있어서는, 전원 투입 직후의 메인 메모리(101)로부터 PUF 정보가 판독되기 때문에, 정보 처리 장치(1)의 전원이 끊겨 있는 동안, 복호용 데이터로서의 PUF 정보를 유지해 둘 필요는 없다. 따라서, 제 2 실시형태에 있어서는, 난수 기록 메모리(13)는, 불휘발성 메모리일 필요는 없다.
또한, 전술의 각 실시형태에 있어서는, 전술한 정보 처리 장치(1)의 각종 처리의 과정은, 프로그램의 형식으로 컴퓨터 판독 가능한 기록 매체에 기억되어 있고, 이 프로그램을 컴퓨터가 판독해서 실행하는 것에 의해서 상기 각종 처리가 행해진다. 또한, 컴퓨터 판독 가능한 기록 매체란, 자기 디스크, 광자기 디스크, CD-ROM, DVD-ROM, 반도체 메모리 등을 말한다. 또한, 이 컴퓨터 프로그램을 통신 회선에 의해서 컴퓨터에 배신(配信)하고, 이 배신을 받은 컴퓨터가 해당 프로그램을 실행하도록 해도 된다.
상기 프로그램은, 전술한 기능의 일부를 실현하기 위한 것이어도 된다. 또, 전술한 기능을 컴퓨터 시스템에 이미 기록되어 있는 프로그램과의 조합으로 실현할 수 있는 것, 이른바 차분 파일(차분 프로그램)이어도 된다.
또한, 정보 처리 장치(1)는, 전술의 각종 기능을 전부 구비하는 1대의 컴퓨터로 구성되어 있어도 되고, 그 기능의 일부씩을 구비하여, 서로 통신 가능하게 접속된 복수의 컴퓨터로 구성되어 있어도 된다.
이상, 본 발명의 몇 개의 실시형태를 설명했지만, 이들 실시형태는, 예로서 제시한 것으로, 발명의 범위를 한정하는 것은 의도하고 있지 않다. 전술의 각 실시형태는, 그 밖의 다양한 형태로 실시되는 것이 가능하고, 발명의 요지를 일탈하지 않는 범위에서 여러 가지의 생략, 치환, 변경을 행할 수 있다. 이들 변형예는, 발명의 범위나 요지에 포함되는 것과 동양으로, 특허청구의 범위에 기재된 발명과 그 균등의 범위에 포함된다.
전술의 정보 처리 장치, 정보 처리 장치의 제어 방법 및 프로그램에 의하면, 고속 기동을 가능하게 하고, 또한, 시큐리티 성능을 높일 수 있다.
1: 정보 처리 장치
10: 메인 메모리측 장치
100: CPU
1001: 기입 처리부
1002: 판독 처리부
1003: 난수 생성부
1003a: PUF 정보 기록 처리부
101: 메인 메모리
11: 외부 기억 장치
12a: 암호화 회로
12b: 복호 회로
120a, 120b: 멀티플렉서
121a, 121b: 논리 연산 소자
13: 난수 기록 메모리
DB: 데이터 버스

Claims (7)

  1. 메인 메모리와 외부 기억 장치를 접속하는 데이터 버스 상에 마련되고, 해당 데이터 버스를 통해서 전송되는 정보에 대한 복호 처리를 유효로 할지, 무효로 할지를 전환 가능한 복호 회로와,
    상기 외부 기억 장치에 기입된 정보를 상기 메인 메모리에 판독하는 판독 처리부
    를 구비하고,
    상기 판독 처리부는, 상기 외부 기억 장치에 기입된 정보로서 상기 메인 메모리의 스냅샷 이미지를 판독하는 경우에, 상기 복호 회로의 복호 처리를 유효로 하는
    정보 처리 장치.
  2. 제 1 항에 있어서,
    상기 데이터 버스 상에 마련되고, 해당 데이터 버스를 통해서 전송되는 정보에 대한 암호화 처리를 유효로 할지, 무효로 할지를 전환 가능한 암호화 회로와,
    상기 메인 메모리에 저장되는 정보를 상기 외부 기억 장치에 기입하는 기입 처리부
    를 구비하고,
    상기 기입 처리부는, 상기 메인 메모리에 저장되는 정보로서 해당 메인 메모리의 스냅샷 이미지를 기입하는 경우에, 상기 암호화 회로의 암호화 처리를 유효로 하는
    정보 처리 장치.
  3. 제 1 항 또는 제 2 항에 있어서,
    상기 복호 회로는,
    상기 복호 처리를 행하기 위한 논리 연산 소자와,
    입력되는 제어 신호에 따라서, 상기 데이터 버스를 통해서 전송되는 정보가 상기 논리 연산 소자를 경유하는지 여부를 선택 가능한 선택 소자
    를 구비하는 정보 처리 장치.
  4. 제 1 항 내지 제 3 항 중 어느 한 항에 있어서,
    복호용 데이터가 기록된 복호용 데이터 기록 메모리를 더 구비하고,
    상기 복호 회로는, 상기 복호용 데이터 기록 메모리로부터 판독된 상기 복호용 데이터에 기초해서, 상기 데이터 버스를 통해서 전송되는 정보에 대한 복호 처리를 행하는
    정보 처리 장치.
  5. 제 4 항에 있어서,
    상기 복호용 데이터는, 전원이 투입된 직후의 초기 상태에 있어서, 상기 메인 메모리에 기록되어 있는 정보인
    정보 처리 장치.
  6. 메인 메모리와 외부 기억 장치를 접속하는 데이터 버스 상에 마련되고, 해당 데이터 버스를 통해서 전송되는 정보에 대한 복호 처리를 유효로 할지, 무효로 할지를 전환 가능한 복호 회로를 구비하는 정보 처리 장치의 제어 방법으로서,
    상기 외부 기억 장치에 기입된 정보를 상기 메인 메모리에 판독하는 판독 스텝을 갖고,
    상기 판독 스텝에 있어서, 상기 외부 기억 장치에 기입된 정보로서 상기 메인 메모리의 스냅샷 이미지를 판독하는 경우에, 상기 복호 회로의 복호 처리를 유효로 하는
    정보 처리 장치의 제어 방법.
  7. 메인 메모리와 외부 기억 장치를 접속하는 데이터 버스 상에 마련되고, 해당 데이터 버스를 통해서 전송되는 정보에 대한 복호 처리를 유효로 할지, 무효로 할지를 전환 가능한 복호 회로를 구비하는 정보 처리 장치를,
    상기 외부 기억 장치에 기입된 정보를 상기 메인 메모리에 판독하는 판독 처리부로서 기능하게 하고,
    상기 판독 처리부는, 상기 외부 기억 장치에 기입된 정보로서 상기 메인 메모리의 스냅샷 이미지를 판독하는 경우에, 상기 복호 회로의 복호 처리를 유효로 하는
    프로그램.
KR1020207011581A 2017-10-31 2017-10-31 정보 처리 장치, 정보 처리 장치의 제어 방법 및 프로그램 KR102414866B1 (ko)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2017/039418 WO2019087309A1 (ja) 2017-10-31 2017-10-31 情報処理装置、情報処理装置の制御方法及びプログラム

Publications (2)

Publication Number Publication Date
KR20200060434A true KR20200060434A (ko) 2020-05-29
KR102414866B1 KR102414866B1 (ko) 2022-06-29

Family

ID=66333546

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020207011581A KR102414866B1 (ko) 2017-10-31 2017-10-31 정보 처리 장치, 정보 처리 장치의 제어 방법 및 프로그램

Country Status (6)

Country Link
US (1) US11288374B2 (ko)
JP (1) JP7042837B2 (ko)
KR (1) KR102414866B1 (ko)
GB (1) GB2581652B (ko)
SG (1) SG11202003601WA (ko)
WO (1) WO2019087309A1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6987112B2 (ja) * 2019-12-02 2021-12-22 三菱電機株式会社 集積回路
KR102400488B1 (ko) * 2020-09-18 2022-05-20 주식회사 악어디지털 법적 신뢰성 확보가 가능한 문서 전자화 방법 및 이를 위한 시스템

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS59173847A (ja) * 1983-03-23 1984-10-02 Oyo Syst Kenkyusho:Kk コンピユ−タソフトウエアの保護方法およびその装置
JPS6151251A (ja) * 1984-08-21 1986-03-13 Yokogawa Hokushin Electric Corp コンピユ−タシステム
US20050044433A1 (en) * 2003-08-19 2005-02-24 Dunstan Robert A. Storing encrypted and/or compressed system context information when entering a low-power state
JP2005086670A (ja) * 2003-09-10 2005-03-31 Toshiba Corp 暗号化/復号モジュール
JP2015156205A (ja) 2014-01-20 2015-08-27 キヤノン株式会社 情報処理装置およびその制御方法

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080256352A1 (en) * 2000-01-06 2008-10-16 Super Talent Electronics, Inc. Methods and systems of booting of an intelligent non-volatile memory microcontroller from various sources
FR2824646B1 (fr) * 2001-05-09 2003-08-15 Canal Plus Technologies Procede de selection d'une image de logiciel executable
US7802212B2 (en) * 2005-04-15 2010-09-21 Rambus Inc. Processor controlled interface
US20080282052A1 (en) * 2005-11-18 2008-11-13 Xiang Ma Operating Media Devices in Pre-Os Environment
US20080046705A1 (en) * 2006-08-15 2008-02-21 Tyan Computer Corporation System and Method for Flexible SMP Configuration
GB2446658B (en) 2007-02-19 2011-06-08 Advanced Risc Mach Ltd Hibernating a processing apparatus for processing secure data
US7941470B2 (en) * 2007-03-29 2011-05-10 Vmware, Inc. Synchronization and customization of a clone computer
JP2008299611A (ja) 2007-05-31 2008-12-11 Toshiba Corp メモリセキュリティ装置
JP5007248B2 (ja) * 2008-02-06 2012-08-22 株式会社日立製作所 スナップショットを管理する記憶制御装置及び方法
JP4675984B2 (ja) * 2008-02-29 2011-04-27 株式会社東芝 メモリシステム
US8171277B2 (en) * 2008-07-02 2012-05-01 Apple Inc. Method and apparatus for booting from a flash memory without prior knowledge of flash parameter information
JP2010113615A (ja) * 2008-11-07 2010-05-20 Toshiba Corp 半導体システム
US8175012B2 (en) * 2009-03-26 2012-05-08 Mediatek Inc. Decoding/encoding method for booting from a NAND flash and system thereof
US8250379B2 (en) * 2009-10-13 2012-08-21 Microsoft Corporation Secure storage of temporary secrets
JP5533083B2 (ja) * 2010-03-16 2014-06-25 株式会社リコー データ処理装置およびデータ処理方法
WO2012073287A1 (en) * 2010-12-01 2012-06-07 Hitachi, Ltd. Storage control apparatus and storage control method
JP5839659B2 (ja) 2011-06-20 2016-01-06 ルネサスエレクトロニクス株式会社 半導体装置
JP6046978B2 (ja) * 2012-10-26 2016-12-21 キヤノン株式会社 情報処理装置およびその方法
WO2014087497A1 (ja) * 2012-12-05 2014-06-12 株式会社日立製作所 ストレージ装置及びその制御方法
US9881161B2 (en) * 2012-12-06 2018-01-30 S-Printing Solution Co., Ltd. System on chip to perform a secure boot, an image forming apparatus using the same, and method thereof
US9424134B2 (en) * 2014-03-28 2016-08-23 Intel Corporation Boot management in a non-volatile memory system
KR20160094767A (ko) * 2015-02-02 2016-08-10 삼성전자주식회사 아이들 구간에서 정보 전달 기능을 수행하는 메모리 장치 및 방법
US10394648B2 (en) * 2016-11-07 2019-08-27 Samsung Electronics Co., Ltd. Method to deliver in-DRAM ECC information through DDR bus
KR20180064940A (ko) * 2016-12-06 2018-06-15 삼성전자주식회사 해머 리프레쉬 동작을 수행하는 메모리 시스템
US10388392B2 (en) * 2017-04-08 2019-08-20 Texas Instruments Incorporated Safe execution in place (XIP) from flash memory
KR102384733B1 (ko) * 2017-09-26 2022-04-08 삼성전자주식회사 반도체 메모리 장치, 반도체 메모리 장치의 동작 방법 및 메모리 시스템
US20190303303A1 (en) * 2018-03-29 2019-10-03 Intel Corporation System, method, and apparatus for detecting repetitive data accesses and automatically loading data into local cache to avoid performance inversion and waste of uncore resources
US10867655B1 (en) * 2019-07-08 2020-12-15 Micron Technology, Inc. Methods and apparatus for dynamically adjusting performance of partitioned memory

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS59173847A (ja) * 1983-03-23 1984-10-02 Oyo Syst Kenkyusho:Kk コンピユ−タソフトウエアの保護方法およびその装置
JPS6151251A (ja) * 1984-08-21 1986-03-13 Yokogawa Hokushin Electric Corp コンピユ−タシステム
US20050044433A1 (en) * 2003-08-19 2005-02-24 Dunstan Robert A. Storing encrypted and/or compressed system context information when entering a low-power state
JP2005086670A (ja) * 2003-09-10 2005-03-31 Toshiba Corp 暗号化/復号モジュール
JP2015156205A (ja) 2014-01-20 2015-08-27 キヤノン株式会社 情報処理装置およびその制御方法

Also Published As

Publication number Publication date
JPWO2019087309A1 (ja) 2020-11-19
GB202005761D0 (en) 2020-06-03
KR102414866B1 (ko) 2022-06-29
GB2581652B (en) 2022-08-24
WO2019087309A1 (ja) 2019-05-09
US11288374B2 (en) 2022-03-29
GB2581652A (en) 2020-08-26
SG11202003601WA (en) 2020-05-28
US20200285751A1 (en) 2020-09-10
JP7042837B2 (ja) 2022-03-28

Similar Documents

Publication Publication Date Title
KR102385552B1 (ko) 시스템-온-칩 및 이를 포함하는 전자 장치
US8924739B2 (en) System and method for in-place encryption
JP5904505B2 (ja) 仮想ディスクを暗号化及び復号するためのコンピュータ可読ストレージ媒体
RU2513909C1 (ru) Ограничение областей памяти для считывания команд в зависимости от аппаратного режима и флага безопасности
AU2012204448A1 (en) System and method for in-place encryption
US20150078550A1 (en) Security processing unit with configurable access control
JP6609154B2 (ja) ブートプログラム、情報処理装置、情報処理システム、情報処理方法、半導体装置、およびプログラム
JP2020528608A5 (ko)
US11126566B2 (en) Method and apparatus for sharing security metadata memory space
JP2014524628A (ja) デジタル署名するオーソリティ依存のプラットフォームシークレット
EP3252991B1 (en) Application specific low-power secure key
JP6095330B2 (ja) 情報処理装置及びその制御方法、プログラム
KR102414866B1 (ko) 정보 처리 장치, 정보 처리 장치의 제어 방법 및 프로그램
US20190377878A1 (en) Secure Drive
US20100241870A1 (en) Control device, storage device, data leakage preventing method
JP6293648B2 (ja) メモリデバイス
JP2018526720A (ja) 仮想マシンの状態情報の保護
JP7076089B2 (ja) 記憶装置、ステータス管理方法、及びステータス管理プログラム
JP6399821B2 (ja) 情報処理装置、情報処理方法、およびコンピュータプログラム
CN113536331B (zh) 存储器和计算系统的数据安全
JP6351397B2 (ja) 情報処理装置および情報処理方法、およびコンピュータプログラム
JP2009211245A (ja) フラッシュメモリ制御システムおよび制御方法
CN117009284A (zh) 系统单芯片架构及其数据保护方法
JP5983939B2 (ja) 情報処理装置および情報処理プログラム
JP2012168737A (ja) メモリ装置

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E90F Notification of reason for final refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant