(57)【要約】Ｌｉｎｕｘ（登録商標）互換性を提供し、現時代のハードウェア速度をサポートするトラステッド・コンピュータ・システム。それは、開発することが容易であり、多種多様な最新の開発ツールの使用が可能であるように、Ｌｉｎｕｘ（登録商標）上で動作する共通アプリケーションの移植を必要としないように設計される。システムは更に、必要とされるセキュリティ機能の組み込み、および広範囲にわたる操作環境において広範囲にわたる機密性（例えば、機密区分）レベルでデータを処理するための非常に高いレベルのアシュアランスによって、コモン・クライテリアＥＡＬ−５またはそれより高いレートを満たすかまたは上回るように設計される。これは、セキュリティを実施するために下層から設計され、Ｌｉｎｕｘ（登録商標）オペレーティング・システムの機能および方法もサポートする、良くレイヤ化されたオペレーティング・システムの実施によって達成される。
2007524148.tif 000002
【特許請求の範囲】
【請求項１】
トラステッド・オペレーティング・システムであって、
トラステッド・アプリケーションおよび非トラステッド・アプリケーションがそこで実行されることができるアプリケーション・ドメインと、
オペレーティング・システム・サービス・レイヤであって、少なくとも１つの他のオペレーティング・システム用に書かれたアプリケーションが前記トラステッド・オペレーティング・システムで実行されることを可能にするインタフェースを提供し、それによって、前記少なくとも１つの他のオペレーティング・システムをエミュレートする、オペレーティング・システム・サービス・レイヤと、
トラステッド・システム・サービス・レイヤと、
システム・セキュリティ・ポリシーおよびインテグリティ規則を実施するため、ならびにユーザおよび管理者のアクションを促進することを含む基本オペレーティング・システム・サービスを提供するためのセキュリティ・カーネルと
を含むトラステッド・オペレーティング・システム。
【請求項２】
前記オペレーティング・システムが、マルチドメイン・プロセス分離機能を、プロセス分離を確実にするために該オペレーティング・システムが実行されているハードウェアにおいて、用いる、請求項１に記載のトラステッド・オペレーティング・システム。
【請求項３】
前記ハードウェア・マルチドメイン・プロセス分離機能が、セグメント、ページ、および命令へのアクセスを制限する、請求項２に記載のトラステッド・オペレーティング・システム。
【請求項４】
前記ハードウェア・マルチドメイン・プロセス分離機能が、メモリ参照内での保護違反に対する複数のチェックも提供する、請求項３に記載のトラステッド・オペレーティング・システム。
【請求項５】
前記アプリケーション・ドメインが、少なくとも１つの開発環境が実行されることを可能にする、請求項１に記載のトラステッド・オペレーティング・システム。
【請求項６】
前記開発環境が、統合された開発環境である、請求項５に記載のトラステッド・オペレーティング・システム。
【請求項７】
前記カーネル・レイヤが、前記トラステッド・オペレーティング・システム内で、強制セキュリティ、強制インテグリティ、およびサブタイプの制御を実施する、請求項１に記載のトラステッド・オペレーティング・システム。
【請求項８】
前記セキュリティ・カーネルが、強制セキュリティ制御および強制インテグリティ・アクセス制御を実施することによってユーザとデータとを分離する、請求項１に記載のトラステッド・オペレーティング・システム。
【請求項９】
前記トラステッド・オペレーティング・システムが、更に、任意アクセス制御を実施することによってユーザとデータとを分離する、請求項８に記載のトラステッド・オペレーティング・システム。
【請求項１０】
前記トラステッド・オペレーティング・システムが、インテグリティ・ポリシーを使用して管理者役割とオペレータ役割とを分離する、請求項９に記載のトラステッド・オペレーティング・システム。
【請求項１１】
前記トラステッド・オペレーティング・システムが、管理者役割およびオペレータ役割に対して最小特権の原則を実施する、請求項１０に記載のトラステッド・オペレーティング・システム。
【請求項１２】
ユーザおよび管理者のアクションが、少なくとも１つの監査ログにおいて監査される、請求項８に記載のトラステッド・オペレーティング・システム。
【請求項１３】
少なくとも１つの監査ログが、変更から保護される、請求項１２に記載のトラステッド・オペレーティング・システム。
【請求項１４】
すべての監査ログが、変更から保護される、請求項１３に記載のトラステッド・オペレーティング・システム。
【請求項１５】
ユーザのログイン失敗が監視されて、セキュリティ・ポリシー違反が今にも起こりかねないことを示すイベントの累積を検出する、請求項１に記載のトラステッド・オペレーティング・システム。
【請求項１６】
前記セキュリティ・カーネルは、異なるクリアランスをもつユーザが異なる機密区分レベルに存在する情報を同時に保存および処理することを可能にする、請求項１に記載のトラステッド・オペレーティング・システム。
【請求項１７】
前記セキュリティ・カーネルは、データがユーザのインテグリティ・レベルまたはそれより高いインテグリティ・レベルにある場合にのみ、前記ユーザがそのデータを処理することを可能にする、請求項１６に記載のトラステッド・オペレーティング・システム。
【請求項１８】
前記トラステッド・ソフトウェアはトラステッド・データベースを含む、請求項１に記載のトラステッド・オペレーティング・システム。
【請求項１９】
リファレンス・モニタを更に含む、請求項１に記載のトラステッド・オペレーティング・システム。
【請求項２０】
前記セキュリティ・カーネルは、非トラステッド・ソフトウェアがトラステッド・ソフトウェア・プロセスに関連する作業データにアクセスしないようにプロセス分離を実施する、請求項１に記載のトラステッド・オペレーティング・システム。
【請求項２１】
前記オペレーティング・システム・サービス・レイヤによってエミュレートされる前記少なくとも１つの他のオペレーティング・システムのうちの少なくとも１つがＬｉｎｕｘ（登録商標）である、請求項１に記載のトラステッド・オペレーティング・システム。
【請求項２２】
前記オペレーティング・システム・サービス・レイヤが、更に、前記トラステッド・システム・サービス・レイヤの高信頼態様を管理および使用するために、少なくとも１つのプロプライエタリＡＰＩを提供する、請求項１に記載のトラステッド・オペレーティング・システム。
【請求項２３】
前記オペレーティング・システム・サービス・レイヤが、ＡＰＩコールを、前記セキュリティ・カーネルおよびトラステッド・システム・サービス・レイヤによって提供されるトラステッド・オペレーティング・システム・プリミティブへと、翻訳する、請求項２２に記載のトラステッド・オペレーティング・システム。
【請求項２４】
前記アプリケーション・ドメインで動作するアプリケーションが、前記オペレーティング・システム・サービス・レイヤとのみインタフェースを行うことができ、直接に前記トラステッド・システム・サービスまたはカーネル・レイヤによって提供される機能を呼び出すことができない、請求項１に記載のトラステッド・オペレーティング・システム。
【請求項２５】
トラステッド・コンピュータ・システムであって、
各々がマルチドメイン・アーキテクチャをサポートする少なくとも１つのプロセッサと、
前記トラステッド・コンピュータ・システムの操作を容易にするための少なくとも１つの端末と、
少なくとも１つのデータ記憶ユニットと、
少なくとも１つのメモリ・ユニットと、
前記トラステッド・コンピューティング・システム上で動作するセキュア・オペレーティング・システムであって、プロセス分離を実施するために前記少なくとも１つのプロセッサの前記マルチドメイン・アーキテクチャを用いるセキュア・オペレーティング・システムと
を含むトラステッド・コンピュータ・システム。
【請求項２６】
前記少なくとも１つのプロセッサがインテルＰｅｎｔｉｕｍ（登録商標）クラスのマイクロプロセッサである、請求項２５に記載のトラステッド・コンピュータ・システム。
【請求項２７】
前記少なくとも１つのデータ記憶ユニットがハード・ドライブである、請求項２５に記載のトラステッド・コンピュータ・システム。
【請求項２８】
前記少なくとも１つのメモリ記憶ユニットがランダム・アクセス・メモリである、請求項２５に記載のトラステッド・コンピュータ・システム。
【請求項２９】
少なくとも１つのネットワーク・インタフェースを更に含む請求項２５に記載のトラステッド・コンピュータ・システム。
【請求項３０】
セキュア・アテンション・キーを更に含む請求項２５に記載のトラステッド・コンピュータ・システム。
【請求項３１】
セキュリティ・ポリシー強化システムであって、
少なくとも１つがマルチドメイン・アーキテクチャをインプリメントする、少なくとも１つのプロセッサと、
少なくとも１つのランダム・アクセス・メモリ・ユニットと、
データがそれぞれのセキュリティ区分レベルに存在する少なくとも２つの異なるセキュリティ区分レベルを働かせるセキュア・オペレーティング・システムと、
データの内容に関してセキュリティ・チェックを実行して、前記データを前記セキュア・オペレーティング・システムによって１つの機密区分レベルから別の機密区分レベルへ転送できるか否かを決定する少なくとも１つのデータ・セキュリティ検証手段と
を含むセキュリティ・ポリシー強化システム。
【請求項３２】
少なくとも１つのネットワーク・インタフェースを更に含む、請求項３１に記載のセキュリティ・ポリシー強化システム。
【請求項３３】
前記少なくとも１つのネットワーク・インタフェースは、前記セキュリティ・ポリシー強化システムを、伝送制御プロトコル（ＴＣＰ）およびインターネット・プロトコル（ＩＰ）を使用する少なくとも１つのネットワークに接続する、請求項３１に記載のセキュリティ・ポリシー強化システム。
【請求項３４】
前記セキュリティ・ポリシー強化システムを少なくとも２つのネットワークに接続する少なくとも２つのネットワーク・インタフェースを更に含む、請求項３１に記載のセキュリティ・ポリシー強化システム。
【請求項３５】
前記少なくとも２つのネットワークの各々が異なる機密区分レベルで動作する、請求項３４に記載のセキュリティ・ポリシー強化システム。
【請求項３６】
前記少なくとも２つのネットワークが伝送制御プロトコル（ＴＣＰ）およびインターネット・プロトコル（ＩＰ）を用いる、請求項３５に記載のセキュリティ・ポリシー強化システム。
【請求項３７】
前記セキュア・オペレーティング・システムが、プロセス分離を確実にするために、前記少なくとも１つのプロセッサの前記マルチドメイン・アーキテクチャを用いる、請求項３１に記載のセキュリティ・ポリシー強化システム。
【請求項３８】
前記セキュア・オペレーティング・システムは、少なくとも１つの他のオペレーティング・システム用に書かれたアプリケーションがトラステッド・オペレーティング・システムで実行されることを可能にするインタフェースを提供する、請求項３１に記載のセキュリティ・ポリシー強化システム。
【請求項３９】
前記少なくとも１つのデータ・セキュリティ検証手段によって実行される前記セキュリティ・チェックが、前記少なくとも１つのランダム・アクセス・メモリ・ユニットで実行される、請求項３１に記載のセキュリティ・ポリシー強化システム。
【請求項４０】
別のオペレーティング・システムをエミュレートするトラステッド・オペレーティング・システムであって、前記別のオペレーティング・システム用に書かれたアプリケーション・プログラムが、そのアプリケーション・プログラムに対する変更を必要とせずに前記トラステッド・オペレーティング・システム上で実行されることを可能にする、トラステッド・オペレーティング・システム。
【請求項４１】
エミュレートされた前記オペレーティング・システムがオープン・ソース・オペレーティング・システムである、請求項４０に記載のトラステッド・オペレーティング・システム。
【請求項４２】
複数のプロセスを同時に実行することができ、強制アクセスおよび任意アクセスの範囲を超えた追加的なアクセス制御区別化を可能にするサブタイプ機構を提供するトラステッド・オペレーティング・システム。
【請求項４３】
前記サブタイプ機構は、
前記オブジェクトのサブタイプが、第１のプロセスによってアクセスされることを許可されたサブタイプのリストにある場合にのみ、前記第１のプロセスがプロセス・オブジェクト、ファイル・システム・オブジェクト、または装置オブジェクトにアクセスすることを許可する、請求項４２に記載のトラステッド・オペレーティング・システム。
【請求項４４】
前記サブタイプ機構は、データのサブタイプが、第１のプロセスによってアクセスされることを許可されたサブタイプのリストにある場合にのみ、前記第１のプロセスが前記データにアクセスすることを許可する、請求項４２に記載のトラステッド・オペレーティング・システム。
【請求項４５】
任意のプロセスが任意のファイル・システム・オブジェクトにアクセスを試みるときはいつでも４つの個別のポリシーが実施されるトラステッド・オペレーティング・システムであって、前記ポリシーは、
強制セキュリティ・ポリシーと、
強制インテグリティ・ポリシーと、
任意アクセス制御ポリシーと、
サブタイプ・ポリシーと
を含む、
トラステッド・オペレーティング・システム。
【請求項４６】
隠れストレージ・チャネルの数および速度を制限することによって、第１のプロセスが、より高い機密扱いの第２のプロセスの存在または状態について知ることを防止するように構成されるトラステッド・オペレーティング・システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、トラステッド・コンピューティング・システムの分野に関する。
【背景技術】
【０００２】
（著作権の通知）
本出願は、著作権の保護を受ける資料を含む。この特許開示は特許商標庁のファイルまたは記録に公開されているので、著作権者はその何人による複写にも異議を唱えないが、それ以外については、いかなるものであれすべての著作権の権利を保有する。
【０００３】
（優先権の主張）
本出願は、２００３年６月１７日に出願された米国特許出願第１０／４６２７７１号からの優先権を主張し、同出願の全体を参照により本明細書に組み込む。
【０００４】
バージニア州ハーンドンのＧｅｔｒｏｎｉｃｓ  Ｇｏｖｅｒｎｍｅｎｔ  Ｓｏｌｕｔｉｏｎｓ，ＬＬＣによって最近製造されたＸＴＳ−３００（商標）トラステッド・コンピュータ・システムは、長い間、国家安全保障局（ＮＳＡ）の評価を受けている唯一の高保証汎用コンピュータ・システムである。慎重な設計によって、ＸＴＳ−３００は、ＮＳＡによって、そのトラステッド・コンピュータ・システム評価基準（ＴＣＳＥＣ）に基づき、クラスＢ３レベルと評価されたものであり、ＴＣＳＥＣの教示をその全体がこの参照により本明細書に組み込まれる。Ｂ３評価は、システムが非常に高いレベルのセキュリティ機能を提供するという証明である。図１は、様々なＴＣＳＥＣセキュリティ区分レベルを達成するための要件について高水準の概要を提供する。ＴＣＳＥＣは、より正式には米国国防総省規格番号５２００．２８−ＳＴＤとしても知られ、しばしば「オレンジ・ブック」と呼ばれる。
【０００５】
ＸＴＳ−３００によって提供される高いレベルのセキュリティ機能のため、ＸＴＳ−３００は、防衛界、諜報界、外交界、法執行界、およびその他の世界に、最新世代のＩｎｔｅｌ（登録商標）サーバ・クラス・ハードウェア上で動作する極めて安全なシステムを提供している。加えて、ＸＴＳ−３００は、その汎用ハードウェア構成を利用して、Ｉｎｔｅｌ（登録商標）ｘ８６ハードウェア・ベースおよびＳＣＳＩサブシステムにおける頻繁なハードウェアの進歩を用いる。
【０００６】
ＸＴＳ−３００は、データをフィルタリングし、セキュリティ・ポリシーを実施するアプリケーションがその上で構築されるプラットホームとして使用される。フィルタリングは、ルール・ベースの検査および選択基準が様々なデータに適用されることを可能にするプロセスであり、それによって、適切な場合には、承認されたデータが１つのセキュリティ区分レベルから別のセキュリティ区分レベルへ安全に受け渡されることを可能にする。これらのプログラムの多くは、ＸＴＳ−３００のハードウェア実施の保護を使用して１つのネットワークを別のネットワークから保護しながら、なおも、選択されたデータが、慎重に構成され且つ十分な認定を受けた論理パスを介して異なるレベルのネットワーク間を流れることを可能にするので、「ガード（Guard）」と呼ばれている。
【０００７】
ＸＴＳ−３００は成功しているが、ＸＴＳ−３００上で動作させることができるコンピュータ・ソフトウェア・プログラムの数および種類は、そのオペレーティング・システムによって限定される。
【発明の開示】
【発明が解決しようとする課題】
【０００８】
従って、本発明の好ましい一実施形態は、関連技術の限界および不都合に起因する１または複数の問題を実質的に回避するシステムおよび方法に関する。
【０００９】
本発明の目的は、トラステッド・オペレーティング・システムを作成することであり、トラステッド・オペレーティング・システムは、トラステッドおよび非トラステッドのアプリケーションがそこで実行されることができるアプリケーション・ドメインと、（オペレーティング・システム・サービス・レイヤが）少なくとも１つの他のオペレーティング・システム用に書かれたアプリケーションがトラステッド・オペレーティング・システムで実行されることを可能にするインタフェースを提供することによって、（オペレーティング・システム・サービス・レイヤが）前記の少なくとも１つの他のオペレーティング・システムをエミュレートするオペレーティング・システム・サービス・レイヤと、トラステッド・システム・サービス・レイヤと、システムのセキュリティ・ポリシーおよびインテグリティ規則を実施するため、ならびにユーザおよび管理者のアクションを促進することを含む基本オペレーティング・システム・サービスを提供するためのセキュリティ・カーネルとを含む。
【００１０】
本発明の別の目的は、トラステッド・コンピュータ・システムを作成することであり、トラステッド・コンピュータ・システムは、各々がマルチドメイン・アーキテクチャをサポートする少なくとも１つのプロセッサと、トラステッド・コンピュータ・システムの操作を容易にするための少なくとも１つの端末と、少なくとも１つのデータ記憶ユニットと、少なくとも１つのメモリ・ユニットと、トラステッド・コンピューティング・システム上で動作するものであり、プロセス分離を実施するために前記の少なくとも１つのプロセッサのマルチドメイン・アーキテクチャを用いるセキュア・オペレーティング・システムとを含む。
【００１１】
本発明の更に別の目的は、セキュリティ・ポリシー強化システムを提供することであり、セキュリティ・ポリシー強化システムは、少なくとも１つがマルチドメイン・アーキテクチャをインプリメントする少なくとも１つのプロセッサと、少なくとも１つのランダム・アクセス・メモリ・ユニットと、それぞれのセキュリティ区分レベルにデータが存在する少なくとも２つの異なるセキュリティ区分レベルで動作するセキュア・オペレーティング・システムと、データの内容に関してセキュリティ・チェックを実行して、そのデータが１つの機密区分レベルから別の機密区分レベルへセキュア・オペレーティング・システムによって転送されることができるか否かを決定する少なくとも１つのデータ・セキュリティ検証手段とを含む。
【００１２】
本発明のまた別の目的は、トラステッド・オペレーティング・システムを提供することであり、このトラステッド・オペレーティング・システムは、他のオペレーティング・システム用に書かれたアプリケーション・プログラムを、そのアプリケーション・プログラムを変更する必要なしに、このトラステッド・オペレーティング・システムで実行することを可能にすることによって、別のオペレーティング・システムをエミュレートする。
【００１３】
本発明の別の目的は、複数のプロセスを同時に実行することができるトラステッド・オペレーティング・システムを作成することであり、このシステムは、強制および任意のアクセスを超えた追加的なアクセス制御区別化（access control differentiation）を可能にするサブタイプ機構を提供する。
【００１４】
本発明の更に別の目的は、任意のプロセスが任意のファイル・システム・オブジェクトにアクセスを試みるときはいつでも４つの別々のポリシーが実施されるトラステッド・オペレーティング・システムを実施することであり、そのポリシーは、強制セキュリティ・ポリシーと、強制インテグリティ・ポリシーと、任意アクセス制御ポリシーと、サブタイプ・ポリシーとを含む。
【００１５】
本発明の更に別の目的は、隠れストレージ・チャネルの数および速度を制限することによって、第１のプロセスが、第２のより高い機密扱いのプロセスの存在や状態について知ることを防止する、トラステッド・オペレーティング・システムを作成することである。
【００１６】
本発明の更なる特徴および利点が以下で説明されるが、部分的にはその説明から明らかとなり、または本発明の実施によって学ばれることもあろう。本発明の目的およびその他の利点は、記載された説明および本明細書の特許請求の範囲、ならびに添付の図面において特に指摘される構造によって実現および達成される。
【課題を解決するための手段】
【００１７】
本発明は、好ましくは、マルチユーザ・ワークステーションからトラステッド・ガードやトラステッド・サーバまで広範囲にわたるアプリケーションのために使用されることができるという意味で、汎用コンピューティング・システムである。本発明の好ましい一実施形態は、ＸＴＳ−３００で使用されるハードウェア・アーキテクチャおよびオペレーティング・システム・カーネルの設計技法のいくつかを用いるが、本明細書で説明される本発明の好ましい一実施形態は、現時代のハードウェアならびに堅牢なＬｉｎｕｘ（登録商標）アプリケーション・プログラミング・インタフェース（ＡＰＩ）およびアプリケーション・バイナリ・インタフェース（ＡＢＩ）の組に対するサポートを追加するように再構築されており、それにより、Ｌｉｎｕｘ（登録商標）用に書かれた数千のプログラムおよびコマンドが、それらのバイナリ形式のまま、移植や再コンパイルすることなく、本発明の好ましい一実施形態で実施されるセキュリティ・アーキテクチャの保護の下で、コピーおよび実行されることができる。従って、本発明の好ましい一実施形態は、極めてセキュアな機能が高信頼な様式で実行されることができる、エミュレートされたオープン・ソース環境を提供する。
【００１８】
加えて、本発明の好ましい一実施形態は、他のトラステッド・プログラムが、本発明に特有のＡＰＩにアクセスすることを可能にし、それによって、本発明の好ましい一実施形態のセキュリティ態様の一部または全部へのアクセス、または一定の状況下ではそれらに対する制御を、提供する。本発明は、Ｌｉｎｕｘ（登録商標）とのＡＢＩ／ＡＰＩ互換性（即ち、Ｌｉｎｕｘ（登録商標）のエミュレーション）を提供するが、本発明は、発明者らと本発明の譲受人との全くの創造であって、Ｌｉｎｕｘ（登録商標）カーネル・コードを使用しない。従って、それは、オープン・ソース・アプリケーションを実行する自由と、保護されたプロプライエタリ・システムに関連するセキュリティとの双方を持つ安全性の高いＬｉｎｕｘ（登録商標）コンパチブルの環境である。
【００１９】
本発明の好ましい一実施形態は、セキュア・トラステッド・オペレーティング・プログラム（ＳＴＯＰ（登録商標））と呼ばれるオペレーティング・システムを用いる。以前のアプローチとは異なり、本発明の好ましい一実施形態は、Ｌｉｎｕｘ（登録商標）  ＡＢＩ／ＡＰＩ、ならびに独特なコマンドおよびＡＰＩを実施するセキュリティをサポートするために構成される。これは、好ましくは、本発明が、無比のセキュリティを提供することを可能にすると同時に、本発明が、より多くの標準的な市販のアプリケーションを、実質的な変更を必要とせずに実行できるようにする。
【００２０】
本発明の好ましい一実施形態は、マルチレベルのセキュアなトラステッド・セキュリティ機能（ＴＳＦ）を提供するものであり、情報技術セキュリティ評価のコモン・クライテリア（Common Criteria for Information Technology Security Evaluation）に対してのその関係が、ＴＣＳＥＣに対するトラステッド・コンピューティング・ベース（ＴＣＢ）の関係とほぼ同じであり、このトラステッド・セキュリティ機能は、異なるクリアランスおよび必知事項（needs-to-know）を有するユーザによっての、異なる区分または機密性および必知事項（カテゴリ／区分）での、データの同時の処理および保存を可能にする。システム・ハイ（system-high）・モードで動作するシステムとは異なり、本発明の好ましい一実施形態は、データの恣意的な過剰機密扱い（over-classify）をなくすことができるものであり、システム・ハイ・モードは、動作のセキュリティ・モードとして典型的に定義されるものであり、特定の情報システムや、その周辺機器や、リモート端末や、リモート・ホストへ直接的または間接的にアクセスする各ユーザが、下記のすべて、即ち、（ａ）情報システム内のすべての情報に対する有効なセキュリティ・クリアランスと、（ｂ）保存および／または処理されるすべての情報（すべての区分、副区分、および／または特別なアクセス・プログラムを含む）に対する正式なアクセス承認および署名された非開示合意と、（ｃ）情報システム内に含まれるいくつかの情報に対する有効な必知事項とを有するものである。
【００２１】
本発明の好ましい一実施形態は、高い堅固性および／または高いリスク環境のために設計され、これは、特定のセキュリティ機能の組み込みばかりではなく、非常に高いレベルのアシュアランスも意味する。このアシュアランス・レベルは、本発明の好ましい一実施形態が、広範囲にわたる動作環境において広範囲にわたる機密性（例えば機密区分レベル）でデータを処理するために認定されることを可能にする。本発明は、情報の半自動または全自動のダウングレード化および／またはダウン・フローを処理するためのネットワーク・ガードやフィルタなどの専門化されたアプリケーションを含む多くの種類のアプリケーションを実行しながらも、高いレベルのセキュリティを提供するように設計される。
【００２２】
上述の概略的な説明および以下の詳細な説明は共に例示的かつ説明的なものであり、特許請求される発明の更なる説明を提供することを意図していることを理解されたい。
【００２３】
添付の図面は、本発明の更なる理解を可能にするために含まれ、本明細書の一部に組み込まれ、本明細書の一部を構成するものであり、本発明の実施形態を図説しており、説明と共に本発明の原理を説明するのに役立つ。
【発明を実施するための最良の形態】
【００２４】
これから本発明の好ましい実施形態に対して詳しく言及するが、添付の図面にその例が示されている。
【００２５】
本発明の好ましい一実施形態のオペレーティング・システム・コンポーネントは、複数のユーザに対して端末接続をサポートすることができるマルチプログラミング・オペレーティング・システムである。現在好ましい一実施形態では、最大２００のプロセスが同時に動作することができ、その各々は最大４ギガバイトの仮想メモリをもつことができる。本発明のオペレーティング・システム・コンポーネントは、好ましくは、Ｌｉｎｕｘ（登録商標）  ＡＰＩもサポートし、安全な環境において、Ｌｉｎｕｘ（登録商標）上でコンパイルされた大部分のオブジェクトまたはバイナリ・プログラムを、そのようなオブジェクトまたはバイナリ・プログラムの変更を必要とせずに、実行することができる。加えて、本発明は、好ましくは、トラステッド・セキュリティ機能（ＴＳＦ）の外部で、Ｘ−Ｗｉｎｄｏｗｓ（登録商標）グラフィカル・ユーザ・インタフェース（ＧＵＩ）を提供し、それは非高信頼（untrusted）のユーザによる作業用のコンソールで利用可能にされることができる。
【００２６】
本発明の好ましい一実施形態は、ＴＣＰ／ＩＰおよびＥｔｈｅｒｎｅｔ（登録商標）プロトコル（１０ＢａｓｅＴ／１００ＢａｓｅＴ）をＴＳＦに組み込むことによってネットワーク接続も可能にし、一方、ＴＳＦの外部でネットワーク・サーバ（例えば、ＳＭＴＰ、ＨＴＴＰなど）のインプリメントもサポートする。コモン・クライテリア（Common Criteria）評価に合格することを期待される本発明の一実施形態では、同じネットワーク内のアタッチメント（付属装置）は現在単一のレベルでなければならないが、複数のネットワークは各々異なるレベルにあることができる。
【００２７】
本発明の好ましい一実施形態は、現在アクセス可能なすべてのウィンドウを、所与のディスプレイ上に同じセキュリティ・レベルで実施する。本発明の好ましい一実施形態は、セキュリティ上の懸念および考慮され得るプロセッサ・オーバヘッドのため、マルチレベルのカット・アンド・ペーストをサポートしないが、そのような機能を本発明の主旨または範囲から逸脱することなく実施できることを当業者であれば理解できる。本発明の好ましい一実施形態は、他のセキュリティ・レベルでのコマンド実行のために、好ましくはセキュア・アテンション・キー（ＳＡＫ）としてインプリメントされるトラステッド・パス機構を実施する。そのようなコマンドは、好ましくは、トラステッド・コマンド・インタフェースを介して入力される。トラステッド・パスの起動は、ＧＵＩの一時停止を引き起こし、トラステッド・コマンド・インタフェースをＧＵＩ環境から確実に分離する。
【００２８】
本発明の好ましい一実施形態は、マルチレベル・セキュア・オペレーティング・システムとカスタマイズされたＩｎｔｅｌ（登録商標）ｘ８６ハードウェア・ベースとの組み合わせに関する基礎をもつ。本発明のオペレーティング・システム・コンポーネントは、好ましくは、セキュリティ（ＭＡＣ）およびインテグリティ（ＭＣＣ）ポリシーの両方を可能にする強制アクセス制御（mandatory access control）を提供する。本発明の好ましい一実施形態によって実施される強制セキュリティ・ポリシーはＢｅｌｌおよびＬａＰａｄｕｌａのセキュリティ・モデルを反映しており、それはＤ．ＢｅｌｌおよびＬ．ＬａＰａｄｕｌａによる「Ｓｅｃｕｒｅ  ｃｏｍｐｕｔｅｒ  ｓｙｓｔｅｍｓ：Ｍａｔｈｅｍａｔｉｃａｌ  Ｆｏｕｎｄａｔｉｏｎ」、ＥＳＤ−ＴＲ−７３−２７８、Ｖｏｌ．１、Ｍｉｔｒｅ  Ｃｏｒｐ，１９７３年に記載されており、同文献の教示の全体を参照により本明細書に組み込む。
【００２９】
ＴＣＳＥＣ  Ｂ３またはコモン・クライテリア・システムのための最小要件を超えて、本発明の好ましい実施形態は、強制インテグリティ・ポリシー（中程度ないし高度な堅牢性プロファイルに必要とされる）と、追加のサブタイプ・ポリシーと、よく知られたＬｉｎｕｘ（登録商標）様の動作環境とを提供する。本発明を限定することを意図しない一例として、本発明の好ましい一実施形態のインテグリティ・モデルは、高度なウイルス保護のために使用されることができる。強制インテグリティ・ポリシーはＢｉｂａのインテグリティ・モデルを反映しており、それは、Ｂｉｂａ，Ｋ．Ｊ．による「Ｉｎｔｅｇｒｉｔｙ  ｃｏｎｓｉｄｅｒａｔｉｏｎｓ  ｆｏｒ  Ｓｅｃｕｒｅ  ｃｏｍｐｕｔｅｒ  Ｓｙｓｔｅｍｓ」、ＥＳＤ−ＴＲ７６−３７２、ＭＩＴＲＥ  Ｃｏ．、１９７７年４月に記載されており、同文献の教示の全体を参照により本明細書に組み込む。
【００３０】
強制アクセス制御に加えて、本発明の好ましい一実施形態は、任意アクセス制御（ＤＡＣ）もインプリメントし、ユーザＩＤに基づくポリシー実施のために必要とされるユーザ識別および認証の手段を提供する。本発明の好ましい一実施形態では、「サブタイプ」と呼ばれるポリシー機構を提供し、これは、ＭＡＣ、ＭＩＣおよびＤＡＣ制御と併せて顧客特定的（customer-specific）な方法で使用され得る。この実施形態では、それぞれのデバイス、プロセス、およびファイル・システム・オブジェクトは、サブタイプ属性を有する。各プロセスは、上述のデバイス、プロセス、およびファイル・システム・オブジェクト・タイプ毎に１つの、アクセス可能なサブタイプの３つのリストを有する。それらのタイプのうちの１つのもののオブジェクトにアクセスするためには、プロセスは、所有するサブタイプ・リストに、そのオブジェクトのサブタイプをもたなければならない。
【００３１】
これら４つの機構（ＤＡＣ、ＭＡＣ、ＭＩＣ、およびサブタイプ）は、様々なデータ・オブジェクト、プロセス、デバイスなどへのアクセスを制限または許可するために、アプリケーション設計者によって選択される様々な組み合わせで使用されることができる。例えば、特定のファイルは、これらのアクセス制御の選択によって、特定の区分のプロセスによってのみ変更可能であるが、それを越えて、特定のグループ、更には特定のユーザだけによって変更可能であるように制限されることができる。
【００３２】
ＴＳＦは、最小化、階層化、抽象化、およびデータ隠蔽を含む、複数の強力なアーキテクチャ上の特性を示す。本明細書で用いている最小化とは、全体的なシステムの複雑性を低減するために、重要性の低い非セキュリティの機能がＴＳＦから分離されるオペレーティング・システム設計技法を指す。これは、人間が複雑なデータ処理プログラムおよびシステムをうまく評価することを可能にする。本明細書で用いている階層化とは、編成原則として「レイヤ」を用いるモジュール化設計をＴＳＦが用いるオペレーティング・システム設計技法を指す。これは、明瞭に定義されたインタフェース、個別のレイヤ試験を提供し、ロッキング階層を容易にし、より抽象的なデータがより上位レイヤにあるように、データ抽象化のレイヤを指し示す。本明細書で用いている抽象化とは、より複雑なデータ構造が、より複雑でないデータ構造から組み立てられるオペレーティング・システム設計技法を指す。抽象化は、必要でないまたは好ましくない細部（オペレーティング・システムの１つのレイヤでは適切であり得る）を、より上位のレイヤで動作するプロセスまたはモジュールから隠すために使用される。本明細書で使用されるデータ隠蔽とは、データの範囲を最小化するオペレーティング・システム設計技法を指す。隠蔽されるデータは、ビジビリティ（visibility）が必要なモジュールだけから見ることができる。データ隠蔽は、抽象化の使用を強く推すために使用される。ＴＳＦは、ハードウェア機能を利用して、プロセス分離およびＴＳＦ分離を提供し、侵入に抵抗するように設計および実施される。システム設計は、正式のセキュリティ・モデルおよびその他の高水準設計文書に基づく。
【００３３】
大部分の現在のオペレーティング・システムとは異なり、本発明のオペレーティング・システムのコンポーネントは、好ましくは、セキュリティを中心に据えて構成される。従って、各データベース、アプリケーション、ユーザ、端末、およびプロセスを含むシステムのあらゆるレベルは、それと関連するセキュリティ・レベルを有する。図３に示されるように、本発明の好ましい一実施形態のオペレーティング・システムの部分は、「分離のリング（rings of isolation）」と呼ばれる（「ドメイン」とも呼ばれる）アーキテクチャを用い、この構成において、内側のリングはセキュリティ機能を提供するために協力し、外側のリングは適切に機能するために内側のリングに依存する。
【００３４】
図３に示されるマルチドメイン・アーキテクチャは、端末が異なるＭＡＣレベルでプロセスへ同時に接続することを防止する。異なるレベルのプロセスに接続するためには、ユーザは、最初に、現在実行中のプロセスから接続を断たなければならず、または、オペレーティング・システムがユーザをそれらのプロセスから切断しなければならない。オペレーティング・システムは、このドメイン・アーキテクチャおよびプロセス分離のため、基本的に改ざんされる恐れはない。実際、本発明の好ましい一実施形態は安全性が高く、プロセスは、ドメイン特権によって制限され、また、同じまたはより低いドメイン特権を有する他のプロセスへのみメッセージ送信が許可される。これらの規約のすべてはシステムそれ自体の内部で実施される。本発明を限定することを意図しない一例として、セキュリティ・カーネルを表し且つシステムの最高のセキュリティ・レベルで動作する図３のドメイン０は、ユーザからアクセスはできない。入力／出力デバイス・ドライバはこのレベルに存在することで、デバイス・ドライバへの権限のないアクセスを防止する。
【００３５】
上述のドメイン・アーキテクチャを使用してセキュリティを実施することに加えて、本発明の好ましい一実施形態は、更に、インテグリティ・ポリシーを使用して管理者とオペレータとの役割を分離する。システムは、管理者とオペレータとの役割に対して「最小特権の原則」（即ち、ユーザは自らの役目を実行するのに必要とされる権限より多くの権限を有さないべきである）を実施する。特権を持つ（および通常の）ユーザによって実行されるすべてのアクションは、監査されることができる。監査ログは、インテグリティおよびサブタイプの機構を用いて、変更から保護される。
【００３６】
本発明の好ましい一実施形態ものオペレーティング・システムのコンポーネントは、一連の不成功ログインやパスワード誤りなどのような、セキュリティ・ポリシー違反が今にも起こりかねないことを示すイベントが累積されることを検出する警報機構も提供する。個々のアカウンタビリティは監査能力を備えている。データ・スカベンジング（data scavenging）は、オブジェクト再使用（即ち、残余データ）防止機構によって防止される。
【００３７】
本発明のＴＳＦの好ましい一実施形態のマルチレベル・セキュリティ機能は、トラステッド・ラベリング、強制アクセス制御ポリシー、および強制インテグリティ制御ポリシーを実施し、これは、システムが、異なるクリアランスおよび必知事項をもつユーザに、異なる機密区分レベルもしくは機密性にあり且つ／又は異なる必知事項カテゴリもしくは区分にある情報を同時に保存および処理することを許すことができるようにする。許可されたユーザは、情報をその実際の機密性レベルで処理することができ、システム・ハイ動作でしばしば生じる情報の恣意的な過剰機密扱いを排除するのに役立つ。
【００３８】
配備されるまたはコモン・クライテリアを使用して評価される本発明の一施形態に関して、本発明は、好ましくは、ＥＡＬ５アシュアランス要件を満たすように設計され、ＥＡＬ６およびＥＡＬ７の要件の一部も満たされる。これらのＥＡＬ要件は大部分がオレンジ・ブック（即ち、ＴＣＳＥＣ）のＢ３アシュアランス要件と類似している。Ｂ３のために必要とされるセキュリティ機能が好ましくは達成されるが、本発明の好ましい一実施形態によって満たされる機能要件の正確な組は、顧客から出される保護プロファイルに依存する。
【００３９】
図１に示されるように、クラスＢ３システムと格付けされたシステムは、ＴＣＳＥＣによって必要とされるセキュリティ機能を提供するＴＣＢ／ＴＳＦを提供する。ＮＣＳＣの「Ｇｕｉｄａｎｃｅ  ｆｏｒ  Ａｐｐｌｙｉｎｇ  ｔｈｅ  ＤｏＤ  ＴＣＳＥＣ  ｉｎ  Ｓｐｅｃｉｆｉｃ  Ｅｎｖｉｒｏｎｍｅｎｔｓ」（「イエロー・ブック」として知られ、同文献の教示の全体を参照により本明細書に組み込む）は、「オープン・セキュリティ環境のためのセキュリティ・インデックス・マトリックス」を含む。明確にしておくと、オープンおよびクローズドという用語は、システムの動作環境ではなく、その開発環境におけるセキュリティ制御の厳格さを表す。図２は、所与の許可範囲内にあるユーザに所与の区分範囲内にあるデータへのアクセスを許すためにシステムがもつべき、最低限のＴＣＳＥＣレーティング（格付け）を示している。
【００４０】
区分の範囲が広がれば広がるほど、データの保護を保証するために、システムはより高いレーティングを必要とする。クラスＢ１システム（例えば、コンパートメント・モードのワークステーション）は、非機密扱いから機密の区画にわたって、または機密から最高機密／ＳＣＩにわたってデータが区画される多くのマルチレベル処理シナリオに対して、ほとんどアシュアランス（保証）を提供しない。
【００４１】
本発明のオペレーティング・システムのコンポーネントは、好ましくは、トラステッド・コンピューティング・ベース（ＴＣＢ）およびトラステッド・セキュリティ機能（ＴＳＦ）を含み、これらがセキュリティ・ポリシーおよび非トラステッド・コマンドを実施し、これらは一般に、Ｕｎｉｘ（登録商標）および／またはＬｉｎｕｘ（登録商標）ユーザに馴染み深いユーザ・インタフェースを提供する。
【００４２】
本発明の好ましい一実施形態は、Ｐｅｎｔｉｕｍ（登録商標）またはＸｅｏｎ（登録商標）のＣＰＵの４ドメイン・チップ・アーキテクチャを用い、オペレーティング・システム・コンポーネントの強制セキュリティおよびインテグリティ・アクセス制御のポリシーを強化するものであり、これは、セキュリティ・ドメインをハードウェアで物理的に分離することでなされ、それによりシステム・プロセスが互いに改ざんし合うことを防止する。マルチドメインＣＰＵアーキテクチャは、セグメント、ページ、および命令へのアクセスを制限する。図３に示されるように、ドメイン０からドメイン３までの４つのレベルが存在し、ドメイン０が最も特権的なレベルである。ＣＰＵは、メモリ参照内での保護違反に対する複数のチェックも提供する。
【００４３】
図３に示されるように、非ＴＳＦプロセスとＴＳＦプロセスとは、マルチドメインＣＰＵアーキテクチャへ同じようにマッピングされる。両タイプのプロセスが、同じドメイン０カーネル、ドメイン１トラステッド・システム・サービス、およびドメイン２オペレーティング・システム・サービスへマッピングされる。各ドメインにおけるプロセスについての詳しい情報は以下の通りである。
【００４４】
ドメイン０：セキュリティ・カーネル
最も特権的なドメインであるセキュリティ・カーネルは、システム・セキュリティ・ポリシーを実施するリファレンス・モニタの大部分を含む。完全なセキュリティ評価、テスト、および検証を可能にするために小さく且つ良く構造化されたカーネルは、基本ＯＳサービスを提供する。そのようなサービスは、プロセスおよび装置オブジェクトのための、リソース管理、プロセス・スケジューリング、割り込みおよびトラップ処理、監査、ならびに強制および任意のアクセス・ポリシーの実施を含むが、これらに限定されるものではない。そのような実施を容易にするために、Ｉ／Ｏデバイス・ドライバは、好ましくは、ドメイン０に存在する。ドメイン０プロセスは、ユーザによっての直接呼び出しや変更はできない。
【００４５】
ドメイン１：トラステッド・システム・サービス（ＴＳＳ）
ＴＳＳは、トラステッドおよび非トラステッドの両方のシステム・プロセスおよびアプリケーションのための、ネットワーキング、Ｉ／Ｏ、ファイル・システム管理、ならびにファイル・システム・オブジェクトの任意アクセス・ポリシーの実施を提供する。ＴＳＳ環境はセキュリティ・カーネルによって制御され、セキュリティ・カーネルは、ＴＳＳおよびその他のすべての動作において、強制セキュリティ、強制インテグリティ、およびサブタイプ制御を実施する。ドメイン１プロセスは、ユーザによっての直接呼び出しや変更はできない。
【００４６】
ドメイン２：オペレーティング・システム・サービス（ＯＳＳ）
ＯＳＳは、Ｌｉｎｕｘ（登録商標）用に書かれたアプリケーション、またはＬｉｎｕｘ（登録商標）ツールを使用するアプリケーションが求めるＡＰＩを提供する。ＯＳＳは、本発明の好ましい一実施形態の高信頼態様を管理および使用するのに役立つプロプライエタリＡＰＩも提供する。ＯＳＳは、ＡＰＩを、カーネルおよびＴＳＳによって提供されるトラステッド・オペレーティング・システム・プリミティブへと翻訳する。ＯＳＳは、いくつかのアプリケーション信号およびプロセス・グループも管理する。本発明の好ましい一実施形態のセキュリティ・アーキテクチャに起因して、アプリケーションは、ＴＳＦのＯＳＳ部分のみとインタフェースを取ることができ、ＴＳＳやカーネルを直接呼び出すことはできない。
【００４７】
ドメイン３：アプリケーション・ドメイン
プロセスが低いインテグリティで動作しており、特権を有していない場合、それは信頼性をもたない（非トラステッド）と見なされる。これらの非トラステッド・アプリケーションは、Ｌｉｎｕｘ（登録商標）／Ｕｎｉｘ（登録商標）ユーザに馴染み深いユーザ・コマンドおよびツールを含む。トラステッドおよび非トラステッドのアプリケーションは共にドメイン３で実行されるものであり、ドメイン３でのみ実行することができる。
【００４８】
トラステッド・ソフトウェア
トラステッド・ソフトウェアは、独立サービス（例えば、セキュリティ・マップ・エディタ）として動作するすべてのセキュリティ関連の機能を含む。いくつかのトラステッド・ソフトウェア機能は、例えば、ＴＳＦの強制および／または任意の制御（管理）をバイパスして、高インテグリティ・ユーザがファイル・システム階層を確立／変更して高インテグリティ・ノードの使用に対応するようにできるように、することができる。トラステッド・ソフトウェア機能は、ユーザ登録／削除、パスワード割り当て、システム・インストール／コンフィギュレーション、および他のオペレーティング・システム・コンポーネントによってサポートされない特権的タスクを含むセキュリティ関連のハウスキーピングのために、システム・オペレータおよび管理者が利用できるものである。なお、セキュリティ関連のハウスキーピングは上記のものに限定されるものではない。ドメイン３ユーザは、アプリケーション・セッション開始などのような少数のトラステッド・ソフトウェア機能を使用できる。
【００４９】
非トラステッド・ソフトウェアおよびランタイム・ライブラリ
また、本発明の好ましい一実施形態のオプション部分として、開発者が自らの非トラステッド・アプリケーションを書くことができるソフトウェア開発環境が含まれる。典型的には、「Ｃ」がそのような非トラステッド・アプリケーションのために使用されるプログラミング言語であるが、Ｌｉｎｕｘ（登録商標）によってサポートされるその他の言語およびシェルを使用することもできる。非トラステッド・コマンドおよびプログラムは、システムの管理用のオペレーティング・システムを用いて配布される。
【００５０】
トラステッド・データベース
本発明の好ましい一実施形態はトラステッド・データベースをインプリメントし、トラステッド・データベースは、機密ユーザおよびグループ・アクセス、セッション制御、ならびに非特権プロセスによる未許可の変更から保護されるプリント・キュー情報を含む。トラステッド・データベースは、ユーザの開発したトラステッド・プロセス、またはシステム／セキュリティ管理者によって使用されるトラステッド・エディタによってのみ、操作されることができる。
【００５１】
保護の哲学
本発明の好ましい一実施形態をマルチレベルで安全にする強制アクセス・ポリシーを実施するために、オペレーティング・システム・コンポーネントは、リファレンス・モニタをインプリメントする。リファレンス・モニタは、ユーザに代わってアクセスなどを行うトラステッドおよび非トラステッド・プロセスなどのシステム・サブジェクトと、ファイル・システム・オブジェクトやデバイスやセマフォやソケットやプロセスなどのシステム・オブジェクトとの間の認可されたアクセス関係を実施する。
【００５２】
トラステッド・システム・サブジェクトは、システムのトラステッド・データベースを操作する機能、またはＴＳＦの強制および／または任意のアクセス規則の厳格に規制された迂回（circumvention）を実行する機能のために、主に使用される。トラステッド・プロセスの典型的な例は、トラステッド・ガード（Trusted Guard）におけるリグレーダ（Regrader）（再分類手段／再ラベル付け手段）プロセスである。トラステッド・データベースを更新しなければならない、またはオペレーティング・システム・コンポーネントのアクセス制御をバイパスしなければならないそれら少数のプロセスを除いて、非トラステッド・サブジェクトは、大部分のアプリケーション機能を実行するために依存されることができる。
【００５３】
リファレンス・モニタ
リファレンス・モニタは、サブジェクトによってのオブジェクトを参照またはアクセスするそれぞれの試みを、サブジェクトがそのオブジェクトに対して実行することを許可された参照タイプ（読み取り、書き込み、および／または実行を含む）のリストと比較する。リファレンス・モニタのアクセス妥当性検証機構は、サブジェクトによるオブジェクトの参照のたびに呼び出され、それにより、あらゆる未許可アクセスを防止する。そのインテグリティを確実にするため、リファレンス・モニタのアクセス制御／妥当性検証機構は、改ざんされる恐れがないようにプログラムされる。リファレンス・モニタはＴＳＦでインプリメントれ、ＴＳＦは、Ｉｎｔｅｌ（登録商標）ＣＰＵのマルチドメイン分離機構を用いて、ドメイン２およびドメイン３の機能ならびにシステム上で動作するアプリケーションからのリファレンス・モニタの確実な分離を達成する。
【００５４】
ＴＳＦアシュアランス機構
本発明のすべてのソフトウェア・プロセスは、好ましくは、Ｂｅｌｌ−ＬａＰａｄｕｌａセキュリティ規則およびＢｉｂａインテグリティ規則のセキュリティ・カーネルの実施によって、互いに分離される。プロセスは、自らが支配する情報にだけアクセスすることができ、ＴＳＦ全体は、以下の機構によって未許可（不許可）の改ざんから保護される。
【００５５】
ドメイン分離
ドメイン分離は、カーネルのコードおよびデータを、他のあらゆるドメインのプロセスによる変更から保護し、また、各ドメインのコードおよびデータを、より特権の低いあらゆるドメインのユーザ／プロセスによる変更から保護する。
【００５６】
インテグリティ
システムの強制インテグリティ機構は、ＴＳＦプログラム・ファイル、データベース、および大部分のトラステッド・ソフトウェア・プロセスのインテグリティ・レベルを、オペレータに対してまたはそれより高く設定し、非トラステッド・ユーザ（サブジェクト）の最大インテグリティをＴＳＦオブジェクトのインテグリティより低く制限することによって、非トラステッド・ユーザ（サブジェクト）をＴＳＦから排除する。
【００５７】
プロセス分離
トラステッド・ソフトウェア・プロセスは（大部分のアプリケーションと同様に）、その作業データを、その他のプロセスによって共用されることができず、また非トラステッド・ソフトウェアによってアクセスされることができないプロセス・ローカル・データ・エリアに保有する。カーネルは、どのようなプロセスも、別のプロセスのプログラム・テキストおよびローカル・データに直接アクセスすることができないようにし、また、非トラステッド・プロセスがトラステッド・プロセスおよびそのデータを変更することを防止する。
【００５８】
トラステッド・パス
好ましい一実施形態では、端末がＴＳＦと通信可能になる前に、オペレータは、セキュア・アテンション・キー（ＳＡＫ）を押さなければならず、このキーは、端末を一時的にあらゆる非トラステッド・プロセッサ・プロセスから切り離す。これは、ユーザがＴＳＦと通信しており、ＴＳＦプロセスになりすます非トラステッド・プロセスとは通信していないことを、確実にする。トラステッド・ソフトウェアによって使用されるアンロックされた端末は、端末に特有のデバイス・サブタイプによって、非トラステッド・ソフトウェアおよびその他のユーザのプロセスから保護される。ユーザがセキュア・パスを介してＴＳＦに入った場合、セキュア・サーバは、その端末のサブタイプを、そのセッションに関連するすべての非トラステッド・プロセスから切り離す。端末からの非トラステッド・プロセスへのアクセスは、ユーザが明らかにトラステッド環境から出た後にのみ、復帰される。
【００５９】
サブタイプ
サブタイプはトークンのように使用され、システム上のオブジェクトにアクセスするためには、サブジェクトは、そのオブジェクトに対するオブジェクト・サブタイプを所有しなければならない。システムのサブタイプの機構はカーネルによって使用され、アクセスをプロセス、トラステッド・データベース、およびデバイスに制限する。上述したように、サブタイプの主な用途は、トラステッド・パスに対する制御を提供することであり、ＳＡＫが押されたとき、サーバは、端末のサブタイプを変更して、非トラステッド・プロセスがそれにアクセスすることを防止する。サブタイプは、ファイル・システム管理（ＦＳＭ）プロセスによっても使用され、ＦＳＭがファイル・オブジェクトへの排他的アクセスを得ることを保証する。ＦＳＭは、ファイル・オブジェクトにアクセスするとき、サブタイプを、ＦＳＭだけがアクセス可能なものにリセットする。ファイルを処理し終わった後、ＦＳＭは、ファイルをその元のサブタイプへとリセットする。最後に、サブタイプはシステムのトラステッド・データベースを保護するために使用され、それは、データベースにアクセスするのに必要な適切なサブタイプをトラステッド・プログラムにのみ与えることによってなされる。
【００６０】
強制セキュリティ・ポリシー
本発明の好ましい一実施形態の各オブジェクトは、一意の識別子によって参照され、そして、必知事項、強制アクセス属性および任意アクセス属性に基づく非階層的な強制アクセス制御をインプリメントするために、そのオブジェクト自体の、アクセスおよびステータス情報（サブタイプを含む）の組を有する。オブジェクトの強制アクセス情報は、その強制のセキュリティおよびインテグリティのレベルならびにカテゴリまたは区分を含むものであり、この情報は、カーネルがオブジェクトに関連する強制アクセス制御を決定するときの基礎を提供する。
【００６１】
本発明の好ましい一実施形態のサブジェクトは、コンピュータ・セキュリティ・ポリシーのＮＣＳＣ認可のＢｅｌｌ−ＬａＰａｄｕｌａの正式な数学的モデルに従ってオブジェクトだけを参照することができる。このポリシーは、データを未許可アクセスから保護するために設計されたセキュリティ規則の組によって実施される。簡潔に述べると、数学的モデルは以下のように動作する。
【００６２】
簡易セキュリティ：  サブジェクトは、サブジェクトのセキュリティ・レベルがオブジェクトより優位にある場合にのみ、オブジェクトの読み取りまたは実行を行うことができる。
【００６３】
セキュリティ＊特性（Security＊Property）：  サブジェクトは、オブジェクトのセキュリティ・レベルがサブジェクトより優位にある場合にのみ、オブジェクトに書き込みを行うことができる。本発明のセキュリティ＊特性のインプリメントは、好ましくは、サブジェクトとオブジェクトとが同じセキュリティ・レベルにある場合にのみ、サブジェクトがオブジェクトに書き込みを行うこと許可する。これは、より低いレベルのサブジェクトが、後でアクセスできないより高いレベルのオブジェクトへ書き込みを行うことを防止する。
【００６４】
本発明の好ましい一実施形態は、１６の階層のセキュリティ区分と、６４の独立した非階層的な「必知事項」セキュリティ・カテゴリ／区分とをサポートする。
【００６５】
強制インテグリティ・ポリシー
本発明の好ましい一実施形態は、システムの強制インテグリティ規則を実施するＫ．Ｊ．Ｂｉｂａのインテグリティ・ポリシーを実施するものであり、Ｋ．Ｊ．Ｂｉｂａのインテグリティ・ポリシーはＢｅｌｌ−ＬａＰａｄｕｌａのモデルの結果として生じるものである。システムの強制セキュリティ規則により、情報が未許可に開示されないように保護されるように、システムの強制インテグリティ規則は、情報に未許可の変更がなされないように保護する。
【００６６】
システムの強制インテグリティ・ポリシーは、セキュリティ管理者または開発者が、保護水準が高い実行ドメインを確立することを可能にするものであり、そのドメインの状態は、実行可能な主体はそれらが必要とするファイルを読むことができるが、それらのファイルは、未許可のロジックまたは悪意のあるコードによる変更から保護されている、というものである。本発明の好ましい一実施形態は現在は、８つの階層的な役割に基づくインテグリティ区分と、１６の独立した非階層的な必知事項インテグリティ・カテゴリ／区分をサポートする。簡潔に述べると、インテグリティ・モデルは以下のように動作する。
【００６７】
単純インテグリティ：  サブジェクトは、オブジェクトのインテグリティ・レベルがサブジェクトより優位にある場合にのみ、オブジェクト（例えば、データ・ファイル）に対して読み出しまたは実行を行うことができる。
【００６８】
インテグリティ＊特性（Integrity＊Propeerty）：  サブジェクトは、サブジェクトのインテグリティ・レベルがオブジェクトより優位にある場合にのみ、オブジェクトに書き込みを行うことができる。本発明のインテグリティ＊特性は、好ましくは、サブジェクトとオブジェクトとのインテグリティ・レベルが同じ場合にのみ、サブジェクトがオブジェクトに書き込みを行うことを許し、高いインテグリティのサブジェクトが、後でアクセスできない低いインテグリティのオブジェクト（他のソフトウェアによって信頼できると見なされ得る）へ書き込みを行うことを防止する。
【００６９】
任意アクセス制御
本発明は、好ましくは、任意アクセス・ポリシーを実施し、それによって、オブジェクトへのアクセスが、オブジェクトに関連づけられたサブジェクトの識別情報および／またはそれらのサブジェクトが所属するグループの識別情報に従って、オブジェクトのオーナによって割り当てられる。オブジェクトの任意アクセス情報は、少なくとも７つまでのユーザおよびグループの識別子（オブジェクトを所有するユーザおよび所有するグループを含む）と、それらの個々の読み取り、書き込み、および実行の許可とを含む。読み取り、書き込み、および実行の許可は、「全体（ｗｏｒｌｄ）」に対しても提供される。
【００７０】
アクセス・モード：  サブジェクトは、オブジェクトのオーナによって承諾されたモード（１または複数）においてのみ、オブジェクトにアクセスすることができる。各オブジェクトには、オブジェクトのオーナ、オーナのグループ（１または複数）、オーナによって許可された他のグループのメンバ、およびすべての他者（「全体」許可）に対しての、読み取り、書き込み、および実行の許可が割り当てられる。
【００７１】
ＴＳＦは、サブジェクトがオブジェクトへの任意アクセスを承諾されるべきかどうかを決定するために、以下の一連の規則を実施する。
【００７２】
もしサブジェクトがオブジェクトを所有するならば、指定されたオーナ許可を使用せよ、その他の場合、
もしサブジェクトがシステムのアクセス制御リストにエントリを有するならば、それらの許可を使用せよ、その他の場合、
もしサブジェクトのグループがオブジェクトのグループと同じならば、指定されたグループ許可を使用せよ、その他の場合、
もしサブジェクトのグループがＡＣＬの中に存在するならば、グループＡＣＬ許可を使用せよ、その他の場合、
指定された「全体」許可を使用せよ。
【００７３】
サブタイプ制御
プロセス、装置、およびファイル・システムのオブジェクトは、強制制御および任意制御に加えて、サブタイプによっても制御される。サブタイプは、非階層的である。アプリケーションが同じオーナーで同じ強制レベルで動作するとしても、サブタイプは、それらのアプリケーションを分離するために（例えば、ガードにおけるステージなど）、トラステッド・アプリケーションによって利用されることができる。
【００７４】
隠れチャネル（covert channel）保護
強制セキュリティ・ポリシーを実施するシステムは、強制セキュリティ・ポリシーに反する意図せぬ信号チャネルや不正な情報フローをなおも許すことがあり得る。そのような信号チャネルおよび不正なフローは、隠れチャネルとして一般に知られている。本発明を限定することを意図しない一例として、典型的な隠れチャネルは、ファイル・システムを使用して作られるものであり、例えば、低セキュリティ・レベルで悪意のあるプロセスがファイル作成を試みることにより作られる。そのような例では、ファイル作成の試みが成功した場合、それは「１」に等しいと見なされ、ファイル作成の試みが失敗した場合、それは「０」に等しいと見なされる。高セキュリティ・プロセスは、ファイル・システムまたはその一部を満たすことによって、ファイル作成の試みが成功であるかどうかを制御することができる。従って、ビットのストリングは、高セキュリティ・プロセスから低セキュリティ・プロセスへ、このシーケンスを繰り返すことによって、効果的に伝えられることができ、高セキュリティ・プロセスは、低セキュリティ・プロセスの作成の試みが成功することを望む場合、ファイルを除去する。そのような通信手段は、非常に効果的であることができ、強制セキュリティ・ポリシーなどを回避するのに使用できる。
【００７５】
隠れチャネルは、一般に、使用するのが難しく、低アシュアランス・システムは、それらを文書化することや減らすことを要求されない。しかし、本発明の好ましい一実施形態は、高アシュアランスであるように、また、非常に敵対的な環境において保護を提供するように設計され、従って、本発明は、好ましくは、隠れチャネルの数および容量（即ち、速度）を減らすための機構を組み入れ、潜在的な隠れチャネルは文書にされる。本発明の好ましい一実施形態で使用される、隠れチャネルの使用に対する保護に役立つ機構は、タイミング遅延を導入すること、および隠れチャネルとして使用され得る状況においてステータス値の覆い隠すことを含むが、これらに限定されるものではない。
【００７６】
ハードウェア
本発明の好ましい一実施形態は、好ましくは、パフォーマンスを向上させるため、Ｉｎｔｅｌ（登録商標）「Ｐｒｅｓｔｏｎｉａ」Ｘｅｏｎ（登録商標）２＋ＧＨｚ  ＣＰＵの際立った処理能力および内部構成を用いる。図４は、本発明の好ましい標準的なハードウェア構成に関する詳細を提供しており、本発明の好ましい一実施形態のオペレーティング・システム・コンポーネントがサポートするハードウェア周辺機器を含んでいる。
【００７７】
本発明の好ましい一実施形態は、タワー・ケースもしくはラック・マウント型の構成で、または高密度、ＴＥＭＰＥＳＴ、およびゾーン（Zone）の実施形態で実施されることができる。一貫性があり信頼姓がありセキュアな製品を送ることを保証するため、慎重なコンフィギュレーション制御およびテストが適用される。
【００７８】
アプリケーション
本発明の先の一実施形態上のトラステッド・アプリケーションは、マルチレベル・セキュリティ（ＭＬＳ）を、ＭＬＳシステムが低いリスクかつ大きい利益（payoff）での操作構成（operational configuration）において広く配備されているところまで成熟させることの、大きな手助けをした。先の実施形態を高保証プラットホームとして使用する、今動作するトラステッド・アプリケーション（そのいくつかは出願人らによって開発された）についての数々の認可および認定の作業が成し遂げられた。これらのアプリケーションの多くは、異なる機密性レベル（例えば、機密区分）および／または「必知事項」（カテゴリもしくは区分）で動作するネットワークの中での情報の厳格に制御された共有を許すように設計された、トラステッド・ガードである。
【００７９】
本発明の好ましい一実施形態は、これらの古いトラステッド・アプリケーションとバックワード・コンパチブルとなるように設計されることもできる。しかし、本発明のためのトラステッド・ガード・アプリケーションを構築するための２つの「イネーブリング・テクノロジ（enabling technologies）」、即ち、ＤａｔａＳｙｎｃガードおよび標準自動ガード環境（ＳＡＧＥ：Standard Automated Guard Environment）も開発された。
【００８０】
本発明の好ましい一実施形態のオペレーティング・システム・コンポーネントを用いれば、トラステッド・アプリケーションの開発がはるかに容易になる。アプリケーションは、「実際の」Ｌｉｎｕｘ（登録商標）システム上ですべて作成されることができ、また、開発システムとして実施される本発明の一実施形態上ですべて作成されることができ、また、その両方で部分別に作成されることができる。これらの開発環境のいずれにおいても、迅速に進化する開発ツールの完全に新しくかつ富かな組を、プログラマおよび設計者は利用できる。
【００８１】
ガード・イネーブリング・テクノロジ
ＤａｔａＳｙｎｃ  Ｇｕａｒｄ（ガード）
カスタマイズ可能なＤａｔａＳｙｎｃガード（登録商標）は、トラステッド・ガード・アプリケーションの新世代を代表する、史上初のＴＣＰ／ＩＰソケット・ベースの高アシュアランス・ガードである。ＤａｔａＳｙｎｃガードは、異なる機密区分（または機密性）レベルで別々のシステム・ハイ（system-high）のネットワーク上に存在するシステム間でのコネクション指向のデータ転送を管理するセキュリティ・ポリシーを厳格に実施する。ＤａｔａＳｙｎｃガードは、ほぼリアルタイムのデータ転送を達成する。元々は異なる機密性レベルで動作するデータベースの高信頼の同期を可能にするために考案されたＤａｔａＳｙｎｃガードは、通信プロトコルから独立しており、データをソケット・コネクションを介してガードに転送することができる任意の２つのシステム間を流れるＡＳＣＩＩ、ＨＴＭＬ、ＸＭＬ、整形式（well-formed）のバイナリ・データ、およびその他のデータを処理することができる。
【００８２】
そのデータ転送機構として「蓄積交換」ファイル転送プロトコルをＴＣＰ／ＩＰソケットで置き換えることによって、また、その処理の大部分をＲＡＭ内で実行して、ディスクに対して書き込みや読み取りを行う必要をなくし、またデータが１つのガード・サブルーチンから別のガード・サブルーチンへ渡されるたびにファイル・システムを再同期させる必要をなくすことによって、ＤａｔａＳｙｎｃガードは、データ・スループット中のトランザクションの待ち時間遅延を低減する。
【００８３】
現在の好ましい一実施形態では、ＤａｔａＳｙｎｃガードは、最大４つの異なる単一レベルのシステム・ハイのネットワーク上のデータベース間でデータ転送を仲介するために、複雑なフィルタ・プロファイルをサポートすることができる。ＤａｔａＳｙｎｃガードは、ＡＳＣＩＩおよび／または整形式のバイナリ・データをフィルタリングすることができ、データベース・トランザクションのヘッダのフォーマットが正しいことのチェックと、各データ・エレメントの内容についてのセキュリティ・チェックとを共に実行する。ＤａｔａＳｙｎｃガードは、複数の「ｉｆ−ｔｈｅｎ−ｅｌｓｅ」アクション、および洗練されたダーティー・ワード／クリーン・ワード（dirty word／clean word）サーチを実施することができる。
【００８４】
標準自動ガード環境
標準自動ガード環境（ＳＡＧＥ（登録商標））は、１組の設計コンセプト、インターフェース定義、実行可能コード、および認定文書である。ＳＡＧＥは、別名トラステッド・ゲートウェイとも呼ばれる、コネクションレス（蓄積交換）トラステッド・ガードを構築するための開発環境である。
【００８５】
ＳＡＧＥは、大部分のガードが必要とする共通エレメント（プロセス、ライブラリなど）を提供することによって、トラステッド・ガードをインプリメントするのに必要とされるコーディングを最小限に抑える。ＳＡＧＥは、ガードのＴＳＳＦを最小にすることによって、これらのガードの認可および認定を容易にする。ＳＡＧＥは、よく構造化されたフレームワークを提供し、それにより、プログラマは「ゼロから（from scratch）」トラステッド・ガード・アプリケーションを開発するよりも迅速かつ容易にそれらのアプリケーションを構築することができる。ＳＡＧＥガードの全般的な目的は、異なるセキュリティ特性をもつ２つのシステムまたはネットワークの間での制限されたデータ・フローを、安全に、自動的に、かつ効率的に可能にすることである。ガード開発者によってセキュリティ・ポリシーをカスタマイズすることができるが、ＳＡＧＥは、正確にそのポリシーを実施するように設計され、そして、データが本発明の好ましい一実施形態にあるときにそのデータを未許可の開示や変更から保護するように設計されている。
【００８６】
ＳＡＧＥは、標準ＡＮＳＩ  Ｃで開発され、認定の負担を和らげるために、トラステッド・ソフトウェア原則を使用して文書化されている。米国国防総省、米国国務省、および米国空軍向けのガードを含む複数のＳＡＧＥガードが、すでに認定されている。
【００８７】
本発明が詳細にかつその具体的な実施形態を参照して説明されたが、本発明の主旨および範囲から逸脱することなく、様々な改変および変更が本発明に施され得ることが、当業者には明らかであろう。従って、本発明の変更および変形が添付の特許請求の範囲およびその均等物の範囲に包含される限り、本発明はそのような変更および変形を含むものとする。
【図面の簡単な説明】
【００８８】
【図１】図１は、様々なＴＣＳＥＣセキュリティ区分レベルを達成するための要件の高水準の概要を提供する表である。
【図２】図２は、所与の許可の範囲内にあるユーザに、所与の区分の範囲内にあるデータへのアクセスを許すためにシステムがもつべき、最低限のＴＣＳＥＣ評価を示す表である。
【図３】図３は、本発明の好ましい一実施形態で用いられる４ドメイン構成を示すブロック図である。
【図４】図４は、本発明の好ましい一実施形態の一部として使用されるコンピュータ・システムについての現在好ましいハードウェアの仕様を提供する表である。
【図１】
2007524148.tif 000003
【図２】
2007524148.tif 000004
【図３】
2007524148.tif 000005
【図４】
2007524148.tif 000006
【手続補正書】
【提出日】平成17年9月8日(2005.9.8)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
コンピュータ読取可能な記録媒体に記録される、トラステッド・オペレーティング・システムのためのコンピュータ・プログラム製品であって、前記トラステッド・オペレーティング・システムが、
アプリケーション・ドメインを含む第１組のコンピュータ読取可能コードであって、前記アプリケーション・ドメインにおいてトラステッド・アプリケーションおよび非トラステッド・アプリケーションが実行されることができる、第１組のコンピュータ読取可能コードと、
オペレーティング・システム・サービス・レイヤを含む第２組のコンピュータ読取可能コードであって、前記オペレーティング・システム・サービス・レイヤが、少なくとも１つの他のオペレーティング・システム用に書かれたアプリケーションが前記トラステッド・オペレーティング・システムで実行されることを可能にするインタフェースを提供して、それによって前記オペレーティング・システム・サービス・レイヤが前記少なくとも１つの他のオペレーティング・システムをエミュレートするようにした、第２組のコンピュータ読取可能コードと、
トラステッド・システム・サービス・レイヤを含む第３組のコンピュータ読取可能コードと、
システム・セキュリティ・ポリシーおよびインテグリティ規則を実施するため、ならびにユーザおよび管理者のアクションを促進することを含む基本オペレーティング・システム・サービスを提供するためのセキュリティ・カーネルを含む第４組のコンピュータ読取可能コードであって、前記システム・セキュリティ・ポリシーが、データを未許可でアクセスされないように保護するために設計されたセキュリティ規則の組により、インプリメントされ、前記インテグリティ規則が、情報を未許可で変更されないように保護するようにした、第４組のコンピュータ読取可能コードと
を含む、
コンピュータ・プログラム製品。
【請求項２】
前記トラステッド・オペレーティング・システムが、マルチドメイン・プロセス分離機能を、プロセス分離を確実にするために該オペレーティング・システムが実行されているハードウェアにおいて、用いる、請求項１に記載のコンピュータ・プログラム製品。
【請求項３】
前記ハードウェア・マルチドメイン・プロセス分離機能が、セグメント、ページ、および命令へのアクセスを制限する、請求項２に記載のコンピュータ・プログラム製品。
【請求項４】
前記ハードウェア・マルチドメイン・プロセス分離機能が、メモリ参照内での保護違反に対する複数のチェックも提供する、請求項３に記載のコンピュータ・プログラム製品。
【請求項５】
前記アプリケーション・ドメインが、少なくとも１つの開発環境が実行されることを可能にする、請求項１に記載のコンピュータ・プログラム製品。
【請求項６】
前記開発環境が、統合された開発環境である、請求項５に記載のコンピュータ・プログラム製品。
【請求項７】
前記カーネル・レイヤが、前記トラステッド・オペレーティング・システム内で、強制セキュリティ、強制インテグリティ、およびサブタイプの制御を実施する、請求項１に記載のコンピュータ・プログラム製品。
【請求項８】
前記セキュリティ・カーネルが、強制セキュリティ制御および強制インテグリティ・アクセス制御を実施することによってユーザとデータとを分離する、請求項１に記載のコンピュータ・プログラム製品。
【請求項９】
前記トラステッド・オペレーティング・システムが、更に、任意アクセス制御を実施することによってユーザとデータとを分離する、請求項８に記載のコンピュータ・プログラム製品。
【請求項１０】
前記トラステッド・オペレーティング・システムが、インテグリティ・ポリシーを使用して管理者役割とオペレータ役割とを分離する、請求項９に記載のコンピュータ・プログラム製品。
【請求項１１】
前記トラステッド・オペレーティング・システムが、管理者役割およびオペレータ役割に対して最小特権の原則を実施する、請求項１０に記載のコンピュータ・プログラム製品。
【請求項１２】
ユーザおよび管理者のアクションが、少なくとも１つの監査ログにおいて監査される、請求項８に記載のコンピュータ・プログラム製品。
【請求項１３】
少なくとも１つの監査ログが、変更から保護される、請求項１２に記載のコンピュータ・プログラム製品。
【請求項１４】
すべての監査ログが、変更から保護される、請求項１３に記載のコンピュータ・プログラム製品。
【請求項１５】
ユーザのログイン失敗が監視されて、セキュリティ・ポリシー違反が今にも起こりかねないことを示すイベントの累積を検出する、請求項１に記載のコンピュータ・プログラム製品。
【請求項１６】
前記セキュリティ・カーネルは、異なるクリアランスをもつユーザが異なる機密区分レベルに存在する情報を同時に保存および処理することを可能にする、請求項１に記載のコンピュータ・プログラム製品。
【請求項１７】
前記セキュリティ・カーネルは、データがユーザのインテグリティ・レベルまたはそれより高いインテグリティ・レベルにある場合にのみ、前記ユーザがそのデータを処理することを可能にする、請求項１６に記載のコンピュータ・プログラム製品。
【請求項１８】
前記トラステッド・ソフトウェアはトラステッド・データベースを含む、請求項１に記載のコンピュータ・プログラム製品。
【請求項１９】
リファレンス・モニタを更に含む、請求項１に記載のコンピュータ・プログラム製品。
【請求項２０】
前記セキュリティ・カーネルは、非トラステッド・ソフトウェアがトラステッド・ソフトウェア・プロセスに関連する作業データにアクセスしないようにプロセス分離を実施する、請求項１に記載のコンピュータ・プログラム製品。
【請求項２１】
前記オペレーティング・システム・サービス・レイヤによってエミュレートされる前記少なくとも１つの他のオペレーティング・システムのうちの少なくとも１つが、オープン・ソース・オペレーティング・システムである、請求項１に記載のコンピュータ・プログラム製品。
【請求項２２】
前記オペレーティング・システム・サービス・レイヤが、更に、前記トラステッド・システム・サービス・レイヤの高信頼態様を管理および使用するために、少なくとも１つのプロプライエタリＡＰＩを提供する、請求項１に記載のコンピュータ・プログラム製品。
【請求項２３】
前記オペレーティング・システム・サービス・レイヤが、ＡＰＩコールを、前記セキュリティ・カーネルおよびトラステッド・システム・サービス・レイヤによって提供されるトラステッド・オペレーティング・システム・プリミティブへと、翻訳する、請求項２２に記載のコンピュータ・プログラム製品。
【請求項２４】
前記アプリケーション・ドメインで動作するアプリケーションが、前記オペレーティング・システム・サービス・レイヤとのみインタフェースを行うことができ、直接に前記トラステッド・システム・サービスまたはカーネル・レイヤによって提供される機能を呼び出すことができない、請求項１に記載のコンピュータ・プログラム製品。
【請求項２５】
トラステッド・コンピュータ・システムであって、
各々がマルチドメイン・アーキテクチャをサポートする少なくとも１つのプロセッサと、
前記トラステッド・コンピュータ・システムの操作を容易にするための少なくとも１つの端末と、
少なくとも１つのデータ記憶ユニットと、
少なくとも１つのメモリ・ユニットと、
前記トラステッド・コンピューティング・システム上で動作するセキュア・オペレーティング・システムであって、プロセス分離を実施するために前記少なくとも１つのプロセッサの前記マルチドメイン・アーキテクチャを用いるセキュア・オペレーティング・システムと
を含むトラステッド・コンピュータ・システム。
【請求項２６】
前記少なくとも１つのプロセッサがインテルＰｅｎｔｉｕｍ（登録商標）クラスのマイクロプロセッサである、請求項２５に記載のトラステッド・コンピュータ・システム。
【請求項２７】
前記少なくとも１つのデータ記憶ユニットがハード・ドライブである、請求項２５に記載のトラステッド・コンピュータ・システム。
【請求項２８】
前記少なくとも１つのメモリ記憶ユニットがランダム・アクセス・メモリである、請求項２５に記載のトラステッド・コンピュータ・システム。
【請求項２９】
少なくとも１つのネットワーク・インタフェースを更に含む請求項２５に記載のトラステッド・コンピュータ・システム。
【請求項３０】
セキュア・アテンション・キーを更に含む請求項２５に記載のトラステッド・コンピュータ・システム。
【請求項３１】
セキュリティ・ポリシー強化システムであって、
少なくとも１つがマルチドメイン・アーキテクチャをインプリメントする、少なくとも１つのプロセッサと、
少なくとも１つのランダム・アクセス・メモリ・ユニットと、
データがそれぞれのセキュリティ区分レベルに存在する少なくとも２つの異なるセキュリティ区分レベルを働かせるセキュア・オペレーティング・システムと、
データの内容に関してセキュリティ・チェックを実行して、前記データを前記セキュア・オペレーティング・システムによって１つの機密区分レベルから別の機密区分レベルへ転送できるか否かを決定する少なくとも１つのデータ・セキュリティ検証手段と
を含むセキュリティ・ポリシー強化システム。
【請求項３２】
少なくとも１つのネットワーク・インタフェースを更に含む、請求項３１に記載のセキュリティ・ポリシー強化システム。
【請求項３３】
前記少なくとも１つのネットワーク・インタフェースは、前記セキュリティ・ポリシー強化システムを、伝送制御プロトコル（ＴＣＰ）およびインターネット・プロトコル（ＩＰ）を使用する少なくとも１つのネットワークに接続する、請求項３１に記載のセキュリティ・ポリシー強化システム。
【請求項３４】
前記セキュリティ・ポリシー強化システムを少なくとも２つのネットワークに接続する少なくとも２つのネットワーク・インタフェースを更に含む、請求項３１に記載のセキュリティ・ポリシー強化システム。
【請求項３５】
前記少なくとも２つのネットワークの各々が異なる機密区分レベルで動作する、請求項３４に記載のセキュリティ・ポリシー強化システム。
【請求項３６】
前記少なくとも２つのネットワークが伝送制御プロトコル（ＴＣＰ）およびインターネット・プロトコル（ＩＰ）を用いる、請求項３５に記載のセキュリティ・ポリシー強化システム。
【請求項３７】
前記セキュア・オペレーティング・システムが、プロセス分離を確実にするために、前記少なくとも１つのプロセッサの前記マルチドメイン・アーキテクチャを用いる、請求項３１に記載のセキュリティ・ポリシー強化システム。
【請求項３８】
前記セキュア・オペレーティング・システムは、少なくとも１つの他のオペレーティング・システム用に書かれたアプリケーションがトラステッド・オペレーティング・システムで実行されることを可能にするインタフェースを提供する、請求項３１に記載のセキュリティ・ポリシー強化システム。
【請求項３９】
前記少なくとも１つのデータ・セキュリティ検証手段によって実行される前記セキュリティ・チェックが、前記少なくとも１つのランダム・アクセス・メモリ・ユニットで実行される、請求項３１に記載のセキュリティ・ポリシー強化システム。
【請求項４０】
コンピュータ読取可能な媒体に記録されたコンピュータ・プログラム製品であって、トラステッド・オペレーティング・システムを含み、該トラステッド・オペレーティング・システムは別のオペレーティング・システムをエミュレートするものであり、このエミュレートは、前記別のオペレーティング・システム用に書かれたアプリケーション・プログラムが、そのアプリケーション・プログラムに対する変更を必要とせずに前記トラステッド・オペレーティング・システム上で実行されることを可能にすることによりなされるものであり、前記トラステッド・オペレーティング・システムは、システム・セキュリティ・ポリシーおよびインテグリティ規則を実施するため、ならびにユーザおよび管理者のアクションを促進することを含む基本オペレーティング・システム・サービスを提供するためのセキュリティ・カーネルを含み、前記システムセキュリティ・ポリシーは、データを未許可でアクセスされないように保護するために設計されたセキュリティ規則の組によりインプリメントされるものであり、前記インテグリティ規則は、情報を未許可で変更されないように保護するものである、コンピュータ・プログラム製品。
【請求項４１】
エミュレートされた前記オペレーティング・システムがオープン・ソース・オペレーティング・システムである、請求項４０に記載のコンピュータ・プログラム製品。
【請求項４２】
複数のプロセスを同時に実行することができ、強制アクセスおよび任意アクセスの範囲を超えた追加的なアクセス制御区別化を可能にするサブタイプ機構を提供するトラステッド・オペレーティング・システム。
【請求項４３】
前記サブタイプ機構は、
前記オブジェクトのサブタイプが、第１のプロセスによってアクセスされることを許可されたサブタイプのリストにある場合にのみ、前記第１のプロセスがプロセス・オブジェクト、ファイル・システム・オブジェクト、または装置オブジェクトにアクセスすることを許可する、請求項４２に記載のトラステッド・オペレーティング・システム。
【請求項４４】
前記サブタイプ機構は、データのサブタイプが、第１のプロセスによってアクセスされることを許可されたサブタイプのリストにある場合にのみ、前記第１のプロセスが前記データにアクセスすることを許可する、請求項４２に記載のトラステッド・オペレーティング・システム。
【請求項４５】
任意のプロセスが任意のファイル・システム・オブジェクトにアクセスを試みるときはいつでも４つの個別のポリシーが実施されるトラステッド・オペレーティング・システムであって、前記ポリシーは、
強制セキュリティ・ポリシーと、
強制インテグリティ・ポリシーと、
任意アクセス制御ポリシーと、
サブタイプ・ポリシーと
を含む、
トラステッド・オペレーティング・システム。
【請求項４６】
隠れストレージ・チャネルの数および速度を制限することによって、第１のプロセスが、より高い機密扱いの第２のプロセスの存在または状態について知ることを防止するように構成されるトラステッド・オペレーティング・システム。
【国際調査報告】
2007524148.tif 000007