JP2010020777A - ゼロ−インストールipセキュリティ - Google Patents

ゼロ−インストールipセキュリティ Download PDF

Info

Publication number
JP2010020777A
JP2010020777A JP2009164651A JP2009164651A JP2010020777A JP 2010020777 A JP2010020777 A JP 2010020777A JP 2009164651 A JP2009164651 A JP 2009164651A JP 2009164651 A JP2009164651 A JP 2009164651A JP 2010020777 A JP2010020777 A JP 2010020777A
Authority
JP
Japan
Prior art keywords
protocol stack
system protocol
computer
primary system
message
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.)
Granted
Application number
JP2009164651A
Other languages
English (en)
Other versions
JP5639350B2 (ja
Inventor
Tero Kivinen
テロ・キビネン
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.)
Thales DIS CPL USA Inc
Original Assignee
SafeNet 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 SafeNet Inc filed Critical SafeNet Inc
Publication of JP2010020777A publication Critical patent/JP2010020777A/ja
Application granted granted Critical
Publication of JP5639350B2 publication Critical patent/JP5639350B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/16Implementing security features at a particular protocol layer
    • 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/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • G06F21/53Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2153Using hardware token as a secondary aspect

Abstract

【課題】セキュア通信の方法及びセキュア通信のためのシステムを提供する。
【解決手段】セキュア通信の方法及びセキュア通信のためのシステムのある実施形態において、コンピュータシステムは、カーネル空間で動作し、外部ネットワークとインターフェースする一次システムプロトコルスタックを備える。二次システムプロトコルスタック、セキュリティソフトウェア、及び少なくとも一つのアプリケーションプログラムがユーザ空間で動作し、また、カーネル空間にプログラムをインストールする特権を有していないユーザによって携帯用記憶媒体に供給され得る。アプリケーションプログラムは、二次システムプロトコルスタックとインターフェースする。二次システムプロトコルスタックは、一次システムプロトコルスタックとインターフェースする。セキュリティソフトウェアは、二次システムプロトコルスタックを通じて通信において動作する。
【選択図】図1

Description

本開示は、公衆網による通信のセキュリティ(安全)を維持することに関連する。
インターネット及び他の公衆網は情報の通信に広く使用されている。しかしながら、この情報の大部分は、私的性質のものであり、そのため、通信が権限のない人によって読まれることを防ぐべく通信を暗号化するため、及び、権限のない人による送信者のなりすましを防ぐべく通信を認証するため、種々のスキームが考え出されている。一般的なスキームの一つは、「IPセキュリティ(IPsec)」、すなわち、IETF標準RFC4301及びRFC4309において主に定義されたプロトコルスーツ(一式)であり、これは、5層TCP/IPモデルのレベル3、7層OSIモデルのレベル3であるネットワーク/インターネット層で動作する。
レベル3IPsecスーツは、レベル3IPsecがシステムプロトコル(TCP/IP又はUDP)スタックと実際のネットワークインターフェースとの間で動作するため、通常のアプリケーションソフトウェアはそれを使用するために特別に書かれることを要しないという利点を有する。この位置において、IPsecは、レベル5又はそれより上のアプリケーション層で実行するアプリケーションに対し透過型である。しかしながら、IPsecは、そのような低いレベルで動作するので、一般に、保護されたカーネル空間で動作し、また、オペレーティングシステムを変更し又はカーネルドライバをインストールする管理者特権を用いてのみインストールされ得る。その結果、IPsecは、IPsecが管理者によって与えられていないコンピュータに対する管理者特権を有していないユーザにはこれまで利用できなかった。例えば、多くの組織は、組織によって提供される携帯用コンピュータにユーザが管理者特権付きの追加のソフトウェアをインストールすることを許容せず、また、時には、サイバーカフェ及び公共キオスクにおけるコンピュータ等の第三者コンピュータを使用することが好都合である。
あるアプリケーションソフトウェアは、USBメモリスティック等の携帯用機器にインストールされ得、かつ、ホストコンピュータにインストールすることなく該携帯用機器から実行され得る。
しかしながら、そのようなソフトウェアには、システムプロトコルスタックとネットワークインターフェースとの間をホストコンピュータが介在することを可能にするであろうホストコンピュータにおけるカーネル特権を与えることができない。
一実施形態において、コンピュータシステムが開示され、該コンピュータシステムは、カーネル空間で動作し、かつ外部ネットワークとインターフェースする一次システムプロトコルスタックと、ユーザ空間で動作し、かつ一次システムプロトコルスタック及び少なくとも一つのアプリケーションプログラムとインターフェースする二次システムプロトコルスタックと、一次及び二次システムプロトコルスタック間の通信におけるユーザ空間で動作するセキュリティソフトウェアとを備える。
システムプロトコルスタックは、TCP/IPスタック、UDPスタック、又は類似のものであり得る。二次スタックと外部ネットワーク間のトラフィックが一次システムプロトコルスタックを通過するので、二次システムプロトコルスタックは、十分に実現(実行)される必要はない。システムプロトコルスタックの外観(出現)をアプリケーションプログラムに提示し、かつ一次システムプロトコルスタックへ又はそこから確実にメッセージを回送するために必要な通常のシステムプロトコルスタック機能の部分のみが必要となる。二次システムプロトコルスタックが特定のアプリケーションプログラム専用であり、かつアプリケーションプログラムがTCP/IPの機能のすべてを使用しない場合、二次システムプロトコルスタックは、使用されない機能に対するサポートを省略し得る。
セキュリティソフトウェアは、外部ネットワークによる送信のために二次システムプロトコルスタックから一次システムプロトコルスタックへと送られるメッセージを暗号化し及び/又は認証するために動作し得、また、一次システムプロトコルスタックから二次システムプロトコルスタックへと送られて外部ネットワークにより受信したメッセージを復号化し及び/又は該メッセージの認証を検証するために動作し得る。
セキュリティソフトウェアと一次システムプロトコルスタック間に送られる暗号化され及び/又は認証されたメッセージはカプセル化され得、これにより、一次システムプロトコルスタックは、暗号化及び/又は認証を乱すことなく該メッセージを転送する。
別の実施形態において、コンピュータに動作可能に接続されて使用されるように構成され、セキュリティソフトウェア及びコンピュータに対する命令を含む携帯型コンピュータ可読記憶媒体が開示される。上記命令は、二次システムプロトコルスタックを動作させ、メッセージを少なくとも一つのアプリケーションプログラムと二次システムプロトコルスタック間、及び、二次システムプロトコルスタックとコンピュータの一次システムプロトコルスタック間にセキュリティソフトウェアを介して転送するためのものである。
携帯型コンピュータ可読記憶媒体はまた、外部ネットワークに対するメッセージを、一次システムプロトコルスタックと直接交換するのではなく二次システムプロトコルスタックと交換するように構成された少なくとも一つのアプリケーションプログラムを含み得る。
更なる実施形態において、カーネル空間で動作しかつ外部ネットワークとインターフェースする一次システムプロトコルスタックを有するコンピュータを用いるセキュア通信の方法が開示される。該方法は、一次システムプロトコルスタックとインターフェースする二次システムプロトコルを、コンピュータにおけるユーザ空間で実行するステップにして、少なくとも一つのアプリケーションプログラムが二次システムプロトコルスタックとインターフェースし、セキュリティソフトウェアが二次システムプロトコルスタックを通じての通信で動作する該ステップと、アプリケーションプログラムからのメッセージを二次システムプロトコルスタックに送るステップと、該メッセージを安全にするためにセキュリティソフトウェアを使用するステップと、安全にされたメッセージを一次システムプロトコルスタックに送るステップと、安全にされたメッセージを一次システムプロトコルスタックから外部ネットワークに送るステップとを含む。
外部ネットワークはインターネットであり得る。セキュリティソフトウェアはIPSecソフトウェアであり得る。
上記及び他の側面、特徴及び利点は、以下の具体的な説明及び図面から明らかとなる。
図1は、コンピュータネットワークの概略図である。 図2は、セキュア通信のためのプロセスのフローチャートである。 図3は、図2のプロセスにおけるデータフローの図である。
添付図面の図1を最初に参照して、参照番号10で全体的に示されるコンピュータシステムの一実施形態は、インターネット14等の外部ネットワークに接続されるコンピュータ12を備える。コンピュータ12は、保護されたカーネル空間18で実行するオペレーティングシステム16と、ユーザ空間22で実行する一つ又は複数のアプリケーション20とを含む。オペレーティングシステムプロセスは、一次システムプロトコル(ある実施形態においてインターネットプロトコル(IP))スタック24を含み、一次システムプロトコルスタック24は、物理ネットワークインターフェース26を通じてインターネット14へ及びそれからIP形式パケットを送信及び受信し、また、IPスタックサービスにアクセスするためにアプリケーション20が使用可能なアプリケーションプログラミングインターフェース(API)を実行する。
コンピュータ12はまた、外部携帯用記憶媒体に対するコネクタ28と外部携帯用媒体とを備える。コネクタ28は、ある実施形態においてユニバーサルシリアルバス(USB)ポートであり、また、外部携帯用記憶媒体は、ある実施形態においてメモリスティック50であり、USBポート28への挿入によりコンピュータ12に一時的に接続される。メモリスティック50は、コンピュータ12のユーザ空間22で実行可能でかつ動作中にインターネット14と通信し得る少なくとも一つのアプリケーションプログラム52のためのコードを含む。メモリスティック50はまた、二次IP又は他のシステムプロトコルスタック56と、IPセキュリティ(IPsec)アプリケーション54と、インターセプタモジュール58とを動作させるためのコードを含む。二次IP又は他のシステムプロトコルスタック56は、一次システムプロトコルスタック24へ及びそれからメッセージを転送する。IPsecアプリケーション54は、二次システムプロトコルスタック56に統合IPsec機能性を与えるため、二次システムプロトコルスタック56と一次システムプロトコルスタック24との間のメッセージを取り込んで(捕獲して)安全にする。インターセプタモジュール58は、形式(フォーマット)に対する適切な変更を与えつつIPsecエンジン54と一次プロトコルスタック24との間にメッセージを中継する。
アプリケーションプログラム52は、一次システムプロトコルスタック24ではなく二次システムプロトコルスタック56を呼び出す(コールする)ために、外向(outgoing)インターネット接続を要求する際に配列される。ある実施形態において、アプリケーションプログラム52及び二次システムプロトコルスタック56及びIPsecアプリケーション54は、単一のプログラムとしてコンパイルされ、これにより、それらの間のトラフィックが該コンパイルされた単一プログラムの内部に来る。
ある実施形態において、アプリケーションプログラム52は、二次システムプロトコルスタック56及びIPsecアプリケーション54とは別個であり、また、アプリケーションプログラム52は、外部システムプロトコルスタックコールが、システムプロトコルスタック及びIPsecアプリケーション54とリンクするローカル通信チャンネルに向けられるように変更される。適切なリンクは、名前付きパイプ、Unix(登録商標)ドメインソケット、共有メモリ、及びローカルソケットを含む。例えば、二次システムプロトコルスタック56は、ソックスサーバとして機能し得る。この実施形態は、既存のプログラムがアプリケーションプログラム52のための基礎として使用されることになる単一のプログラムとしてのコンパイルよりも好ましいかもしれない。何故なら、現存するコードに対して一般的に要求される広範な変更がより少なくて済むからである。
更なる実施形態において、二次システムプロトコルスタック56及びIPsecアプリケーション54は、アプリケーションプログラム52の実際のコードに対する変更を必要とすることなくアプリケーションプログラム52が接続するように構成され得るソックスサーバ又は他のホストインターフェースを実現する。ある実施形態において、アプリケーションプログラム52に対するいかなる構成変更をも最小にするため、二次システムプロトコルスタック56は、アプリケーションプログラム52に対し、ほぼ現実と同じくらい、一次システムプロトコルスタック24又は他の標準ユーティリティであるように見える。例えば、二次システムプロトコルスタック56がソックスサーバとして現れる場合、これは、1024より上の任意に選ばれたポート番号において実行されるように構成され得る。オペレーティングシステムは、一般に、アプリケーションが、管理者特権なしで1024より上のローカルポートにバインドすることを許可する。アプリケーションプログラム52は、その際、同じ任意に選ばれたポート番号に接続するように構成されることを単に要する。二次システムプロトコルスタック56及びアプリケーションプログラム52が共にメモリスティック50にロードされる場合、それらを両方とも同じポート番号に対して事前構成(設定)することは取るに足らない。好ましくは、コンピュータ12がそれ自体のソックスサーバを有する場合のコンフリフトを避けるため、デフォルトソックスサーバTCPポート番号1080以外のポートが選ばれる。
更に別の実施形態において、プロセス間通信(IPC)プロトコルがアプリケーションプログラム52と二次システムプロトコルスタック56間の通信のために使用され得る。IPC機構は、ホストOSアクセス制御機能を用いかつTCPベースのソックスサーバに干渉し得るパーソナルファイアウォール相互作用の回避を避ける利点を有する。しかしながら、IPCプロトコルを使用する場合のアプリケーションプログラム52と二次システムプロトコルスタック56の直接リンキングは、第三者アプリケーションがIPsecサービスを使用すること防ぎ得る。これは、いくつかの構成において不利であり得る。
上述したように、IPsecアプリケーションは、慣例的に、IPスタックの外部側においてメッセージを取り込み、これにより、IPヘッダーが必要に応じてIPsec認証に含められ得る。そのため、特別に書かれるコードの量を最小にするため、IPsecアプリケーション54は、上述したように、二次システムプロトコルスタック56と一次システムプロトコルスタック24との間のメッセージを取り込むように配列され得る。本実施形態において、二次システムプロトコルスタック56は最終IPへッダーを生成しないので、IPsecアプリケーション54は、あるいは、システムプロトコルスタック56に更に上流に統合され得る。
次に図2を参照して、セキュア(安全)通信のプロセスのある実施形態において、ステップ102では、メモリスティック50が、USBポート28に挿入されることにより、動作可能にコンピュータ12に接続される。コンピュータ12は、標準「プラグアンドプレイ」USBドライバを有し得、これは、メモリスティック50を自動的に認識し、かつ、メモリスティック50をオペレーティングシステム16にインターフェースするために必要ないかなるソフトウェアをもロードする。
ステップ104において、コンピュータ12のユーザがアプリケーションプログラム52を開始する。アプリケーションプログラム52は、通常のユーザがそれに対する特権を有していないであろうカーネル空間又はケーネル機能へのインストール又はカーネル空間又はケーネル機能の構成を必要とすることなく、メモリスティック50からユーザ空間において実行するように設計される。IPsecアプリケーション54、二次プロトコルスタック56、及びインターセプタ58もユーザ空間において実行され、また、アプリケーションプログラム52が開始する時又はアプリケーションプログラム52によって呼び出された時に自動的に開始され得、あるいはユーザによって別個に開始され得る。
アプリケーションプログラム52は、IPsecを用いてインターネット14によりセキュアメッセージを遠隔サイト60に送ることを試みる。上述した変更のため、アプリケーションプログラム52からのメッセージは、一次システムプロトコルスタック24に対して直接ではなく、二次システムプロトコルスタック56へと送られる。IPsecアプリケーション54、二次プロトコルスタック56及びインターセプタ58は、一次システムプロトコルスタック24及びネットワークインターフェース26に対する制御を全く有していないため、該接続は、一次システムプロトコルスタック24のAPIに適合するカプセル化方法を使用するように構成される。この実施形態において、IETF標準RFC3948に従う、Internet Key Exchange(インターネットキーエクスチェンジ)(IKE)を伴うUser Datagram Protocol(ユーザデータグラムプロトコル)(UDP)、Network Address Translation Traversal(ネットワークアドレス変換走査)(NAT−T)、及び、IPsec Encapsulating Security Payload(カプセル化セキュリティペイロード)(ESP)パケットのUDPカプセル化である。しかしながら、他の実施形態において、一次システムプロトコルスタック24のソケットAPI及び遠隔サイト60によってカプセル化がサポートされることを条件に、他の該カプセル化方法が使用され得る。
ステップ106において、接続が開始されると、IPsecアプリケーション54におけるインターネットキーエクスチェンジ(IKE)モジュールは、インターセプタ58に対し、IKENAT−Tトランザクションに対する標準ポートであるポート4500を用いて一次プロトコルスタック24のUDPポートにバインドすることを要求するが、インターセプタ58は、コンピュータ12のオペレーティングシステム16が1024より大きい番号でかつ4500以外のポートを選ぶことを許容する。インターセプタ58は、要求されたポート4500と一次プロトコルスタック24によって割り当てられたポートとの間のマッピングを内部で維持する。IKEネゴシエーション中、遠隔サイト60は、現実のポートからIKEUDPデータグラムを受信するが、データグラム内においてIKEモジュールはポート4500として起点を宣言する。遠隔サイト60及びローカルIKEモジュールの両方は、不一致を検出し、原因がNATゲートウェイの背後にあると推論し、更に、結果として生じるIPsecセキュリティアソシエーション(SA)に対しUDPカプセル化をイネーブルする。
次に図3をも参照して、ステップ108において、アプリケーションプログラム52は、ペイロードデータを、二次スタック56におけるソケット、遠隔IPアドレス及び遠隔ポートを含むタプルとして、二次システムプロトコルスタック56に送る。ステップ110において、二次スタック56は、TCP/UDPヘッダー及びIPヘッダーを追加し、結果として生じるIPパケットを転送する。ステップ112において、IPsecアプリケーション54は、暗号化し、認証し、又は、別の方法で送信(出ていく/アウトバウンド)メッセージを安全にするため、二次システムプロトコルスタック56から該IPパケットを取り込む。該パケットは、例えば、標準IPsec「トランポートモード」の態様で暗号化又は認証され得、これは、最初のTCP/UDPヘッダーが暗号化されたペイロードに含められ、二次システムプロトコルスタック56によって生じたIPヘッダーが変更されないままであり、更に、暗号化されたか又は他の方法で安全にされたペイロードのための正しいカプセル化セキュリティペイロード(ESP)及びUDPヘッダーが該IPヘッダーの背後に挿入されるようにするためである。あるいは、「トンネルモード」において、最初のIPヘッダーは、暗号化されたパケット内部に隠され得、また、IPsecアプリケーション54は、ESP及びUDPヘッダーのみならず、それ自体のIPヘッダーを追加し得る。単なるルーティング及び転送を上回ることを行う、ファイアウォール、アドレス変換機構等の機器を通じてインターネットパケット及びメッセージを転送する場合にヘッダーをカプセ化、付加又は置換するための技術はよく知られている。まだ開発されていない技術を含むどのような適切な技術も使用され得る。IPsecエンジン54は、次いで、安全にされたメッセージをインターセプタ58に転送する。
ステップ114では、インターセプタ58は、この実施形態のIP及びUDPヘッダーにおいて、送信IP及びカプセル化ヘッダーを除去し、また、安全にされたデータを、前のIKEエクスチェンジから遠隔IPアドレス及びポート番号と共に遠隔サイト60に送るため、一次システムプロトコルスタック24のAPIに対するシステムコールを発生させる。ポート番号は、ステップ106からマッピングを用いて生成される。
ステップ116において、一次システムプロトコルスタック24は、最終ヘッダーを生成し、また、メッセージを物理ネットワークインターフェース26に転送し、メッセージを物理ネットワークインターフェース26は、ステップ118において、該メッセージをインターネット14を介して遠隔サイト60に送る。例えば、IPsecアプリケーション54からの安全にされたESPパケットは、APIインターフェースコールにおける情報から一次システムプロトコルスタック24によって生成されたIPヘッダーと共に見かけ上標準なUDPパケットとしてカプセル化され得る。
ステップ120において、UDPパケットの形式で遠隔サイト60からの入信(入ってくる)メッセージは、物理ネットワークインターフェース26で受信され、物理ネットワークインターフェース26は、ステップ122において、メッセージを一次システムプロトコルスタック24に転送する。ステップ124において、一次システムプロトコルスタック24はIPヘッダーを除去し、かつ入信UDPデータグラムがUDPソケットで利用可能であることを通知する。ステップ126において、インターセプタ58は、適切なAPIシステムコールを用いてUDPペイロード、遠隔IPアドレス及びデータグラムのポートを受信する。
UDPカプセル化ヘッダーが適切である場合、インターセプタは、APIシステムコールからの情報を用いてIPパケットを合成し、ステップ106で生じたマッピングを用いてポート番号を4500にマッピングし、更に、パケットをIPsecアプリケーション54に転送する。IPsecアプリケーション54は、ステップ128において入信パケットを復号化し、又は、その認証ヘッダーを検証しかつはぎ取り、ペイロードを、再構成されたIP及びTCP/UDPヘッダーと共に二次システムプロトコルスタック56へ転送する。ステップ130において、二次システムプロトコルスタック56は次いで、正しいアプリケーションプログラム52に対する転送のため、該ペイロードを正しいソケットで利用可能にする。アプリケーションプログラム52はパケットのデータ内容を通常のやり方で処理する。
特定の実施形態が記述されたが、当業者は、異なる実施形態の特徴が組み込まれ得、また、代用され得ることを理解する。
例えば、アプリケーションプログラム52、二次システムプロトコルスタック56、IPsecコード54、及びインターセプタ58は、メモリスティック50にロードされ、メモリスティック50から実行するように記述した。これに代えて、それらのいずれか又はすべてが、コンピュータ12の永久記憶ボリュームにロードされ得るが、これは、IPsecコード54が一次システムプロトコルスタック24と物理ネットワークインターフェース26との間のメッセージをインターセプトすることを可能にするであろう管理者特権なしになされる。
記述したシステム及び方法の実現についての種々の詳細は、コンピュータ12及びオペレーティングシステム16の詳細に依存し得、また、記述したシステム及び方法を、将来開発されるコンピュータ及び/又はオペレーティングシステムを含む異なるコンピュータ及び/又はオペレーティングシステムに適合させることは当業者の能力の範囲内である。
現在照準のインターネットプロトコル及び手順を使用するものとして実施形態が記述されたが、記述したシステム及び方法を、将来開発されるものを含む異なるネットワーク及び/又は異なるプロトコルに適合させることは当業者の能力の範囲内にある。あるいは、使用される標準ではなない手順が一次システムプロトコルスタック及び遠隔サイト60と適合するならば、該手順が使用され得る。しかしながら、特定の遠隔サイト60及び特定の一次プロトコルスタック24のみが使用されかつ標準ではない手順と適合することが分かっている場合を除き、それは、不適合による通信欠陥のリスクの上昇を伴い得る。これは、通信の成功又は失敗を明示するリポートを伴わない、UDP等の「コネクションレス」プロトコルを用いる場合に特に深刻な問題である。
10 コンピュータシステム
12 コンピュータ
14 インターネット
16 オペレーティングシステム
18 カーネル空間
20 アプリケーション
21 コンピュータ
22 ユーザ空間
24 一次システムプロトコルスタック
26 物理ネットワークインターフェース
28 コネクタ/USBポート
50 メモリスティック
52 アプリケーションプログラム
54 IPセキュリティアプリケーション
56 二次システムプロトコルスタック
58 インターセプタモジュール

