JPH04268844A - Cipher using method and means therefor - Google Patents

Cipher using method and means therefor

Info

Publication number
JPH04268844A
JPH04268844A JP3028602A JP2860291A JPH04268844A JP H04268844 A JPH04268844 A JP H04268844A JP 3028602 A JP3028602 A JP 3028602A JP 2860291 A JP2860291 A JP 2860291A JP H04268844 A JPH04268844 A JP H04268844A
Authority
JP
Japan
Prior art keywords
terminal
key
encryption
cryptographic
data
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
JP3028602A
Other languages
Japanese (ja)
Inventor
Shoji Miyaguchi
庄司 宮口
Hikari Morita
光 森田
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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP3028602A priority Critical patent/JPH04268844A/en
Publication of JPH04268844A publication Critical patent/JPH04268844A/en
Pending legal-status Critical Current

Links

Abstract

PURPOSE:To make a ciphering method to be used differ for every user. CONSTITUTION:When at a terminal 1A, a ciphering means 2A is given the instruction of a key sharing method, the ciphering means 2A ciphers a common key KS2 by an initial key KS1, and sends this cipher text C2 to the terminal 1A. The terminal 1A sends C2 to the terminal 1B, and the terminal 1B sends C2 to the ciphering means 2B. The ciphering means 2B decodes C2 by the initial key KS1, and obtains the common key KS2. In the terinals 1A and 1B, data is cipher-processed by the common key KS2 by each ciphering means 2A, 2B, and is sent to the terminal, and is sent to an opposite party. The ciphering means 2A, 2B can be exchanged to the terminals 1A, 1B, and another ciphering method can be used by exchanging the ciphering means. The terminal can not know what ciphering program is used.

Description

【発明の詳細な説明】[Detailed description of the invention]

【0001】0001

【産業上の利用分野】この発明は、ネットワークに加入
した電話機、ファックス端末、テレックス端末、自動車
電話機などの様々な端末が、秘密にするためにデータを
暗号化して伝送するためや、データに対するディジタル
署名をするためや、データが改ざんされているかの確認
のために暗号を利用する方法に関する。
[Industrial Application Field] This invention is useful for various terminals such as telephones, fax terminals, telex terminals, and car telephones that have joined a network to encrypt and transmit data in order to keep it secret, and for digital transmission of data. Concerns methods of using cryptography for signatures and for checking whether data has been tampered with.

【0002】0002

【従来の技術】従来の暗号利用方法を図3を参照して説
明する。ネットワーク(通信網)100にはこれに加入
した電話機101、ファックス端末102、テレックス
端末103、自動車電話機104、個人携帯電話機10
5、パーソナルコンピュータ106、電子計算機107
、データ通信端末108などの端末が接続されている。 これら端末は、互いに暗号通信したり、或は、暗号を応
用した信頼性の高い通信、つまりディジタル著名、デー
タ改ざん有無の確認など暗号を利用した通信を行なう。 ネットワーク100は、国内ネットワークや、国際ネッ
トワークである。端末間で暗号通信を行うには、同じ暗
号を使わなければならない。このためには、各端末が共
通の暗号化および復号化手段をもつ必要がある。
2. Description of the Related Art A conventional method of using cryptography will be explained with reference to FIG. The network (communication network) 100 includes a telephone 101, a fax terminal 102, a telex terminal 103, a car telephone 104, and a personal mobile telephone 10 that have joined the network.
5. Personal computer 106, electronic computer 107
, a data communication terminal 108, and other terminals are connected thereto. These terminals perform encrypted communication with each other, or perform highly reliable communication using encryption, that is, communication using encryption, such as digital signature and confirmation of data tampering. The network 100 is a domestic network or an international network. To perform encrypted communication between devices, the same cipher must be used. For this purpose, each terminal needs to have common encryption and decryption means.

【0003】しかし次のような問題がある。即ち、■暗
号はISO等で国際標準化が行われていない、このため
、国際的な規模で、各端末が共通に使える暗号が存在し
ない、■端末によっては暗号化手順が秘密の暗号を利用
したい、■暗号が破れた場合は、直ちに他の暗号に切り
替えたい、等の暗号利用上の問題や要求がある。従来の
暗号利用上の問題や要求に答えられる暗号方式、即ち、
ネットワークに加入した全ての端末が共通の暗号を使わ
なくともよく、暗号化手順が秘密の暗号を利用でき、更
に、暗号の切り替えが容易に出来、しかも安全性が高い
暗号の利用方法は提案されていなかった。
However, there are the following problems. In other words, ■Cryptography has not been internationally standardized by ISO, etc. Therefore, there is no code that can be commonly used by all terminals on an international scale.■Depending on the terminal, it is preferable to use a code whose encryption procedure is secret. , ■ There are problems and demands regarding the use of cryptography, such as the need to immediately switch to another cipher if the cipher is broken. A cryptographic method that can answer the problems and demands of conventional cryptographic usage, i.e.
A method of using a highly secure cipher that does not require the use of a common cipher by all terminals that have joined the network, allows the encryption procedure to use a secret cipher, allows easy switching of ciphers, and is highly secure has been proposed. It wasn't.

【0004】この発明の目的は、ネットワークに加入し
た全ての端末が、共通の暗号を使わなくともよく、暗号
化手順が秘密の暗号も、また、暗号化手順を公開した暗
号も利用でき、暗号の切り替えが容易に出来、しかも安
全性が高い暗号利用方法を提供することにある。この発
明の説明に先立ち、暗号に関する用語を説明する。 (暗号化と復号化、暗号アルゴリズム)暗号化とは、平
文pを、暗号化アルゴリズムEにより、鍵k1で暗号化
し、暗号文cを得ることを言う。これを、数式で次のよ
うに表す。 c=E(k1,p) 復号化とは、暗号文cを、復号化アルゴリズムDにより
、鍵k2で復号化し、平文pを得ることを言う。これを
、数式で次のように表す。 p=D(k2,c) ここで、暗号化アルゴリズムEと復号化アルゴリズムD
は対になっており、両者を併せて、単に、暗号アルゴリ
ズムという。
[0004] An object of the present invention is to eliminate the need for all terminals that have joined a network to use a common cipher, and to be able to use a cipher with a secret encryption procedure as well as a cipher with a public encryption procedure. To provide a cryptographic usage method that allows easy switching and is highly secure. Prior to explaining this invention, terms related to encryption will be explained. (Encryption and decryption, encryption algorithm) Encryption refers to encrypting plaintext p using encryption algorithm E with key k1 to obtain ciphertext c. This is expressed mathematically as follows. c=E(k1,p) Decryption means decrypting ciphertext c using decryption algorithm D with key k2 to obtain plaintext p. This is expressed mathematically as follows. p=D(k2,c) Here, encryption algorithm E and decryption algorithm D
are a pair, and together they are simply called a cryptographic algorithm.

【0005】k1=k2であるとき、暗号アルゴリズム
は、秘密鍵暗号アルゴリズム、または単に秘密鍵暗号と
いう、k1≠k2であるとき、暗号アルゴリズムは、公
開鍵暗号アルゴリズム、または単に、公開鍵暗号と呼ば
れる。秘密鍵暗号では、k1およびk2を秘密にする。 公開鍵暗号では、k1を公開する。但し、k2は秘密と
する。 (鍵の共有)端末TiとTjとが、同じ暗号鍵を持つこ
とを鍵の共有という。鍵の共有方法は様々なものがあり
、次に4つの鍵共有の方法を説明する。これは、この発
明の実施例において引用する。
[0005] When k1=k2, the cryptographic algorithm is called a secret key cryptographic algorithm, or simply secret key cryptography; when k1≠k2, the cryptographic algorithm is called a public key cryptographic algorithm, or simply public key cryptography. . In secret key cryptography, k1 and k2 are kept secret. In public key cryptography, k1 is made public. However, k2 is kept secret. (Key sharing) The fact that terminals Ti and Tj have the same encryption key is called key sharing. There are various key sharing methods, and four key sharing methods will be explained next. This is cited in the examples of this invention.

【0006】第1の鍵共有方法は、端末TiとTjが、
共有する鍵KS1を、予め端末内部のメモリに保持して
おくことである。これは、例えば端末TiやTjの所有
者が、通信手段を使わずに、手操作で鍵KS1をその端
末に設定することで達成される。共有する鍵が1個の場
合もあれば、複数の場合もある。複数の場合は、鍵に番
号や名前をつけておいて共有する鍵を区別する。鍵KS
1を初期鍵という。
[0006] In the first key sharing method, terminals Ti and Tj
The key to be shared is to hold the key KS1 in advance in the memory inside the terminal. This is achieved, for example, by the owner of the terminal Ti or Tj manually setting the key KS1 in the terminal without using communication means. There may be one shared key, or there may be multiple keys. If you have multiple keys, assign numbers and names to the keys to distinguish between shared keys. key KS
1 is called the initial key.

【0007】第2の鍵共有方法は、秘密鍵暗号を用いて
、セッション鍵KS2を端末TiからTjへ配送する方
法である。即ち、端末Tiは、セッション鍵KS2を、
初期鍵KS1で暗号化し、即ち、C2=E(KS1,K
S2)として、暗号文C2を得て、このC2を端末Tj
に送る。端末Tjは、C2を復号化して、即ち、KS2
=D(KS1,C2)としてKS2を得る。端末Tiと
Tjは、予め暗号化アルゴリズムEと復号化アルゴリズ
ムDを決めておき、これら暗号アルゴリズムの実現手段
を保持している。
[0007] The second key sharing method is a method in which the session key KS2 is distributed from the terminal Ti to the terminal Tj using secret key cryptography. That is, the terminal Ti uses the session key KS2 as
Encrypted with initial key KS1, that is, C2=E(KS1,K
S2), obtain the ciphertext C2 and send this C2 to the terminal Tj
send to Terminal Tj decodes C2, namely KS2
KS2 is obtained as =D(KS1, C2). The terminals Ti and Tj have previously determined an encryption algorithm E and a decryption algorithm D, and have means for implementing these encryption algorithms.

【0008】第2の鍵共有の詳細は、例えば国際標準I
SO8732に規定される。セッション鍵とは、通信セ
ッションの都度変更する鍵を意味する。第3の鍵共有方
法は、公開鍵暗号を用いて、セッション鍵KS3を端末
TiからTjへ配送する方法である。端末Tiは、セッ
ション鍵KS3を暗号化し、即ち、C3=E(KS1X
 ,KS3)として、暗号文C3を得て、このC3を端
末Tjに送る。端末Tjは、C3を復号化して、即ち、
KS3=D(KS1Y,C 3)としてセッション鍵KS3を得る。ここで、Eは公
開鍵暗号の暗号化アルゴリズム、Dは公開鍵暗号の復号
化アルゴリズムである。KS1X は公開鍵、KS1Y
 は秘密鍵である。ここで示した鍵共有の詳細は、例え
ば、次の文献に解説される。
[0008] Details of the second key sharing are, for example, based on International Standard I
Specified in SO8732. The session key refers to a key that is changed each time a communication session occurs. The third key sharing method is a method of delivering session key KS3 from terminal Ti to Tj using public key cryptography. Terminal Ti encrypts session key KS3, ie C3=E(KS1X
, KS3), a ciphertext C3 is obtained and this C3 is sent to the terminal Tj. Terminal Tj decodes C3, i.e.
Session key KS3 is obtained as KS3=D(KS1Y, C3). Here, E is an encryption algorithm of public key encryption, and D is a decryption algorithm of public key encryption. KS1X is public key, KS1Y
is the private key. The details of the key sharing shown here are explained, for example, in the following document.

【0009】W.Diffie and Hellma
nn ‘New direction in cryp
tography’ ,IEEE Transacti
−ons. Information Theory,
 IT−22, 6, PP644−654, Nov
ember 1976.第4の鍵共有方法は、端末Ti
とTjの間でパラメータの変換値を変換し、セッション
鍵KS4を計算する方法である。両者は鍵生成手段を持
つ。これら鍵生成手段の機能を関数Fで表すと、 KS4=F(G(p1),p2  ) である。ここで、p1とp2は、鍵生成手段に与えるパ
ラメータであり、G(p1)やG(p2)は、パラメー
タの変換値である。関数FとGは、F(G(p1),p
2)=F(G(p2),p1)となる性質を有する関数
であり、更に、G(p1)からp1の値を求めること、
及び、G(p2)からp2の値を求めることは、事実上
不可能である。例えば、大型計算機を何千年間連続運転
しても、p1やp2を求められないという性質を有する
[0009]W. Diffie and Hellma
nn 'New direction in cryp
IEEE Transacti
-ons. Information Theory,
IT-22, 6, PP644-654, Nov
ember 1976. The fourth key sharing method is
This method calculates the session key KS4 by converting parameter values between Tj and Tj. Both have key generation means. If the functions of these key generation means are expressed by a function F, then KS4=F(G(p1), p2). Here, p1 and p2 are parameters given to the key generation means, and G(p1) and G(p2) are converted values of the parameters. The functions F and G are F(G(p1), p
2) It is a function that has the property that = F (G (p2), p1), and further, finding the value of p1 from G (p1),
Furthermore, it is virtually impossible to obtain the value of p2 from G(p2). For example, even if a large computer is operated continuously for thousands of years, p1 and p2 cannot be determined.

【0010】端末Tiは、端末TiのパラメータRiを
決め、パラメータの変換値G(Ri)の値を端末Tjへ
送信し、端末Tjは、端末TjのパラメータRjを決め
、パラメータの変換値G(Rj)の値を端末Tiへ送信
する。端末TiとTjは、自己のパラメータと相手から
送られてきたG(Rj)またはG(Ri)を用い、端末
Tiは、KS4=F(G(Rj),Ri)の計算により
、端末Tjは、KS4=F(G(Ri),Rj)の計算
により、セッション鍵KS4を共有できる。パラメータ
を交換して鍵共有する方法は様々なものがあり、詳細は
、例えば、文献、暗号と情報セキュリティの第4章(辻
井重男編,昭晃堂,1990年)に、端末の名称(ID
)を用いた鍵の共有方法として解説される。 (認証子の生成機能と認証子の確認機能)通信上のデー
タが改ざんされているか否かを検出するため、32ビッ
トの認証子を用いたデータ改ざんの検出機能は、データ
改ざん検出関数GMAC を用い、認証子の生成機能と
認証子の確認機能により達成される。
[0010] The terminal Ti determines the parameter Ri of the terminal Ti, and transmits the value of the parameter conversion value G(Ri) to the terminal Tj, and the terminal Tj determines the parameter Rj of the terminal Tj, and transmits the value of the parameter conversion value G(Ri). Rj) is sent to the terminal Ti. Terminals Ti and Tj use their own parameters and G(Rj) or G(Ri) sent from the other party, and terminal Ti calculates KS4=F(G(Rj), Ri), and terminal Tj calculates , KS4=F(G(Ri), Rj), the session key KS4 can be shared. There are various ways to share keys by exchanging parameters. For details, see Chapter 4 of Literature, Cryptography and Information Security (edited by Shigeo Tsujii, Shokodo, 1990).
) is explained as a key sharing method using (Authenticator generation function and authenticator confirmation function) In order to detect whether or not communication data has been tampered with, the data tampering detection function using a 32-bit authenticator uses the data tampering detection function GMAC. This is achieved by the authentication code generation function and authentication code confirmation function.

【0011】データ改ざん検出関数GMAC は、鍵K
Sと、長いデータDTとを入力し、32ビット長の認証
子(MAC)を出力する。これを数式で書くと、MAC
=GMAC (KS,DT) 認証子(MAC)は、鍵KSと、データDTとに依存し
て定まる性質を持つ特徴を持つ。関数GMAC は、暗
号化アルゴリズムを用いてつくられ、この暗号化アルゴ
リズムに入力する鍵が、データ改ざん検出関数GMAC
 に入力する鍵であり、この暗号化アルゴリズムに入力
する平文が、データ改ざん検出関数GMAC に入力す
るデータである。データ改ざん検出関数GMAC の具
体的な作り方は、例えば、国際標準ISO9797に規
定される。 (データの改ざん検出)端末TiとTjは、鍵KSと、
データ改ざん検出関数GMAC の実現手段を持つ。端
末Tiが、データXを、端末Tjに送るとする。端末T
iは、鍵KSとデータXを関数GMAC に入力し、認
証子MAC1を生成する。即ち、MAC1=GMAC 
(KS,X)とする。次に、端末Tiは、データXとM
AC1とを通信回線を経由して、端末Tjに送る。端末
Tjは、データXとMAC1を受信し、自からも認証子
を生成する。これをMAC2で表すと、MAC2=GM
AC (KS,X)となる。端末Tjは、MAC1とM
AC2とが一致すれば、即ち、MAC1=MAC2とし
て、データXが通信の途上で改ざんされなかったことが
確認できる。データXがX′に変化していると、即ち、
X≠X′であるため、MAC1≠MAC2となり、デー
タが通信途上で改ざんされたことが確認できる。 (データ圧縮機能)長いデータ、例えば64×nビット
や128×nビット長のデータを、64ビットや128
ビットにデータ圧縮する機能であり、ハッシュ関数とも
いう。データ圧縮機能は、例えば国際規格ISO101
18に規定される。
[0011] The data tampering detection function GMAC is based on the key K
S and long data DT are input, and a 32-bit long authentication code (MAC) is output. Writing this as a mathematical formula, MAC
=GMAC (KS, DT) The authentication code (MAC) has characteristics that are determined depending on the key KS and the data DT. The function GMAC is created using an encryption algorithm, and the key input to this encryption algorithm is the data tampering detection function GMAC.
The plaintext input to this encryption algorithm is the data input to the data tampering detection function GMAC. A specific method for creating the data tampering detection function GMAC is defined in, for example, the international standard ISO9797. (Data tampering detection) Terminals Ti and Tj have a key KS,
It has means for realizing the data tampering detection function GMAC. Suppose that terminal Ti sends data X to terminal Tj. Terminal T
i inputs the key KS and data X to the function GMAC and generates the authenticator MAC1. That is, MAC1=GMAC
Let it be (KS,X). Next, terminal Ti receives data X and M
AC1 is sent to the terminal Tj via the communication line. Terminal Tj receives data X and MAC1, and also generates an authentication code. If this is expressed as MAC2, MAC2=GM
AC (KS,X). Terminal Tj has MAC1 and M
If they match with AC2, that is, MAC1=MAC2, it can be confirmed that data X was not tampered with during communication. If data X changes to X', that is,
Since X≠X', MAC1≠MAC2, and it can be confirmed that the data has been tampered with during communication. (Data compression function) Long data, such as 64 x n bits or 128 x n bits, can be compressed into 64 bits or 128 x
It is a function that compresses data into bits, and is also called a hash function. For example, the data compression function is based on the international standard ISO101.
18.

【0012】その他特に説明しないが暗号を利用したデ
ィジタル著名もある。
[0012] Although not specifically explained, there are also digital signatures that use cryptography.

【0013】[0013]

【課題を解決するための手段】この発明によれば各端末
に暗号手段が取外し自在に取付けられ、各暗号手段は制
御部とセキュリティモジュールとからなり、制御部の機
能は標準化しておき、セキュリティモジュールは、端末
利用者が個別に必要とする暗号処理機能、例えば手順非
公開の秘密暗号のプログラムや暗号LSIチップや、手
順公開暗号のプログラムや暗号LSIチップ等を、予め
個別に適宜決めて搭載してある。端末はデータを暗号手
段に転送して暗号処理をしてもらい、その暗号処理済み
のデータを返却してもらう。
[Means for Solving the Problems] According to the present invention, an encryption means is removably attached to each terminal, each encryption means consists of a control section and a security module, the functions of the control section are standardized, and the security The module is equipped with cryptographic processing functions individually required by the terminal user, such as a secret cryptographic program whose procedures are not disclosed, a cryptographic LSI chip, a public cryptographic program and a cryptographic LSI chip, etc., determined individually in advance. It has been done. The terminal transfers the data to an encryption means, has it undergo encryption processing, and has the encrypted data returned to it.

【0014】端末利用者毎に暗号手段の暗号方法を個別
化することにより、暗号手段を交換して端末間で、様々
な暗号の切り替えが容易に出来、しかも暗号処理は暗号
手段で行われ、端末自体はどのような暗号が利用されて
いるか不明であり、安全性が高い。
[0014] By individualizing the encryption method of the encryption means for each terminal user, it is possible to easily switch between various codes between terminals by exchanging the encryption means, and furthermore, the encryption processing is performed by the encryption means, The device itself is highly secure, as it is unknown what kind of encryption is used.

【0015】[0015]

【実施例】図1にこの発明の実施例を示す。端末1A,
1Bはネットワーク100に加入しており、この発明で
は端末1A,1Bにそれぞれ暗号手段2A,2Bが取外
し自在に取付けられる。端末1Aは処理部4A、暗号手
段インタフェース5Aを備え、暗号手段2Aは制御部6
A及びセキュリティモジュール7Aを備えている。同様
に、端末1Bは処理部4B、暗号手段インタフェース5
Bを備え、暗号手段2Bは制御部6B、セキュリティモ
ジュール7Bを備えている。端末1A,1Bは通信回線
8でネットワーク100に接続されている。端末1A,
1Bはそれぞれ暗号手段2A,2Bと結合線9A,9B
で結合されている。ここで、結合線9Aは、端末1Aと
暗号手段2A間でデータの流れがあること、また結合線
9Bは、端末1Bと暗号手段2B間でデータの流れがあ
ることを表す。暗号手段インタフェース5Aや5B、及
び、制御部6Aや6Bの機能は、例えばCCITやIS
O等の国際的な範囲で標準化して用いる。
Embodiment FIG. 1 shows an embodiment of the present invention. Terminal 1A,
1B has joined the network 100, and in the present invention, encryption means 2A and 2B are removably attached to the terminals 1A and 1B, respectively. The terminal 1A includes a processing section 4A and an encryption means interface 5A, and the encryption means 2A includes a control section 6.
A and a security module 7A. Similarly, the terminal 1B has a processing unit 4B and a cryptographic means interface 5.
The encryption means 2B includes a control section 6B and a security module 7B. The terminals 1A and 1B are connected to a network 100 via a communication line 8. Terminal 1A,
1B are encryption means 2A, 2B and connecting lines 9A, 9B, respectively.
are combined with. Here, the connecting line 9A represents that there is a flow of data between the terminal 1A and the encryption means 2A, and the connecting line 9B represents that there is a flow of data between the terminal 1B and the encryption means 2B. The functions of the cryptographic means interfaces 5A and 5B and the control units 6A and 6B are, for example, CCIT and IS.
Standardized and used internationally, such as O.

【0016】処理部4Aと4Bは、端末としての本来の
機能を持つ。例えば、端末1Aや1Bが電話機であると
き、処理部4Aや4Bは電話機としての本来の機能を有
し、端末1Aや1Bがファックス端末であるときは、フ
ァックス端末としての本来の機能を有し、端末1Aや1
Bがパソコンであるときは、パソコンとしての本来の機
能を有す。端末1Aと端末1Bは、通信回線8とネット
ワーク100とを経由して通信する。暗号手段2Aや2
Bは、マイクロプロセッサと、暗号LSIや暗号プログ
ラムのメモリチップのいづれかの一個以上とを搭載する
ICカードや光カードなどの携帯が容易なものにより構
成される。暗号手段インタフェース5Aや5Bは、IC
カードあるいは光カードなどの暗号手段とのインタフェ
ース処理部である。ここで光カードとは、光記憶部とマ
イクロプロセッサとを、1枚のカードに搭載したものを
含む。制御部6Aや6Bは、それぞれ、セキュリティモ
ジュール7Aや7Bが提供する機能を選択する機能と暗
号手段インタフェース5Aや5Bとのインタフェースを
受持つ。セキュリティモジュール7Aや7Bは、暗号処
理機能、つまり暗号化、復号化機能、認証子の生成機能
、認証子の確認機能、ディジタル署名機能、署名検証機
能のいづれかの機能を少なくとも一以上実現する手段と
、更に必要に応じて鍵共有機能、データ圧縮機能などを
含む。制御部6Aや6Bでは、例えば、選択番号1−1
は、鍵共有方法1の機能を選択する、選択番号1−2は
、鍵共有方法2の機能を選択する、・・・、選択番号2
−1は、秘密鍵暗号Qの暗号化の機能を選択する、選択
番号2−2は、FEAL暗号の暗号化機能を選択する、
・・・、選択番号6はデータ圧縮機能を選択する、等と
決めてあり、この決め方は例えば国内規格として標準化
して使う。
[0016] The processing units 4A and 4B have the original function as a terminal. For example, when the terminals 1A and 1B are telephones, the processing units 4A and 4B have the original functions as telephones, and when the terminals 1A and 1B are fax terminals, they have the original functions as fax terminals. , terminal 1A or 1
When B is a personal computer, it has the original functions of a personal computer. Terminal 1A and terminal 1B communicate via communication line 8 and network 100. Encryption means 2A or 2
B is constituted by an easily portable device such as an IC card or an optical card, which is equipped with a microprocessor and one or more of a cryptographic LSI and a cryptographic program memory chip. The cryptographic means interface 5A and 5B are IC
This is an interface processing unit with encryption means such as cards or optical cards. Here, the optical card includes one in which an optical storage section and a microprocessor are mounted on one card. The control units 6A and 6B are respectively responsible for selecting functions provided by the security modules 7A and 7B and for interfacing with the cryptographic means interfaces 5A and 5B. The security module 7A or 7B is a means for realizing at least one of cryptographic processing functions, that is, encryption, decryption, authentication code generation, authentication code confirmation, digital signature, and signature verification functions. , and further includes a key sharing function, data compression function, etc. as necessary. In the control unit 6A or 6B, for example, selection number 1-1
selects the function of key sharing method 1, selection number 1-2 selects the function of key sharing method 2, ..., selection number 2
-1 selects the encryption function of the private key cipher Q; selection number 2-2 selects the encryption function of the FEAL cipher;
..., selection number 6 is determined to select the data compression function, etc., and this method of determination is standardized and used as a domestic standard, for example.

【0017】図2に、暗号手段2Aのやや詳しい実施例
を示す。セキュリティモジュール7Aは、暗号化の実現
手段、復号化の実現手段、認証子の生成実現手段、認証
子の確認の実現手段のいづれかを1個以上複数含み、更
に場合によると鍵共有手段やデータ圧縮手段などを含む
。鍵共有の実現手段は、例えば、鍵共有の方法1や、鍵
共有の方法2や、鍵共有の方法3や、鍵共有の方法4を
行うためのプログラムを含み、更に、鍵共有のための補
助機能、例えば乱数の生成機能などを含む。セキュリテ
ィモジュール7Aは、鍵共有方法1の初期鍵KS1を記
憶している。初期鍵を複数保持する場合もあり、この場
合は、複数の初期鍵を、番号あるいは名前により区別す
る。また、鍵共有方法2のセッション鍵KS2を記憶す
るメモリを含む。暗号化実現手段は、例えば、秘密暗号
Qの暗号化プログラムやDES暗号の暗号化プログラム
であり、あるいは、暗号化モードで動作するRSA暗号
のチップである。復号化実現手段は、例えば、秘密暗号
Qの複合化プログラムやDES暗号の復号化プログラム
であり、あるいは、復号化モードで動作するRSA暗号
のチップである。この場合、RSAチップは、ICカー
ドあるいは光カードに搭載されており、秘密暗号やDE
S暗号のプログラムは、プロセッサに内蔵されたメモリ
に記憶されている。認証子の生成実現手段や認証子の確
認の実現手段は、例えば、認証子生成プログラムや認証
子の確認プログラムであり、プロセッサに内蔵されたメ
モリに記憶されている。ここで、秘密暗号Qとは、暗号
手段2Aや2Bを使う者が独自に定めた暗号化手順を公
開しない暗号を意味する。データ圧縮手段は、例えば、
国際規格ISO10118等で規定するデータ圧縮機能
のプログラムであって、例えば、プロセッサに内蔵され
たメモリに記憶されている。以上述べたセキュリティモ
ジュール7Aや7Bの暗号処理機能は、端末の利用者が
予め個別に適宜決める。
FIG. 2 shows a slightly more detailed embodiment of the encryption means 2A. The security module 7A includes one or more of the following: an encryption implementation means, a decryption implementation means, an authentication code generation implementation means, an authentication code verification implementation means, and, depending on the case, a key sharing means and data compression. Including means etc. The key sharing implementation means includes, for example, programs for performing key sharing method 1, key sharing method 2, key sharing method 3, and key sharing method 4, and further includes programs for performing key sharing method 1, key sharing method 2, key sharing method 3, and key sharing method 4. Includes auxiliary functions, such as a random number generation function. The security module 7A stores an initial key KS1 of the key sharing method 1. In some cases, a plurality of initial keys are held, and in this case, the plurality of initial keys are distinguished by numbers or names. It also includes a memory that stores the session key KS2 of the key sharing method 2. The encryption implementation means is, for example, an encryption program for the secret code Q, an encryption program for the DES encryption, or an RSA encryption chip operating in the encryption mode. The decryption implementation means is, for example, a secret code Q decoding program, a DES code decryption program, or an RSA code chip operating in a decryption mode. In this case, the RSA chip is mounted on an IC card or an optical card, and is used for secret encryption and DE.
The S-cipher program is stored in a memory built into the processor. The means for realizing generation of an authentication code and the means for realizing authentication code confirmation are, for example, an authentication code generation program and an authentication code confirmation program, and are stored in a memory built into the processor. Here, the secret code Q means a code in which the encryption procedure independently determined by the person using the encryption means 2A or 2B is not made public. The data compression means is, for example,
It is a program for a data compression function specified by the international standard ISO 10118, etc., and is stored, for example, in a memory built into a processor. The cryptographic processing functions of the security modules 7A and 7B described above are determined individually and appropriately in advance by the users of the terminals.

【0018】次に、この発明の暗号利用方法により、端
末1Aと端末1Bの間における、暗号通信や暗号を応用
した通信方法を説明する。最初に端末1Aが、第2の鍵
共有の方法で端末1Bとセッション鍵KS2を共有後、
平文データXを秘匿して、端末1Bに送る例を説明する
。端末1Aの処理部4Aは、暗号手段インタフェース部
5Aを経て、制御部6Aに、第2の鍵共有方法により、
端末1Bと鍵共有する機能を選択するように指示する。 制御部6Aは、セキュリティモジュール7Aの内部にあ
る第2の鍵共有方法を選択する。すると、セキュリティ
モジュール7Aは、端末1Bと予め共有している初期鍵
KS1を、セキュリティモジュール7Aの記憶部から取
り出し、次に乱数Rを生成する。セキュリティモジュー
ル7Aは、乱数Rを、端末1Aと端末1B間の暗号通信
用のための共有鍵KS2と定め(以降、セッション鍵K
S2という)、即ち、KS2=Rとし、このKS2を、
セキュリティモジュール7Aの内部に記憶しておく。次
に、このセッション鍵KS2を、初期鍵KS1で暗号化
し、即ち、C2=E(KS1,KS2)として、セッシ
ョン鍵KS2の暗号文C2を得て、このC2を制御部6
Aを経て、更に、暗号手段インタフェース部5Aを経て
、処理部4Aに送る。
Next, an explanation will be given of encrypted communication and a communication method using a cipher between the terminal 1A and the terminal 1B according to the cipher utilization method of the present invention. First, after the terminal 1A shares the session key KS2 with the terminal 1B using the second key sharing method,
An example in which plaintext data X is hidden and sent to terminal 1B will be explained. The processing unit 4A of the terminal 1A sends the information to the control unit 6A via the cryptographic means interface unit 5A using the second key sharing method.
The user is instructed to select a function to share a key with terminal 1B. The control unit 6A selects the second key sharing method within the security module 7A. Then, the security module 7A retrieves the initial key KS1, which is shared in advance with the terminal 1B, from the storage section of the security module 7A, and then generates a random number R. The security module 7A defines the random number R as the shared key KS2 for encrypted communication between the terminal 1A and the terminal 1B (hereinafter referred to as the session key K).
S2), that is, KS2=R, and this KS2 is
It is stored inside the security module 7A. Next, this session key KS2 is encrypted with the initial key KS1, that is, C2=E(KS1, KS2), to obtain the ciphertext C2 of the session key KS2, and this C2 is sent to the control unit 6.
A, the cryptographic means interface unit 5A, and the processing unit 4A.

【0019】処理部4Aは、暗号文C2を通信回線8を
経て、端末1Bに送信する。端末1Bの処理部4Bは、
暗号文C2を受信する。処理部4Bは、暗号手段インタ
フェース5Bを経て、制御部6Bに、第2の鍵共有方法
により鍵共有する機能を選択することの指示と共に、受
信した暗号文C2を伝える。制御部6Bは、セキュリテ
ィモジュール7Bに対して、第2の鍵共有方法により鍵
共有の選択指示と暗号文C2を伝える。すると、セキュ
リティモジュール7Bは、まず端末1Aと共有している
初期鍵KS1を、セキュリティモジュール7Bの記憶部
から取り出し、次に暗号文C2を、鍵KS1で復号化し
、即ち、KS2=D(KS1,C2)として、セッショ
ン鍵KS2を得る。セキュリティモジュール7Bは、共
有したセッション鍵KS2をその内部に記憶しておく。 セキュリティモジュール7Bは、制御部6Bを経て、セ
ッション鍵KS2を共有したことを、処理部4Bに知ら
せる。処理部4Bは、セッション鍵KS2を共有したこ
とを、通信回線8を経て、端末1Aの処理部4Aに知ら
せる。以上で、端末1Aと端末1B間で、セッション鍵
KS2の共有を完了した。次に、端末1Aの処理部4A
が、平文データXを暗号文に変えて、端末1Bの処理部
4Bに伝える暗号通信を説明する。
The processing unit 4A transmits the ciphertext C2 to the terminal 1B via the communication line 8. The processing unit 4B of the terminal 1B is
Receive ciphertext C2. The processing unit 4B transmits the received ciphertext C2 to the control unit 6B via the cryptographic means interface 5B along with an instruction to select a function for key sharing using the second key sharing method. The control unit 6B transmits the key sharing selection instruction and the ciphertext C2 to the security module 7B using the second key sharing method. Then, the security module 7B first retrieves the initial key KS1 shared with the terminal 1A from the storage section of the security module 7B, and then decrypts the ciphertext C2 with the key KS1, that is, KS2=D(KS1, C2), a session key KS2 is obtained. The security module 7B stores the shared session key KS2 therein. The security module 7B notifies the processing unit 4B via the control unit 6B that the session key KS2 has been shared. The processing unit 4B notifies the processing unit 4A of the terminal 1A via the communication line 8 that the session key KS2 has been shared. This completes the sharing of the session key KS2 between the terminal 1A and the terminal 1B. Next, the processing unit 4A of the terminal 1A
However, encrypted communication in which plaintext data X is changed into encrypted text and transmitted to the processing unit 4B of the terminal 1B will be explained.

【0020】端末1Aの処理部4Aは、暗号手段インタ
フェース部5Aを経て、制御部6Aに、平文Xを暗号化
する機能を選択するよう指示する。制御部6Aは、処理
部4Aの指示に従い、平文Xをセキュリティモジュール
7Aに伝える。すると、セキュリティモジュール7Aは
、前記の方法で共有したセッション鍵KS2を、セキュ
リティモジュール7Aの記憶部から取り出し、平文Xを
セッション鍵KS2で暗号化し、即ち、C3=E(KS
2,X)として、暗号文C3を得て、このC3を制御部
6Aを経て、更に、暗号手段インタフェース部5Aを経
て、処理部4Aに送る。処理部4Aは、暗号文C3を、
通信回線8を経て、端末1Bに送信する。端末1Bの処
理部4Bは、暗号文C3を受信する。処理部4Bは、暗
号手段インタフェース部5Bを経て、制御部6Bに、復
号化の機能を選択する指示と共に、受信した暗号文C3
を伝える。制御部6Bは、セキュリティモジュール7B
に対して、暗号文C3を復号化することを伝える。する
と、セキュリティモジュール7Bは、前述した方法で共
有したセッション鍵KS2を、セキュリティモジュール
7Bの記憶部から取り出し、次に暗号文C3を、セッシ
ョン鍵KS2で復号化し、即ち、X=D(KS2,C3
)として、暗号文C3を復号化して平文Xを得る。セキ
ュリティモジュール7Bは、制御部6Bを経て、復号化
して得た平文Xを、処理部4Bに知らせる。
The processing section 4A of the terminal 1A instructs the control section 6A to select a function for encrypting plaintext X via the cryptographic means interface section 5A. The control unit 6A transmits the plaintext X to the security module 7A according to the instructions from the processing unit 4A. Then, the security module 7A retrieves the session key KS2 shared in the above method from the storage section of the security module 7A, and encrypts the plaintext X with the session key KS2, that is, C3=E(KS
As 2, The processing unit 4A converts the ciphertext C3 into
It is transmitted to the terminal 1B via the communication line 8. The processing unit 4B of the terminal 1B receives the ciphertext C3. The processing unit 4B sends the received ciphertext C3 to the control unit 6B via the cryptographic means interface unit 5B along with an instruction to select the decryption function.
convey. The control unit 6B is a security module 7B.
, to decrypt the ciphertext C3. Then, the security module 7B retrieves the session key KS2 shared by the method described above from the storage section of the security module 7B, and then decrypts the ciphertext C3 with the session key KS2, that is, X=D(KS2,C3
), the ciphertext C3 is decrypted to obtain the plaintext X. The security module 7B notifies the processing unit 4B of the decrypted plaintext X via the control unit 6B.

【0021】以上の説明は、鍵共有と暗号化および復号
化が選択された例である。上記の説明において、セッシ
ョン鍵KS2を共有後、処理部4Aが、認証子の生成機
能を指示する場合は、セキュリティモジュール7Aの認
証子生成手段が選択され、平文Xに対して、認証子MA
C1を生成し、即ち、MAC1=GMAC (KS2,
X)とし、平文XとMAC1とが、端末1Aから、端末
1Bに送られる。次に、端末1Bの認証子の確認手段が
選択され、認証子MAC1が正しいか否かが調べられる
The above explanation is an example in which key sharing, encryption, and decryption are selected. In the above description, when the processing unit 4A instructs the authentication code generation function after sharing the session key KS2, the authentication code generation means of the security module 7A is selected and the authentication code MA is sent to the plaintext X.
C1, i.e., MAC1=GMAC (KS2,
X), plaintext X and MAC1 are sent from terminal 1A to terminal 1B. Next, the authentication code confirmation means of the terminal 1B is selected, and it is checked whether the authentication code MAC1 is correct.

【0022】この暗号利用方法を利用する者A(B)は
、自己の暗号手段2A(2B)を携帯し、そのセキュリ
ティモジュール7A(7B)の内部に、例えば、秘密暗
号QABのプログラムと、RSA暗号のプログラムとを
組み込む。更に、この暗号利用方法の利用者Aは、自己
の他の暗号手段2A′を持ち、そのセキュリティモジュ
ール7A′の内部に、自己が必要とする手段、例えば、
秘密暗号QAXのプログラムを組み込む。この暗号利用
方法の他の利用者BX は、自己の暗号手段2B′を持
ち、その内部に秘密暗号QAXのプログラムを組み込む
。ここで、秘密暗号QABは、利用者AとBの間で使う
秘密暗号であり、秘密暗号QAXは、利用者AとBX 
の間で使う秘密暗号である。このようにすると、利用者
Aと利用者Bは、秘密暗号QABとRSA暗号を内蔵す
る暗号手段を使って暗号通信が出来、また、利用者Aと
利用者BX は、秘密暗号QAXを内蔵する暗号手段を
使って暗号通信が出来る。ここで、RSA暗号は、暗号
化アルゴリズムと復号化アルゴリズムが公開された、即
ち、暗号化手順が公開された暗号である。
[0022] Person A (B) who uses this encryption method carries his own encryption means 2A (2B), and stores, for example, a secret encryption QAB program and RSA inside the security module 7A (7B). Incorporate a cryptographic program. Furthermore, the user A of this encryption method has his own other encryption means 2A', and has the means he needs, for example, inside the security module 7A'.
Incorporate the secret code QAX program. The other user BX of this encryption method has his own encryption means 2B' and has the secret encryption QAX program installed therein. Here, the secret code QAB is a secret code used between users A and B, and the secret code QAX is a secret code used between users A and BX.
It is a secret code used between In this way, user A and user B can perform encrypted communication using the cryptographic means that contains the secret code QAB and RSA code, and user A and user BX can use the cryptographic means that contains the secret code QAX. Encrypted communication is possible using cryptographic means. Here, the RSA encryption is a encryption whose encryption algorithm and decryption algorithm are made public, that is, whose encryption procedure is made public.

【0023】以上述べたように、ネットワークに加入す
る端末の利用者は、それぞれ、自己が必要とする暗号の
機能(例えば、鍵共有の機能、暗号化の機能、復号化の
機能認証子の生成機能、認証子の確認機能、データ圧縮
機能で、その機能は利用者が規定出来る)を内蔵した、
いわば利用者毎に個別化された暗号手段2A(2B)を
持つ。また、暗号手段インタフェース5Aや5Bは標準
化してあるので、利用者毎に個別化された暗号手段2A
や2Bは、どの端末1Aや1Bとでも、結合して用いる
ことが出来る。暗号の切り替えは、個別化された暗号手
段を交換することにより達成できる。
[0023] As described above, each user of a terminal that joins the network has the cryptographic functions that he or she needs (for example, key sharing function, encryption function, decryption function, and authentication code generation). function, authentication code confirmation function, and data compression function (the functions can be specified by the user).
In other words, each user has an individualized encryption means 2A (2B). In addition, since the cryptographic means interfaces 5A and 5B are standardized, the cryptographic means 2A can be customized for each user.
or 2B can be used in conjunction with any terminal 1A or 1B. Cipher switching can be accomplished by exchanging personalized cryptographic means.

【0024】[0024]

【発明の効果】以上の実施例から明らかなように、この
発明によれば暗号の利用者は、自己の用途のために個別
化された暗号手段を用いることにより、自己が必要とす
る暗号の利用が可能である。この理由から、ネットワー
クに加入した全ての端末が、共通の暗号を使わなくとも
よく、暗号化手順が秘密の暗号も、また、暗号化手順を
公開した暗号も利用でき、暗号の切り替えが容易に出来
る暗号の使い方が可能である。しかも暗号処理は各暗号
手段で行われ、これを端末で知ることができないから、
高い安全性が得られる。
[Effects of the Invention] As is clear from the above embodiments, according to the present invention, a cryptographic user can obtain the cryptographic information he or she needs by using a cryptographic means personalized for his or her own use. Available. For this reason, all terminals that have joined the network do not need to use a common cipher; they can use a cipher with a secret encryption procedure, or a cipher with a public encryption procedure, making it easy to switch ciphers. It is possible to use any cipher that can be used. Moreover, the encryption process is performed by each encryption method, and this cannot be known on the terminal.
High safety can be obtained.

【図面の簡単な説明】[Brief explanation of the drawing]

【図1】この発明の実施例を示すブロック図。FIG. 1 is a block diagram showing an embodiment of the invention.

【図2】暗号手段2Aの具体例を示すブロック図。FIG. 2 is a block diagram showing a specific example of encryption means 2A.

【図3】ネットワークを介した端末間通信の一般的構成
を示すブロック図。
FIG. 3 is a block diagram showing a general configuration of communication between terminals via a network.

Claims (2)

【特許請求の範囲】[Claims] 【請求項1】  端末利用者が、端末間で暗号を利用す
る暗号利用方式において、それぞれの端末に暗号手段を
取外し自在に結合し、それぞれの暗号手段は制御部とセ
キュリティモジュールとからなり、そのセキュリティモ
ジュールは、端末利用者が予め個別に適宜決めて搭載し
てある一個以上の暗号処理機能を含み、端末は、データ
を暗合手段に転送して暗号処理し、その暗号処理された
データを返却してもらうことを特徴とする暗号利用方法
Claim 1: In a cryptography system in which a terminal user uses cryptography between terminals, a cryptographic means is removably connected to each terminal, each cryptographic means consists of a control unit and a security module, and The security module includes one or more cryptographic processing functions that are installed and determined in advance by the terminal user, and the terminal transfers data to an encryption means, performs cryptographic processing, and returns the cryptographically processed data. A method of using cryptography that is characterized by asking people to do something.
【請求項2】  請求項1の暗号利用方法において、上
記暗号手段は、マイクロプロセッサと、暗号LSI、暗
号プログラムのいづれかの一個以上とを搭載するICカ
ードや光カードからなることを特徴とする暗号手段。
2. The cryptographic method according to claim 1, wherein the cryptographic means comprises an IC card or an optical card equipped with a microprocessor, one or more of a cryptographic LSI and a cryptographic program. means.
JP3028602A 1991-02-22 1991-02-22 Cipher using method and means therefor Pending JPH04268844A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3028602A JPH04268844A (en) 1991-02-22 1991-02-22 Cipher using method and means therefor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3028602A JPH04268844A (en) 1991-02-22 1991-02-22 Cipher using method and means therefor

Publications (1)

Publication Number Publication Date
JPH04268844A true JPH04268844A (en) 1992-09-24

Family

ID=12253136

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3028602A Pending JPH04268844A (en) 1991-02-22 1991-02-22 Cipher using method and means therefor

Country Status (1)

Country Link
JP (1) JPH04268844A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10190645A (en) * 1996-12-20 1998-07-21 Roehm Properties Bv Cipher communicating method, and cipher communication system and id card suitable to implementation of the same method
JP2001203688A (en) * 2000-01-24 2001-07-27 Kyocera Corp Voice communication terminal
JP2009089000A (en) * 2007-09-28 2009-04-23 Toshiba Solutions Corp Encryption module distribution system, encryption management server device, encryption processing apparatus, client device, encryption management program, encryption processing program, and client program

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10190645A (en) * 1996-12-20 1998-07-21 Roehm Properties Bv Cipher communicating method, and cipher communication system and id card suitable to implementation of the same method
JP2001203688A (en) * 2000-01-24 2001-07-27 Kyocera Corp Voice communication terminal
JP2009089000A (en) * 2007-09-28 2009-04-23 Toshiba Solutions Corp Encryption module distribution system, encryption management server device, encryption processing apparatus, client device, encryption management program, encryption processing program, and client program
US8396218B2 (en) 2007-09-28 2013-03-12 Toshiba Solutions Corporation Cryptographic module distribution system, apparatus, and program

Similar Documents

Publication Publication Date Title
US7502467B2 (en) System and method for authentication seed distribution
KR100563108B1 (en) Ic card and cryptographic communication method between ic cards
WO1990009009A1 (en) Data carrier and data communication apparatus using the same
JP2001251287A (en) Confidential transmitting method using hardware protection inside secret key and variable pass code
JP2862141B2 (en) Identification number-based key management device using conventional encryption
JPH0575598A (en) Key data sharing device
JP2008172736A (en) Ciphertext decryption right transfer system
JPH10171717A (en) Ic card and cipher communication system using the same
JP2642433B2 (en) Encryption key generation device
JPH04247737A (en) Enciphering device
AU753951B2 (en) Voice and data encryption method using a cryptographic key split combiner
JP2001111539A (en) Cryptographic key generator and cryptographic key transmitting method
JPH0231290A (en) Ic card device
JPH09294120A (en) Access control method and system for ciphered shared data
JPH04268844A (en) Cipher using method and means therefor
JPH07336328A (en) Cipher device
EP3902197A1 (en) Confidential data management device, program and recording medium
JPH11239128A (en) Information protection method for remote diagnosing system and its system device
JP2001285286A (en) Authentication method, recording medium, authentication system, terminal, and device for generating recording medium for authentication
EP1770901B1 (en) Authentication method and related devices
JPH0435538A (en) Encipherment communication system
JPH08139718A (en) Cipher device and inter-terminal communication method using the cipher device
JPH0373633A (en) Cryptographic communication system
JPH0491531A (en) Confidential data transferring method using ic card
JP2000286830A (en) Encryption processing method in encryption communication system