JP5062870B2 - Ensuring security of voluntary communication services - Google Patents
Ensuring security of voluntary communication services Download PDFInfo
- Publication number
- JP5062870B2 JP5062870B2 JP2002520469A JP2002520469A JP5062870B2 JP 5062870 B2 JP5062870 B2 JP 5062870B2 JP 2002520469 A JP2002520469 A JP 2002520469A JP 2002520469 A JP2002520469 A JP 2002520469A JP 5062870 B2 JP5062870 B2 JP 5062870B2
- Authority
- JP
- Japan
- Prior art keywords
- client
- server
- key
- electronic signature
- public key
- 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
Links
- 238000004891 communication Methods 0.000 title claims description 53
- 230000002747 voluntary effect Effects 0.000 title 1
- 238000000034 method Methods 0.000 claims description 19
- 230000006870 function Effects 0.000 claims description 12
- 230000005540 biological transmission Effects 0.000 claims description 8
- 238000012795 verification Methods 0.000 claims description 5
- 238000004590 computer program Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 5
- 238000013459 approach Methods 0.000 description 3
- 238000013507 mapping Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/06—Network architectures or network communication protocols for network security for supporting key management in a packet data network
- H04L63/065—Network architectures or network communication protocols for network security for supporting key management in a packet data network for group communications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0823—Network architectures or network communication protocols for network security for authentication of entities using certificates
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/12—Applying verification of the received information
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
- Computer And Data Communications (AREA)
- Mobile Radio Communication Systems (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Description
【0001】
(発明の分野)
本発明は、概してオープン通信システムにおける情報の保護ないし保全をするセキュリティ確保に関する。また、本発明は、より具体的には任意の通信サービスの認証、機密性及び完全性の保護を提供する方法及びシステムに関する。
【0002】
(関連技術の説明)
オープン通信システムでは、情報のセキュリティを確保する必要性がある。これには、通信ピアの認証並びにデータの機密性及び完全性の保護が含まれる。認証とは、各エンティティが自ら主張する者であることを保証し、あるいは、伝送された情報が権限のない者によって改竄されていないことを保証するために、何等かの手段が提供されることを意味する。機密性とは、基本的には権限のないエンティティは誰も我々のメッセージを読み取ることができないということを意味し、また、データの完全性とは、我々のメッセージが変更されていないことと、メッセージ・ストリーム全体が同じ供給源から来ることと、メッセージ・ストリーム全体が同じ宛先へ行くこととを確保することである。
【0003】
これらの類の問題に対する解決策は、暗号の研究から得られる。暗号のアルゴリズムは、秘密に保ちないしは保護する必要がある入力としての1つの値ともう1つ別の入力としての秘密の値とを有する機能ないし写像であるのが典型的である。その秘密の値は、よくアルゴリズムの秘密鍵(シークレット・キー)と呼ばれている。現代のセキュア通信システムは、周知の暗号アルゴリズムを利用しているものが多く、セキュリティをアルゴリズム自体ではなくて秘密鍵に基づいて確保するようにしている。実際の鍵だけを敵対する者から秘密に保つという前提は、Kerkhoffの前提と呼ばれる。多くの異なるベンダーに製造された多くの異なる場所にある機器ないし装置が相互に動作する必要のあるインターネットのようなオープン通信システムにおいては、このKerkhoffの前提が重要になる。どのようにデータを処理するかの方法が公然と知られていれば、通信の作業を行うことはより一層容易となる。このため、すべてのインターネット通信のセキュリティ技術は、Kerkhoffの前提を基盤として、すなわち、秘密鍵の値に基づくセキュリティを伴った周知の暗号アルゴリズムを基盤として、構築されている。
【0004】
セキュア通信チャネルを設定するためには、どのメッセージを通信ピアの間で交換すべきかを示す予め定義された何等かのプロトコルがなければならない。通信システムのセキュリティ確保においては、認証がなされた鍵交換ないし認証付きの鍵交換を提供することが必要な段階として挙げられる。鍵交換は、例えばDiffie-Hellman(DH)アルゴリズムやRivest-Shamir-Adleman(RSA)アルゴリズム等の公開鍵アルゴリズムを用いることによって行われるのが典型的である。DHアルゴリズムは、例えばインターネット鍵交換プロトコル(IKE(Internet Key Exchange Protocol))、トランスポート・レイヤ・セキュリティ・プロトコル(TLS(Transport Layer Security protocol))及びセキュア・シェル・プロトコル(SSH(Secure Shell Protocol))等で用いられ、RSAアルゴリズムは、例えばTLS等で用いられる。
【0005】
SSH、TLS及びインターネット・プロトコル・セキュリティ(IPsec(Internet Protocol Security))/IKEのようなオープン・セキュリティ・プロトコルにおいて、公開鍵アルゴリズムは、データにデジタル形式での電子的な署名をしたり鍵交換をしたりするのに用いられる。鍵交換方法に加えて、それぞれの異なる公開鍵署名方法が用いられることもある。それらのプロトコルにおいては、ペイロード・データの暗号化と完全性チェック・タグの付加に用いられる基本的なプロトコルは非常に類似している。しかし、認証手順、鍵交換及び各プロトコルがサポートする様々な対称アルゴリズムはかなり異なっている。このため、予め定義されたセキュアな関係を持たない2つのユニットがセキュアに相互動作できるようにする必要がある場合には、通信ピアのうちの少なくとも1つが非常に多数の異なる暗号アルゴリズム及びセキュリティ・オプションをサポートしなければならないという問題がある。さらに、異なるオプションが多数あるということは、鍵のネゴシエーション・プロトコルを極めて大規模で複雑なものにし、かつ、明らかに実現が困難なものにする。
【0006】
US 5,892,904には、コンピュータ・ネットワーク(例えばインターネット)を通じて受信されるコンピュータ・プログラム、実行可能ファイル若しくはコードの真正性及び完全性を保証する方法が記載されている。その方法の一実施形態は、実行可能ファイルの暗号ダイジェストないし「ハッシュ」を決定することと、その暗号ダイジェストによって発行者署名を形成することとを含んでいる。発行者署名は、この技術分野ではよく知られているように、RSA(Rivest-Shamir-Adleman)公開鍵アルゴリズム等の公開−秘密鍵署名アルゴリズムを用いて形成される。発行者署名には、発行者署名を発給した発行者の本人認証をするために発行者の電子証明書が添付される。その電子証明書には、ソフトウェアの発行者名、発行者がファイルに署名をするのに用いた秘密鍵(プライベート・キー)に対応する公開鍵、証明書の有効期限、及び認証機関へのリンクないしハイパーリンクが含まれる。
【0007】
WO 99/56428では、プロセッサ内にプログラムを当該プロセッサの外部にある装置からダウンロードする別のセキュアな方法が記載されている。そのプログラムは、暗号化され得るものとなっており、かつ、それに対して付加される認証情報を有し得るものとなっている。当該プロセッサは、そのプログラムを当該プロセッサで実行することを許可する前に、そのプログラムの復号及び認証を行う。
【0008】
WO 99/33224は、例えば画像や音声のデータを含むデータ・ストリームが認可された受信者だけにしか受信できないことを保証する方法及びシステムを開示している。その受信者は、受信した画像や音声のデータ・パケットの数を証明することもできる。これは、データ・ストリーム中で送られるすべてのデータ・パケットを暗号化すると共に受信者において復号したパケットの数をログとして記録することによってなされる。
【0009】
予め定義されたセキュリティ関係を有していない2つの通信ピアの間でどのようにしてセキュア通信チャネルを確立するかについては、これらの文献のいずれにおいても記載されていない。かかる状況は、例えばアド・ホック・ネットワーク(ad hoc networks)、すなわち、BluetoothTM、SalutationTM、JiniTM等において、共通する状況である。したがって、クライアントと任意の通信サービスとの間でどのようにしてセキュアな通信を確立するかを示した方法及びシステムが求められるところである。
【0010】
(発明の要約)
本発明は、予め定義されたセキュアな関係を有していない2つの通信ピアの間の通信チャネルにセキュリティを確保するという課題に対しての解決策を提供する。
【0011】
最新の技術におけるプロトコルでは、2つのユニットが相互動作できるようにする必要がある場合に通信ピアのうちの少なくとも1つが非常に多数の異なる暗号アルゴリズム及びセキュリティ・オプションをサポートしなければならず、鍵のネゴシエーション・プロトコルが大規模で複雑なものになる。
【0012】
そこで、本発明は、必要とされる予め定義された暗号アルゴリズムの数を可能な限り少なくした解決策を提供することを目的の1つとしている。
【0013】
また、本発明の他の目的は、サポートされるオプション及び暗号アルゴリズムの数によって決まる鍵のネゴシエーション・プロトコルの複雑さを低減することである。
【0014】
さらに他の目的は、輸出制限の問題を軽減した解決策を提供することである。
【0015】
上述の目的は、基本的に、通信クライアントが通信をすることを望む特定のサービスから、認証がなされた鍵交換をサーバと行うための必要なアルゴリズムを含む署名されたコンピュータ・プログラム(例えばJiniTMプロキシ)をダウンロードすることによって達成される。さらに、前記コンピュータ・プログラムは、セキュアなサービスのセッションにおいて前記クライアントと前記サービスの間で送られるすべてのデータの暗号化及び保護をするのに必要とされる必須のアルゴリズムを含んでいる。
【0016】
より具体的には、本発明は、通信クライアントが特定のサービスとの通信を望む場合のセキュリティ通信状況に関する。前記サービスに対しては、前記クライアントがインターネット等のグローバル・ネットワークを利用して到達することができ、あるいは、前記クライアントがローカル・ネットワークを利用して到達することもでき、さらには、前記クライアントがアド・ホック・ネットワーク、すなわち、たまたま物理的に同じ場所に存在することとなったエンティティ間で急に新設されるネットワークを利用してでも到達することができる。また、前記サービスを利用するすべてのユニットは、共通コンピューティング・プラットフォームを使用するものとする。すなわち、すべてのユニットは、共通の言語で書かれたプログラムのダウンロードと実行をすることができるものとする。かかるコンピューティング・プラットフォーム及びコンピューティング言語で一般的に広く使用態勢が整っているものの一例としては、JavaTM仮想マシン及びJavaTMバイト・コード・コンピューティング言語が挙げられる。前記クライアントについては、任意のデータに電子署名をすることができるという能力と任意のデータの電子署名を検証することができるという能力の、予め定義された暗号に関する能力を2つだけ有するものであることを前提とする。
【0017】
セキュア通信サービスの提供を望むサーバは、公開鍵の対における自身の秘密鍵(プライベート・キー)を用いて、前記サーバとの認証がなされた鍵交換のための必要なアルゴリズムを含むコンピュータ・プログラムに電子署名をする。前記サーバは、署名したコードを、前記署名と共にまとめ(パッケージにし)、さらにオプションとして前記サーバの公開鍵を証明する1つ又はいくつかの証明書も共にしてまとめる。前記サーバの公開鍵は、その後、前記サーバが署名したコードを検証するのに利用することができる。
【0018】
サービスとの通信を望むクライアントは、ネットワークを通じて、署名されたコードと含めることが可能な証明書とを伴うパッケージをダウンロードし、そして、ダウンロードしたパッケージの署名をチェックする。その署名に対応する信用のある公開鍵を前記クライアントが保持しているとき、あるいは、含められた証明書の中に含まれる公開鍵のいくつかを前記クライアントが信用するときには、前記クライアントは、ダウンロードしたコードを信用のあるセキュリティ・コードとして取り扱う。
【0019】
前記セキュリティ・コードは、その後、前記クライアントの共通コンピューティング・プラットフォーム上で実行され、また、相互認証が望まれる場合に1つのセキュリティ機能の実施をクライアントに求めることもできる。その機能は、入力としていくつか任意のデータを有すると共に、出力として前記クライアントが付加した特定のラベルを加えた前記データの電子署名を有する。さらに、前記クライアントは、自身がした署名を検証するのに前記サービスが用いることのできる公開鍵を含んだ証明書を返送するものとしてもよい。サービス・コードは、その出所であるサーバと認証がなされた鍵交換を実施する。それが成功したときには、それが前記サーバとのセキュアな通信リンクを設定する。
【0020】
本発明の第1の実施形態では、鍵交換のコード自体が署名されていることを利用し、それによって公開鍵の署名生成を1回分節約し、かつ、公開鍵の署名検証を1回分節約し、かつ、クライアントとサーバの間での伝送を1回分節約することにより、認証がなされた鍵交換をより効率的なものとしている。
【0021】
本発明の第2の実施形態では、鍵交換が通信の保護からは分離されている。このアプローチによる利点は、それぞれのサービスが負担の大きい公開鍵交換を実施する必要がなく、1つのマスタ・キーを用いていくつかの異なるサービスを保護することができる点である。
【0022】
鍵交換とデータ通信の保護に必要なセキュリティ・プロトコルのコードをダウンロードできるようにすることにより、クライアントないしサーバがサポートする必要のある予め定義された必要なセキュリティ機能の数は制限される。その代わりに、セキュリティ・コード自体に署名をすることによってセキュリティが保証される。これにより、プロトコルにおけるセキュリティの欠点が明らかになってきてプロトコルの全部若しくは一部を改訂しなければならない場合にアップデートする必要があるのはサーバのプログラムだけなので、新たなアルゴリズムによって通信の保護をアップデートすることがより一層容易にもなる。
【0023】
クライアントが必要とする暗号に関する必須の機能は署名と署名の検証だけなので、これらの機能が制約されることも一般的にはないことから、通常は輸出の規定に関する問題も全くない。
【0024】
(図面の簡単な説明)
これら及び他の本発明の目的及び利点ないし有利な効果は、添付図面を参照しつつ以下の詳細な説明を読むことによって、より十分に明らかとなるであろう。添付図面では、対応する部分を示すのに同様の参照符号を用いている。添付図面において、
図1は、基本的な通信の概要を示したものであり、
図2は、本発明の一実施形態のフローチャートを示したものであり、
図3は、鍵交換サーバを用いる採用可能な通信の概要を例示したものである。
【0025】
(詳細な説明)
次に、図1を参照し、セキュリティ通信状況100において本発明の説明をする。セキュリティ通信状況100では、通信クライアント110が特定のサービスを提供するサーバ120との通信を望んでいる。サーバ120に対しては、クライアント110が通信網130を利用して到達することができ、通信網130は、例えばインターネット等のグローバル・ネットワーク、若しくはローカル通信網、又は場合によってはアド・ホック・ネットワークでもあり得る通信網となっている。さらに、それらのサービスを利用するすべてのユニットは、共通コンピューティング・プラットフォーム140を使用するものとする。すなわち、すべてのユニットは、共通の言語で書かれたコンピューティング・プログラムのダウンロードと実行をすることができるものとする。かかるコンピューティング・プラットフォーム及びコンピューティング言語で一般的に広く使用態勢が整っているものの一例としては、JavaTM仮想マシン及びJavaTMバイト・コード・コンピューティング言語が挙げられる。サービスを提供するユニット、すなわち、サーバ120は、ネットワーク内のそれぞれ異なるクライアント110が使用する言語及び共通コンピューティング・プラットフォームを十分認識する情報を有している。
【0026】
次に、通信サービスへの接続を望む通信クライアントの一例としてJavaTMのJiniTM技術を用いる場合について本発明の説明をする。JavaTMのJiniTM技術は、如何なるプランニング、インストレーションないし人間の介入をも要せずにコンピュータと機器が素早くアド・ホック・ネットワークを形成することを可能にする。それぞれの機器は、ネットワークにおける他の機器が利用することのできるサービスを提供する。また、それらの機器は、それぞれ自身のインタフェースも提供し、それらのインタフェースが信頼性と互換性を確保する。それぞれの機器及びサービスは検索サービスに登録され、そして、新たな機器がネットワークに入るときには、それらがディスカバリ・アンド・ジョイン(discovery and join)と呼ばれるアド−イン・プロトコル(add-in protocol)の手順を執る。サービスを利用するためには、人若しくはプログラムが検索サービスを利用してサービスの場所を探し出す。そのサービスのインタフェースは、検索サービスから要求をしている機器へとコピーされ、それがその機器において使用されることになる。このように、検索サービスは、サービスを探し求めるクライアントをそのサービスと接続する交換台のような働きをする。ダウンロード可能なJiniTMプロキシにおいて各サービスが当該各サービスとの対話をするのに必要なすべてのものを提供することから互換性は確保されるので、サービスはどこで実施されても構わない。
【0027】
無線アド・ホック・ネットワークでは、信用が中心的な問題の1つになる。媒体を信用することはできないので、暗号を用いることが唯一の選択肢となる。主な問題の1つとして、アド・ホックの各ノード間でセキュリティ関係のコンフィギュレーションが予めなされることは想定できないという点がある。アド・ホック・ネットワークにおけるすべてのノードが公開鍵の対を持っており、かつ、すべてのノードが他のノードの公開鍵をアド・ホック・ネットワーク内でセキュアな接続を実現するのに良好なものとみなすとすれば、任意の公開鍵を用いる認証を利用することはできる。
【0028】
標準的なアプローチとは異なり、本発明においては、それぞれ異なる対称鍵暗号化ないしメッセージ認証子(MAC(Message Authentication Code))のアルゴリズムの多数の組を必ずしもクライアントとサーバが共有することは前提としない。その代わりに、クライアントは、予め定義された暗号に関する能力を2つだけ有するものとする。すなわち、
−クライアントは、公開鍵アルゴリズムを一方向性のハッシュ関数と共に用いる
ことによって任意のデータに電子署名をすることができ、かつ、
−クライアントは、任意のデータの公開鍵署名の正当性を検証することができる 。データに署名をするのに用いるアルゴリズムは、非常に少ない総数の採用可 能なアルゴリズムのうちから選択する。
【0029】
任意のデータの署名ないし署名の検証に用いるソフトウェア・プログラムないしハードウェアは、物理的にクライアントに設置し、敵意を持つ者がそれを変更したり操作したりすることができないようにする。署名ないし署名の検証に用いるソフトウェアないしハードウェアは、すべて一貫して共通コンピューティング・プラットフォームを使用する必要があるわけではなく、例えば、代わりにコンピューティング・プラットフォームにおいて定義されたAPI(Application Program Interfaces)を使用することもできる。
【0030】
上述した暗号に関する能力を利用し、クライアントは、JiniTMプロキシをセキュアにダウンロードすることができ、かつ、そのJiniTMプロキシを利用して自身のために認証及び鍵管理プロトコルを実行することができる。これにより、サービスに従属するセキュリティの解決策を利用する全面的な自由が与えられる。次に、図2のフローチャートを参照しつつ本発明の第1の実施形態について説明する。
【0031】
あらゆる通信の開始に先立ち、サーバは、クライアントがダウンロードすることができるJiniTMプロキシを用意する。また、サーバは、そのJiniTMプロキシへの署名も行い、それによってクライアントが当該JiniTMプロキシの実行前に当該JiniTMプロキシの完全性及び出所を検証できるようにする。典型的な形態としては、JiniTMプロキシのコードには、サーバが保持する秘密鍵(プライベート・キー)に対応する公開鍵と、認証がなされた鍵交換をサーバと行うために必要な方法とが含まれる。
【0032】
1.セキュア通信の提供を望むサーバは、共通プラットフォームのコンピュータ言語で書かれたコンピュータ・プログラム、すなわち、Javaで書かれたコンピュータ・プログラムを保持する。JiniTMの項目として、前記サーバは、JiniTMプロキシを保持する。前記JiniTMプロキシは、認証がなされた鍵交換を前記サーバと行うために必要とされる必須のアルゴリズム及び方法を含んでいる。さらに、そのプロキシは、セキュアなサービスのセッションにおいてクライアントとサーバの間で送られるすべてのデータの暗号化及び保護をするのに必要とされる必須のアルゴリズムを含んでいる。ただし、そのプロキシは、暗号に関する演算処理を実施するのに必要なコードを必ずしもすべて含んでいるわけではない。その代わりに、そのプロキシは、(実現可能ないし好適であれば)共通プラットフォームにおいて定義されたAPIを使用するものとしてもよい。
【0033】
2.前記サーバは、自身の秘密鍵を用いて前記JiniTMプロキシに電子署名をする。その署名は、上述の予め定義されたアルゴリズム及びフォーマットを用いた演算処理によって生成する。これにより、その署名をクライアントが検証できることを確保する。
【0034】
3.前記サーバは、署名したコードを前記署名と共にまとめ(パッケージにし)、さらにオプションとして前記サーバの公開鍵を証明する1つ又は2つ以上の証明書も含める。前記サーバの公開鍵は、前記サーバの真正性を検証するのに利用することができる。
【0035】
JiniTMやこれに類似する環境においては、サービスを探し求めるクライアントが通信を開始する。サービスが見つかり次第、クライアントは、実行のためのサービス・プロキシをダウンロードし、その実行を開始する前にサービス・プロキシの真正性が検証される相違も共にダウンロードする。
【0036】
4.クライアントは、Jini検索サービスを利用してサービスを探索する(200)。
【0037】
5.前記クライアントは、サービスを見つけ、かつ、そのサービスの利用を望む場合、そのサービスに対応するプロキシを署名及びオプションの証明書と共にダウンロードする(210)。
【0038】
6.前記クライアントは、ダウンロードしたデータ・パッケージの署名を検証する。その署名に対応する信用のある公開鍵を前記クライアントが保持しているとき、あるいは、含められた証明書の中に含まれる公開鍵のいくつかを前記クライアントが信用するときには、前記クライアントは、ダウンロードしたコードを信用のあるコードとして取り扱う(220)。
【0039】
7.前記プロキシの検証が正当であったときには、前記クライアントは、共通コンピューティング・プラットフォームを使用してダウンロードしたコードを実行する。実行時制約を適宜付加するものとしてもよく、特に、ダウンロードされるコードは、指定された以外の任意の他のサーバと通信ができるものである必要はない(230)。
【0040】
ダウンロードされるコードは、相互認証が必要とされる場合に署名したチケットの生成をクライアントに求めるものとすることもできる。クライアントは、暗号に関する他の如何なる機能ないし写像を実施することをも拒否するものとしてもよい。チケットを生成する機能ないし写像は、いくつかの任意のデータを取ってチケットを出力し、そのチケットが基本的にはクライアントが付加した特定のラベルを加えたデータの電子署名となる。このラベルは、結果としてできる項目が常にチケットと認識されることを確保するために必要とされるものである。さらに、クライアントは、自身がした署名を検証するのに用いることができる公開鍵を含んだ証明書を返送するものとしてもよい。チケットのラベルは、クライアントがプロキシに要求したサービスを指定し、かつ、タイム・スタンプを示すのが典型的な形態である。ラベルは、クライアント・マシンがデータ及びラベルに電子署名をする前に、クライアント・マシンのユーザに対して表示する必要がある。ユーザは、その時にチケットへの署名を拒否することにしてもよい。このようにして、前記JiniTMプロキシと前記サーバは、以下のように互いに認証をすることが可能となる。
【0041】
8.前記プロキシは、その出所であるサーバと認証がなされた鍵交換を実施する(240)。実際に用いるプロトコルは、基本的に任意の標準的な認証及び鍵交換プロトコルとすることができ、例えば、DHやRSAとすることもできる。前記JiniTMプロキシは、上述したチケットの署名を検証するための公開鍵を証明するクライアントからの証明書を要求するものとしてもよい。認証が成功したときには、前記プロキシが前記サーバとのセキュアな通信リンクを設定する(250)。
【0042】
セキュリティ・コードを書き込むサービス・プロバイダは、自身が望む通りに鍵交換のアルゴリズムを実現することができるが、良好な暗号の原理に従うのが望ましい。セキュリティ・レベルは、そのようにしてサーバが用いるアルゴリズムに応じて決まる。
【0043】
本発明の第1の実施形態では、鍵交換のコード自体がサーバによって署名されているということを利用して、公開鍵の署名生成を1回分節約し、かつ、公開鍵の署名検証を1回分節約し、かつ、クライアントとサーバの間での伝送を1回分節約している。これは、実際の鍵交換よりも前に鍵交換のコードの署名をチェックしていることから可能になっている。したがって、クライアントに対しては、サーバの公開鍵についての認証された情報が既に利用可能ないし入手可能になっている。例えば、Diffie-Hellmanを用いる場合では、サーバの公開鍵交換の値をサービス・コード中に含めることもできる。したがって、クライアントからサーバへのたった1度の送信によって鍵交換を実施することもでき、伝送を1回分節約することができる。
【0044】
図3においては、本発明の第2の実施形態が例示してある。この第2の実施形態では、鍵交換が純粋な通信の保護からは分離されている。このアプローチによる利点は、それぞれのサービスが負担の大きい公開鍵交換を実施する必要がなく、1つのグループ・マスタ・キーを用いていくつかの異なるサービスを保護することができる点である。これにより、クライアント300は、サービスを探索するのではなくて鍵交換サーバ310を探索するものとなっている。クライアント300は、鍵交換サーバ310からグループ・マスタ・キーとそのキーについての識別子を受信する。その後、鍵交換サーバが設置されていた(鍵交換サーバの場所を探し出した)のと同じドメインにあるサービスの利用をクライアント300が望む場合には、クライアントは、サービスを提供するサーバ320を探索し、サーバ320からパッケージをダウンロードし、そして、そのパッケージを共通コンピューティング・プラットフォーム330上で実行する。ダウンロードされるセキュリティ・コードでは、クライアント300に対し、グループ・マスタ・キーの識別子を入力として有すると共にグループ・マスタ・キーを出力として有する1つのセキュリティ機能の実施を求めることもできる。鍵交換を行うときには、ダウンロードされたサービス・コードがグループ・マスタ・キーを使用する。
【0045】
ここでは一例としてJiniTM技術を用いる場合について本発明の説明をしたが、各ノードに対して要求されることは、それらが共通コンピューティング・プラットフォームをサポートすること、すなわち、アド・ホック・ネットワークにおけるすべてのノードが共通の言語で書かれたプログラムのダウンロード及び実行をすることができるということと、署名の生成及び検証が可能であるということだけである。さらに、本発明は、例えば、セキュアWAP(Wireless application protocol)−サービスを設定する場合、すなわち、セキュリティ・アルゴリズムを定義するプログラム・コードをダウンロードすることによる場合にも、利用することができる。
【0046】
以上のように本発明の説明をしたが、本発明が多くの形態に変更ないし変形し得るのは明白であろう。かかる変更ないし変形は、本発明の範囲から逸脱しているとみなされるものではなく、さらに、当業者にとって自明であるようなかかる変形ないし修正のすべては、特許請求の範囲が及ぶ範囲内に含まれるものと解釈される。
【図面の簡単な説明】
【図1】 基本的な通信の概要を示したものである。
【図2】 本発明の一実施形態のフローチャートを示したものである。
【図3】 鍵交換サーバを用いる採用可能な通信の概要を例示したものである。[0001]
(Field of Invention)
The present invention generally relates to ensuring security for protecting or maintaining information in an open communication system. The present invention also relates to a method and system that more specifically provides authentication, confidentiality and integrity protection for any communication service.
[0002]
(Description of related technology)
In an open communication system, there is a need to ensure information security. This includes authentication of communication peers and protection of data confidentiality and integrity. Authentication means that each entity is provided with some means to ensure that it is the person claiming it, or that the transmitted information has not been tampered with by an unauthorized person. Means. Confidentiality basically means that no unauthorized entity can read our message, and data integrity means that our message has not been modified, To ensure that the entire message stream comes from the same source and that the entire message stream goes to the same destination.
[0003]
Solutions to these kinds of problems come from cryptographic research. Cryptographic algorithms are typically functions or mappings that have one value as an input that needs to be kept secret or protected and a secret value as another input. The secret value is often called the algorithm's secret key. Many modern secure communication systems use a well-known encryption algorithm, and security is secured based on a secret key rather than the algorithm itself. The premise of keeping only the actual key secret from the adversary is called Kerkhoff's premise. This premise of Kerkhoff is important in open communication systems such as the Internet where devices from different vendors and manufactured in many different locations need to work together. If the method of processing the data is publicly known, it is much easier to perform the communication work. For this reason, all Internet communication security technologies are built on the basis of Kerkhoff's premise, that is, on the basis of known cryptographic algorithms with security based on the value of the secret key.
[0004]
In order to set up a secure communication channel, there must be some predefined protocol that indicates which messages should be exchanged between communication peers. In securing security of a communication system, it is necessary to provide authenticated key exchange or authenticated key exchange. The key exchange is typically performed by using a public key algorithm such as a Diffie-Hellman (DH) algorithm or a Rivest-Shamir-Adleman (RSA) algorithm. Examples of the DH algorithm include an Internet Key Exchange Protocol (IKE), a Transport Layer Security protocol (TLS), and a Secure Shell Protocol (SSH). The RSA algorithm is used in, for example, TLS.
[0005]
In open security protocols such as SSH, TLS, and Internet Protocol Security (IPsec) / IKE, public key algorithms digitally sign data and exchange keys. It is used to do. In addition to the key exchange method, different public key signature methods may be used. In those protocols, the basic protocols used to encrypt payload data and add integrity check tags are very similar. However, the authentication procedure, key exchange, and the various symmetric algorithms that each protocol supports are quite different. Thus, if it is necessary to allow two units that do not have a predefined secure relationship to interoperate securely, at least one of the communication peers can have a very large number of different cryptographic algorithms and security algorithms. There is a problem that the option must be supported. In addition, the large number of different options makes the key negotiation protocol very large and complex, and obviously difficult to implement.
[0006]
US 5,892,904 describes a method for ensuring the authenticity and integrity of a computer program, executable file or code received over a computer network (eg the Internet). One embodiment of the method includes determining a cryptographic digest or “hash” of the executable file and forming an issuer signature with the cryptographic digest. The issuer signature is formed using a public-private key signature algorithm such as a RSA (Rivest-Shamir-Adleman) public key algorithm, as is well known in the art. The issuer signature is accompanied by an electronic certificate of the issuer for authenticating the issuer who issued the issuer signature. The electronic certificate includes the name of the software issuer, the public key corresponding to the private key (private key) used by the issuer to sign the file, the certificate expiration date, and a link to the certificate authority. Or hyperlinks.
[0007]
WO 99/56428 describes another secure method for downloading a program in a processor from a device external to the processor. The program can be encrypted and can have authentication information added thereto. The processor decrypts and authenticates the program before allowing the program to be executed by the processor.
[0008]
WO 99/33224 discloses a method and system for ensuring that a data stream containing, for example, image and audio data can only be received by authorized recipients. The recipient can also verify the number of received image or audio data packets. This is done by encrypting all data packets sent in the data stream and logging the number of packets decrypted at the receiver.
[0009]
Neither of these documents describes how to establish a secure communication channel between two communication peers that do not have a predefined security relationship. Such a situation is e.g. ad hoc networks, i.e. Bluetooth. TM , Salutation TM , Jini TM This is a common situation. Accordingly, there is a need for a method and system that shows how to establish secure communications between a client and any communication service.
[0010]
(Summary of the Invention)
The present invention provides a solution to the problem of ensuring security in a communication channel between two communication peers that do not have a predefined secure relationship.
[0011]
In the state of the art protocols, at least one of the communication peers must support a very large number of different cryptographic algorithms and security options when two units need to be able to interoperate, and the key The negotiation protocol will be large and complex.
[0012]
Accordingly, an object of the present invention is to provide a solution that reduces the number of predefined encryption algorithms required as much as possible.
[0013]
Another object of the present invention is to reduce the complexity of the key negotiation protocol, which depends on the number of options and cryptographic algorithms supported.
[0014]
Yet another objective is to provide a solution that mitigates the problem of export restrictions.
[0015]
The above objective is basically a signed computer program (e.g. Jini) containing the necessary algorithms to perform an authenticated key exchange with a server from a particular service that the communication client wishes to communicate with. TM Achieved by downloading proxy). In addition, the computer program includes the necessary algorithms required to encrypt and protect all data sent between the client and the service in a secure service session.
[0016]
More specifically, the present invention relates to a security communication situation when a communication client desires communication with a specific service. The client can reach the service using a global network such as the Internet, or the client can reach a service using a local network. It can also be reached using an ad hoc network, that is, a network suddenly newly established between entities that happen to be physically located at the same location. In addition, all units that use the service use a common computing platform. That is, all the units can download and execute a program written in a common language. One example of such a computing platform and computing language that is generally in widespread use is Java TM Virtual machine and Java TM Byte code computing language. The client has only two pre-defined encryption capabilities, the ability to digitally sign arbitrary data and the ability to verify the digital signature of arbitrary data. Assuming that.
[0017]
A server desiring to provide a secure communication service uses a private key in a public key pair to create a computer program including a necessary algorithm for key exchange authenticated with the server. Digitally sign. The server bundles the signed code together with the signature (in a package), optionally together with one or several certificates that prove the server's public key. The server's public key can then be used to verify the code signed by the server.
[0018]
A client wishing to communicate with the service downloads the package with the signed code and the certificate that can be included over the network and checks the signature of the downloaded package. When the client holds a trusted public key corresponding to the signature, or when the client trusts some of the public keys contained in the included certificate, the client downloads Treat the code as trusted security code
[0019]
The security code is then executed on the client's common computing platform and may require the client to perform one security function if mutual authentication is desired. Its function has some arbitrary data as input and an electronic signature of the data with a specific label added by the client as output. Furthermore, the client may return a certificate containing a public key that the service can use to verify the signature it has made. The service code performs an authenticated key exchange with the server from which it originated. If it succeeds, it sets up a secure communication link with the server.
[0020]
In the first embodiment of the present invention, it is used that the key exchange code itself is signed, thereby saving the signature generation of the public key once and saving the signature verification of the public key once. In addition, by saving one transmission between the client and the server, the authenticated key exchange is made more efficient.
[0021]
In the second embodiment of the present invention, key exchange is separated from communication protection. The advantage of this approach is that each service does not need to perform a heavy public key exchange and a single master key can be used to protect several different services.
[0022]
By allowing the security protocol code necessary for key exchange and data communication protection to be downloaded, the number of predefined required security functions that the client or server needs to support is limited. Instead, security is ensured by signing the security code itself. This means that if the security shortcomings of the protocol become apparent and all or part of the protocol has to be revised, only the server program needs to be updated, so the communication protection is updated with a new algorithm. It is even easier to do.
[0023]
Since the only necessary cryptographic functions required by the client are only signatures and signature verification, these functions are not generally restricted and there are usually no problems with export regulations.
[0024]
(Brief description of the drawings)
These and other objects, advantages and advantages of the present invention will become more fully apparent when the following detailed description is read with reference to the accompanying drawings. In the accompanying drawings, like reference numerals are used to indicate corresponding parts. In the accompanying drawings,
Figure 1 shows an overview of basic communication.
FIG. 2 shows a flowchart of an embodiment of the present invention.
FIG. 3 illustrates an outline of communication that can be employed using a key exchange server.
[0025]
(Detailed explanation)
Next, the present invention will be described in the
[0026]
Next, Java is an example of a communication client that wants to connect to a communication service. TM Jini TM The present invention will be described for the case of using the technology. Java TM Jini TM Technology allows computers and equipment to quickly form ad hoc networks without any planning, installation or human intervention. Each device provides a service that can be used by other devices in the network. Each of these devices also provides its own interface, which ensures reliability and compatibility. Each device and service is registered with a search service, and when new devices enter the network, they are added-in protocol procedures called discovery and join To do. In order to use the service, a person or program uses the search service to find the location of the service. The interface of the service is copied from the search service to the requesting device and it will be used at the device. In this way, the search service acts like a switchboard that connects a client seeking a service with the service. Downloadable Jini TM Since each service provides everything necessary to interact with each service in the proxy, compatibility is ensured, so the service can be implemented anywhere.
[0027]
Trust is one of the central issues in wireless ad hoc networks. Since the medium cannot be trusted, using cryptography is the only option. One of the main problems is that it cannot be assumed that a security-related configuration is made in advance between each ad hoc node. Good for all nodes in an ad hoc network to have a public key pair, and for all nodes to securely connect other nodes' public keys within the ad hoc network If so, authentication using an arbitrary public key can be used.
[0028]
Unlike the standard approach, the present invention does not necessarily assume that the client and server share multiple sets of different symmetric key encryption or message authentication code (MAC) algorithms. . Instead, it is assumed that the client has only two pre-defined cryptographic capabilities. That is,
-The client uses the public key algorithm with a one-way hash function
Any data can be digitally signed, and
-The client can verify the validity of the public key signature of any data. The algorithm used to sign the data is selected from a very small number of available algorithms.
[0029]
The software program or hardware used to sign or verify arbitrary data is physically installed on the client so that an adversary cannot change or manipulate it. The software or hardware used to sign or verify signatures does not necessarily need to use a common computing platform consistently, for example, API (Application Program Interfaces) defined in the computing platform instead. Can also be used.
[0030]
Using the above-mentioned capabilities related to cryptography, the client TM Proxy can be downloaded securely and its Jini TM A proxy can be used to perform authentication and key management protocols for itself. This gives full freedom to use service dependent security solutions. Next, a first embodiment of the present invention will be described with reference to the flowchart of FIG.
[0031]
Prior to the start of any communication, the server allows the client to download Jini TM Prepare a proxy. The server also has its Jini TM It also signs the proxy so that the client can TM Jini before running the proxy TM Be able to verify proxy integrity and origin. A typical form is Jini TM The proxy code includes a public key corresponding to a secret key (private key) held by the server and a method necessary for performing authenticated key exchange with the server.
[0032]
1. A server desiring to provide secure communications holds a computer program written in a common platform computer language, ie, a computer program written in Java. Jini TM As the item, the server TM Keep a proxy. Jini TM The proxy contains the essential algorithms and methods required to perform an authenticated key exchange with the server. In addition, the proxy includes the necessary algorithms needed to encrypt and protect all data sent between the client and server in a secure service session. However, the proxy does not necessarily include all codes necessary for performing cryptographic processing. Instead, the proxy may use an API defined in the common platform (if feasible or preferred).
[0033]
2. The server uses the private key to TM Digitally sign the proxy. The signature is generated by arithmetic processing using the above-described predefined algorithm and format. This ensures that the client can verify the signature.
[0034]
3. The server bundles (signs) the signed code with the signature, and optionally includes one or more certificates that prove the server's public key. The public key of the server can be used to verify the authenticity of the server.
[0035]
Jini TM In an environment similar to this, a client seeking a service starts communication. As soon as a service is found, the client downloads a service proxy for execution and also downloads the differences that verify the authenticity of the service proxy before starting its execution.
[0036]
4). The client searches for a service using the Jini search service (200).
[0037]
5. If the client finds the service and wants to use the service, the client downloads the proxy corresponding to the service along with the signature and optional certificate (210).
[0038]
6). The client verifies the signature of the downloaded data package. When the client holds a trusted public key corresponding to the signature, or when the client trusts some of the public keys contained in the included certificate, the client downloads The processed code is treated as a trusted code (220).
[0039]
7). When the proxy validation is valid, the client executes the downloaded code using a common computing platform. Runtime constraints may be added as appropriate, and in particular, the downloaded code need not be able to communicate with any other server other than specified (230).
[0040]
The downloaded code may also require the client to generate a signed ticket when mutual authentication is required. The client may refuse to perform any other cryptographic functions or mappings. The function or mapping for generating a ticket takes some arbitrary data and outputs a ticket, and the ticket is basically an electronic signature of data with a specific label added by the client. This label is required to ensure that the resulting item is always recognized as a ticket. In addition, the client may return a certificate that includes a public key that can be used to verify the signature it has made. The ticket label typically specifies the service requested by the client from the proxy and indicates a time stamp. The label must be displayed to the user of the client machine before the client machine digitally signs the data and label. The user may then refuse to sign the ticket. In this way, the Jini TM The proxy and the server can authenticate each other as follows.
[0041]
8). The proxy performs an authenticated key exchange with the server that is the source (240). The protocol actually used can be basically any standard authentication and key exchange protocol, for example, DH or RSA. Jini TM The proxy may request a certificate from the client that proves the public key for verifying the above-described ticket signature. When authentication is successful, the proxy establishes a secure communication link with the server (250).
[0042]
The service provider writing the security code can implement the key exchange algorithm as desired, but it is desirable to follow good cryptographic principles. The security level is thus determined by the algorithm used by the server.
[0043]
In the first embodiment of the present invention, by utilizing the fact that the key exchange code itself is signed by the server, the generation of the public key signature is saved once, and the signature verification of the public key is performed once. And saves one transmission between the client and the server. This is possible because the signature of the key exchange code is checked before the actual key exchange. Thus, the authenticated information about the server's public key is already available or available to the client. For example, when using Diffie-Hellman, the value of the server's public key exchange can be included in the service code. Therefore, key exchange can be performed by only one transmission from the client to the server, and transmission can be saved for one time.
[0044]
In FIG. 3, a second embodiment of the present invention is illustrated. In this second embodiment, key exchange is separated from protection of pure communication. The advantage of this approach is that each service does not need to perform a heavy public key exchange and a single group master key can be used to protect several different services. Thus, the
[0045]
Here as an example Jini TM Although the invention has been described for the use of technology, what is required for each node is that they support a common computing platform, i.e. all nodes in an ad hoc network are common. It is only possible to download and execute a program written in a language and to generate and verify a signature. Furthermore, the present invention can be used, for example, when setting up a secure WAP (Wireless application protocol) -service, that is, by downloading a program code that defines a security algorithm.
[0046]
Although the present invention has been described above, it will be apparent that the present invention can be modified or modified in many forms. Such changes and modifications are not to be regarded as a departure from the scope of the invention, and all such changes and modifications as would be obvious to one skilled in the art are included within the scope of the claims. To be interpreted.
[Brief description of the drawings]
FIG. 1 shows an outline of basic communication.
FIG. 2 shows a flowchart of an embodiment of the present invention.
FIG. 3 illustrates an outline of communication that can be employed using a key exchange server.
Claims (10)
前記クライアントと前記サーバは、任意のデータの電子署名及び検証をサポートする共通コンピューティング・プラットフォームを有し、
第1の伝送で、認証された鍵交換を前記サーバと行うためのアルゴリズム・プロキシと、前記サーバの公開鍵を証明する証明書を含むデータ・パッケージであって、電子署名がなされた前記データ・パッケージを前記サーバから前記クライアントにダウンロードし、
前記クライアントは、前記電子署名に対応する前記クライアントが信用する前記サーバの公開鍵に基づいて、ダウンロードした前記データ・パッケージの前記電子署名を検証し、
第2の伝送で、前記クライアントは、前記クライアントの公開鍵を含む証明書を前記サーバに返信し、
前記クライアント及び前記サーバは、共有鍵を生成し、
前記クライアントは、前記アルゴリズム・プロキシを実行することにより、前記共有鍵を生成し、
前記共有鍵を用いて、前記クライアントと前記サーバとの間の通信を暗号化する、
ことを特徴とする方法。A method of establishing secure communication between a client and a server providing a desired service , which does not have a defined secure relationship ,
The client and the server have a common computing platform that supports electronic signature and verification of arbitrary data;
A data package comprising an algorithm proxy for performing an authenticated key exchange with the server in a first transmission, and a certificate proving the public key of the server, the data signed with an electronic signature Download the package from the server to the client,
The client verifies the electronic signature of the downloaded data package based on the public key of the server trusted by the client corresponding to the electronic signature;
In a second transmission, the client returns a certificate containing the client's public key to the server,
The client and the server generate a shared key;
The client generates the shared key by executing the algorithm proxy,
Using the shared key to encrypt communication between the client and the server;
A method characterized by that.
前記クライアントと前記サーバは、任意のデータの電子署名及び検証をサポートする共通コンピューティング・プラットフォームを有し、
第1の伝送で、認証された鍵交換を前記サーバと行うためのアルゴリズム・プロキシと、前記サーバの公開鍵を証明する証明書を含むデータ・パッケージであって、電子署名がなされた前記データ・パッケージを前記サーバから前記クライアントにダウンロードする手段と、
前記クライアントは、前記電子署名に対応する前記クライアントが信用する前記サーバの公開鍵に基づいて、ダウンロードした前記データ・パッケージの前記電子署名を検証する手段と、
第2の伝送で、前記クライアントは、前記クライアントの公開鍵を含む証明書を前記サーバに返信する手段と、
前記クライアント及び前記サーバは、共有鍵を生成する手段と、
前記クライアントにおける前記生成する手段は、前記アルゴリズム・プロキシを実行することにより、前記共有鍵を生成し、
前記共有鍵を用いて、前記クライアントと前記サーバとの間の通信を暗号化する手段と、
を有することを特徴とするシステム。A system for establishing secure communication between a client and a server providing a desired service , which does not have a defined secure relationship ,
The client and the server have a common computing platform that supports electronic signature and verification of arbitrary data;
A data package comprising an algorithm proxy for performing an authenticated key exchange with the server in a first transmission, and a certificate proving the public key of the server, the data signed with an electronic signature Means for downloading a package from the server to the client;
Means for verifying the electronic signature of the downloaded data package based on the public key of the server trusted by the client corresponding to the electronic signature;
In a second transmission, the client returns a certificate containing the client's public key to the server;
The client and the server have means for generating a shared key;
The means for generating in the client generates the shared key by executing the algorithm proxy,
Means for encrypting communication between the client and the server using the shared key;
The system characterized by having.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
SE0002962-9 | 2000-08-11 | ||
SE0002962A SE517116C2 (en) | 2000-08-11 | 2000-08-11 | Method and device for secure communication services |
PCT/SE2001/001580 WO2002015466A1 (en) | 2000-08-11 | 2001-07-05 | Securing arbitrary communication services |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004507156A JP2004507156A (en) | 2004-03-04 |
JP5062870B2 true JP5062870B2 (en) | 2012-10-31 |
Family
ID=20280745
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002520469A Expired - Fee Related JP5062870B2 (en) | 2000-08-11 | 2001-07-05 | Ensuring security of voluntary communication services |
Country Status (6)
Country | Link |
---|---|
US (1) | US7457956B2 (en) |
JP (1) | JP5062870B2 (en) |
CN (1) | CN100342684C (en) |
AU (1) | AU2001271177A1 (en) |
SE (1) | SE517116C2 (en) |
WO (1) | WO2002015466A1 (en) |
Families Citing this family (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2003060673A1 (en) * | 2002-01-18 | 2003-07-24 | Telefonaktiebolaget Lm Ericsson (Publ) | Loading data into a mobile terminal |
FR2844656B1 (en) * | 2002-09-18 | 2005-01-28 | France Telecom | ELECTRONIC SIGNATURE METHOD, PROGRAM AND SERVER FOR IMPLEMENTING THE METHOD |
JP3863122B2 (en) * | 2003-03-28 | 2006-12-27 | 株式会社東芝 | Wireless terminal, communication control program, and communication control method |
US7721104B2 (en) * | 2003-10-20 | 2010-05-18 | Nokia Corporation | System, method and computer program product for downloading pushed content |
CN100428667C (en) * | 2003-12-01 | 2008-10-22 | 中国电子科技集团公司第三十研究所 | Strong authentication method for digital signature mode using public key encrgption algorithm |
FR2867929B1 (en) * | 2004-03-19 | 2007-03-02 | Gemplus Card Int | METHOD FOR DYNAMIC AUTHENTICATION OF PROGRAMS BY AN ELECTRONIC PORTABLE OBJECT |
US20060074812A1 (en) * | 2004-10-06 | 2006-04-06 | Mattern James M | Code pack for revenue protection |
US7761710B2 (en) * | 2005-04-05 | 2010-07-20 | Mcafee, Inc. | Captive portal system and method for use in peer-to-peer networks |
US7757274B2 (en) * | 2005-04-05 | 2010-07-13 | Mcafee, Inc. | Methods and systems for exchanging security information via peer-to-peer wireless networks |
US7822972B2 (en) * | 2005-04-05 | 2010-10-26 | Mcafee, Inc. | Remotely configurable bridge system and method for use in secure wireless networks |
US7606370B2 (en) * | 2005-04-05 | 2009-10-20 | Mcafee, Inc. | System, method and computer program product for updating security criteria in wireless networks |
US7558957B2 (en) * | 2005-04-18 | 2009-07-07 | Alcatel-Lucent Usa Inc. | Providing fresh session keys |
US20070109982A1 (en) * | 2005-11-11 | 2007-05-17 | Computer Associates Think, Inc. | Method and system for managing ad-hoc connections in a wireless network |
WO2007073623A1 (en) * | 2005-12-29 | 2007-07-05 | Zte Corporation | A method of downloading digital certification and key |
US7900817B2 (en) | 2006-01-26 | 2011-03-08 | Ricoh Company, Ltd. | Techniques for introducing devices to device families with paper receipt |
US20070245414A1 (en) * | 2006-04-14 | 2007-10-18 | Microsoft Corporation | Proxy Authentication and Indirect Certificate Chaining |
CN101641905B (en) * | 2006-11-15 | 2012-09-05 | 塞尔蒂卡姆公司 | Implicit certificate verification |
JP5023804B2 (en) * | 2007-05-16 | 2012-09-12 | コニカミノルタホールディングス株式会社 | Authentication method and authentication system |
JP2012060366A (en) * | 2010-09-08 | 2012-03-22 | Nec Corp | Communication system, communication method and computer program |
JP5981761B2 (en) * | 2012-05-01 | 2016-08-31 | キヤノン株式会社 | Communication device, control method, program |
US9350550B2 (en) * | 2013-09-10 | 2016-05-24 | M2M And Iot Technologies, Llc | Power management and security for wireless modules in “machine-to-machine” communications |
US9614859B2 (en) | 2013-11-07 | 2017-04-04 | International Business Machines Corporation | Location based authentication of users to a virtual machine in a computer system |
US9621549B2 (en) * | 2014-07-25 | 2017-04-11 | Qualcomm Incorporated | Integrated circuit for determining whether data stored in external nonvolative memory is valid |
WO2016144215A1 (en) * | 2015-03-09 | 2016-09-15 | Telefonaktiebolaget Lm Ericsson (Publ) | Enabling transmission encryption |
US9843449B2 (en) * | 2015-06-09 | 2017-12-12 | Dresser, Inc. | Secure device communication |
Family Cites Families (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US55236A (en) * | 1866-06-05 | Improved sail | ||
JPH0382239A (en) * | 1989-08-25 | 1991-04-08 | Nippon Telegr & Teleph Corp <Ntt> | Cryptographic key delivering system |
US5586260A (en) * | 1993-02-12 | 1996-12-17 | Digital Equipment Corporation | Method and apparatus for authenticating a client to a server in computer systems which support different security mechanisms |
JPH09139735A (en) * | 1995-11-15 | 1997-05-27 | Hitachi Software Eng Co Ltd | Ciphering data communication system |
US5781550A (en) * | 1996-02-02 | 1998-07-14 | Digital Equipment Corporation | Transparent and secure network gateway |
US6061790A (en) * | 1996-11-20 | 2000-05-09 | Starfish Software, Inc. | Network computer system with remote user data encipher methodology |
US5958051A (en) * | 1996-11-27 | 1999-09-28 | Sun Microsystems, Inc. | Implementing digital signatures for data streams and data archives |
US5892904A (en) * | 1996-12-06 | 1999-04-06 | Microsoft Corporation | Code certification for network transmission |
US5778174A (en) | 1996-12-10 | 1998-07-07 | U S West, Inc. | Method and system for providing secured access to a server connected to a private computer network |
US5870544A (en) * | 1997-10-20 | 1999-02-09 | International Business Machines Corporation | Method and apparatus for creating a secure connection between a java applet and a web server |
US6023764A (en) * | 1997-10-20 | 2000-02-08 | International Business Machines Corporation | Method and apparatus for providing security certificate management for Java Applets |
EP1040621B1 (en) | 1997-12-19 | 2004-08-04 | BRITISH TELECOMMUNICATIONS public limited company | A method of operating a data communications system, a data communications system, and a customer terminal |
US6233577B1 (en) * | 1998-02-17 | 2001-05-15 | Phone.Com, Inc. | Centralized certificate management system for two-way interactive communication devices in data networks |
US6055236A (en) | 1998-03-05 | 2000-04-25 | 3Com Corporation | Method and system for locating network services with distributed network address translation |
US6199113B1 (en) * | 1998-04-15 | 2001-03-06 | Sun Microsystems, Inc. | Apparatus and method for providing trusted network security |
US6141756A (en) * | 1998-04-27 | 2000-10-31 | Motorola, Inc. | Apparatus and method of reading a program into a processor |
SE512672C2 (en) | 1998-06-12 | 2000-04-17 | Ericsson Telefon Ab L M | Procedure and system for transferring a cookie |
IL125516A0 (en) * | 1998-07-26 | 1999-10-28 | Vanguard Security Technologies | Secure message management system |
US6901518B1 (en) * | 1999-04-08 | 2005-05-31 | Sun Microsystems, Inc. | Method and system for establishing trust in downloaded proxy code |
US6694431B1 (en) * | 1999-10-12 | 2004-02-17 | International Business Machines Corporation | Piggy-backed key exchange protocol for providing secure, low-overhead browser connections when a server will not use a message encoding scheme proposed by a client |
US7089211B1 (en) * | 2000-01-12 | 2006-08-08 | Cisco Technology, Inc. | Directory enabled secure multicast group communications |
US20010045451A1 (en) * | 2000-02-28 | 2001-11-29 | Tan Warren Yung-Hang | Method and system for token-based authentication |
-
2000
- 2000-08-11 SE SE0002962A patent/SE517116C2/en not_active IP Right Cessation
-
2001
- 2001-07-05 WO PCT/SE2001/001580 patent/WO2002015466A1/en active Application Filing
- 2001-07-05 JP JP2002520469A patent/JP5062870B2/en not_active Expired - Fee Related
- 2001-07-05 CN CNB018140157A patent/CN100342684C/en not_active Expired - Fee Related
- 2001-07-05 AU AU2001271177A patent/AU2001271177A1/en not_active Abandoned
- 2001-07-05 US US10/344,352 patent/US7457956B2/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
WO2002015466A1 (en) | 2002-02-21 |
SE0002962D0 (en) | 2000-08-11 |
JP2004507156A (en) | 2004-03-04 |
US7457956B2 (en) | 2008-11-25 |
SE517116C2 (en) | 2002-04-16 |
SE0002962L (en) | 2002-02-12 |
CN1446418A (en) | 2003-10-01 |
CN100342684C (en) | 2007-10-10 |
US20040103316A1 (en) | 2004-05-27 |
AU2001271177A1 (en) | 2002-02-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5062870B2 (en) | Ensuring security of voluntary communication services | |
JP4600851B2 (en) | Establishing a secure context for communicating messages between computer systems | |
US8185938B2 (en) | Method and system for network single-sign-on using a public key certificate and an associated attribute certificate | |
TWI469603B (en) | Digital rights management using trusted processing techniques | |
JP3605501B2 (en) | Communication system, message processing method, and computer system | |
US7797544B2 (en) | Attesting to establish trust between computer entities | |
KR100872099B1 (en) | Method and system for a single-sign-on access to a computer grid | |
JP4907895B2 (en) | Method and system for recovering password-protected private data over a communication network without exposing the private data | |
JP4372446B2 (en) | Secure ad hoc access to documents and services | |
US7610484B2 (en) | Customizable public key infrastructure and development tool for same | |
US9137017B2 (en) | Key recovery mechanism | |
US6895501B1 (en) | Method and apparatus for distributing, interpreting, and storing heterogeneous certificates in a homogenous public key infrastructure | |
EP2095288B1 (en) | Method for the secure storing of program state data in an electronic device | |
US7266705B2 (en) | Secure transmission of data within a distributed computer system | |
Elgohary et al. | Design of an enhancement for SSL/TLS protocols | |
KR100848966B1 (en) | Method for authenticating and decrypting of short message based on public key | |
Eronen et al. | Securing ad hoc Jini services | |
CN117716666A (en) | Method for providing autonomous identity cloud service to user, cloud service method, cloud server, autonomous identity method | |
Gajek et al. | SSL-over-SOAP: towards a token-based key establishment framework for web services | |
JP2002374237A (en) | Information providing method | |
JPH10257044A (en) | Cipher communication system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20080604 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110517 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20110816 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20110823 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110916 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20111101 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120228 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120409 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20120501 |
|
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: 20120710 |
|
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: 20120806 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 Ref document number: 5062870 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150817 Year of fee payment: 3 |
|
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 |