JP4699688B2 - 暗号化演算を実行するために証明書の縮約情報を送信するシステムおよび方法 - Google Patents

暗号化演算を実行するために証明書の縮約情報を送信するシステムおよび方法 Download PDF

Info

Publication number
JP4699688B2
JP4699688B2 JP2003391492A JP2003391492A JP4699688B2 JP 4699688 B2 JP4699688 B2 JP 4699688B2 JP 2003391492 A JP2003391492 A JP 2003391492A JP 2003391492 A JP2003391492 A JP 2003391492A JP 4699688 B2 JP4699688 B2 JP 4699688B2
Authority
JP
Japan
Prior art keywords
certificate
client
destination
request
electronic 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.)
Expired - Fee Related
Application number
JP2003391492A
Other languages
English (en)
Other versions
JP2004173286A (ja
Inventor
ウィリアムス ロイ
ペレイラ ジョージ
ミシェル バティシュ カリム
ジェイ.ホーリン フィリップ
ユリン シェ
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.)
Microsoft Corp
Original Assignee
Microsoft Corp
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 Microsoft Corp filed Critical Microsoft Corp
Publication of JP2004173286A publication Critical patent/JP2004173286A/ja
Application granted granted Critical
Publication of JP4699688B2 publication Critical patent/JP4699688B2/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
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • 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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3263Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/60Digital content management, e.g. content distribution
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/80Wireless

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)
  • Storage Device Security (AREA)

Description

