JPH118615A - データ暗号化システム、情報処理装置、icカード、記録媒体およびデータの暗号方法 - Google Patents

データ暗号化システム、情報処理装置、icカード、記録媒体およびデータの暗号方法

Info

Publication number
JPH118615A
JPH118615A JP9158421A JP15842197A JPH118615A JP H118615 A JPH118615 A JP H118615A JP 9158421 A JP9158421 A JP 9158421A JP 15842197 A JP15842197 A JP 15842197A JP H118615 A JPH118615 A JP H118615A
Authority
JP
Japan
Prior art keywords
data
key
mail
received
information processing
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.)
Pending
Application number
JP9158421A
Other languages
English (en)
Inventor
Masato Arai
正人 荒井
Hiromichi Ito
浩道 伊藤
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP9158421A priority Critical patent/JPH118615A/ja
Publication of JPH118615A publication Critical patent/JPH118615A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】 【課題】電子メールの暗号方式において、ユーザにかか
る負担を軽減させる。 【解決手段】メールを送信する場合、ICカード15
は、マスタ鍵152dとメールの宛先リストとを基にグ
ループ鍵を生成する。これを受けて、クライアント情報
処理装置15は、電子メールを実効鍵で暗号化するとと
もに、当該実効鍵をグループ鍵で暗号化する。そして、
暗号化メールのヘッダに暗号化実効鍵と宛先リストとを
付して送信する。一方、暗号化メールを受信した場合、
ICカード15は、暗号化メールに付された宛先リスト
が自己を含んでいるか否かを判断し、含んでいる場合
は、当該宛先リストとマスタ鍵152dとを基にグルー
プ鍵を生成する。そして、生成したグループ鍵を用いて
暗号化メールに付された暗号化実効鍵を復号化し、この
実効鍵で暗号化メールを復号化する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、通信回線を介して
送受信されるデータの暗号化システムに関し、特に、複
数のユーザーが復号可能な暗号メールを作成し、あるい
は、該暗号メールを受信して復号化する場合に好適な電
子メール暗号化システムに関する。
【0002】
【従来の技術】近年、インターネットと呼ばれている世
界的規模のネットワークの普及に伴い、このインターネ
ットと企業内ネットワークとを接続して、企業内ネット
ワーク間において、インターネットを介して情報を送受
信するケースが増大しつつある。
【0003】また、従来より、インターネットにおい
て、メールサーバを利用して、ユーザーが指定した宛先
にメールを送信したり、着信したメールをユーザーが使
用する情報処理装置へ転送する電子メールシステムが実
用化されている。
【0004】このような電子メールシステムでは、SM
TP(Simple Mail Transfer Protocol)やPOP(Pos
t Office Protocol)といった通信規約に基づいて、メ
ールの送受信を行っている。この際、メールは、インタ
ーネット上を転送されることになるので、メールに機密
情報が含まれる場合、セキュリティ上問題がある。
【0005】このため、メールを暗号化して宛先に送信
する電子メールの暗号化方式が提案されている。このよ
うな、電子メールの暗号化方式としては、たとえばS/
MIME(PKCS Security Service for MIME)やPEM
(Privacy Enhanced Mail)などがある。
【0006】これ等の技術では、ユーザは、自己宛ての
メールを暗号化するための鍵を、予めメールの送信者に
配布しておかなければならない。メールの送信者は、メ
ールの宛先となるユーザによって予め配布された鍵を用
いて、メールを暗号化する。そして、暗号化されたメー
ルを、当該メールの宛先へ送信する。
【0007】なお、これらの技術については、オープン
デザインの62頁〜89頁(CQ出版社、1996年6
月発行)などに記載されている。
【0008】
【発明が解決しようとする課題】ところで、上述したよ
うに、S/MIMEやPEMによる電子メールの暗号化
方式では、メールの宛先が予め配布した鍵を用いてメー
ルを暗号化し、暗号化されたメールを、当該メールの宛
先へ送信している。
【0009】したがって、同じメールを複数の宛先へ送
信する場合、メールの宛先各々について、予め当該宛先
から配布された鍵を用いてメールを暗号化し、当該宛先
へ送信しなければならず、ユーザにかかる負担が大きい
という問題がある。
【0010】また、メールの宛先毎に、当該宛先に割り
当てられた当該宛先固有の鍵を、全て管理しなければな
らないといった問題もある。配布された鍵が誰の鍵であ
るかを管理しておかないと、メールをどの鍵で暗号化す
べきか分からなくなってしまう。
【0011】これ等の問題は、メールの宛先、すなわち
電子メールの暗号方式を利用するユーザが増えるほど顕
著になる。
【0012】本発明は上記事情に鑑みてなされたもので
あり、本発明の目的は、電子メールの暗号方式におい
て、ユーザにかかる負担を軽減させることにある。
【0013】具体的には、対象となるユーザーの数に関
わらず管理する鍵が1個で済むデータ暗号化システム、
情報処理装置、ICカード、記録媒体およびデータの暗
号方法を提供することにある。
【0014】また、データの暗号化処理あるいは復号化
処理をユーザが明示的に指示する必要のないデータ暗号
化システム、情報処理装置、ICカード、記録媒体およ
びデータの暗号方法を提供することにある。
【0015】
【課題を解決するための手段】上記課題を解決するため
に、本発明の第一の態様は、通信回線を介して接続され
た端末間で送受されるデータの暗号化を、鍵と呼ばれる
情報を用いて行うデータ暗号化システムであって、デー
タ送信側の前記端末は、第一の鍵と所定の情報とを基
に、第二の鍵を生成する第一の鍵生成手段と、前記第一
の鍵生成手段で生成した第二の鍵を用いて前記送信すべ
きデータの暗号化を行うとともに、前記暗号化したデー
タに、前記所定の情報を付加する暗号化手段と、を備
え、データ受信側の前記端末は、データ送信側の前記端
末から送信された、暗号化された受信データに付加され
た前記所定の情報を基に、当該受信データを復号化する
権利があるか否かを判断する判断手段と、前記判断手段
により前記受信データを復号化する権利があると判断さ
れた場合に、前記第一の鍵と前記受信データに付加され
た前記所定の情報とを基に、前記暗号化手段が当該受信
データを暗号化するのに用いた前記第二の鍵と同一の鍵
である第三の鍵を生成する第二の鍵生成手段と、前記第
二の鍵生成手段で生成した第三の鍵を用いて前記受信デ
ータの復号化を行う復号化手段と、を備えることを特徴
とする。
【0016】ここで、端末間で送受されるデータとは、
たとえばインターネットを介してのやり取りが可能な電
子メールなどが該当する。
【0017】また、所定の情報とは、たとえば、メール
アドレスなどのデータの宛先情報が該当する。
【0018】また、第一の鍵生成手段での第二の鍵生成
や第二の鍵生成手段での第三の鍵生成は、たとえば、第
一の鍵および所定の情報をハッシュ関数に入力すること
で行うことができる。
【0019】本発明の第一の態様によれば、対象となる
ユーザーの数に関わらず各端末で管理する(保持)する
鍵は、1つ(第一の鍵)で済むので、ユーザの負担を軽
減することができる。特に、同じメールを複数の宛先へ
送信する場合にかかる負担を大幅に軽減することができ
る。
【0020】なお、本発明の第一の態様において、第一
の鍵生成手段を、ICカードに内蔵することで、データ
送信側端末に挿抜可能に構成してもよい。同様に、判断
手段および第二の鍵生成手段を、ICカードに内蔵する
ことで、データ受信側端末に挿抜可能に構成してもよ
い。
【0021】このようにすることで、たとえばICカー
ドにユーザ認証機能を持たせることにより、第二の鍵や
第三の鍵生成の基となる第一の鍵の機密性を向上させる
ことができる。
【0022】また、本発明の第二の態様は、通信回線を
介して接続された端末間で送受されるデータの暗号化を
行うデータ暗号化システムであって、データ送信側の前
記端末は、ユーザの指示にしたがい、データの送信を行
う送信手段と、前記送信手段によって送信されようとし
ているデータを捕獲する送信データ捕獲手段と、前記送
信データ捕獲手段で捕獲されたデータを暗号化する暗号
化手段と、送信すべきデータとして、前記暗号化手段で
暗号化されたデータを前記送信手段に返還する送信デー
タ返還手段と、を備え、データ受信側の前記端末は、ユ
ーザの指示にしたがって、データ送信側の前記端末から
送信された、暗号化されたデータの受信を行い、受信し
たデータを表示する受信手段と、前記受信手段によって
表示されようとしている、当該受信手段が受信したデー
タを捕獲する受信データ捕獲手段と、前記受信データ捕
獲手段で捕獲されたデータを復号化する復号化手段と、
表示すべきデータとして、前記復号化手段で復号化され
たデータを前記受信手段に返還する受信データ返還手段
と、を備えていることを特徴とする。
【0023】ここで、送信データ捕獲手段や受信データ
捕獲手段は、たとえば、送信手段や受信手段が端末のO
S(オペレーティングシステム)に発行する送受信要求
をフック(横取り)することで、実現できる。
【0024】本発明の第二の態様によれば、送信手段に
よってデータが送信されようとすると、あるいは受信手
段によってデータが受信されると、自動的に当該データ
の暗号化/復号化処理(送信データの場合は暗号化処
理、受信データの場合は復号化処理)が実行されるの
で、ユーザはデータの暗号化処理あるいは復号化処理を
明示的に指示する必要がなくなる。
【0025】
【発明の実施の形態】以下に、本発明の一実施形態につ
いて図面を用いて説明する。
【0026】まず、本発明の一実施形態が適用された電
子メール暗号化システムの概略構成について説明する。
【0027】図1は、本発明の一実施形態が適用された
電子メール暗号化システムの概略構成図である。
【0028】本実施形態が適用された電子メール暗号化
システムは、図1に示すように、企業内ネットワークな
どの複数のローカルエリアネットワーク(LAN)1
が、インターネット2を介して相互に接続された構成と
なっている。
【0029】LAN1は、電子メール(以下、単にメー
ルとも称する)のサーバとして機能するサーバ情報処理
装置11と、メールのクライアントとして機能するクラ
イアント情報処理装置12とが、LANケーブル13を
介して相互に接続されて構成されている。LANケーブ
ル13は、ルータ14を介してインターネット2と接続
されている。
【0030】ここで、図1では、各LAN1内に1つの
クライアント情報処理装置12を示しているが、実際に
は、複数のクライアント情報処理装置12がLANケー
ブル13に接続されている。
【0031】なお、サーバ情報処理装置11と前記クラ
イアント情報処理装置12とが互いに離れた場所に存在
する場合、LANケーブル13の代わりに電話回線など
で両者を接続してもよい。
【0032】サーバ情報処理装置11は、中央処理装置
(CPU)111と、メモリ112と、LANコントロ
ーラ113と、ディスクコントローラ114と、磁気デ
ィスク115と、を備えている。
【0033】サーバ情報処理装置11は、起動時に、磁
気ディスク115に格納されたオペレーティングシステ
ム(OS)115aおよびメールサーバプログラム11
5bを、ディスクコントローラ114を介して、メモリ
112上にロードする。そして、CPU111がメール
サーバプログラム115bを実行することで、メールサ
ーバとして機能する。
【0034】すなわち、当該サーバ情報処理装置11が
属するLAN1内のクライアント情報処理装置12から
送られてきたメールや、インターネット2を介して他の
LAN1内のサーバ情報処理装置11から送られてきた
メールを、当該メールの宛先である、当該サーバ情報処
理装置11が属するLAN1内のクライアント情報処理
装置12に転送する。
【0035】なお、サーバ情報処理装置11は、磁気デ
ィスク115内にメールアドレス管理ファイル115c
を格納している。このファイルによってユーザーのメー
ルアドレスを管理することで、メールの転送先を特定し
ている。
【0036】メールサーバプログラム115bには、従
来より電子メールシステムに用いられているものをその
まま使用することができる。
【0037】LANコントローラ113は、当該サーバ
情報処理装置11が属するLAN1内のクライアント情
報処理装置12(すなわち、自己が管理するメールアド
レスを有するクライアント情報処理装置12)、あるい
はインターネット2を介して接続された、他のLAN1
との間で通信を行うためのものである。
【0038】なお、インターネット2を介して存在する
他のLAN1内の装置との間で、通信を行う場合は、通
信データの経路制御機能を有するルータ14を介して行
う。
【0039】クライアント情報処理装置12は、CPU
121と、メモリ122と、LANコントローラ123
と、ディスクコントローラ124と、磁気ディスク12
5と、ICカードコントローラ126と、を備えてい
る。
【0040】クライアント情報処理装置12は、起動時
に、磁気ディスク125に格納されたOS125a、共
用ファイル暗号プログラム125b、および通信API
(Application Program Interface)フックプログラム
125cを、ディスクコントローラ124を介して、メ
モリ122上にロードする。
【0041】また、クライアント情報処理装置12は、
ユーザの指示にしたがい、メールクライアントプログラ
ム125dを、ディスクコントローラ124を介して、
磁気ディスク125からメモリ122上にロードする。
そして、CPU121がメールクライアントプログラム
125dを実行することで、メールクライアントとして
機能する。
【0042】すなわち、作成したメールに宛先を付し
て、当該クライアント情報処理装置12のメールアドレ
スを管理するサーバ情報処理装置11に送信したり、当
該サーバ情報処理装置11から送られてきた、自己宛て
のメールを受け取って、ユーザに知らせる。
【0043】この際、送信メールは、共用ファイル暗号
プログラム125bによって暗号化される。また、受信
メールは、共用ファイル暗号プログラム125bによっ
て復号化される。
【0044】通信API(Application Program Interf
ace)フックプログラム125cは、メールクライアン
トプログラム125dによって、送信されるメールや、
受信したメールを、フック(横取り)して、共用ファイ
ル暗号プログラム125bでの処理に渡すためのもので
ある。
【0045】メールクライアントプログラム125dに
は、従来より電子メールシステムに用いられているもの
をそのまま使用することができる。
【0046】LANコントローラ123は、当該クライ
アント情報処理装置12が属するLAN1内のサーバ情
報処理装置11との間で通信を行うためのものである。
【0047】ICカードコントローラ126には、IC
カード15が装着される。このICカード15は、クラ
イアント情報処理装置12において、メールを暗号化あ
るいは復号化するのに用いる鍵(以下、実効鍵と称す
る)を、暗号化あるいは復号化するための鍵(以下、グ
ループ鍵と称する)を生成する。
【0048】なお、ICカード15は、本実施形態の電
子メール暗号化システムを利用するユーザ各々に予め配
布される。
【0049】上記構成の電子メール暗号化システムで
は、クライアント情報処理装置12は、作成したメール
を実効鍵で暗号化するとともに、この実効鍵をICカー
ド15で生成したグループ鍵で暗号化する。そして、暗
号化したメールに、暗号化した実効鍵を付して、当該ク
ライアント情報処理装置12が属するLAN1内のサー
バ情報処理装置11に送信する。
【0050】サーバ情報処理装置11は、受け取ったメ
ールの宛先が、自己が管理しているメールアドレスであ
る場合、当該メールをファイルとして磁気ディスク11
5に格納する。
【0051】一方、受け取ったメールの宛先が、自己が
管理しているメールアドレスでない場合は、当該メール
を、当該宛先を管理するサーバ情報処理装置11に、イ
ンターネット2を介して転送する。
【0052】また、クライアント情報処理装置12は、
ユーザの指示にしたがい、自己のメールアドレスを管理
するサーバ情報処理装置11から、自己宛のメールを受
信する。その後、ICカード15で生成されたグループ
鍵を用いて、当該メールに付加された実効鍵を復号化す
る。そして、復号化した実効鍵を用いて当該メールを復
号化し、ユーザに知らせる。
【0053】次に、上述した電子メール暗号化システム
の主な構成について、さらに詳しく説明する。
【0054】まず、ICカード15について説明する。
【0055】ICカード15は、図1に示すように、C
PU151と、メモリ152と、入出力インタフェース
153と、を備えている。
【0056】メモリ152には、アクセス制御プログラ
ム152aと、グループ暗号プログラム152bと、I
D情報152cと、マスタ鍵152dと、を格納してい
る。
【0057】アクセス制御プログラム152aは、IC
カード15およびクライアント情報処理装置12間でデ
ータのアクセスを制御するためのプログラムである。C
PU151が当該プログラムを実行することで、両者間
でのデータアクセスが制御される。
【0058】また、このプログラムを実行することによ
り、アクセスに先だって、CPU151によるユーザー
認証制御が行われる。このようにすることで、メモリ1
52の記憶内容を不正なアクセスから保護する。
【0059】ID情報152cは、ICカード15を利
用するユーザを特定するための情報、具体的には、メー
ルアドレスである。
【0060】マスタ鍵152dは、上述したグループ鍵
を生成するための鍵である。マスタ鍵152dの情報
は、本実施形態の電子メール暗号化システムを利用する
ユーザ各々に予め配布されたICカード15全てにおい
て共通する。すなわち、全てのICカード15は、同じ
情報のマスタ鍵152dを有することになる。
【0061】グループ暗号プログラム152bは、グル
ープ鍵を生成するためのプログラムである。CPU15
1が当該プログラムを実行することで、グループ鍵が生
成される。
【0062】次に、ICカード15において、CPU1
51がグループ暗号プログラム152bを実行した場合
の動作について説明する。
【0063】まず、メールの送信側でのICカード15
の動作について説明する。
【0064】図2は、メールの送信側において、ICカ
ード15がグループ鍵を生成する場合の動作を説明する
ためのフロー図である。
【0065】まず、ステップ1001では、グループ鍵
の生成に先だって、アクセス制御プログラム152aに
対するログインが完了しているかどうかを検査する。
【0066】完了していなければ、エラーコードを設定
し(ステップ1002)、その後、フローを終了する。
【0067】一方、ログインが完了している場合には、
自己が装着されたクライアント情報処理装置12から宛
先リストを入手する(ステップ1003)。
【0068】ここで、宛先リストとは、自己のICカー
ド15が有するID情報152c、すなわち送信者のメ
ールアドレスと、ユーザが指定した、復号化を許可する
相手のメールアドレスとを、各メールアドレス毎にカン
マで区切って並べたもに、乱数が付加されたものであ
る。
【0069】たとえば、自己のメールアドレスが「jiro
@sl.abc.or.jp」であり、宛先のメールアドレスが「ang
ou@sl.abc.or.jp」と「yamada@sl.abc.or.jp」である場
合、その宛先リストは、「jiro@sl.abc.or.jp,angou@s
l.abc.or.jp,yamada@sl.abc.or.jp」に乱数が付加され
たものとなる。
【0070】なお、宛先リストは、クライアント情報処
理装置12において、後述する通信APIフックプログ
ラム125cが実効されることで作成される。
【0071】宛先リストの入手が終了すると、ステップ
1004へ移行してグループ鍵を生成する。また、宛先
リストをマスタ鍵152dを用いてブロック暗号化し
て、暗号化宛先リストを生成する。その後、このフロー
を終了する。
【0072】次に、図2におけるステップ1004での
グループ鍵生成処理について説明する。
【0073】図3は宛先リストのハッシュ値と、マスタ
鍵152dとを用いてグループ鍵を生成する手順を説明
するための図である。
【0074】ここで、156aは宛先リスト、154は
グループ鍵、155はハッシュ関数である。また、マス
タ鍵152dは8バイトであるとする。
【0075】上述したように、宛先リスト156aは、
後述する通信APIフックプログラム125cが実効さ
れることで作成される。まず、送信者のメールアドレス
と宛先のメールアドレスとをカンマで区切って並べたデ
ータのバイト数が、丁度8の倍数となるように空白文字
で補い、次いで、8バイトの乱数を付加することで、宛
先リスト156aが作成される。
【0076】グループ暗号プログラム152bは、この
ようにして作成された宛先リスト156aと、マスタ鍵
152dとを、ハッシュ関数155に入力することで、
グループ鍵154を生成する。
【0077】ハッシュ関数155は、図3に示すよう
に、いわゆるブロック暗号方式による暗号化を行うブロ
ック暗号155a1〜155anが、宛先リスト156a
のバイト数を8バイトで割った数だけ設けられて構成さ
れる。
【0078】これ等のブロック暗号155a1〜155
nは、先頭の段にあるブロック暗号155a1が宛先リ
スト156aの先頭から8バイト分に対応し、2番目の
段にあるブロック暗号155a2が宛先リスト156a
の先頭から2番目の8バイト分に対応し、そして、最後
の段にあるブロック暗号155anが宛先リスト156
aの最後の8バイト分に対応するように、各々設けられ
ている。
【0079】また、ブロック暗号155a1〜155an
各々の間、および最後のブロック暗号155anの後段
には、排他的論理和を行う演算子155b1〜155bn
が設けられている。
【0080】上記構成のハッシュ関数155では、ま
ず、先頭の段のブロック暗号155a1にて、8バイト
の初期値155cと、8バイトのマスタ鍵152dと、
宛先リスト156aの先頭から8バイト分とを用いて、
ブロック暗号を行う。
【0081】次に、演算子155b1にて、ブロック暗
号155a1による暗号結果と、8バイトの初期値15
5cとの排他的論理和を求める。
【0082】次いで、2番目の段のブロック暗号155
2にて、演算子155b1での演算結果と、8バイトの
マスタ鍵152dと、宛先リスト156aの先頭から2
番目の8バイト分とを用いて、ブロック暗号を行う。
【0083】上記の処理を、最後の段のブロック暗号1
55anまで順次行う。そして、ブロック暗号155an
の後段にある演算子155bnにて、ブロック暗号15
5anによる暗号結果と、8バイトの初期値155cと
の排他的論理和を求める。この結果をグループ鍵154
として用いる。
【0084】上述したように、宛先リスト156aに乱
数を含めてあるので、同じ宛先であっても、宛先リスト
156aが毎回異なることになる。したがって、同じ宛
先であっても、毎回異なるグループ鍵154が生成され
るので、セキュリティを向上させることができる。
【0085】次に、電子メールの受取り側でのICカー
ド15の動作について説明する。
【0086】図4は、メールの受取り側において、IC
カード15がグループ鍵を生成する場合の動作を説明す
るためのフロー図である。
【0087】まず、ステップ1101では、グループ鍵
の生成に先だって、アクセス制御プログラム152aに
対するログインが完了しているかどうかを検査する。
【0088】完了していなければ、エラーコードを設定
し(ステップ1102)、その後、フローを終了する。
【0089】一方、ログインが完了している場合には、
暗号化されたメールに付加された暗号化宛先リストを、
マスタ鍵152dを用いて復号化する。そして、復号化
した宛先リストに、自己のID情報152c、すなわち
メールアドレスが含まれているか否かを調べる(ステッ
プ1103)。
【0090】自己のID情報152cが含まれていれ
ば、ステップ1104へ移行し、図3のステップ100
4と同じ要領でグループ鍵を生成する。したがって、生
成されたグループ鍵は、電子メールの送信者が生成した
ものと同じになる。その後、このフローを終了する。
【0091】一方、含まれていない場合は、ステップ1
105へ移行してエラーコードを設定し、その後、この
フローを終了する。
【0092】以上説明したフローにより、ICカード1
5にログイン済みで、且つ復号化した宛先リスト内に自
己のICカード15のID情報152cがある場合にの
み、すなわち、メールの送信者が復号を許可した者の
み、グループ鍵を生成することができる。
【0093】次に、クライアント情報処理装置12につ
いて説明する。
【0094】上述したように、共用ファイル暗号プログ
ラム125bは、送信メールを暗号化したり、受信メー
ルを復号化するためのプログラムである。また、通信A
PIフックプログラム125cは、メールクライアント
プログラム125dがOS125aに発行する通信AP
Iをフック(横取り)して、共用ファイル暗号プログラ
ム125bでの処理に渡すためのプログラムである。
【0095】共用ファイル暗号プログラム125bおよ
び通信APIフックプログラム125c各々を構成する
プログラムルーチンを、それぞれ図5、図6に示す。
【0096】共用ファイル暗号プログラム125bは、
図5に示すように、ICカード150へのログインを行
うログイン制御ルーチン125b1と、ログアウトを行
うログアウト制御ルーチン125b2と、送信メールを
暗号化したり、暗号化された受信メールを復号化したり
するデータ暗号化ルーチン125b3とで構成される。
【0097】また、通信APIフックプログラム125
cは、図6に示すように、send関数に入力されたメール
をフックするsendフックルーチン125c1と、recv関
数に入力されたメールをフックするrecvフックルーチン
125c2と、closed socket関数をフックするclosed s
ocketフックルーチン125c3とで構成される。
【0098】ここで、send関数、recv関数、およびclos
ed socket関数は、メールクライアントプログラム12
5dがメールの送受信を行うときに、OS125aに発
行する通信APIであるsocket関数(以下、ソケットと
もいう)である。
【0099】send関数は、メールをメールサーバ(ここ
では、サーバ情報処理装置11)に送るときに使用され
る。recv関数はメールを受け取るときに使用される。cl
osedsocket関数は、open socket関数と対となる関数で
あり、ソケットがメールを扱うことができるか否かを決
定する関数である。
【0100】メールクライアントプログラム125d
は、send関数あるいはrecv関数を使用する場合、すなわ
ちメールの送受信処理を開始する場合、open socket関
数を呼び出してソケットをオープンにする。一方、send
関数あるいはrecv関数の使用が終了した場合、すなわち
メールの送受信処理が終了した場合、closed socket関
数を呼び出してソケットをクローズにする。
【0101】次に、クライアント情報処理装置12にお
いて、CPU121が、共用ファイル暗号プログラム1
25bのデータ暗号化ルーチン125b3を実行した場
合の動作について説明する。
【0102】まず、メールの送信側でのクライアント情
報処理装置12の動作について説明する。
【0103】図7は、メールの送信側において、クライ
アント情報処理装置12が送信メールを暗号化する場合
の手順を説明するための図である。
【0104】ここで、点線で囲まれたA部は、ICカー
ド15によって行われる手順を示している。
【0105】まず、CPU121は、乱数を用いて実効
鍵127aを生成する。
【0106】つぎに、ブロック暗号128aにて、ユー
ザが作成した平文ファイル(あるいはメールデータ)1
29aを、実効鍵127aを用いてブロック暗号化す
る。これにより、暗号文データ129bを生成する。
【0107】一方、ブロック暗号128bにて、実効鍵
127aを、ICカード15で生成したグループ鍵を用
いてブロック暗号化する。これにより、暗号化実効鍵1
27bを生成する。
【0108】次に、暗号文データ128bのヘッダに、
使用した暗号化方式を示す情報130と、暗号化実効鍵
127bと、ICカード15で生成した暗号化宛先リス
ト156bと、暗号化宛先リスト156bのサイズ13
1とを付加する。
【0109】次に、メールの受信側でのクライアント情
報処理装置12の動作について説明する。
【0110】図8は、メールの受信側において、クライ
アント情報処理装置12が受信メールを復号化する場合
の手順を説明するための図である。
【0111】ここで、点線で囲まれたB部は、ICカー
ド15によって行われる手順を示している。
【0112】まず、CPU121は、暗号化実効鍵12
7bを、ICカード15にて生成したグループ鍵154
を用いて復号化する。これにより、平文ファイル129
aを暗号化するのに用いた実効鍵127aを得る。
【0113】次に、実効鍵127aを用いて、暗号文デ
ータ129bを復号化する。これにより、平文ファイル
129aを得る。
【0114】なお、復号化は、暗号文データ129bの
ヘッダに付加された暗号化方式130にしたがって行
う。ここでは、暗号化方式130がブロック暗号化方式
であったとして、暗号化実効鍵127bおよび暗号文デ
ータ129bを、それぞれ復号化している。
【0115】次に、クライアント情報処理装置12にお
いて、CPU121が、共用ファイル暗号プログラム1
25bのログイン処理ルーチン125b1を実行した場
合の動作について説明する。
【0116】図9は、クライアント情報処理装置12に
おいて、CPU121が、共用ファイル暗号プログラム
125bのログイン処理ルーチン125b1を実行した
場合の動作を説明するためのフロー図である。
【0117】まず、ステップ1201において、ユーザ
IDとパスワードとの入力を受け付けた後、受け付けた
ユーザIDとパスワードとを用いて、当該クライアント
情報処理装置12に装着されたICカード15にログイ
ンを試みる(ステップ1202)。
【0118】ステップ1203では、ステップ1202
でのログインが成功したか否かを判定する。判定の結
果、失敗した場合はステップ1209へ移行し、3回続
けて失敗するまでは、ステップ1201〜ステップ12
03の処理を繰り返すよう制御する。一方、ログインに
成功すると、ステップ1204へ移行して、イベント待
ちの状態となる。
【0119】イベントが到着すると、それがログアウト
要求であるか否かを調べる(ステップ1205)。ログ
アウト要求ならば、ステップ1208へ移行して、ログ
アウト処理を行い、このフローを終了する。
【0120】一方、到着したイベントが、ログアウト要
求でない場合は、ステップ1206へ移行して、それが
タイマイベントであるか否かを調べる。タイマイベント
でない場合はステップ1204に戻り、タイマイベント
である場合は、ステップ1207へ移行して、ICカー
ド15がクライアント情報処理装置12に接続されてい
るか否かを調べる。
【0121】ここで、接続されていればステップ120
4に戻る。一方、接続されていない場合は、ステップ1
208のログアウト処理を実行し、その後、このフロー
を終了する。
【0122】このように、タイマイベントを用いて定期
的にICカード15の接続状態を調べることにより、I
Cカード130を抜いた際のログアウト処理を自動化す
ることができる。
【0123】次に、クライアント情報処理装置12にお
いて、CPU121が、共用ファイル暗号プログラム1
25bのログアウト処理ルーチン125b2を実行した
場合の動作について説明する。
【0124】図10は、クライアント情報処理装置12
において、CPU121が、共用ファイル暗号プログラ
ム125bのログアウト処理ルーチン125b2を実行
した場合の動作を説明するためのフロー図である。
【0125】まず、ステップ1301において、送受信
中のメールがあるか否かを調べる。送受信中のメールが
ある場合は、ステップ1302へ移行して、ユーザーに
ログアウトを中止するか否かを尋ねる。
【0126】ログアウト処理を中止する場合は、このフ
ローを終了する。一方、中止しない場合は、ステップ1
303へ移行して、メールの送受信処理が終了するのを
待つ。
【0127】メールの送受信処理が終了した後、ステッ
プ1304へ移行して、ICカード15がクライアント
情報処理装置110に接続されているかどうかを調べ
る。接続されていれば、ステップ1305へ移行して、
ICカード15に対してログアウトコマンドを送出し、
このフローを終了する。一方、ICカード15が接続さ
れていない場合は、そのままフローを終了する。
【0128】次に、クライアント情報処理装置12にお
いて、CPU121が、通信APIフックプログラム1
25cを実行した場合の動作について説明する。
【0129】まず、通信APIフックプログラム125
cが行う送受信データの入出力について説明する。
【0130】図11は、本実施形態において、メールを
暗号化あるいは復号化する際におけるデータの入出力を
説明するための図である。
【0131】ここで、受信バッファ41および送信バッ
ファ42は、メールクライアントプログラム125dに
よってメモリ122内に用意されるバッファである。ま
た、平文ブロックバッファ43および暗号文ブロックバ
ッファ44は、通信APIフックプログラム125cに
よってメモリ122内に用意されるバッファである。
【0132】まず、メールクライアントプログラム12
5dによってメールが送信される際のデータの入出力に
ついて説明する。この処理は、図11において、点線で
示されており、CPU121が、通信APIフックプロ
グラム125cのsendフックルーチン125C1を実行
することで行われる。
【0133】まず、メールクライアントプログラム12
5dによって送信バッファに格納されたメール(この段
階では、まだ暗号化されていない)を、平文ブロックバ
ッファ43にコピーする。
【0134】平文ブロックバッファ43がメールで満た
された場合、あるいは平文ブロックバッファ43にメー
ルの終端部分がコピーされた場合、共用ファイル暗号プ
ログラム125bに処理を渡し、平文ブロックバッファ
43に格納されたデータの暗号化処理が終了するのを待
つ。
【0135】共用ファイル暗号プログラム125bによ
る暗号化処理が終了すると、暗号文を暗号文ブロックバ
ッファ44にコピーする。
【0136】その後、暗号文ブロックバッファ44に格
納された暗号文を、送信バッファ42に上書きコピーす
る。
【0137】以後、送信メールが続く場合(送信メール
の終端部分が、未だ平文ブロックバッファ43へコピー
されていない場合)は、上述した、当該送信メールの平
文ブロックバッファ43へのコピー、共用ファイル暗号
プログラム125bで暗号化された暗号文の暗号文ブロ
ックバッファ44へのコピー、および、暗号文の送信バ
ッファ42への上書きコピーを、送信メールのデータが
なくなるまで順次繰り返す。
【0138】次に、メールクライアントプログラム12
5dによってメールが受信された際のデータの入出力に
ついて説明する。この処理は、図11において、実線で
示されており、CPU121が、通信APIフックプロ
グラム125cのrecvフックルーチン125C2を実行
することで行われる。
【0139】まず、メールクライアントプログラム12
5dによって受信バッファに格納されたメール(この段
階では、まだ復号化されていない)を、暗号文ブロック
バッファ43にコピーする。
【0140】暗号文ブロックバッファ44がメールで満
たされた場合、あるいは暗号文ブロックバッファ44に
メールの終端部分がコピーされた場合、共用ファイル暗
号プログラム125bに処理を渡し、暗号文ブロックバ
ッファ44に格納されたデータの復号化処理が終了する
のを待つ。
【0141】共用ファイル暗号プログラム125bによ
る復号化処理が終了すると、平文(復号文)を平文ブロ
ックバッファ43にコピーする。
【0142】その後、平文ブロックバッファ43に格納
された平文を、受信バッファ41に上書きコピーする。
【0143】以後、受信メールが続く場合(受信メール
の終端部分が、未だ暗号文ブロックバッファ44にコピ
ーされていない場合)は、上述した、当該受信メールの
暗号文ブロックバッファ44へのコピー、共用ファイル
暗号プログラム125bで復号化された平文の平文ブロ
ックバッファ43へのコピー、および、平文の受信バッ
ファ41への上書きコピーを、受信メールのデータがな
くなるまで順次繰り返す。
【0144】次に、通信APIフックプログラム125
cが行う送受信データの入出力の管理方法について説明
する。
【0145】通信APIフックプログラム125cは、
送受信データの入出力を、オープン中のソケットを管理
することで行う。
【0146】図12は、オープン中のソケットを管理す
るためのソケット情報テーブルを示した図である。
【0147】ソケット情報テーブルには、ソケット記述
子501、送信フラグ502、送信データポインタ50
3、受信フラグ504、受信データポインタ505、暗
号化実効鍵127b、暗号化宛先リストのサイズ13
1、暗号化宛先リスト156b、グループ鍵154、実
効鍵127a、暗号文ブロックバッファポインタ50
6、および平文ブロックバッファポインタ507の各情
報を、オープン中の各ソケット毎にポインタ508を用
いて、リスト構造で格納されている。
【0148】ここで、ソケット記述子501とは、ソケ
ットをオープンした際にOS125aから与えられる管
理番号である。
【0149】送信フラグ502とは、ソケット記述子5
01で特定されるソケットを使用して1件のメールを送
信している場合に「1」、送信していない場合に「0」
で示されるフラグである。
【0150】受信フラグ504とは、ソケット記述子5
01で特定されるソケットを使用して1件のメールを受
信している場合に「1」、受信していない場合に「0」
で示されるフラグである。
【0151】送信データポインタ503とは、送信デー
タから平文メールを読み込む際の起点を示すものであ
り、sendフックルーチン125C1によって、データ送
信時に送信バッファの先頭アドレスが登録される。
【0152】受信データポインタ505は、受信データ
から暗号文を読み込む際の起点を示すものであり、recv
フックルーチン125C2によって、データ受信時に受
信バッファの先頭アドレスが登録される。
【0153】暗号文ブロックバッファポインタ506お
よび平文ブロックバッファポインタ507は、それぞ
れ、図11に示す暗号文ブロックバッファ44、平文ブ
ロックバッファ43へのポインタである。暗号化あるい
は復号化処理時に、バッファ間で暗号文や平文をコピー
する際の起点となるものである。
【0154】グループ鍵154および実効鍵127a
は、メールを送信する際に、当該メールの暗号化処理に
用いたものが登録される。
【0155】暗号化実効鍵127b、暗号化宛先リスト
サイズ131、および、暗号化宛先リスト156bは、
メール受信した際に、当該メールのヘッダーから読み込
まれ登録される。
【0156】なお、暗号化宛先リスト156bは、図8
に示すように、マスタ鍵152dによって復号化され
る。さらに、復号化された宛先リスト156aとマスタ
鍵152dとを基にグループ鍵154が生成される。
【0157】実効鍵127aは、このグループ鍵154
を用いて暗号化実効鍵127bを復号化することで得ら
れる。
【0158】なお、ソケット情報テーブルは、たとえば
メモリ122内に格納される。
【0159】次に、クライアント情報処理装置12にお
いて、CPU121が、通信APIフックプログラム1
25cのsendフックルーチン125C1を実行した場合
の動作について説明する。
【0160】図13は、クライアント情報処理装置12
において、CPU121が、通信APIフックプログラ
ム125cのsendフックルーチン125C1を実行した
場合の動作を説明するためのフロー図である。このフロ
ーは、メールクライアントプログラム125dが実行さ
れて、send関数が呼び出されることで実行される。
【0161】まず、ステップ1401において、send関
数使用のためにオープンになっているソケットをフック
する。そして、フックしたソケットの記述子が、上述し
たソケット情報テーブルに登録されているか否かを調べ
る。
【0162】登録されていない場合はステップ1402
へ移行して、当該ソケットに関するテーブルをソケット
情報テーブルに追加し、必要な情報を登録する。
【0163】一方、登録されていない場合は、ステップ
1403へ移行する。
【0164】ステップ1403では、メールクライアン
トプログラム125dによってメールサーバへ送信され
るデータが、「MAIL FROM:」コマンドであるか否かを調
べる。
【0165】ここで、「MAIL FROM:」コマンドとは、
メールの送信元を表すコマンドである。
【0166】たとえば、「jiro@sl.abc.or.jp」のアド
レスを持つユーザーが、メールを送信した場合、「MAIL
FROM:<jiro@sl.abc.or.jp>」のデータが、メールサー
バであるサーバ情報処理装置11へ送信される。
【0167】このコマンドは、一般的なメールシステム
に用いられている標準的なプロトコル(通信規約)の中
で使用されているものである。
【0168】「MAIL FROM:」コマンドである場合、ステ
ップ1412へ移行して、「MAIL FROM:」コマンドに続
いて記述される送信者のメールアドレスを、メモリ12
2などに、宛先リストとして登録する。
【0169】その後、ステップ1410において、「MA
IL FROM:」コマンドのsend処理(メールサーバへの送信
処理)を実行した後、リターンして(ステップ141
1)、send関数にデータが入力されるのを待つ。
【0170】一方、「MAIL FROM :」コマンドでない場
合は、ステップ1404へ移行して、メールサーバへ送
信されるデータが「RCPT TO:」コマンドであるか否かを
調べる。
【0171】ここで、「RCPT TO:」コマンドとは、メー
ルの宛先を表すコマンドであり、上述した「MAIL FRO
M:」コマンドの場合と同様に、コマンドの後ろに該当す
るメールアドレスが記述されている。
【0172】このコマンドも、「MAIL FROM:」コマンド
と同様、一般的なメールシステムに用いられている標準
的なプロトコルの中で使用されているものである。
【0173】「RCPT TO:」コマンドである場合、ステッ
プ1413に移行し、当該コマンドに続いて記述される
宛先のメールアドレスを、ステップ1412で登録した
宛先リストに追加登録する。
【0174】したがって、宛先リストは、ステップ14
12で追加登録した送信者のメールアドレスと、宛先の
メールアドレスとを合わせたものとなる。次に、この宛
先リストに所定の加工(データ長を8バイトの倍数とす
るための空白文字の付加、および8バイトの乱数の付
加)を施して宛先リスト156aを作成する。
【0175】ステップ1413において宛先リストの作
成が終了すると、ステップ1414へ移行して、当該作
成した宛先リストをICカード15に送る。これを受け
て、ICカード15において、グループ暗号プログラム
152bが実行され、グループ鍵が生成される。また、
クライアント情報処理装置12において、共有ファイル
暗号プログラム125bが実行され、乱数によって実効
鍵が生成される。
【0176】その後、「RCPT TO:」コマンドのsend処理
(メールサーバへの送信処理)を実行した後、リターン
して(ステップ1411)、send関数にデータが入力さ
れるのを待つ。
【0177】一方、ステップ1404において、メール
サーバへ送信されるデータが「RCPTTO:」コマンドでな
いと判断された場合、ステップ1405へ移行して、当
該データ「DATA」コマンドであるか否かを調べる。
【0178】ここで、「DATA」コマンドとは、メール送
信の直前に送信されるコマンドであり、このコマンドの
以後に続く送信データがメールに該当する。
【0179】このコマンドも、上記の「MAIL FROM:」コ
マンドなどと同様、一般的なメールシステムに用いられ
ている標準的なプロトコルの中で使用されているもので
ある。
【0180】「DATA」コマンドである場合、対応するソ
ケット情報テーブルの送信フラグ502をオン
(「1」)にする。
【0181】一方、「DATA」コマンドでない場合は、ス
テップ1406へ移行して、対応するソケット情報テー
ブルの送信フラグ502を調べる。
【0182】送信フラグ502がオンの場合、フックし
た送信データはメールである。この場合、クライアント
情報処理装置12において、共有ファイル暗号プログラ
ム125bが実行され、ステップ1414で生成された
グループ鍵と実効鍵とによって送信データが暗号化され
る(ステップ1407)。
【0183】ステップ1408では、フックした送信デ
ータにメールの終端が含まれるか否かを調べる。メール
の終端が含まれていない場合は、ステップ1410へ移
行して、ステップ1407で暗号化したメールのsend処
理(メールサーバへの送信処理)を実行する。その後、
リターンして(ステップ1411)、send関数にデータ
が入力されるのを待つ。
【0184】一方、メールの終端が含まれている場合
は、ステップ1409へ移行して、対応するソケット情
報テーブルの送信フラグ502をOff(「0」)にし
た後、ステップ1407で暗号化したメールのsend処理
(メールサーバへの送信処理)を実行(ステップ141
0)する。その後、リターンして(ステップ141
1)、send関数にデータが入力されるのを待つ。
【0185】なお、ステップ1406において、送信フ
ラグ502がオフであると判断された場合は、送信デー
タに特別な処理を実行する必要がないデータとみなす。
【0186】次に、クライアント情報処理装置12にお
いて、CPU121が、通信APIフックプログラム1
25cのsendフックルーチン125C1を実行した場合
の動作について説明する。
【0187】図14は、クライアント情報処理装置12
において、CPU121が、通信APIフックプログラ
ム125cのsendフックルーチン125C2を実行した
場合の動作を説明するためのフロー図である。このフロ
ーは、メールクライアントプログラム125dが実行さ
れて、recv関数が呼び出されることで実行される。
【0188】まず、ステップ1501において、メール
クライアントプログラム125dが呼び出したrecv関数
の処理(メールサーバからのデータ受信処理)を行い、
その後、recv関数使用のためにオープンになっているソ
ケットをフックする。そして、フックしたソケットの記
述子が、上述したソケット情報テーブルに登録されてい
るか否かを調べる。登録されていない場合は、当該ソケ
ットに関するテーブルをソケット情報テーブルに追加
し、必要な情報を登録する。
【0189】次に、ステップ1502において、対応す
るソケット情報テーブルの受信フラグ504を調べる。
【0190】受信フラグ504がオフ(「0」)の場合
は、ステップ1509へ移行して、受信データが新規メ
ールであるか否かを調べる。通常、メールサーバから転
送されるメールの先頭には、文字列「Received:」が付
与されている。したがって、フックしたソケットに入力
された受信データに、文字列「Received:」があるか否
かを調べることで、当該受信データが新規メールである
か否かを判断することができる。
【0191】なお、文字列「Received:」は、上記の「M
AIL FROM:」コマンドと同様、一般的なメールシステム
に用いられている標準的なプロトコルの中で使用されて
いるものである。
【0192】新規メールである場合は、ステップ151
0へ移行して、対応するソケット情報テーブルの受信フ
ラグ504をオン(「1」)にする。一方、新規メール
でない場合は、ステップ11508へ移行してrecv関数
にデータが入力されるのを待つ。
【0193】ステップ1502において、受信フラグ5
04がオン(「1」)であると判断された場合、ステッ
プ1503へ移行して、受信メールが暗号化されている
か否かを調べる。暗号化されているか否かは、図8に示
すメールのヘッダに付与されている暗号化方式130を
調べることで判断することができる。
【0194】暗号化されている場合は、図8に示すメー
ルのヘッダに付与されている暗号化宛先リスト156b
を、ICカード15に送る。これを受けて、ICカード
15において、グループ暗号プログラム152bが実行
され、暗号化宛先リスト156bの復号化が行われ、そ
の後、当該ICカード15が有するID情報152c
が、復号化された宛先リスト156aに含まれているか
否かの判断が行われる(ステップ1504)。
【0195】そして、含まれている場合は、ICカード
15において、復号化された宛先リスト156aを基に
グループ鍵が生成される。これを受けて、クライアント
情報処理装置12において、共有ファイル暗号プログラ
ム125bが実行され、受信データが復号化される(ス
テップ1505)。
【0196】ステップ1506では、受信データ中にメ
ールの終端部分が含まれているか否かを調べる。含まれ
ている場合はステップ1507へ移行して、対応するソ
ケット情報テーブルの受信フラグ502をオフにした
後、ステップ1508へ移行する。一方、終了していな
い場合は、直接ステップ1508へ移行する。
【0197】ステップ1504において、ICカード1
5が有するID情報152cが復号化された宛先リスト
156aに含まれていないと判断された場合、ステップ
1511へ移行して、受信した暗号メールにメッセージ
を付加し、その後、対応するソケット情報テーブルの受
信フラグ502をオフにする。
【0198】ステップ1508では、メールクライアン
トプログラム125dに処理を返して、次の受信データ
を待つ。
【0199】図14に示すrecvフックルーチン125C
2のフローにより、暗号メールを受信した場合に、自己
がメールの送信側で作成された宛先リストに含まれるユ
ーザーである場合は、図14のステップ1505におい
て、共用ファイル暗号プログラム125bにより当該暗
号メールの復号化処理が行われる。そして、メールクラ
イアントプログラム125dにより、クライアント情報
処理装置12の表示画面に、たとえば、図16(a)に
示すような、復号化されたメール(平文601)の内容
が表示される。
【0200】一方、前記宛先リストに含まれないユーザ
ーである場合は、図14のステップ1511において、
当該暗号メールにメッセージが付加される。そして、メ
ールクライアントプログラム125dにより、クライア
ント情報処理装置12の表示画面に、たとえば、図16
(b)に示すような、暗号メール602そのものと、メ
ッセージ603とが表示される。
【0201】ところで、通常、電子メールの暗号化方式
では、暗号化処理によりメールをバイナリデータへ変換
している。この際、元々はテキストデータであったメー
ル本文が、暗号化処理によりバイナリデータへ変換され
ると、該暗号メールがメールサーバ(サーバ情報処理装
置11)を通過するときに情報が欠落するという問題が
発生する。
【0202】そこで、暗号データ等のバイナリデータを
テキストデータへ変換する技術が一般に用いられてい
る。その技術の一つとして、Base64と呼ばれるも
のがある。Base64は、暗号化データを24ビット
データを1ブロックとして分割し、さらに各ブロックを
4個の6ビットデータに分割する。そして、上記分割し
たデータをテキストデータに変換(エンコード)する。
テキストデータには、英数字と「+」および「/」の6
4種類が含まれる。
【0203】ここで、暗号文の最後のブロックが24ビ
ットに満たない場合は、パディング情報として「=」を
付加する。たとえば、最後のブロックが8ビットしかな
い場合は、該ブロックのエンコード結果は2個のテキス
トデータと2個の「=」となる。また、最後のブロック
が16ビットしかない場合は、当該ブロックのエンコー
ド結果は3個のテキストデータと1個の「=」となる。
【0204】エンコード処理の結果、3バイトの暗号化
データが4バイトのテキストデータに変換されるため、
暗号化データサイズは3分の4倍に増える。
【0205】本実施形態においても、sendフックルーチ
ン125C1のステップ1407で暗号化処理で生成し
たバイナリデータを、テキストデータへ変換してから送
信することにより、上記の問題を解決することができ
る。
【0206】この場合、recvフックルーチン125C2
において、ステップ1505でデータを復号化する前に
テキストデータをバイナリデータへ逆変換する処理を実
行すればよい。
【0207】次に、クライアント情報処理装置12にお
いて、CPU121が、通信APIフックプログラム1
25cのclose socketフックルーチン125C3を実行
した場合の動作について説明する。
【0208】図15は、クライアント情報処理装置12
において、CPU121が、通信APIフックプログラ
ム125cのclose socketフックルーチン125C3
実行した場合の動作を説明するためのフロー図である。
このフローは、メールクライアントプログラム125d
によるメールの送受信が終了した際に実行される。
【0209】まず、ステップ1601において、メール
クライアントプログラム125dが呼び出したclose so
cket関数の引数に指定されたソケット記述子が、ソケッ
ト情報テーブルに登録されているかを調べる。
【0210】登録されている場合は、ステップ1602
へ移行して、ソケット記述子に対応するソケット情報を
ソケット情報テーブルから削除し(ステップ160
2)、その後、close socket処理を実行する(ステップ
1603)。
【0211】一方、登録されていない場合は、直ちにcl
ose socket処理を実行する(ステップ1603)。
【0212】ステップ1604では、リターンしてメー
ルクライアントプログラム125dに処理を返す。
【0213】図13〜図15に示した通信APIフック
プログラム125cの各ルーチンでの処理により、ユー
ザは、メールの暗号化、あるいは暗号化されたメールの
復号化のための操作を行うことなく、すなわち、ユーザ
としては、メールクライアントプログラム125dを実
行させることで、メールの暗号化・復号化処理を自動的
に行わせることができる。
【0214】以上説明したように、本実施形態では、メ
ール送信側のクライアント情報処理装置12において、
メール本文の暗号化に用いた実効鍵127aを、ユーザ
各々に配布されたICカード15が有する同一のマスタ
鍵152dと、送信者のメールアドレスと宛先のメール
アドレスとを用いて作成した宛先リスト156aとを基
に作成したグループ鍵154を用いて暗号化し、暗号化
実効鍵127bを生成している。
【0215】また、宛先リスト156aをマスタ鍵15
2dを用いて暗号化し、暗号化宛先リスト156bを作
成している。
【0216】そして、暗号化実効鍵127bと、暗号化
宛先リスト156bとを、暗号化メールのヘッダに付し
てメールサーバであるサーバ情報処理装置11に送信し
ている。
【0217】一方、メール受信側のクライアント情報処
理装置12では、サーバ情報処理装置11から送られて
きた、暗号化メールのヘッダに付された暗号化宛先リス
ト156bを、マスタ鍵152dを用いて復号化し、こ
の復号化された宛先リスト156aとマスタ鍵152d
とを用いて、メールを暗号化するのに用いたもと同一の
グループ鍵154を生成している。
【0218】そして、このグループ鍵154を用いて、
暗号化メールのヘッダに付された暗号化実効鍵127b
を復号化し、その後、復号化された実効鍵127aを用
いて暗号化メールを復号化している。
【0219】したがって、本実施形態によれば、対象と
なるユーザーの数に関わらず、ユーザ各々が管理する鍵
が1個で済む。このため、同じメールを複数の宛先へ送
信する場合に、暗号化処理にかかる負担を軽減すること
ができる。
【0220】また、本実施形態では、グループ鍵154
の生成をICカード15内で行っている。すなわち、グ
ループ鍵154生成の基となるマスタ鍵152dの情報
は、クライアント情報処理装置12側に伝わらない。く
わえて、ICカード15に対するログイン/ログアウト
処理を行うことで、ICカード15の使用を、当該IC
カードにアクセスする権限を有するユーザに対してのみ
許可している。
【0221】したがって、本実施形態によれば、信頼性
の高いメール暗号化システムを実現することができる。
【0222】さらに、本実施形態では、通信APIフッ
クプログラム125cにより、メールクライアントプロ
グラム125dがメールの送受信のために呼び出したソ
ケットをフックしている。そして、フックしたソケット
に入力されたデータが送信メールの場合は、グループ暗
号プログラム152bおよび共有ファイル暗号プログラ
ム125bを用いて当該送信メールに上記の暗号化処理
を行い、この暗号化されたメールを送信するようにして
いる。
【0223】一方、フックしたソケットに入力されたデ
ータが受信メールの場合は、グループ暗号プログラム1
52bおよび共有ファイル暗号プログラム125bを用
いて当該受信メールに上記の復号化処理を行い、その
後、処理をメールクライアントプログラム125dに返
している。
【0224】したがって、本実施形態によれば、メール
の暗号化、あるいは暗号化されたメールの復号化のため
の処理を自動的に行わせることができる。
【0225】なお、通常の電子メールシステムでは、複
数のアドレスに対して同報通信する場合、宛先アドレス
を各々指定する操作を軽減するため、予めアドレスを一
つに纏めたメーリングリストと呼ばれるアドレスを定義
しておくことができる。本実施形態においても、メーリ
ングリストを、サーバ情報処理装置12のメールアドレ
ス管理ファイル115cに登録しておくことで、ユーザ
ーは、メーリングリストのアドレスを宛先として指定す
るだけで、当該メーリングリストに含まれる複数ユーザ
ーへの同報通信を行うことができる。
【0226】本発明は、上記の実施形態に限定されるも
のではなく、その要旨の範囲内で数々の変形が可能であ
る。
【0227】たとえば、上記の実施形態では、グループ
鍵154を用いて、メールの暗号化あるいは復号化に用
いる実効鍵127aを暗号化する場合について説明し
た。しかしながら、本発明はこれに限定されるものでは
なく、グループ鍵154を用いて直接メールを暗号化及
び復号化するようにしてもよい。
【0228】また、上記の実施形態では、一般的な電子
メールシステムを利用することを前提として説明してい
る。このため、グループ鍵154生成の基となる宛先リ
スト156aは、メールアドレスを用いて作成すること
としている。
【0229】しかしながら、宛先をメールアドレス以外
の情報(ユーザ名やユーザ固有の情報)を用いて特定で
きるシステム(たとえば、社内メールなどのLAN内で
のみ使用するメールシステム)であれば、メールアドレ
スの代わりにこれ等の情報を用いて宛先リスト156a
を作成するようにしてもよい。
【0230】図17は、本実施形態の電子メール暗号化
システムを、異なるLANに接続された端末間において
も、インターネットを介してメールのやり取りが可能な
電子メールシステムの他に、1つのLAN内でのみメー
ルのやり取りが可能な、いわゆる社内メールシステムに
も適用できるようにした場合に、ICカード15に格納
されるID情報152cの一例を示したものである。
【0231】ここでは、カテゴリ毎に、その内容を示す
データとコードとを、12組まで登録できるようにして
ある。そして、カテゴリ1〜10までが社内メールシス
テムを利用して宛先を特定する場合に利用される情報で
あり、カテゴリ11がインターネットを介してメールの
やり取りが可能な電子メールシステムを利用して宛先を
特定する場合に利用される情報、すなわちメールアドレ
スである。
【0232】ユーザが、図17に示したID情報152
cの定義を用いて宛先を指定した場合、宛先リストは、
以下のようにして作成すればよい。
【0233】「カテゴリ番号」、「データコード識別
子」、「演算子」、および「データ」を一組とし、組毎
にカンマ(,)で区切って並べる。このカンマは、論理
和の意味を持つ。演算子には、等しい(=)の他、大小
(>、<)や論理積(^)を用いる。
【0234】たとえば、自己が「システム研究所 第四
部 安全課 復号次郎」であり、復号化を許可する宛先
が、「システム研究所の第四部の主任以上のユーザ、お
よび氏名が暗号太郎であるユーザ」である場合、その宛
先リストは、「2D=復号次郎^5C=676^6C=
04^7C=402,5C=676^6C=04^8C
>=5,2D=暗号太郎」に乱数と必要に応じて空白文
字が付加されたものとなる。
【0235】ここで、C、Dはデータコード識別子であ
る。データコード識別子の前におかれるカテゴリ番号に
コードが割り当てられている場合は、データコード識別
子として、Cが付与される。そして、データコード識別
子の後におかれる演算子の後に、前記カテゴリ番号に対
応するコードが付与される。
【0236】一方、データコード識別子の前におかれる
カテゴリ番号にコードが割り当てられていない場合は、
データコード識別子として、Dが付与される。そして、
データコード識別子の後におかれる演算子の後に、前記
カテゴリ番号に対応するデータが付与される。
【0237】なお、社内メールシステムを利用できるよ
うにするためには、サーバ情報処理装置11に、当該サ
ーバ情報処理装置11が属するLAN1内のクライアン
ト情報処理装置12各々に装着されるICカード15の
ID情報152cを、メールアドレス管理ファイル11
5cとして登録しておく必要がある。
【0238】また、クライアント情報処理装置12にお
いても、サーバ情報処理装置11のメールアドレス管理
ファイル115cに登録された情報を、メールの宛先指
定に先立って、予め入手しておく必要がある。
【0239】さらに、本実施形態では、グループ鍵の生
成をICカード15内で行うようにしているが、本発明
はこれに限定されない。たとえば、ICカード15内の
メモリ152に格納されたプログラムおよび情報を、ク
ライアント情報処理装置12の磁気ディスク125に格
納するようにしてもよい。
【0240】さらに、クライアント情報処理装置12の
メモリ125にロードされるプログラムを記憶する媒体
は、磁気ディスクのみに限定されるものではなく、たと
えば、CD−ROMなどの記憶媒体であってもよい。
【0241】
【発明の効果】以上説明したように、本発明によれば、
データを暗号化あるいは復号化する際に、ユーザにかか
る負担を軽減させることができる。
【図面の簡単な説明】
【図1】本発明の一実施形態が適用された電子メール暗
号化システムの概略構成図である。
【図2】メールの送信側において、ICカード15がグ
ループ鍵を生成する場合の動作を説明するためのフロー
図である。
【図3】宛先リストのハッシュ値と、マスタ鍵152d
とを用いてグループ鍵を生成する手順を説明するための
図である。
【図4】メールの受け取り側において、ICカード15
がグループ鍵を生成する場合の動作を説明するためのフ
ロー図である。
【図5】共用ファイル暗号プログラム125bを構成す
るプログラムルーチンを示す図である。
【図6】通信APIフックプログラム125cを構成す
るプログラムルーチンを示す図である。
【図7】メールの送信側において、クライアント情報処
理装置12が送信メールを暗号化する場合の手順を説明
するための図である。
【図8】メールの受信側において、クライアント情報処
理装置12が受信メールを復号化する場合の手順を説明
するための図である。
【図9】クライアント情報処理装置12において、CP
U121が、共用ファイル暗号プログラム125bのロ
グイン処理ルーチン125b1を実行した場合の動作を
説明するためのフロー図である。
【図10】クライアント情報処理装置12において、C
PU121が、共用ファイル暗号プログラム125bの
ログアウト処理ルーチン125b2を実行した場合の動
作を説明するためのフロー図である。
【図11】本発明の一実施形態において、メールを暗号
化あるいは復号化する際におけるデータの入出力を説明
するための図である。
【図12】オープン中のソケットを管理するためのソケ
ット情報テーブルを示した図である。
【図13】クライアント情報処理装置12において、C
PU121が、通信APIフックプログラム125cの
sendフックルーチン125C1を実行した場合の動作を
説明するためのフロー図である。
【図14】クライアント情報処理装置12において、C
PU121が、通信APIフックプログラム125cの
sendフックルーチン125C2を実行した場合の動作を
説明するためのフロー図である。
【図15】クライアント情報処理装置12において、C
PU121が、通信APIフックプログラム125cの
close socketフックルーチン125C3を実行した場合
の動作を説明するためのフロー図である。
【図16】メールの復号権利を持つユーザと、持たない
ユーザとが、同じ暗号メールを受信した場合に、クライ
アント情報処理装置12の表示される内容の例を示した
図である。
【図17】本発明の一実施形態を、異なるLANに接続
された端末間においても、インターネットを介してメー
ルのやり取りが可能な電子メールシステムの他に、1つ
のLAN内でのみメールのやり取りが可能な、いわゆる
社内メールシステムにも適用できるようにした場合に、
ICカード15に格納されるID情報152cの一例を
示したものである。
【符号の説明】 1 LAN 2 インターネット 11 サーバ情報処理装置 12 クライアント情報処理装置 13 LANケーブル 14 ルータ 15 ICカード 41 受信バッファ 42 送信バッファ 43 平文ブロックバッファ 44 暗号文ブロックバッファ 111、121、151 CPU 112、122、152 メモリ 113、123 LANコントローラ 114、124 ディスクコントローラ 115、125 磁気ディスク 115a メールサーバプログラム 115b、125a オペレーションシステム 115c メールアドレス管理ファイル 125b 共有ファイル暗号プログラム 125c 通信APIフックプログラム 125d メールクライアントプログラム 153 入出力インターフェース 152a アクセス制御プログラム 152b グループ暗号プログラム 152c ID情報 152d マスタ鍵 154 グループ鍵 155 ハッシュ関数 156a 宛先リスト

