KR100621613B1 - 보안 기능을 갖는 컴퓨터 시스템 - Google Patents

보안 기능을 갖는 컴퓨터 시스템 Download PDF

Info

Publication number
KR100621613B1
KR100621613B1 KR1019990028929A KR19990028929A KR100621613B1 KR 100621613 B1 KR100621613 B1 KR 100621613B1 KR 1019990028929 A KR1019990028929 A KR 1019990028929A KR 19990028929 A KR19990028929 A KR 19990028929A KR 100621613 B1 KR100621613 B1 KR 100621613B1
Authority
KR
South Korea
Prior art keywords
password
bios
stored
computer system
input
Prior art date
Application number
KR1019990028929A
Other languages
English (en)
Other versions
KR20010010189A (ko
Inventor
신금호
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1019990028929A priority Critical patent/KR100621613B1/ko
Publication of KR20010010189A publication Critical patent/KR20010010189A/ko
Application granted granted Critical
Publication of KR100621613B1 publication Critical patent/KR100621613B1/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
    • 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/51Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems at application loading time, e.g. accepting, rejecting, starting or inhibiting executable software based on integrity or source reliability

Landscapes

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

Abstract

개시되는 컴퓨터 시스템은 패스워드 모듈(password module), 바이오스 롬(BIOS ROM) 및 데이터 처리 수단(data processing means)을 포함한다. 상기 패스워드 모듈은 패스워드가 저장된 불-휘발성 메모리(non-volatile memory)를 포함하고, 상기 바이오스 롬은 패스워드 검사 루틴이 저장된 읽기 전용의 부트 블록 영역과 바이오스(BIOS; Basic Input Output System) 프로그램 코드가 저장된 메인 블록 영역 갖는다. 상기 데이터 처리 수단은 상기 부트 블록 영역에 저장된 패스워드 검사 프로그램 루틴을 실행하고, 사용자가 입력한 패스워드와 상기 패스워드 모듈에 저장된 패스워드가 일치되는 경우 상기 메인 블록 영역의 바이오스 프로그램 코드를 실행하여 컴퓨터 시스템을 부팅 시킨다.

Description

보안 기능을 갖는 컴퓨터 시스템{a computer system with security function}
도 1은 본 발명의 실시예에 따른 컴퓨터 시스템의 구성을 보여주는 블록도;
도 2는 도 1의 바이오스 롬의 상세 구조를 보여주는 도면; 그리고
도 3은 도 2의 패스워드 검사 루틴의 플로우 챠트이다.
*도면의 주요 부분에 대한 부호의 설명*
10: CPU 20: RTC(Real Time Clock)
30: 배터리 40: 바이오스 롬
50: 입출력 컨트롤러 60: 패스워드 모듈
70: 디스플레이 컨트롤러 80: 디스플레이
90: 입력 장치
본 발명은 펌웨어(firmware)를 갖는 시스템의 보안 기술에 관한 것으로, 구체적으로는 퍼스널 컴퓨터(Personal computer)와 같은 일반적인 컴퓨팅 시스템에 구비되는 바이오스(BIOS; Basic Input Output System)와 같은 펌웨어를 구비하는 시스템에 관한 것이다.
일반적으로 컴퓨터 시스템, 자동화 기기, 셀룰러 전화기 등에는 대부분이 펌웨어가 내장된다. 전형적인 펌웨어로는 퍼스널 컴퓨터와 같은 일반적인 컴퓨팅 시스템에 구비되는 바이오스(BIOS; Basic Input Output System)가 있다. 이 BIOS는 컴퓨터 시스템에서 가장 중요한 원소중의 하나인 부트-업 펌웨어(boot up firmware)이다. 전형적으로 불-휘발성 메모리에 저장되는 바이오스는 기계 코드(machine code)로서, 이는 컴퓨터 시스템의 CPU(Central Processing Unit)가 초기화(initialization), 진단(diagnostics), 저장 매체(mass storage)로부터 운영 시스템 커널(operating system kernel)을 로딩, 그리고 입력/출력 기능 루틴과 같은 작업을 수행하도록 한다.
바이오스 코드가 저장된 불-휘발성 메모리는 일반적으로 바이오스 롬(Read Only Memory)이라 불리 운다. 바이오스 롬은 메인보드(main board)에 장착된다. 최근 바이오스 롬으로 사용되는 메모리는 플래시 메모리(flash memory)가 주류를 이룬다. 바이오스 롬으로 사용되는 플래시 메모리는 크게 두 개의 저장 영역으로 구분이 된다. 하나는 부트 블록(boot block)이고 다른 하나는 메인 블록(main block)이다. 부트 블록에는 컴퓨터 시스템이 처음 구동될 때 실행되는 코드가 저장되어 있고, 메인 블록에는 일반적으로 잘 알려진 바이오스 프로그램 코드가 저장되어 있다.
잘 알려진 바와 같이, 컴퓨터 시스템이 파워 업 되면 CPU는 바이오스에 존재하는 명령 코드를 패치는 것에 의해 부트 업 된다. 이와 같은 부트 업 과정을 일 반적으로 바이오스에 의해 부팅이라 한다. 바이오스에 의한 부팅 과정에서는 시스템 진단, 패스워드 검사, 운영 시스템 커널 로딩 등과 같은 과정이 순차적으로 실행된다. 이때, 패스워드 검사 기능이 활성화되어 있는 경우에는 패스워드 검사 과정이 수행된다.
이 패스워드 검사 과정에서는 미리 설정된 패스워드와 사용자가 입력하는 패스워드가 비교되며, 두 패스워드가 일치되는 경우에만 다음 과정이 진행된다. 패스워드 검사 기능을 활성화시키기 위해서는 시스템 설정 유틸리티(system configuration utility)를 사용하게 된다. 이 유틸리티는 바이오스에 포함되어 있다. 사용자는 바이오스에 의한 부팅 과정에서 이 유틸리티를 실행할 수 있으며, 이를 통해 시스템 설정과 패스워드 설정을 할 수 있다. 시스템 설정과 패스워드 설정에 따른 각종 데이터는 RTC(Real Time Clock)에 포함된 CMOS RAM에 저장된다.
CMOS RAM은 컴퓨터 시스템의 전원 공급이 중단되면 배터리로부터 전원 공급받아 데이터를 유지한다. 그러므로 배터리를 고의적으로 제거하거나 배터리의 수명이 다한 경우에는 CMOS RAM에 저장된 데이터는 더 이상 유지되지 않는다. 이러한 원인으로 인하여 컴퓨터 시스템의 보안에 문제가 발생한다. 예를 들어, 인증 되지 않은 사용자가 컴퓨터 시스템으로부터 배터리를 제거하는 경우 CMOS RAM에 저장된 데이터가 소거됨으로 패스워드 검사 기능이 무효화된다. 또 다른 문제점으로, 바이오스 프로그램 코드가 저장된 바이오스 롬의 영역은 바이오스를 업 데이트 하기 위한 유틸리티 프로그램에 의해 변경될 수 있다.
따라서, 본 발명의 목적은 상술한 제반 문제점을 해결하기 위해 제안된 것으로서 패스워드 검사 루틴 및 저장된 패스워드를 안전하게 보호할 수 있는 컴퓨터 시스템을 제공하는데 있다.
상술한 바와 같은 본 발명의 목적을 달성하기 위한 본 발명의 특징에 의하면, 컴퓨터 시스템은 패스워드 모듈(password module), 바이오스 롬(BIOS ROM) 및 데이터 처리 수단(data processing means)을 포함한다. 상기 패스워드 모듈은 패스워드가 저장된 불-휘발성 메모리(non-volatile memory)를 포함하고, 상기 바이오스 롬은 패스워드 검사 루틴이 저장된 읽기 전용의 제1 저장 영역과 바이오스(BIOS; Basic Input Output System) 프로그램 코드가 저장된 제2 저장 영역을 갖는다. 상기 데이터 처리 수단은 상기 제1 저장 영역에 저장된 패스워드 검사 프로그램 루틴을 실행하고, 사용자가 입력한 패스워드와 상기 패스워드 모듈에 저장된 패스워드가 일치되는 경우 상기 제2 영역의 바이오스 프로그램 코드를 실행하여 컴퓨터 시스템을 부팅 시킨다.
본 발명의 바람직한 실시예에 있어서, 상기 패스워드 모듈은 상기 컴퓨터 시스템의 직렬 또는 병렬 입출력 포트 중 어느 하나에 접속된다.
이상의 본 발명의 컴퓨터 시스템은 파원 온 또는 리셋시에 상기 데이터 처리 수단에 의해 상기 바이오스 롬의 제1 영역에 저장된 패스워드 검사 루틴이 실행된다. 상기 데이터 처리 수단은 상기 패스워드 검사 루틴을 실행하여 사용자가 입력한 패스워드와 상기 패스워드 모듈에 저장된 패스워드가 일치되는 경우에만 상기 바이오스 롬의 제2 저장 영역의 바이오스 프로그램 코드를 실행하여 컴퓨터 시스템을 부팅 시킨다.
(실시예)
이하, 본 발명에 따른 실시예를 첨부된 도면을 참조하여 상세히 설명한다.
본 발명의 신규한 컴퓨터 시스템은 부트 블록(boot block) 영역에 패스워드 검사 루틴이 저장된 바이오스 롬(BIOS ROM)을 포함한다. 패스워드는 패스워드 모듈의 불-휘발성 메모리에 저장된다. 패스워드 검사 과정에서 사용자가 입력한 패스워드가 패스워드 모듈의 패스워드와 일치되는 경우에만 컴퓨터 시스템이 부팅 된다.
도 1은 본 발명의 실시예에 따른 컴퓨터 시스템의 구성을 보여주는 블록도 이다. 도 1을 참조하여, 본 발명의 실시예에 따른 컴퓨터 시스템은 CPU(Central Processing Unit)(10), RTC(Real Time Clock)(20), 바이오스 롬(40), I/O 컨트롤러(Input Output Controller)(50) 및 디스플레이 컨트롤러(display controller)(70)를 포함하고 이들은 시스템 버스(system bus)(100)를 통해 상호 접속된다. 그리고 디스플레이 컨트롤러(70)에는 CRT 디스플레이 모니터, LCD 디스플레이 모니터 등과 같은 디스플레이(Display)가 연결되고, I/O 컨트롤러(50)에는 키보드(keyboard)와 같은 입력장치(Input Device)(90)가 연결된다. 잘 알려진 바와 같이, 상기 RTC(20)는 CMOS RAM(22)을 포함하고, 배터리(30)와 연결되어 컴퓨터 시스템이 파워 오프 되는 경우에도 전원을 계속적으로 공급받는다. 그리고 본 발명의 패스워드 모듈(60)은 I/O 컨트롤러(50)에 접속된다.
패스워드 모듈(60)은 I/O 컨트롤러(50)에 직렬 포트(serial port) 또는 병렬 포트(parallel port)중 어느 하나를 사용하여 접속될 수 있다. 패스워드 모듈(60)은 패스워드가 저장된 불-휘발성 메모리(62)를 포함한다. 패스워드 모듈(60)은 별도로 보관할 수 있도록 모듈화 되어 있음으로 사용자가 개별적으로 관리할 수 있다. 패스워드 모듈이 없는 사용자는 컴퓨터 시스템을 부팅 시킬 수 없다.
도 2에는 도 1의 바이오스 롬의 상세 구조를 보여주는 도면이 도시되 있다. 도 2를 참조하여, 바이오스 롬(30)은 크게 두 개의 저장 영역으로 구분되는데 하나는 부트 블록(boot block)(42)이고 다른 하나는 메인 블록(main block)(46)이다. 상기 부트 블록(42)에는 패스워드 검사 루틴(44)이 포함된다. 메인 블록(46)에는 바이오스 프로그램 코드가 저장되어 있으며, 도면에는 도시되지 않았으나 일반적으로 전원 관리 시스템(Power Management System)도 메인 블록(46)의 일정 영역에 저장된다.
일반적으로 부트 블록은 재 기입이 허용되지 않도록 설계되며, 메인 블록은 바이오스 업-데이트 유틸리티 프로그램에 의해 재 기입이 가능하도록 설계된다. 메인 블록에 저장된 바이오스는 바이오스 업 데이트 유틸리티 프로그램에 의해 업-데이트 가능하다. 바이오스 업-데이트는 과정은 다음과 같다. 먼저, 바이오스 업-데이트 유틸리티 프로그램이 저장된 부팅 디스크(일반적으로 플로피 디스크를 사용)로 컴퓨터 시스템을 부팅하고 유틸리티 프로그램을 구동시켜 바이오스 업-데이트를 한다. 유틸리티 프로그램은 먼저 메인 블록의 바이오스 영역을 클리어하고 새로운 바이오스 프로그램 코드를 메인 블록 영역에 기입한다. 그런데, 이 과정에 서 정전 등의 예기치 않은 상황이 발생하면 바이오스 업-데이트가 완전히 되지 않게 되어 시스템이 정상적으로 동작하지 못할 수 있다. 이런 경우를 방지하고자 부트 블록에는 컴퓨터 시스템이 파워 온 되었을 때 플로피 디스크에 의해 부팅이 될 수 있도록 하는 최소한의 부트 업 코드가 저장되어 있다. 이러한 이유에서, 부트 블록은 재 기입이 허용되지 않도록 설계된다. 본 발명에 따른 바이오스 롬(40)은 부트 블록(42)에 패스워드 검사 루틴(44)을 저장하고 있음으로 안전하게 보호된다.
부트 블록(42)에 저장된 패스워드 검사 루틴(44)은 컴퓨터 시스템이 구동되면 CPU(10)에 의해 부팅이 앞서 실행된다. 도 3은 도 2의 패스워드 검사 루틴의 플로우 챠트이다. 도 3을 참조하여, CPU(10)에 의해 패스워드 검사 루틴(42)이 실행되면, 단계 S100에서는 I/O 컨트롤러(50)에 패스워드 모듈(60)이 접속되어 있는가를 판단한다. 패스워드 모듈(60)이 I/O 컨트롤러(50)에 접속되어 있지 않은 경우에는 단계 S120으로 진행되어 시스템이 정지된다. 패스워드 모듈(60)이 I/O 컨트롤러(50)에 접속되어 있는 경우에는 단계 S110으로 진행하여 디스플레이(80)에 패스워드 입력 메시지를 디스플레이 한다.
사용자가 패스워드를 입력 장치(90)로 입력하면, 단계 S130에서 사용자로부터 입력된 패스워드가 패스워드 모듈(60)에 저장된 패스워드와 일치되는가를 판단한다. 패스워드가 일치되지 않는 경우에는 단계 S120으로 진행하여 시스템을 정지시킨다. 패스워드가 일치되는 경우에는 단계 S140으로 진행되어 메인 블록(46)의 바이오스에 의한 부팅 과정 수행된다.
이상에서, 본 발명에 따른 회로의 구성 및 동작을 상기한 설명 및 도면에 따 라 도시하였지만 이는 예를 들어 설명한 것에 불과하며 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 다양한 변화 및 변경이 가능함은 물론이다. 그리고 이 실시예에서는 단지 컴퓨터 시스템에 관하여 설명하였으나 본 발명의 기술적 특징은 펌웨어를 갖는 다양한 시스템에 동일하게 적용이 가능함은 이 분야의 숙련된 기술자들에게는 자명한 것이다.
이상과 같은 본 발명에 의하면, 패스워드 검사 루틴이 바이오스 롬의 부트 블록 영역에 저장됨으로 안전하게 보호되며, 별도의 패스워드 모듈에 구비되는 불-휘발성 메모리에 패스워드가 저장됨으로 패스워드가 지워질 염려가 없음으로 보다 완벽한 컴퓨터 시스템의 보안이 가능해진다.

Claims (2)

  1. 컴퓨터 시스템에 있어서:
    입출력 포트;
    패스워드가 저장된 불-휘발성 메모리(non-volatile memory)를 포함하는 패스워드 모듈(password module);
    상기 입출력 포트와 상기 패스워드 모듈 사이에 연결되며, 상기 패스워드 모듈의 접속 여부를 판단하고, 판단 결과에 따라 상기 컴퓨터 시스템의 동작을 정지시키거나 패스워드 입력 메시지를 디스플레이하도록 하는 입출력 콘트롤러;
    패스워드 검사 루틴이 저장된 읽기 전용의 제1 저장 영역과 바이오스(BIOS; Basic Input Output System) 프로그램 코드가 저장된 제2 저장 영역을 갖는 플래시 메모리(flash memory)를 포함하는 바이오스 롬(BIOS ROM); 및
    상기 제1 저장 영역에 저장된 패스워드 검사 루틴을 실행하고, 사용자가 입력한 패스워드와 상기 패스워드 모듈에 저장된 패스워드가 일치되는 경우 상기 제2 영역의 바이오스 프로그램 코드를 실행하여 상기 컴퓨터 시스템을 부팅시키는 데이터 처리 수단(data processing means)을 포함하는 컴퓨터 시스템.
  2. 제 1 항에 있어서,
    상기 패스워드 모듈은 상기 컴퓨터 시스템의 직렬 또는 병렬 입출력 포트 중 어느 하나에 접속되는 것을 특징으로 하는 컴퓨터 시스템.
KR1019990028929A 1999-07-16 1999-07-16 보안 기능을 갖는 컴퓨터 시스템 KR100621613B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019990028929A KR100621613B1 (ko) 1999-07-16 1999-07-16 보안 기능을 갖는 컴퓨터 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019990028929A KR100621613B1 (ko) 1999-07-16 1999-07-16 보안 기능을 갖는 컴퓨터 시스템

Publications (2)

Publication Number Publication Date
KR20010010189A KR20010010189A (ko) 2001-02-05
KR100621613B1 true KR100621613B1 (ko) 2006-09-06

Family

ID=19602404

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019990028929A KR100621613B1 (ko) 1999-07-16 1999-07-16 보안 기능을 갖는 컴퓨터 시스템

Country Status (1)

Country Link
KR (1) KR100621613B1 (ko)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030087873A (ko) * 2002-05-10 2003-11-15 주식회사 마이엔진 컴퓨팅 장치의 인증/접근 제어에 사용되는 중요 상수값의보안 방법 및 그를 이용한 인증/접근 제어 방법
JP2006221364A (ja) * 2005-02-09 2006-08-24 Toshiba Corp 半導体装置及びbios認証システム
KR101249176B1 (ko) * 2005-05-09 2013-04-03 엘지전자 주식회사 컴퓨터 시스템의 보안 설정 방법 및 장치

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20000008713A (ko) * 1998-07-15 2000-02-15 윤종용 패스워드를 이용한 개인용 컴퓨터의 보안방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20000008713A (ko) * 1998-07-15 2000-02-15 윤종용 패스워드를 이용한 개인용 컴퓨터의 보안방법

Also Published As

Publication number Publication date
KR20010010189A (ko) 2001-02-05

Similar Documents

Publication Publication Date Title
KR100283243B1 (ko) 운영체제의 부팅방법
KR100471056B1 (ko) 컴퓨터시스템 및 컴퓨터시스템의 대기모드제어방법
US7269747B2 (en) Physical presence determination in a trusted platform
US20040030877A1 (en) Using system BIOS to update embedded controller firmware
JP6054908B2 (ja) 変数セットを修復する方法、コンピュータ・プログラムおよびコンピュータ
US6715106B1 (en) Bios corruption detection system and method
US20050132177A1 (en) Detecting modifications made to code placed in memory by the POST BIOS
EP3097477B1 (en) System firmware configuration data
CN111435311B (zh) 固件安全防护方法与使用此方法的电子系统
US20030070102A1 (en) Password changing method and computer system, and computer readable record medium storing a program therein
US20070300050A1 (en) Maintaining early hardware configuration state
US6240519B1 (en) Computer method and apparatus to prompt for administrative password to flash a corrupted non-volatile memory
EP2151755A1 (en) Electronic device and method for updating bios thereof
US7900033B2 (en) Firmware processing for operating system panic data
US7254722B2 (en) Trusted platform motherboard having physical presence detection based on activation of power-on-switch
CN111078469A (zh) 一种数据处理方法和数据处理设备
KR100621613B1 (ko) 보안 기능을 갖는 컴퓨터 시스템
JP2000010666A (ja) コンピュータシステムおよびフラッシュrom書き換え方法
US7590870B2 (en) Physical presence determination in a trusted platform
KR100977267B1 (ko) 신뢰할 수 있는 플랫폼에서의 물리적 존재 판정 방법
KR100299119B1 (ko) 플래쉬롬제어장치를구비한개인용컴퓨터시스템및그제어방법
CN115454904A (zh) 设备初始化方法、装置、计算机设备及相关产品
CN113051576A (zh) 控制方法和电子设备
WO2023277881A1 (en) Instruction updates to hardware devices
JPH09330216A (ja) Bios書換システム

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee