JP2002055725A - コード管理biosチップとそのコード管理方法 - Google Patents

コード管理biosチップとそのコード管理方法

Info

Publication number
JP2002055725A
JP2002055725A JP2000234658A JP2000234658A JP2002055725A JP 2002055725 A JP2002055725 A JP 2002055725A JP 2000234658 A JP2000234658 A JP 2000234658A JP 2000234658 A JP2000234658 A JP 2000234658A JP 2002055725 A JP2002055725 A JP 2002055725A
Authority
JP
Japan
Prior art keywords
data
code
bios
external device
random number
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
JP2000234658A
Other languages
English (en)
Inventor
Eimei Rin
永明 林
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Integrated Tech Express Inc
Original Assignee
Integrated Tech Express Inc
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 Integrated Tech Express Inc filed Critical Integrated Tech Express Inc
Priority to JP2000234658A priority Critical patent/JP2002055725A/ja
Publication of JP2002055725A publication Critical patent/JP2002055725A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Storage Device Security (AREA)

Abstract

(57)【要約】 (修正有) 【解決手段】 BIOSチップ10は、内部BIOSを
保持する第1フラッシュ・メモリ・ユニット12、コー
ド・データを保持する第2フラッシュ・メモリ・ユニッ
ト14および外部装置、第1フラッシュ・メモリおよび
第2フラッシュ・メモリに接続している集積コード管理
装置15からなる。修正コマンドを受信すると、集積コ
ード管理装置はコード・データを発生させ、それを第2
フラッシュ・メモリ・ユニットに送信し、保存する。次
にコード化データの暗号化が実行される。最後に、元の
コード化データと復号化データは比較され、元のコード
化データと復号化データが、互いに一致する場合にの
み、内部BIOSデータの修正が許可される。 【効果】 暗号化は、非対称性のRSAエンジンを使用
することにより実行可能なので、正しいRSAコードが
見出されることは不可能である。したがって、内部BI
OSデータを、ウイルス・プログラムの侵入による修正
から守ることができる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、基本入出力システ
ム(BIOS)に関し、特に、BIOS内部のコード管
理に関する。
【0002】
【従来の技術】一般に、パーソナル・コンピュータの電
源を入れると、パーソナル・コンピュータ内部の中央処
理ユニット(CPU)が自動的に一連のコマンドを実行
するが、これらのコマンドが実行する動作は、下記の3
種類に大別できる。すなわち、 1.システム構成分析を実行するコマンドであって、こ
のシステム構成分析では、そのコンピュータ・システム
のCPUのタイプ、記憶容量、ソフトウェアおよびハー
ドウェアのタイプおよび数量、浮動小数点計算装置など
に関する情報が決定される。このような情報は、その後
の動作に参照される。 2.自己テストの起動(POST)を実行するコマンド
であって、このPOSTでは、メモリ・ユニット、チッ
プセット、CMOS、保存データ、キーボード、磁気デ
ィスク装置などのハードウェアの状態をチェックして、
もしもエラーがあれば、それらをユーザに知らせる。 3.オペレーティング・システムをダウンロードするコ
マンドであって、例えば、ブートストラップ・ローダと
呼ばれる小さなプログラムにより、オペレーティング・
システム(例えばMS DOSあるいはWindows
(登録商標)95/98)がハードディスクから探し
出され、ダウンロードされる。その後、オペレーティン
グ・システムに制御権が移譲され、起動段階が終了す
る。
【0003】コンピュータ・システムを起動させるこの
ようなコマンドのすべては、よく基本入出力システム
(BIOS)プログラムと呼ばれている。つまりBIO
Sプログラムは、第1の実行プログラムとみなすことが
できる。もし起動過程が途中で止まってしまった場合に
は、たいてい、何らかの問題がハードウェアのどこかに
発生しているので、コンピュータを正常に動作させるた
めには、これらのハードウェアの問題を解決する必要が
ある。
【0004】
【発明が解決しようとする課題】BIOSプログラムは
通常、フラッシュROMチップに保存されているが、こ
のフラッシュROMは、内部データへのランダム・アク
セスおよび内部データの修正ができるタイプのメモリで
ある。フラッシュROMチップ内のデータは、電源をオ
フにしても保持できるので、フラッシュROMチップ
は、パーソナル・コンピュータの起動プログラムを保存
するのに使用できる。しかしながら、プログラム上の特
性により、フラッシュROMはまた、ウイルス・プログ
ラムの攻撃に弱く、修復不能なシステム・ダメージを被
る可能性がある。
【0005】したがって、本発明の第1の目的は、BI
OS用のコード管理装置を提供することである。集積コ
ード管理装置を使用して、コード化データを発生させ、
保存する。非対称性のRSAエンジンあるいは対称性の
データ暗号化規格(DES)エンジンにより、暗号化処
理が実行される。暗号化データは、外部装置へ送信さ
れ、復号化される。そして最後に、復号化データは返信
され、暗号化データと比較される。前記比較において、
暗号化データとの一致が確認されて初めて、BIOSデ
ータの修正が許可される。本発明の第2の目的は、コー
ド管理のできるBIOSチップを提供することである。
このBIOSチップは、外部装置からのBIOS修正コ
マンドの妥当性を評価した後に、実際のデータ修正を許
可する。
【0006】
【課題を解決するための手段】本発明の目的に従って、
上記のおよびその他の長所を達成するために、ここで具
体化して大まかに説明するように、本発明は、コード管
理装置を有するBIOSチップを提供する。このBIO
Sチップは、第1フラッシュ・メモリ・ユニット、第2
フラッシュ・メモリ・ユニットおよび集積コード管理装
置からなる。第1フラッシュ・メモリ・ユニットは、内
部BIOSデータを保持する装置である。第2フラッシ
ュ・メモリ・ユニットは、暗号化データを保持する装置
である。集積コード管理装置は、外部装置、第1フラッ
シュ・メモリおよび第2フラッシュ・メモリに接続され
ている。修正コマンドを受信すると、集積コード管理装
置はコード・データを発生させる。コード化データの暗
号化が、次に実行される。暗号化データは、外部装置へ
送信されて、復号化される。最後に、元の暗号化データ
と復号化データが一致するかどうか比較される。元の暗
号化データと復号化データが互いに一致する場合にの
み、内部BIOSデータの修正が許可される。
【0007】前記コード管理装置は、ホスト・バス、マ
イクロコントローラ、乱数発生器およびRSAエンジン
あるいはデータ暗号化規格(DES)エンジンからな
る。ホスト・バスは、外部装置に接続されていて、BI
OSに対する修正コマンドおよび修正データを受信す
る。マイクロコントローラは、ホスト・バスに接続され
ていて、修正コマンドを受信し、その後、検証要求コマ
ンドを送信する。乱数発生器は、マイクロコントローラ
に接続されていて、検証要求コマンドを受信し、その
後、第1乱数を発生させる。RSAエンジンあるいはD
ESエンジンは、乱数発生器およびホスト・バスに接続
されていて、乱数発生器から第1乱数を受信し、その
後、RSA暗号化データあるいはDES暗号化データを
発生させる。暗号化データは、ホスト・バスを介して外
部装置へ送信される。外部装置は、暗号化データを復号
化し、第2乱数を発生させる。最後に第2乱数は、第1
乱数と一致するかどうかをチェックするために第1乱数
と比較され、一致する場合にのみ、内部BIOSデータ
の修正が許可される。
【0008】本発明はまた、外部装置からの内部BIO
Sデータ修正要求が妥当であるかどうかをチェックした
後、実際の修正が許可されるコード管理方法を提供す
る。最初、BIOSを修正するデータはレジスタに保存
されている。ランダム・コードが発生し、保存される。
それからランダム・コードは、暗号化されて、暗号化デ
ータが発生する。暗号化データは、外部装置に送信さ
れ、復号化される。復号化データは、元のランダム・コ
ードと比較されて、一致するかどうかチェックされる。
復号化データとランダム・コードが一致する場合には、
BIOSデータを修正する許可が与えられる。比較の結
果、一致しない場合には、BIOSデータの修正は許可
されない。
【0009】ランダム・コードは乱数発生器により発生
させることができ、非対称性のRSAエンジンあるいは
対称性のデータ暗号化規格(DES)エンジンによって
暗号化することができる。以上の大まかな説明および以
下の詳細な説明は、どちらも例示的なもので、特許請求
の範囲において、本発明がさらに詳しく説明されること
を理解されたい。
【0010】
【発明の実施の形態】以下、この発明にかかる好適な実
施例を図面に基づいて説明する。同一あるいは同種の部
分を説明するために、図面および説明には、可能な限り
同じ参照番号を使用する。一般に、BIOSプログラム
はフラッシュROMチップに保存されている。フラッシ
ュROMチップは、外部コマンドによってプログラム可
能なので、ウイルス・プログラムによる攻撃の格好のタ
ーゲットとなり、システムが修復困難なくらいの機能不
全に陥ってしまう。BIOSプログラムが不正に書き換
えられるのを防止するために、コード・データを発生さ
せて、このデータを非対称性のRSAエンジンあるいは
データ暗号化規格(DES)エンジンを用いて暗号化す
る。暗号化データは、BIOSデータ修正を要求するど
んな外部装置へでも送信される。暗号化データは、外部
装置により復号化される。復号化データは返信され、コ
ード・データと比較される。復号化データとコード・デ
ータが互いに一致する場合にのみ、内部BIOSデータ
を修正する許可が与えられる。その結果、BIOSチッ
プ内部のBIOSデータが、高水準の安全性を有するこ
とができる。
【0011】図1は、本発明の1つの好適な実施形態に
よる、BIOSチップ内部のコード管理システムを示す
概略図である。図1のように、コード管理BIOSチッ
プ10は、第1フラッシュ・メモリ・ユニット12、第
2フラッシュ・メモリ・ユニット14および集積コード
管理装置15からなる。集積コード管理装置15はさら
に、RSAエンジン16、DESエンジン18、マイク
ロコントローラ20、ランダム・コード発生器22、ホ
スト・バス24、ROMユニット26および内部バス2
8からなる。第1フラッシュ・メモリ・ユニット12
は、内部BIOSデータを保存し、第2フラッシュ・メ
モリ・ユニット14は、暗号化データを保存する。まず
初めに、外部装置30から修正コマンドWE♯がBIO
Sチップ10へ送信され、修正コマンドWE♯が、BI
OSチップ内にあるコード管理装置により審査される。
外部装置30からの、BIOSを修正するいかなるデー
タも、審査を通過した時のみ受信される。
【0012】ホスト・バス24を介して修正コマンドW
E♯を受信すると、BIOSチップ10内部のマイクロ
コントローラ20は、修正データを内部レジスタ(図示
せず)に保存するように動作する。その間に、マイクロ
コントローラ20はまた、ランダム・コード発生器22
を作動させ、ランダム・コードNを発生させる。ランダ
ム・コードNは、内部バス28を介して第2フラッシュ
・メモリ14に送信されて、保存される。同時に、ラン
ダム・コードNは、RSAエンジン16によって暗号化
され、暗号化データRSA(N)が発生する。あるいは
ランダム・コードNは、DESエンジン18によって暗
号化されると、暗号化データDES(N)が発生する。
さらに、データ暗号化の信頼度を向上させるために、R
SAエンジン16およびDESエンジン18を併用して
もよい。
【0013】暗号化データRSA(N)あるいはDES
(N)は、内部バス28およびホスト・バス24を介し
て外部装置30に返信される。次に、外部装置30は、
暗号化データRSA(N)あるいはDES(N)を復号
化して、復号化データNを発生させる。ホスト・バス2
4および内部バス28を介して、復号化データNは、再
びBIOSチップ10へ送信される。復号化データN
は、第2フラッシュ・メモリ14に保存されているラン
ダム・コードNと比較される。復号化データNとランダ
ム・コードNが一致する場合には、BIOSを修正する
データが外部装置30から入力され、修正コマンドWE
♯が消える。逆に、復号化データNとランダム・コード
Nが一致しない場合には、外部装置30からのいかなる
修正データも拒絶される。
【0014】RSAエンジン16によりコード・データ
を暗号化して、暗号化データRSA(N)を発生させる
こと、あるいはDESエンジン18によりコード・デー
タを暗号化して、暗号化データDES(N)を発生させ
ることによって、ウィルス・プログラムは正確なRSA
あるいはDESコードを獲得することが不可能となる。
したがって、ウイルス・プログラムが誤ったデータをい
くらBIOSに送り込もうとしても、必ず失敗する。さ
らに、暗号化データRSA(N)あるいはDES(N)
を復号化するために外部装置へ送信し、次いで復号化デ
ータを審査のためにコード管理装置へ再送信すること
で、内部BIOSチップ・データに対する別の安全性が
高まる。
【0015】以上のごとく、この発明を好適な実施例に
より開示したが、もとより、この発明を限定するための
ものではなく、当業者であれば容易に理解できるよう
に、この発明の技術思想の範囲内において、適当な変更
ならびに修正が当然なされうるものであるから、その特
許権保護の範囲は、特許請求の範囲および、それと均等
な領域を基準として定めなければならない。
【図面の簡単な説明】
【図1】本発明の1つの好適な実施形態による、BIO
Sチップ内部のコード管理システムを示す概略図。
【符号の説明】 10: コード管理BIOSチップ 12: 第1フラッシュ・メモリ・ユニット 14: 第2フラッシュ・メモリ・ユニット 15: 集積コード管理装置 16: RSAエンジン 18: DESエンジン 20: マイクロコントローラ 22: ランダム・コード発生器 24: ホスト・バス 26: ROMユニット 28: 内部バス 30: 外部装置 WE# 修正コマンド

Claims (7)

    【特許請求の範囲】
  1. 【請求項1】 外部デバイスからの入力修正コマンドを
    検証した後に、内部BIOSデータを修正する許可を与
    えるコード管理装置を内部に有するBIOSチップであ
    って、 前記内部BIOSデータを保持する第1フラッシュ・メ
    モリ・ユニットと、 セキュリティ・データを保持する第2フラッシュ・メモ
    リ・ユニットと、 前記外部装置、前記第1フラッシュ・メモリ・ユニット
    および前記第2フラッシュ・メモリ・ユニットに接続さ
    れた集積コード管理装置とからなり、 前記集積コード管理装置は、前記修正コマンドを受信
    し、前記セキュリティ・データを前記第2フラッシュ・
    メモリ・ユニットに保存するために送信し、前記セキュ
    リティ・データを暗号化して暗号化データを発生させ、
    前記暗号化データを復号化するために前記外部装置に送
    信し、 前記外部装置での復号化後、前記復号化データは、前記
    元のセキュリティ・データと比較するために前記集積コ
    ード管理装置へ返信され、前記セキュリティデータと一
    致する場合に、前記内部BIOSデータが、前記外部装
    置から提供されるデータに置き換えられることを特徴と
    するBIOSチップ。
  2. 【請求項2】 請求項1に記載のBIOSチップにおい
    て、 前記集積コード管理装置がさらに、 前記外部装置に接続されて、前記BIOSに対する前記
    修正コマンドおよびデータを受信するホスト・バスと、 前記ホスト・バスに接続されて、前記修正コマンドを受
    信し、検証要求コマンドを送信するマイクロコントロー
    ラと、 前記マイクロコントローラに接続されて、前記検証要求
    コマンドを受信し、第1乱数を発生させる乱数発生器
    と、 前記乱数発生器および前記ホスト・バスに接続されて、
    前記第1乱数を受信してRSA暗号化データを発生させ
    るRSAエンジンとからなり、 前記RSA暗号化データは、前記外部装置へ送信され、 前記外部装置は前記暗号化データを復号化して第2乱数
    を発生させ、 前記第2乱数は返信されて、第1乱数と比較され、前記
    第1および第2乱数が一致する時にのみ、前記内部BI
    OSデータが外部データに置き換えられることを特徴と
    するBIOSチップ。
  3. 【請求項3】 請求項1に記載のBIOSチップにおい
    て、 前記集積コード管理装置がさらに、 前記外部装置に接続されて、前記BIOSに対する前記
    修正コマンドおよびデータを受信するホスト・バスと、 前記ホスト・バスに接続されて、前記修正コマンドを受
    信し、検証要求コマンドを送信するマイクロコントロー
    ラと、 前記マイクロコントローラに接続されて、前記検証要求
    コマンドを受信し、第1乱数を発生させる乱数発生器
    と、 前記乱数発生器および前記ホスト・バスに接続されて、
    前記第1乱数を受信してDES暗号化データを発生させ
    るデータ暗号化規格(DES)エンジンとからなり、 前記DES暗号化データは、前記外部装置へ送信され、 前記外部装置は前記暗号化データを復号化して第2乱数
    を発生させ、 前記第2乱数は返信されて、第1乱数と比較され、前記
    第1および第2乱数が一致する時にのみ、前記内部BI
    OSデータが外部データに置き換えられることを特徴と
    するBIOSチップ。
  4. 【請求項4】 外部装置からの内部BIOSデータ修正
    要求が妥当であるかどうかをチェックした後に、実際に
    修正許可を与えるコード管理方法であって、 BIOSを修正するためのデータをレジスタに保存する
    ステップと、 ランダム・コードを発生させ、前記ランダム・コードを
    蓄積するステップと、 前記ランダム・コードを暗号化して、暗号化データを発
    生させるステップと、 前記暗号化データを前記外部装置へ送信するステップ
    と、 前記暗号化データを前記外部装置において復号化するス
    テップと、 前記元のランダム・コードを前記復号化データと比較し
    て、一致するかどうかをチェックするステップと、 前記復号化データと前記ランダム・コードとが一致する
    場合に、前記内部BIOSデータの修正を許可するステ
    ップと、 前記復号化データと前記ランダム・コードとが一致しな
    い場合に、前記内部BIOSデータのいかなる修正をも
    許可しないステップとからなることを特徴とするコード
    管理方法。
  5. 【請求項5】 請求項4に記載の方法において、 前記ランダム・コードを発生させるステップにおいて、
    乱数発生器を使用することを特徴とする方法。
  6. 【請求項6】 請求項4に記載の方法において、 前記ランダム・コードを暗号化して、暗号化データを発
    生させるステップにおいて、RSAエンジンを使用する
    ことを特徴とする方法。
  7. 【請求項7】 請求項4に記載の方法において、 前記ランダム・コードを暗号化して、暗号化データを発
    生させるステップにおいて、データ暗号化規格(DE
    S)エンジンを使用することを特徴とする方法。