本発明は、安全な通信(secure communications)に関するものである。より具体的には、本発明は通信の暗号化に証明書(certificates)を使用することに関するものである。
コンピューティングおよびネットワーキング技術は、私たちの仕事と遊びの様式を一変させた。ネットワークはさまざまな機能を持ち、単純なネットワーク対応コンピューティングシステムであっても、「インターネット」としばしば呼ばれるネットワークの集合体を介して地球全体に拡散している他の数百万台ものコンピューティングシステムのうちの1台と通信することができる。このようなコンピューティングシステムとして、デスクトップ、ラップトップ、またはタブレットパーソナルコンピュータ、携帯情報端末(PDA)、電話、またはデジタルネットワークを介して通信することが可能なその他のコンピュータまたはデバイスがある。
ネットワークを介して通信するためには、一方のコンピューティングシステム(本明細書では「ソースコンピューティングシステム(source computing system)」または「ソースクライアント(source client)」と呼ぶ)が、電子メッセージを作成するか、または何らかの方法でアクセスし、ネットワークを介してその電子メッセージを他方のコンピューティングシステム(本明細書では「デスティネーションコンピューティングシステム(destination computing system)」または「デスティネーションクライアント(destination client)」と呼ぶ)に送信する。この電子メッセージは、電子メールまたはインスタントメッセージの場合のように人間のユーザーが読み取ることができるか、またはその代わりに、受信側コンピューティングシステム上で稼働しているアプリケーションにより読み取ることができる。電子メッセージは、人間のユーザーが補助することができる送信側コンピューティングシステム上で稼働しているアプリケーションにより構築することができる。
このような電子メッセージ送受信機能を使用するとコンピューティングシステム同士で情報交換することができ、それに関わるユーザーが以前にはなかった方法で利用することができて都合がよいが、電子メッセージは傍受される恐れがある。電子メッセージの内容の機密性によっては、極めて有害な事態を生じたり、さらには場合によっては破滅的な事態に至ることすらあり得る。傍受を防ぐために、電子メッセージを暗号化し、特定の2進列(「鍵」と呼ばれる)を持つ者のみが電子メッセージを暗号解読し、電子メッセージ内に表現されている情報にアクセスできるようにすることが多い。できれば受信側コンピューティングシステムのみが電子メッセージの暗号解読に必要な鍵にアクセスできるように作業が進められる。したがって、介入する傍受者は、異常に極端な労力を払わないと暗号化された形式の電子メッセージにアクセスできない。
対称暗号化では、電子メッセージを暗号化するのに使用したのと同じ鍵を使用して、電子メッセージの暗号解読を行うことができる。非対称暗号化では、「公開鍵」および「秘密鍵」は特定のコンピューティングシステムと関連付けられている。公開鍵は、さまざまな種類のコンピューティングシステムに公開されるが、秘密鍵は公開しない。秘密鍵は、公開鍵を使用して暗号化されているメッセージの暗号解読に使用することができる。秘密鍵は公開鍵よりも機密性が高いが、それは、受信側コンピューティングシステムがそのコンピューティングシステムを宛先とする電子メッセージの暗号解読を行える唯一のコンピューティングシステムでなければならないからである。
暗号化を行いやすくするために、送信側コンピューティングシステムでは、多くの場合、受信側コンピューティングシステムと関連付けられている電子証明書にアクセスする。図8は、従来技術による証明書800のデータ構造を示している。証明書800は、有効性確認情報803を含む。この有効性確認情報803により、送信側コンピューティングシステムは、その証明書が実際に受信側コンピューティングシステムに対応していること、およびその証明書が取り消されていないことを確認することができる。X.509証明書は、現在広く使われている証明書の1つである。X.509証明書の有効性確認情報は、例えば、デスティネーションコンピューティングシステムに対応して証明書が機能するかどうかを検証するためにアクセスするURLを含む。X.509証明書の有効性確認情報は、さらに、その証明書が取り消されているかどうかを示す証明書取り消しリストを含むこともできる。
証明書800は、さらに、送信側コンピューティングシステムが証明書を識別するための証明書識別情報802も含む。例えば、X.509証明書は、鍵識別子、または場合によっては、発行者識別子とシリアル番号の組み合わせを含むこともある。
証明書800は、さらに、暗号化情報801(例えば、X.509証明書内の公開鍵)も含む。暗号化情報を使用することにより、送信側コンピューティングシステムは、その証明書に対応するデスティネーションコンピューティングシステムによって暗号解読できる方法で電子メッセージを暗号化することができる。例えば、送信側コンピューティングシステムがデスティネーションコンピューティングシステムに対応する公開鍵を使用して電子メッセージを暗号化する場合、デスティネーションコンピューティングシステムは、電子メッセージの暗号解読に必要な対応する秘密鍵を持つ唯一のコンピューティングシステムであるのが理想的である。
暗号化の時点で証明書が使用されるケースがかなりある。例えば、従来、S/MIMEを使用する電子メールを暗号化する場合、受信側コンピューティングシステムの証明書を送信側コンピューティングシステム自体で使用し、送信側コンピューティングシステムが暗号化を実行するのを補助する。MIME(多目的インターネットメール拡張仕様)は、インターネット経由で非ASCIIメッセージを送信できるように非ASCIIメッセージの書式を定めた規格である。現在、多くの電子メールクライアントが、MIMEをサポートしており、インターネットメールシステムを介してグラフィックスファイル、オーディオファイル、およびビデオファイルを送受信することができる。MIMEは1992年にInternet Engineering Task Force(IETF)によって定められた。S/MIMEは、MIME規格に準拠する電子メールメッセージのコンテンツの暗号化および符号化を行う方法を定義した規格である。S/MIMEは、上述の公開鍵暗号化技術に基づいている。今後S/MIMEは広く実装され、異なる電子メールアプリケーションを使用していてもだれもが互いに電子メールメッセージを安全にやり取りできるようになることが期待される。
S/MIMEで定められたような証明書ベースの暗号化技術の普及と利用にあたって、特にメモリ容量が制限されるモバイルデバイスでは、いくつかの障害が考えられる。現在、証明書ベースの暗号化でメッセージを暗号化するために、証明書全体にアクセスしている。X.509証明書は、証明書毎にそのサイズが1キロバイトを優に超えることが多い。証明書は、ふつう、メッセージの各潜在的受信者に使用される。メッセージによっては受信者が多数おり、そのため、証明書を格納するために必要なメモリ量が増大する。したがって、通常、メモリ容量とプロセッサ能力が比較的限られているモバイルデバイス上で動作させる場合に実行速度が著しく低下することがある。
さらに、送信側コンピューティングシステムは、待ち時間が長い接続および/または帯域幅の狭い接続(例えば、ダイヤルアップ接続または無線接続)で他のコンピューティングシステムから証明書を取得することが多い。特に、証明書は集中リポジトリまたはディレクトリに格納され、これを電子メールユーザーがアクセスするというケースが多い。低速のネットワーク接続でこれらのリポジトリに接続される電子メールユーザーは、証明書のサイズの影響を大きく受ける。したがって、望まれるのは、メモリ、プロセッサ、および帯域幅に対する要件を低減する証明書ベースの暗号化技術である。
従来技術の前記の問題は、暗号化ポイントで証明書全体を使用しないため、暗号化ポイントでメモリおよびプロセッサのリソースを節約できる証明書ベースの暗号化メカニズムを指向する本発明の原理により克服される。さらに、暗号化ポイントがまだ証明書にアクセスしていない場合、証明書全体の一部しか暗号化ポイントに送信されないため、証明書全体を送信する(そして格納する)のに比べて帯域幅(およびメモリ)が節約される。
本発明の原理は、ソースクライアントが1つまたは複数のデスティネーションクライアントに送信される電子メッセージ用の暗号化ポイントであるネットワーク環境で実装することができる。証明書は、電子メッセージの潜在的デスティネーションクライアントのうち少なくとも一部について対応する証明書を供給する証明書サーバからアクセスすることができる。証明書には、証明書に対するアクセス権を持つ人がその証明書に対応するエンティティにより暗号解読できる方法で電子メッセージを暗号化するために使用する暗号化情報が含まれる。この証明書はさらに、証明書に対するアクセス権を持つ人がその証明書が有効であること、その証明書が対応するエンティティに属していること、およびその証明書が取り消されていないことを検証するために使用する自己検証情報も含む。
ソースクライアントでは、デスティネーションクライアントに送信される電子メッセージにアクセスし、その後、その電子メッセージは暗号化されるべきであると判断する。ソースクライアントは、デスティネーションクライアントに対応する証明書の一部のみにアクセスする要求を生成する。この一部は、暗号化情報を含むが、自己検証情報の一部またはそのすべてさえも欠いている場合がある。そこで、ソースクライアントは、その要求を証明書サーバに送信し、証明書サーバはその要求を受け取り、応答として、証明書の要求された部分のみを返す。
返された証明書の部分は、証明書全体と比べるとはるかに小さくなる可能性がある。したがって、その要求された部分を返すだけでも、証明書サーバとソースクライアントの間に必要な帯域幅をかなり低減できる。ソースクライアントがその応答を受け取った場合、デスティネーションクライアント側で暗号解読できるように暗号化情報を使用して電子メッセージを暗号化する。
暗号化プロセスは、公開鍵を使用して電子メッセージの内容を直接暗号化するステップを含むことができる。その代わりに、複数のデスティネーションクライアントがメッセージを受信する場合、電子メッセージの内容を別の鍵(例えば、セッション鍵)で暗号化することができる。電子メッセージはさらに、デスティネーションクライアント毎に、その対応する公開鍵により暗号化されているセッション鍵を含めることもできる。
そこで、証明書全体ではなくその一部が送信され、暗号化に使用されるため、ソースクライアントでのメモリおよび処理リリースが節約される。これは、ソースクライアントがプロセッサおよびメモリのリソースがすでに限られており、他のネットワークとの接続に使用される帯域幅も限られることの多いモバイルデバイスである場合に特に重要である。本発明は、タイミングだけでなく電子メッセージのセキュリティも重要な場合に特に有用である。
証明書の一部の自己検証情報が証明書の要求された部分に含まれない場合のあることに留意されたい。証明書の有効性を検証できるようにするステップと関連するセキュリティを確保するために、証明書サーバで証明書の検証を実行することができる。証明書サーバは、証明書サーバがこのような有効性確認を実行した場合にソースクライアントが証明書の有効性を独立に確認せずにその証明書が有効であると結論するという範囲で、ソースクライアントによりすでに信頼されていることが好ましい。
本発明の他の機能および利点については以下で説明するが、ある程度説明から明らかであろうし、また本発明を実施することにより学ぶこともできる。本発明の特徴と利点は、付属の請求項で特に指摘されている機器および組み合わせを使って実現し得ることができる。本発明のこの機能および他の機能については以下の説明を読むとより完全に明らかになるであろうし、あるいは以下で述べているように本発明を実施することにより学ぶこともできる。
本発明の上記の利点および特徴およびその他の利点および特徴を得る方法を説明するために、上で簡単に説明した本発明より具体的な説明を付属の図面に示されている特定の実施形態を参照しながら行う。これらの図面が本発明の代表的な実施形態を示しているだけであり、したがってその範囲を制限しているものとみなされないことを理解していることを前提として、付属の図面を使用して本発明を具体的内容および詳細とともに説明する。
本発明の原理は、デスティネーションクライアントに送信する電子メッセージを暗号化する場合にデスティネーションクライアントに対応する証明書全体にソースクライアントがアクセスしない証明書ベースの暗号化メカニズムに関する。その代わりに、ソースクライアントは証明書サーバに証明書の一部のみを要求する。その一部は、暗号化情報を含むが、証明書に含まれる自己有効性確認情報の一部またはそのすべてさえも欠いている場合がある。有効性確認を実行する場合、証明書サーバは暗号化情報をソースクライアントに送信するのに先立って証明書の有効性確認を実行する。特に証明書サーバがソースクライアントによって信頼されている場合には、証明書の有効性確認はソースクライアントにより別々に実行される必要はない。
ソースクライアントは、証明書のさらに限られた部分(本明細書では、「ミニ証明書」または「部分的証明書」とも呼ぶ)を使用して、メッセージの暗号化を行う。部分的証明書は証明書全体に比べてはるかに小さいので、これにより、証明書ベースの暗号化を実行する場合に使用されるメモリおよびプロセッサのリソースを減らすことができ、また証明書サーバとソースクライアントとの間に必要な帯域幅を低減することができる。
本発明の実施形態は、後で詳述するように、さまざまなコンピュータハードウェアをはじめとする専用または汎用のコンピューティングデバイスを備えることができる。本発明の範囲内の実施形態はさらに、格納されているコンピュータ実行可能命令またはデータ構造体を搬送するまたは保持するためのコンピュータ読み取り可能媒体も含む。このようなコンピュータ読み取り可能媒体は、汎用または専用のコンピュータからアクセス可能な利用可能媒体であってよい。例として、ただしこれに限るわけではないが、このようなコンピュータ読み取り可能媒体はRAM、ROM、EEPROM、CD−ROMまたはその他の光ディスクストレージ、磁気ディスクストレージまたはその他の磁気ストレージデバイス、またはコンピュータ実行可能命令またはデータ構造体の形で目的のプログラムコード手段を搬送または格納するために使用できる、専用または汎用コンピュータによりアクセスできる、その他の媒体などの物理的ストレージ媒体を備えることができる。コンピュータ読み取り可能媒体を永続的メモリとすることも、またランタイムメモリまたはそれらの組み合わせとすることもできる。
図1および以下の説明は、本発明を実施できる適当なコンピューティング環境について簡潔に述べた一般的な説明である。必要というわけではないが、本発明について、コンピューティングデバイスによって実行されるプログラムモジュールなどのコンピュータ実行可能命令の一般的文脈において説明する。一般に、プログラムモジュールには、特定のタスクを実行する、あるいは特定の抽象データ型を実装するルーチン、プログラム、オブジェクト、コンポーネント、データ構造などが含まれる。
図1では、本発明の原理に適している動作環境は、無線デバイスの形態の汎用コンピューティングデバイス100を備える。無線デバイス100は携帯電話の形をとるが、現在ではさまざまなデバイスが無線ネットワークを介して通信することができ、本発明の原理を採用することにより有用である。例えば、ラップトップコンピュータ、タブレットPC、携帯情報端末(PDA)、およびその他の無線デバイスが現在では利用可能である。その他の無線デバイス形態も将来開発される可能性がある。本発明の原理は、無線デバイスの特定の組み合わせに限られない。
無線デバイス100は、ユーザーが入力ユーザーインターフェイス103を介して情報を入力するためのユーザーインターフェイス101を備える。ユーザーは、出力ユーザーインターフェイス102を介して表示される情報を検討する。ユーザーインターフェイスは、無線デバイスのフォームファクタにより大きく異なる。しかし、図に示されている実施形態では、無線デバイス100はラップトップコンピュータであり、出力ユーザーインターフェイス102はオーディオ情報をユーザーに与えるためのスピーカー104、および視覚的情報をユーザーに与えるための表示装置105を備える。
入力ユーザーインターフェイス103は、オーディオ情報を電子形式に変換するマイク106を備えることもできる。さらに、入力ユーザーインターフェイス103は、ダイヤルコントロール107およびナビゲーションコントロール108を備え、ユーザーはこれを利用して情報を無線デバイス100に入力することができる。
1つまたは複数のプログラムモジュールを備えるプログラムコード手段をメモリ112に格納することができる。1つまたは複数のプログラムモジュールが、オペレーティングシステム113、1つまたは複数のアプリケーションプログラム114、その他のプログラムモジュール115、およびプログラムデータ116を備えることもできる。1つまたは複数のプログラムモジュールをメモリ(揮発性の場合)内にインスタンス化したり、メモリ(不揮発性の場合)からロードして、プロセッサ111を使用してさらに処理することができる。プログラムコード手段は、不揮発性メモリだけでない揮発性メモリも備えることができ、その形態は無線デバイスの種類によって大きく異なる。
図1は本発明の適当なオペレーティング環境を表しているが、本発明の原理は、無線ネットワークを介して通信することができる任意の無線デバイス内に採用することができる。図1に示されている無線デバイスは、説明のためのみであり、決して、本発明の原理が実装されるさまざまな環境の小さな一部すら表すものではない。
図2は、本発明の原理を採用できるネットワーク環境200を示す図である。ネットワーク環境200は、ソースクライアントのコンピューティングシステム210を備える。この説明および請求項では、「コンピューティングシステム」という用語は、1つまたは複数のプロセッサを使用してソフトウェアを実行している、または実行することができるハードウェアコンポーネントまたはハードウェアコンポーネントの組み合わせである。コンピューティングシステムは、システムまたは処理能力を持つデバイスであればよい。例えば、コンピューティングシステムは、ラップトップコンピュータ、デスクトップコンピュータ、タブレットコンピュータ、携帯情報端末(PDA)、携帯電話、または現在存在しているまたは将来開発される予定のその他の処理システムまたはデバイスとすることができる。
この説明および請求項では、「クライアントコンピューティングシステム」または「クライアント」は、クライアントコンピューティングシステムがさらに他のコンピューティングシステムにサービスを提供するにせよしないにせよ、他のコンピューティングシステムのサービスを受けるコンピューティングシステムである。例えば、ソースクライアント210は、証明書サーバ220のサービスを受け、証明書サーバは証明書(またはその一部)を必要に応じてソースクライアント210に提供する動作をする。例では、ソースクライアント210は(電子メッセージも作成しようとしまいと)、縦の楕円235で表されているように潜在的にさらに多くのうちでデスティネーションクライアント231、232、233、234の中のどれか1つを含むさらに多くのデスティネーションクライアント230のうちの1つに送信する電子メッセージにアクセスする。ソースクライアント210およびデスティネーションクライアント231、232、233、および234は、上述のように、無線デバイス100用に構成することができるが、本明細書で述べているようにコンピューティングシステムの定義の範囲内であればどのような形態をも取ることができる。
図3は、本発明の原理により、証明書サーバの補助によりデスティネーションクライアントのうち少なくとも1つに送信するメッセージを暗号化するソースクライアントのコンピューティングシステムの方法300を示している。動作のうちのいくつかと方法300のステップは、図3の左欄の下に見出し「ソースクライアント」として表されているようにソースクライアント210により実行することができる。方法300の他の動作は、図3の右欄に見出し「証明書サーバ」として示されているように証明書サーバ220により実行される。
ソースクライアント210はまず、デスティネーションクライアントのうちの少なくとも1つに送信する電子メッセージにアクセスする(動作301)。この電子メッセージは、ローカルメモリからアクセスすることができ、あるいは場合によっては、列のコンピューティングシステムから受信し、デスティネーションコンピューティングシステムに配信することもできる。さらに、電子メッセージはデスティネーションクライアントに送信される電子メッセージの最終バージョンの暫定バージョンでもよい。
ソースクライアント210は次に、デスティネーションクライアントに送信する前に電子メッセージを暗号化することを決める(動作302)。この決定は、構成設定、デスティネーションクライアントまたはデスティネーションクライアントが属するクライアントのグループに関連する特定の設定に対する応答として、または場合によっては、ソースクライアントのユーザーからの要求に対する応答として実行される。
ソースクライアント210はさらに、デスティネーションクライアントに対応する証明書全体にローカルでアクセスすることなくデスティネーションクライアントに対する証明書ベースの暗号化を実行する機能的結果指向のステップを実行する(ステップ303)。この結果指向のステップには、この結果を遂行する対応する動作が含まれる。しかし、図に示されている実施形態では、ステップ303は対応する動作304、305、および309を含む。
特に、ソースクライアント210は、デスティネーションクライアントに対応する証明書の一部のみにアクセスする要求を生成する。この一部分は、図7に示されている部分的証明書700としての証明書であってよい。部分的証明書700は、デスティネーションクライアントにより暗号解読できるように、電子メッセージを暗号化するために必要な暗号化情報701を含む。部分的証明書700の暗号化情報701は、証明書全体の暗号化情報801と似ていてもよい。例えば、証明書全体800がX.509証明書であった場合、暗号化情報701は、デスティネーションクライアントが所有する秘密鍵に対応する公開鍵とすることができる。
部分的証明書700はさらに、部分的証明書700に対応する証明書全体800を識別する証明書識別情報702を含むこともできる。例えば、証明書識別情報702は、証明書全体の証明書識別情報802の少なくとも一部を含むことができる。例えば、証明書全体800がX.509証明書であった場合、証明書識別情報702は、鍵識別子、またはその代わりにあるいはそれに加えて、証明書発行者識別子および証明書シリアル番号の組み合わせを含むことができる。有効性確認情報803の一部は部分的証明書700に含めることもできるが、有効性確認情報803はどれも、部分的証明書に入るものとして示されていない。部分的証明書700は証明書全体800の情報の大半を欠いているため、部分的証明書700のサイズは証明書全体のサイズと比べてはるかに小さくなる可能性がある。
ソースクライアント210は、証明書の一部にアクセスする要求を生成した後(動作304)、その要求を証明書サーバ220に送信する(動作305)。この送信は、図2では、矢印211Aで表されているようにソースクライアント210から証明書サーバ220へ移動する要求211により示されている。
図4は、本発明による要求211のデータ構造の概略を示している。要求211は、ヘッダ情報401を含む。このヘッダ情報401は、伝送プロトコルによって使用される情報を含むことができる。例えば、電子メッセージがハイパーテキスト転送プロトコル(HTTP)要求(例えば、HTTP POST要求)の場合、要求211AはHTTPヘッダ情報を含むであろう。HTTPプロトコルを使用して要求を送信する方法は、証明書サーバ220がソースクライアント210を含むローカルネットワーク上にないが、その代わりにインターネット上でのみアクセス可能な場合に便利である。
要求211はさらに、デスティネーションクライアントの識別402も含む。この識別は、例えば、URL、IPアドレス、またはデスティネーションクライアントまたは複数のクライアントと関連付けられている電子メールアドレスの形態を取ることができる。この識別が個々のデスティネーションクライアントの未解決名の形であった場合、証明書サーバ220は、さらに、この名前を特定のデスティネーションクライアントに解決し、要求された部分的証明書または証明書全体が証明書サーバによりソースクライアントに提供されるのと同時にその解決結果をソースクライアント210に返す。識別が配布リストの未解決名の形であった場合、証明書サーバはその配布リストを展開してから、配布リストに対応するデスティネーションクライアント毎に部分的証明書または証明書全体のいずれかをソースクライアント210に返すことができる。配布リスト上のエンティティには、個人だけでなく、潜在的に1つまたは複数の他の子配布リストが含まれる。配布リストを展開することは、まず最初に配布リストで直接識別されている個人を含め、次に、1つまたは複数の他の子配布リストのどれかについて同じ展開を再帰的に実行することにより配布リストに含まれる各個人を識別することを意味する。この再帰的プロセスを使用すると、個人が子または孫配布リストでしか識別されていない場合でも配布リストに含まれるすべての個人が識別される。そうする代わりに、証明書サーバ220または図に示されていない他の何らかの解決サーバおよび/またはソースクライアント220に組み込まれた解決メカニズムにより、このようなアドレス名解決を別々に実行することもできる。
要求211はさらに、証明書の完全バージョンが要求されたか(完全バージョンフィール404で表されているように)、証明書の部分的バージョンが要求されたか(部分的バージョンフィールド405で表されているように)を示す標識を含む証明書要求403も含む。証明書要求に対応するデスティネーションクライアントが複数ある場合、その要求により、デスティネーションクライアントすべてについて証明書の完全バージョンが望まれていること、またはデスティネーションクライアントすべてについて証明書の部分的バージョンが望まれていることを指定することができる。そうする代わりに、要求により、デスティネーションクライアントの指定グループのみについて部分的証明書を返すこと、およびそれ以外については証明書全体を返すことを指定することもできる。さらに、要求により、デスティネーションクライアントの指定グループのみについて証明書全体を返すこと、およびそれ以外については部分的証明書を返すことを指定することもできる。「getcert」要求の形の特定の証明書要求の例について説明する。
「getcert」コマンドは、HTTP POST要求の中に入れることができ、テキスト「cmd=getcerts」を記述して、その要求が証明書に対する要求であることを識別することができる。
アドレスフィールド「addrs=[ADDRESS]」で、証明書が望まれている1つまたは複数のデスティネーションクライアントの1つまたは複数のアドレスのリストを示すことができる。大文字の文字列が角括弧の中に含まれている場合、大文字で記述されている型の実際の値でメッセージ内の角括弧とその内容を置き換えることを意味する。例えば、[ADDRESS]は、デスティネーションクライアントの実際のアドレス、または証明書サーバによってアドレスに解決される未解決名で置き換えられる。「getcerts」コマンドを使用しても、解決データはクライアントに返されず、解決済みアドレスの証明書のみ返される。
オプションフィールド「minicert=[t/f]」がtrueに設定されていると、証明書サーバ220は証明書全体ではなく部分的証明書を返す。そうでなく、値がfalseであるか、またはminicertフィールドが存在していなかった場合には、証明書全体が返される。minicertフィールドはaddrsフィールドによって表される特定のデスティネーションクライアントに対応しているか、または要求の中のaddrsフィールドによって表される一部または全部のデスティネーションクライアントを表す。
証明書サーバ220はソースクライアント210から要求を受け取り(動作306)、その要求が部分的証明書のみの要求であると判断し(動作307)、そのデスティネーションクライアントに対する部分的証明書のみを返すことにより応答する(動作308)。図2では、矢印212Aで表されているように、証明書サーバ220は応答212をソースクライアント210に返す。
図5は、応答212のデータ構造例を示している。応答はヘッダ情報501を含む。例えば、要求211がHTTP要求であった場合、応答212はHTTP応答の可能性があり、その場合、ヘッダ情報はHTTP応答ヘッダ情報となる。この応答はさらに、電子メッセージの各デスティネーションクライアントに対する証明書502も含む。証明書は、要素504によって表されているように証明書全体であるか、または要素505によって表されているように部分的証明書とすることができる。しかし、本発明の原理によれば、電子メッセージを受け取るデスティネーションクライアントのうち少なくとも1つに対して部分的証明書が返される。
以下は、HTTP POST応答内に埋め込まれている応答の可能な1つのスキーマを表している(わかりやすくするため行番号を追加してある)。
1. <a:response xmlns:a="http://schemas.microsoft.com/exchange/webmail">
2. <a:cert>[CERTIFICATE]</a:cert>
3. </a:response>
第1行から第3行までは、「応答」XML要素を表す。属性「xmlns」は、XML要素に対応する名前空間を表し、XML要素を解析してその意味を解釈するために使用することができる。
第2行は、要求の中のaddrsフィールドにより表されていたデスティネーションクライアント(またはアドレスが配布リストの場合にはデスティネーションクライアントのグループ)毎に繰り返すことができる「cert」XML要素を表している。
cert要素の内容は、addrs要素に対応する1つまたは複数の証明書であり、以下の形式を取ることができる(わかりやすくするために行番号を追加している)。
1. [DWORD:cert要素の全内容のサイズ]
2. [DWORD:cert要素に含まれる証明書に対する受信者の総数(受信者が未解決であった場合には0となることもある)]
3. [DWORD:見つかった証明書の総数(有効な証明書が見つからなかった場合には0となることもある)]
4. [証明書1]
5. ・
6. ・
7. ・
8. [証明書M]
第1行〜第3行は、cert要素の内容全体に関する情報を表すDWORDsである。第4行〜第8行は、証明書のセクションが複数ありえることを表す。この場合、証明書には証明書1〜Mまでが含まれ、第5〜第7行は第1と第Mの証明書の間にある可変個の証明書を表す縦の楕円である。各証明書セクションは、以下のような構造とすることができる(わかりやすくするため行番号を追加している)。
1. [WORD:証明書のサイズ]
2. [WORD:フラグ(証明書が証明書全体であるか部分的証明書であるか、および証明書が鍵識別子により識別されているかどうかを示すことができる)]
3. [部分的証明書または証明書全体それ自体]
図2および3のさらに一般的な例に戻って図を見ると、ソースクライアント210はサーバから証明書の要求された部分しか受け取らない(動作309)。この段階では、ソースクライアント210は、電子メッセージを送信されるデスティネーションクライアントのそれぞれが受信できるうように電子メッセージを暗号化する準備が整っている。電子メッセージを送信されるデスティネーションクライアントの一部またはさらには全部について部分的証明書のみが返され、部分的証明書は証明書全体に比べてかなり小さい(1桁も違うことさえある)ため、証明書サーバ220からソースクライアントへの証明書の配信はかなり高速であり、また使用する帯域幅も小さくて済む。
ソースクライアントは、次に、部分的証明書内の暗号化情報を使用して、電子メッセージの暗号化を行う。前述のように、暗号化情報701は、図7の部分的証明書700に表される。例えば、暗号化情報は、電子メッセージを送信されるデスティネーションクライアントに対応する公開鍵とすることができる。
電子メッセージが複数のデスティネーションクライアントに送信されることになっていた場合、デスティネーションクライアント毎に電子メッセージを暗号化することができる。これは、各デスティネーションクライアントの対応する公開鍵を使用して各デスティネーションクライアントの内容を別々に暗号化することにより実現することができる。しかし、デスティネーションクライアントが多かった場合、これはプロセッサの負担が大きなタスクとなり、電子メッセージを発信する際に使用するメモリ量と帯域幅が増えるおそれがある。
プロセッサ、メモリ、および帯域幅の必要条件を低減するために、その代わりに電子メッセージを図6に示されている電子メッセージ600のように構成することができる。電子メッセージの内容601は、セッション鍵602を使用して暗号化される。それぞれのデスティネーションクライアントに対して、そのデスティネーションクライアントに対応する公開鍵を使用してセッション鍵602を暗号化することによりセッション鍵602を知らせる。例えば、電子メッセージ600を、それぞれ公開鍵1〜4までを持つデスティネーションクライアント231〜234のそれぞれに送信すると仮定する。この場合、セッション鍵602が、公開鍵1〜4で別々に暗号化される。
鍵識別子612は、鍵識別子612により識別された公開鍵1を使用して暗号化されたセッション鍵602と関連付けられる。鍵識別子613は、鍵識別子613により識別された公開鍵2を使用して暗号化されたセッション鍵602と関連付けられる。発行者識別子614Aおよびシリアル番号614Bの組み合わせは、組み合わせ614Aおよび614Bに固有の公開鍵3を使用して暗号化されたセッション鍵602と関連付けられている。発行者識別子615Aおよびシリアル番号615Bの組み合わせは、組み合わせ615Aおよび615Bに固有の公開鍵4を使用して暗号化されたセッション鍵602と関連付けられている。メッセージ213を受信すると、それぞれのデスティネーションクライアントは鍵識別子または発行者識別子とシリアル番号の組み合わせを使用して、どの暗号化された形式のセッション鍵を暗号解読できるかを判別することができる。その後、デスティネーションクライアントはそのセッション鍵を暗号解読し、そのセッション鍵を使用して内容の暗号解読を行う。
したがって、サイズを減らした証明書を使用してセキュア通信に対応できるため、メモリ、プロセッサ、およびネットワーク帯域幅リソースが節約され、セキュア電子メッセージを送信するのに要する時間も短縮される。
本発明は、その精神または本質的特性から逸脱することなく他の固有の形でも実現することができる。ここで説明した実施形態は、あらゆる点において説明を目的としており制限することを目的としていないものとみなすべきである。したがって、本発明の範囲は上記の説明によってではなく付属の請求項により示される。すべての変更は、請求項の意味とその等価性の範囲内にある限り本発明の範囲内にあるものとする。
本発明の特徴を実装することができる適当な無線デバイスを示す図である。 デスティネーションクライアントに送信する電子メッセージを暗号化するため証明書サーバからの情報を使用するソースクライアントを含む本発明の原理が利用される適当なネットワーク環境を示す図である。 本発明の原理により、ソースクライアントがデスティネーションクライアントのうちの1つまたは複数に送信する電子メッセージを暗号化し、証明書サーバがそれを補助する方法の流れ図である。 本発明の原理による証明書の要求のデータ構造を示す図である。 本発明の原理による要求に対する応答のデータ構造を示す図である。 本発明の原理による証明書(またはその一部)を使用して暗号化された電子メッセージのデータ構造を示す図である。 本発明の原理による自己有効性確認情報を含まない部分的証明書のデータ構造を示す図である。 従来技術による自己有効性確認情報を含む証明書全体のデータ構造を示す図である。
符号の説明
1、2、3、4 公開鍵
100 汎用コンピューティングデバイス
100 無線デバイス
101 ユーザーインターフェイス
102 出力ユーザーインターフェイス
103 入力ユーザーインターフェイス
104 スピーカー
105 表示装置
106 マイク
107 ダイヤルコントロール
108 ナビゲーションコントロール
111 プロセッサ
112 メモリ
113 オペレーティングシステム
114 アプリケーションプログラム
115 プログラムモジュール
116 プログラムデータ
200 ネットワーク環境
210 コンピューティングシステム
210 ソースクライアント
211 要求
212 応答
220 証明書サーバ
230 デスティネーションクライアント
231、232、233、234 デスティネーションクライアント
300 方法
403 証明書要求
404 完全バージョンフィール
405 部分的バージョンフィールド
501 ヘッダ情報
502、800 証明書
504、505 要素
600 電子メッセージ
601 電子メッセージの内容
602 セッション鍵
612、613 鍵識別子
614A、615A 発行者識別子
614B、615B シリアル番号
700 部分的証明書
701 暗号化情報
802 証明書識別情報
803 有効性確認情報