Claims (15)

  1. コンピュータシステムであって、
    カーネル空間で動作しかつ外部ネットワークとインターフェースする一次システムプロトコルスタックと、
    ユーザ空間で動作しかつ一次システムプロトコルスタックとインターフェースする二次システムプロトコルスタックと、
    ユーザ空間で動作しかつ二次システムプロトコルスタックとインターフェースする少なくとも一つのアプリケーションプログラムと、
    ユーザ空間で動作しかつ二次システムプロトコルスタックを通じての通信においてユーザ空間で動作するセキュリティソフトウェアとを備えたコンピュータシステム。
  2. 前記二次システムプロトコルスタックはアプリケーションプログラムと統合される請求項1のコンピュータシステム。
  3. 前記セキュリティソフトウェアは、外部ネットワークにより送信のために二次システムプロトコルスタックから一次システムプロトコルスタックへと送られるメッセージを安全にすると共に、一次システムプロトコルスタックから二次システムプロトコルスタックへと送られ、外部ネットワークにより受信したメッセージを非安全にするように動作する請求項1又は2のコンピュータシステム。
  4. 前記セキュリティソフトウェアは、一次システムプロトコルスタックに送られた安全にされたメッセージをカプセル化するように動作し、これにより、一次システムプロトコルスタックは、該メッセージをセキュリティに関連したデータに影響を及ぼすことなく送る請求項1〜3のいずれか一つのコンピュータシステム。
  5. 動作中、前記セキュリティソフトウェアと一次システムプロトコルスタックとの間に介在されるインターセプタを備え、前記セキュリティソフトウェアは、照準システムプロトコルスタックから外部ネットワークへと送るために適切であるフォーマットでアウトバウンドメッセージを発し、該インターセプタは、該メッセージを、外部ネットワークへの送信のために適切なメッセージを生成する一次システムプロトコルスタックによる処理のために適切なフォーマットで一次システムプロトコルスタックへと転送する請求項1〜4のいずれか一つのコンピュータシステム。
  6. 前記インターセプタは、アウトバウンドメッセージからヘッダーを取り除き、一次システムプロトコルスタックに情報を供給し、該情報から、一次システムプロトコルスタックは除去したヘッダーにフォーマットが類似するヘッダーを加える請求項5のコンピュータシステム。
  7. 前記インターセプタは、メッセージのルーティングで使用される前記除去したヘッダーからの少なくとも一つのデータの値を、一次システムプロトコルスタックに供給された前記情報における対応するデータの異なる値にマップする請求項6のコンピュータシステム。
  8. コンピュータに動作可能に接続されて使用するように構成されるコンピュータ可読記憶媒体であって、該コンピュータに対するセキュリティソフトウェア及び命令のためのコンピュータ可読コードを含み、該命令は、二次システムプロトコルスタックを動作させ、前記セキュリティソフトウェアを介して、一つのアプリケーションプログラムと二次システムプロトコルスタックとの間、及び二次システムプロトコルスタックとコンピュータの少なくとも一次システムプロトコルスタックとの間にメッセージを送るものであるコンピュータ可読媒体。
  9. コンピュータが少なくとも一つのアプリケーションプログラムを実行するようにさせるコンピュータ可読命令を含む請求項8のコンピュータ可読記憶媒体。
  10. 前記少なくとも一つのアプリケーションプログラムは、外部ネットワークに対するメッセージを、一次システムプロトコルスタックと直接交換するのではなく、二次システムプロトコルスタックと交換するように構成される請求項9のコンピュータ可読記憶媒体。
  11. 動作中、セキュリティソフトウェアと一次システムプロトコルスタック間に介在されるインターセプタのためのコンピュータ可読コードを備え、前記セキュリティソフトウェアは、標準システムプロトコルスタックから外部ネットワークへと送るために適切なフォーマットでアウトバウンドメッセージを発する命令を含み、該インターセプタは、外部ネットワークに送るために適切なメッセージを生成する一次システムプロトコルスタックによる処理のために適切なフォーマットで前記メッセージを一次システムプロトコルスタックに転送する命令を含む請求項8〜10のいずれか一つのコンピュータ可読記憶媒体。
  12. 前記インターセプタは、アウトバウンドメッセージからヘッダーを取り除き、かつ、一次システムプロトコルスタックに、一次システムプロトコルスタックが除去したヘッダーにフォーマットが類似のヘッダーを付加することを可能にする情報を供給する命令を含む請求項11のコンピュータ可読記憶媒体。
  13. 前記インターセプタは、メッセージのルーティングで使用される前記除去したヘッダーからの少なくとも一つのデータの値を、一次システムプロトコルスタックに供給された前記情報における対応するデータの異なる値にマップする請求項12のコンピュータ可読記憶媒体。
  14. 該コンピュータ可読記憶媒体は、使用のためにコンピュータに動作可能に一時的に接続されるように構成された携帯用記憶媒体である請求項8〜13のいずれか一つのコンピュータ可読記憶媒体。
  15. カーネル空間で動作しかつ外部ネットワークとインターフェースする一次システムプロトコルスタックを有するコンピュータを使用するセキュア通信の方法であって、
    コンピュータにおけるユーザ空間で、一次システムプロトコルスタックとインターフェースする二次システムプロトコルを実行するステップにして、少なくとも一つのアプリケーションプログラムが二次システムプロトコルスタックとインターフェースし、セキュリティソフトウェアが二次システムプロトコルスタックを通じて通信において動作する該ステップと、
    アプリケーションプログラムから二次システムプロトコルスタックへとメッセージを送るステップと、
    前記メッセージを安全にするセキュリティソフトウェアを使用するステップと、
    前記安全にされたメッセージを一次システムプロトコルスタックに送るステップと、
    前記安全にされたメッセージを一次システムプロトコルスタックから外部ネットワークに送るステップとを含む方法。
