KR20110016874A - 주변 디바이스 록킹 메커니즘 - Google Patents
주변 디바이스 록킹 메커니즘 Download PDFInfo
- Publication number
- KR20110016874A KR20110016874A KR1020107024077A KR20107024077A KR20110016874A KR 20110016874 A KR20110016874 A KR 20110016874A KR 1020107024077 A KR1020107024077 A KR 1020107024077A KR 20107024077 A KR20107024077 A KR 20107024077A KR 20110016874 A KR20110016874 A KR 20110016874A
- Authority
- KR
- South Korea
- Prior art keywords
- client device
- computing system
- host device
- reset
- client
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/78—Protecting 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/79—Protecting 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/78—Protecting 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/80—Protecting 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 storage media based on magnetic or optical technology, e.g. disks with sectors
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)
- Debugging And Monitoring (AREA)
Abstract
호스트 디바이스와 클라이언트 디바이스에서 데이터의 변경을 방지하는데 사용되는 록을 갖는 적어도 하나의 클라이언트 디바이스를 갖는 컴퓨팅 시스템이 개시되어 있다. 호스트 디바이스로부터의 록 클리어 신호는 클라이언트 디바이스가 자신의 적어도 보호된 부분에 저장된 데이터의 변경을 방지하는데 사용되는 록을 클리어링하도록 하며, 상기 클라이언트 디바이스는 완전히 동작적으로 유지된다.
Description
본 발명은, 일반적으로 디지털 디바이스(digital device)에 관한 것이다. 보다 구체적으로, 본 발명은 선택적 록킹 메커니즘을 사용하여 주변 디바이스에 저장된 정보의 무결성(integrity)을 보호하는 것에 관한 것이다.
컴퓨터 보안 중요성의 문제가 다양한 플랫폼(platform)을 통하여, 컴퓨터-기반 시스템의 광범위한 구현 및 가용성에서의 최근의 급증에 의해 증식되었다. 컴퓨터 및 집적 회로 제조 기술의 진보는 "노트북(notebook)" 또는 "랩톱(laptop)" 컴퓨터라고 통칭되는 강력한 휴대용 컴퓨터를 광범위하게 배치하도록 하였다. 대중적이 되었던 더욱-더 작은 유형의 컴퓨터 시스템은 PAM, 윈도우 모바일(Window Mobile: WM) 또는 다른 운영 시스템 하에서 동작하는 개인용 디지털 보조장치(Personal Digital Assitant: PDA)이다. 많은 추가 전자 디바이스가 또한 지금 컴퓨터 시스템인 것으로 간주될 수 있다. 예를 들어, 현대의 무선 전화 핸드셋(wirelss telephone handset)은 실제로 로컬 메모리(local memory)에 액세스(access)하는 마이크로프로세서(microprocessor) 또는 마이크로프로세서와 같은 중앙 처리 장치의 제어 하의, 컴퓨터 시스템이다. 특히 소위 2.5G 및 3G 무선 서비스 내로 구현될 때, 이러한 현대의 무선 전화 핸드셋은 인터넷 브라우징(Internet browsing), 이메일 기능 등을 포함하는 컴퓨터와 같은 기능을 수행한다. 다른 비-전통적인 컴퓨터 플랫폼은 인터넷 어플라이언스(Internet appliance), 웹 패드(web pad), 바이오메트릭스(biometrics), 의료 디바이스 등을 포함한다. 이러한 새로운 컴퓨터 플랫폼 구현예 및 특히 무선 기술을 사용한 인터넷으로의 이들의 증가된 커넥티비티(connectivity)가 또한 종래의 데스크톱 컴퓨터 워크스테이션(desktop computer workstation)보다 더 많은 어떤 방식에서, 보안 공격에 취약하다.
종래의 "부트로더(bootloader)" 루틴(routine)은 거의 모든 플랫폼에서, 현대의 컴퓨터 시스템에서 통용된다. 전형적인 부트로더는 시스템 초기화를 위한 명령의 시퀀스(sequence)이다. 부트로더 시퀀스는 전형적으로 저장된 데이터가 파워-다운(power-down) 이후에 지속되는 전기적으로-변경 가능하거나 하드-코딩(hard-coding)된 판독-전용 메모리(Read-Only Memory: ROM)와 같은 "펌웨어(firmware)"에 유지된다. 파워-업 또는 시스템 리셋(power-up or system reset) 시에, 부트로더 시퀀스는 중앙 처리 장치(CPU)에 의해 실행되어, 운영 시스템 코드를 또 다른 영구 저장소(persistent store)(예를 들어, 종래의 컴퓨터 내의 하드 디스크 드라이브(hard disk drive), 또는 휴대용 디바이스 내의 비휘발성 메모리)로부터 실행을 위해 시스템 프로그램 메모리 내로 전달한다. 그 후, 부트로더는 제어를 이 운영 시스템 코드로 통과시킨다. 종래 기술의 특정 플래시 비휘발성 메모리(flash non-volatile memory)에서, 부트 블록 섹터(boot block sector)와 같은 특정 위치로의 프로그램 및 소거 동작을 방지하기 위하여 메모리 칩 패키지(memory chip package)와 관련된 "기록 방지(write protect)" 핀을 제공하는 것이 관례적이었다(플래시 메모리 디바이스 내의 섹터는 단순히 메모리 어레이(memory array) 자체의 파티션(partition)이다). 의도적이거나 악의 있는 프로그램 및 소거 동작에 대해 이러한 섹터의 일부를 보호하는 것이 바람직하다. 예를 들어, 부트 코드, 구성 데이터, 운영 시스템, 및 주 프로그램 코드를 저장하는 섹터는 보호될 필요가 있을 확률이 가장 높을 것이다. 이러한 섹터 중 어느 하나가 잘못된 정보로 의도하지 않게 소거 또는 프로그래밍된 경우에, 시스템은 적절하게 기능하지 않을 것이다. 사용자 데이터 저장을 위해 할당된 섹터는 덜 중요하고, 소거 및 재프로그래밍되는 경우에 기본적인 시스템 동작에 영향을 주지 않아서, 보호될 필요가 없을 확률이 가장 높을 것이다. 일반적으로, 말웨어(malware)(즉, 바이러스(virus), 웜(worm), "보트(bot)" 또는 "좀비(zombie)" 동작 등)와 비슷한 보안 침해(security breach)가 현대의 통신 및 계산 시스템에 대해 상당한 경제적 비용을 강요하였다. 모바일 디바이스의 수가 증가함에 따라, 심각한 보안 침해의 가능성이 또한 증가할 것이다.
그러므로, 컴퓨팅 시스템에서 보안을 제공하는 것이 바람직하다.
본 발명의 서로 다른 실시예에 따라, 컴퓨팅 시스템에서 보안을 효율적으로 제공하는 다양한 방법, 디바이스 및 시스템이 설명된다. 하나의 실시예는 호스트 디바이스(host device) 및 클라이언트 디바이스(client device)에서 데이터의 변경을 방지하는데 사용되는 록(lock)을 클리어링(clearing)하는 적어도 하나의 클라이언트 디바이스를 갖는 컴퓨팅 시스템에서 수행되는 방법을 설명한다. 상기 방법은 적어도 다음 동작: 클라이언트 디바이스에서 호스트 디바이스로부터 록 클리어 신호를 수신하는 단계 및 상기 클라이언트 디바이스에 의해 수신된 록 클리어 신호를 사용하여, 상기 클라이언트 디바이스의 적어도 보호된 부분에 저장된 데이터의 변경을 방지하는데 사용되는 록을 클리어링하는 단계를 포함하고, 상기 클라이언트 디바이스가 완전히 동작적으로 유지된다.
호스트 디바이스와 통신하는 클라이언트 디바이스를 포함하는 컴퓨팅 시스템이 설명된다. 클라이언트 디바이스는 호스트 디바이스로부터 록 클리어 신호를 수신하고, 상기 수신된 록 클리어 신호를 사용하여 상기 클라이언트 디바이스의 적어도 보호된 부분에 저장된 데이터의 변경을 방지하는데 사용되는 록을 클리어링하도록 배열되고, 상기 클라이언트 디바이스가 완전히 동작적으로 유지된다.
적어도 호스트 디바이스; 상기 호스트 디바이스에 접속된 적어도 하나의 신호 라인(signal line) 및 복수의 클라이언트 디바이스를 포함하는 컴퓨팅 시스템이 설명된다. 클라이언트 디바이스 각각은 다수의 I/O 핀으로서, 상기 다수의 I/O 핀 중 선택된 I/O 핀이 적어도 하나의 신호 라인에 접속되는, 다수의 I/O 핀, 및 제 1 및 제 2 핀을 포함하며, 상기 복수의 클라이언트 디바이스의 거의 제 1 및 최종 클라이언트 디바이스가 상기 적어도 하나의 신호 라인과 별도의 상기 제 1 및 제 2 핀에 의하여 데이지 체인 배열(daisy chain arrangement)로 서로 접속된다. 적어도 상기 제 1 클라이언트 디바이스는 상기 제 2 핀에 의해서만 상기 데이지 체인 배열에 접속되는 부팅 가능한 클라이언트 디바이스이며, 상기 제 1 디바이스의 제 1 핀은 리셋 라인에 의해 호스트 컴퓨터의 리셋 핀에 접속되는 록 클리어 핀이다. 상기 최종 디바이스는 제 1 핀에 의해서만 데이지 체인에 접속되고, 상기 복수의 클라이언트 디바이스 중 최종 클라이언트 디바이스의 제 2 핀은 상기 적어도 하나의 신호 라인과 별도의 인터럽트 신호 라인(interrupt signal line)에 의하여 상기 호스트 컴퓨터에 접속되며, 호스트 컴퓨터의 리셋 핀이 어서팅(asserting)될 때, 상기 제 1 클라이언트 디바이스가 상기 부팅 가능한 클라이언트 디바이스의 적어도 보호된 부분에 저장된 데이터의 변경을 방지하는데 사용되는 록을 클리어링하고, 상기 부팅 가능한 클라이언트 디바이스가 임의의 초기화 프로세스를 겪지 않는다.
본 발명은, 컴퓨팅 시스템에 보안이 제공되는 효과를 갖는다.
도 1은, 본 발명의 특정 실시예를 설명하는 시스템을 도시한 도면.
도 2와 3은, 본 발명을 구현하는데 사용되는 도 1에 도시된 시스템의 추가 구성을 도시한 도면.
도 3은, 도 1에 도시된 시스템의 클라이언트 디바이스를 나타내는 간소화된 상태 기계(300)를 도시한 도면.
도 4는, 본 발명의 또 다른 실시예에 따른 시스템의 간소화된 배선도.
도 5는, 본 발명에 따른 타이밍도.
도 2와 3은, 본 발명을 구현하는데 사용되는 도 1에 도시된 시스템의 추가 구성을 도시한 도면.
도 3은, 도 1에 도시된 시스템의 클라이언트 디바이스를 나타내는 간소화된 상태 기계(300)를 도시한 도면.
도 4는, 본 발명의 또 다른 실시예에 따른 시스템의 간소화된 배선도.
도 5는, 본 발명에 따른 타이밍도.
예가 첨부 도면에 도시되어 있는 본 발명의 특정 실시예가 이제 상세히 참조될 것이다. 본 발명이 특정 실시예와 함께 설명될지라도, 본 발명이 특정 실시예와 함께 설명되는 것이 본 발명을 설명된 실시예로 제한하도록 의도되지 않는다는 점이 이해될 것이다. 반대로, 본 발명이 특정 실시예와 함께 설명되는 것이 첨부된 청구항에 의해 정의된 바와 같은 본 발명의 정신과 범위 내에 포함될 수 있는 대안, 변경, 및 등가물을 커버하도록 의도된다.
대부분의 주변 디바이스(뿐만 아니라, 호스트 디바이스, 즉, HD)는 주변 디바이스를 자신의 초기 상태로 리셋하도록 하는 리셋 핀을 포함한다. 일부의 종래의 보안 시스템에서, HD 및 주변 디바이스(들)의 리셋 핀은 서로 연결된다. 이 방식으로, HD가 리셋될 때, 모든 주변 디바이스가 또한 리셋된다. 일부 경우에, 특정 주변 디바이스는 내부에 저장된 특정 데이터 또는 내부에 포함된 특정한 기능적 모듈에 어떤 보호를 제공하는 일시적 록킹 메커니즘(temporary locking mechanism)을 포함한다. 이와 같은 경우에, 리셋 시에 임의의 록을 클리어링하는 것이 종종 바람직하다. 이 방식으로, HD는 시스템이 리셋되는 시간까지 특정 주변 디바이스 상에서 록이 유지되는 것을 필요로 할 수 있다. 이 배열은 전형적으로 부트 로드가 부팅을 완료한 이후에 데이터(부트 이미지 코드(boot image code))가가 보호되는 부팅 시나리오에서 사용된다. 부트 이미지 코드는 자신이 저장되는 메모리가 록킹된 채로 유지되는 한(시스템이 리셋될 때까지, 즉 리부트(reboot)가 발생할 때까지) 보호된 채로 유지된다. 이 방식으로, 예를 들어, 버그(bug)를 고정시키는 것, 펌웨어를 갱신하는 것 등을 위하여 부트 로드만이 자신의 데이터를 갱신할 수 있다.
주변 디바이스를 록킹해제(unlocking)하는 것에 대한 종래의 방법은 HD 리셋 핀과 동일한 소스 또는 언제 리셋하는지를 관련된 주변 디바이스에 시그널링하는 HD 상의 외부 리셋 핀 중 하나에 연결되는 전용 주변 디바이스의 사용을 포함한다. 일부 경우에, 록을 클리어링하기 위해 주변 디바이스를 리셋하는 것의 유해한 영향 중 일부를 완화하기 위하여, 웜-리셋 핀(warm-reset pin)이 록을 클리어링하기 위해 부분적인 재-초기화를 수행하도록 주변 디바이스에 시그널링하는데 사용된다. 그러나, 이 경우에서도, 상당한 양의 오버헤드(overhead)가 필요하다. 다른 경우에, 소프트웨어는 록을 클리어링하는데 사용될 수 있는 명령 또는 명령의 시퀀스를 제공할 수 있다. 그러나, 이 방법은 공격에 취약하여, 제 1 장소에서 록을 제공하는 목적을 좌절시킨다.
여하튼, 리셋 핀에 의존하는 것은 주변 디바이스가 재-초기화되는데 상당한 양의 시간이 걸릴 수 있기 때문에 최적의 해결책이 아니다. 더구나, 주변 디바이스를 리셋하는 행위는 또한 너무 자주 수행되는 경우에 디바이스의 기능적 수명을 단축시킬 수 있다. 본 발명은 록 클리어 핀이라고 칭해는 록 리셋 핀을 제공함으로써 이러한 문제점을 회피한다. 주변 디바이스가 전체 또는 심지어 부분적인 재-초기화를 겪도록 하는 대신에, 록 리셋 핀은 주변 디바이스가 계속 정상적으로 동작하면서, 자신의 내부 록만을 클리어링하도록 한다. 록의 클리어링은 하드웨어의 사용에 의해 직접적으로 또는 소프트웨어에 의해 제공된 명령 또는 HD에 의해 제공된 신호의 형태를 취할 수 있는 단방향성 록 명령에 의해 활성화되는 펌웨어를 사용하여 록의 클리어링을 트리거(trigger)함으로써 성취될 수 있다. 이 방식으로, 단방향성 록 명령과 함께 록 리셋 핀은 주변 디바이스가 심지어 부분적인-재-초기화를 겪을 필요성을 최소화하면서, 주변 디바이스 내의 저장 디바이스 또는 임의의 다른 기능 상에서 데이터를 보호하는데 사용될 수 있는 "스티키 록(sticky lock)" 보호 메커니즘으로서 간주될 수 있다.
예를 들어, 스티키 록 보호 메커니즘을 사용하여, HD는 원격 공격에 대한 보호를 제공하기 위하여 기능 또는 에어리어(area)를 록킹할 수 있다. 이 배열에서, HD는 자신을 리셋함이 없이 록을 클리어링하기 위한 명령 또는 인터페이스를 가지지 않는다. 록 명령이 사실상 단방향성이기 때문에, HD의 보안이 바이러스와 같은 말웨어에 의해 성공적으로 침해되었을지라도, 보호된 기능/에어리어가 록킹해제될 수 없다. HD가 보호된 기능/에어리어에 액세스하는 유일한 방법은 보호된 기능/에어리어를 식별하기 위하여 리셋된 이후에 HD에 의해 나중에 사용될 수 있는 마크(mark)를 보호된 기능/에어리어와 관련시키는 것이다. 일단 이와 같은 마크가 세팅(setting)되면, HD(및 모든 관련된 주변 디바이스)가 자신을 리셋할 수 있다. 다음 세션에서, HD는 기능/에어리어를 다시 록킹하기 이전에 마크를 스폿(spot)할 수 있다. 이 방식으로, 일단 HD가 리셋되면, 임의의 바이러스 또는 공격자 도구가 HD CPU로부터 삭제되기 때문에, 원격 공격이 차단될 수 있다.
본원에서 논의된 저장 디바이스는 오디오(audio), 비디오(video), 또는 픽처 파일(picture file)과 같은 디지털 미디어(digital media)를 관리하는데 사용되는 보안 디지털(Secured Digital: SD) 메모리 카드 포맷과 같은 임의의 메모리 카드 포맷과 호환 가능할 수 있다. 이러한 저장 디바이스는 또한 멀티 미디어 카드(Multi Media Card: MMC) 메모리 카드 포맷, 콤팩트 플래시(Compact Flash: CF) 메모리 카드 포맷, 플래시 PC(예를 들어, ATA 플래시) 메모리 카드 포맷, 스마트-미디어 메모리 카드 포맷, 또는 임의의 다른 산업 표준 사양과 호환 가능할 수 있다. 이러한 메모리 카드의 하나의 공급자는 캘리포니아의 밀피타스에 있는 Sandisk Corporation이다. 비휘발성 메모리는 파워가 제거될 때에도 자신의 메모리 또는 저장된 상태를 유지한다. 저장 디바이스는 또한 전기적으로-소거 가능하고 프로그래밍 가능한 판독-전용 메모리(EEPROM), EPROM, MRAM, FRAM 강자성 및 자기 메모리를 포함하지만, 이에 제한되지 않는 다른 소거 가능하고 프로그래밍 가능한 메모리 기술에 적용될 수 있다. 저장 디바이스 구성이 제거 가능한 메모리의 유형에 의존하지 않고, 메모리가 플래시 메모리이든지 또는 또 다른 유형의 메모리이든지 간에, 임의의 유형의 메모리로 구현될 수 있다는 점에 주의한다. 저장 디바이스는 또한 1-회 프로그래밍 가능한(OTP) 메모리 칩 및/또는 3차원 메모리 칩 기술로 구현될 수 있다.
이와 같은 메모리 카드가 사용되는 호스트 시스템은 셀룰러 전화, 개인용 컴퓨터, 노트북 컴퓨터, 휴대형 컴퓨팅 디바이스, 카메라, 오디오 재생 디바이스, 및 제거 가능한 데이터 저장을 필요로 하는 다른 전자 디바이스를 포함한다. 플래시 EEPROM 시스템은 또한 호스트 시스템에서 임베딩(embedding)된 대용량 저장장치로서 사용된다. 상기 저장 디바이스는 PDA(개인용 디지털 보조장치들), 모바일 핸드셋, 또는 다른 다양한 전자 디바이스 상에 구현될 수 있는 로컬 프록시 시스템(local proxy system)의 부분일 수 있다. PDA는 전형적으로 몇 가지로 명명되는, 주소록(address book), 데일리 오거나이저(daily organizer) 및 전자 노트패드(electronic notepad)와 같은 다양한 개인 정보 관리 애플리케이션으로 구현된 사용자가 소유하는 컴퓨터 시스템으로서 공지된다.
본 발명은 이제 모두가 본 발명의 정신과 범위와 일치하는 특정 실시예에 의하여 설명될 것이다. 본원에 설명된 임의의 기능적 블록 또는 기능적 배열이 물리적 엔티티(physical entity) 또는 논리적 엔티티, 또는 이들 둘 모두의 조합으로서 구현될 수 있다는 점에 주의한다.
도 1은 본 발명의 특정 실시예를 설명하는 시스템(100)을 도시한다. 시스템(100)은 인터페이스(106)에 의하여 디바이스(104)에 접속되거나 디바이스(104)와 통신하는 호스트 디바이스(HD)(102)를 포함할 수 있다. HD(102)가 프로세서를 포함할 수 있지만, 간소화를 위해, HD(102)에 포함된 프로세서가 본 논의에서 도시되지도 언급되지도 않을 것이지만, 그럼에도 불구하고, 존재하는 것으로 가정된다는 점에 주의한다. HD(102)는 인터페이스(106)에 의하여 록 클리어 핀(110)에서 디바이스(104)와 통신하기 위하여 리셋 핀(108)으로서 HD(102)에 의해 사용될 수 있는 적어도 하나의 출력 핀(108)을 포함한다. 인터페이스(106)가 HD(102) 및 디바이스(104)가 기계적으로 접속될 수 있는 {소켓(socket) 또는 상호접속 버스(interconnecting bus)와 같은} 기계적 엔티티로서 구성될 수 있다는 점에 주의한다. 일부 실시예에서, 인터페이스(106)는 무선 인터페이스의 형태를 취할 수 있다. 디바이스(104)가 저장 디바이스(SD), 주변 디바이스(PD) 등과 같은 많은 형태를 취할 수 있다는 것이 고려된다. 디바이스(104)가 주변 디바이스인 경우에, PD(104)는 보호되어야 하는 펌웨어 등과 같은 관련 데이터를 저장하는데 사용되는 저장 에어리어를 포함한다. 디바이스(104)가 저장 디바이스인 경우에, SD(104)는 또한 공격에 대해 보호되어야 하는 (부트 이미지 코드와 같은) HD(102)에 의해 사용되는 코드를 저장하기 위하여 HD(102)에 의해 사용될 수 있다.
여하튼, 디바이스(104)가 본 발명의 일반성 또는 적용 가능성에서의 임의의 손실 없이 저장 디바이스(104)의 형태를 취한다고 본 논의의 나머지에서 가정될 것이다. 따라서, 저장 디바이스로서, 저장 디바이스(104)는 상대적으로 작은 폼 팩터(form factor)를 갖는 메모리 카드와 같은 제거 가능한 메모리 디바이스의 형태를 취할 수 있고, 카메라, 휴대형 또는 노트북 컴퓨터, 네트워크 카드, 네트워크 어플라이언스, 셋-톱 박스(set-top box), 휴대형 또는 다른 작은 오디오 플레이어/레코더(예를 들어, MP3 디바이스)와 같은 전자 제품에 대해 디지털 데이터를 저장하는데 사용될 수 있다. 메모리 카드의 예는, PC 카드(이전에, PCMCIA 디바이스), 플래시 카드(예를 들어, 콤팩트 플래시 유형 I 및 II), 보안 디지털(SD) 카드, 멀티미디어 카드(MMC), ATA 카드(예를 들어, 콤팩트 플래시 카드), 메모리 스틱, 스마트미디어 카드를 포함한다. 게다가, LSD 204는 캘리포니아의 밀피타스에 있는 Sandisk Corporation에 의해 제조된 SD 호환 가능한 iNANDTM 임베딩된 플래시 드라이브와 같은 제거 불가능한 메모리 디바이스의 형태를 취할 수 있다.
저장 디바이스(104)는 제어기(112) 및 데이터 저장 에어리어(114)를 포함할 수 있다. 데이터 저장 에어리어(114)는 인터페이스(106)를 사용하여 HD(102)에 의해 관리되는 적어도 하나의 대량 저장 에어리어(116)를 포함하도록 논리적으로 배열될 수 있다. 특히 유용한 배열에서, 대량 저장 에어리어(116)는 LBA 기반 대량 저장 에어리어일 수 있다. 대량 저장 에어리어(116)는 보호된 에어리어(118)를 포함하도록 논리적으로 분할될 수 있다. 보호된 에어리어(118)는 보호될 (부트 이미지 코드와 같은) 데이터를 저장하는데 사용될 수 있다. 보호된 에어리어(118) 내의 데이터는 보호된 에어리어(118)와 관련된 메모리 공간 내에 저장된 임의의 데이터의 임의의 변경(즉, 기록, 소거 등)을 금지함으로써 보호될 수 있다. 이와 같은 변경 금지는 제어기(122)에 의해 실행되는 펌웨어(112)에 포함된 내부 록킹 메커니즘(120)을 활성화함으로써 용이해질 수 있다. 이 방식으로, 내부 록킹 메커니즘(120)이 활성일 때, 보호된 에어리어(118)에 대응하는 메모리 공간으로 지향된 임의의 변경 명령이 제어기(112)에 의해 실행될 수 없다. 활성의 내부 록킹 메커니즘(120)을 릴리싱(releasing) 또는 클리어링함으로써만, 보호된 에어리어(118)와 관련된 메모리 공간에 지향된 임의의 변경 명령(W)이 제어기(112)에 의해 실행될 수 있다. 이 방식으로, 보호된 에어리어(118)에 저장된 임의의 데이터가 바이러스, 웜 등과 같은 말웨어 뿐만 아니라, 예를 들어, 데이터의 부분을 소거함으로써 일반적으로 데이터를 커럽팅(corrupting)하는 것에 대해 보호될 수 있다.
록 클리어 핀(110)이 (종래의 배열과 달리) 저장 디바이스(104)를 리셋함이 없이(그러나, 필요하다고 간주되는 경우에 초기화될 수 있음) 임의의 활성의 내부 록킹 메커니즘(120)을 클리어링하는데 사용될 수 있다는 점에 주의한다. 록 클리어 핀(110)은 록킹 메커니즘(120)이 제어기(112)에 포함된 내부 펌웨어(122)를 트리거함으로써 간접적으로 또는 직접적으로(신호 S) 클리어링되도록 할 수 있다. 여하튼, 록킹 메커니즘(120)을 클리어링하기 위하여, HD(102)는 자신(120)에 의해 제공된 록 클리어 명령(126)을 기반으로 하여 리셋 핀(108)에서 (단방향성) 리셋 신호(124)를 제공한다. 록킹 메커니즘(120)은 저장 디바이스(104)를 리셋함이 없이 클리어링될 수 있다. 이 방식으로, 록 클리어 명령(126)이 예를 들어, 소프트웨어 또는 다른 갱신 등을 제공하기 위하여 저장 디바이스(104)로의 HD(102)에 의한 액세스를 여전히 가능하게 하면서, 원격 공격에 대해 보호된 에어리어(118)에 저장된 데이터를 보호하기 위하여 단방향성 리셋 신호(124)와 함께 사용될 수 있다.
파워 업 이후의 임의의 포인트에서, 록킹 메커니즘(120)을 사용하여 저장 디바이스 내의 (저장 에어리어(118)와 같은) 지정된 저장 에어리어 또는 (주변 디바이스 내의) 기능을 록킹하도록 HD(102)가 저장 디바이스(104)에 요청할 수 있다는 점에 주의한다. 일단 지정된 기능 또는 저장 에어리어가 록킹되면, 그와 같이 보호된 기능(또는 임의의 데이터)이 변경될 수 없다. 설명된 실시예에서, HD(102)는 또한 보호된 저장 에어리어 또는 기능을 나중에 식별하는데 사용되는 영구적인 마크(128)를 제공할 수 있다. 예를 들어, HD(102)가 저장 디바이스(104)가 보호된 메모리 에어리어(118)를 록킹하도록 하였던 경우에, HD(102)는 또한 영구적인 마크(128)를 보호된 에어리어(118)에 마킹할 수 있다. 영구적인 마크(128)는 예를 들어, 모든 록을 클리어링하는 시스템 리셋(즉, HD(102)가 자신을 리셋하는 것) 이후에 록킹 메커니즘(120)의 재-활성화 이전에 변경될 에어리어(118)에 저장된 데이터를 식별하기 위하여 HD(102)에 의해 (시스템 리셋 이후 또는 재-록킹되기 이전에) 사용될 수 있다. 예를 들어, 시스템 리셋 이후에, 재시작 시에, HD(102)는 임의의 세트의 영구적인 마커를 찾을 수 있고, 록킹 메커니즘(120)을 활성화하기 이전에 임의의 관련된 기능/에어리어를 갱신할 수 있다. 이 방식으로, HD(102)는 일단 HD가 리셋되면, 임의의 바이러스 또는 공격자 도구가 HD(102)로부터 삭제되기 때문에, 원격 공격으로부터 저장 디바이스에 저장된 데이터 또는 주변 디바이스 내의 기능을 보호할 수 있다.
도 2와 3은 본 발명을 구현하는데 사용되는 시스템(100)의 추가 구성을 도시한다. 예를 들어, 도 2는 본 발명의 또 다른 실시예에 따른 시스템(200)을 도시한다. 시스템(200)은 다수의 주변 디바이스(PD)(202 내지 206)에 접속된 HD(201)를 포함한다. 외부 리셋 스위치(reset switch)(208)는 HD(201)의 리셋 핀(210) 및 PD)(202 내지 206)의 록 클리어 핀(212, 214, 및 216)에 각각 접속된다. 이 방식으로, 록 클리어가 HD(201)에 의해 발생될 때, PD(202 내지 206)이 동시에 클리어링된다. 상술된 바와 같이, 록 클리어 핀이 각각 임의의 수신된 리셋 신호를 관련된 주변 디바이스(또는 저장 디바이스)를 리셋하지 않는 록 클리어 신호로서 수용하기 때문에, 록 클리어 핀(212 및 214)이 종래의 리셋 핀이 아니라는 점에 주의한다.
도 3은 (도 2에 도시된 직접적인 접속과 대조적으로) PD(202 내지 206)의 리셋 핀(212 내지 216)이 각각 HD(304)의 리셋 출력 핀(302)에 접속되는 시스템(300)을 도시한다. 이 방식으로, 소프트 리셋(soft reset)이 HD(304)에 의해 실행되는 소프트웨어에 의해 발생될 수 있다. 상술된 바와 같이, 록 클리어 핀이 각각 임의의 수신된 리셋 신호를 관련된 주변 디바이스(또는 저장 디바이스)를 리셋하지 않는 록 클리어 신호로서 수용하기 때문에, 록 클리어 핀(212 및 214)이 종래의 리셋 핀이 아니라는 점에 주의한다.
본 발명의 추가 실시예가 도 4 및 5를 참조하여 이하에 논의된다. 그러나, 당업자는 본 발명이 이러한 제한된 실시예를 넘어서 확장되기 때문에, 도 4 및 5과 관련하여 본원에 제공된 상세한 설명이 설명적인 목적을 위한 것이라는 점이 용이하게 인식될 것이다. 제 1 및 제 2 핀이 일부 실시예에서, 클라이언트 디바이스 사이의 인터럽트 정보의 통과를 용이하게 하는데 사용되는 제 1 및 제 2 인터럽트 핀으로서 동작한다는 점에 주의한다. 그러나, 본 논의의 상황에서, 데이지 체인된 디바이스의 그룹에서의 적어도 제 1 디바이스가 상술된 라인을 따라 단방향성 록 명령을 수신하도록 배열되는 록 클리어 핀의 형태를 취하는 제 1 핀을 갖는 부팅 가능한 디바이스이다.
도 4는 본 발명의 추가 실시예에 따른 시스템(400)의 간소화된 배선도를 도시한다. 시스템(400)은 호스트 디바이스(HD)(404)를 (예를 들어, 보안 디지털(SD) 메모리 카드와 같은 메모리 저장 디바이스의 형태를 취할 수 있는) 복수의 클라이언트 디바이스(406, 408, 및 410)에 접속시키는데 사용되는 {버스(402)라고 칭해지는} 다수의 신호 라인(402)을 포함한다. 3개의 클라이언트 디바이스(406, 408 및 410)만이 도시되어 있을지라도, 시스템(400) 내에 임의의 수의 클라이언트 디바이스가 존재할 수 있다는 것이 인식될 수 있다는 점에 주의한다. 클라이언트 디바이스 각각은 다수의 I/O 핀(412)을 포함하고, 상기 다수의 I/O 핀 중 선택된 I/O 핀이 클라이언트 디바이스 중 관련된 클라이언트 디바이스를 버스(402)에 전기적으로 접속시키는데 사용된다. I/O 핀(412) 이외에, 각각의 클라이언트 디바이스는 관련된 클라이언트 디바이스의 인터럽트 상태를 나타내는 것과 같은 정보를 하나의 클라이언트 디바이스로부터 또 다른 클라이언트 디바이스로 통과시키기 위하여 함께 사용될 수 있는 적어도 제 1 및 제 2 핀을 포함한다. 설명된 실시예에서, 제 1 및 제 2 핀은 버스(402)와 별도의 데이지 체인 배열로 부팅 가능한 클라이언트 디바이스(406)의 형태를 취하는 제 1 클라이언트 디바이스를 클라이언트 디바이스(408 및 410)를 접속시키는데 사용될 수 있다. 데이지 체인 배열에 의하여, 하나의 클라이언트 디바이스의 제 1 (입력) 핀이 이웃하는 클라이언트 디바이스의 제 2 (출력) 핀에 전기적으로 접속하게 된다.
부팅 가능한 클라이언트 디바이스(406)가 리셋 핀(108)에서 HD(404)에 의해 제공되는 (UN-SET, 또는 LOW로서의) 록 클리어 신호를 호스트 리셋 라인(430)에 의해 수신할 뿐만 아니라, SET 값(또는 HIGH)으로 세팅되도록 배열되는 록 클리어 핀(110)을 포함할 수 있다는 점에 주의한다. 이 방식으로, 록 클리어 핀(110)은 공동-계류중인 미국 특허 출원 번호 제11/928,110호에서 설명되는 초기화를 용이하게 할 뿐만 아니라, 본 특허 출원의 주제인 스티키 록킹 메커니즘을 용이하게 하는데 사용될 수 있다. 그러므로, 제 1 부팅 가능한 디바이스(406)의 제 1 핀에 이중 사용을 할당함으로써, 클라이언트 디바이스(406)에 대해 추가 핀이 필요하지 않아서, 그렇지 않은 경우에 필요한 비용을 상당히 감소시킨다. 도 4의 배열에 의해 제공되는 장점 중 또 다른 장점은 클라이언트 디바이스(406)가 부팅 가능한 클라이언트 디바이스이기 때문에, HD(404)에 의해 개시된 임의의 부트 시퀀스가 제 1 부팅 가능한 클라이언트 디바이스(406)와 데이지 체인 배열로 접속된 다른 클라이언트 디바이스(즉, 408 및 410) 중 어느 하나를 무시할 수 있다는 것이다. HD(404)가 리셋되고 록 클리어 핀(110)이 어서팅될 때, 클라이언트 디바이스(406)가 단지 자신의 록을 클리어링하고, 클라이언트 디바이스(406)의 리셋을 발생시키지 않는다는 점에 주의하는 것이 중요하다. 이 방식으로, 클라이언트 디바이스(406)가 계속 정상으로서 동작할 것이며, 핀(110)의 어서션(assertion)이 단지 록을 클리어링하는데 사용되는 이벤트(event)를 트리거한다.
도 5는 본 발명의 실시예에 따른 타이밍도(500)를 도시한다. 동작 동안, 리셋이 어서팅되지 않고 HD(404)가 동작적일 때, 핀(110)이 클라이언트 디바이스(406)가 활성이고 버스(402)와 통신할 수 있다는 것을 표시하는 SET에 있다. 그러나, HD(404)가 리셋 상태일 때, 핀(110)이 어서팅되고 (즉, NOT-SET 또는 LOW), 명령이 버스(402) 상에서 송신될 수 없다. 디바이스(406)가 핀(110)이 어서팅되었다고(즉, LOW) 결정할 때, 디바이스(406)는 록을 클리어링한다. 디바이스(406)가 핀(110)이 어서팅된 이후의 임의의 적절한 시간에 록을 클리어링할 수 있다는 점에 주의한다. 예를 들어, 디바이스(406)는 핀(110)의 로우 상태의 끝에서 또는 핀(110)이 어서팅된 이후의 소정의 시간 길이 이후에 록을 클리어링할 수 있다. 핀(110)을 호스트 리셋 라인(430)에 접속시킴으로써, 클라이언트 디바이스(406)는 자신이 리셋 논리에 접속되는지를 검출할 수 있으므로, HD(404)가 리셋 상태에 있다고 추론할 수 있다. 리셋 논리를 검출함으로써, 디바이스(406)는 HD(404)로부터 명령을 대기함이 없이 자신의 내부 초기화를 시작할 수 있다. 이 방식으로, HD(404)가 동작을 시작하고, 디바이스(406)의 드라이버(driver)에 이르고, 디바이스(406)가 자신의 초기화를 시작하는데 걸리는 시간이 절약될 수 있다. 이 시간 절약은 클라이언트 디바이스(406)가 부트 디바이스일 때 부트 시간을 상당히 감소시킬 수 있다.
본 발명이 버스와 별도의 록 클리어 핀을 갖는 데이지 체인 유형 아키텍처(daisy chain typs bus architecture)를 기반으로 한 실시예를 사용하여 설명되었을지라도, 본 발명은 다른 유형의 버스 아키텍처에 적합하다. 이와 같은 버스 아키텍처는 (인터럽트가 통과되는 방식과 관계없이) 하나의 디바이스로부터 또 다른 디바이스로 인터럽트를 통과시키도록 구성되는 것을 포함하고, (예를 들어, 이진 탐색을 사용한 그 다음의 인터럽트 탐색을 용이하게 하기 위하여) 인터럽트가 이들을 통과하였다는 것을 기억한다.
본 발명이 임의의 유형의 클라이언트 디바이스 또는 임의의 유형의 클라이언트 디바이스의 혼합에 사용될 수 있다는 것이 고려된다는 점에 주의한다. 예를 들어, 클라이언트 디바이스는 사실상 고정되거나 제거 가능할 수 있는 데이터 저장 디바이스, 통신 디바이스, 감지 디바이스 등을 포함할 수 있다. 이와 같은 디바이스는 Bluetooth®, GPS, 및 WiFi(802.11b,g) 등과 같은 SD 카드 슬롯(SD card slot)을 갖는 디바이스의 기능을 확장시키는 인터페이스로서 사용되는 SDIO(입력/출력) 카드를 포함할 수 있다. 데이터 저장 디바이스는 멀티 미디어 카드(MMC) 및 보안 디지털(SD) 카드와 같은 비휘발성 메모리를 포함할 수 있다. 이러한 디바이스는 또한 이들이 인터럽트를 발생시키는지(예를 들어, SDIO 디바이스) 또는 인터럽트를 발생시키지 않는지(예를 들어, SD 메모리 디바이스)의 여부에 따라 그룹화될 수 있다. 이 방식으로, 임의의 인터럽트 소스를 탐색하는 것이 시간 및 컴퓨팅 자원 둘 모두에서 효율적으로 행해질 수 있다.
본 발명은 또한 상술된 바와 같은 메모리 시스템을 포함하는 전자 시스템에 관한 것일 수 있다. 메모리 시스템(즉, 메모리 카드들)은 다양한 전자 제품과 함께 사용하기 위하여 디지털 데이터를 저장하는데 통용된다. 메모리 시스템은 종종 전자 시스템으로부터 제거 가능해서, 저장된 디지털 데이터가 휴대용이다. 본 발명에 따른 메모리 시스템은 상대적으로 작은 폼 팩터를 가질 수 있고, 카메라, 휴대형 또는 노트북 컴퓨터, 네트워크 카드, 네트워크 어플라이언스, 셋-톱 박스, 휴대형 또는 다른 작은 매체(예를 들어, 오디오) 플레이어/레코더(예를 들어, MP3 디바이스), 및 의료 모니터와 같이, 데이터를 취득하는 전자 제품에 대한 디지털 데이터를 저장하는데 사용될 수 있다.
본 발명의 많은 특징 및 장점은 기록된 설명으로부터 명백해지므로, 첨부된 청구항이 본 발명의 모든 이와 같은 특징과 장점을 커버하도록 의도된다. 또한, 다수의 변경 및 변화는 당업자에게 용이하게 발생할 것이기 때문에, 본 발명을 설명 및 기술된 바와 같은 정확한 구성 및 동작으로 제한하는 것이 바람직하지 않다. 그러므로, 모든 적절한 변경 및 등가물은 본 발명의 범위 내에 존재하는 것으로 재분류될 수 있다.
Claims (24)
- 방법에 있어서,
클라이언트 디바이스에서 호스트 디바이스로부터 록 클리어 신호를 수신하는 단계와,
상기 클라이언트 디바이스에 의해 수신된 록 클리어 신호를 사용하여, 상기 클라이언트 디바이스의 적어도 보호된 부분에 저장된 데이터의 변경을 방지하는데 사용되는 록을 클리어링하는 단계를
포함하고,
상기 클라이언트 디바이스는 완전히 동작적으로 유지되는, 방법. - 제 1항에 있어서, 상기 클라이언트 디바이스가 상기 록을 클리어링할 때, 상기 클라이언트 디바이스는 임의의 리셋 프로세스를 겪지 않는, 방법.
- 제 2항에 있어서, 상기 호스트 디바이스에 의해 영구적인 마크를 상기 클라이언트 디바이스의 상기 보호된 부분과 관련시키는 단계를 더 포함하는, 방법.
- 제 3항에 있어서, 상기 호스트 디바이스에 의해 컴퓨팅 시스템 내의 모든 록을 클리어링하는 단계를 포함하는, 방법.
- 제 4항에 있어서, 상기 컴퓨팅 시스템 내의 모든 록을 클리어링하는 단계는,
상기 호스트 디바이스를 리셋하는 단계와,
상기 호스트 디바이스의 리셋에 응답하여 상기 컴퓨팅 시스템 내의 모든 클라이언트 디바이스를 리셋하는 단계를
포함하는, 방법. - 제 5항에 있어서, 상기 리셋 이후에 상기 호스트 디바이스가 초기화되었던 이후에, 상기 영구적인 마크와 관련된 상기 클라이언트 디바이스의 부분의 위치를 결정하는 단계를 더 포함하는, 방법.
- 제 6항에 있어서, 상기 호스트 디바이스에 의해 상기 클라이언트 디바이스의 부분을 갱신하는 단계를 포함하는, 방법.
- 제 7항에 있어서, 상기 갱신된 부분을 록킹하는 단계를 포함하는, 방법.
- 컴퓨팅 시스템에 있어서,
호스트 디바이스와 통신하는 클라이언트 디바이스를 포함하고, 상기 클라이언트 디바이스는 상기 호스트 디바이스로부터 록 클리어 신호를 수신하고, 상기 수신된 록 클리어 신호를 사용하여 상기 클라이언트 디바이스의 적어도 보호된 부분에 저장된 데이터의 변경을 방지하는데 사용된 록을 클리어링하도록 배열되고, 상기 클라이언트 디바이스는 완전히 동작적으로 유지되는, 컴퓨팅 시스템. - 제 9항에 있어서, 상기 클라이언트 디바이스가 상기 록을 클리어링할 때, 상기 클라이언트 디바이스는 임의의 리셋 프로세스를 겪지 않는, 컴퓨팅 시스템.
- 제 10항에 있어서, 상기 호스트 디바이스는 영구적인 마크를 상기 클라이언트 디바이스의 보호된 부분과 관련시키는, 컴퓨팅 시스템.
- 제 11항에 있어서, 상기 호스트 디바이스는 상기 컴퓨팅 시스템 내의 모든 록을 클리어링하는, 컴퓨팅 시스템.
- 제 12항에 있어서, 상기 컴퓨팅 시스템 내의 모든 록은 상기 호스트 디바이스를 리셋하고 상기 호스트 디바이스의 리셋에 응답하여 상기 컴퓨팅 시스템 내의 모든 클라이언트 디바이스를 리셋함으로써 클리어링되는, 컴퓨팅 시스템.
- 제 13항에 있어서, 상기 호스트 디바이스가 리셋된 이후에 새로운 세션을 시작한 이후에, 상기 호스트 디바이스는 상기 영구적인 마크와 관련된 상기 클라이언트 디바이스의 부분의 위치를 결정하는, 컴퓨팅 시스템.
- 제 14항에 있어서, 상기 호스트 디바이스는 상기 영구적인 마크와 관련된 상기 클라이언트 디바이스의 부분을 갱신하는, 컴퓨팅 시스템.
- 제 15항에 있어서, 상기 호스트 디바이스가 상기 부분을 갱신한 이후에, 상기 호스트 디바이스는 상기 갱신된 부분을 보호된 부분으로 록킹함으로써 상기 갱신된 부분을 보호하는, 컴퓨팅 시스템.
- 컴퓨팅 시스템에 있어서,
적어도 하나의 신호 라인에 의해 호스트 시스템에 각각 접속되는 복수의 클라이언트 디바이스를
포함하고,
상기 클라이언트 디바이스 각각은,
다수의 I/O 핀으로서, 상기 다수의 I/O 핀 중 선택된 I/O 핀은 상기 적어도 하나의 신호 라인에 접속되는, 다수의 I/O 핀과,
제 1 및 제 2 핀으로서, 상기 복수의 클라이언트 디바이스의 거의 제 1 및 최종 클라이언트 디바이스가 상기 적어도 하나의 신호 라인과 별도의 상기 제 1 및 제 2 핀에 의하여 데이지 체인 배열(daisy chain arrangement)로 서로 접속되고, 적어도 상기 제 1 클라이언트 디바이스는 상기 제 2 핀에 의해서만 상기 데이지 체인 배열에 접속되는 부팅 가능한 클라이언트 디바이스이며, 상기 제 1 디바이스의 상기 제 1 핀은 리셋 라인에 의해 상기 호스트 컴퓨터의 리셋 핀에 접속되고, 상기 최종 클라이언트 디바이스는 제 1 핀에 의해서만 상기 데이지 체인에 접속되며, 상기 복수의 클라이언트 디바이스 중 최종 클라이언트 디바이스의 제 2 핀은 상기 적어도 하나의 신호 라인과 별도의 인터럽트 신호 라인에 의하여 상기 호스트 컴퓨터에 접속되고, 상기 리셋 라인이 어서팅될 때, 상기 제 1 클라이언트 디바이스는 상기 부팅 가능한 클라이언트 디바이스의 적어도 보호된 부분에 저장된 데이터의 변경을 방지하는데 사용되는 록을 클리어링하고, 상기 부팅 가능한 클라이언트 디바이스는 임의의 리셋 프로세스를 겪지 않는, 상기 제 1 및 제 2 핀을
포함하는, 컴퓨팅 시스템. - 제 17항에 있어서, 상기 호스트 디바이스는 영구적인 마크를 상기 부팅 가능한 클라이언트 디바이스의 보호된 부분과 관련시키는, 컴퓨팅 시스템.
- 제 18항에 있어서, 상기 호스트 디바이스는 상기 컴퓨팅 시스템 내의 모든 록을 클리어링하는, 컴퓨팅 시스템.
- 제 19항에 있어서, 상기 컴퓨팅 시스템 내의 모든 록은 상기 호스트 디바이스를 리셋 상태로 배치하여, 상기 호스트 디바이스와 모든 클라이언트 디바이스가 리셋되도록 함으로써 클리어링되는, 컴퓨팅 시스템.
- 제 20항에 있어서, 상기 호스트 디바이스가 리셋된 이후에 새로운 세션을 시작한 이후에, 상기 호스트 디바이스는 상기 영구적인 마크와 관련된 클라이언트 디바이스의 부분의 위치를 결정하는, 컴퓨팅 시스템.
- 제 21항에 있어서, 상기 호스트 디바이스는 상기 영구적인 마크와 관련된 상기 클라이언트 디바이스의 부분을 갱신하는, 컴퓨팅 시스템.
- 제 22항에 있어서, 상기 호스트 디바이스가 상기 부분을 갱신한 이후에, 상기 호스트 디바이스는 상기 갱신된 부분을 보호된 부분으로 록킹함으로써 상기 갱신된 부분을 보호하는, 컴퓨팅 시스템.
- 제 20항에 있어서, 제 1 부팅 가능한 클라이언트 디바이스가 상기 호스트 디바이스가 리셋 상태에 있다고 결정할 때, 상기 제 1 부팅 가능한 클라이언트 디바이스는 상기 호스트 디바이스에 의해 초기화를 개시하도록 명령받지 않고 초기화를 개시하는, 컴퓨팅 시스템.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/100,917 US7953913B2 (en) | 2008-04-10 | 2008-04-10 | Peripheral device locking mechanism |
US12/100,917 | 2008-04-10 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20110016874A true KR20110016874A (ko) | 2011-02-18 |
KR101622416B1 KR101622416B1 (ko) | 2016-05-18 |
Family
ID=40718630
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020107024077A KR101622416B1 (ko) | 2008-04-10 | 2009-03-30 | 주변 디바이스 록킹 메커니즘 |
Country Status (6)
Country | Link |
---|---|
US (1) | US7953913B2 (ko) |
EP (1) | EP2263187B1 (ko) |
JP (1) | JP5514189B2 (ko) |
KR (1) | KR101622416B1 (ko) |
TW (1) | TWI386828B (ko) |
WO (1) | WO2009126471A2 (ko) |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090307389A1 (en) * | 2008-06-10 | 2009-12-10 | Sandisk Corporation | Switchable access states for non-volatile storage devices |
US20090310760A1 (en) * | 2008-06-17 | 2009-12-17 | Judith Neely Coltman | Audio Message Recorder with Flexible Control |
US20100011350A1 (en) * | 2008-07-14 | 2010-01-14 | Zayas Fernando A | Method And System For Managing An Initial Boot Image In An Information Storage Device |
US8245024B2 (en) * | 2009-08-21 | 2012-08-14 | Micron Technology, Inc. | Booting in systems having devices coupled in a chained configuration |
US8572334B2 (en) * | 2010-04-23 | 2013-10-29 | Psion, Inc. | System and method for locking portions of a memory card |
US9098465B1 (en) * | 2012-03-01 | 2015-08-04 | Amazon Technologies, Inc. | Hosting architecture with configuration modified functionality for components by utilizing hardware latches to prevent further modifications based on a trust level associated with the components |
US9032196B1 (en) | 2012-03-01 | 2015-05-12 | Amazon Technologies, Inc. | Management of components in a hosting architecture |
US9032197B1 (en) | 2012-03-01 | 2015-05-12 | Amazon Technologies, Inc. | Management of components in a hosting architecture |
US9032198B1 (en) | 2012-03-01 | 2015-05-12 | Amazon Technologies, Inc. | Management of components in a hosting architecture |
US9158326B1 (en) * | 2012-06-28 | 2015-10-13 | Amazon Technologies, Inc. | Hosting architecture |
US9727277B2 (en) | 2012-12-21 | 2017-08-08 | Sandisk Technologies Llc | Storage device and method for enabling hidden functionality |
US9552385B2 (en) * | 2013-08-12 | 2017-01-24 | Atmel Corporation | Centralized peripheral access protection |
US11210238B2 (en) | 2018-10-30 | 2021-12-28 | Cypress Semiconductor Corporation | Securing data logs in memory devices |
KR20210156309A (ko) * | 2019-11-27 | 2021-12-24 | (주)나무소프트 | 랜섬웨어 또는 피싱 공격 차단 방법 및 시스템 |
US11429166B2 (en) * | 2020-01-27 | 2022-08-30 | Dell Products L.P. | System and method for managing device updates |
US11314521B2 (en) | 2020-01-27 | 2022-04-26 | Dell Products L.P. | System and method for managing component updates |
US11237837B2 (en) | 2020-01-27 | 2022-02-01 | Dell Products L.P. | System and method for managing devices during reboot |
Family Cites Families (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH02189661A (ja) * | 1989-01-18 | 1990-07-25 | Oval Eng Co Ltd | メモリの書き込み保護方式 |
JP3512252B2 (ja) * | 1994-11-02 | 2004-03-29 | 大日本印刷株式会社 | Cpuを内蔵した情報記録媒体 |
JP3894579B2 (ja) * | 1996-09-20 | 2007-03-22 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | 多用途多ソース割り込み構成を有するソリッドステートデータプロセッサ |
US6031757A (en) * | 1996-11-22 | 2000-02-29 | Macronix International Co., Ltd. | Write protected, non-volatile memory device with user programmable sector lock capability |
US6223284B1 (en) | 1998-04-30 | 2001-04-24 | Compaq Computer Corporation | Method and apparatus for remote ROM flashing and security management for a computer system |
US6154819A (en) * | 1998-05-11 | 2000-11-28 | Intel Corporation | Apparatus and method using volatile lock and lock-down registers and for protecting memory blocks |
US7036738B1 (en) * | 1999-05-03 | 2006-05-02 | Microsoft Corporation | PCMCIA-compliant smart card secured memory assembly for porting user profiles and documents |
US7069452B1 (en) | 2000-07-12 | 2006-06-27 | International Business Machines Corporation | Methods, systems and computer program products for secure firmware updates |
US6731536B1 (en) * | 2001-03-05 | 2004-05-04 | Advanced Micro Devices, Inc. | Password and dynamic protection of flash memory data |
US20020157010A1 (en) * | 2001-04-24 | 2002-10-24 | International Business Machines Corporation | Secure system and method for updating a protected partition of a hard drive |
US7043581B1 (en) * | 2001-05-10 | 2006-05-09 | Advanced Micro Devices, Inc. | Resource sequester mechanism |
JP2003233534A (ja) | 2002-02-07 | 2003-08-22 | Hitachi Ltd | メモリシステム |
US20030154392A1 (en) | 2002-02-11 | 2003-08-14 | Lewis Timothy A. | Secure system firmware using interrupt generation on attempts to modify shadow RAM attributes |
US7107460B2 (en) * | 2002-02-15 | 2006-09-12 | International Business Machines Corporation | Method and system for securing enablement access to a data security device |
US7395420B2 (en) * | 2003-02-12 | 2008-07-01 | Intel Corporation | Using protected/hidden region of a magnetic media under firmware control |
WO2004084231A1 (en) | 2003-03-19 | 2004-09-30 | Koninklijke Philips Electronics N.V. | Universal memory device having a profil storage unit |
JP2004326425A (ja) * | 2003-04-24 | 2004-11-18 | Toshiba Corp | 情報処理装置およびメモリカード |
JP4366130B2 (ja) * | 2003-07-17 | 2009-11-18 | 株式会社リコー | ソフトウェア違法コピー防止システム |
US20060080517A1 (en) | 2003-11-14 | 2006-04-13 | Brown Christopher L T | Accessing a protected area of a storage device |
US7418545B2 (en) * | 2004-10-28 | 2008-08-26 | Intel Corporation | Integrated circuit capable of persistent reservations |
US20080046997A1 (en) * | 2006-08-21 | 2008-02-21 | Guardtec Industries, Llc | Data safe box enforced by a storage device controller on a per-region basis for improved computer security |
-
2008
- 2008-04-10 US US12/100,917 patent/US7953913B2/en active Active
-
2009
- 2009-03-30 WO PCT/US2009/038821 patent/WO2009126471A2/en active Application Filing
- 2009-03-30 KR KR1020107024077A patent/KR101622416B1/ko not_active IP Right Cessation
- 2009-03-30 EP EP09730957.9A patent/EP2263187B1/en active Active
- 2009-03-30 JP JP2011504055A patent/JP5514189B2/ja not_active Expired - Fee Related
- 2009-04-09 TW TW098111859A patent/TWI386828B/zh not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
JP5514189B2 (ja) | 2014-06-04 |
WO2009126471A3 (en) | 2009-12-03 |
EP2263187A2 (en) | 2010-12-22 |
US20090259784A1 (en) | 2009-10-15 |
KR101622416B1 (ko) | 2016-05-18 |
EP2263187B1 (en) | 2016-03-30 |
WO2009126471A2 (en) | 2009-10-15 |
TW200949605A (en) | 2009-12-01 |
US7953913B2 (en) | 2011-05-31 |
TWI386828B (zh) | 2013-02-21 |
JP2011519451A (ja) | 2011-07-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101622416B1 (ko) | 주변 디바이스 록킹 메커니즘 | |
KR102095614B1 (ko) | 메모리 보호 | |
KR101626397B1 (ko) | Bios 플래시 어택 보호 및 통지 | |
JP5889933B2 (ja) | コンピュータの動作不良を防止する方法、コンピュータ・プログラムおよびコンピュータ | |
EP2652666B1 (en) | Storage drive based antimalware methods and apparatuses | |
EP2874091B1 (en) | Partition-based apparatus and method for securing bios in a trusted computing system during execution | |
EP2874092B1 (en) | Recurrent BIOS verification with embedded encrypted hash | |
US20150227743A1 (en) | Portable media system with virus blocker and method of operation thereof | |
CN111226215B (zh) | 透明附接的闪存存储器安全性 | |
CN110968254B (zh) | 一种非易失性存储器的分区保护方法及装置 | |
CN102436559A (zh) | 一种状态切换方法及系统 | |
US10049217B2 (en) | Event-based apparatus and method for securing bios in a trusted computing system during execution | |
US20090300307A1 (en) | Protection and security provisioning using on-the-fly virtualization | |
KR20150139420A (ko) | 스토리지 시스템 및 그것의 보안 쓰기 방지 수행 방법 | |
WO2006119233A2 (en) | Method for securing computers from malicious code attacks | |
JP5241065B2 (ja) | 外部メモリに貯蔵されたデータの変更の有無をチェックする装置及び方法 | |
JP2009176147A (ja) | 電子機器および電子機器のメモリアクセス許可判別方法 | |
TWI741271B (zh) | 資料保護方法以及相關儲存裝置 | |
US20240054250A1 (en) | Method and system for dynamically updating stack canary | |
CN112580023B (zh) | 影子栈管理方法及装置、介质、设备 | |
CN101340426B (zh) | 一种整合数据传输接口的系统和方法 | |
CN106919856B (zh) | 安全移动终端 | |
KR100856467B1 (ko) | 컴퓨터 바이러스 보호시스템 및 방법 | |
CN112417528A (zh) | 用来管理支持数据存储的安全程序库的方法与电子装置 | |
JP2009211245A (ja) | フラッシュメモリ制御システムおよび制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
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 | ||
LAPS | Lapse due to unpaid annual fee |