Claims (34)

  1. ソースクライアントおよび複数のデスティネーションクライアントを含むネットワーク環境において、前記ソースクライアントは電子メッセージを前記複数のデスティネーションクライアントに送信可能であり、前記ネットワーク環境は前記1つまたは複数のデスティネーションクライアントのうち少なくとも一部の証明書の有効性を確認し前記ソースクライアントに送ることができる1つまたは複数の証明書サーバを備え、各証明書は対応するデスティネーションクライアントに供給する暗号化するために必要な暗号化情報を含み、前記証明書が実際に前記対応するデスティネーションクライアントに対応すること、及び前記証明書が有効であるかどうかを判断するために使用する自己検証情報を含み、前記デスティネーションクライアントのうちの少なくとも1つに送信するメッセージをソースクライアントで暗号化するための方法であって、
    前記ソースクライアントが前記複数のデスティネーションクライアントのうちの1つのデスティネーションクライアントに送信する電子メッセージに、前記ソースクライアントがアクセスするステップと、
    前記ソースクライアントが、前記電子メッセージが前記デスティネーションクライアントに送信される前に暗号化すべきであると決定するステップと、
    前記ソースクライアントが、前記デスティネーションクライアントに対応する証明書の一部のみにアクセスする要求を生成するステップであって、前記証明書の一部は、前記デスティネーションクライアントにより暗号解読が可能なように電子メッセージを暗号化するのに必要な暗号化情報む、ステップと、
    前記ソースクライアントが、前記要求を前記証明書サーバに送信するステップと、
    前記ソースクライアントが、要求した前記証明書の一部のみを前記証明書サーバから受け取るステップと、
    前記ソースクライアントが、前記暗号化情報を使用して前記電子メッセージを暗号化するステップと
    を含むことを特徴とする方法。
  2. 前記証明書の一部のみにアクセスする前記要求はハイパーテキスト転送プロトコル(HTTP)であることを特徴とする請求項1に記載の方法。
  3. 前記証明書の一部、前記自己検証情報を含まないことを特徴とする請求項1に記載の方法。
  4. 前記証明書サーバにより有効性確認が実行され、前記証明書サーバが前記ソースクライアントにより信頼されることを特徴とする請求項3に記載の方法。
  5. さらに、
    前記ソースクライアントが、前記暗号化された電子メッセージを前記デスティネーションクライアントに送信するステップを含むことを特徴とする請求項1に記載の方法。
  6. 前記証明書の一部は前記デスティネーションクライアントの公開鍵を含むことを特徴とする請求項1に記載の方法。
  7. 前記暗号化された電子メッセージは、
    セッション鍵を使用して暗号化された前記電子メッセージを表す第1のデータフィールドと、
    前記公開鍵を使用して暗号化された前記セッション鍵を表す第2のデータフィールドを含むことを特徴とする請求項6に記載の方法。
  8. 前記証明書の一部はさらに、前記証明書の証明書発行者およびシリアル番号を含むことを特徴とする請求項6に記載の方法。
  9. 前記暗号化された電子メッセージは、
    セッション鍵を使用して暗号化された前記電子メッセージを表す第1のデータフィールドと、
    前記公開鍵を使用して暗号化された前記セッション鍵、前記証明書発行者、および前記シリアル番号を表す第2のデータフィールドを含むことを特徴とする請求項8に記載の方
    法。
  10. 前記証明書の一部はさらに、前記証明書の鍵識別子を含むことを特徴とする請求項6に記載の方法。
  11. 前記暗号化された電子メッセージは、
    セッション鍵を使用して暗号化された前記電子メッセージを表す第1のデータフィールドと、
    前記公開鍵を使用して暗号化された前記セッション鍵および鍵識別子を表す第2のデータフィールドを含むことを特徴とする請求項10に記載の方法。
  12. 前記デスティネーションクライアントは暗号化形式の前記電子メッセージの送信先である第1のデスティネーションクライアントであり、前記第1のデスティネーションクライアントに対応する前記証明書は第1の証明書であり、前記電子メッセージはさらに第2のデスティネーションクライアントにも送信され、さらに
    前記ソースクライアントが、前記電子メッセージが前記第2のデスティネーションクライアントに送信される前に暗号化すべきであると決定するステップと、
    前記ソースクライアントが、前記第2のデスティネーションクライアントに対応する第2の証明書の一部のみにアクセスする要求を生成するステップであって、前記第2の証明書の一部は、前記第2のデスティネーションクライアントにより暗号解読が可能なように電子メッセージを暗号化するのに必要な暗号化情報含むステップと、
    前記ソースクライアントが、前記要求を前記証明書サーバに送信するステップと、
    前記ソースクライアントが、前記証明書サーバから、要求した前記第2の証明書の一部のみを受け取るステップと、
    前記ソースクライアントが、前記第2の証明書の一部に含まれる前記暗号化情報を使用して前記電子メッセージを暗号化するステップと
    を含むことを特徴とする請求項1に記載の方法。
  13. 前記第1の証明書の一部にアクセスする要求および前記第2の証明書の一部にアクセスする要求が同じ要求であることを特徴とする請求項12に記載の方法。
  14. さらに、
    前記ソースクライアントが、前記暗号化された電子メッセージを送信するステップを含むことを特徴とする請求項12に記載の方法。
  15. 前記デスティネーションクライアントは暗号化形式の前記電子メッセージの送信先である第1のデスティネーションクライアントであり、前記第1のデスティネーションクライアントに対応する前記証明書は第1の証明書であり、前記電子メッセージはさらに第2のデスティネーションクライアントにも送信され、さらに
    前記ソースクライアントが、前記電子メッセージが前記第2のデスティネーションクライアントに送信される前に暗号化すべきであると決定するステップと、
    前記ソースクライアントが、前記第2のデスティネーションクライアントに対応する前記第2の証明書全体にアクセスする要求を生成するステップと、
    前記ソースクライアントが、前記要求を前記証明書サーバに送信するステップと、
    前記ソースクライアントが、前記証明書サーバから前記第2の証明書全体を受け取るステップと、
    前記ソースクライアントが、前記第2の証明書内の前記暗号化情報を使用して前記電子メッセージを暗号化するステップと
    を含むことを特徴とする請求項1に記載の方法。
  16. 前記第1の証明書の一部にアクセスする要求および前記第2の証明書の一部にアクセスする要求が同じ要求であることを特徴とする請求項15に記載の方法。
  17. ソースクライアントおよび複数のデスティネーションクライアントを含むネットワーク環境で使用するための方法であって、前記ソースクライアントは電子メッセージを前記複数のデスティネーションクライアントに送信可能であり、前記ネットワーク環境は前記1つまたは複数のデスティネーションクライアントのうち少なくとも一部の証明書を前記ソースクライアントに送ることができる1つの証明書サーバを備え、各証明書は前記対応するデスティネーションクライアントに供給する暗号化するために必要な暗号化情報を含み、前記証明書が実際に前記対応するデスティネーションクライアントに対応すること、及び前記証明書が有効であるかどうかを判断するために使用する自己検証情報を含方法を実行させるためのコンピュータ実行可能命令を格納したコンピュータ読み取り可能記録媒体であって、前記コンピュータ実行可能命令が前記ソースクライアント側の1つまたは複数のプロセッサにより実行された場合、前記ソースクライアントに、
    前記ソースクライアントが前記複数のデスティネーションクライアントのうちの1つのデスティネーションクライアントに送信する電子メッセージにアクセスするステップと、
    前記電子メッセージが前記デスティネーションクライアントに送信される前に暗号化すべきであると決定するステップと、
    前記デスティネーションクライアントに対応する証明書の一部のみにアクセスする要求を生成するステップであって、前記証明書の一部は、前記デスティネーションクライアントにより暗号解読が可能なように電子メッセージを暗号化するのに必要な暗号化情報む、ステップと、
    前記要求を前記証明書サーバに送信するステップと、
    前記証明書サーバから、要求した前記証明書の一部のみを受け取るステップと、
    前記暗号化情報を使用して前記電子メッセージを暗号化するステップと
    を含む方法を実行させるための前記コンピュータ実行可能命令を格納したことを特徴とするコンピュータ読み取り可能記録媒体
  18. 記コンピュータ実行可能命令が前記ソースクライアント側の前記1つまたは複数のプロセッサにより実行された場合、前記ソースクライアントに、
    前記暗号化された電子メッセージを前記デスティネーションクライアントに送信するステップを実行させるための前記コンピュータ実行可能命令を格納したことを特徴とする請求項17に記載のコンピュータ読み取り可能記録媒体
  19. 前記デスティネーションクライアントは暗号化形式の前記電子メッセージの送信先である第1のデスティネーションクライアントであり、前記第1のデスティネーションクライアントに対応する前記証明書は第1の証明書であり、前記電子メッセージはさらに第2のデスティネーションクライアントにも送信され、前記コンピュータ実行可能命令が前記ソースクライアント側の前記1つまたは複数のプロセッサにより実行された場合、前記ソースクライアントに、
    前記電子メッセージが前記第2のデスティネーションクライアントに送信される前に暗号化すべきであると決定するステップと、
    前記第2のデスティネーションクライアントに対応する第2の証明書の一部のみにアクセスする要求を生成するステップであって、前記一部に前記第2のデスティネーションクライアントにより暗号解読が可能なように電子メッセージを暗号化するのに必要な暗号化情報が含まれるステップと、
    前記要求を前記証明書サーバに送信するステップと、
    前記証明書サーバから、要求した前記第2の証明書の一部のみを受け取るステップと、
    前記第2の証明書の一部に含まれる前記暗号化情報を使用して前記電子メッセージを暗号化するステップと
    をさらに含む方法を実行させるための前記コンピュータ実行可能命令を格納したことを特徴とする請求項17に記載のコンピュータ読み取り可能記録媒体
  20. 前記第1の証明書の一部にアクセスする要求および前記第2の証明書の一部にアクセスする要求が同じ要求であることを特徴とする請求項19に記載のコンピュータ読み取り可能記録媒体
  21. 前記デスティネーションクライアントは暗号化形式の前記電子メッセージの送信先である第1のデスティネーションクライアントであり、前記第1のデスティネーションクライアントに対応する前記証明書は第1の証明書であり、前記電子メッセージはさらに第2のデスティネーションクライアントにも送信され、前記コンピュータ実行可能命令が前記ソースクライアント側の1つまたは複数のプロセッサにより実行された場合、前記ソースクライアントに、
    前記電子メッセージが前記第2のデスティネーションクライアントに送信される前に暗号化すべきであると決定するステップと、
    前記第2のデスティネーションクライアントに対応する前記第2の証明書全体にアクセスする要求を生成するステップと、
    前記要求を前記証明書サーバに送信するステップと、
    前記証明書サーバから前記第2の証明書全体を受け取るステップと、
    前記第2の証明書内の前記暗号化情報を使用して前記電子メッセージを暗号化するステップと
    を実行させるための前記コンピュータ実行可能命令を格納したことを特徴とする請求項17に記載のコンピュータ読み取り可能記録媒体
  22. 理媒体であることを特徴とする請求項17に記載のコンピュータ読み取り可能記録媒体
  23. ンタイムメモリを含むことを特徴とする請求項17に記載のコンピュータ読み取り可能記録媒体
  24. 続的メモリを含むことを特徴とする請求項17に記載のコンピュータ読み取り可能記録媒体
  25. ソースクライアントおよび複数のデスティネーションクライアントを含むネットワーク環境において、前記ソースクライアントは電子メッセージを前記複数のデスティネーションクライアントに送信可能であり、前記ネットワーク環境は前記1つまたは複数のデスティネーションクライアントのうち少なくとも一部の証明書を前記ソースクライアントに送ることができる証明書サーバを備え、各証明書は対応するデスティネーションクライアントに供給する暗号化するために必要な暗号化情報を含み、前記証明書が実際に前記対応するデスティネーションクライアントに対応すること、及び前記証明書が有効であるかどうかを判断するために使用する自己検証情報を含み、前記デスティネーションクライアントのうちの少なくとも1つに送信するメッセージをソースクライアント側で暗号化することを証明書サーバ側で補助するための方法であって、
    前記証明書サーバが、前記ソースクライアントから要求を受け取るステップと、
    前記証明書サーバが、前記要求が前記デスティネーションクライアントに対応する証明書の一部のみにアクセスする要求であることを決定するステップであって、前記証明書の一部は、前記デスティネーションクライアントにより暗号解読が可能なように電子メッセージを暗号化するのに必要な暗号化情報む、ステップと、
    前記証明書サーバが、要求された前記証明書の一部を前記ソースクライアントに返すことにより前記ソースクライアントから前記要求に応答するステップと
    を含むことを特徴とする方法。
  26. 前記要求はHTTP要求であることを特徴とする請求項2に記載の方法。
  27. 前記デスティネーションクライアントは第1のデスティネーションクライアントであり、前記証明書は第1の証明書であり、さらに
    前記証明書サーバが、前記第2のデスティネーションクライアントに対応する第2の証明書の一部のみにアクセスする要求であることを決定するステップであって、前記第2の証明書の一部は、前記第2のデスティネーションクライアントにより暗号解読が可能なように前記電子メッセージを暗号化するために暗号化情報を含む、ステップと、
    前記証明書サーバが、要求された前記第2の証明書の一部を前記ソースクライアントに返すことにより前記ソースクライアントから前記要求に応答するステップと
    を含むことを特徴とする請求項2に記載の方法。
  28. 前記第1の証明書の一部および前記第2の証明書の一部が前記要求への同じ応答で返されることを特徴とする請求項2に記載の方法。
  29. 前記応答はHTTP応答であることを特徴とする請求項2に記載の方法。
  30. ソースクライアントおよび複数のデスティネーションクライアントを含むネットワーク環境で使用され、前記ソースクライアントは電子メッセージを前記複数のデスティネーションクライアントに送信可能であり、前記ネットワーク環境は前記1つまたは複数のデスティネーションクライアントのうち少なくとも一部の証明書を前記ソースクライアントに送ることができる1つの証明書サーバを備え、各証明書は対応するデスティネーションクライアントに供給する暗号化するために必要な暗号化情報を含み、前記証明書が実際に前記対応するデスティネーションクライアントに対応すること、及び前記証明書が有効であるかどうかを判断するために使用する自己検証情報を含み、前記デスティネーションクライアントのうち少なくとも1つを送信先とするメッセージを前記ソースクライアント側で暗号化することを前記証明書サーバで補助するための方法を実行させるためのコンピュータ実行可能命令を格納したコンピュータ読み取り可能記録媒体であって、前記コンピュータ実行可能命令が前記証明書サーバ側の1つまたは複数のプロセッサにより実行された場合、前記証明書サーバに、
    前記ソースクライアントから要求を受け取るステップと、
    前記要求が前記デスティネーションクライアントに対応する証明書の一部のみにアクセスする要求であることを決定するステップであって、前記証明書の一部に前記デスティネーションクライアントにより暗号解読が可能なように電子メッセージを暗号化するのに必要な暗号化情報が含まれるステップと、
    前記証明書の一部を前記ソースクライアントに返すことにより前記ソースクライアントから前記要求に応答するステップと
    を含む方法を実行させるための前記コンピュータ実行可能命令を格納したことを特徴とするコンピュータ読み取り可能記録媒体
  31. 前記デスティネーションクライアントは第1のデスティネーションクライアントであり、前記証明書は第1の証明書であり、前記コンピュータ実行可能命令が前記証明書サーバ側の前記1つまたは複数のプロセッサにより実行された場合、前記証明書サーバは、
    前記要求が前記第2のデスティネーションクライアントに対応する第2の証明書の一部のみにアクセスする要求であることを決定するステップであって、前記第2のデスティネーションクライアントにより暗号解読が可能なように前記電子メッセージを暗号化するために暗号化情報が要求されるステップと、
    前記第2の証明書の一部を前記ソースクライアントに返すことにより前記ソースクライアントから前記要求に応答するステップと
    をさらに含む方法を実行させるための前記コンピュータ実行可能命令を格納したことを特徴とする請求項3に記載のコンピュータ読み取り可能記録媒体
  32. 理媒体であることを特徴とする請求項3に記載のコンピュータ読み取り可能記録媒体
  33. ンタイムメモリを含むことを特徴とする請求項3に記載のコンピュータ読み取り可能記録媒体
  34. 続的メモリを含むことを特徴とする請求項3に記載のコンピュータ読み取り可能記録媒体