JP2000234658A 2000-08-02 2000-08-02 コード管理biosチップとそのコード管理方法 Pending JP2002055725A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000234658A JP2002055725A (ja) 2000-08-02 2000-08-02 コード管理biosチップとそのコード管理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000234658A JP2002055725A (ja) 2000-08-02 2000-08-02 コード管理biosチップとそのコード管理方法

Publications (1)

Publication Number Publication Date
JP2002055725A true JP2002055725A (ja) 2002-02-20

Family

ID=18726996

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000234658A Pending JP2002055725A (ja) 2000-08-02 2000-08-02 コード管理biosチップとそのコード管理方法

Country Status (1)

Country Link
JP (1) JP2002055725A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7367062B2 (en) 2002-12-04 2008-04-29 Samsung Electronics Co., Ltd. Method for BIOS security of computer system

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7367062B2 (en) 2002-12-04 2008-04-29 Samsung Electronics Co., Ltd. Method for BIOS security of computer system

Similar Documents

Publication Publication Date Title
US10095890B2 (en) Secure processor and a program for a secure processor
US9762399B2 (en) System and method for validating program execution at run-time using control flow signatures
US9767271B2 (en) System and method for validating program execution at run-time
US10762210B2 (en) Firmware protection and validation
US6223284B1 (en) Method and apparatus for remote ROM flashing and security management for a computer system
US20200117805A1 (en) Secure booting method, apparatus, device for embedded program, and storage medium
US8127146B2 (en) Transparent trust validation of an unknown platform
US20050021968A1 (en) Method for performing a trusted firmware/bios update
US20090113210A1 (en) Program and operation verification
US8397081B2 (en) Device and method for securing software
US7624442B2 (en) Memory security device for flexible software environment
JP2002055725A (ja) コード管理biosチップとそのコード管理方法
US20240064026A1 (en) Method and device for controlling access to a resource
Yadav SECURE BOOTLOADER IN EMBEDDED SYSTEM USING MISRA-C
WO2023055351A1 (en) Secure page retrieval
NL1016014C2 (nl) Code-administratie van bios.

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060530

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20061106