Claims (20)

    【特許請求の範囲】
  1. 【請求項1】通信回線を介して接続された端末間で送受
    されるデータの暗号化を、鍵と呼ばれる情報を用いて行
    うデータ暗号化システムであって、 データ送信側の前記端末は、第一の鍵と所定の情報とを
    基に、第二の鍵を生成する第一の鍵生成手段と、 前記第一の鍵生成手段で生成した第二の鍵を用いて前記
    送信すべきデータの暗号化を行うとともに、前記暗号化
    したデータに、前記所定の情報を付加する暗号化手段
    と、を備え、 データ受信側の前記端末は、データ送信側の前記端末か
    ら送信された、暗号化された受信データに付加された前
    記所定の情報を基に、当該受信データを復号化する権利
    があるか否かを判断する判断手段と、 前記判断手段により前記受信データを復号化する権利が
    あると判断された場合に、前記第一の鍵と前記受信デー
    タに付加された前記所定の情報とを基に、前記暗号化手
    段が当該受信データを暗号化するのに用いた前記第二の
    鍵と同一の鍵である第三の鍵を生成する第二の鍵生成手
    段と、 前記第二の鍵生成手段で生成した第三の鍵を用いて前記
    受信データの復号化を行う復号化手段と、を備えること
    を特徴とするデータ暗号化システム。
  2. 【請求項2】請求項1記載のデータ暗号化システムであ
    って、 データ送信側の前記端末およびデータ受信側の前記端末
    は、前記通信回線を介して電子メールの送受を行うもの
    であり、 前記所定の情報とは、送信すべき電子メールの宛先情報
    であり、 前記判断手段は、データ送信側の前記端末から送信され
    た、暗号化された受信電子メールに付加された宛先情報
    に、自己に関する情報が含まれている場合に、前記受信
    電子メールを復号化する権利があるものと判断するもの
    であることを特徴とするデータ暗号化システム。
  3. 【請求項3】請求項2記載のデータ暗号化システムであ
    って、 前記暗号化手段は、送信すべき電子メールを第四の鍵を
    用いて暗号化するとともに、当該第四の鍵を前記第一の
    鍵生成手段で生成した第二の鍵を用いて暗号化し、且
    つ、前記暗号化した電子メールに、前記暗号化した第四
    の鍵および当該電子メールの宛先情報を付加するもので
    あり、 前記復号化手段は、データ送信側の前記端末から送信さ
    れた、暗号化された受信電子メールに付加された第四の
    鍵を、前記第二の鍵生成手段で生成した第三の鍵を用い
    て復号化するとともに、当該復号化した第四の鍵を用い
    て前記受信電子メールを復号化するものであることを特
    徴とするデータ暗号化システム。
  4. 【請求項4】請求項3記載のデータ暗号化システムであ
    って、 前記第一の鍵生成手段は、送信すべき電子メールの宛先
    情報を、前記第一の鍵を用いて暗号化するものであり、 前記暗号化手段は、前記暗号化した電子メールに付加す
    る宛先情報として、前記第一の鍵生成手段で暗号化され
    たものを用いるものであり、 前記第二の鍵生成手段は、データ送信側の前記端末から
    送信された、暗号化された受信電子メールに付加された
    宛先情報を、前記第一の鍵を用いて復号化するととも
    に、当該復号化した宛先情報と前記第一の鍵とを基に、
    前記暗号化手段が当該受信電子メールを暗号化するのに
    用いた第二の鍵と同一の鍵である第三の鍵を生成するも
    のであることを特徴とするデータ暗号化システム。
  5. 【請求項5】請求項2、3、又は4記載のデータ暗号化
    システムであって、 データ送信側の前記端末は、前記送信すべきの電子メー
    ルの宛先リストに乱数を付加することで、当該電子メー
    ルの宛先情報を作成する宛先情報作成手段をさらに備え
    ることを特徴とするデータ暗号化システム。
  6. 【請求項6】通信回線を介して接続された端末間で送受
    されるデータの暗号化を行うデータ暗号化システムであ
    って、 データ送信側の前記端末は、ユーザの指示にしたがい、
    データの送信を行う送信手段と、 前記送信手段によって送信されようとしているデータを
    捕獲する送信データ捕獲手段と、 前記送信データ捕獲手段で捕獲されたデータを暗号化す
    る暗号化手段と、 送信すべきデータとして、前記暗号化手段で暗号化され
    たデータを前記送信手段に返還する送信データ返還手段
    と、を備え、 データ受信側の前記端末は、ユーザの指示にしたがっ
    て、データ送信側の前記端末から送信された、暗号化さ
    れたデータの受信を行い、受信したデータを表示する受
    信手段と、 前記受信手段によって表示されようとしている、当該受
    信手段が受信したデータを捕獲する受信データ捕獲手段
    と、 前記受信データ捕獲手段で捕獲されたデータを復号化す
    る復号化手段と、 表示すべきデータとして、前記復号化手段で復号化され
    たデータを前記受信手段に返還する受信データ返還手段
    と、 を備えていることを特徴とするデータ暗号化システム。
  7. 【請求項7】請求項6記載のデータ暗号化システムであ
    って、 前記復号化手段は、前記受信データ捕獲手段で捕獲され
    たデータが復号化することができないものである場合
    に、当該データにその旨のメッセージを付加するもので
    あり、 前記受信データ返還手段は、表示すべきデータとして、
    前記復号化手段でメッセージが付加された、復号化され
    ていないデータを前記受信手段に返還するものであるこ
    とを特徴とするデータ暗号化システム。
  8. 【請求項8】請求項6又は7記載のデータ暗号化システ
    ムであって、 データ送信側の前記端末およびデータ受信側の前記端末
    は、前記通信回線を介して電子メールの送受を行うもの
    であることを特徴とするデータ暗号化システム。
  9. 【請求項9】通信回線を介して他の情報処理装置とデー
    タの送受を行う情報処理装置であって、 送信すべきデータを鍵と呼ばれる情報を用いて暗号化す
    る暗号化手段と、前記暗号化手段での暗号化処理に用い
    る鍵を生成する第一の鍵生成手段と、受信した、他の情
    報処理装置で暗号化されたデータを前記鍵を用いて復号
    化する復号化手段と、前記復号化手段での復号化処理に
    用いる鍵を生成する第二の鍵生成手段と、を備え、 前記第一の鍵生成手段は、第一の鍵と所定の情報とを基
    に、第二の鍵を生成するものであり、 前記暗号化手段は、前記第一の鍵生成手段で生成した第
    二の鍵を用いて前記送信すべきデータの暗号化を行うと
    ともに、前記暗号化したデータに、前記所定の情報を付
    加するものであり、 前記第二の鍵生成手段は、受信データに付加された所定
    の情報を基に、当該データを復号化する権利があるか否
    かを判断する判断手段を有し、 前記判断手段により前記受信データを復号化する権利が
    あると判断された場合に、前記第一の鍵と前記受信デー
    タに付加された前記所定の情報とを基に、他の情報処理
    装置の前記暗号化手段が当該受信データを暗号化するの
    に用いた第二の鍵と同一の鍵である第三の鍵を生成する
    ものであり、 前記復号化手段は、前記第二の鍵生成手段で生成した第
    三の鍵を用いて前記受信データの復号化を行うものであ
    ることを特徴とする情報処理装置。
  10. 【請求項10】請求項9記載の情報処理装置であって、 当該情報処理装置は、前記通信回線を介して他の情報処
    理装置と電子メールの送受を行うものであり、 前記所定の情報とは、送信すべき電子メールの宛先情報
    であり、 前記判断手段は、受信した電子メールに付加された宛先
    情報に、自己に関する情報が含まれている場合に、前記
    受信した電子メールを復号化する権利があるものと判断
    するものであることを特徴とする情報処理装置。
  11. 【請求項11】請求項10記載の情報処理装置であっ
    て、 前記暗号化手段は、送信すべき電子メールを第四の鍵を
    用いて暗号化するとともに、当該第四の鍵を前記第一の
    鍵生成手段で生成した第二の鍵を用いて暗号化し、且
    つ、前記暗号化した電子メールに、前記暗号化した第四
    の鍵および当該電子メールの宛先情報を付加するもので
    あり、 前記復号化手段は、受信した電子メールに付加された第
    四の鍵を、前記第二の鍵生成手段で生成した第三の鍵を
    用いて復号化するとともに、当該復号化した第四の鍵を
    用いて前記受信した電子メールを復号化するものである
    ことを特徴とする情報処理装置。
  12. 【請求項12】通信回線を介して他の情報処理装置とデ
    ータの送受を行う情報処理装置であって、 ユーザの指示にしたがい、データの送信を行う送信手段
    と、 前記送信手段によって送信されようとしているデータを
    捕獲する送信データ捕獲手段と、 前記送信データ捕獲手段で捕獲されたデータを暗号化す
    る暗号化手段と、送信すべきデータとして、前記暗号化
    手段で暗号化されたデータを前記送信手段に返還する送
    信データ返還手段と、 ユーザの指示にしたがってデータの受信を行い、受信し
    たデータを表示する受信手段と、 前記受信手段によって表示されようとしている、当該受
    信手段が受信したデータを捕獲する受信データ捕獲手段
    と、 前記受信データ捕獲手段で捕獲されたデータを復号化す
    る復号化手段と、 表示すべきデータとして、前記復号化手段で復号化され
    たデータを前記受信手段に返還する受信データ返還手段
    と、 を備えていることを特徴とする情報処理装置。
  13. 【請求項13】請求項12記載の情報処理装置であっ
    て、 当該情報処理装置は、前記通信回線を介して電子メール
    の送受を行うものであることを特徴とする情報処理装
    置。
  14. 【請求項14】通信回線を介して他の情報処理装置とデ
    ータの送受を行う通信機能と、鍵と呼ばれる情報を用い
    て、送信すべきデータを暗号化したり、受信した暗号化
    されたデータを復号化したりするデータ暗号化機能と、
    を有する情報処理装置に装着されるICカードであっ
    て、 第一の鍵と所定の情報とを基に、自己が装着された情報
    処理装置での送信データの暗号化処理に用いる第二の鍵
    を生成する第二の鍵生成手段と、 自己が装着された情報処理装置が受信した、他の情報処
    理装置から送信された、暗号化データに付加された所定
    の情報を基に、当該暗号化データを復号化する権利があ
    るか否かを判断する判断手段と、 前記判断手段により前記暗号化データを復号化する権利
    があると判断された場合に、前記第一の鍵と前記暗号化
    データに付加された前記所定の情報とを基に、自己が装
    着された情報処理装置での受信データの復号化処理に用
    いる鍵であって、当該受信データを送信した他の情報処
    理装置に装着された前記ICカードの、前記第一の鍵生
    成手段で生成された第二の鍵と同一の鍵である第三の鍵
    を生成する第二の鍵生成手段と、 を備えることを特徴とするICカード。
  15. 【請求項15】請求項14記載のICカードであって、 当該ICカードが装着される情報処理装置は、前記通信
    回線を介して電子メールの送受を行うものであることを
    特徴とするICカード。
  16. 【請求項16】通信回線を介して他の情報処理装置とデ
    ータの送受を行う通信機能を有する情報処理装置におい
    て、 鍵と呼ばれる情報を用いてデータの暗号化および復号化
    処理を行うためのプログラムが記録された記録媒体であ
    って、 前記情報処理装置が前記通信機能によりデータを送信す
    る場合に、当該情報処理装置の記憶部に格納された第一
    の鍵と所定の情報とを基に、当該送信データの暗号化処
    理に用いる第二の鍵を生成する機能と、 前記生成した第二の鍵を用いて送信すべきデータを暗号
    化する機能と、 前記情報処理装置が前記通信機能により暗号化されたデ
    ータを受信した場合に、当該受信データに付加された所
    定の情報を基に、当該情報処理装置が当該受信データを
    復号化する権利があるか否かを判断する機能と、 当該受信データを復号化する権利があると判断した場合
    に、前記第一の鍵と当該受信データに付加された所定の
    情報とを基に、当該受信データの復号化処理に用いる鍵
    であって、他の情報処理装置が当該受信データを暗号化
    するのに用いた第二の鍵と同一の鍵である第三の鍵を生
    成する機能と、 を前記情報処理装置に実現させるためのプログラムが記
    録された記録媒体。
  17. 【請求項17】通信回線を介して他の情報処理装置とデ
    ータの送受を行う通信機能を有する情報処理装置におい
    て、 前記通信機能により送信されるデータの暗号化処理を自
    動的に行うためのプログラムが記録された記録媒体であ
    って、 前記情報処理装置に、前記送信機能が用意する送信バッ
    ファに格納された送信データを捕獲する機能と、 前記捕獲した送信データの暗号化を行う機能と、 前記暗号化した送信データを前記送信バッファに返還す
    る機能と、 を実行させるためのプログラムが記録された記録媒体。
  18. 【請求項18】通信回線を介して他の情報処理装置とデ
    ータの送受を行う通信機能を有する情報処理装置におい
    て、 前記通信機能により受信される暗号化されたデータの復
    号化処理を自動的に行うためのプログラムが記録された
    記録媒体であって、 前記情報処理装置に、前記送信機能が用意する受信バッ
    ファに格納された受信データを捕獲する機能と、 前記捕獲した受信データの復号化を行う機能と、前記復
    号化した受信データを前記受信バッファに返還する機能
    と、 を実行させるためのプログラムが記録された記録媒体。
  19. 【請求項19】通信回線を介して接続された端末間で送
    受されるデータの暗号化を、鍵と呼ばれる情報を用いて
    行うデータ暗号化方法であって、 データ送信側の前記端末において、第一の鍵と所定の情
    報とを基に、第二の鍵を生成する第一の鍵生成工程と、 前記第一の鍵生成工程で生成された第二の鍵を用いて送
    信すべきデータの暗号化を行うとともに、暗号化したデ
    ータに、前記所定の情報を付加する暗号化工程と、 前記暗号化工程で暗号化されたデータを送信する送信工
    程と、を有し、 データ受信側の前記端末において、データ送信側の前記
    端末から送信された、暗号化された受信データに付加さ
    れた前記所定の情報を基に、当該受信データを復号化す
    る権利があるか否かを判断する判断工程と、 前記判断工程において前記受信データを復号化する権利
    があると判断された場合に、前記第一の鍵と前記受信デ
    ータに付加された前記所定の情報とを基に、当該受信デ
    ータを暗号化するのに用いた第二の鍵と同一の鍵である
    第三の鍵を生成する第二の鍵生成工程と、 前記第二の鍵生成工程で生成された第三の鍵を用いて前
    記受信データの復号化を行う工程と、を有することを特
    徴とするデータ暗号化方法。
  20. 【請求項20】通信回線を介して接続された端末間で送
    受されるデータの暗号化を行うデータ暗号化方法あっ
    て、 データ送信側の前記端末において、ユーザの指示にした
    がい、データの送信を行う送信工程と、 送信されようとしているデータを捕獲する送信データ捕
    獲工程と、 前記捕獲工程で捕獲されたデータを暗号化する暗号化工
    程と、 送信すべきデータとして、前記暗号化工程で暗号化され
    たデータを前記送信工程に返還する送信データ返還工程
    と、を有し、 データ受信側の前記端末において、ユーザの指示にした
    がって、データ送信側の前記端末から送信された、暗号
    化されたデータの受信を行い、受信したデータを表示す
    る受信工程と、 前記受信工程によって表示されようとしている、当該受
    信工程で受信したデータを捕獲する受信データ捕獲手段
    と、 前記受信データ捕獲工程で捕獲されたデータを復号化す
    る復号化工程と、 表示すべきデータとして、前記復号化工程で復号化され
    たデータを前記受信工程に返還する受信データ返還工程
    と、を有することを特徴とするデータ暗号化方法。
JP9158421A 1997-06-16 1997-06-16 データ暗号化システム、情報処理装置、icカード、記録媒体およびデータの暗号方法 Pending JPH118615A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP9158421A JPH118615A (ja) 1997-06-16 1997-06-16 データ暗号化システム、情報処理装置、icカード、記録媒体およびデータの暗号方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9158421A JPH118615A (ja) 1997-06-16 1997-06-16 データ暗号化システム、情報処理装置、icカード、記録媒体およびデータの暗号方法

Publications (1)

Publication Number Publication Date
JPH118615A true JPH118615A (ja) 1999-01-12

Family

ID=15671397

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9158421A Pending JPH118615A (ja) 1997-06-16 1997-06-16 データ暗号化システム、情報処理装置、icカード、記録媒体およびデータの暗号方法

Country Status (1)

Country Link
JP (1) JPH118615A (ja)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001022357A1 (en) * 1999-09-17 2001-03-29 Silverbrook Research Pty Ltd Business card as electronic mail authorization token
JP2002259305A (ja) * 2001-03-01 2002-09-13 Matsushita Graphic Communication Systems Inc 暗号化メール配信システム
WO2003098869A1 (en) * 2002-05-06 2003-11-27 Rhandeev Singh A method of processing electronic mail
JP2006041684A (ja) * 2004-07-23 2006-02-09 Sony Corp 暗号処理装置および暗号処理方法
JP2006262450A (ja) * 2005-02-17 2006-09-28 Ricoh Co Ltd 電子機器,情報管理方法および情報管理プログラム
JP2006311625A (ja) * 2006-08-18 2006-11-09 Toshiba Corp 放送装置、受信装置、放送方法及び受信方法
CN100459494C (zh) * 2002-05-21 2009-02-04 索尼株式会社 信息处理系统和认证介质的访问控制方法
US7558563B2 (en) 1999-09-17 2009-07-07 Silverbrook Research Pty Ltd Retrieving contact details via a coded surface
US8391478B2 (en) 2005-04-25 2013-03-05 Nokia Corporation System and method for broadcast environment group key-derivation
US11286562B2 (en) 2018-06-08 2022-03-29 Asm Ip Holding B.V. Gas-phase chemical reactor and method of using same

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7907968B2 (en) 1999-09-17 2011-03-15 Silverbrook Research Pty Ltd Retrieving contact details using a printed medium
WO2001022357A1 (en) * 1999-09-17 2001-03-29 Silverbrook Research Pty Ltd Business card as electronic mail authorization token
US7558563B2 (en) 1999-09-17 2009-07-07 Silverbrook Research Pty Ltd Retrieving contact details via a coded surface
US6963845B1 (en) 1999-09-17 2005-11-08 Silverbrook Research Pty Ltd Business card as electronic mail authorization token
US7646503B2 (en) 1999-09-17 2010-01-12 Silverbrook Research Pty Ltd Printing a business card using a mobile device
US8112120B2 (en) 1999-09-17 2012-02-07 Silverbrook Research Pty Ltd Contact details retrieval using a printed medium
US7952743B2 (en) 1999-09-17 2011-05-31 Silverbrook Research Pty Ltd Mobile telephone for printing a business card
US7738921B2 (en) 1999-09-17 2010-06-15 Silverbrook Research Pty Ltd Retrieving contact details using a printed medium
JP2002259305A (ja) * 2001-03-01 2002-09-13 Matsushita Graphic Communication Systems Inc 暗号化メール配信システム
JP4558967B2 (ja) * 2001-03-01 2010-10-06 パナソニックシステムネットワークス株式会社 暗号化メール配信システム及びメールサーバ装置
WO2003098869A1 (en) * 2002-05-06 2003-11-27 Rhandeev Singh A method of processing electronic mail
CN100459494C (zh) * 2002-05-21 2009-02-04 索尼株式会社 信息处理系统和认证介质的访问控制方法
JP2006041684A (ja) * 2004-07-23 2006-02-09 Sony Corp 暗号処理装置および暗号処理方法
JP2006262450A (ja) * 2005-02-17 2006-09-28 Ricoh Co Ltd 電子機器,情報管理方法および情報管理プログラム
US8391478B2 (en) 2005-04-25 2013-03-05 Nokia Corporation System and method for broadcast environment group key-derivation
JP2006311625A (ja) * 2006-08-18 2006-11-09 Toshiba Corp 放送装置、受信装置、放送方法及び受信方法
US11286562B2 (en) 2018-06-08 2022-03-29 Asm Ip Holding B.V. Gas-phase chemical reactor and method of using same

Similar Documents

Publication Publication Date Title
US5638448A (en) Network with secure communications sessions
US5812671A (en) Cryptographic communication system
US7653815B2 (en) System and method for processing encoded messages for exchange with a mobile data communication device
US6799197B1 (en) Secure method and system for using a public network or email to administer to software on a plurality of client computers
JP4148979B2 (ja) 電子メールシステム、電子メール中継装置、電子メール中継方法及び電子メール中継プログラム
JP2002024147A (ja) セキュアメールプロキシシステム及び方法並びに記録媒体
US20050076082A1 (en) Method and system for managing the exchange of files attached to electronic mails
US20030023559A1 (en) Method for securing digital information and system therefor
US20080031458A1 (en) System, methods, and apparatus for simplified encryption
US8484459B2 (en) Secure transfer of information
US20160248734A1 (en) Multi-Wrapped Virtual Private Network
EP1151573A1 (en) Secure messaging system and method
JP2005107935A (ja) 電子メール処理装置用プログラム及び電子メール処理装置
JPH118615A (ja) データ暗号化システム、情報処理装置、icカード、記録媒体およびデータの暗号方法
JP2001203761A (ja) 中継装置、および同装置を備えたネットワークシステム
JP2007281622A (ja) 電子メールシステム、電子メール中継装置、電子メール中継方法及び電子メール中継プログラム
CA2639092A1 (en) System and method for displaying a security encoding indicator associated with a message attachment
GB2423679A (en) E-mail server with encryption / decryption and signing / verification capability
JP2009055155A (ja) ゲートウェイ装置
JP4250148B2 (ja) セキュアな電子メールフォーマットの伝送
JP2002521970A (ja) セキュリティを施したメッセージの管理システム
JP7116972B1 (ja) ファイル転送システム
JPH09139735A (ja) 暗号化データ通信システム
WO2000046952A1 (en) Method for sending secure email via standard browser
JP2007258769A (ja) 個人情報保護方式及び方法