JP2003391492A 2002-11-20 2003-11-20 暗号化演算を実行するために証明書の縮約情報を送信するシステムおよび方法 Expired - Fee Related JP4699688B2 (ja)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US42808002P 2002-11-20 2002-11-20
US60/428,080 2002-11-20
US10/462,117 2003-06-13
US10/462,117 US7284121B2 (en) 2002-11-20 2003-06-13 System and method for transmitting reduced information from a certificate to perform encryption operations

Publications (2)

Publication Number Publication Date
JP2004173286A JP2004173286A (ja) 2004-06-17
JP4699688B2 true JP4699688B2 (ja) 2011-06-15

Family

ID=32233680

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003391492A Expired - Fee Related JP4699688B2 (ja) 2002-11-20 2003-11-20 暗号化演算を実行するために証明書の縮約情報を送信するシステムおよび方法

Country Status (10)

Country Link
US (1) US7284121B2 (ja)
EP (1) EP1422865A3 (ja)
JP (1) JP4699688B2 (ja)
KR (1) KR101071131B1 (ja)
CN (1) CN100479362C (ja)
AU (1) AU2003257896B2 (ja)
BR (1) BRPI0305273B1 (ja)
CA (1) CA2450052C (ja)
MX (1) MXPA03010476A (ja)
RU (1) RU2346398C2 (ja)

