JP4245838B2 - セキュアクライアントサーバトランザクションを管理するための方法及びシステム - Google Patents

セキュアクライアントサーバトランザクションを管理するための方法及びシステム Download PDF

Info

Publication number
JP4245838B2
JP4245838B2 JP2001508673A JP2001508673A JP4245838B2 JP 4245838 B2 JP4245838 B2 JP 4245838B2 JP 2001508673 A JP2001508673 A JP 2001508673A JP 2001508673 A JP2001508673 A JP 2001508673A JP 4245838 B2 JP4245838 B2 JP 4245838B2
Authority
JP
Japan
Prior art keywords
server
packet
data
client
computer
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.)
Expired - Fee Related
Application number
JP2001508673A
Other languages
English (en)
Other versions
JP2003504714A (ja
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 インテル コーポレイション
Publication of JP2003504714A publication Critical patent/JP2003504714A/ja
Application granted granted Critical
Publication of JP4245838B2 publication Critical patent/JP4245838B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

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/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0281Proxies
    • 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
    • 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
    • H04L63/0471Network 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 applying encryption by an intermediary, e.g. receiving clear information at the intermediary and encrypting the received information at the intermediary before forwarding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0823Network architectures or network communication protocols for network security for authentication of entities using certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1008Server selection for load balancing based on parameters of servers, e.g. available memory or workload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • 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
    • H04L63/0464Network 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 using hop-by-hop encryption, i.e. wherein an intermediate entity decrypts the information and re-encrypts it before forwarding it
    • 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
    • H04L63/166Implementing security features at a particular protocol layer at the transport layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1012Server selection for load balancing based on compliance of requirements or conditions with available server resources

Description

【0001】
【発明の技術分野】
本発明は、一般的にはコンピュータネットワーク技術に関係する。さらに具体的には、本発明はセキュアクライアントサーバベースのネットワークでのクライアントトランザクションの管理に関係する。
【0002】
【関連技術の説明】
インターネットなど、ネットワークでのデータ通信は電話での音声通信と同じくらい一般的になってきている。ネットワーク通信の著しい増加のために、コンピュータハッカーなどの未権限の利用者による侵入を受けてきている。このような侵入に対抗するために、現在ほとんどの通信プロトコルは、単純なスクランブル化から非常に高度な暗号化アルゴリズムまで、ある種の通信セキュリティを実行している。より具体的には、インターネットなどの多くのネットワークで使用される伝送制御プロトコル(TPC)/インターネットプロトコル(IP)を採用して、セキュア・ソケット・レイヤ(SSL)及びIPセキュリティ(IPSec)などのセキュリティプロトコルを内蔵した。
【0003】
SSLはインターネットを介して私用データ(例、テキスト文書)の伝送のために開発されたプロトコルである。SSLはクライアントとサーバの間でデータを通信するためのセキュアな接続を、データを暗号化する秘密鍵を使用して提供する。秘密鍵/公開鍵の暗号化は十分に理解されており、送信コンピュータから受信コンピュータに送信する情報のプライバシーを確保するために現代のコンピュータネットワークで頻繁に実行されている。ネットスケープナビゲータ及びインターネットエクスプローラなどのウェブブラウザがSSLをサポートして、多くのウェブサイトがSSLプロトコルを実行して、クレジットカードの番号などの秘密のユーザ情報を取得している。SSLは認証及び暗号化を実行するためのメカニズムを提供する。認証は各クライアント及びサーバが本人であることを保証する。実際的には、認証はユーザIDとパスワードを入力するだけでよい。しかしながら、コンピュータハッカーは、パスワードとユーザの名前の情報を傍受するためにクライアントサーバのリンクで盗聴することができる。暗号化はネットワークでの伝送前にユーザID及びパスワード情報をスクランブル化することによって、前記被害を阻止する。ユーザ情報の暗号化に加え、SSLはクライアントとサーバの間で通信するペイロードなどのほぼあらゆる種類のデータ(つまり、テキスト文書)を安全にするために暗号化を利用する。要するに、SSLはセッションの暗号化、及びサーバ、メッセージ、及び任意でクライアントの認証のために設けられる。SSLプロトコルの詳細に関しては、参照により組込むSSLプロトコルの仕様書、バージョン2及び3を参照する。
【0004】
SSLはテルネット、ファイル転送プロトコル(FTP)、又はハイパーテキスト転送プロトコル(HTTP)などのプロトコルソケットで確立されるレベルプロトコルを保護するプロトコルである。ネットワーク技術で知られるように、ソケットとはアプリケーションをネットワークプロトコルに接続するソフトウェアオブジェクトである。例えば、UNIXでは、プログラムは、ソケットを開いてソケットからデータを読み込んだり書き込んだりして、TCP/IPメッセージを送受信する。このため、プログラマーはソケットを操作する心配だけしてればよく、実際にメッセージをネットワークを介して正確に移動するための操作システムに頼ることができるため、プログラム開発が簡単になる。SSLが備える機能の多くは、主要なインターネット標準化機構であるインターネットエンジニアリングタスクフォース(IETF)が考えるIPバージョン6(IPv6)として知られる次世代IPプロトコル(IPng)の一部である。
【0005】
IPSecはIPレイヤでセキュアなパケット交換をサポートする1組のプロトコルである。IPSecはトランスポートとトンネルの2つの暗号化モードをサポートする。IPソケットのソースデバイスでは(つまり、送信ステーション)、トランスポートモードがIPパケットのデータ部分(つまり、ペイロード)のみを暗号化し、ヘッダには影響を与えないまま残す。トンネルモードはIPパケットのヘッダとペイロード両方を暗号化することによって、トランスポートモードよりも安全性を提供する。宛先デバイスでは(つまり、受信ステーション)、IPSec適合デバイスが受信するIPパケットを復号化する。一般的には、セキュアと宛先デバイスが公開鍵を共有する。これは、インターネットセキュリティ及びキー管理プロトコル/Oakley(ISAKMP/Oakley)として知られるプロトコルを実行して得られ、これにより宛先デバイスが公開鍵を取得でき、デジタル電子署名を定義するための国際電気通信連合(ITU)規格であるX.509規格を使用するソースデバイスを認証する。
【0006】
参照するアプリケーションは、通信ネットワークでクライアントトランザクションを管理し、データ経路輻輳を緩和するために構成されるブローカサーバを説明する。TCP/IPネットワークでのブローカオペレーションについての詳細に関しては、参照によりこれに全体的に組込まれる参照するアプリケーションを参照する。通信ネットワークがセキュアな操作を伴う場合には、クライアントトランザクションの管理にはセキュアな操作に適応し、それに適合する必要がある。セキュアなネットワークでクライアントのトランザクションのスピードアップを図る必要性が特に重要である。これは典型的なウェブ(ワールドワイドウェブ)サーバが従来の(つまり、ノンセキュアな)HTTPトラフィックよりも遅い速度でセキュアなトランザクションを処理するためである。ウェブサーバとセキュアなトランザクションをするウェブユーザーは、処理するトランザクションのために長時間待たなければならず、ウェブサイトの包括的な信頼性と利用可能性に影響を与えている。
【0007】
そのため、インターネットなどのネットワーク通信技術では、セキュアな(例、SSL)通信ネットワークでクライアントトランザクションの仲介をサポートする必要がある。
【0008】
【発明の概要】
ある実施例において、本発明は通信ネットワークでのトランザクションを管理するよう構成されるサーバコンピュータを提供する。サーバコンピュータは、通信ネットワークのセキュアなリンクでコンピュータに操作可能に接続されて、コンピュータからデータパケットを受信するデータインターフェースからなる。サーバコンピュータはさらに、データインターフェースに操作可能に接続されてプログラミング化されて、受信するデータパケットにアクセスするデータ処理装置からなる。処理装置はさらに、データパケットの内容を復号化して、データパケットを他のコンピュータに転送するようプログラミングされる。サーバコンピュータはさらに、処理装置及びデータインターフェースに操作可能に接続されるデータ記憶装置からなる。データ記憶装置は、他のコンピュータがクライアントパケットを受信する準備ができるまで、データパケットを記憶するように構成される。
【0009】
他の実施例において、本発明は、コンピュータネットワークで電子的要求に対応するよう構成されるシステムを提供する。このシステムは、コンピュータネットワークのセキュアなリンクで、データパケットとインターフェースして、データパケットを受信するよう構成される第1サーバからなる。第1サーバはさらに、データパケットの内容を復号化してデータパケットを転送するよう構成される。システムはさらに、第1サーバとデータ通信をして、第1サーバからデータパケットを受入て、それに含まれる指示に従ってデータパケットを実行するように構成される第2サーバからなる。
【0010】
他の実施例において、本発明は、コンピュータネットワークで電子的要求を管理する方法を提供する。この方法は、コンピュータネットワークのセキュアなリンクで、暗号化された情報をもつデータパケットをクライアントのコンピュータから受信するためのステップからなる。この方法は、さらに、受信したデータパケットの情報を復号化するためのステップからなる。方法はさらに、データパケットを実行するために利用できるサーバとのリンクを確立するためのステップからなる。方法はさらに、データパケットをサーバに送信するためのステップからなる。
【0011】
本発明の上記側面、他の側面、特徴及び利点は、添付図面と合わせて読むべきである以下の発明の実施例の詳細な説明を参照することにより、よりよく理解される。
【0012】
【発明の実施例の詳細な説明】
以下の説明は限定的な意味で取り上げているのではなく、単に発明の一般的な原理を説明するために行っている。発明の範囲は請求項を参照して判断するべきである。
【0013】
図1は発明に従ったクライアントサーバシステム100の機能的なブロック図である。図1に示すように、システム100は1つ以上の通信ネットワーク150、一般的にはインターネットなどのパケット交換ネットワークでサーバ130aと通信するように構成される1つ以上のクライアント110からなる。クライアント110はホストサーバ114、例えばインターネットサービスプロバイダー(IPS)で制御されるサーバコンピュータを介して、ネットワーク150に接続することができる。つまり、ルータ118などのブリッジ形式のデバイスを介してネットワーク150に操作可能に接続されている。ルータ118は宛先アドレスなどのパケットヘッダー情報に基づいて、クライアント110から受信するパケットを様々な宛先に送るように構成される。インターネットの物理的レイヤはルータを広範囲に使用して、あるサーバ(例、ホスト114)から別のサーバ(例、サーバ130a)にパケットを送る。
典型的には、システム100は複数のサーバ130a、130b及び130cから構成される。システム100はさらに、1つ以上のサーバ(130a、130b、130c)とルータ128の間に操作可能に接続されるブローカ120から構成される。ブローカ120は、参照するアプリケーションで詳細に説明するように、クライアントトランザクションをサーバ130a、130b及び130cのうちの1つにハンドオフすることによって、クライアントトランザクションを管理し、応答する。典型的には、通信ネットワーク150はTCP/IPプロトコルなどの1つ以上の標準通信プロトコルに適合する。図1にはクライアント110を1つだけしか図示していないが、システム100は複数のクライアントで同時に操作する。同様に、図1にはブローカ120を1つだけしか図示していないが、システム100は、複数のブローカがルータ120と複数のセットのサーバ(この図では図示せず)の間にパラレルに接続されるカスケード式構造にあるように、複数のブローカで同時に操作できる。
【0014】
ブローカ120は複数のSSLリンクをサポートするために構成され、ある実施例では、ブローカ120は1秒あたり600個までのSSLリンク又はトランザクションをサポートできる。ブローカ120と複数のクライアントの間の通信は、典型的には通信プロトコルの特徴によって提供される。例えば、TCP/IPプロトコルを使用して、ブローカ120はネットワークを流れるパケットの宛先アドレスを監視するだけでよい。宛先アドレスが所定のアドレス(例、ブローカ120がサービスしている複数のサーバのうちの1つのアドレス)と符合する場合、ブローカ120はさらに処理するためにパケットを受信する。典型的には、ブローカ120はパケットの発信元アドレス(例、クライアントのID)とは関係なく、この方法を適用する。
【0015】
ネットワーク150での通信は、クライアント110とブローカ120の間のセキュアなデータの送受信を含むことができる。前述したように、ネットワーク150はTCP/IPプロトコル(インターネットなどの)を実行して、SSL、IPSecなどの1つ以上のセキュリティプロトコルを適用することができる。本発明では、発明の実務を図示するためにSSLプロトコルを説明する。しかしながら、当業者には、発明が1つ以上のあらゆるセキュリティプロトコルを使用して実行できることは、本開示から理解されるであろう。
【0016】
クライアント110とブローカ120(これは目的とする受信サーバ130の代用である)の間の通信が望まれるとき、クライアント110は例えばTCP/IPなどの通信プロトコルで指定される「ハンドシェイク」を開始する。例えば、クライアント110はセットシンクロナスビットをもつパケットを、クライアント110からブローカ120まで伝送する。ブローカ120はセットアックビットをもつパケットを伝送することによりクライアント110に応答し、クライアント110はセットアックビットをもつパケットを伝送することによりブローカ120の確認応答を認識する。ネットワークプロトコルに従ってハンドシェイクを確立することに加えて、セキュアなプロトコル(例、SSL)の使用に従ってハンドシェイクを実行する必要がある。
【0017】
クライアントとサーバがSSL接続を使用して通信したい場合、プロトコルのバージョンについての情報を交換して、暗号化アルゴリズムを選択し、互いに認証して、公開鍵の暗号化技術を利用して、共有のシークレットを作成する。このようなプロセスはSSL接続のハンドシェイクプロトコルで処理し、これは以下のように要約することができる。図2はSSLプロトコルに従ったハンドシェイク操作を説明するフローチャートである。SSL接続又はリンクを確立するために、クライアント110はClientHelloメッセージをブローカ120(ブロック210)に送信することによりハンドシェイクを開始する。
【0018】
ClientHelloメッセージは、プロトコルのバージョン、セッションID、暗号アルゴリズム、及び圧縮方法などの複数のクライアントの属性を通信する。暗号アルゴリズムフィールドでは、クライアント110は最初にリスト化されるクライアントの第1優先順位をもつクライアント110がサポートする暗号スーツのリストを有する。例えば、ClientHelloの構造は以下のコマンドをもつことができる。Ciphersuite cipher_suites<list>で、ここで「list」とはクライアント110がサポートする1つ以上の暗号プロトコルを表す。セッションIDは一般的には、セッションをブローカ120に識別するためにクライアント110が作成する任意の値である。クライアントの属性はブローカ120にクライアント110がサポートするリンクの仕様を提供する。ブローカ120は、ブローカ120(ブロック220)に関する類似の属性情報を含むServerHelloメッセージを送信することによりクライアント110に応答する。クライアント110がアプリケーションデータを通信する前に、ブローカ120の認証を望む場合、ブローカ120はサーバの電子署名をクライアント110に送る。クライアント110が通信する暗号アルゴリズムの種類(そのClientHelloメッセージで)は、ブローカ120の認証が必要かどうかを示す。サーバの電信署名の構造は選択した暗号アルゴリズムによって決まり、ある実施例では、一般的にはX.509バージョン3のデジタル電子署名である。
【0019】
ブローカ120は複数の暗号又はセキュリティアルゴリズムをサポートする。暗号アルゴリズムには、RSA、DSA、Diffie-Hellman PKls、RC2、RC4、RC5、OES、Triple DES、IDEA、CAST、CASTS、Blowfish、MD5、MDC2、RMD-160、SHA、及び/又はSHA-1を含むことができる。しかしながら、使用する暗号アルゴリズムの種類は発明を実施するために必ずしも重要ではないことに注意されたい。クライアント110とブローカ120は相互に利用できる暗号アルゴリズムを交渉し、合意することができる。クライアント110がブローカ120で認められる暗号プロトコルをサポートしていない場合、SSLのセッションは確立できない。確立されたSSLのセッション中にクライアント110が失敗する場合には、ブローカ120はクライアント110からの応答なしの所定の持続時間後タイムアウトして、セッションを終了する。
【0020】
Helloメッセージ後、ブローカ120は暗号アルゴリズムに要求される場合、クライアント110にサーバ鍵交換メッセージを送ることができる。例えば、鍵交換メッセージは、ブローカ120が電子署名を持っていない場合又はサインオン(つまり初期接続)のみで使用する電子署名をもつ場合に利用することができる。ブローカ120はクライアント110にServerHelloDoneメッセージを送って、ハンドシェイクのHello段階が完了したことを示す(ブロック220)。次にブローカ120はクライアントの応答を待つ。クライアントはブローカ120にClientKeyExchangeを送る。ClientKeyExchangeの内容はハンドシェイクのHello段階の間に確立した公開鍵アルゴリズムによって決まる。例えば、Fortezza鍵交換を選択する場合、ClientKeyExchangeはブローカ120にFORTEZZAキー交換アルゴリズム(KEA)の選択を指定する。一般的には、公開鍵アルゴリズムは、公開鍵と秘密鍵の2つのキーを使用する。公開鍵で暗号化されたメッセージは関連する秘密鍵でのみ復号化することができる。反対に、公開鍵で暗号化されたメッセージは公開鍵でのみ復号化できる。次に、クライアント110はブローカ120にChangeCipherSpecメッセージを送って、RSA、Fortezza、又はクライアントDiffie-Hallmanなどの選択した暗号アルゴリズムを起動する(ブロック230)。ChangeCipherSpecメッセージは1バイトの値1からなり、これはその後のデータがちょうど交渉した暗号アルゴリズム及びキーで保護されることを受信者(例、ブローカ120)に通知するために暗号化、圧縮されてサーブする。最後に、クライアント110はブローカ120にFinishedメッセージを送って、鍵交換及び認証プロセスが成功したことを証明する。Finishedメッセージは典型的には、ちょうど交渉した暗号アルゴリズムで暗号化される(ブロック230)。クライアントのFinishedメッセージを受信した時点で、ブローカ120はその暗号アルゴリズムをクライアント110が選択したものに更新し、クライアント110にChangeCipherSpecメッセージを送ることによって確認する(ブロック240)。ブローカ120はまた、ちょうど交渉した暗号アルゴリズムを使用する暗号化した形式で、クライアント110にFinishedメッセージを送る。この段階で、ハンドシェイクは完了し、クライアント110とブローカ120は暗号化した形式でアプリケーションデータの交換を開始することができる(ブロック250及び260)。
【0021】
図3はブローカ120の操作を説明するフローチャートである。クライアント110とブローカ120がSSL接続を確立して、アプリケーションデータの交換を開始した後、ブローカ120はブローカ120とサーバ130aの間のデータ交換の2つの実施例のうちの1つを選択的に実行できる。両実施例では、ブローカ120とサーバ130aの間のデータ転送接続を確立するためにハンドシェイクが利用できるまで、ブローカ120にクライアント110から入るアプリケーションデータをバッファに入れることが望ましい(ブロック310)。データをバッファに入れることにより、ブローカ120は、クライアント110からブローカ120に送られるアプリケーションデータが損失から保護されることを保証する。ブローカ120に、クライアントとサーバのトラフィック量に応じて動的にバッファサイズを割当てさせる(例ランダムアクセスメモリ、つまりRAM)ことが望ましい。さらに具体的には、ブローカ120はクライアントの要求を処理するためにバッファの利用性を最適化するために現在のバッファサイズを調整する(つまり増減する)ことができる。例えば、ある実施例では、ブローカ120は割当てられたバッファ空間の利用率を連続的に監視することができる。利用率はあらかじめ選択した閾値レベル未満である場合(例、40%)、ブローカ120はそのバッファ空間をあらかじめ選択した係数(例1/2)によりダウンサイズすることができる。一方、利用率があらかじめ選択した閾値レベルを超える場合(例、95%)、ブローカ120はバッファ空間をあらかじめ選択した係数(例、2)で増加することができる。最終的に、割当てられるバッファ空間は、ブローカ120がそのハードウェアの仕様により命じられるメモリの限界のために超えることができない最大メモリ空間に到達することができる。
【0022】
一般的には、ブローカ120には、発明に従ってクライアントのデータを管理及び記憶するために、少なくとも1つの処理装置と1つの記憶装置を含むことができる。さらに具体的には、ブローカ120は、例えばIpivot, INC.が製造するCommerce Accelerator 1000又はCommerce Director 8000などの商業的な形態で具現できる。
【0023】
ある実施例では、具体的には緩和した安全措置で十分な場合、ブローカ120は参照するアプリケーションで説明するように、クライアントトランザクションを履行又は実行するために、ハンドオフリンクをサーバ130aで確立するように構成される。ハンドオフリンクには、ブローカ120とサーバ130aの間にメッセージの暗号化/復号化を含まない。他の実施例では、具体的にはより十分なセキュリティが望まれる場合、ブローカ120は、クライアントトランザクションを履行又は実行するために、セキュアな(例、SSL)ハンドオフリンクをサーバ130aで確立するよう構成される。一般的には、システムオペレータが初期のシステムのインストール時点でブローカ120のプログラムにどのような構成の設定(例、基本入出力システムつまりBIOS設定)にするか決定する。この特性のための典型的なBIOS設定は<continue secure link:Y/N>で表される。代わりに、ブローカの設定は、操作中にシステムユーザが選択する、又は様々なサーバの構成を収容するよう自動的に調整できる。このような設定に基づいて、ブローカ120はセキュアな(例、SSL)またノンセキュアなリンクを継続するかどうか決定する(ブロック320)。
【0024】
ブローカ120がセキュアなリンクを継続するよう構成される場合、ブローカ120の操作は(ブロック330)まで進行する。参照するアプリケーションで説明するように、ブローカ120がクライアントのトランザクションの要求を履行するハンドオフのために使用することができる多数のサーバがある。従って、これに説明するプロセスは、ブローカ120がクライアントトランザクションをハンドオフするために、遂行サーバを、例えばサーバ130a、130b及び130cからサーバ130aを選択したと仮定する。クライアントトランザクションをハンドオフする際、ブローカ120はクライアント110から受信するパケットを、クライアント110で合意した暗号アルゴリズムを適用することによって復号化する(ブロック330)。復号化後、ブローカ120は宛先アドレスなどのパケットヘッダー情報を変更して、クライアントのパケットをサーバ130aに戻す(ブロック332)。
【0025】
クライアントのパケットをサーバ130aに戻すために、ブローカ120は、前述したクライアント110とブローカ120の間のハンドシェイクの確立と実質的に類似した方法で、サーバ130aでセキュアなSSLのハンドシェイクを開始する(ブロック334)。ハンドシェイクがブローカ120とサーバ130aの間で確立されたら、ブローカ120とサーバ130aはここで暗号化した形式でアプリケーションデータを交換する準備段階にある。従って、ブローカ120はクライアントのパケットをそのバッファから再生して、サーバ130aに送信するためにクライアントのパケットを暗号化する(ブロック336)。暗号化後、ブローカ120は暗号化したクライアントのパケットを実行するためにサーバ130aに送る。プロセスのこの段階で、ブローカ120からサーバ130aまでのクライアントトランザクションのハンドオフが完了する(ブロック350)。
【0026】
一方、ブローカ120がノンセキュアなモードで継続するよう構成される場合、ブローカ120の操作は(ブロック340)まで進行する。ノンセキュアなモードでリンクを継続することによって、ブローカ120は著しい操作上の利点が達成できる。この利点のために、サーバ130aはSSL操作(つまり、暗号化/復号化)に関わるCPU主導のタスクから解放される。要するに、ブローカ120はサーバのSSL操作を肩代わりし、それによって他の待機中のタスクを実行するために、サーバ130aのCPUを自由にする。いくつかのブローカの操作は、クライアントまでの応答速度が50倍まで改善されることを証明できる。ブローカ120は典型的には暗号方式のアプリケーション専用の1つ以上の処理装置を備えている。対照的に、サーバは一般的には多数の非暗号方式のアプリケーションを担当する汎用アプリケーションの中央処理装置を装備する。そのため、サーバ130aからブローカ120の専用処理装置に暗号化の機能を再配置することによって、クライアントまでの応答速度は著しく向上する。
【0027】
ブローカ操作の330の枝で示すように、ブローカ120はクライアント110で合意した暗号アルゴリズムを適用することによって、クライアントのパケットを復号化する(ブロック340)。復号化後、ブローカ120は宛先アドレスなどのパケットヘッダー情報を変更して、クライアントのパケットをサーバ130aに戻す(ブロック342)。クライアントのパケットをサーバ130aに戻すために、ブローカ120は、参照するアプリケーションで説明するように、ブローカ120とサーバ130aの間に指定される通信プロトコル(例、TCP/IP)に従って、サーバ130aで従来の(つまり、ノンセキュアな)ハンドシェイクを開始する(ブロック344)。ブローカ120とサーバ130aの間にハンドシェイクが確立されたら、ブローカ120とサーバ130aは従来の形式でアプリケーションデータの交換の準備状態にある。従って、ブローカ120はクライアントのパケットを再生して、サーバ130aに送る(ブロック346)。プロセスのこの段階で、ブローカ120からサーバ130aまでのクライアントトランザクションのハンドオフが完了する(ブロック350)。
【0028】
図4は第三者のサーバ、例えばサーバ130aの操作を説明するフローチャートである。図3で前述するように、クライアント110とブローカ120はSSL接続を確立して、アプリケーションデータの交換を開始する。サーバ130aはブローカ120とサーバ130の間のデータ交換の1つ又は2つのモードを選択的に実行できる。制御フローがブロック400で開始し、ここでサーバはブローカ120との新たな接続が開くのを待つ。ブローカ120はサーバ130aでハンドシェイクを開始し、ブロック410で接続が確立される。前述したように、サーバ130は、ブローカ120との標準リンク又はセキュアなリンクを介して通信するための以前のモード決定で構成できる。安全にするためにハンドシェイクが要求される場合、制御フローが決定ブロック420から続く。セキュアなリンクモードでは、サーバ130がブローカ120からクライアントのパケットを受信する(ブロック430)。ブロック432で、サーバ130が受信したクライアントのパケットを復号化する。次にサーバ130が、ブロック434でのクライアントトランザクションを実行することにより、クライアントの要求を履行する。この要求はウェブページを読み込む、eコマースの購入をする、チャットを介して他のクライアントと通信をすることなどである。サーバ130は次にクライアント110に送り返すために、応答パケットを暗号化する(ブロック436)。サーバ130は暗号化したパケットをブローカ120に送り(ブロック438)、ブローカ120が応答パケットをクライアント110に送る(ブロック450)。リンクを終了するか、次のトランザクションがサーバ130によって満たされてから、制御フローが終了する(ブロック460)。
【0029】
サーバ130でブローカ120により安全とするためにハンドシェイクが要求されない場合、パケット伝送の代替経路が発生することがある(ブロック420)。このフローでは、サーバ130がブローカ120からクライアントのパケットを受信する(ブロック440)。サーバ130は、ブロック434のセキュアなパスで示したものと同様に、クライアントトランザクションを実行する(ブロック442)。サーバ130はブローカ120に応答パケットを送り(ブロック444)、これがクライアント110に応答パケットを送る(ブロック450)。
【0030】
サーバ130がクライアントのパケットの処理中に予期しない輻輳、操作上のエラー、又は突然の停電に遭遇する場合、サーバ130は典型的にはHTTP 400、500又は600シリーズのエラーメッセージなどの1つ以上のエラーメッセージを送る。ブローカ120がこのようなエラーメッセージを監視して、エラーメッセージがサーバ130により生成されるかどうかを判定させることが望ましい。サーバ130がこのようなエラーメッセージを生成するとき、ブローカ120は履行するために他のサーバにクライアントのパケットを透過的に(つまり、クライアントが気づかずに)転送することにより応答する。その場合、クライアントのセッションは、サービスをクライアントに提供する企業が遭遇するサービスの難しさが一切生じないで、回復して完了できる。従って、顧客のサービス企業(例、eコマースのベンダー)の認知は高いまま維持される。
【0031】
他の実施例では、ブローカ120は、ユーザのトランザクションの優先付けをするために、システム管理者が1つ以上のユーザグループを識別できるようにする。さらに具体的には、システム管理者はそのための優先レベル(例、1〜5)を設定するために具体的な発信元アドレスをもつユーザグループを選択することができる。ブローカ120は、最も高い優先順位(例、5)をもつユーザグループが発行するトランザクションを処理するための応答時間を最も少なくするよう割当てる。最も少ない応答時間を割当てることにより(例、10ミリセコンドの閾値)、ブローカ120は優先順位の高いトランザクションに対するサーバの応答時間を監視する。1つ以上の応答時間が閾値の時間よりも大きい場合、ブローカ120はサーバ130へのノンセキュアなトランザクションのトラフィック(例、プレーンなHTTP)のフローを減少することができる。サーバ130へのノンセキュアなトラフィックのフローを減少することにより、ブローカ120はサーバ130を自由にして、セキュアなトランザクション(例、HTTPS)をより効率的に取引する。実際に、セキュアなトランザクションとはノンセキュアなトランザクションよりも財務データ(つまりeコマースのアプリケーション)を含むことが多いと考えられる。このように、ブローカ120はeコマース関連のトランザクションを最大限にするために、ノンセキュアなトラフィックのフローを減少する。また、ブローカ120はクライアントの要求を最も効率的に履行できる他のサーバにトラフィックを転送できる。
【0032】
一方、優先順位が最低のクライアントトランザクションに関しては、ブローカ120は監視のための応答時間に最大のもの(例、50ミリセコンドの閾値)を割当てる。閾値の時間に従って、ブローカ120は、上記優先順位の高いトランザクションの説明と類似の方法で介入できる。従って、所定の無反応の閾値の時間の経過後、ブローカ120は、サーバ130へのノンセキュアなトランザクションのフローを減少する、又はより効率的に履行するために他のサーバへクライアントのパケットを転送できる。いかなる場合も、特定のユーザグループに関して、ブローカ120はそのグループの予測又は対象とする関心に見合ったサーバの資源を割当てることを目的とする。
【0033】
前記事項に鑑みて、発明がSSLなどのセキュアなリンクでクライアントとサーバの間のネットワークトランザクションを管理するブローカの長年にわたるニーズを克服していると評価されるであろう。本発明はその精神又は本質的な特徴を逸脱することなく、他の具体的な形態で具現できる。説明した実施例はあらゆる点で例示的なものであり、限定的なものではないと考える。そのため、本発明の範囲は前述の説明よりも添付する請求項により示される。請求項の同等の意味及び範囲内のすべての変更は、その範囲内に包含される。
【図面の簡単な説明】
【図1】 発明に従ったクライアントサーバネットワークの機能的なブロック図である。
【図2】 SSLプロトコル標準に従ったハンドシェイク操作を説明するフローチャートである。
【図3】 図1のブローカの操作を説明するフローチャートである。
【図4】 図1のサーバの操作を説明するフローチャートである。

Claims (39)

  1. 通信ネットワークのトランザクションを管理するために構成されるサーバコンピュータにおいて、
    通信ネットワークのセキュアなリンクでコンピュータに操作可能に接続されて、送信コンピュータからのトランザクションのデータパケットを受信するよう構成されるデータのインターフェースと、
    データインターフェースと操作可能に接続されて、前記送信コンピュータの発信元アドレスに基づいて前記トランザクション優先順位を特定し、受信したデータのパケットにアクセスし、データのパケットの内容を復号化し、複数の他のコンピュータの応答時間を監視し、前記応答時間及び前記トランザクションに対して特定された前記優先順位に基づいて、前記複数の他のコンピュータの内の1つを前記データパケットの送り先として選択し、前記選択されたコンピュータにデータのパケットを転送するようプログラミングされたデータ処理装置と、
    処理装置及びデータインターフェースに操作可能に接続されて、前記選択されたコンピュータがクライアントのパケットを受信する準備ができるまで、データのパケットを記憶するよう構成されるデータ記憶装置と、
    からなることを特徴とするサーバコンピュータ。
  2. 請求項1のサーバにおいて、データインターフェースが、セキュアなソケットレイヤ(SSL)リンクで暗号化された情報をもつデータのパケットを受信するよう構成されることを特徴とするサーバ。
  3. 請求項1のサーバにおいて、処理装置が、ノンセキュアなリンクで、暗号化されていない情報をもつデータのパケットを前記選択されたコンピュータに転送するようプログラミングされることを特徴とするサーバ。
  4. 請求項1のサーバにおいて、処理装置が、他のセキュアなリンクで、暗号化された情報をもつデータのパケットを前記選択されたコンピュータに転送するようプログラミングされることを特徴とするサーバ。
  5. 請求項1のサーバにおいて、処理装置が前記選択されたコンピュータの応答時間を前記特定された優先順位のための閾値時間と比較するようプログラミングされることを特徴とするサーバ。
  6. 請求項5のサーバにおいて、処理装置がさらに、応答時間が閾値時間を超える場合に、前記選択されたコンピュータへのノンセキュアなトラフィックのフローを減少するようプログラミングされることを特徴とするサーバ。
  7. 請求項1のサーバにおいて、データ記憶装置が、受信したデータのパケットの数の変化に対応して、利用できる記憶空間のサイズを調整するように構成されることを特徴とするサーバ。
  8. コンピュータネットワークで電子的要求に応答するよう構成されるシステムにおいて、
    コンピュータネットワークのセキュアなリンクでトランザクションのデータのパケットとインターフェースしてそれを受信するよう構成され、さらに、送信コンピュータの発信元アドレスに基づいて前記トランザクション優先順位を特定し、データのパケットの内容を復号化して、データのパケットを転送するよう構成される第1サーバと、
    第1サーバとデータ通信し、第1サーバからデータのパケットを受け入れて、それに含まれる指示に従ってデータのパケットを実行するよう構成される第2サーバであって、複数のサーバの内から前記第1サーバによって、前記第2サーバの応答時間及び前記トランザクション前記特定された優先順位に基づいて選択される第2サーバと、
    からなることを特徴とするシステム。
  9. 請求項8のシステムにおいて、第1サーバが、コンピュータネットワークのセキュアなソケットレイヤ(SSL)リンクでインターフェースするよう構成されることを特徴とするシステム。
  10. 請求項8のシステムにおいて、第1サーバがデータのパケットの内容を再暗号化するよう構成されることを特徴とするシステム。
  11. 請求項8のシステムにおいて、第1サーバが、その間にデータのパケットを送信するために、第2サーバとセキュアなリンクを確立するよう構成されることを特徴とするシステム。
  12. 請求項11のシステムにおいて、第2サーバが、第1サーバから受信するデータのパケットを復号化するよう構成されることを特徴とするシステム。
  13. 請求項8のシステムにおいて、第1サーバが第2サーバの応答時間を監視して、応答時間を前記トランザクションの前記特定された優先順位に基づく閾値時間と比較するよう構成されることを特徴とするシステム。
  14. 請求項13のシステムにおいて、第1サーバが、応答時間が閾値時間を超える場合に、ノンセキュアなトラフィックのフローの量を減少するよう構成されることを特徴とするシステム。
  15. 請求項8のシステムにおいて、第1サーバが第2サーバの応答を監視し、第2サーバにエラーがある場合には、履行するために他のサーバにクライアントのパケットを転送するよう構成されることを特徴とするシステム。
  16. コンピュータネットワークで電子的要求を管理するための方法において、
    コンピュータネットワークのセキュアなリンクで、クライアントのコンピュータから暗号化された情報をもつ、トランザクションのデータのパケットを受信するためのステップと、
    前記クライアントのコンピュータの発信元アドレスに基づいて前記トランザクション優先順位を特定するステップと、
    受信したデータのパケットの情報を復号化するためのステップと、
    データのパケットを実行するために利用できる、応答時間及び前記トランザクションの前記特定された先順位に基づいて選択されるサーバとリンクを確立するためのステップと、
    データのパケットをサーバに送るためのステップと、
    からなることを特徴とする方法。
  17. 請求項16の方法において、受信するためのステップが、インターネットのセキュアなソケットレイヤ(SSL)リンクでデータのパケットを受信するためのステップからなることを特徴とする方法。
  18. 請求項16の方法において、さらに、データのパケットをサーバに送る前に、データのパケットの情報を再暗号化するためのステップからなることを特徴とする方法。
  19. 請求項16の方法において、さらに、クライアントのコンピュータのデータのパケットに反応して、クライアントのコンピュータにデータのパケットを送るためのステップからなることを特徴とする方法。
  20. 請求項16の方法において、さらに、前記応答時間を監視するためのステップと、前記応答時間が前記トランザクションの前記特定された優先順位に基づく値時間を超える場合には、サーバへのノンセキュアなトラフィックの量を減少するためのステップとからなることを特徴とする方法。
  21. 請求項16の方法において、さらに、複数のクライアントのグループのそれぞれに、それぞれのクライアントグループの応答の優先順位に基づいた閾値時間を設定するためのステップからなることを特徴とする方法。
  22. 請求項16の方法において、リンクを確立するためのステップが、サーバとの他のセキュアなリンクを設定するためのステップからなることを特徴とする方法。
  23. 請求項16の方法において、さらに、サーバによりデータのパケットを受信するためのステップと、前記トランザクションの過程で少なくとも1つの応答データのパケットを準備するためのステップとからなることを特徴とする方法。
  24. 請求項16の方法において、さらに、サーバによりデータのパケットの情報を復号化するためのステップからなることを特徴とする方法。
  25. 請求項16の方法において、さらに、サーバの応答を監視するためのステップと、サーバにエラーがある場合には、他のサーバにデータのパケットを転送するためのステップとからなることを特徴とする方法。
  26. クライアントサーバネットワークでクライアントとサーバの間を通信するための方法において、
    クライアントと第1サーバの間に通信リンクを確立するためのステップと、
    クライアントから、データの要求を表す少なくとも1つのトランザクションのパケットを第1サーバにより受信するためのステップと、
    前記クライアントの発信元アドレスに基づいて前記トランザクション優先順位を特定するステップと、
    第1サーバでパケットのヘッダー情報を変更するためのステップと、
    変更したパケットを第1サーバから、応答時間及び前記トランザクションの前記特定された先順位に基づいて選択される第2サーバまで送るためのステップと、
    第1サーバを介してクライアントのデータの要求に応答するためのステップと、
    からなることを特徴とする方法。
  27. 請求項26に記載する方法において、通信リンクを確立するためのステップが、クライアントとサーバの間に少なくとも1つのハンドシェイクを実行するためのステップからなることを特徴とする方法。
  28. 請求項27に記載する方法において、少なくとも1つのハンドシェイクを実行するためのステップが、伝送制御プロトコル/インターネットプロトコル(TCP/IP)のセッションを開始するためのステップからなることを特徴とする方法。
  29. 請求項26に記載する方法において、ヘッダー情報を変更するためのステップが、パケットを第2サーバに中継するためにパケットの宛先アドレスを変更するためのステップからなることを特徴とする方法。
  30. 請求項26に記載する方法において、変更したパケットを第2サーバに送るためのステップが、安全ではないリンクでパケットを送るためのステップからなることを特徴とする方法。
  31. 請求項26に記載する方法において、クライアントに応答するためのステップが、第2サーバにより少なくとも1つの応答パケットを第1サーバに送るためのステップからなることを特徴とする方法。
  32. 請求項31に記載する方法において、クライアントに応答するためのステップがさらに、第1サーバにより、クライアントの宛先アドレスをもつ応答パケットを送るためのステップからなることを特徴とする方法。
  33. クライアントサーバネットワークでクライアントとサーバの間を通信するためのシステムにおいて、
    クライアントからトランザクションのデータの要求を表す少なくとも1つの前記トランザクションのパケットを受信するように構成され、さらに前記パケットのヘッダー情報を変更して、ネットワークを介して変更したパケットを送るように構成される第1サーバと、
    変更したパケットを受信して、第1サーバを介してクライアントのデータの要求に応答するように構成される第2サーバであって、前記第2サーバの応答時間及び前記トランザクションに関連する優先順位に基づいて前記第1サーバに選択され、前記優先順位は前記クライアントの発信元アドレスに基づいて前記第1サーバによって特定される第2サーバと、
    からなることを特徴とするシステム。
  34. 請求項33に記載するシステムにおいて、第1サーバがクライアントと少なくとも1つのハンドシェイクを実行するように構成されることを特徴とするシステム。
  35. 請求項34に記載されるシステムにおいて、ハンドシェイクが伝送制御プロトコル/インターネットプロトコル(TCP/IP)のセッションの開始を表すことを特徴とするシステム。
  36. 請求項33に記載するシステムにおいて、第1サーバが、パケットを第2サーバに中継するために、パケットの宛先アドレスを変更するように構成されることを特徴とするシステム。
  37. 請求項33に記載するシステムにおいて、第1サーバが、ノンセキュアなリンクでパケットを第2サーバに送るように構成されることを特徴とするシステム。
  38. 請求項33に記載するシステムにおいて、第2サーバが、少なくとも1つの応答パケットを第1サーバに送るように構成されることを特徴とするシステム。
  39. 請求項38に記載するシステムにおいて、第1サーバが、クライアントの宛先アドレスとともに応答パケットを送るように構成されることを特徴とするシステム。
JP2001508673A 1999-06-30 2000-05-11 セキュアクライアントサーバトランザクションを管理するための方法及びシステム Expired - Fee Related JP4245838B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US09/345,575 US6681327B1 (en) 1998-04-02 1999-06-30 Method and system for managing secure client-server transactions
US09/345,575 1999-06-30
PCT/US2000/013047 WO2001002935A2 (en) 1999-06-30 2000-05-11 Method and system for managing secure client-server transactions

Publications (2)

Publication Number Publication Date
JP2003504714A JP2003504714A (ja) 2003-02-04
JP4245838B2 true JP4245838B2 (ja) 2009-04-02

Family

ID=23355585

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001508673A Expired - Fee Related JP4245838B2 (ja) 1999-06-30 2000-05-11 セキュアクライアントサーバトランザクションを管理するための方法及びシステム

Country Status (7)

Country Link
US (1) US6681327B1 (ja)
EP (2) EP1116367B1 (ja)
JP (1) JP4245838B2 (ja)
AU (1) AU5440100A (ja)
CA (1) CA2341869A1 (ja)
DE (1) DE60043879D1 (ja)
WO (1) WO2001002935A2 (ja)

Families Citing this family (99)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7035410B1 (en) * 1999-03-01 2006-04-25 At&T Corp. Method and apparatus for enhanced security in a broadband telephony network
DK2146484T3 (da) * 1999-11-02 2014-05-19 Highway To Health Inc Fremgangsmåde til lokalisering af udbydere via internettet med kort varsel
US8335994B2 (en) * 2000-02-25 2012-12-18 Salmon Alagnak Llc Method and apparatus for providing content to a computing device
US7359507B2 (en) * 2000-03-10 2008-04-15 Rsa Security Inc. Server-assisted regeneration of a strong secret from a weak secret
JP2001338168A (ja) * 2000-05-25 2001-12-07 Oht Inc 情報提供システム、情報提供方法、情報提供装置、情報取得装置、及び、記録媒体
US7225331B1 (en) * 2000-06-15 2007-05-29 International Business Machines Corporation System and method for securing data on private networks
US7093129B1 (en) * 2000-06-19 2006-08-15 International Business Machines Corporation Secured encrypted communications in a voice browser
US7137143B2 (en) 2000-08-07 2006-11-14 Ingrian Systems Inc. Method and system for caching secure web content
US20040015725A1 (en) * 2000-08-07 2004-01-22 Dan Boneh Client-side inspection and processing of secure content
US7032002B1 (en) * 2000-09-06 2006-04-18 Xanboo, Inc. Service broker for processing data from a data network
US7774455B1 (en) 2000-09-26 2010-08-10 Juniper Networks, Inc. Method and system for providing secure access to private networks
US7150045B2 (en) * 2000-12-14 2006-12-12 Widevine Technologies, Inc. Method and apparatus for protection of electronic media
US7757278B2 (en) * 2001-01-04 2010-07-13 Safenet, Inc. Method and apparatus for transparent encryption
US7127742B2 (en) 2001-01-24 2006-10-24 Microsoft Corporation Establishing a secure connection with a private corporate network over a public network
US7089311B2 (en) * 2001-01-31 2006-08-08 International Business Machines Corporation Methods, systems and computer program products for resuming SNA application-client communications after loss of an IP network connection
US6912591B2 (en) * 2001-05-02 2005-06-28 Science Application International Corporation System and method for patch enabled data transmissions
FR2825212B1 (fr) * 2001-05-23 2003-10-31 Unlog Dispositif de communication electronique securise
US7085923B2 (en) * 2001-06-05 2006-08-01 International Business Machines Corporation High volume secure internet server
US7328336B2 (en) * 2001-06-26 2008-02-05 Ncipher Corporation Ltd System and method for small-area system data processing
US7013387B2 (en) * 2001-06-27 2006-03-14 Intel Corporation System for increasing realized secure sockets layer encryption and decryption connections
US7149892B2 (en) * 2001-07-06 2006-12-12 Juniper Networks, Inc. Secure sockets layer proxy architecture
US7228412B2 (en) * 2001-07-06 2007-06-05 Juniper Networks, Inc. Bufferless secure sockets layer architecture
US7908472B2 (en) * 2001-07-06 2011-03-15 Juniper Networks, Inc. Secure sockets layer cut through architecture
US7853781B2 (en) * 2001-07-06 2010-12-14 Juniper Networks, Inc. Load balancing secure sockets layer accelerator
US20050210243A1 (en) * 2001-09-28 2005-09-22 Archard Paul L System and method for improving client response times using an integrated security and packet optimization framework
JP3895146B2 (ja) * 2001-10-22 2007-03-22 富士通株式会社 サービス制御ネットワーク、サーバ装置、ネットワーク装置、サービス情報配布方法、及びサービス情報配布プログラム
US7054925B2 (en) * 2001-11-21 2006-05-30 International Business Machines Corporation Efficient method for determining record based I/O on top of streaming protocols
US7043632B2 (en) * 2001-12-12 2006-05-09 Nortel Networks Limited End-to-end security in data networks
US7376967B1 (en) 2002-01-14 2008-05-20 F5 Networks, Inc. Method and system for performing asynchronous cryptographic operations
JP2003242118A (ja) * 2002-02-19 2003-08-29 Allied Tereshisu Kk 通信システム、中継機器、及びプログラム
US7366905B2 (en) * 2002-02-28 2008-04-29 Nokia Corporation Method and system for user generated keys and certificates
FR2840134B1 (fr) * 2002-05-21 2004-08-13 France Telecom Procede de controle d'acces a des ressources cryptographiques, plate-forme informatique et module logiciel utilisables dans la mise en oeuvre du procede
US7124171B1 (en) * 2002-05-23 2006-10-17 Emc Corporation In a networked computing cluster storage system and plurality of servers sharing files, in the event of server unavailability, transferring a floating IP network address from first server to second server to access area of data
WO2003105010A1 (en) 2002-06-06 2003-12-18 Neoteris, Inc. Method and system for providing secure access to private networks
WO2004019182A2 (en) * 2002-08-24 2004-03-04 Ingrian Networks, Inc. Selective feature activation
US7430755B1 (en) 2002-09-03 2008-09-30 Fs Networks, Inc. Method and system for providing persistence in a secure network access
US7177874B2 (en) * 2003-01-16 2007-02-13 Jardin Cary A System and method for generating and processing results data in a distributed system
US7272658B1 (en) 2003-02-13 2007-09-18 Adobe Systems Incorporated Real-time priority-based media communication
US8473620B2 (en) * 2003-04-14 2013-06-25 Riverbed Technology, Inc. Interception of a cloud-based communication connection
US20060149962A1 (en) * 2003-07-11 2006-07-06 Ingrian Networks, Inc. Network attached encryption
US20080130900A1 (en) * 2003-10-20 2008-06-05 Hsieh Vincent W Method and apparatus for providing secure communication
US20050086533A1 (en) * 2003-10-20 2005-04-21 Hsieh Vincent W. Method and apparatus for providing secure communication
US9614772B1 (en) 2003-10-20 2017-04-04 F5 Networks, Inc. System and method for directing network traffic in tunneling applications
US20050120204A1 (en) * 2003-12-01 2005-06-02 Gary Kiwimagi Secure network connection
US20050120223A1 (en) * 2003-12-01 2005-06-02 Gary Kiwimagi Secure authenticated network connections
US7519835B2 (en) * 2004-05-20 2009-04-14 Safenet, Inc. Encrypted table indexes and searching encrypted tables
US20060049234A1 (en) * 2004-05-21 2006-03-09 Flak Richard A Friction stirring and its application to drill bits, oil field and mining tools, and components in other industrial applications
US8024483B1 (en) 2004-10-01 2011-09-20 F5 Networks, Inc. Selective compression for network connections
US8813216B2 (en) * 2004-12-16 2014-08-19 International Business Machines Corporation Network security protection
US7526801B2 (en) * 2005-01-07 2009-04-28 Microsoft Corporation Bulk transmission of messages using a single HTTP request
US20070002736A1 (en) * 2005-06-16 2007-01-04 Cisco Technology, Inc. System and method for improving network resource utilization
US8418233B1 (en) 2005-07-29 2013-04-09 F5 Networks, Inc. Rule based extensible authentication
US8613071B2 (en) * 2005-08-10 2013-12-17 Riverbed Technology, Inc. Split termination for secure communication protocols
US8478986B2 (en) * 2005-08-10 2013-07-02 Riverbed Technology, Inc. Reducing latency of split-terminated secure communication protocol sessions
US8438628B2 (en) * 2005-08-10 2013-05-07 Riverbed Technology, Inc. Method and apparatus for split-terminating a secure network connection, with client authentication
US8533308B1 (en) 2005-08-12 2013-09-10 F5 Networks, Inc. Network traffic management through protocol-configurable transaction processing
US8621078B1 (en) 2005-08-15 2013-12-31 F5 Networks, Inc. Certificate selection for virtual host servers
US8065733B2 (en) * 2005-09-23 2011-11-22 Google, Inc. Method for evolving detectors to detect malign behavior in an artificial immune system
WO2007038245A2 (en) 2005-09-23 2007-04-05 Widevine Technologies, Inc. Method for evolving detectors to detect malign behavior in an artificial immune system
US20070079140A1 (en) * 2005-09-26 2007-04-05 Brian Metzger Data migration
US20070079386A1 (en) * 2005-09-26 2007-04-05 Brian Metzger Transparent encryption using secure encryption device
US7873065B1 (en) 2006-02-01 2011-01-18 F5 Networks, Inc. Selectively enabling network packet concatenation based on metrics
US8565088B1 (en) 2006-02-01 2013-10-22 F5 Networks, Inc. Selectively enabling packet concatenation based on a transaction boundary
US8386768B2 (en) * 2006-02-08 2013-02-26 Safenet, Inc. High performance data encryption server and method for transparently encrypting/decrypting data
US7958091B2 (en) 2006-02-16 2011-06-07 Ingrian Networks, Inc. Method for fast bulk loading data into a database while bypassing exit routines
US8572219B1 (en) 2006-03-02 2013-10-29 F5 Networks, Inc. Selective tunneling based on a client configuration and request
US8375421B1 (en) 2006-03-02 2013-02-12 F5 Networks, Inc. Enabling a virtual meeting room through a firewall on a network
US8782393B1 (en) 2006-03-23 2014-07-15 F5 Networks, Inc. Accessing SSL connection data by a third-party
US20070266233A1 (en) * 2006-05-12 2007-11-15 Mahesh Jethanandani Method and apparatus to minimize latency by avoiding small tcp segments in a ssl offload environment
US7917947B2 (en) * 2006-05-26 2011-03-29 O2Micro International Limited Secured communication channel between IT administrators using network management software as the basis to manage networks
US8379865B2 (en) * 2006-10-27 2013-02-19 Safenet, Inc. Multikey support for multiple office system
US9106606B1 (en) 2007-02-05 2015-08-11 F5 Networks, Inc. Method, intermediate device and computer program code for maintaining persistency
US8713186B2 (en) * 2007-03-13 2014-04-29 Oracle International Corporation Server-side connection resource pooling
US8060750B2 (en) * 2007-06-29 2011-11-15 Emc Corporation Secure seed provisioning
US8059814B1 (en) 2007-09-28 2011-11-15 Emc Corporation Techniques for carrying out seed or key derivation
US7961878B2 (en) 2007-10-15 2011-06-14 Adobe Systems Incorporated Imparting cryptographic information in network communications
US9043589B2 (en) * 2007-11-14 2015-05-26 Hewlett-Packard Development Company, L.P. System and method for safeguarding and processing confidential information
US20090132804A1 (en) * 2007-11-21 2009-05-21 Prabir Paul Secured live software migration
US8307210B1 (en) 2008-05-02 2012-11-06 Emc Corporation Method and apparatus for secure validation of tokens
US9832069B1 (en) 2008-05-30 2017-11-28 F5 Networks, Inc. Persistence based on server response in an IP multimedia subsystem (IMS)
US8307203B2 (en) * 2008-07-14 2012-11-06 Riverbed Technology, Inc. Methods and systems for secure communications using a local certification authority
US9130846B1 (en) 2008-08-27 2015-09-08 F5 Networks, Inc. Exposed control components for customizable load balancing and persistence
US8051287B2 (en) 2008-10-15 2011-11-01 Adobe Systems Incorporated Imparting real-time priority-based network communications in an encrypted communication session
US20100186070A1 (en) 2009-01-22 2010-07-22 Mcalear James A System, device and method for secure provision of key credential information
US8707043B2 (en) * 2009-03-03 2014-04-22 Riverbed Technology, Inc. Split termination of secure communication sessions with mutual certificate-based authentication
US8788824B2 (en) * 2009-08-13 2014-07-22 Verizon Patent And Licensing Inc. Selective encryption in broker-based messaging systems and methods
US8700892B2 (en) 2010-03-19 2014-04-15 F5 Networks, Inc. Proxy SSL authentication in split SSL for client-side proxy agent resources with content insertion
JP5604927B2 (ja) * 2010-03-24 2014-10-15 富士通株式会社 経路制御プログラム、中継プログラム、及びデータ中継方法
IT1399929B1 (it) * 2010-05-17 2013-05-09 Create Net Ct For Res And Telecomm Experimentation For Networked Communities Method and system for network virtualization
US9049025B1 (en) * 2011-06-20 2015-06-02 Cellco Partnership Method of decrypting encrypted information for unsecure phone
US9489488B2 (en) * 2011-09-23 2016-11-08 Roche Diabetes Care, Inc. Protocol independent interface supporting general communications interface debugging and testing tool
GB2497940B (en) 2011-12-21 2016-02-17 Eckoh Uk Ltd Method and apparatus for mediating communications
US20140237627A1 (en) * 2013-02-19 2014-08-21 Marble Security Protecting data in a mobile environment
US9525707B2 (en) * 2014-12-23 2016-12-20 Mcafee, Inc. Incident response tool using a data exchange layer system
US10599662B2 (en) 2015-06-26 2020-03-24 Mcafee, Llc Query engine for remote endpoint information retrieval
US10439952B1 (en) * 2016-07-07 2019-10-08 Cisco Technology, Inc. Providing source fairness on congested queues using random noise
KR101971995B1 (ko) * 2017-08-29 2019-04-24 주식회사 수산아이앤티 보안을 위한 보안 소켓 계층 복호화 방법
CN111600855A (zh) * 2020-04-30 2020-08-28 福州吉诺网络科技有限公司 一种拖车救援订单信息的加密方法及系统
US20240037544A1 (en) * 2022-07-29 2024-02-01 Ncr Corporation Cloud-based transaction processing

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4823122A (en) 1984-06-01 1989-04-18 Digital Equipment Corporation Local area network for digital data processing system
DE3876617T2 (de) 1987-09-04 1993-04-08 Digital Equipment Corp Verbindungssteuerung in einem netzwerk fuer ein digitaldatenverarbeitungssystem, das mehrfache uebertragungsprotokolle unterstuetzt.
US5341477A (en) 1989-02-24 1994-08-23 Digital Equipment Corporation Broker for computer network server selection
CA2048306A1 (en) 1990-10-02 1992-04-03 Steven P. Miller Distributed configuration profile for computing system
US5446896A (en) 1990-12-17 1995-08-29 Next, Inc. Method and apparatus for inter-program communication
JPH0778776B2 (ja) 1991-09-24 1995-08-23 インターナショナル・ビジネス・マシーンズ・コーポレイション 分散資源部分のアクセス方法及びネットワーク
US5371852A (en) 1992-10-14 1994-12-06 International Business Machines Corporation Method and apparatus for making a cluster of computers appear as a single host on a network
US5329619A (en) 1992-10-30 1994-07-12 Software Ag Cooperative processing interface and communication broker for heterogeneous computing environments
US5544320A (en) 1993-01-08 1996-08-06 Konrad; Allan M. Remote information service access system based on a client-server-service model
US5444782A (en) * 1993-03-09 1995-08-22 Uunet Technologies, Inc. Computer network encryption/decryption device
CA2124379C (en) 1993-06-25 1998-10-27 Thomas F. La Porta Distributed processing architecture for control of broadband and narrowband communications networks
US5506984A (en) 1993-06-30 1996-04-09 Digital Equipment Corporation Method and system for data retrieval in a distributed system using linked location references on a plurality of nodes
US5548726A (en) 1993-12-17 1996-08-20 Taligeni, Inc. System for activating new service in client server network by reconfiguring the multilayer network protocol stack dynamically within the server node
FR2714746B1 (fr) 1993-12-31 1996-02-02 Bull Sa Procédé de simulation d'une architecture "serveur" à partir d'une architecture "client".
US6185619B1 (en) * 1996-12-09 2001-02-06 Genuity Inc. Method and apparatus for balancing the process load on network servers according to network and serve based policies
US5530758A (en) * 1994-06-03 1996-06-25 Motorola, Inc. Operational methods for a secure node in a computer network
US5708780A (en) 1995-06-07 1998-01-13 Open Market, Inc. Internet server access control and monitoring systems
US5751971A (en) 1995-07-12 1998-05-12 Cabletron Systems, Inc. Internet protocol (IP) work group routing
JP4160642B2 (ja) * 1995-09-08 2008-10-01 株式会社日立製作所 ネットワークデータ転送方法
US5757924A (en) * 1995-09-18 1998-05-26 Digital Secured Networks Techolognies, Inc. Network security device which performs MAC address translation without affecting the IP address
US5819020A (en) * 1995-10-16 1998-10-06 Network Specialists, Inc. Real time backup system
JP3196618B2 (ja) * 1995-11-24 2001-08-06 株式会社日立製作所 パーソナルコンピュータおよびそれを用いた通信システム
US5828847A (en) 1996-04-19 1998-10-27 Storage Technology Corporation Dynamic server switching for maximum server availability and load balancing
US5987140A (en) * 1996-04-26 1999-11-16 Verifone, Inc. System, method and article of manufacture for secure network electronic payment and credit collection
US5748897A (en) 1996-07-02 1998-05-05 Sun Microsystems, Inc. Apparatus and method for operating an aggregation of server computers using a dual-role proxy server computer
US5774660A (en) 1996-08-05 1998-06-30 Resonate, Inc. World-wide-web server with delayed resource-binding for resource-based load balancing on a distributed resource multi-node network
US6470389B1 (en) 1997-03-14 2002-10-22 Lucent Technologies Inc. Hosting a network service on a cluster of servers using a single-address image
US20010039615A1 (en) 1997-04-15 2001-11-08 At &T Corp. Methods and apparatus for providing a broker application server

Also Published As

Publication number Publication date
JP2003504714A (ja) 2003-02-04
WO2001002935A3 (en) 2001-05-03
EP1116367A2 (en) 2001-07-18
DE60043879D1 (de) 2010-04-08
CA2341869A1 (en) 2001-01-11
EP2194580A3 (en) 2010-09-01
WO2001002935A2 (en) 2001-01-11
AU5440100A (en) 2001-01-22
EP2194580A2 (en) 2010-06-09
EP1116367B1 (en) 2010-02-24
EP2194580B1 (en) 2014-01-22
US6681327B1 (en) 2004-01-20

Similar Documents

Publication Publication Date Title
JP4245838B2 (ja) セキュアクライアントサーバトランザクションを管理するための方法及びシステム
JP5744172B2 (ja) 中間ストリーム再ネゴシエーションを介したプロキシsslハンドオフ
US8407771B1 (en) Method and system for providing persistence in a secure network access
US7853781B2 (en) Load balancing secure sockets layer accelerator
US7908472B2 (en) Secure sockets layer cut through architecture
US20050210243A1 (en) System and method for improving client response times using an integrated security and packet optimization framework
US7827404B1 (en) Secure sockets layer proxy architecture
CN109150688B (zh) IPSec VPN数据传输方法及装置
JP2023116573A (ja) クライアント-クラウドまたはリモートサーバーの安全なデータまたはファイル・オブジェクト暗号化ゲートウェイ
US7111162B1 (en) Load balancing approach for scaling secure sockets layer performance
US7873829B2 (en) Offload processing for secure data transfer
US11303614B2 (en) System and method for providing improved optimization for secure session connections
US20030014625A1 (en) Bufferless secure sockets layer architecture
US7631182B1 (en) Secure protocol handshake offload using TNICs
US20030105977A1 (en) Offload processing for secure data transfer
US20030105953A1 (en) Offload processing for secure data transfer
US20030105957A1 (en) Kernel-based security implementation
Gin Building a Secure Short Duration Transaction Network

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20041116

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080331

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080630

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080728

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20081024

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20081031

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081128

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: 20081222

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090107

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120116

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130116

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130116

Year of fee payment: 4

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