JP2006174519A - Method and apparatus for security - Google Patents

Method and apparatus for security Download PDF

Info

Publication number
JP2006174519A
JP2006174519A JP2006074133A JP2006074133A JP2006174519A JP 2006174519 A JP2006174519 A JP 2006174519A JP 2006074133 A JP2006074133 A JP 2006074133A JP 2006074133 A JP2006074133 A JP 2006074133A JP 2006174519 A JP2006174519 A JP 2006174519A
Authority
JP
Japan
Prior art keywords
public key
common key
key
secret
time
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
JP2006074133A
Other languages
Japanese (ja)
Inventor
Kazuki Matsui
一樹 松井
Tatsuro Matsumoto
達郎 松本
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2006074133A priority Critical patent/JP2006174519A/en
Publication of JP2006174519A publication Critical patent/JP2006174519A/en
Pending legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To easily and surely protect contents of conversations in an electronic conference room. <P>SOLUTION: The present invention may be used together with a chat system or the like. A command interpretation unit 3 specifies a channel name CHi, time Ti and private key Si under participation in a predetermined timing, notifies a common key generation unit 5 of them and instructs the generation of a common key CSi. The common key generation unit 5 generates the common key from CHi, Ti and Si and stores it in a common key storage unit 6. The common key generation unit 5 associates generated common keys with timing information indicating their generation timings and stores them. An encryption/decryption unit 8 encrypts inputted conversation data using a latest common key and sends them out to a communication device together with the timing information of the common key. Conversation data are received from another user terminal via the communication device and decrypts them using the common key. The common key to be used for decryption is acquired from the common key storage unit 6 based according to timing information transmitted together with the conversation data. <P>COPYRIGHT: (C)2006,JPO&NCIPI

Description

本発明は、電子会議室での会話のセキュリティを高める技術に関する。さらに詳しくは、チャットシステムや電子メールのメーリングリストなど、複数の利用者が同一の電子会議室を共有して通信する場合に、通信内容のセキュリティを高める技術に関する。
ここで、チャットシステムとは、複数の利用者端末が同一空間、すなわちチャネルを共有して同時に会話可能なシステムである。メーリングリストとは、複数の利用者が登録されたリストのアドレスに電子メールを送信することにより、同一内容を複数の利用者に配信可能するシステムである。
The present invention relates to a technology for improving the security of conversation in an electronic conference room. More particularly, the present invention relates to a technology for improving the security of communication contents when a plurality of users communicate by sharing the same electronic conference room, such as a chat system and an e-mail mailing list.
Here, the chat system is a system in which a plurality of user terminals can talk simultaneously while sharing the same space, that is, a channel. A mailing list is a system in which the same content can be distributed to a plurality of users by sending an e-mail to an address of a list in which a plurality of users are registered.

近年、パソコン通信やインターネットの普及により、ネットワーク上での複数の利用者間のコミュニケーションが活発になってきている。なかでも、従来からある電子掲示板やメーリングリストのような非同期のコミュニケーションだけでなく、リアルタイムなコミュニケーション、すなわち会話ができるチャットシステムの利用が増えている。このようなコミュニケーションシステムでは、複数の利用者が互いに同一の仮想空間を共有し、この仮想空間、すなわちチャネルを会議室としてその中に入室している利用者に会話の閲覧、発言を限定するのが一般的である。   In recent years, with the spread of personal computer communication and the Internet, communication between a plurality of users on a network has become active. Among them, not only asynchronous communication such as conventional electronic bulletin boards and mailing lists, but also the use of chat systems capable of real-time communication, that is, conversation, is increasing. In such a communication system, a plurality of users share the same virtual space, and this virtual space, that is, a channel is set as a conference room, and browsing and speaking are limited to users entering the conference room. Is common.

コミュニケーションサーバ上に論理的に開催される電子会議室として、前記のメーリングリストやチャットシステムのチャネルなどがある。これらは、電子会議室に入室している複数の利用者の間でのみ、会話文の送受信を限定しており、電子会議室で発言される会話内容を会議室外の利用者には秘密にしたい。電子メール等のように1対1通信の場合には、公開鍵暗号方式を使った暗号化通信を行うことが出来る。しかし、複数の利用者が参加する電子会議室において、そこで交される会話を公開鍵暗号方式で暗号化/復号化するためには、一人一人に別々の公開鍵で暗号化しデータを配信する必要がある。従って、各利用者端末にデータを配信するサーバに、大きな負担がかかってしまう。   Electronic conference rooms that are logically held on a communication server include the mailing list and chat system channel. These limit the sending and receiving of conversation texts only among multiple users entering the electronic conference room, and want to keep conversations made in the electronic conference room confidential to users outside the conference room. . In the case of one-to-one communication such as e-mail, encrypted communication using a public key cryptosystem can be performed. However, in an electronic conference room where multiple users participate, in order to encrypt / decrypt conversations exchanged by public key cryptography, it is necessary to encrypt each person with a separate public key and distribute the data. There is. Therefore, a large burden is placed on the server that distributes data to each user terminal.

サーバへの負担を避けるためには、何らかの手段でクライアント間で暗号鍵(共通鍵)を共有しておく必要がある。この共有鍵をある任意のサーバが管理してクライアントに配布すると、共有鍵を暗号化してから配布しなければならず処理が複雑になってしまう。しかし、単純に、利用者端末に固定の秘密鍵を内蔵しておき、それを共有鍵として利用する方式では、鍵が容易に解読されてしまう危険がある。   In order to avoid a burden on the server, it is necessary to share an encryption key (common key) between clients by some means. If an arbitrary server manages this shared key and distributes it to clients, the shared key must be encrypted and distributed, which complicates processing. However, in a method in which a fixed secret key is simply built in the user terminal and used as a shared key, the key may be easily deciphered.

本発明は、複数の利用者が同時に電子会議室を共有し、コミュニケーションを行う電子会議室システムにおいて、通信路上で暗号鍵を配布する手間を省き、かつ鍵の解読を困難にし、電子会議室の利用者間で送受信されるデータの暗号化/復号化を効率的かつ安全に行宇ことを目的とする。   In an electronic conference room system in which a plurality of users share an electronic conference room at the same time and perform communication, it is possible to save the trouble of distributing an encryption key on a communication path and make it difficult to decrypt the key. The object is to efficiently and safely perform encryption / decryption of data transmitted and received between users.

前記課題を解決するために、本発明1は、複数の利用者端末が互いに同一の電子会議室を共有して通信を行う通信システムに接続される利用者端末が実行するセキュリティ方法を提供する。この方法は以下のステップを含んでいる。
・予め秘密鍵を生成する時間間隔を設定しておき、設定された時間間隔が経過する度にその時点の時刻情報を前記利用者端末から取得し、取得した時刻情報に基づいて秘密鍵を生成する秘密鍵生成ステップ、
・時刻情報と、その時刻情報に基づいて前記秘密鍵生成ステップで生成された秘密鍵と、を対応付けて蓄積する秘密鍵記憶ステップ、
・前記電子会議室における変化を検知した際に、その変化を検知した時刻に基づいて、前記秘密鍵記憶ステップで蓄積されている秘密鍵のうちの1つを特定し、特定した秘密鍵に基づいて公開鍵を生成する公開鍵生成ステップ、
・前記公開鍵生成ステップで生成された公開鍵と、この公開鍵を特定するための公開鍵識別情報と、を対応付けて蓄積する公開鍵記憶ステップ、
・会話データを送信する際に、前記公開鍵記憶ステップで蓄積された公開鍵のうち、最新に蓄積された公開鍵と公開鍵識別情報とを用いて前記会話データを暗号化し、暗号化した会話データと共に前記公開鍵識別情報を送信する暗号化処理ステップ、
・会話データと共に公開鍵識別情報を受信した際に、受信した公開鍵識別情報に基づいて前記公開鍵記憶ステップで蓄積された公開鍵のうちの1つを特定し、特定した公開鍵にて受信した会話データを復号化する復号化処理ステップ。
In order to solve the above-described problem, the present invention 1 provides a security method executed by a user terminal connected to a communication system in which a plurality of user terminals share the same electronic conference room and perform communication. This method includes the following steps.
-A time interval for generating a secret key is set in advance, and whenever the set time interval elapses, time information at that time is acquired from the user terminal, and a secret key is generated based on the acquired time information. Secret key generation step,
A secret key storage step of storing time information and the secret key generated in the secret key generation step based on the time information in association with each other;
When a change in the electronic conference room is detected, one of the secret keys stored in the secret key storage step is specified based on the time when the change is detected, and based on the specified secret key A public key generation step for generating a public key
A public key storage step for storing the public key generated in the public key generation step and the public key identification information for specifying the public key in association with each other;
When the conversation data is transmitted, the conversation data is encrypted by using the latest public key stored in the public key storage step and the public key identification information, and the encrypted conversation. An encryption processing step of transmitting the public key identification information together with data;
When the public key identification information is received together with the conversation data, one of the public keys stored in the public key storage step is specified based on the received public key identification information, and received with the specified public key A decryption processing step for decrypting the conversation data.

この方法において、電子会議室における変化とは、電子会議室に参加するためのパスワードの変化、電子会議室を共有する利用者の変化、共通鍵の変更の指示、利用者端末における発言、ファイルの転送の指示などが生じた場合を言う。チャットシステムに本発明を適用する場合を例に取れば、チャネルに参加しているユーザを変更するコマンド“JOIN”や“PART”をチャットクライアントから取得すると、公開鍵が生成される。例えば、ユーザがチャネルから脱退したタイミングで公開鍵を生成し、この公開鍵を用いて会話データを暗号化することにより、脱退したユーザは不正に会話内容を盗聴できなくなる。   In this method, the change in the electronic conference room is a change in the password for joining the electronic conference room, a change in the user sharing the electronic conference room, an instruction to change the common key, a statement in the user terminal, a file This is the case when a transfer instruction or the like occurs. Taking the case where the present invention is applied to a chat system as an example, when a command “JOIN” or “PART” for changing a user participating in a channel is acquired from a chat client, a public key is generated. For example, by generating a public key at the timing when the user withdraws from the channel and encrypting the conversation data using this public key, the withdrawn user cannot illegally eavesdrop on the conversation contents.

本発明2は、複数の利用者端末が互いに同一の電子会議室を共有して通信を行う通信システムに接続される利用者端末に搭載されるセキュリティ装置を提供する。この装置は以下の構成要件を備えている。
・予め秘密鍵を生成する時間間隔を設定しておき、設定された時間間隔が経過する度にその時点の時刻情報を前記利用者端末から取得し、取得した時刻情報に基づいて秘密鍵を生成する秘密鍵生成部、
・時刻情報と、その時刻情報に基づいて前記秘密鍵生成部が生成した秘密鍵と、を対応付けて蓄積する秘密鍵記憶部、
・前記電子会議室における変化を検知した際に、その変化を検知した時刻に基づいて、前記秘密鍵記憶部に蓄積されている秘密鍵のうちの1つを特定し、特定した秘密鍵に基づいて公開鍵を生成する公開鍵生成部、
・前記公開鍵生成部が生成した公開鍵と、この公開鍵を特定するための公開鍵識別情報と、を対応付けて蓄積する公開鍵記憶部、
・会話データを送信する際に、前記公開鍵記憶部に蓄積された公開鍵のうち、最新に蓄積された公開鍵と公開鍵識別情報とを前記公開鍵記憶部から読み出して前記会話データを暗号化し、暗号化した会話データと共に前記公開鍵識別情報を送信する暗号化処理部、
・会話データと共に公開鍵識別情報を受信した際に、受信した公開鍵識別情報に基づいて前記公開鍵記憶部に蓄積された公開鍵のうちの1つを特定し、特定した公開鍵にて受信した会話データを復号化する復号化処理部。
The present invention 2 provides a security device mounted on a user terminal connected to a communication system in which a plurality of user terminals share the same electronic conference room and perform communication. This apparatus has the following configuration requirements.
-A time interval for generating a secret key is set in advance, and whenever the set time interval elapses, time information at that time is acquired from the user terminal, and a secret key is generated based on the acquired time information. Secret key generator,
A secret key storage unit that stores time information and a secret key generated by the secret key generation unit based on the time information in association with each other;
When a change in the electronic conference room is detected, one of the secret keys stored in the secret key storage unit is specified based on the time when the change is detected, and based on the specified secret key A public key generation unit for generating a public key
A public key storage unit that stores the public key generated by the public key generation unit and public key identification information for specifying the public key in association with each other;
When transmitting conversation data, out of the public keys stored in the public key storage unit, the latest stored public key and public key identification information are read from the public key storage unit to encrypt the conversation data An encryption processing unit for transmitting the public key identification information together with the encrypted conversation data,
When the public key identification information is received together with the conversation data, one of the public keys stored in the public key storage unit is specified based on the received public key identification information, and is received with the specified public key A decoding processing unit for decoding the conversation data.

前記本発明1と同様の作用効果を奏する。
本発明3は、複数の利用者端末が互いに同一の電子会議室を共有して通信を行う通信システムに接続される利用者端末が実行するセキュリティプログラムを記録した、コンピュータ読み取り可能な記録媒体を提供する。この記録媒体に記録されたセキュリティプログラムは、下記ステップを実行する。
・予め秘密鍵を生成する時間間隔を設定しておき、設定された時間間隔が経過する度にその時点の時刻情報を前記利用者端末から取得し、取得した時刻情報に基づいて秘密鍵を生成する秘密鍵生成ステップ、
・時刻情報と、その時刻情報に基づいて前記秘密鍵生成ステップで生成された秘密鍵と、を対応付けて蓄積する秘密鍵記憶ステップ、
・前記電子会議室における変化を検知した際に、その変化を検知した時刻に基づいて、前記秘密鍵記憶ステップで蓄積されている秘密鍵のうちの1つを特定し、特定した秘密鍵に基づいて公開鍵を生成する公開鍵生成ステップ、
・前記公開鍵生成ステップで生成された公開鍵と、この公開鍵を特定するための公開鍵識別情報と、を対応付けて蓄積する公開鍵記憶ステップ、
・会話データを送信する際に、前記公開鍵記憶ステップで蓄積された公開鍵のうち、最新に蓄積された公開鍵と公開鍵識別情報とを用いて前記会話データを暗号化し、暗号化した会話データと共に前記公開鍵識別情報を送信する暗号化処理ステップ、
・会話データと共に公開鍵識別情報を受信した際に、受信した公開鍵識別情報に基づいて前記公開鍵記憶ステップで蓄積された公開鍵のうちの1つを特定し、特定した公開鍵にて受信した会話データを復号化する復号化処理ステップ。
The same effects as those of the first aspect of the present invention are achieved.
The present invention 3 provides a computer-readable recording medium in which a security program executed by a user terminal connected to a communication system in which a plurality of user terminals share the same electronic conference room and perform communication is recorded. To do. The security program recorded on this recording medium executes the following steps.
-A time interval for generating a secret key is set in advance, and whenever the set time interval elapses, time information at that time is acquired from the user terminal, and a secret key is generated based on the acquired time information. Secret key generation step,
A secret key storage step of storing time information and the secret key generated in the secret key generation step based on the time information in association with each other;
When a change in the electronic conference room is detected, one of the secret keys stored in the secret key storage step is specified based on the time when the change is detected, and based on the specified secret key A public key generation step for generating a public key
A public key storage step for storing the public key generated in the public key generation step and the public key identification information for specifying the public key in association with each other;
When the conversation data is transmitted, the conversation data is encrypted by using the latest public key stored in the public key storage step and the public key identification information, and the encrypted conversation. An encryption processing step of transmitting the public key identification information together with data;
When the public key identification information is received together with the conversation data, one of the public keys stored in the public key storage step is specified based on the received public key identification information, and received with the specified public key A decryption processing step for decrypting the conversation data.

前記本発明1と同様の作用効果を奏する。
本発明1〜3に加え、本発明の別の態様として、複数の利用者端末が互いに同一の電子会議室を共有して通信を行う通信システムに用いられるセキュリティ方法も考えられる。この方法は下記の段階を含むことができる。
A;それぞれの利用者端末に共通のタイミングで、互いに共有して通信を行っている電子会議室を特定する電子会議室名、前記タイミングが生じた時刻及び秘密鍵に基づく共通鍵を各利用者端末で生成し、
B;前記生成した共通鍵と、共通鍵が生成されたタイミングを示すタイミング情報とを関連づけて各利用者端末で蓄積し、
C;前記生成した共通鍵のいずれかを用いて暗号化された通信内容を、暗号化に用いた共通鍵のタイミング情報と共に前記通信システムに送出し、
D;他の利用者端末から送信される暗号化された通信内容及び前記タイミング情報を前記通信システムから取得し、前記タイミング情報に基づいて前記いずれかの共通鍵を特定し、通信内容を復号化する。
The same effects as those of the first aspect of the present invention are achieved.
In addition to the first to third aspects of the present invention, as another aspect of the present invention, a security method used in a communication system in which a plurality of user terminals share the same electronic conference room and perform communication is also conceivable. The method can include the following steps.
A: Each user terminal has a common key based on the name of the electronic conference room that identifies the electronic conference room that is communicating with each other at a timing common to each user terminal, the time when the timing occurs, and the secret key. Generated on the terminal,
B: The generated common key and the timing information indicating the timing at which the common key is generated are associated with each other and accumulated in each user terminal,
C: Sending the communication content encrypted using any of the generated common keys to the communication system together with the timing information of the common key used for encryption,
D: Obtain encrypted communication content and timing information transmitted from another user terminal from the communication system, identify one of the common keys based on the timing information, and decrypt the communication content To do.

共通のタイミングとは、例えば日付が変わるとき、1時間間隔で毎時0分などである。電子会議室に参加している各利用者端末において、共通のタイミングで共通鍵を生成するためである。電子会議室名とは、電子会議室を特定する識別情報であり、例えばチャットシステムであればチャネル名、メーリングリストであればアドレスである。
各利用者端末で共通のタイミングで共通鍵を生成し、生成タイミングと共通鍵とを対応させて蓄積しておく。通信内容を暗号化した場合、暗号化のために用いた共通鍵の生成タイミングを暗号化したデータと共に送信する。受信側は、共通鍵の生成タイミングから、どの共通鍵で復号化すべきかが分かる。各利用者端末間で時差がある場合でも、暗号化と復号化とに用いる共通鍵を一致させることが出来る。
The common timing is, for example, 0 minute per hour at an hour interval when the date changes. This is because each user terminal participating in the electronic conference room generates a common key at a common timing. The electronic conference room name is identification information for specifying the electronic conference room, and is, for example, a channel name in the case of a chat system and an address in the case of a mailing list.
A common key is generated at a common timing in each user terminal, and the generation timing and the common key are stored in correspondence with each other. When the communication content is encrypted, the generation timing of the common key used for encryption is transmitted together with the encrypted data. The receiving side knows which common key should be used for decryption from the generation timing of the common key. Even when there is a time difference between the user terminals, the common keys used for encryption and decryption can be matched.

本発明の別の態様は、複数の利用者端末が互いに同一の電子会議室を共有して通信を行う通信装置に用いられるセキュリティ装置であって、蓄積手段と、指示手段と、生成手段と、暗号化手段と、復号化手段とを備えるセキュリティ装置を提供することができる。蓄積手段は、少なくとも1つの秘密鍵を蓄積する。指示手段は、前記複数の利用者端末に共通のタイミングで、前記通信装置が共有中の電子会議室名、時刻及び前記秘密鍵を特定し、共通鍵の生成を指示する。生成手段は、前記特定された電子会議室名、時刻及び秘密鍵に基づいて共通鍵を生成し、生成した共通鍵と前記共通のタイミングを示すタイミング情報とを関連づけて前記蓄積手段に格納する。   Another aspect of the present invention is a security device used in a communication device in which a plurality of user terminals share the same electronic conference room and perform communication, and includes a storage unit, an instruction unit, a generation unit, A security device including an encryption unit and a decryption unit can be provided. The storage means stores at least one secret key. The instructing means specifies the name of the electronic conference room shared by the communication device, the time, and the secret key at a timing common to the plurality of user terminals, and instructs generation of a common key. The generation unit generates a common key based on the specified electronic conference room name, time, and secret key, and stores the generated common key and timing information indicating the common timing in association with each other in the storage unit.

暗号化手段は、前記通信装置から送信対象の通信内容を取得し、前記通信内容を前記最新の共通鍵を用いて暗号化し、用いた共通鍵の前記タイミング情報と暗号化した通信内容とを含む通信メッセージを前記通信装置に送出する。復号化手段は、前記他の利用者端末から送信された前記通信メッセージを前記通信装置から取得し、取得した通信メッセージから前記タイミング情報を抽出し、前記タイミング情報に基づいて前記蓄積手段から共通鍵を特定し、前記暗号化された通信内容を復号化する。   The encryption means acquires communication contents to be transmitted from the communication device, encrypts the communication contents using the latest common key, and includes the timing information of the used common key and the encrypted communication contents. A communication message is sent to the communication device. The decrypting means acquires the communication message transmitted from the other user terminal from the communication device, extracts the timing information from the acquired communication message, and extracts a common key from the storage means based on the timing information. And the encrypted communication content is decrypted.

前記の指示手段は、所定のタイミングで、参加中の電子会議室名CHi、時刻Ti及び秘密鍵Siを特定し、生成手段に通知して共通鍵CSiの生成を指示する。生成手段は、電子会議室名CHi、時刻Ti及び秘密鍵Siに基づいて共通鍵を生成し、蓄積手段に蓄積する。さらに、生成手段は、次々に生じる変化に応じて生成される各共通鍵と、生成タイミングを示すタイミング情報とを関連づけて蓄積する。   The instruction means specifies the participating electronic conference room name CHi, time Ti, and secret key Si at a predetermined timing, notifies the generation means to instruct generation of the common key CSi. The generation unit generates a common key based on the electronic conference room name CHi, the time Ti, and the secret key Si, and stores the common key in the storage unit. Further, the generating means stores each common key generated according to a change that occurs one after another and timing information indicating generation timing in association with each other.

暗号化手段は、利用者端末において入力される会話内容を最新の共通鍵を用いて暗号化し、共通鍵のタイミング情報と暗号化された会話データとを含む通信メッセージを、通信装置を介して送出する。復号化手段は、通信装置を介して他の利用者端末から通信メッセージを受け取り、会話データを共通鍵で復号化する。復号化に用いる共通鍵は、通信メッセージに含まれているタイミング情報に基づいて蓄積手段から取得する。   The encryption means encrypts the conversation content input at the user terminal using the latest common key, and sends a communication message including the common key timing information and the encrypted conversation data via the communication device. To do. The decrypting means receives a communication message from another user terminal via the communication device, and decrypts the conversation data with the common key. The common key used for decryption is acquired from the storage means based on the timing information included in the communication message.

例えば、毎時0分で共通鍵が生成される場合を考える。利用者端末Aにおいてそれぞれ11:59に発言された会話データは、利用者端末Aで11:00に生成された共通鍵CS11aで暗号化される。復号化手段は、暗号化された会話データ及び暗号化に用いた共通鍵の生成時刻を示すタイミング情報を通信メッセージに記載し、通信装置に送出する。この通信メッセージを受け取る利用者端末Bにおいては、時刻がすでに12:01だとすると、利用者端末Bにおける最新の共通鍵は12:00に生成された共通鍵CS12bになる。しかし、利用者端末Bの復号化手段は、通信メッセージに含まれるタイミング情報から、暗号化に用いられた共通鍵は11:00に生成されたことが分かる。そこで、復号化手段は、1つ前の共通鍵CS11bを蓄積手段から取得し、会話データを復号化する。各利用者端末において共通のタイミングで共通鍵を生成することにより、通信路上で暗号鍵を配布することが不要となる。しかも、時間変化により共有鍵を更新することにより、共通鍵の解読を困難にする。共通鍵が生成されるタイミングを共通鍵と共に記憶することにより、利用者端末間における時差から生じる共通鍵のずれを防止できる。   For example, consider a case where a common key is generated at 0 minutes every hour. The conversation data uttered at 11:59 on the user terminal A is encrypted with the common key CS11a generated on the user terminal A at 11:00. The decrypting means describes the encrypted conversation data and the timing information indicating the generation time of the common key used for encryption in the communication message, and sends them to the communication device. In the user terminal B that receives this communication message, if the time is already 12:01, the latest common key in the user terminal B is the common key CS12b generated at 12:00. However, the decryption means of the user terminal B knows from the timing information included in the communication message that the common key used for encryption was generated at 11:00. Therefore, the decryption means obtains the previous common key CS11b from the storage means and decrypts the conversation data. By generating a common key at a common timing in each user terminal, it becomes unnecessary to distribute the encryption key on the communication path. Moreover, it is difficult to decrypt the common key by updating the shared key with time. By storing the generation timing of the common key together with the common key, it is possible to prevent the common key from being shifted due to the time difference between the user terminals.

前記別態様のセキュリティ装置において、前記指示手段が、前記電子会議室における変化を検出して前記共通のタイミングとし、前記電子会議室名、変化が生じた時刻及び前記秘密鍵を特定して前記生成手段に通知し、共通鍵の生成を指示してもよい。
電子会議室における変化とは、電子会議室に参加するためのパスワードの変化、電子会議室を共有する利用者の変化、共通鍵の変更の指示、利用者端末における発言、ファイルの転送の指示などが生じた場合を言う。
In the security device according to another aspect, the instructing unit detects the change in the electronic meeting room and sets the common timing, specifies the electronic meeting room name, the time when the change occurred, and the secret key, and generates the information. A means may be notified to instruct generation of a common key.
Changes in the electronic conference room include changes in passwords for participation in the electronic conference room, changes in users sharing the electronic conference room, instructions for changing the common key, statements on the user terminal, instructions for transferring files, etc. Say when happens.

前記別態様のセキュリティ装置において、前記蓄積手段には、複数の秘密鍵が時間と関連づけられて蓄積されており、前記指示手段は、前記共通のタイミングが生じた時刻に基づいていずれかの秘密鍵を特定してもよい。
例えば、指示手段が毎時0分に共通鍵CSi(i=00〜23)の生成を指示する場合に、毎時間毎の秘密鍵Sj(j=00〜23)を24個準備しておく。指示手段は、共通鍵CSiの生成には、秘密鍵Sj(i=j)を用いる。また、電子会議室における変化が例えば13:46に生じた場合、指示手段は秘密鍵Sj(j=13)を蓄積手段から取得する。
In the security device according to another aspect, the storage unit stores a plurality of secret keys in association with time, and the instruction unit stores any one of the secret keys based on the time at which the common timing occurs. May be specified.
For example, when the instruction means instructs generation of the common key CSi (i = 00 to 23) at 0 minutes per hour, 24 secret keys Sj (j = 00 to 23) are prepared for each hour. The instructing means uses the secret key Sj (i = j) for generating the common key CSi. When a change in the electronic conference room occurs at, for example, 13:46, the instruction unit acquires the secret key Sj (j = 13) from the storage unit.

前記別態様のセキュリティ装置において、前記蓄積手段は、前記秘密鍵に代えて秘密鍵生成手段を蓄積していてもよい。
秘密鍵生成手段とは、具体的には秘密鍵生成プログラムである。秘密鍵そのものを内蔵することをさけ、秘密鍵を解読されにくく、ひいては共通鍵を解読されにくくする。
前記別態様のセキュリティ装置において、前記共通のタイミングを示すタイミング情報として、前記共通のタイミングが生じた時刻を用いてもよい。
In the security device according to another aspect, the storage unit may store a secret key generation unit instead of the secret key.
Specifically, the secret key generating means is a secret key generating program. Avoiding the incorporation of the secret key itself, making it difficult for the secret key to be deciphered and thus making the common key difficult to decipher.
In the security device according to another aspect, the time at which the common timing occurs may be used as the timing information indicating the common timing.

通常、利用者端末内には時計が内蔵されているので、共通のタイミングが生じた時刻を内部時計から取得し、その時刻を共通鍵と関連づけて蓄積する。利用者端末間で内部時計に時差がある場合でも、互いの共通鍵の対応付けが容易になる。
前記別態様のセキュリティ装置において、前記暗号化手段が、利用者による暗号化の指示を受け付け、前記指示に基づいて前記通信内容の暗号化を行うこともできる。
Usually, since a clock is built in the user terminal, the time when the common timing occurs is obtained from the internal clock, and the time is stored in association with the common key. Even when there is a time difference between internal clocks between user terminals, it becomes easy to associate mutual common keys.
In the security device according to another aspect, the encryption unit may receive an instruction for encryption by a user and encrypt the communication content based on the instruction.

例えば、暗号化手段は、暗号化のオン/オフを指定するためのコマンドボタンを画面上に表示し、コマンドボタンに従って暗号化を行う。利用者が通信相手や会話内容に応じて暗号化及びその解除を行うことが出来る。
前記別態様のセキュリティ装置において、前記暗号化手段が、前記通信内容が暗号化されていることを識別するためのフラグをさらに含む前記通信メッセージを、前記通信装置に送出することもできる。さらに、前記復号化手段は、前記通信装置から取得する通信メッセージのフラグに従って復号化を行うことができる。暗号化された通信内容を、自動的に復号化して表示することが出来る。
For example, the encryption unit displays a command button for designating on / off of encryption on the screen, and performs encryption according to the command button. The user can perform encryption and decryption according to the communication partner and conversation contents.
In the security device according to another aspect, the encryption unit may send the communication message further including a flag for identifying that the communication content is encrypted to the communication device. Furthermore, the decoding means can perform decoding according to a flag of a communication message acquired from the communication device. The encrypted communication content can be automatically decrypted and displayed.

前記別態様のセキュリティ装置において、前記暗号化手段が、前記通信内容が暗号化されていることを識別するためのフラグをさらに含む前記通信メッセージを、前記通信装置に送出することができる。さらに、前記復号化手段は、前記他の利用者端末から送信された通信メッセージのフラグに従い、通信内容が暗号化されているか否かを視覚的に示すマークを出力することができる。   In the security device according to another aspect, the encryption unit may send the communication message further including a flag for identifying that the communication content is encrypted to the communication device. Furthermore, the decryption means can output a mark visually indicating whether or not the communication content is encrypted according to the flag of the communication message transmitted from the other user terminal.

復号化手段は、受け取った通信内容が暗号化されているか否かを示すために、鍵マークなどを、チャネル名や会話文字列の先頭などに表示する。利用者は、暗号化されているか否かを視覚的に判断することが出来る。
前記別態様のセキュリティ装置において、前記指示手段が、前記電子会議室に参加するためのパスワードを前記通信装置から取得し、前記電子会議室名、時刻及び秘密鍵に加えてさらに前記パスワードを通知して共通鍵の生成を指示し、前記生成手段が、前記通知される電子会議室名、時刻、秘密鍵及びパスワードに基づいて共通鍵を生成してもよい。
The decrypting means displays a key mark or the like at the beginning of the channel name or conversation character string to indicate whether or not the received communication content is encrypted. The user can visually determine whether or not it is encrypted.
In the security device according to another aspect, the instruction unit acquires a password for joining the electronic conference room from the communication device, and further notifies the password in addition to the electronic conference room name, time, and secret key. The generation unit may generate a common key based on the notified electronic conference room name, time, secret key, and password.

例えば、チャットシステムにおいて、チャネルに入室するためのパスワードが設定されている場合がある。このパスワードを、共通鍵の変数の1つとして用いることにより、共通鍵の解読をさらに困難にすることが出来る。
前記別態様のセキュリティ装置において、前記共通のタイミングは、利用者端末において日付が代わるタイミングであってもよい。
For example, in a chat system, a password for entering a channel may be set. By using this password as one of the variables of the common key, it is possible to make the decryption of the common key more difficult.
In the security device according to another aspect, the common timing may be a timing at which a date is changed in the user terminal.

指示手段は、利用者端末内の時計から時刻を1分ごとに取得し、その時刻が00:00となると、共通鍵の生成を指示する。電子会議室に変化が生じなくても、また利用者によるアクションが生じなくても、自動的に共通鍵を更新することが出来る。
前記別態様のセキュリティ装置において、前記共通のタイミングは、所定の時間間隔ごとに発生するタイミングであってもよい。
The instructing means obtains the time every minute from the clock in the user terminal, and instructs the generation of the common key when the time reaches 00:00. Even if there is no change in the electronic conference room and no action is taken by the user, the common key can be automatically updated.
In the security device according to another aspect, the common timing may be a timing that occurs every predetermined time interval.

例えば1時間毎などの所定の時間間隔で自動的に共通鍵を生成する。前述の別態様のセキュリティ装置と同様の作用効果を有する。
前記別態様のセキュリティ装置において、前記共通のタイミングは、前記電子会議室を共有する利用者端末の構成に変化が生じたタイミングであってもよい。
チャットシステムを例に取れば、指示手段は、チャネルに参加しているユーザを変更するコマンド"JOIN"や"PART"をチャットクライアントから取得すると、共通鍵の生成を指示する。例えば、脱退したタイミングで共通鍵を更新することにより、脱退したユーザは不正に会話内容を盗聴できなくなる。
For example, a common key is automatically generated at predetermined time intervals such as every hour. It has the same effect as the security device of another aspect described above.
In the security device according to another aspect, the common timing may be a timing at which a change occurs in a configuration of user terminals that share the electronic conference room.
Taking the chat system as an example, the instruction means instructs generation of a common key when a command “JOIN” or “PART” for changing a user participating in the channel is acquired from the chat client. For example, by updating the common key at the time of withdrawal, the withdrawn user cannot illegally eavesdrop on the conversation contents.

前記別態様のセキュリティ装置において、前記電子会議室にパスワードが設定されている場合、前記共通のタイミングは、前記電子会議室に設定されているパスワードが変更されたタイミングであってもよい。
チャットシステムを例に取れば、指示手段は、パスワードを変更するコマンド"MODE #CH +k"をチャットクライアントから取得すると、共通鍵の生成を指示する。パスワードが変更されたことに応じて共通鍵を変更することにより、第3者の盗聴をさらに困難にすることが可能である。
In the security device according to another aspect, when a password is set in the electronic conference room, the common timing may be a timing when the password set in the electronic conference room is changed.
Taking the chat system as an example, when the command means “MODE #CH + k” for changing the password is obtained from the chat client, the instruction means instructs generation of a common key. By changing the common key in response to the password being changed, it is possible to make it more difficult for a third party to eavesdrop.

前記別態様のセキュリティ装置において、前記共通のタイミングは、共通鍵の変更が指示されるタイミングであってもよい。
チャットシステムを例に取れば、共通鍵の変更を指示する、チャットサーバの管理者だけが使用可能なコマンドを用意しておく。指示手段は、前記コマンドをチャットクライアントから取得すると、共通鍵の生成を指示する。管理者の所望する任意のタイミングで共通鍵を変更でき、会話内容のセキュリティをさらに高めることが出来る。
In the security device according to another aspect, the common timing may be a timing at which a change of a common key is instructed.
Taking the chat system as an example, a command that can be used only by the chat server administrator to change the common key is prepared. When the command is acquired from the chat client, the command means instructs to generate a common key. The common key can be changed at any timing desired by the administrator, and the security of the conversation content can be further enhanced.

前記別態様のセキュリティ装置において、前記生成手段は、前記蓄積手段に蓄積する共通鍵の最大数の設定を受け付け、前記最大数まで共通鍵を格納した後は、最も古い共通鍵を消去して新しく生成した共通鍵を格納することができる。
蓄積される共通鍵の最大数を設定可能にすることで、利用者端末の資源を有効に活用できる。
In the security device according to another aspect, the generation unit receives a setting of the maximum number of common keys stored in the storage unit, and after storing the common keys up to the maximum number, deletes the oldest common key and newly creates a new one. The generated common key can be stored.
By making it possible to set the maximum number of stored common keys, the resources of the user terminal can be used effectively.

本発明の別態様は、複数の利用者端末が互いに同一の電子会議室を共有して通信を行う通信装置に用いられる、セキュリティプログラムを記録したコンピュータ読み取り可能な記録媒体であって、下記A〜E段階を実行させるセキュリティプログラムを記録した、コンピュータ読み取り可能な記録媒体を提供する。
A;少なくとも1つの秘密鍵を蓄積する段階、
B;前記複数の利用者端末に共通のタイミングで、前記通信装置が共有中の電子会議室名、時刻及び前記秘密鍵を特定し、共通鍵の生成を指示する段階、
C;前記特定された電子会議室名、時刻及び秘密鍵に基づいて共通鍵を生成し、生成した共通鍵と前記共通のタイミングを示すタイミング情報とを関連づけて前記蓄積手段に格納する段階、
D;前記通信装置から送信対象の通信内容を取得し、前記通信内容を前記最新の共通鍵を用いて暗号化し、用いた共通鍵の前記タイミング情報と暗号化した通信内容とを含む通信メッセージを前記通信装置に送出する段階、
E;前記通信装置から前記通信メッセージを取得し、取得した通信メッセージから前記タイミング情報を抽出し、前記タイミング情報に基づいて前記蓄積手段から共通鍵を特定し、前記暗号化された通信内容を復号化する段階。
Another aspect of the present invention is a computer-readable recording medium on which a security program is recorded, which is used in a communication apparatus in which a plurality of user terminals share the same electronic conference room and perform communication. A computer-readable recording medium on which a security program for executing the E stage is recorded is provided.
A; accumulating at least one secret key;
B: Specifying the name and time of the electronic conference room shared by the communication device at a timing common to the plurality of user terminals, the secret key, and instructing the generation of a common key;
C; generating a common key based on the specified electronic conference room name, time and secret key, and storing the generated common key in association with timing information indicating the common timing in the storage unit;
D: Obtaining communication contents to be transmitted from the communication device, encrypting the communication contents using the latest common key, and including a communication message including the timing information of the used common key and the encrypted communication contents Sending to the communication device;
E; acquiring the communication message from the communication device, extracting the timing information from the acquired communication message, specifying a common key from the storage unit based on the timing information, and decrypting the encrypted communication content Stage.

本発明の別態様は、互いに同一の電子会議室を共有して通信を行う複数の利用者端末と、前記利用者端末に前記通信を配信するサーバとからなるセキュリティシステムを提供する。このセキュリティシステムの利用者端末は、蓄積手段と、指示手段と、生成手段と、暗号化手段と、復号化手段とを備えている。
蓄積手段は、少なくとも1つの秘密鍵を蓄積する。指示手段は、前記複数の利用者端末に共通のタイミングで、前記通信装置が共有中の電子会議室名、時刻及び前記秘密鍵を特定し、共通鍵の生成を指示する。生成手段は、前記特定された電子会議室名、時刻及び秘密鍵に基づいて共通鍵を生成し、生成した共通鍵と前記共通のタイミングを示すタイミング情報とを関連づけて前記蓄積手段に格納する。
Another aspect of the present invention provides a security system comprising a plurality of user terminals that communicate by sharing the same electronic conference room, and a server that distributes the communication to the user terminals. The user terminal of this security system includes storage means, instruction means, generation means, encryption means, and decryption means.
The storage means stores at least one secret key. The instructing means specifies the name of the electronic conference room shared by the communication device, the time, and the secret key at a timing common to the plurality of user terminals, and instructs generation of a common key. The generation unit generates a common key based on the specified electronic conference room name, time, and secret key, and stores the generated common key and timing information indicating the common timing in association with each other in the storage unit.

暗号化手段は、前記通信装置から送信対象の通信内容を取得し、前記通信内容を前記最新の共通鍵を用いて暗号化し、用いた共通鍵の前記タイミング情報と暗号化した通信内容とを含む通信メッセージを前記通信装置に送出する。復号化手段は、前記他の利用者端末から送信された前記通信メッセージを前記通信装置から取得し、取得した通信メッセージから前記タイミング情報を抽出し、前記タイミング情報に基づいて前記蓄積手段から共通鍵を特定し、前記暗号化された通信内容を復号化する。   The encryption means acquires communication contents to be transmitted from the communication device, encrypts the communication contents using the latest common key, and includes the timing information of the used common key and the encrypted communication contents. A communication message is sent to the communication device. The decrypting means acquires the communication message transmitted from the other user terminal from the communication device, extracts the timing information from the acquired communication message, and extracts a common key from the storage means based on the timing information. And the encrypted communication content is decrypted.

前述の別態様のセキュリティ装置と同様の作用効果を有する。   It has the same effect as the security device of another aspect described above.

本発明を用いれば、各利用者端末において時間的に変化する共通鍵を各端末で共通のタイミングで生成するので、鍵を配布する必要がなく、解読のおそれを少なくすることが出来る。暗号化された通信内容と共に、共通鍵の生成のタイミングを通知することにより、端末間に時間差が存在しても、暗号化に用いた共通鍵で復号化することが出来る。   If the present invention is used, a common key that changes with time in each user terminal is generated at a common timing in each terminal, so there is no need to distribute the key, and the possibility of decryption can be reduced. By notifying the generation timing of the common key together with the encrypted communication content, it is possible to decrypt with the common key used for encryption even if there is a time difference between the terminals.

以下、実施形態例を挙げながら、本発明のセキュリティシステムについて具体的に説明する。
<第1実施形態例>
今、例としてチャットシステムにおける会話内容を暗号化/復号化する場合を例に取り、説明する。チャットシステムは、チャットサーバと、チャットクライアントが動作可能な利用者端末とが、データを送受信するための通信ネットワークで接続されて構成される。通信ネットワークとしては、LAN(Local Area Network)やInternetなどのコンピュータネットワークが挙げられる。チャットシステムのサーバは、チャネルの利用者及び管理者やチャネルを管理し、会話内容を各利用者端末に配信している。なお、チャットシステムにおける例では、電子会議室の識別子としてチャネル名を用いるが、例えば電子メールのメーリングリストであれば、メーリングリストのアドレス、例えば"foo@bar.com"という文字列を使用する。
Hereinafter, the security system of the present invention will be specifically described with reference to an embodiment.
<First embodiment>
As an example, a case where the conversation content in the chat system is encrypted / decrypted will be described as an example. The chat system is configured by connecting a chat server and a user terminal capable of operating a chat client via a communication network for transmitting and receiving data. Examples of the communication network include computer networks such as a LAN (Local Area Network) and the Internet. The server of the chat system manages channel users and managers and channels, and distributes conversation contents to each user terminal. In the example in the chat system, a channel name is used as the identifier of the electronic conference room. For example, in the case of an e-mail mailing list, a mailing list address, for example, a character string “foo@bar.com” is used.

図1は、第1実施形態例に係るセキュリティシステムの全体構成図である。図1に示すように、セキュリティシステムは、チャットシステムを構成する利用者端末に、それぞれセキュリティ装置を設けることにより構成される。
[セキュリティ装置]
図2に、各利用者端末に設けられたセキュリティ装置の機能構成図を示す。図2のセキュリティ装置8は、秘密鍵記憶部1、秘密鍵保持部2、コマンド解釈部3、時間取得部4、共通鍵生成部5、共有鍵記憶部6及び暗号化/復号化部7を有している。
FIG. 1 is an overall configuration diagram of a security system according to the first embodiment. As shown in FIG. 1, the security system is configured by providing a security device to each user terminal that configures the chat system.
[Security device]
FIG. 2 shows a functional configuration diagram of the security device provided in each user terminal. 2 includes a secret key storage unit 1, a secret key holding unit 2, a command interpretation unit 3, a time acquisition unit 4, a common key generation unit 5, a shared key storage unit 6, and an encryption / decryption unit 7. Have.

秘密鍵記憶部1は、利用者端末内部のメモリに複数の秘密鍵Siを記憶している。図3に、秘密鍵テーブルの概念図を示す。複数の秘密鍵Siは、例えば時間と関連づけられて秘密鍵テーブルに登録され、時刻により秘密鍵が変化するようにしておくと好ましい。図3は、毎時間毎の秘密鍵が予め用意されて毎時0分で秘密鍵が変更される例を示す。例えば00:00〜00:59までの時刻においては、インデックス番号”0”の秘密鍵S0が有効である。また、複数の秘密鍵生成プログラムをインデックスと対応付けて秘密鍵テーブルに格納し、インデックスを指定することにより秘密鍵をその都度生成するようにしてもよい。   The secret key storage unit 1 stores a plurality of secret keys Si in a memory inside the user terminal. FIG. 3 shows a conceptual diagram of the secret key table. The plurality of secret keys Si are preferably registered in the secret key table in association with, for example, time, and the secret key is preferably changed according to time. FIG. 3 shows an example in which a secret key for each hour is prepared in advance and the secret key is changed at 0 minutes every hour. For example, at the time from 00:00 to 00:59, the private key S0 with the index number “0” is valid. Further, a plurality of secret key generation programs may be stored in the secret key table in association with the index, and the secret key may be generated each time by specifying the index.

秘密鍵保持部2は、コマンド解釈部3または時間取得部4から渡される時刻データTiを用いてインデックスを求め、秘密鍵記憶部1から秘密鍵Siを取り出し、コマンド解釈部3または時間取得部4に渡す。図3を例に取ると、10:00〜10:59までの時刻データTiがインデックスとして指定されると、秘密鍵保持部2はインデックス番号”10”をキーに秘密鍵テーブルを検索し、対応する秘密鍵S10を取得する。後述するように、秘密鍵Siを用いて共通鍵を生成する場合には、共通鍵を生成する時刻からインデックス番号を求め、用いる秘密鍵を取得する。   The secret key holding unit 2 obtains an index using the time data Ti passed from the command interpretation unit 3 or the time acquisition unit 4, extracts the secret key Si from the secret key storage unit 1, and extracts the command interpretation unit 3 or the time acquisition unit 4. To pass. Taking FIG. 3 as an example, when time data Ti from 10: 0 to 10:59 is specified as an index, the secret key holding unit 2 searches the secret key table using the index number “10” as a key, and The secret key S10 to be acquired is acquired. As will be described later, when the common key is generated using the secret key Si, the index number is obtained from the time when the common key is generated, and the secret key to be used is acquired.

コマンド解釈部3は、チャットクライアントにおける様々なトリガの発生を検出し、トリガが発生したチャネル名CHi、時刻データTi及び秘密鍵Siを通知して、共通鍵の生成を共通鍵生成部5に指示する。チャネルCHiにパスワードPiが設定されている場合、コマンド解釈部3はパスワードPiを併せて共通鍵生成部5に送出し、共通鍵の生成を指示する。具体的には、コマンド解釈部3は、チャネルに関する何らかの変化、すなわちトリガが発生した場合、そのチャネル名をチャットクライアントから取得する。チャネルにパスワードPiが設定されている場合は、パスワードも取得する。さらに、コマンド解釈部3は、トリガが発生した時刻データTiを時刻取得部から取得し、取得した時刻データTiを秘密鍵保持部2に渡し、秘密鍵保持部2から秘密鍵Siを取得する。以下に、コマンド解釈部3がチャットクライアントから検出するトリガの具体例を挙げる。   The command interpreter 3 detects the occurrence of various triggers in the chat client, notifies the channel name CHi, the time data Ti and the secret key Si in which the trigger has occurred, and instructs the common key generator 5 to generate a common key. To do. When the password Pi is set for the channel CHi, the command interpretation unit 3 sends the password Pi together to the common key generation unit 5 and instructs generation of the common key. Specifically, the command interpretation unit 3 acquires the channel name from the chat client when some change relating to the channel, that is, a trigger occurs. If the password Pi is set for the channel, the password is also acquired. Further, the command interpretation unit 3 acquires the time data Ti when the trigger is generated from the time acquisition unit, passes the acquired time data Ti to the secret key holding unit 2, and acquires the secret key Si from the secret key holding unit 2. Below, the specific example of the trigger which the command interpretation part 3 detects from a chat client is given.

(1)コマンド解釈部3は、例えばチャネルに参加している構成員の変化やチャネルのパスワードの変更などを知らせるメッセージデータをチャットクライアントから取得した場合、共通鍵生成部5に共通鍵の生成を指示する。図4に、コマンド解釈部3がチャットクライアントから取得するメッセージデータD1の概念構造図を示す。図4に示すように、メッセージデータD1は、送信元識別子及び送信先識別子が含まれるヘッダ部と、データ部とからなる。送信元識別子は、送信者やサーバのIPアドレスなどである。送信先識別子は、チャネル名や特定のユーザのIPアドレスなどである。データ部には、チャネルにおける変化を示すデータが記載される。   (1) When the command interpreter 3 acquires message data from the chat client informing the change of the members participating in the channel or the change of the channel password, for example, the command interpreter 3 generates the common key in the common key generator 5. Instruct. FIG. 4 shows a conceptual structural diagram of message data D1 that the command interpreter 3 acquires from the chat client. As shown in FIG. 4, the message data D1 includes a header portion including a transmission source identifier and a transmission destination identifier, and a data portion. The source identifier is the IP address of the sender or server. The destination identifier is a channel name, an IP address of a specific user, or the like. In the data portion, data indicating a change in the channel is described.

例えば、チャネルの構成員が変化した場合、メッセージデータD1のデータ部には、構成員の変更を示すコマンド”JOIN”や”PART”などと、変更があった利用者端末のIPアドレスとが記載されている。コマンド解釈部3は、前記コマンドに従って共通鍵生成部5に指示を出す。
また、例えばチャネル名#CH1のパスワードP1が”newP1”に変化した場合、コマンド解釈部は、図5に示すメッセージデータD2をチャットクライアントから取得する。メッセージデータD2のデータ部には、パスワードの変更を示すコマンド、例えば”MODE #CH1 +k ”と、新しいパスワード"newP1"とが記載される。コマンド解釈部3は、前記コマンドを解釈し、共通鍵生成部5に共通鍵の生成を指示する。
For example, when the channel member changes, the data portion of the message data D1 includes commands “JOIN” and “PART” indicating the member change and the IP address of the user terminal that has changed. Has been. The command interpretation unit 3 issues an instruction to the common key generation unit 5 according to the command.
For example, when the password P1 of the channel name # CH1 changes to “newP1”, the command interpreter acquires message data D2 shown in FIG. 5 from the chat client. In the data part of the message data D2, a command indicating a password change, for example, “MODE # CH1 + k” and a new password “newP1” are described. The command interpretation unit 3 interprets the command and instructs the common key generation unit 5 to generate a common key.

(2)コマンド解釈部3は、チャットクライアントから共通鍵の生成を指示するメッセージデータD3を取得すると、共通鍵の生成を共通鍵生成部5に指示する。図6にメッセージデータD3の概念構造図を示す。メッセージデータD3は、チャネルの管理者により送出され、サーバで管理者からのメッセージであるか否かを確認した後に、サーバから各チャットクライアントに配信される。この場合、メッセージデータD3のデータ部には共通鍵の生成を指示するコマンドが記載される。例えば、”MODE #CHi +c ”のコマンドに従って、コマンド解釈部3は共通鍵生成部5に共通鍵の生成を指示する。但し、このコマンドは別途新たに設けておく必要がある。   (2) When the command interpretation unit 3 acquires message data D3 instructing generation of a common key from the chat client, the command interpretation unit 3 instructs the common key generation unit 5 to generate a common key. FIG. 6 shows a conceptual structural diagram of the message data D3. The message data D3 is sent out by the channel manager, and after being confirmed by the server as to whether or not the message is from the manager, it is distributed from the server to each chat client. In this case, a command for instructing the generation of the common key is described in the data portion of the message data D3. For example, in accordance with the command “MODE #CHi + c”, the command interpretation unit 3 instructs the common key generation unit 5 to generate a common key. However, this command needs to be newly provided separately.

(3)コマンド解釈部3は、送信する会話データをチャットクライアントから取得した場合、暗号化が指示されていれば、共通鍵生成部5に共通鍵の生成を指示し、かつ暗号化/復号化部7に会話データを送出する。暗号化の指示については後述する。コマンド解釈部3は、暗号化が指示されていない場合は、共通鍵生成部5への指示を行わず、単に会話データを暗号化/復号化部7に送出して通信メッセージの作成を依頼する。   (3) When the conversation data to be transmitted is acquired from the chat client, the command interpretation unit 3 instructs the common key generation unit 5 to generate a common key and encrypts / decrypts if the encryption is instructed. The conversation data is sent to the unit 7. The encryption instruction will be described later. If the encryption is not instructed, the command interpretation unit 3 does not give an instruction to the common key generation unit 5, but simply sends the conversation data to the encryption / decryption unit 7 to request creation of a communication message. .

時間取得部4は、所定のタイミングで時刻データTiを取得し、取得した時刻データTiに基づいて秘密鍵Siを取得する。さらに、チャットクライアントから参加中のチャネル名CHiやそのチャネルのパスワードPiを取得して、時刻データTi及び秘密鍵Siと共に共通鍵生成部5に送出して共通鍵の生成を指示する。まず、時間取得部4は、所定のタイミングで時刻データTiを取得する。時刻データTiの取得手段として、具体的には、利用者端末の内部時計を利用する時刻データ取得プログラムルーチンを用いるとよい。通常、この時刻データ取得プログラムルーチンは、情報端末上で動作するオペレーティングシステムにより提供されている。時刻データTiとしては、時刻データ取得プログラムルーチンが出力するGMT (1970年1月1日からの通算秒)を使用するとよい。時刻データを取得する所定のタイミングとは、例えば1分間隔で時刻データを取得し、その時刻がその日の午前0:00になった時点や、毎時0分の時点などが考えられる。時間取得部4は、取得した時刻データTiを秘密鍵保持部2に送出し、時刻データTiに対応する秘密鍵Siを取得する。   The time acquisition unit 4 acquires time data Ti at a predetermined timing, and acquires the secret key Si based on the acquired time data Ti. Further, the channel name CHi and the password Pi of the channel that are participating from the chat client are acquired and transmitted to the common key generation unit 5 together with the time data Ti and the secret key Si to instruct generation of the common key. First, the time acquisition unit 4 acquires time data Ti at a predetermined timing. Specifically, as a means for acquiring the time data Ti, a time data acquisition program routine that uses the internal clock of the user terminal may be used. Usually, this time data acquisition program routine is provided by an operating system operating on the information terminal. As the time data Ti, it is preferable to use GMT (total seconds since January 1, 1970) output by the time data acquisition program routine. The predetermined timing for acquiring the time data may be, for example, the time when the time data is acquired at an interval of 1 minute and the time becomes 0:00 am of the day, or the time of 0 minutes per hour. The time acquisition unit 4 sends the acquired time data Ti to the secret key holding unit 2 and acquires the secret key Si corresponding to the time data Ti.

共通鍵生成部5は、コマンド解釈部3や時間取得部4からの指示に従い、取得するチャネル名CHiと秘密鍵Siと時刻データTiと、あればパスワードPiとに基づいて共通鍵CSiを生成する。共通鍵の生成には通常用いられる一方向関数Fを使用すればよい。従って、共通鍵CSiは、CSi=F(秘密鍵Si、チャネル名CHi、時間データTi)により求められる。具体的には、一方向関数としてMD5 (Message Digest Algorithm 参照:RFC1321)を使用し、出力される128ビット長のハッシュ値を共通鍵CSiとする。   The common key generation unit 5 generates a common key CSi based on the acquired channel name CHi, secret key Si, time data Ti, and password Pi, if any, according to instructions from the command interpretation unit 3 and the time acquisition unit 4. . A common one-way function F may be used to generate the common key. Therefore, the common key CSi is obtained by CSi = F (secret key Si, channel name CHi, time data Ti). Specifically, MD5 (see Message Digest Algorithm: RFC1321) is used as a one-way function, and the output 128-bit hash value is set as a common key CSi.

また、共通鍵生成部5は、生成した共通鍵CSiを、共通鍵が生成されたタイミングと関連付けて共通鍵記憶部6に格納する。図7に、利用者端末A及びBの各共通鍵記憶部6に蓄積された共通鍵テーブルの概念図を示す。図7において、バージョンは共通鍵が生成されたタイミングを示している。本実施形態例では、毎時0分に時間取得部4からの指示に従って共通鍵を生成し、さらにコマンド解釈部3が何らかのトリガを検出した場合はコマンド解釈部3の指示に従って共通鍵を生成する。バージョンとして時間が示されている共通鍵は、各利用者端末におけるその時間に生成されたことを示している。また、”ver1”、”ver2”などで示される共通鍵は、何らかのトリガにより生成されたことを示している。バージョンが一致している共通鍵は、同じタイミングで生成されている。利用者端末A及びBにおいて、バージョン及び共通鍵の順序が異なっているのは、両端末間の内部時計がずれているためである。各利用者端末において、バージョンを共通鍵と対応付けて記憶させておくことにより、暗号化に用いた共通鍵と同じバージョンの共通鍵で復号化することが可能になる。   Further, the common key generation unit 5 stores the generated common key CSi in the common key storage unit 6 in association with the timing at which the common key is generated. FIG. 7 shows a conceptual diagram of a common key table stored in each common key storage unit 6 of the user terminals A and B. In FIG. 7, the version indicates the timing when the common key is generated. In the present embodiment, a common key is generated according to an instruction from the time acquisition unit 4 at 0 minutes every hour, and when the command interpretation unit 3 detects any trigger, a common key is generated according to the instruction of the command interpretation unit 3. The common key whose time is indicated as a version indicates that it is generated at that time in each user terminal. Further, the common key indicated by “ver1”, “ver2”, etc. indicates that it was generated by some kind of trigger. The common keys having the same version are generated at the same timing. The reason that the versions and the common keys are different in the user terminals A and B is that the internal clock between the terminals is shifted. By storing the version in association with the common key in each user terminal, it is possible to decrypt with the common key of the same version as the common key used for encryption.

さらに、共通鍵生成部5は、共通鍵テーブルに蓄積される共通鍵の最大数Maxの利用者による設定を受け付ける。生成した共通鍵は、最大個数Maxに達するまで共通鍵テーブルに追加されていく。共通鍵テーブルでは、共通鍵が最大数Maxまで蓄積されると、古い共通鍵から一つずつ削除され、常に最新の共通鍵が蓄積される。
暗号化/復号化部7は、送信される会話データをコマンド解釈部3から取得し、格納されている最新の共有鍵CSiを用いて会話データを暗号化し、宛先情報を付加してメッセージデータD4を作成する。図8にメッセージデータD4の概念図を示す。メッセージデータD4は、ヘッダ部及びデータ部に加えて暗号化フラグを含んでいる。暗号化フラグは、会話データが暗号化されているか否かを示すビットフィールドであり、0:暗号化オフ、1:暗号化オンである。データ部には、暗号化フラグが1の場合は暗号化された会話データが、0の場合は暗号化されない会話データが記載される。また、メッセージデータD4のヘッダ部は、送信元識別子及び送信先識別子に加えてバージョン情報を含んでいる。バージョン情報には前記共通鍵テーブルのバージョンのいずれかが記載され、暗号化に用いた共通鍵の生成タイミングが示されている。暗号化に用いた共通鍵のバージョンをメッセージデータに含ませることにより、同じバージョンの共通鍵で復号化することが可能となる。作成したメッセージデータD4は、チャットクライアントに送出され、サーバを介して他の利用者端末に送信される。
Further, the common key generation unit 5 accepts the setting by the user of the maximum number of common keys Max stored in the common key table. The generated common key is added to the common key table until the maximum number Max is reached. In the common key table, when the maximum number of common keys is accumulated, the old common key is deleted one by one, and the latest common key is always accumulated.
The encryption / decryption unit 7 acquires the conversation data to be transmitted from the command interpretation unit 3, encrypts the conversation data using the latest stored shared key CSi, adds destination information, and message data D4. Create FIG. 8 shows a conceptual diagram of the message data D4. The message data D4 includes an encryption flag in addition to the header part and the data part. The encryption flag is a bit field indicating whether the conversation data is encrypted, and is 0: encryption off, 1: encryption on. In the data portion, the encrypted conversation data is described when the encryption flag is 1, and the unencrypted conversation data is described when the encryption flag is 0. The header portion of the message data D4 includes version information in addition to the transmission source identifier and the transmission destination identifier. One of the versions of the common key table is described in the version information, and the generation timing of the common key used for encryption is shown. By including the version of the common key used for encryption in the message data, it is possible to decrypt with the same version of the common key. The created message data D4 is sent to the chat client and transmitted to other user terminals via the server.

また、暗号化/復号化部7は、利用者から会話内容を暗号化するか否かの指示を受け付ける。図9に、暗号化のオン/オフを指示するための指示ボタンが表示された画面例を示す。会話文字の暗号化を指示する場合は、指示ボタンをマウスでクリックすると指示ボタンの色が変わり、暗号化オンモードとなる。暗号化/復号化部7は、暗号化オンのモードで会話データを取得した場合、通信メッセージの暗号化フラグを1とし、データ部には暗号化した会話データを記載する。もう一度マウスクリックすると、指示ボタンの色が元に戻って暗号化オフモードになる。   The encryption / decryption unit 7 receives an instruction from the user as to whether or not to encrypt the conversation content. FIG. 9 shows an example of a screen on which an instruction button for instructing on / off of encryption is displayed. When instructing the encryption of the conversation character, clicking the instruction button with the mouse changes the color of the instruction button, and the encryption on mode is set. When the encryption / decryption unit 7 acquires conversation data in the encryption-on mode, the encryption flag of the communication message is set to 1, and the encrypted conversation data is written in the data part. When the mouse is clicked again, the color of the instruction button is restored to the encryption off mode.

一方、暗号化/復号化部7は、他の利用者端末において作成されたメッセージデータD4を、チャットクライアントから取得して復号化する。まず、メッセージデータD4を取得すると、暗号化/復号化部7は、暗号化フラグを参照し、フラグが1の場合にはヘッダ部のバージョン情報を抽出する。抽出したバージョンに基づいて共有鍵記憶部6から共有鍵CSiを取り出し、会話データの部分を抽出して共有鍵CSiにより復号化する。例えば、利用者端末A及びBの共通鍵が図7に示された状態にある場合に、利用者端末Aからバージョン"ver1"の共通鍵で暗号化したメッセージデータを送信したとする。このメッセージデータを受け取った利用者端末Bでは、メッセージデータのバージョン情報"ver1"に対応した共通鍵を共通鍵テーブルから取得し、会話データを復号化する。復号化した会話データはチャットクライアントに送出され、画面上に表示される。暗号化/復号化には、一般の暗号/復号アルゴリズムを利用したプログラムルーチンを用いることが出来る。復号化に用いる共通鍵CSiは、メッセージデータD4内のバージョン情報を参照し、バージョン情報をインデックスとして共通鍵テーブルから取り出した共通鍵CSiを用いる。   On the other hand, the encryption / decryption unit 7 obtains message data D4 created in another user terminal from the chat client and decrypts it. First, when the message data D4 is acquired, the encryption / decryption unit 7 refers to the encryption flag, and when the flag is 1, extracts the version information of the header part. The shared key CSi is extracted from the shared key storage unit 6 based on the extracted version, the conversation data part is extracted and decrypted with the shared key CSi. For example, it is assumed that message data encrypted with the common key of the version “ver1” is transmitted from the user terminal A when the common keys of the user terminals A and B are in the state shown in FIG. The user terminal B that has received the message data obtains a common key corresponding to the version information “ver1” of the message data from the common key table, and decrypts the conversation data. The decrypted conversation data is sent to the chat client and displayed on the screen. For the encryption / decryption, a program routine using a general encryption / decryption algorithm can be used. The common key CSi used for decryption refers to the version information in the message data D4, and uses the common key CSi extracted from the common key table using the version information as an index.

さらに、暗号化/復号化部7は、表示されている会話データが暗号化されているか否かを表示可能である。図10に、利用者端末の画面例を示す。図10の画面例では、送信されてくる会話データが暗号化されている場合は、チャネル名の隣に暗号化を意味するアイコンが表示されている。また、図11に、利用者端末の他の画面例を示す。図11の画面例は、送信されてくる会話データが暗号化されている場合、その会話文の先頭に暗号化を意味するアイコンが表示されている。   Further, the encryption / decryption unit 7 can display whether or not the displayed conversation data is encrypted. FIG. 10 shows a screen example of the user terminal. In the screen example of FIG. 10, when the transmitted conversation data is encrypted, an icon indicating encryption is displayed next to the channel name. FIG. 11 shows another screen example of the user terminal. In the screen example of FIG. 11, when transmitted conversation data is encrypted, an icon indicating encryption is displayed at the head of the conversation sentence.

[処理の流れ]
(1)共通鍵生成処理
次に、前記セキュリティ装置を用いた共通鍵の生成処理について説明する。図12は、コマンド解釈部3からの指示に基づく共通鍵生成処理を示すフローチャートである。図13は、時間取得部4からの指示により共通鍵生成処理を示すフローチャートである。図12及び図13に示す処理は、それぞれ独立して行われる。
[Process flow]
(1) Common Key Generation Processing Next, common key generation processing using the security device will be described. FIG. 12 is a flowchart showing a common key generation process based on an instruction from the command interpretation unit 3. FIG. 13 is a flowchart showing a common key generation process according to an instruction from the time acquisition unit 4. The processes shown in FIGS. 12 and 13 are performed independently.

まず、図12について説明する。説明を容易にするため、トリガとしてチャネルの構成員の変化、パスワードの変更及び共通鍵の変更が生じる場合を例にとって示してある。何らかのトリガが発生することにより、図12の処理が開始される。
ステップS1では、コマンド解釈部3は、チャネルの構成員に変化があったか否かを判断する。具体的には、コマンド解釈部3は、ユーザの参加コマンド”JOIN”または離脱コマンド”PART”を含むメッセージデータD1をチャットクライアントから取得した場合、ユーザに変化が生じたと判断して後述するステップS4に移行する。その他のコマンドであればステップS2に移行する。
First, FIG. 12 will be described. For ease of explanation, a case where a change in channel members, a password change, and a common key change occur as triggers is shown as an example. The process of FIG. 12 is started when any trigger occurs.
In step S1, the command interpretation unit 3 determines whether or not the channel member has changed. Specifically, when the command interpretation unit 3 acquires message data D1 including the user participation command “JOIN” or the leaving command “PART” from the chat client, the command interpretation unit 3 determines that a change has occurred in the user and performs step S4 described later. Migrate to If it is any other command, the process proceeds to step S2.

ステップS2では、コマンド解釈部3は、参加中のチャネルのパスワードに変化があったか否かを判断する。具体的には、コマンド解釈部3は、パスワードの変更コマンド”MODE #チャネル名 +k”と新しいパスワードとがデータ部に含まれたメッセージデータD2をチャットクライアントから取得した場合、パスワードが変更されたと判断してステップS4に移行する。その他の場合はステップS3に移行する。   In step S2, the command interpretation unit 3 determines whether or not the password of the participating channel has changed. Specifically, when the command interpreter 3 obtains from the chat client message data D2 in which the password change command “MODE #channel name + k” and the new password are included in the data portion, it is assumed that the password has been changed. Determination is made and the process proceeds to step S4. In other cases, the process proceeds to step S3.

ステップS3では、コマンド解釈部3は、共通鍵の変更が指示されたか否かを判断する。具体的には、コマンド解釈部3は、共通鍵の変更を指示するコマンドがデータ部に含まれたメッセージデータD3をチャットクライアントから取得した場合、共通鍵を新たに生成すると判断してステップS4に移行する。その他の場合は、処理を終了する。
コマンド解釈部3は、前記いずれかのトリガが生じたと判断すると、ステップS4の処理に移行する。ステップS4では、コマンド解釈部3が、トリガが生じたチャネル名及びそのパスワードPiをチャットクライアントから取得する。今、チャネル名をCHiとする。
In step S3, the command interpretation unit 3 determines whether or not an instruction for changing the common key is given. Specifically, when the command interpreter 3 obtains from the chat client message data D3 including a command for changing the common key in the data part, the command interpreter 3 determines that a new common key is to be generated, and proceeds to step S4. Transition. In other cases, the process ends.
If the command interpretation unit 3 determines that any of the triggers has occurred, the command interpretation unit 3 proceeds to the process of step S4. In step S4, the command interpretation unit 3 acquires the channel name and password Pi where the trigger has occurred from the chat client. Now, let the channel name be CHi.

ステップS5では、コマンド解釈部3は、トリガが生じた時刻を時刻取得部から取得し、取得した時刻を時刻データTiとする。
ステップS6では、コマンド解釈部3は、取得した時刻データTiを秘密鍵保持部2に渡す。秘密鍵保持部2は、時刻データTiからインデックス番号を求め、秘密鍵テーブルを検索して秘密鍵Siを取得し、コマンド解釈部3に送出する。
In step S5, the command interpretation unit 3 acquires the time when the trigger occurred from the time acquisition unit, and sets the acquired time as time data Ti.
In step S <b> 6, the command interpretation unit 3 passes the acquired time data Ti to the secret key holding unit 2. The secret key holding unit 2 obtains the index number from the time data Ti, searches the secret key table to acquire the secret key Si, and sends it to the command interpreting unit 3.

ステップS7では、コマンド解釈部3は、チャネル名#CHi、パスワードPi、時刻データTi及び秘密鍵Siを共通鍵生成部5に送出し、共通鍵の生成を指示する。
ステップS8では、共通鍵生成部5が、一方向関数を使用して共通鍵CSiを生成し、バージョンと関連づけて共通鍵テーブルに格納する。
次に、時間取得部4からの指示により共通鍵が生成される場合について、図13を参照して説明する。説明を容易にするため、毎時0分に共通鍵を生成する場合を例に取るが、他の時間間隔でも処理は同様である。
In step S7, the command interpretation unit 3 sends the channel name #CHi, password Pi, time data Ti, and secret key Si to the common key generation unit 5 and instructs generation of the common key.
In step S8, the common key generation unit 5 generates a common key CSi using a one-way function, and stores it in the common key table in association with the version.
Next, a case where a common key is generated by an instruction from the time acquisition unit 4 will be described with reference to FIG. For ease of explanation, a case where a common key is generated at 0 minutes per hour is taken as an example, but the processing is the same at other time intervals.

ステップS11〜12では、時間取得部4は、例えば一分おきに時刻データ取得プログラムルーチンから時刻データを取得する。
ステップS13では、取得した時刻データが毎時0分か否かを判断し、0分であればステップS14に移行する。0分でなければ再びステップS11〜12を繰り返す。
ステップS14では、時間取得部4は、取得した最新の時刻データを時刻データTiとする。
In steps S11 to S12, the time acquisition unit 4 acquires time data from the time data acquisition program routine, for example, every minute.
In step S13, it is determined whether or not the acquired time data is 0 minutes per hour. If it is 0 minutes, the process proceeds to step S14. If it is not 0 minutes, steps S11 to S12 are repeated.
In step S14, the time acquisition unit 4 sets the acquired latest time data as time data Ti.

ステップS15では、取得した時刻データTiを秘密鍵取得部に送出し、秘密鍵取得部を介して秘密鍵Siを取得する。
ステップS16では、時間取得部4は、現在参加しているチャネル名CHi及びそのチャネルのパスワードPiを、チャットクライアントから取得する。
ステップS17では、取得した時刻データTi、チャネル名CHi、パスワードPi及び秘密鍵Siを共通鍵生成部5に通知し、共通鍵の生成を指示する。その後、再びステップS11に戻り、前記処理を繰り返す。
In step S15, the acquired time data Ti is sent to the secret key acquisition unit, and the secret key Si is acquired via the secret key acquisition unit.
In step S16, the time acquisition unit 4 acquires the channel name CHi currently participating and the password Pi of the channel from the chat client.
In step S17, the acquired time data Ti, channel name CHi, password Pi, and secret key Si are notified to the common key generation unit 5 to instruct generation of the common key. Then, it returns to step S11 again and repeats the said process.

(2)暗号化/復号化処理
次に、チャットシステムにおける会話を、前記セキュリティ装置を用いて暗号化/復号化する処理の流れを説明する。図14は、前記セキュリティ装置が行う暗号化処理の流れを示すフローチャートである。図15は、前記セキュリティ装置が行う復号化処理の流れを示すフローチャートである。まず、図14の暗号化処理について説明する。暗号化/復号化部7がチャットクライアントにおいて入力された会話データを取得することにより、処理が開始される。
(2) Encryption / Decryption Processing Next, the flow of processing for encrypting / decrypting a conversation in the chat system using the security device will be described. FIG. 14 is a flowchart showing the flow of encryption processing performed by the security device. FIG. 15 is a flowchart showing a flow of decryption processing performed by the security device. First, the encryption process of FIG. 14 will be described. The process is started when the encryption / decryption unit 7 acquires the conversation data input in the chat client.

ステップS21では、暗号化/復号化部7は、暗号化オンのモードか否かを判断し、オンであればステップS22に移行する。オフであれば、会話データを暗号化する必要がないので、後述するステップS25に移行する。
ステップS22では、暗号化/復号化部7は、会話が発言された時刻データTiを時間取得部4から取得する。
In step S21, the encryption / decryption unit 7 determines whether or not the encryption is on, and if it is on, the process proceeds to step S22. If it is off, there is no need to encrypt the conversation data, so the process proceeds to step S25 described later.
In step S <b> 22, the encryption / decryption unit 7 acquires the time data Ti when the conversation is made from the time acquisition unit 4.

ステップS23では、暗号化/復号化部7は、共通鍵テーブルから最新の共通鍵CSiを取得する。また、暗号化/復号化部7は、最新の共通鍵CSiのバージョン、すなわち共通鍵が生成されたタイミングを示す情報を、共通鍵テーブルから併せて取得する。
ステップS24では、暗号化/復号化部7は、取得した共通鍵CSiを用い、会話データを暗号化する。
In step S23, the encryption / decryption unit 7 acquires the latest common key CSi from the common key table. The encryption / decryption unit 7 also acquires information indicating the latest version of the common key CSi, that is, information indicating the timing at which the common key is generated, from the common key table.
In step S24, the encryption / decryption unit 7 encrypts the conversation data using the acquired common key CSi.

ステップS25では、暗号化/復号化部7は、ヘッダ部、暗号化フラグ及びデータ部からなるメッセージデータD4を作成する。ステップS21で暗号化オンのモードと判断された場合、暗号化/復号化部7は、暗号化フラグを1とし、データ部に暗号化された会話データを記載したメッセージデータD4を作成する。ステップS21で暗号化オフのモードと判断された場合、暗号化/復号化部7は、暗号化フラグを0とし、データ部に暗号化されていない会話データを記載したメッセージデータD4を作成する。   In step S25, the encryption / decryption unit 7 creates message data D4 including a header part, an encryption flag, and a data part. If it is determined in step S21 that the encryption mode is on, the encryption / decryption unit 7 sets the encryption flag to 1, and creates message data D4 describing the encrypted conversation data in the data part. If it is determined in step S21 that the mode is the encryption off mode, the encryption / decryption unit 7 sets the encryption flag to 0, and creates message data D4 in which the unencrypted conversation data is described in the data unit.

ステップS26では、ステップS25で作成したメッセージデータD4を、チャットクライアントに送出する。送出されたメッセージデータD4は、サーバにより他の利用者端末に配信され、必要に応じて復号化される。
次に、図15の復号化処理について説明する。暗号化/復号化部7が、他の利用者端末で作成されたメッセージデータD4をチャットクライアントから取得することにより、処理が開始される。
In step S26, the message data D4 created in step S25 is sent to the chat client. The sent message data D4 is distributed to other user terminals by the server, and is decrypted as necessary.
Next, the decoding process in FIG. 15 will be described. The encryption / decryption unit 7 acquires the message data D4 created at another user terminal from the chat client, and the process is started.

ステップS31では、暗号化/復号化部7は、受信したメッセージデータの暗号化フラグが0か1かを判断し、1であればステップS32に移行する。0であれば、会話データの復号化を行う必要がないので、後述するステップS36に移行する。
ステップS32では、暗号化/復号化部7は、メッセージデータのヘッダ部に含まれているバージョン情報、すなわち共通鍵が生成されたタイミングを示す情報を、メッセージデータD4から抽出する。
In step S31, the encryption / decryption unit 7 determines whether the encryption flag of the received message data is 0 or 1. If it is 1, the process proceeds to step S32. If it is 0, there is no need to decode the conversation data, and the process proceeds to step S36 described later.
In step S32, the encryption / decryption unit 7 extracts the version information included in the header part of the message data, that is, information indicating the timing at which the common key is generated, from the message data D4.

ステップS33では、暗号化/復号化部7は、抽出したバージョン情報をインデックスとして、共通鍵テーブルから対応する共通鍵CSiを取得する。
ステップS34では、暗号化/復号化部7は、メッセージデータD4から暗号化された会話データを抽出し、取得した共通鍵CSiを用いて復号化する。
ステップS35では、暗号化/復号化部7が、会話文が表示される表示画面領域の先頭部分に、暗号化を示すアイコンを表示する。
In step S33, the encryption / decryption unit 7 acquires the corresponding common key CSi from the common key table using the extracted version information as an index.
In step S34, the encryption / decryption unit 7 extracts the encrypted conversation data from the message data D4 and decrypts it using the acquired common key CSi.
In step S35, the encryption / decryption unit 7 displays an icon indicating encryption at the top of the display screen area where the conversation text is displayed.

ステップS36では、暗号化/復号化部7は、ステップS31で暗号化フラグが0と判断した場合であるので、メッセージデータD4のデータ部に含まれている会話データをそのまま抽出する。
ステップS37では、暗号化/復号化部7は、復号化した会話データまたは抽出した会話データをチャットクライアントに送出し、表示画面上に表示させて処理を終了する。
In step S36, since the encryption / decryption unit 7 determines that the encryption flag is 0 in step S31, the conversation data included in the data part of the message data D4 is extracted as it is.
In step S37, the encryption / decryption unit 7 sends the decrypted conversation data or the extracted conversation data to the chat client, displays it on the display screen, and ends the process.

<第2実施形態例>
チャットシステムにおいて1対1で会話を行う場合には、会話する利用者の識別子を用いて電子会議室の識別子を作成することも可能である。例えば、利用者Aの識別子が文字列"foo"、利用者Bの識別子が文字列"bar"であり、利用者端末Aから利用者端末Bに対して会話を開始する場合、電子会議室の識別子を文字列"foobar"とする。
<Second Embodiment>
When a one-to-one conversation is performed in the chat system, an identifier for the electronic conference room can be created using the identifier of the user who is talking. For example, when the identifier of the user A is the character string “foo”, the identifier of the user B is the character string “bar”, and the user terminal A starts a conversation with the user terminal B, the electronic conference room Let the identifier be the string "foobar".

また、利用者端末Aから利用者端末Bにファイルを送信する場合、次のようにして共通鍵CSを生成することが考えられる。まず、利用者端末Aから利用者端末Bに対し、データ部に所定のデータを含むメッセージデータD5を送信する。メッセージデータD5のデータ部には、少なくともファイルを転送することを示すコマンド、ファイル名及びファイルのサイズを含める。両利用者端末は、メッセージデータD5のヘッダ部とデータ部とを文字列として扱い、電子会議室の識別子とみなすことにする。そうして両利用者端末で同一の共通鍵CSを生成して暗号化通信を行う。   Further, when a file is transmitted from the user terminal A to the user terminal B, it is conceivable to generate the common key CS as follows. First, message data D5 including predetermined data in the data portion is transmitted from user terminal A to user terminal B. The data portion of the message data D5 includes at least a command indicating that a file is transferred, a file name, and a file size. Both user terminals treat the header part and data part of the message data D5 as character strings and regard them as identifiers for the electronic conference room. Then, the same common key CS is generated at both user terminals to perform encrypted communication.

本発明を用いれば、各利用者端末において時間的に変化する共通鍵を各端末で共通のタイミングで生成するので、鍵を配布する必要がなく、解読のおそれを少なくすることが出来る。暗号化された通信内容と共に、共通鍵の生成のタイミングを通知することにより、端末間に時間差が存在しても、暗号化に用いた共通鍵で復号化することが出来る。   If the present invention is used, a common key that changes with time in each user terminal is generated at a common timing in each terminal, so there is no need to distribute the key, and the possibility of decryption can be reduced. By notifying the generation timing of the common key together with the encrypted communication content, it is possible to decrypt with the common key used for encryption even if there is a time difference between the terminals.

第1実施形態例に係るセキュリティシステムの全体構成図。1 is an overall configuration diagram of a security system according to a first embodiment. 第1実施形態例に係るセキュリティ装置の機能構成図。The function block diagram of the security apparatus which concerns on the example of 1st Embodiment. 秘密鍵テーブルの概念を示す説明図。Explanatory drawing which shows the concept of a secret key table. 構成員の変化を示すメッセージデータの一例。An example of message data indicating changes in members. パスワードの変化を示すメッセージデータの一例。An example of message data indicating a password change. 共通鍵の変更を指示するメッセージデータの一例。An example of the message data which instruct | indicates change of a common key. 共通鍵テーブルの概念を示す説明図。Explanatory drawing which shows the concept of a common key table. 会話データを含むメッセージデータの一例。An example of message data including conversation data. 暗号化の指示ボタンが表示された画面例を示す説明図。Explanatory drawing which shows the example of a screen on which the instruction button of encryption was displayed. 暗号化されていることを示す画面の一例。An example of a screen indicating that it is encrypted. 暗号化されていることを示す画面の他の一例。Another example of a screen indicating that it is encrypted. コマンド解釈部の指示による共通鍵生成処理の流れを示すフローチャート。The flowchart which shows the flow of a common key generation process by the instruction | indication of a command interpretation part. 時間取得部の指示による共通鍵生成処理の流れを示すフローチャート。The flowchart which shows the flow of the common key generation process by the instruction | indication of a time acquisition part. 暗号化処理の流れを示すフローチャート。The flowchart which shows the flow of an encryption process. 復号化処理の流れを示すフローチャート。The flowchart which shows the flow of a decoding process.

Claims (3)

複数の利用者端末が互いに同一の電子会議室を共有して通信を行う通信システムに接続される利用者端末が実行するセキュリティ方法であって、
予め秘密鍵を生成する時間間隔を設定しておき、設定された時間間隔が経過する度にその時点の時刻情報を前記利用者端末から取得し、取得した時刻情報に基づいて秘密鍵を生成する秘密鍵生成ステップと、
時刻情報と、その時刻情報に基づいて前記秘密鍵生成ステップで生成された秘密鍵と、を対応付けて蓄積する秘密鍵記憶ステップと、
前記電子会議室における変化を検知した際に、その変化を検知した時刻に基づいて、前記秘密鍵記憶ステップで蓄積されている秘密鍵のうちの1つを特定し、特定した秘密鍵に基づいて公開鍵を生成する公開鍵生成ステップと、
前記公開鍵生成ステップで生成された公開鍵と、この公開鍵を特定するための公開鍵識別情報と、を対応付けて蓄積する公開鍵記憶ステップと、
会話データを送信する際に、前記公開鍵記憶ステップで蓄積された公開鍵のうち、最新に蓄積された公開鍵と公開鍵識別情報とを用いて前記会話データを暗号化し、暗号化した会話データと共に前記公開鍵識別情報を送信する暗号化処理ステップと、
会話データと共に公開鍵識別情報を受信した際に、受信した公開鍵識別情報に基づいて前記公開鍵記憶ステップで蓄積された公開鍵のうちの1つを特定し、特定した公開鍵にて受信した会話データを復号化する復号化処理ステップと、
を含むセキュリティ方法。
A security method executed by a user terminal connected to a communication system in which a plurality of user terminals share the same electronic conference room and perform communication,
A time interval for generating a secret key is set in advance, and whenever the set time interval elapses, time information at that time is acquired from the user terminal, and a secret key is generated based on the acquired time information. A secret key generation step;
A secret key storage step of storing time information and the secret key generated in the secret key generation step based on the time information in association with each other;
When a change in the electronic conference room is detected, one of the secret keys stored in the secret key storage step is specified based on the time when the change is detected, and based on the specified secret key A public key generation step for generating a public key;
A public key storage step of storing the public key generated in the public key generation step and public key identification information for specifying the public key in association with each other;
When transmitting conversation data, among the public keys stored in the public key storage step, the conversation data is encrypted using the latest stored public key and public key identification information, and the encrypted conversation data And an encryption processing step for transmitting the public key identification information together with,
When the public key identification information is received together with the conversation data, one of the public keys stored in the public key storage step is identified based on the received public key identification information, and the public key is received with the identified public key A decryption processing step for decrypting the conversation data;
Including security methods.
複数の利用者端末が互いに同一の電子会議室を共有して通信を行う通信システムに接続される利用者端末に搭載されるセキュリティ装置であって、
予め秘密鍵を生成する時間間隔を設定しておき、設定された時間間隔が経過する度にその時点の時刻情報を前記利用者端末から取得し、取得した時刻情報に基づいて秘密鍵を生成する秘密鍵生成部と、
時刻情報と、その時刻情報に基づいて前記秘密鍵生成部が生成した秘密鍵と、を対応付けて蓄積する秘密鍵記憶部と、
前記電子会議室における変化を検知した際に、その変化を検知した時刻に基づいて、前記秘密鍵記憶部に蓄積されている秘密鍵のうちの1つを特定し、特定した秘密鍵に基づいて公開鍵を生成する公開鍵生成部と、
前記公開鍵生成部が生成した公開鍵と、この公開鍵を特定するための公開鍵識別情報と、を対応付けて蓄積する公開鍵記憶部と、
会話データを送信する際に、前記公開鍵記憶部に蓄積された公開鍵のうち、最新に蓄積された公開鍵と公開鍵識別情報とを前記公開鍵記憶部から読み出して前記会話データを暗号化し、暗号化した会話データと共に前記公開鍵識別情報を送信する暗号化処理部と、
会話データと共に公開鍵識別情報を受信した際に、受信した公開鍵識別情報に基づいて前記公開鍵記憶部に蓄積された公開鍵のうちの1つを特定し、特定した公開鍵にて受信した会話データを復号化する復号化処理部と、
を備えるセキュリティ装置。
A security device mounted on a user terminal connected to a communication system in which a plurality of user terminals share the same electronic conference room and perform communication,
A time interval for generating a secret key is set in advance, and whenever the set time interval elapses, time information at that time is acquired from the user terminal, and a secret key is generated based on the acquired time information. A secret key generation unit;
A secret key storage unit that stores time information and a secret key generated by the secret key generation unit based on the time information in association with each other;
When a change in the electronic conference room is detected, one of the secret keys stored in the secret key storage unit is specified based on the time when the change is detected, and based on the specified secret key A public key generation unit for generating a public key;
A public key storage unit that stores the public key generated by the public key generation unit and public key identification information for specifying the public key in association with each other;
When transmitting the conversation data, out of the public keys stored in the public key storage unit, the latest stored public key and public key identification information are read from the public key storage unit and the conversation data is encrypted. An encryption processing unit for transmitting the public key identification information together with the encrypted conversation data;
When the public key identification information is received together with the conversation data, one of the public keys stored in the public key storage unit is identified based on the received public key identification information, and the public key is received with the identified public key A decryption processing unit for decrypting conversation data;
A security device comprising:
複数の利用者端末が互いに同一の電子会議室を共有して通信を行う通信システムに接続される利用者端末が実行するセキュリティプログラムを記録した、コンピュータ読み取り可能な記録媒体であって、
予め秘密鍵を生成する時間間隔を設定しておき、設定された時間間隔が経過する度にその時点の時刻情報を前記利用者端末から取得し、取得した時刻情報に基づいて秘密鍵を生成する秘密鍵生成ステップと、
時刻情報と、その時刻情報に基づいて前記秘密鍵生成ステップで生成された秘密鍵と、を対応付けて蓄積する秘密鍵記憶ステップと、
前記電子会議室における変化を検知した際に、その変化を検知した時刻に基づいて、前記秘密鍵記憶ステップで蓄積されている秘密鍵のうちの1つを特定し、特定した秘密鍵に基づいて公開鍵を生成する公開鍵生成ステップと、
前記公開鍵生成ステップで生成された公開鍵と、この公開鍵を特定するための公開鍵識別情報と、を対応付けて蓄積する公開鍵記憶ステップと、
会話データを送信する際に、前記公開鍵記憶ステップで蓄積された公開鍵のうち、最新に蓄積された公開鍵と公開鍵識別情報とを用いて前記会話データを暗号化し、暗号化した会話データと共に前記公開鍵識別情報を送信する暗号化処理ステップと、
会話データと共に公開鍵識別情報を受信した際に、受信した公開鍵識別情報に基づいて前記公開鍵記憶ステップで蓄積された公開鍵のうちの1つを特定し、特定した公開鍵にて受信した会話データを復号化する復号化処理ステップと、
を実行するためのセキュリティプログラムを記録した、コンピュータ読み取り可能な記録媒体。
A computer-readable recording medium that records a security program executed by a user terminal connected to a communication system in which a plurality of user terminals share the same electronic conference room and perform communication,
A time interval for generating a secret key is set in advance, and whenever the set time interval elapses, time information at that time is acquired from the user terminal, and a secret key is generated based on the acquired time information. A secret key generation step;
A secret key storage step of storing time information and the secret key generated in the secret key generation step based on the time information in association with each other;
When a change in the electronic conference room is detected, one of the secret keys stored in the secret key storage step is specified based on the time when the change is detected, and based on the specified secret key A public key generation step for generating a public key;
A public key storage step of storing the public key generated in the public key generation step and public key identification information for specifying the public key in association with each other;
When transmitting conversation data, among the public keys stored in the public key storage step, the conversation data is encrypted using the latest stored public key and public key identification information, and the encrypted conversation data And an encryption processing step for transmitting the public key identification information together with,
When the public key identification information is received together with the conversation data, one of the public keys stored in the public key storage step is identified based on the received public key identification information, and the public key is received with the identified public key A decryption processing step for decrypting the conversation data;
A computer-readable recording medium on which a security program for executing the program is recorded.
JP2006074133A 2006-03-17 2006-03-17 Method and apparatus for security Pending JP2006174519A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006074133A JP2006174519A (en) 2006-03-17 2006-03-17 Method and apparatus for security

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006074133A JP2006174519A (en) 2006-03-17 2006-03-17 Method and apparatus for security

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP10276973A Division JP2000115153A (en) 1998-09-30 1998-09-30 Security method and security device

Publications (1)

Publication Number Publication Date
JP2006174519A true JP2006174519A (en) 2006-06-29

Family

ID=36674665

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006074133A Pending JP2006174519A (en) 2006-03-17 2006-03-17 Method and apparatus for security

Country Status (1)

Country Link
JP (1) JP2006174519A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007259279A (en) * 2006-03-24 2007-10-04 Nippon Telegr & Teleph Corp <Ntt> Public-key encrypted communication system, public-key encrypted communication method, and public-key encrypted communication program
JP2011248593A (en) * 2010-05-26 2011-12-08 Dainippon Printing Co Ltd Authentication processing device, authentication processing method, authentication processing program, processing system, and automated teller machine

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS59218061A (en) * 1983-05-26 1984-12-08 Toshiba Corp Cipher communication equipment
JPH01212041A (en) * 1988-02-18 1989-08-25 Hitachi Ltd Cryptographic communication system
JPH0360237A (en) * 1989-07-28 1991-03-15 Nippon Telegr & Teleph Corp <Ntt> Cryptographic key generating system
JPH04245368A (en) * 1991-01-31 1992-09-01 Fujitsu Ltd Electronic file cabinet system
JPH06233300A (en) * 1993-02-04 1994-08-19 Nippon Telegr & Teleph Corp <Ntt> Method for displaying enciphered image signal
JPH0964867A (en) * 1995-08-22 1997-03-07 Canon Inc Conference system and its control method
JPH09212089A (en) * 1996-02-05 1997-08-15 Matsushita Electric Ind Co Ltd Key sharing apparatus
JPH10257064A (en) * 1997-03-11 1998-09-25 Ricoh Co Ltd Communication control system
JP2000115153A (en) * 1998-09-30 2000-04-21 Fujitsu Ltd Security method and security device

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS59218061A (en) * 1983-05-26 1984-12-08 Toshiba Corp Cipher communication equipment
JPH01212041A (en) * 1988-02-18 1989-08-25 Hitachi Ltd Cryptographic communication system
JPH0360237A (en) * 1989-07-28 1991-03-15 Nippon Telegr & Teleph Corp <Ntt> Cryptographic key generating system
JPH04245368A (en) * 1991-01-31 1992-09-01 Fujitsu Ltd Electronic file cabinet system
JPH06233300A (en) * 1993-02-04 1994-08-19 Nippon Telegr & Teleph Corp <Ntt> Method for displaying enciphered image signal
JPH0964867A (en) * 1995-08-22 1997-03-07 Canon Inc Conference system and its control method
JPH09212089A (en) * 1996-02-05 1997-08-15 Matsushita Electric Ind Co Ltd Key sharing apparatus
JPH10257064A (en) * 1997-03-11 1998-09-25 Ricoh Co Ltd Communication control system
JP2000115153A (en) * 1998-09-30 2000-04-21 Fujitsu Ltd Security method and security device

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007259279A (en) * 2006-03-24 2007-10-04 Nippon Telegr & Teleph Corp <Ntt> Public-key encrypted communication system, public-key encrypted communication method, and public-key encrypted communication program
JP4629602B2 (en) * 2006-03-24 2011-02-09 日本電信電話株式会社 Public key encryption communication system, public key encryption communication method, client terminal, and client program
JP2011248593A (en) * 2010-05-26 2011-12-08 Dainippon Printing Co Ltd Authentication processing device, authentication processing method, authentication processing program, processing system, and automated teller machine

Similar Documents

Publication Publication Date Title
JP2000115153A (en) Security method and security device
JP4334580B2 (en) Key management system and key management method
US6381695B2 (en) Encryption system with time-dependent decryption
US7016499B2 (en) Secure ephemeral decryptability
US8290871B1 (en) Systems and methods for a secure recording environment
JP4405575B2 (en) Encryption management device, decryption management device, and program
US7853800B2 (en) Systems and methods for a secure recording environment
JP2000134193A (en) Security buildup method and system
JP2012019534A (en) Method and apparatus for managing secure collaborative transaction
CN109450777A (en) Session information extracting method, device, equipment and medium
CN109359472A (en) A kind of data encrypting and deciphering processing method, device and relevant device
JPH1020779A (en) Key changing method in open key cipher system
JP2007142504A (en) Information processing system
JP2009171542A (en) Electronic mail encryption system and electronic mail encryption program
JP2006174519A (en) Method and apparatus for security
CN109120576A (en) Data sharing method and device, computer equipment and storage medium
KR102293610B1 (en) Secure instant messaging method and attaratus thereof
JP2001285286A (en) Authentication method, recording medium, authentication system, terminal, and device for generating recording medium for authentication
JP2003229844A (en) Data transfer system
JP2009265775A (en) Mail transmission management server device and method
US20240056288A1 (en) Communication system, information processing apparatus, communication method and program
KR102387911B1 (en) Secure instant messaging method and attaratus thereof
JP3919700B2 (en) Cryptographic system and ciphertext processing method thereof
CN114430343B (en) Data synchronization method and device, electronic equipment and readable storage medium
KR101022788B1 (en) Apparatus and method of data preservating in public key infrastructure based on group

Legal Events

Date Code Title Description
RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20080929

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20080930

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090728

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090925

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100323

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110118

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20110705