Families Citing this family (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7284121B2 (en) * 2002-11-20 2007-10-16 Microsoft Corporation System and method for transmitting reduced information from a certificate to perform encryption operations
US7219299B2 (en) 2003-11-19 2007-05-15 Microsoft Corporation Method for blocking dereferencing elements in messages
US7549043B2 (en) * 2004-09-01 2009-06-16 Research In Motion Limited Providing certificate matching in a system and method for searching and retrieving certificates
US7631183B2 (en) 2004-09-01 2009-12-08 Research In Motion Limited System and method for retrieving related certificates
US7640428B2 (en) 2004-09-02 2009-12-29 Research In Motion Limited System and method for searching and retrieving certificates
US7992203B2 (en) 2006-05-24 2011-08-02 Red Hat, Inc. Methods and systems for secure shared smartcard access
US7822209B2 (en) 2006-06-06 2010-10-26 Red Hat, Inc. Methods and systems for key recovery for a token
US8495380B2 (en) * 2006-06-06 2013-07-23 Red Hat, Inc. Methods and systems for server-side key generation
US8098829B2 (en) * 2006-06-06 2012-01-17 Red Hat, Inc. Methods and systems for secure key delivery
US8180741B2 (en) 2006-06-06 2012-05-15 Red Hat, Inc. Methods and systems for providing data objects on a token
US8332637B2 (en) 2006-06-06 2012-12-11 Red Hat, Inc. Methods and systems for nonce generation in a token
US8364952B2 (en) * 2006-06-06 2013-01-29 Red Hat, Inc. Methods and system for a key recovery plan
US8099765B2 (en) 2006-06-07 2012-01-17 Red Hat, Inc. Methods and systems for remote password reset using an authentication credential managed by a third party
US8589695B2 (en) * 2006-06-07 2013-11-19 Red Hat, Inc. Methods and systems for entropy collection for server-side key generation
US9769158B2 (en) * 2006-06-07 2017-09-19 Red Hat, Inc. Guided enrollment and login for token users
US8412927B2 (en) 2006-06-07 2013-04-02 Red Hat, Inc. Profile framework for token processing system
US8707024B2 (en) * 2006-06-07 2014-04-22 Red Hat, Inc. Methods and systems for managing identity management security domains
US7814161B2 (en) 2006-06-23 2010-10-12 Research In Motion Limited System and method for handling electronic mail mismatches
US8806219B2 (en) 2006-08-23 2014-08-12 Red Hat, Inc. Time-based function back-off
US8787566B2 (en) * 2006-08-23 2014-07-22 Red Hat, Inc. Strong encryption
US9038154B2 (en) * 2006-08-31 2015-05-19 Red Hat, Inc. Token Registration
US8977844B2 (en) * 2006-08-31 2015-03-10 Red Hat, Inc. Smartcard formation with authentication keys
US8074265B2 (en) * 2006-08-31 2011-12-06 Red Hat, Inc. Methods and systems for verifying a location factor associated with a token
US8356342B2 (en) * 2006-08-31 2013-01-15 Red Hat, Inc. Method and system for issuing a kill sequence for a token
GB2446199A (en) 2006-12-01 2008-08-06 David Irvine Secure, decentralised and anonymous peer-to-peer network
US8693690B2 (en) * 2006-12-04 2014-04-08 Red Hat, Inc. Organizing an extensible table for storing cryptographic objects
US8813243B2 (en) * 2007-02-02 2014-08-19 Red Hat, Inc. Reducing a size of a security-related data object stored on a token
US8639940B2 (en) * 2007-02-28 2014-01-28 Red Hat, Inc. Methods and systems for assigning roles on a token
US8832453B2 (en) 2007-02-28 2014-09-09 Red Hat, Inc. Token recycling
US9081948B2 (en) * 2007-03-13 2015-07-14 Red Hat, Inc. Configurable smartcard
US8327146B2 (en) * 2008-03-31 2012-12-04 General Motors Llc Wireless communication using compact certificates
US8806190B1 (en) 2010-04-19 2014-08-12 Amaani Munshi Method of transmission of encrypted documents from an email application
US9444620B1 (en) * 2010-06-24 2016-09-13 F5 Networks, Inc. Methods for binding a session identifier to machine-specific identifiers and systems thereof
US11063758B1 (en) 2016-11-01 2021-07-13 F5 Networks, Inc. Methods for facilitating cipher selection and devices thereof
KR102437730B1 (ko) * 2016-12-07 2022-08-26 한국전자통신연구원 자원 제약적 환경에서 기기들 간 인증 지원 장치 및 그 방법
US10708237B2 (en) * 2017-03-21 2020-07-07 Keeper Security, Inc. System and method for chat messaging in a zero-knowledge vault architecture
SG11202105077UA (en) * 2018-11-16 2021-06-29 Microsec Pte Ltd Method and architecture for securing and managing networks of embedded systems with optimised public key infrastructure
US11561532B2 (en) * 2020-06-19 2023-01-24 Rockwell Automation Technologies, Inc. Systems and methods for metered automation controller functionality
CN113301058B (zh) * 2021-07-27 2021-10-29 北京国电通网络技术有限公司 信息加密传输方法、装置、电子设备和计算机可读介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000354031A (ja) * 1999-04-06 2000-12-19 Mitsubishi Electric Corp 共通鍵共有方法
WO2002087149A1 (fr) * 2001-04-19 2002-10-31 Ntt Docomo, Inc. Systeme de communication de terminaux

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6192131B1 (en) * 1996-11-15 2001-02-20 Securities Industry Automation Corporation Enabling business transactions in computer networks
US6615347B1 (en) * 1998-06-30 2003-09-02 Verisign, Inc. Digital certificate cross-referencing
US6760752B1 (en) * 1999-06-28 2004-07-06 Zix Corporation Secure transmission system
DE60318825T2 (de) * 2002-03-20 2009-01-22 Research In Motion Ltd., Waterloo Vorrichtung und verfahren zur unterstützung von mehreren zertifizierungstatusanbietern auf einem mobilen kommunikationsgerät
US7284121B2 (en) * 2002-11-20 2007-10-16 Microsoft Corporation System and method for transmitting reduced information from a certificate to perform encryption operations

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000354031A (ja) * 1999-04-06 2000-12-19 Mitsubishi Electric Corp 共通鍵共有方法
WO2002087149A1 (fr) * 2001-04-19 2002-10-31 Ntt Docomo, Inc. Systeme de communication de terminaux

Also Published As

Publication number Publication date
CN100479362C (zh) 2009-04-15
KR101071131B1 (ko) 2011-10-10
RU2346398C2 (ru) 2009-02-10
AU2003257896A1 (en) 2004-06-03
CN1505307A (zh) 2004-06-16
RU2003133767A (ru) 2005-04-20
AU2003257896B2 (en) 2009-02-05
EP1422865A2 (en) 2004-05-26
CA2450052A1 (en) 2004-05-20
CA2450052C (en) 2013-05-14
MXPA03010476A (es) 2004-10-15
US7284121B2 (en) 2007-10-16
BRPI0305273B1 (pt) 2017-04-04
JP2004173286A (ja) 2004-06-17
BR0305273A (pt) 2004-08-31
US20040096055A1 (en) 2004-05-20
EP1422865A3 (en) 2005-05-11
KR20040044376A (ko) 2004-05-28

Similar Documents

Publication Publication Date Title
JP4699688B2 (ja) 暗号化演算を実行するために証明書の縮約情報を送信するシステムおよび方法
US11520912B2 (en) Methods, media, apparatuses and computing devices of user data authorization based on blockchain
US11502854B2 (en) Transparently scalable virtual hardware security module
KR100268095B1 (ko) 데이터통신시스템
US6732277B1 (en) Method and apparatus for dynamically accessing security credentials and related information
RU2444054C2 (ru) Одноранговый обмен контактной информацией
US20070061593A1 (en) Sending secured data
US11140140B2 (en) Virtual cryptographic module with load balancer and cryptographic module fleet
KR20060100920A (ko) 웹 서비스를 위한 신뢰되는 제3자 인증
US20120036365A1 (en) Combining request-dependent metadata with media content
US20080113677A1 (en) Mobile to mobile service invocation framework using text messsaging
JP2006180478A (ja) エンドポイントの識別およびセキュリティ
JP5065682B2 (ja) 名前解決のためのシステムおよび方法
JP2011082923A (ja) 端末装置、署名生成サーバ、簡易id管理システム、簡易idの管理方法、及びプログラム
EP1422960A1 (en) Method and computer program product for verifying the authenticity of a telephone number reported in a request from a wireless device
US8099594B1 (en) Certificate processing
US8520840B2 (en) System, method and computer product for PKI (public key infrastructure) enabled data transactions in wireless devices connected to the internet
KR102608325B1 (ko) 클라이언트 장치에서 통신의 무결성 보호
NO314649B1 (no) Fremgangsmåte for ikke-repudiering ved bruk av kryptografiske signaturer ismå enheter
US8826000B2 (en) Method and apparatus for supporting cryptographic-related activities in a public key infrastructure
CN114282190A (zh) 一种双重认证方法及其电子设备
CN114666315A (zh) 负载均衡设备的http请求处理方法及装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20061031

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100406

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100706

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110303

R150 Certificate of patent or registration of utility model

Ref document number: 4699688

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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