JP2009164651A 2008-07-14 2009-07-13 ゼロ−インストールipセキュリティ Expired - Fee Related JP5639350B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13482008P 2008-07-14 2008-07-14
US61/134820 2008-07-14

Publications (2)

Publication Number Publication Date
JP2010020777A true JP2010020777A (ja) 2010-01-28
JP5639350B2 JP5639350B2 (ja) 2014-12-10

Family

ID=41227164

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009164651A Expired - Fee Related JP5639350B2 (ja) 2008-07-14 2009-07-13 ゼロ−インストールipセキュリティ

Country Status (3)

Country Link
US (1) US20100011375A1 (ja)
EP (1) EP2146299A3 (ja)
JP (1) JP5639350B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014184942A1 (ja) * 2013-05-17 2014-11-20 株式会社日立製作所 セキュリティ管理システム、装置、および方法
JP2014225227A (ja) * 2013-04-26 2014-12-04 キヤノン株式会社 通信装置、通信制御方法、及びプログラム

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100182970A1 (en) * 2009-01-21 2010-07-22 Qualcomm Incorporated Multiple Subscriptions Using a Single Air-Interface Resource
US8750112B2 (en) * 2009-03-16 2014-06-10 Echostar Technologies L.L.C. Method and node for employing network connections over a connectionless transport layer protocol
US8289970B2 (en) * 2009-07-17 2012-10-16 Microsoft Corporation IPSec encapsulation mode
US20110041128A1 (en) * 2009-08-13 2011-02-17 Mathias Kohlenz Apparatus and Method for Distributed Data Processing
US8788782B2 (en) 2009-08-13 2014-07-22 Qualcomm Incorporated Apparatus and method for memory management and efficient data processing
US8762532B2 (en) * 2009-08-13 2014-06-24 Qualcomm Incorporated Apparatus and method for efficient memory allocation
US9038073B2 (en) * 2009-08-13 2015-05-19 Qualcomm Incorporated Data mover moving data to accelerator for processing and returning result data based on instruction received from a processor utilizing software and hardware interrupts
US10437608B2 (en) * 2009-08-24 2019-10-08 Wagan Sarukhanov Microminiature personal computer and method of using thereof
TW201525858A (zh) * 2013-12-31 2015-07-01 Ibm 基板管理控制器與其韌體載入方法
CN113765933B (zh) * 2021-09-16 2022-11-25 杭州安恒信息技术股份有限公司 一种流量加解密方法及计算机可读存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030014626A1 (en) * 2001-07-13 2003-01-16 Yuri Poeluev Data handling in IPSec enabled network stack
US6981140B1 (en) * 1999-08-17 2005-12-27 Hewlett-Packard Development Company, L.P. Robust encryption and decryption of packetized data transferred across communications networks
JP2006080936A (ja) * 2004-09-10 2006-03-23 Japan Radio Co Ltd 通信端末及び通信方法
JP2008020977A (ja) * 2006-07-11 2008-01-31 Sony Computer Entertainment Inc ネットワークプロセッサシステムおよびネットワークプロトコル処理方法

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5983350A (en) * 1996-09-18 1999-11-09 Secure Computing Corporation Secure firewall supporting different levels of authentication based on address or encryption status
US6321336B1 (en) * 1998-03-13 2001-11-20 Secure Computing Corporation System and method for redirecting network traffic to provide secure communication
US6675218B1 (en) * 1998-08-14 2004-01-06 3Com Corporation System for user-space network packet modification
US20020042875A1 (en) * 2000-10-11 2002-04-11 Jayant Shukla Method and apparatus for end-to-end secure data communication
US7146432B2 (en) * 2001-01-17 2006-12-05 International Business Machines Corporation Methods, systems and computer program products for providing failure recovery of network secure communications in a cluster computing environment
US7398389B2 (en) * 2001-12-20 2008-07-08 Coretrace Corporation Kernel-based network security infrastructure
US7644188B2 (en) * 2002-02-25 2010-01-05 Intel Corporation Distributing tasks in data communications
WO2004030266A1 (en) * 2002-09-24 2004-04-08 Telefonaktiebolaget Lm Ericsson (Publ) Method and devices for error tolerant data transmission, wherein retransmission of erroneous data is performed up to the point where the remaining number of errors is acceptable
US8121148B2 (en) * 2005-03-24 2012-02-21 Ixia Protocol stack using shared memory
US7414975B2 (en) * 2005-03-24 2008-08-19 Ixia Protocol stack
US8806012B2 (en) * 2006-03-31 2014-08-12 Intel Corporation Managing traffic flow on a network path
JP5078514B2 (ja) * 2007-09-10 2012-11-21 株式会社リコー 通信装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6981140B1 (en) * 1999-08-17 2005-12-27 Hewlett-Packard Development Company, L.P. Robust encryption and decryption of packetized data transferred across communications networks
US20030014626A1 (en) * 2001-07-13 2003-01-16 Yuri Poeluev Data handling in IPSec enabled network stack
JP2006080936A (ja) * 2004-09-10 2006-03-23 Japan Radio Co Ltd 通信端末及び通信方法
JP2008020977A (ja) * 2006-07-11 2008-01-31 Sony Computer Entertainment Inc ネットワークプロセッサシステムおよびネットワークプロトコル処理方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
CSNG200700417002; 神坂 紀久子: '高遅延環境下におけるIP-SANを用いた暗号処理最適化手法の実装と評価' 電子情報通信学会論文誌 第J90-D巻 第1号, 20070101, p.16〜29, 社団法人電子情報通信学会 *
JPN6013008425; 神坂 紀久子: '高遅延環境下におけるIP-SANを用いた暗号処理最適化手法の実装と評価' 電子情報通信学会論文誌 第J90-D巻 第1号, 20070101, p.16〜29, 社団法人電子情報通信学会 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014225227A (ja) * 2013-04-26 2014-12-04 キヤノン株式会社 通信装置、通信制御方法、及びプログラム
WO2014184942A1 (ja) * 2013-05-17 2014-11-20 株式会社日立製作所 セキュリティ管理システム、装置、および方法

Also Published As

Publication number Publication date
EP2146299A3 (en) 2010-06-02
EP2146299A2 (en) 2010-01-20
US20100011375A1 (en) 2010-01-14
JP5639350B2 (ja) 2014-12-10

Similar Documents

Publication Publication Date Title
JP5639350B2 (ja) ゼロ−インストールipセキュリティ
JP4727125B2 (ja) ファイア・ウォールを経由する安全なデュアル・チャネル通信システム及び方法
CN107018134B (zh) 一种配电终端安全接入平台及其实现方法
US6101543A (en) Pseudo network adapter for frame capture, encapsulation and encryption
TWI545446B (zh) 與一公用雲端網路一同使用之方法及系統
US8631139B2 (en) System and method for automatically initiating and dynamically establishing secure internet connections between a fire-walled server and a fire-walled client
JP4737089B2 (ja) Vpnゲートウェイ装置およびホスティングシステム
US9596077B2 (en) Community of interest-based secured communications over IPsec
US7941549B2 (en) Protocol exchange and policy enforcement for a terminal server session
US10425384B1 (en) Optimizing connections over virtual private networks
US20070101414A1 (en) Method for stateful firewall inspection of ice messages
WO2019005426A1 (en) INTRODUCTION OF INTERMEDIATE BOXES IN SECURE COMMUNICATIONS BETWEEN A CLIENT AND A SERVER
WO2020033489A1 (en) Systems and methods for server cluster network communication across the public internet
TW201511508A (zh) 用於對虛擬私人網路之特定應用程式存取之系統及方法
Aboba et al. Securing block storage protocols over ip
KR20040035902A (ko) 네트워크 주소 변환 상에서의 데이터 전송 방법 및 장치
TW201635164A (zh) 利用公有雲端網路的方法、私有雲端路由伺服器及智慧型裝置客戶端
TWI537744B (zh) 不利用公用雲端型路由伺服器之私有雲端路由伺服器、私有網路服務及智慧型裝置客戶端架構
TW201616374A (zh) 利用公有雲端網路的方法、私有雲端路由伺服器及智慧型裝置客戶端
JP4372075B2 (ja) 通信システム、ブロードバンドルータ、情報処理装置及びそれらに用いるnat越え機能実現方法
CN110351308B (zh) 一种虚拟专用网络通信方法和虚拟专用网络设备
US20080059788A1 (en) Secure electronic communications pathway
JP6075871B2 (ja) ネットワークシステム、通信制御方法、通信制御装置及び通信制御プログラム
Schulz et al. Secure VPNs for trusted computing environments
Handley et al. Internet Engineering Task Force (IETF) A. Bittau Request for Comments: 8547 Google Category: Experimental D. Giffin

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120713

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120726

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20121025

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20121025

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130131

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130226

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20130524

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20130529

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140204

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20140225

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20140228

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140502

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20141006

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20141024

R150 Certificate of patent or registration of utility model

Ref document number: 5639350

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees