JP6489123B2 - Method, program, and system for delivering key of common key encryption desired by user simultaneously or after encryption - Google Patents
Method, program, and system for delivering key of common key encryption desired by user simultaneously or after encryption Download PDFInfo
- Publication number
- JP6489123B2 JP6489123B2 JP2016528689A JP2016528689A JP6489123B2 JP 6489123 B2 JP6489123 B2 JP 6489123B2 JP 2016528689 A JP2016528689 A JP 2016528689A JP 2016528689 A JP2016528689 A JP 2016528689A JP 6489123 B2 JP6489123 B2 JP 6489123B2
- Authority
- JP
- Japan
- Prior art keywords
- common key
- integer
- alphanumeric symbol
- character string
- key
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims description 105
- 238000006243 chemical reaction Methods 0.000 claims description 169
- 238000012545 processing Methods 0.000 claims description 111
- 230000005540 biological transmission Effects 0.000 claims description 83
- 238000003860 storage Methods 0.000 claims description 45
- 238000004891 communication Methods 0.000 claims description 37
- 230000008569 process Effects 0.000 claims description 37
- 238000004364 calculation method Methods 0.000 claims description 23
- 230000002441 reversible effect Effects 0.000 claims description 21
- 238000009826 distribution Methods 0.000 claims description 13
- 238000004590 computer program Methods 0.000 claims description 6
- 238000002716 delivery method Methods 0.000 claims description 3
- 230000006870 function Effects 0.000 description 21
- 230000000694 effects Effects 0.000 description 16
- 230000001174 ascending effect Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000003892 spreading Methods 0.000 description 1
- 230000007480 spreading Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
Description
本発明は、暗号文を作成する利用者の所望する共通鍵を同時若しくは事後に配送する共通鍵配送に係る方法、プログラム、及びシステムに関する。 The present invention relates to a common key delivery method, program, and system for delivering a common key desired by a user who creates a ciphertext simultaneously or afterwards.
近年、インターネット等のネットワークをデータの交換手段として利用することが急速に広まっている。しかしながら、インターネット等のネットワークでは、データを交換する際に複数のサーバ及び通信回線を経由してデータが転送される。第3者に知られることなく、安全に2者間、若しくはそれ以上の間で安全な通信を行うために、データを暗号化して伝送されることがよく行われる。 In recent years, the use of networks such as the Internet as data exchange means has been rapidly spreading. However, in a network such as the Internet, data is transferred via a plurality of servers and communication lines when exchanging data. In order to safely communicate between two parties or more without being known by a third party, data is often transmitted after being encrypted.
共通鍵暗号は、シーザー暗号でよく知られるが、紀元前から利用されている、暗号と復号を同じ鍵で行うため、鍵を事前共有する。
この共通鍵暗号方式は、公開鍵暗号方式に比べ、共通鍵を用いて暗号化及び復号を行うので、アルゴリズムが簡易であり、一般的に暗号化スピードが早いという長所があるため、通常トラフィックデータに対する暗号化方式として、今後の伝送路の高速化に対応するためにも、共通鍵暗号方式を採用するのがふさわしい。Common key cipher is well known as Caesar cipher, but since the same key is used for encryption and decryption that have been used since BC, the key is shared in advance.
Compared to public key cryptosystems, this common key cryptosystem performs encryption and decryption using a common key. Therefore, the algorithm is simple and the encryption speed is generally high. In order to cope with future increases in transmission speed, it is appropriate to adopt a common key encryption method.
共通鍵の鍵配送・鍵共有については、例えば、安全な鍵の共有(配送)の方法として、Diffie−Hellman鍵交換方式(以下、「DH鍵交換方式」ともいう)が提案されている。 For common key key distribution and key sharing, for example, a Diffie-Hellman key exchange method (hereinafter also referred to as “DH key exchange method”) has been proposed as a secure key sharing (delivery) method.
特許文献1には、DH鍵交換方式に基づいて、共通鍵の受け渡しを行わずに、2者間で安全に共通鍵を共有する共通鍵生成システム及び共通鍵配送システムが記載されている。具体的には、以下のとおりである。
第1の端末は、共通鍵を生成する情報となる基数A、除数B、及び第1秘密鍵S1を生成し、生成した基数A、除数B、及び第1秘密鍵S1に基づいて第1中間鍵M1を、以下の(式1)により生成する。
AS1 = X1・B + M1 (式1)
第1の端末は、生成した基数A、除数B、及び生成した第1中間鍵M1を第2の端末に送信する。The first terminal generates a radix A, a divisor B, and a first secret key S1, which are information for generating a common key, and generates a first intermediate based on the generated radix A, divisor B, and first secret key S1. The key M1 is generated by the following (Formula 1).
A S1 = X 1 · B + M 1 (Formula 1)
The first terminal transmits the generated radix A, divisor B, and the generated first intermediate key M 1 to the second terminal.
第2の端末は、第2秘密鍵S2を生成すると共に、第1の端末から受信した基数A及び除数B、並びに生成した第2秘密鍵S2に基づいて第2中間鍵M2を、以下の(式2)により生成する。
AS2 = X2・B + M2 (式2)
第2の端末は、生成した第2中間鍵M2を第1の端末に送信する。The second terminal generates the second secret key S2, and also generates the second intermediate key M2 based on the radix A and divisor B received from the first terminal and the generated second secret key S2 as follows ( Generated by equation 2).
A S2 = X 2 · B + M 2 (Formula 2)
The second terminal transmits the generated second intermediate key M2 to the first terminal.
そうすることで、第1の端末は、受信した第2中間鍵M2、並びに生成した除数B及び第1秘密鍵S1に基づいて、共通鍵Cを、以下の(式3)により生成することができる。
M2 S1 = Y1・B +C (式3)
同様に、第2の端末は、受信した第1中間鍵M1、除数B、生成した第2秘密鍵S2に基づいて、共通鍵Cを、以下の(式4)により生成することができる。
M1 S2 = Y2・B +C (式4)By doing so, the first terminal can generate the common key C based on the received second intermediate key M2 and the generated divisor B and the first secret key S1 by the following (Equation 3). it can.
M 2 S1 = Y 1 · B + C ( formula 3)
Similarly, the second terminal can generate the common key C by the following (Equation 4) based on the received first intermediate key M1, divisor B, and generated second secret key S2.
M 1 S 2 = Y 2 · B + C (Formula 4)
このように、第1の端末及び第2の端末それぞれにおいて共通鍵Cを生成することができる。第1の端末と第2の端末との間で共通鍵Cの受け渡しを行うことなく、2者間で安全に共通鍵を共有することができる。 Thus, the common key C can be generated in each of the first terminal and the second terminal. The common key can be safely shared between the two parties without passing the common key C between the first terminal and the second terminal.
なお、3以上の複数の端末間においても、計算のラウンドを増やすことで、同様に安全に共有鍵を共有することができる。 In addition, a shared key can be similarly securely shared among a plurality of terminals of three or more by increasing the round of calculation.
DH鍵交換方式によれば、『事前に』共有した安全な鍵で情報(文書)を暗号化して、盗聴されるかもしれない通信路で送付し、受信者はその鍵で復号化することで情報を読み取り、安全性が確保される。
しかしながら、この鍵は、機械的に自動生成されるものであり、必ずしも利用者が所望したものではなく、利用者自身が覚えやすいものでもない。また、事前に生成する必要がある。According to the DH key exchange method, information (document) is encrypted with a pre-shared secure key, sent via a communication path that may be wiretapped, and the receiver decrypts it with that key. Information is read and safety is ensured.
However, this key is automatically generated mechanically, and is not necessarily desired by the user and is not easily memorized by the user. Moreover, it is necessary to generate in advance.
本発明は、このような問題に鑑みてなされたものであり、暗号文を作成する利用者の所望した鍵であって、利用者自身が覚えやすい任意の鍵(例えば、パスワード、暗証番号等)を暗号化文書と共に或いは事後でも電子メール等により配送することを可能とする、共通鍵配送システム、共通鍵配送方法、及びプログラムを提供することを目的とする。 The present invention has been made in view of such problems, and is an arbitrary key that is desired by the user who creates the ciphertext and is easy for the user to remember (for example, a password, a password, etc.) It is an object of the present invention to provide a common key distribution system, a common key distribution method, and a program that can be distributed together with an encrypted document or by e-mail or the like afterwards.
(1)コンピュータ装置が平文を暗号化するための第1共通鍵を作成し、通信ネットワークを介して鍵情報を他のコンピュータ装置に配送するための共通鍵配送方法であって、コンピュータ装置が、予め、Diffie−Hellman鍵交換方式に基づいて前記他のコンピュータ装置と共有する共通鍵を生成し、生成した共通鍵をベース共通鍵として格納するベース共通鍵格納ステップと、利用者の所望する文字列又は数値から構成される第1共通鍵を生成する第1共通鍵生成ステップと、前記第1共通鍵及び前記ベース共通鍵を入力として、可逆的な変換処理を行い、第2共通鍵を生成する第2共通鍵生成ステップと、前記通信ネットワークを介して、前記他のコンピュータ装置に対して前記第1共通鍵ではなく前記第2共通鍵を送信する通信ステップと、を含む方法。 (1) A common key distribution method for a computer device to create a first common key for encrypting plaintext and distribute key information to another computer device via a communication network, the computer device comprising: A base common key storage step for generating a common key shared with the other computer device based on the Diffie-Hellman key exchange method in advance, and storing the generated common key as a base common key, and a character string desired by the user Alternatively, a first common key generation step for generating a first common key composed of numerical values and the first common key and the base common key are input, and a reversible conversion process is performed to generate a second common key. A second common key generation step, and the second common key, not the first common key, is transmitted to the other computer apparatus via the communication network. The method comprising communicating step.
(1)本発明の方法においては、Diffie−Hellman鍵交換方式により自動的に生成される共通鍵(ベース共通鍵)を使用する代わりに、暗号文を作成する利用者の所望した第1共通鍵であって、利用者自身が覚えやすい任意の鍵(例えば、パスワード、暗証番号等)を使用することができ、利用者の利便性を大いに向上させる。他方、鍵情報については、第1共通鍵ではなく、第1共通鍵及び前記ベース共通鍵から生成される第2共通鍵を用いて配送するため、ベース共通鍵を知らない限り、第1共通鍵を取得することはできないことから、本発明の方法は、Diffie−Hellman鍵交換方式の場合と同等の安全性を確保することができる。
さらに、第1公開鍵とは異なる第2共通鍵K2を暗号文Cと共に或いは事後でも電子メール等により配送することができ、暗号鍵の配送についても安全性を担保すると共に、利用者の利便性を大いに向上させることができる。
また、利用者は、暗号文を生成する毎に、毎回、第1共通鍵を容易に変更することができ、暗号文の秘匿性をより高めることを容易に実現できる。
さらに、ベース共通鍵を適宜再作成することで、セキュリティをより高度に確保することもできる。(1) In the method of the present invention, instead of using the common key (base common key) automatically generated by the Diffie-Hellman key exchange method, the first common key desired by the user who creates the ciphertext is used. In addition, an arbitrary key (for example, a password, a password, etc.) that is easy for the user to remember can be used, and the convenience for the user is greatly improved. On the other hand, since the key information is delivered using not the first common key but the second common key generated from the first common key and the base common key, the first common key is used unless the base common key is known. Therefore, the method of the present invention can ensure the same security as that of the Diffie-Hellman key exchange method.
Furthermore, the second common key K2, which is different from the first public key, can be delivered together with the ciphertext C or by e-mail or the like afterwards, ensuring the security of the delivery of the encryption key and the convenience of the user. Can be greatly improved.
In addition, the user can easily change the first common key every time the ciphertext is generated, and can easily realize further enhancement of the confidentiality of the ciphertext.
Furthermore, it is possible to secure a higher level of security by appropriately recreating the base common key.
(2)前記第1共通鍵がゼロでない整数、前記第2共通鍵が整数であって、前記第2共通鍵生成ステップは、前記第1共通鍵及び前記ベース共通鍵を入力として、第2の整数を算出する第1演算処理ステップを含み、前記第1演算処理ステップにより算出された前記第2の整数を第2共通鍵とすることを特徴とする(1)に記載の方法。 (2) The first common key is a non-zero integer, the second common key is an integer, and the second common key generation step uses the first common key and the base common key as inputs, (1) The method according to (1), further including a first calculation processing step for calculating an integer, wherein the second integer calculated by the first calculation processing step is used as a second common key.
(2)このようにすることで、本発明において、暗号文を作成する利用者の所望した第1共通鍵であって、利用者自身が覚えやすい鍵として、例えば16桁の数値を採用することができる。 (2) In this way, in the present invention, for example, a 16-digit numerical value is adopted as a key that is a first common key desired by the user who creates the ciphertext and is easy for the user to remember. Can do.
(3)前記第1共通鍵が任意の英数記号文字から構成される英数記号文字列、前記第2共通鍵が整数であって、前記第2共通鍵生成ステップは、前記第1共通鍵である英数記号文字列を第1の整数に可逆的に変換する整数変換ステップと、前記整数変換ステップにより算出された前記第1の整数及び前記ベース共通鍵を入力として、第2の整数を算出する第1演算処理ステップと、を含み、前記第1演算処理ステップにより算出された前記第2の整数を第2共通鍵とすることを特徴とする(1)に記載の方法。 (3) The first common key is an alphanumeric symbol character string composed of arbitrary alphanumeric symbol characters, the second common key is an integer, and the second common key generation step includes the first common key generation step. An integer conversion step for reversibly converting the alphanumeric symbol character string to the first integer, and the first integer calculated by the integer conversion step and the base common key as inputs, The method according to (1), further comprising: calculating a first calculation processing step, wherein the second integer calculated by the first calculation processing step is used as a second common key.
(3)このようにすることで、本発明において、暗号文を作成する利用者の所望した第1共通鍵であって、利用者自身が覚えやすい鍵として、例えば7桁の英数記号文字を採用することができる。 (3) In this way, in the present invention, for example, a 7-digit alphanumeric symbol character is used as a key that is easy for the user to memorize as the first common key desired by the user who creates the ciphertext. Can be adopted.
(4)前記第1共通鍵、及び前記第2共通鍵がそれぞれ英数記号文字から構成される英数記号文字列であって、前記第2共通鍵生成ステップは、前記第1共通鍵である英数記号文字列を第1の整数に可逆的に変換する整数変換ステップと、前記整数変換ステップにより算出された前記第1の整数及び前記ベース共通鍵を入力として、第2の整数を算出する第1演算処理ステップと、前記第1演算処理ステップにより算出された第2の整数を第2の英数記号文字列に可逆的に変換する英数記号文字列変換ステップと、を含み、前記英数記号文字列変換ステップにより算出された第2の英数記号文字列を第2共通鍵とすることを特徴とする(1)に記載の方法。 (4) The first common key and the second common key are alphanumeric symbol character strings each composed of alphanumeric symbol characters, and the second common key generation step is the first common key. An integer conversion step for reversibly converting an alphanumeric symbol character string into a first integer, and the second integer is calculated using the first integer and the base common key calculated by the integer conversion step as inputs. A first arithmetic processing step; and an alphanumeric symbol character string conversion step for reversibly converting the second integer calculated by the first arithmetic processing step into a second alphanumeric symbol character string. The method according to (1), wherein the second alphanumeric character string calculated by the numerical symbol character string conversion step is used as the second common key.
(4)第2共通鍵をこのようにすることで、本発明においては、第2共有鍵は整数変換部01、第2演算処理部231、及び英数字記号文字列変換部02の3つの異なる独立した変換部に基づき、英数字文字列として生成されることになる。
これにより、第2共通鍵K2から、第1共通鍵Kuを算出することが、より困難になり、安全性を増すことができる。(4) By making the second common key in this way, in the present invention, the second shared key has three different ones of the
Accordingly, it becomes more difficult to calculate the first common key Ku from the second common key K2, and the safety can be increased.
(5)コンピュータ装置が、通信ネットワークを介して暗号文を復号化するための、暗号文作成者の所望する文字列又は数値から構成される第1共通鍵を他のコンピュータ装置から、配送を受けるための方法であって、コンピュータ装置が、予め、Diffie−Hellman鍵交換方式に基づいて前記他のコンピュータ装置と共有する共通鍵を生成し、生成した共通鍵をベース共通鍵として格納するベース共通鍵格納ステップと、前記他のコンピュータ装置から通信ネットワークを介して、前記第1共通鍵とは異なる第2共通鍵を受信するステップと、前記他のコンピュータ装置から受信した前記第2共通鍵及び前記ベース共通鍵を入力として、可逆的な変換処理を行い、前記第1共通鍵を取得する第1共通鍵取得ステップと、を含む、方法。 (5) The computer device receives a delivery from the other computer device of the first common key composed of a character string or a numerical value desired by the ciphertext creator for decrypting the ciphertext via the communication network. A base common key in which a computer device previously generates a common key shared with the other computer device based on a Diffie-Hellman key exchange method and stores the generated common key as a base common key Storing a second common key different from the first common key from the other computer device via a communication network; and receiving the second common key and the base received from the other computer device A first common key obtaining step of performing a reversible conversion process using the common key as an input and obtaining the first common key; Law.
(6)前記第1共通鍵がゼロでない整数、前記第2共通鍵が整数であって、前記第1共通鍵取得ステップは、前記第2共通鍵及び前記ベース共通鍵を入力として、第1の整数を算出する第2演算処理ステップを含み、前記第2演算処理ステップにより算出された前記第1の整数を第1共通鍵とすることを特徴とする(5)に記載の方法。 (6) The first common key is a non-zero integer, the second common key is an integer, and the first common key acquisition step receives the second common key and the base common key as inputs, The method according to (5), further including a second calculation processing step for calculating an integer, wherein the first integer calculated by the second calculation processing step is used as a first common key.
(7)前記第1共通鍵が任意の英数記号文字から構成される第1の英数記号文字列、前記第2共通鍵が整数であって、前記第1共通鍵取得ステップは、前記第2共通鍵及び前記ベース共通鍵を入力として、第1の整数を算出する第2演算処理ステップと、前記第2演算処理ステップにより算出された前記第1の整数を第1の英数記号文字列に可逆的に変換する英数記号文字列変換ステップと、を含み、前記英数記号文字列変換ステップにより算出された第1の英数記号文字列を第1共通鍵とすることを特徴とする(5)に記載の方法。 (7) The first common key is a first alphanumeric symbol character string composed of an arbitrary alphanumeric symbol character, the second common key is an integer, and the first common key acquisition step includes the first common key acquisition step, A second arithmetic processing step for calculating a first integer using two common keys and the base common key as inputs, and the first integer calculated by the second arithmetic processing step as a first alphanumeric symbol character string An alphanumeric symbol character string conversion step for reversibly converting to the first symbol key character string calculated by the alphanumeric symbol character string conversion step as a first common key The method according to (5).
(8)前記第1共通鍵及び前記第2共通鍵が、それぞれ英数記号文字から構成される英数記号文字列であって、前記第1共通鍵取得ステップは、前記第2共通鍵である英数記号文字列を可逆的に第2の整数に変換する整数変換ステップと、前記第2の整数及び前記ベース共通鍵を入力として、第1の整数を算出する第2演算処理ステップと、前記第2演算処理ステップにより算出された前記第1の整数を第1の英数記号文字列に可逆的に変換する英数記号文字列変換ステップと、を含み、前記英数記号文字列変換ステップにより算出された第1の英数記号文字列を第1共通鍵とすることを特徴とする(5)に記載の方法。 (8) The first common key and the second common key are alphanumeric symbol character strings each composed of alphanumeric symbol characters, and the first common key acquisition step is the second common key An integer conversion step for reversibly converting an alphanumeric symbol character string to a second integer; a second operation processing step for calculating a first integer using the second integer and the base common key as inputs; and An alphanumeric symbol character string conversion step for reversibly converting the first integer calculated in the second arithmetic processing step into a first alphanumeric symbol character string, and the alphanumeric symbol character string conversion step. The calculated first alphanumeric symbol character string is used as a first common key. The method according to (5),
(5)〜(8)の方法によれば、(1)〜(4)の方法と同様の効果を奏することができる。 According to the methods (5) to (8), the same effects as the methods (1) to (4) can be achieved.
(9)第1演算処理ステップにおいて、加算処理により第2の整数を算出する、(2)〜(4)のいずれかに記載の方法。 (9) The method according to any one of (2) to (4), wherein in the first calculation processing step, a second integer is calculated by addition processing.
(9)第2共有鍵を生成する演算として、ベース共通鍵を加算することで、効率的に第2共有鍵を生成することができる。また、ベース共通鍵がわからない限り、第1共通鍵を逆算することもできないため、Diffie−Hellman鍵交換方式の場合と同等の安全性を確保することができる。 (9) As a calculation for generating the second shared key, the second shared key can be efficiently generated by adding the base shared key. In addition, since the first common key cannot be calculated backward unless the base common key is known, the same security as in the Diffie-Hellman key exchange method can be ensured.
(10)第2演算処理ステップにおいて、減算処理により第1の整数を算出する、(6)〜(8)のいずれかに記載の方法。 (10) The method according to any one of (6) to (8), wherein in the second calculation processing step, the first integer is calculated by subtraction processing.
(10)第1共通鍵を算出する演算として、ベース共通鍵を減算することで、効率的に第2共有鍵を生成することができる。また、ベース共通鍵を知らない限り、第1共通鍵を逆算することもできないため、Diffie−Hellman鍵交換方式の場合と同等の安全性を確保することができる。 (10) As a calculation for calculating the first common key, the second common key can be efficiently generated by subtracting the base common key. Further, since the first common key cannot be calculated backward unless the base common key is known, the same level of security as in the Diffie-Hellman key exchange method can be ensured.
(11)英数記号文字列を可逆的に整数に変換する整数変換ステップは、英数記号文字の各々が、32以上127以下の整数の各々に1対1に対応付けられた、文字・整数対応テーブルに基づいて、前記英数記号文字列を構成する各桁の英数記号文字に対応する整数を算出するステップと、前記各桁における英数記号文字に対応する各整数をそれぞれ16以上111以下の整数にシフトするステップとし、前記シフトされた、各桁における英数記号文字に対応する各整数を、112進数における桁の値とする112進数を算出するステップと、前記算出された112進数を10進数の整数に変換するステップと、を含むことを特徴とする、(3)、(4)、又は(8)のいずれかに記載の方法。 (11) The integer conversion step for reversibly converting an alphanumeric symbol character string into an integer is a character / integer in which each alphanumeric symbol character is associated with each integer between 32 and 127 in a one-to-one relationship. Based on the correspondence table, calculating an integer corresponding to the alphanumeric symbol character of each digit constituting the alphanumeric symbol character string, and each integer corresponding to the alphanumeric symbol character in each digit from 16 to 111 A step of shifting to the following integers, a step of calculating a 112-digit number in which each integer corresponding to the shifted alphanumeric symbol character in each digit is a digit value in a 112-digit number, and the calculated 112-digit number The method according to any one of (3), (4), and (8), comprising the step of: converting to a decimal integer.
(11)本発明において、暗号文を作成する利用者の所望した第1共通鍵であって、利用者自身が覚えやすい鍵として英数記号文字を採用した場合、加算と乗算のみにより、簡単に整数に変換できる。また、この変換は可逆的な変換であり、第2共通鍵から第1共通鍵を算出する際にも適用できる。 (11) In the present invention, when an alphanumeric symbol character is adopted as a key that is the first common key desired by the user who creates the ciphertext and is easy for the user to memorize, simply by addition and multiplication, Can be converted to an integer. This conversion is a reversible conversion and can be applied when calculating the first common key from the second common key.
(12)コンピュータ装置に(1)から(11)のいずれかに記載の方法の各ステップを実行させるためのコンピュータプログラム。 (12) A computer program for causing a computer device to execute each step of the method according to any one of (1) to (11).
(12)(11)のコンピュータプログラムによれば、(1)〜(11)の方法と同様の効果を奏することができる。 (12) According to the computer program of (11), the same effects as the methods (1) to (11) can be achieved.
(13)平文を暗号化するための第1共通鍵を作成し、鍵情報を受信側端末装置に配送する送信側端末装置と、前記送信側端末装置から配送される前記鍵情報から、第1共通鍵を取得する前記受信側端末装置とを含む共通鍵配送システムであって、前記送信側端末装置は、予め、Diffie−Hellman鍵交換方式に基づいて前記受信側端末装置と共有する共通鍵を生成し、生成した共通鍵をベース共通鍵として格納するベース共通鍵格納部と、利用者の所望する文字列又は数値から構成される第1共通鍵を生成する第1共通鍵生成部と、前記第1共通鍵及び前記ベース共通鍵を入力として、可逆的な変換処理を行い、第2共通鍵を生成する第2共通鍵生成部と、前記受信側端末装置と通信するための通信部と、を含み、前記通信部は、前記受信側端末装置に対して前記第1共通鍵ではなく前記第2共通鍵を送信し、前記受信側端末装置は、予め、Diffie−Hellman鍵交換方式に基づいて前記送信側端末装置と共有する共通鍵を生成し、生成した共通鍵をベース共通鍵として格納するベース鍵格納部と、前記送信側端末装置から通信ネットワークを介して、前記第1共通鍵とは異なる第2共通鍵を受信するための通信部と、前記送信側端末装置から前記通信部を介して受信した前記第2共通鍵及び前記ベース鍵格納部に格納されたベース共通鍵を入力として可逆的な変換処理を行い、前記第1共通鍵を取得する第1共通鍵取得部と、を含むことを特徴とする共通鍵配送システム。 (13) A first common key for encrypting a plaintext is created, and a first terminal is transmitted from the transmitting terminal device that delivers key information to the receiving terminal device and the key information delivered from the transmitting terminal device. A common key distribution system including the receiving terminal device that acquires a common key, wherein the transmitting terminal device previously shares a common key shared with the receiving terminal device based on a Diffie-Hellman key exchange method. A base common key storage unit that generates and stores the generated common key as a base common key, a first common key generation unit that generates a first common key composed of a character string or a numerical value desired by the user, A first common key and the base common key as inputs, performing a reversible conversion process and generating a second common key; a communication unit for communicating with the receiving terminal device; The communication unit includes The second common key is transmitted to the receiving terminal device instead of the first common key, and the receiving terminal device shares in advance with the transmitting terminal device based on a Diffie-Hellman key exchange method. A common key is generated, a base key storage unit that stores the generated common key as a base common key, and a second common key that is different from the first common key is received from the transmission side terminal device via the communication network. And a reversible conversion process using the second common key received from the transmitting terminal device via the communication unit and the base common key stored in the base key storage unit as input, and And a first common key acquisition unit that acquires a first common key.
(14)前記第1共通鍵がゼロでない整数、及び前記第2共通鍵が整数であって、前記第2共通鍵生成部は、前記第1共通鍵及び前記ベース共通鍵を入力として、第1演算処理を行い、第2の整数を算出する第1演算処理部を含み、前記第1演算処理部により算出された前記第2の整数を第2共通鍵とし、前記第1共通鍵取得部は、前記第2共通鍵及び前記ベース共通鍵を入力として、第2演算処理を行い、第1の整数を算出する第2演算処理部を含み、前記第2演算処理部により算出された前記第1の整数を第1共通鍵とすることを特徴とする(13)に記載の共通鍵配送システム。 (14) The first common key is an integer that is not zero, and the second common key is an integer, and the second common key generation unit receives the first common key and the base common key as inputs, A first arithmetic processing unit that performs arithmetic processing and calculates a second integer, wherein the second integer calculated by the first arithmetic processing unit is a second common key, and the first common key acquisition unit is The second common key and the base common key as inputs, and a second arithmetic processing unit that performs a second arithmetic processing and calculates a first integer, and the first arithmetic unit calculated by the second arithmetic processing unit The common key distribution system according to (13), wherein the integer is a first common key.
(15)前記第1共通鍵が任意の英数記号文字から構成される第1の英数記号文字列、及び前記第2共通鍵が整数であって、前記第2共通鍵生成部は、前記第1共通鍵を第1の整数に可逆的に変換する整数変換部と、前記整数変換部により算出された前記第1の整数及び前記ベース共通鍵を入力として、第1演算処理を行い、第2の整数を算出する第1演算処理部と、を含み、前記第1演算処理部により算出された前記第2の整数を第2共通鍵とし、前記第1共通鍵取得部は、前記第2共通鍵及び前記ベース共通鍵を入力として、第2演算処理を行い、第1の整数を算出する第2演算処理部と、前記第2演算処理部により算出された前記第1の整数を第1の英数記号文字列に可逆的に変換する英数記号文字列変換部と、を含み、前記英数記号文字列変換部により算出された前記第1の英数記号文字列を第1共通鍵とすることを特徴とする(13)に記載の共通鍵配送システム。 (15) The first common key is a first alphanumeric symbol character string composed of an arbitrary alphanumeric symbol character, and the second common key is an integer, and the second common key generation unit An integer conversion unit that reversibly converts the first common key into a first integer, the first integer calculated by the integer conversion unit and the base common key as inputs, and a first calculation process, A first arithmetic processing unit that calculates an integer of 2, wherein the second integer calculated by the first arithmetic processing unit is a second common key, and the first common key acquisition unit includes the second arithmetic key Using the common key and the base common key as inputs, the second arithmetic processing is performed to calculate the first integer, and the first integer calculated by the second arithmetic processing unit is the first An alphanumeric symbol character string conversion unit that reversibly converts to an alphanumeric symbol character string. Common key distribution system having the constitution (13) to the alphanumeric symbol string calculated first by string conversion unit and the first common key.
(16)前記第1共通鍵は任意の英数記号文字から構成される第1の英数記号文字列、及び前記第2共通鍵は英数記号文字から構成される第2の英数記号文字列であって、前記第2共通鍵生成部は、前記第1共通鍵を第1の整数に可逆的に変換する整数変換部と、前記整数変換部により算出された前記第1の整数及び前記ベース共通鍵を入力として、第1演算処理を行い、第2の整数を算出する第1演算処理部と、前記第1演算処理部により算出された第2の整数を第2の英数記号文字列に可逆的に変換する英数記号文字列変換部と、を含み、前記英数記号文字列変換部により算出された第2の英数記号文字列を第2共通鍵とし、前記第1共通鍵取得部は、前記第2共通鍵を可逆的に第2の整数に変換する整数変換部と、前記整数変換部により算出された前記第2の整数及び前記ベース共通鍵を入力として、第2演算処理を行い、第1の整数を算出する第2演算処理部と、前記第2演算処理部により算出された前記第1の整数を第1の英数記号文字列に可逆的に変換する英数記号文字列変換部と、を含み、前記英数記号文字列変換部により算出された第1の英数記号文字列を第1共通鍵とすることを特徴とする(13)に記載の共通鍵配送システム。 (16) The first common key is a first alphanumeric symbol character string composed of an arbitrary alphanumeric symbol character, and the second common key is a second alphanumeric symbol character composed of an alphanumeric symbol character. The second common key generation unit is an integer conversion unit that reversibly converts the first common key into a first integer; the first integer calculated by the integer conversion unit; and A first arithmetic processing unit that receives the base common key and performs a first arithmetic processing to calculate a second integer, and a second integer calculated by the first arithmetic processing unit is used as a second alphanumeric symbol character. An alphanumeric symbol character string conversion unit reversibly converted into a sequence, and the second common symbol key character string calculated by the alphanumeric symbol character string conversion unit as a second common key, the first common The key acquisition unit includes an integer conversion unit that reversibly converts the second common key into a second integer, and the integer conversion unit. Using the calculated second integer and the base common key as inputs, a second calculation process is performed to calculate a first integer, and the second calculation process unit calculates the first integer. An alphanumeric symbol character string conversion unit that reversibly converts an integer of 1 into a first alphanumeric symbol character string, and the first alphanumeric symbol character string calculated by the alphanumeric symbol character string conversion unit The common key distribution system according to (13), characterized in that is used as a first common key.
(13)〜(16)のシステムによれば、(1)〜(8)の方法と同様の効果を奏することができる。 According to the systems (13) to (16), the same effects as the methods (1) to (8) can be obtained.
(附記)本発明の課題を解決するための手段として、以下に記載するように、端末装置として提供することができる。 (Appendix) As a means for solving the problems of the present invention, it can be provided as a terminal device as described below.
(17)平文を暗号化するための第1共通鍵を作成し、通信ネットワークを介して鍵情報を他の端末装置に配送する端末装置であって、予め、Diffie−Hellman鍵交換方式に基づいて前記他の端末装置と共有する共通鍵を生成し、生成した共通鍵をベース共通鍵として格納するベース共通鍵格納部と、利用者の所望する文字列又は数値から構成される第1共通鍵を生成する第1共通鍵生成部と、前記第1共通鍵及び前記ベース共通鍵を入力として、可逆的な変換処理を行い、第2共通鍵を生成する第2共通鍵生成部と、前記他の端末装置と通信するための通信部と、を含み、前記通信部は、前記他の端末装置に対して前記第1共通鍵ではなく前記第2共通鍵を送信することを特徴とする端末装置。 (17) A terminal device that generates a first common key for encrypting plaintext and delivers key information to another terminal device via a communication network, based on a Diffie-Hellman key exchange method in advance. Generating a common key shared with the other terminal device, storing the generated common key as a base common key, and a first common key composed of a character string or a numerical value desired by the user A first common key generation unit for generating, a second common key generation unit for generating a second common key by performing reversible conversion processing using the first common key and the base common key as inputs, and the other A communication unit for communicating with the terminal device, wherein the communication unit transmits the second common key instead of the first common key to the other terminal device.
(18)前記第1共通鍵がゼロでない整数、及び前記第2共通鍵が整数であって、前記第2共通鍵生成部は、前記第1共通鍵及び前記ベース共通鍵を入力として、第1演算処理を行い、第2の整数を算出する第1演算処理部を含み、前記第1演算処理部により算出された前記第2の整数を第2共通鍵とすることを特徴とする(17)に記載の端末装置。 (18) The first common key is a non-zero integer, and the second common key is an integer, and the second common key generation unit receives the first common key and the base common key as inputs, A first arithmetic processing unit that performs arithmetic processing and calculates a second integer is included, and the second integer calculated by the first arithmetic processing unit is used as a second common key (17) The terminal device described in 1.
(19)前記第1共通鍵が任意の英数記号文字から構成される第1の英数記号文字列、及び前記第2共通鍵が整数であって、前記第2共通鍵生成部は、前記第1共通鍵を第1の整数に可逆的に変換する整数変換部と、前記整数変換部により算出された前記第1の整数及び前記ベース共通鍵を入力として、第1演算処理を行い、第2の整数を算出する第1演算処理部と、を含み、前記第1演算処理部により算出された前記第2の整数を第2共通鍵とすることを特徴とする(17)に記載の端末装置。 (19) The first common key is a first alphanumeric symbol character string composed of an arbitrary alphanumeric symbol character, and the second common key is an integer, and the second common key generation unit An integer conversion unit that reversibly converts the first common key into a first integer, the first integer calculated by the integer conversion unit and the base common key as inputs, and a first calculation process, And a first arithmetic processing unit that calculates an integer of 2, wherein the second integer calculated by the first arithmetic processing unit is used as a second common key. apparatus.
(20)前記第1共通鍵が任意の英数記号文字から構成される第1の英数記号文字列、及び前記第2共通鍵が英数記号文字から構成される第2の英数記号文字列であって、前記第2共通鍵生成部は、前記第1共通鍵を第1の整数に可逆的に変換する整数変換部と、前記整数変換部により算出された前記第1の整数及び前記ベース共通鍵を入力として、第1演算処理を行い、第2の整数を算出する第1演算処理部と、前記第1演算処理部により算出された第2の整数を第2の英数記号文字列に可逆的に変換する英数記号文字列変換部と、を含み、前記英数記号文字列変換部により算出された第2の英数記号文字列を第2共通鍵とすることを特徴とする(17)に記載の端末装置。 (20) A first alphanumeric symbol character string in which the first common key is composed of arbitrary alphanumeric symbol characters, and a second alphanumeric symbol character in which the second common key is composed of alphanumeric symbol characters. The second common key generation unit is an integer conversion unit that reversibly converts the first common key into a first integer; the first integer calculated by the integer conversion unit; and A first arithmetic processing unit that receives the base common key and performs a first arithmetic processing to calculate a second integer, and a second integer calculated by the first arithmetic processing unit is used as a second alphanumeric symbol character. An alphanumeric symbol character string conversion unit that reversibly converts to a string, and the second alphanumeric symbol character string calculated by the alphanumeric symbol character string conversion unit is a second common key, The terminal device according to (17).
(17)〜(20)の端末装置によれば、(1)〜(4)の方法と同様の効果を奏することができる。 According to the terminal devices of (17) to (20), the same effects as the methods of (1) to (4) can be achieved.
(21)通信ネットワークを介して暗号文を復号化するための、暗号文作成者の所望する文字列又は数値から構成される第1共通鍵を他の端末装置から配送を受ける端末装置であって、予め、Diffie−Hellman鍵交換方式に基づいて前記他の端末装置と共有する共通鍵を生成し、生成した共通鍵をベース共通鍵として格納するベース鍵格納部と、前記他の端末装置から通信ネットワークを介して、前記第1共通鍵とは異なる第2共通鍵を受信するための通信部と、前記他の端末装置から前記通信部を介して受信した、前記第2共通鍵及び前記ベース鍵格納部に格納されたベース共通鍵を入力として可逆的な変換処理を行い、前記第1共通鍵を取得する第1共通鍵取得部と、を含むことを特徴とする端末装置。 (21) A terminal device for receiving a first common key composed of a character string or a numerical value desired by a ciphertext creator for decrypting the ciphertext via a communication network from another terminal device. A base key storage unit that generates a common key shared with the other terminal device based on the Diffie-Hellman key exchange method in advance and stores the generated common key as a base common key, and communicates from the other terminal device A communication unit for receiving a second common key different from the first common key via the network, and the second common key and the base key received from the other terminal device via the communication unit A terminal device comprising: a first common key acquisition unit that performs a reversible conversion process using a base common key stored in a storage unit as an input and acquires the first common key.
(22)前記第1共通鍵がゼロでない整数、及び前記第2共通鍵が整数であって、前記第1共通鍵取得部は、前記第2共通鍵及び前記ベース共通鍵を入力として、第2演算処理を行い、第1の整数を算出する第2演算処理部を含み、前記第2演算処理部により算出された前記第1の整数を第1共通鍵とすることを特徴とする(21)に記載の端末装置。 (22) The first common key is a non-zero integer, and the second common key is an integer, and the first common key acquisition unit receives the second common key and the base common key as inputs, A second arithmetic processing unit that performs arithmetic processing and calculates a first integer is included, wherein the first integer calculated by the second arithmetic processing unit is used as a first common key (21) The terminal device described in 1.
(23)前記第1共通鍵が任意の英数記号文字から構成される第1の英数記号文字列、及び前記第2共通鍵が整数であって、前記第1共通鍵取得部は、前記第2共通鍵及び前記ベース共通鍵を入力として、第2演算処理を行い、第1の整数を算出する第2演算処理部と、前記第2演算処理部により算出された前記第1の整数を第1の英数記号文字列に可逆的に変換する英数記号文字列変換部と、を含み、前記英数記号文字列変換部により算出された前記第1の英数記号文字列を第1共通鍵とすることを特徴とする(21)に記載の端末装置。 (23) The first common key is a first alphanumeric symbol character string composed of an arbitrary alphanumeric symbol character, and the second common key is an integer. Using the second common key and the base common key as inputs, the second arithmetic processing is performed to calculate a first integer, and the first integer calculated by the second arithmetic processing unit is An alphanumeric symbol character string conversion unit that reversibly converts the first alphanumeric symbol character string into a first alphanumeric symbol character string conversion unit, wherein the first alphanumeric symbol character string calculated by the alphanumeric symbol character string conversion unit is a first The terminal device according to (21), wherein the terminal device is a common key.
(24)前記第1共通鍵が任意の英数記号文字から構成される第1の英数記号文字列、及び前記第2共通鍵が英数記号文字から構成される第2の英数記号文字列であって、前記第1共通鍵取得部は、前記第2共通鍵を可逆的に第2の整数に変換する整数変換部と、前記整数変換部により算出された前記第2の整数及び前記ベース共通鍵を入力として、第2演算処理を行い、第1の整数を算出する第2演算処理部と、前記第2演算処理部により算出された前記第1の整数を第1の英数記号文字列に可逆的に変換する英数記号文字列変換部と、を含み、前記英数記号文字列変換部により算出された第1の英数記号文字列を第1共通鍵とすることを特徴とする(21)に記載の端末装置。 (24) A first alphanumeric symbol character string in which the first common key is composed of arbitrary alphanumeric symbol characters, and a second alphanumeric symbol character in which the second common key is composed of alphanumeric symbol characters. A first common key acquisition unit that reversibly converts the second common key into a second integer; the second integer calculated by the integer conversion unit; and A second arithmetic processing unit that receives the base common key as input and performs a second arithmetic processing to calculate a first integer; and the first integer calculated by the second arithmetic processing unit is a first alphanumeric symbol An alphanumeric symbol character string conversion unit that reversibly converts to a character string, and the first alphanumeric symbol character string calculated by the alphanumeric symbol character string conversion unit is used as a first common key The terminal device according to (21).
(21)〜(24)の端末装置によれば、(5)〜(8)の方法と同様の効果を奏することができる。 According to the terminal devices (21) to (24), the same effects as the methods (5) to (8) can be obtained.
本発明によれば、予め生成したベース共通鍵を送信側端末及び受信側端末の間で共有した後は、送信側端末は、利用者の所望する鍵であって、利用者自身が覚えやすい任意の鍵(例えば、パスワード、暗証番号等)により、情報を暗号化することができる。
そして、盗聴可能な通信路(例えば、インターネット等)で利用者の所望する鍵により暗号化した暗号化文書と共に或いは事後でも鍵情報を、例えば電子メール等により配送することで、当該鍵情報を送信側端末及び受信側端末間で安全に共有することができる。According to the present invention, after the base common key generated in advance is shared between the transmission-side terminal and the reception-side terminal, the transmission-side terminal is an arbitrary key that is desired by the user and is easy for the user to remember. The information can be encrypted with a key (eg, password, personal identification number).
Then, the key information is transmitted together with the encrypted document encrypted with the key desired by the user through an eavesdropping communication path (for example, the Internet) or after the key information is delivered by e-mail or the like afterwards. It can be safely shared between the side terminal and the receiving side terminal.
以下、本発明の好ましい実施形態について図を参照しながら説明する。本発明のプログラムは、送信側端末及び受信側端末に適用され、送信側端末及び受信側端末にそれぞれ、各種機能を実現させる。 Hereinafter, preferred embodiments of the present invention will be described with reference to the drawings. The program of the present invention is applied to a transmission side terminal and a reception side terminal, and realizes various functions in the transmission side terminal and the reception side terminal, respectively.
[第1実施形態]
初めに、図を参照して、第1実施形態について説明する。
[機能構成]
図1は、第1実施形態に係る情報システム1の全体概要を示す図である。情報システム1は、送信側端末10と、受信側端末20と、を備える。送信側端末10及び受信側端末20は、LAN(Local Area Network)やインターネット等のコンピュータネットワークにより構成される通信ネットワークNにより、通信可能に接続されている。
なお、図1の情報システム1においては、送信側端末10及び受信側端末20からなる2者間システムが例として記載されているが、情報システム1は、3以上の任意の複数の端末装置間で共通鍵を配送するように通信可能に接続されてもよい。[First Embodiment]
First, a first embodiment will be described with reference to the drawings.
[Function configuration]
FIG. 1 is a diagram showing an overall outline of an
In addition, in the
この送信側端末10及び受信側端末20の間では、予め、例えばDH法等に基づいて、ベース共通鍵Kbを生成し、共有する。
送信側端末10では、送信者である利用者の所望した鍵であって、利用者自身が覚えやすい任意の第1共通鍵Ku(例えば、パスワード、暗証番号等)を生成し、公知の暗号化手段により平文Mを第1共通鍵Kuを用いて暗号化して暗号文Cを生成し、公知の送信手段により暗号文Cを受信側端末20に送信する。
送信側端末10では、第1共通鍵Kuとベース共通鍵Kbに所定の可逆的な演算処理Fを行い、第2共通鍵K2を生成し、第2共通鍵K2を受信側端末に配送する。
ここで、第2共通鍵K2の送信に際して、暗号化せずに、そのまま送信してもよい。また、暗号文Cの送信と第2共通鍵K2の配送の順番は、任意としてもよい。Between the
The transmitting
The
Here, when transmitting the second common key K2, it may be transmitted as it is without being encrypted. The order of transmission of the ciphertext C and delivery of the second common key K2 may be arbitrary.
受信側端末20では、公知の受信手段により送信側端末10から暗号文C及び第2共通鍵K2を受信し、第2共通鍵K2とベース共通鍵Kbに所定の可逆的な演算処理Fの逆変換処理F−1を行い、第1共通鍵Kuを取得し、送信側端末10から受信した暗号文Cを公知の復号化手段により第1共通鍵Kuを用いて復号化して平文Mを取得する。In the receiving
送信側端末10及び受信側端末20は、パソコン、サーバ、ノートパソコン、タブレット端末、PDA、スマートフォン等その他の装置であって、通信機能を備える電子機器(コンピュータ装置)を含む。
本実施形態は、コンピュータ及びその周辺装置に適用される。本実施形態における各部は、コンピュータ及びその周辺装置が備えるハードウェア並びにこのハードウェアを制御するソフトウェアによって構成される。The transmission-
This embodiment is applied to a computer and its peripheral devices. Each unit in the present embodiment is configured by hardware included in a computer and its peripheral devices, and software that controls the hardware.
上記ハードウェアには、制御部としてのCPUの他、記憶部、通信部、表示部及び入力部が含まれる。記憶部としては、例えば、メモリ(RAM、ROM等)、ハードディスクドライブ(HDD)及び光ディスク(CD、DVD等)ドライブが挙げられる。通信部としては、例えば、各種有線及び無線インターフェース装置が挙げられる。表示部としては、例えば、液晶ディスプレイ、プラズマディスプレイ等の各種ディスプレイが挙げられる。入力部としては、例えば、キーボード、マウス、タッチパネルディスプレイ等が挙げられる。 The hardware includes a CPU as a control unit, a storage unit, a communication unit, a display unit, and an input unit. Examples of the storage unit include a memory (RAM, ROM, etc.), a hard disk drive (HDD), and an optical disk (CD, DVD, etc.) drive. Examples of the communication unit include various wired and wireless interface devices. Examples of the display unit include various displays such as a liquid crystal display and a plasma display. Examples of the input unit include a keyboard, a mouse, and a touch panel display.
上記ソフトウェアには、上記ハードウェアを制御するコンピュータ・プログラムやデータが含まれる。コンピュータ・プログラムやデータは、記憶部により記憶され、制御部により適宜実行、参照される。また、コンピュータ・プログラムやデータは、通信回線を介して必要に応じて適宜ダウンロードすることも可能であり、CD−ROM等のコンピュータ可読媒体に記録して配布することも可能である。 The software includes a computer program and data for controlling the hardware. The computer program and data are stored in the storage unit, and are appropriately executed and referenced by the control unit. Further, the computer program and data can be appropriately downloaded as necessary via a communication line, and can also be recorded and distributed on a computer-readable medium such as a CD-ROM.
送信側端末10及び受信側端末20の各端末装置に含まれる制御部としてのCPUは、各プログラムを実行することによって、それぞれ、送信側端末10及び受信側端末20の所定の手段として機能させる。
また、送信側端末10及び受信側端末20の各端末装置に含まれる制御部としてのCPUは各プログラムを実行することによって、それぞれ、送信側端末10及び受信側端末20に、所定の手順を実行させる。A CPU as a control unit included in each terminal device of the
Further, the CPU as a control unit included in each terminal device of the
以下、送信側端末10及び受信側端末20の各端末装置が、それぞれ有する機能を手段の観点から説明する。なお、手順(方法)の観点に基づく説明は、「部」を「手順」に置き換えることで説明できるため、省略する。
Hereinafter, the functions of the terminal devices of the transmitting
図2は、第1実施形態に係る送信側端末10の機能構成を示す図である。
FIG. 2 is a diagram illustrating a functional configuration of the transmission-
[送信側端末の機能構成]
送信側端末10は、予め、受信側端末20と共有するベース共通鍵Kbを格納するベース鍵格納部11と、平文Mを暗号化するための第1共通鍵Kuを生成する第1共通鍵生成部12と、ベース鍵格納部11に格納されたベース共通鍵Kbと第1共通鍵生成部12により生成された第1共通鍵Kuとを入力として、予め定めた可逆的な演算処理Fを実行することで第2共通鍵K2を生成する第2共通鍵生成部13と、第1共通鍵Kuを用いて平文Mを暗号化して暗号文Cを作成する暗号化部14と、第2共通鍵生成部13により生成された第2共通鍵K2を受信側端末20に送信する送信部15と、を備える。
なお、暗号化部14及び送信部15は、それぞれ公知の暗号化手段及び公知の送信手段を採用する。[Functional configuration of sending terminal]
The
The
ベース鍵格納部11は、例えば、公知のDH鍵交換方式に基づいて、共通鍵の受け渡しを行わずに、秘密裏に2者間で安全に生成されたベース共通鍵Kbを格納することができる。第1実施形態では、ベース共通鍵Kbは、整数とする。以下の説明においては、送信側端末10及び受信側端末20からなる2者間での共有であるが、前述したように、公知のDH鍵交換方式に基づいて、共通鍵の受け渡しを行わずに、秘密裏に3以上の任意の複数の端末装置間で安全に生成されたベース共通鍵Kbを格納することができる。ベース鍵Kb共有のための別形態として、DH鍵交換方式に基づかないで、ベース鍵格納部11は、送信側端末10において、例えば公知の乱数生成等により生成されたベース共通鍵Kbを格納することができる。その場合、ベース共通鍵Kbを例えば、記録媒体に記録して安全な方法で当該記録媒体を受信側端末20に送付することで、2者間で共有するようにしてもよい。なお、ベース鍵格納部11は、受信側端末20において生成されたベース共通鍵Kbを格納するようにしてもよい。
The base
第1共通鍵生成部12は、入力部を介して、利用者により入力された利用者の所望する鍵となる、第1共通鍵Kuを受け取り格納する。第1共通鍵Kuについては、半角英数記号文字から構成される半角英数記号文字列とする。
以下、特に断らない限り、半角英数記号文字及び半角英数記号文字列をそれぞれ、英数記号文字及び英数記号文字列ともいう。The first common
Hereinafter, unless otherwise specified, the half-width alphanumeric symbol character and the half-width alphanumeric symbol character string are also referred to as an alphanumeric symbol character and an alphanumeric symbol character string, respectively.
第2共通鍵生成部13は、第1共通鍵Kuとベース共通鍵Kbに所定の可逆的な演算処理Fを行い、第2共通鍵K2を生成する。
K2=F(Ku,Kb) (式5)
第2共通鍵生成部13の詳細については、後述で説明する。The second common
K2 = F (Ku, Kb) (Formula 5)
Details of the second common
送信部15は、第2共通鍵生成部13により生成された第2共通鍵K2を受信側端末20に送信する。なお、送信部15として、例えば、公知の電子メールを利用することができる。第2共通鍵K2を受信側端末20に送信する際、第2共通鍵K2をそのまま、電子メール等で送信することができる。
The
第2共通鍵生成部13は、任意の英数記号文字(例えば、ASCII文字)から構成される英数記号文字列を10進数の整数に変換する整数変換部01と、2つの整数を加算する第1演算処理部131と、を含む。
The second common
[整数変換部01]
整数変換部01は、任意の英数記号文字(例えば、ASCII文字)から構成される英数記号文字列を10進数の整数に変換する。[Integer conversion unit 01]
The
英数記号文字 (例えば、ASCII文字)は、図3に示すように、16進数の‘20’(=10進数の32)から‘7F’(=10進数の127)に対応して割り当てられている。
例えば、「Space」には10進数の32が、「!」には10進数の33が、数字文字「0」には10進数の48が、英字の「A」には10進数の65が、英字の「a」には10進数の97が、「Deleteキー」には10進数の127が、それぞれ対応する。
整数変換部01は、図3に示す、英数記号文字と10進数との対応関係を表すテーブル(以下「英数記号文字・10進数対応テーブル03」という)に基づいて、英数記号文字列を10進数の整数に変換する。
英数記号文字・10進数対応テーブル03は、送信側端末10が備えても良いし、ネットワーク上のアクセス可能な場所、例えばサーバやクラウド上にあってもよい。Alphanumeric symbol characters (for example, ASCII characters) are assigned corresponding to hexadecimal '20' (= decimal 32) to '7F' (= decimal 127) as shown in FIG. Yes.
For example, “Space” has a decimal number of 32, “!” Has a decimal number of 33, a numeric character “0” has a decimal number of 48, an English letter “A” has a decimal number of 65, The letter “a” corresponds to the
The
The alphanumeric symbol character / decimal number correspondence table 03 may be provided in the transmission-
以下、(式6)に示す、英数記号文字7桁から構成される英数記号文字列Kについて説明するが、英数記号文字列Kの桁数については、当業者であれば、必要に応じて適宜変更できる設計事項である。
K = a6a5a4a3a2a1a0 (式6)
ここで、aiは、ひとつの英数記号文字を意味する。
0≦i≦6Hereinafter, the alphanumeric symbol character string K composed of seven alphanumeric symbol characters shown in (Equation 6) will be described. The number of digits of the alphanumeric symbol character string K is necessary for those skilled in the art. It is a design matter that can be changed as appropriate.
K = a 6 a 5 a 4 a 3 a 2 a 1 a 0 ( Equation 6)
Here, a i means one alphanumeric symbol character.
0 ≦ i ≦ 6
整数変換部01は、(式7)に示すように、英数記号文字・10進数対応テーブル03に基づいて、英数記号文字列Kを構成する英数記号文字である各aiに対応する、10進数の整数Xi(32≦Xi≦127)を取得する。
Xi = TR(ai) (式7)
ここで、TR(ai)は、英数記号文字aiに対応する10進数を意味する。As shown in (Equation 7), the
X i = TR (a i) ( Equation 7)
Here, TR (a i ) means a decimal number corresponding to the alphanumeric symbol character a i .
次に、整数変換部01は、(式8)に示すように、10進数の整数Xi(32≦Xi≦127)から、それぞれ、16を引き、Yi(16≦Yi≦111)を算出する。
Yi = Xi − 16 (式8)Next, the
Yi = Xi-16 (Formula 8)
次に、整数変換部01は、(式9)に示すように、Yiをi番目の桁の値とする112進数を10進数の整数Zに変換する。
Z = Σ(0≦i≦6)Yi*(112)i (式9)
こうすることで、整数変換部01は、英数記号文字列Kを10進数の整数Zに変換することができる。
ここで、Zは、
Z≦221,067,981,971,086
を満たす整数(10進数表示)となる。Next, as shown in (Equation 9), the
Z = Σ (0 ≦ i ≦ 6) Yi * (112) i (Equation 9)
By doing so, the
Where Z is
Z≤221,067,981,971,086
It becomes an integer (decimal number display) that satisfies.
[第2共通鍵生成部13]
以上の説明を前提として、第2共通鍵生成部13の処理について説明する。
以下、英数記号文字7桁から構成される第1共通鍵Kuについて説明するが、桁数については、あくまでも一例であって、本発明の技術的範囲はこれに限られるものではなく、当業者であれば、必要に応じて適宜変更できる設計事項である。[Second common key generation unit 13]
Based on the above description, the processing of the second common
Hereinafter, the first common key Ku composed of seven alphanumeric characters will be described. However, the number of digits is merely an example, and the technical scope of the present invention is not limited to this. If so, it is a design matter that can be changed as needed.
第2共通鍵生成部13は、利用者により、第1共通鍵Kuが、英数記号文字列7桁未満で指定された場合、先頭にDeleteキー(10進数の127に対応)を付加して、7桁にする。なお、第1共通鍵生成部12は、入力部を介して利用者により入力された英数記号文字列が7桁未満の場合、入力エラーとして、利用者に7桁の英数記号文字列を再入力するように指示してもよい。
こうすることで、(式10)に示すように、第1共通鍵Kuを7桁の英数記号文字列とする。
Ku = a6a5a4a3a2a1a0 (式10)
ここで、aiは、ひとつの英数記号文字を意味する。
0≦i≦6The second common
By doing so, as shown in (Equation 10), the first common key Ku is made into a 7-digit alphanumeric symbol character string.
Ku = a 6 a 5 a 4 a 3 a 2 a 1 a 0 ( Equation 10)
Here, a i means one alphanumeric symbol character.
0 ≦ i ≦ 6
第2共通鍵生成部13は、整数変換部01により、第1共通鍵Kuとして指定した英数記号文字列Kuを10進数の整数Zに変換する。
ここで、Zは、
Z≦221,067,981,971,086
を満たす整数(10進数表示)となる。The second common
Where Z is
Z≤221,067,981,971,086
It becomes an integer (decimal number display) that satisfies.
次に、第2共通鍵生成部13は、(式11)に示すように、第1演算処理部131により、整数変換部01により算出された整数Zにベース共通鍵Kbを加算して、整数Kmを算出する。
Km = Z + Kb (式11)
なお、ベース共通鍵Kbを、予め、778,932,018,028、913以下となるように生成しておくことで、整数Zにベース共通鍵Kbを加算した整数Kmの値が、15桁以内の10進数となるようにすることができる。Next, as shown in (Equation 11), the second common
Km = Z + Kb (Formula 11)
The base common key Kb is generated in advance so as to be 778, 932, 018, 028, 913 or less, so that the value of the integer Km obtained by adding the base common key Kb to the integer Z is within 15 digits. It can be made to be a decimal number.
第2共通鍵生成部13は、 (式12)に示すように、整数Kmを第2共通鍵K2とすることができる。
K2 = Km (式12)The second common
K2 = Km (Formula 12)
以上のように、第2共通鍵生成部13は、利用者により入力された利用者の所望する第1共通鍵Ku(英数記号文字列)を、整数変換部01により10進数の整数Zに変換し、第1演算処理部131により、10進数の整数Zにベース共通鍵Kbを加算して、整数Kmを算出することで、第2共通鍵K2を算出する。
As described above, the second common
送信側端末10は、公知の暗号化/復号化手段を利用することにより、平文Mを、第1共通鍵Kuにより暗号化し、暗号文Cを作成することができる。
また、送信側端末10は、例えば、電子メール等の公知の通信ソフトを利用することにより、暗号文Cを受信側端末20に送信することができる。
また、前述したように、送信側端末10は、例えば、電子メール等の公知の通信ソフトを利用することにより、第2共通鍵K2を受信側端末20に送信することができる。The
Moreover, the
Further, as described above, the
[受信側端末]
次に、本実施形態における受信側端末20について説明する。
図2は、第1実施形態に係る受信側端末20の機能構成を示す図である。[Receiving terminal]
Next, the receiving
FIG. 2 is a diagram illustrating a functional configuration of the reception-
[受信側端末の機能構成]
受診側端末20は、予め、送信側端末10と共有するベース共通鍵Kbを格納するベース鍵格納部21と、送信側端末10から第2共通鍵K2を受信する受信部22と、受信部22により受信した第2共通鍵K2とベース鍵格納部21に格納されたベース共通鍵Kbを入力として、予め定めた可逆的な演算処理の逆演算処理を実行することで、第1共通鍵Kuを取得する第1共通鍵取得部23と、を備える。[Functional configuration of receiving terminal]
The consultation-
ベース鍵格納部21は、例えば、公知のDH鍵交換方式に基づいて、共通鍵の受け渡しを行わずに、秘密裏に2者間で安全に生成されたベース共通鍵Kbを格納することができる。第1実施形態では、ベース共通鍵Kbは、整数とする。前述したように、公知のDH鍵交換方式に基づいて、共通鍵の受け渡しを行わずに、秘密裏に3以上の任意の複数の端末装置間で安全に生成されたベース共通鍵Kbを格納することができる。ベース鍵Kb共有のための別形態として、DH鍵交換方式に基づかないで、ベース鍵格納部21は、受信側端末20において、例えば公知の乱数生成等により生成されたベース共通鍵Kbを格納することができる。その場合、ベース共通鍵Kbを例えば、記録媒体に記録して安全な方法で当該記録媒体を送信側端末10に送付することで、2者間で共有するようにしてもよい。なお、ベース鍵格納部21は、送信側端末10において生成されたベース共通鍵Kbを格納するようにしてもよい。
The base
受信部22は、送信側端末10が第2共通鍵生成部13により算出した第2共通鍵K2を送信側端末10から受信する。なお、受信部22として、例えば、公知の電子メールを採用することができる。第2共通鍵K2を送信側端末20から受信する際、第2共通鍵K2をそのまま、電子メール等で受信することができる。
The receiving
第1共通鍵取得部23は、任意の整数を英数記号文字から構成される英数記号文字列に変換する英数記号文字列変換部02と、2つの整数間の減算を行う第2演算処理部231と、を含む。
英数記号文字列変換部02と前述した整数変換部01とは、一方が他方の逆関数となる関係にある。The first common
The alphanumeric symbol character
[英数記号文字列変換部02]
英数記号文字列変換部02は、任意の整数Zを英数記号文字から構成される英数記号文字列Kに変換する。なお、英数記号文字列変換部02は、整数変換部01の逆変換に相当する。[Alphanumeric character string converter 02]
The alphanumeric symbol character
英数記号文字列変換部02は、(式13)に示すように、10進数の整数Zを112進数に変換する。
Z = Σ(0≦i≦6)Yi*(112)i (式13)The alphanumeric symbol character
Z = Σ (0 ≦ i ≦ 6) Yi * (112) i (Formula 13)
次に、英数記号文字列変換部02は、(式14)に示すように、112進数の各桁Yi(0≦Yi≦111)に16を加算して、各桁Xi(16≦Xi≦127)を算出する。
Xi = Yi + 16 (式14)Next, as shown in (Expression 14), the alphanumeric symbol character
Xi = Yi + 16 (Formula 14)
次に、英数記号文字列変換部02は、(式15)に示すように、英数記号文字・数字対応テーブル20に基づいて、各Xiに対応する、英数記号文字であるaiを取得する。
ai = TR−1(Xi) (16≦Xi≦127) (式15)
ここで、TR−1(Xi)は、10進数Xiに対応する英数記号文字であるaiを意味する。Next, as shown in (Equation 15), the alphanumeric symbol character
a i = TR −1 (Xi) (16 ≦ X i ≦ 127) (Formula 15)
Here, TR −1 (Xi) means a i that is an alphanumeric symbol character corresponding to the decimal number Xi.
次に、英数記号文字列変換部02は、(式16)に示すように、iの値の小さい順に英数記号文字である各aiを右から並べて、英数記号文字列Kを取得する。
K = a6a5a4a3a2a1a0 (式16)Next, as shown in (Equation 16), the alphanumeric symbol character
K = a 6 a 5 a 4 a 3 a 2 a 1 a 0 ( Equation 16)
なお、後述するように、第1共通鍵とベース共通鍵を加算して得られた整数を英数記号文字列Kに変換する場合に、英数記号文字列Kは、制御符号(16進数の‘10’(=10進数の16)から16進数の‘1F’ (=10進数の31))を含む可能性がある。この場合には、第2共通鍵を構成する英数記号文字の例外として制御符号のまま取り扱ってもよい。
また、10進数の16〜31に対応する制御符号16文字について、当該数値に64を加算して得られる整数に対応する印字可能文字を求め、当該印字可能文字に「コントロール+」(^)という前置表現を付けることで、制御符号を表記してもよい。
例えば、DLE(16進数の‘10’)を^P、US(16進数の‘1F’)を^_と表示することができる。
この場合、英数記号文字列に現れる^が、独立した英数記号文字を意味するのか、それとも前置表現を表しているかの判定が困難となる。
そこで、英数記号文字列における文字を一文字毎に区切ることで英数記号文字列に現れる^が、独立した英数記号文字を意味するのか、それとも前置表現を表しているかの判定を可能とすることができる。As will be described later, when an integer obtained by adding the first common key and the base common key is converted into an alphanumeric symbol character string K, the alphanumeric symbol character string K is a control code (hexadecimal number). There is a possibility of including '10' (= decimal 16) to hexadecimal '1F' (= decimal 31)). In this case, the control code may be handled as an exception to the alphanumeric symbol character constituting the second common key.
Further, for 16 control codes corresponding to
For example, DLE (hexadecimal '10') can be displayed as ^ P and US (hexadecimal '1F') as ^ _.
In this case, it becomes difficult to determine whether ^ appearing in the alphanumeric symbol character string means an independent alphanumeric symbol character or a prefix expression.
Therefore, it is possible to determine whether ^ that appears in an alphanumeric symbol character string means an independent alphanumeric symbol character or a prefix expression by separating the characters in the alphanumeric symbol character string one by one. can do.
[第1共通鍵取得部23]
以上の説明を前提として、第1共通鍵取得部23の機能について説明する。[First common key acquisition unit 23]
Based on the above description, the function of the first common
始めに受信部22により受信した第2共通鍵K2を10進数の整数Kmとする。
First, the second common key K2 received by the receiving
第1共通鍵取得部23は、(式17)に示すように、第2演算処理部231により、10進数の整数である第1中間鍵Kmから、10進数の整数であるベース共通鍵Kbを減算して、10進数の整数である第2中間鍵Zを算出する。
Z = Km − Kb (式17)As shown in (Equation 17), the first common
Z = Km−Kb (Formula 17)
次に、第1共通鍵取得部23は、英数字記号文字列変換部02により、10進数の整数である第2中間鍵Zを英数記号文字からなる英数記号文字列Kに変換する。
Next, the first common
第1共通鍵取得部23は、英数記号文字列Kの先頭がDeleteキー(10進数の127に対応)である場合、先頭のDeleteキー(10進数の127に対応)から連続するDeleteキーを削除することで、先頭がDeleteキー以外の英数記号文字となる7桁未満の英数記号文字列を算出し、当該英数記号文字列を第1共通鍵Kuとする。
こうすることで、(式18)に示すように、第1共通鍵Kuを7桁の英数記号文字列とする。
Ku = a6a5a4a3a2a1a0 (式18)
ここで、aiは、ひとつの英数記号文字を意味する。
0≦i≦6The first common
By doing so, as shown in (Equation 18), the first common key Ku is made into a 7-digit alphanumeric symbol character string.
Ku = a 6 a 5 a 4 a 3 a 2 a 1 a 0 ( Equation 18)
Here, a i means one alphanumeric symbol character.
0 ≦ i ≦ 6
以上のように、送信側端末10における第2共通鍵生成部13により、第2共通鍵K2が生成されている場合、受信側端末20における第1共通鍵取得部23により、第1共通鍵Kuを取得することができる。
As described above, when the second common key K2 is generated by the second common
以上で、情報システム1における受信側端末20における機能構成を説明した。
受信側端末20は、公知の暗号化/復号化手段を利用することにより、暗号文Cを第1共通鍵Kuにより復号化し、平文Mを作成することができる。
また、受信側端末20は、例えば、電子メール等の公知の通信ソフトを利用することにより、暗号文Cを送信側端末10から受信することができる。
また、前述したように、受信側端末10は、例えば、電子メール等の公知の通信ソフトを利用することにより、第2共通鍵K2を送信側端末10から受信することができる。The functional configuration of the reception-
The receiving
Further, the receiving
In addition, as described above, the receiving
[処理の流れ]
図4は、送信側端末10において、利用者の所望する、利用者自身が覚えやすい任意の第1共通鍵Kuに基づいて第2共通鍵K2を生成し、受信側端末20に配送するまでの処理の流れと、受信側端末20において、送信側端末10から暗号文と同時若しくは事後に受信する第2共通鍵K2から第1暗号鍵を取得するまでの処理の流れと、を示すフローチャートである。
図4を参照して、第1実施形態に係る情報システム1における処理の流れを説明する。[Process flow]
FIG. 4 shows a process from the
With reference to FIG. 4, the flow of processing in the
始めにステップST101において、送信側端末10のベース鍵格納部11は、例えば、公知のDH鍵交換方式に基づいて、秘密裏に受信側端末20のベース鍵格納部21との間で安全に共有するベース共通鍵Kb(整数)を格納する。
First, in step ST101, the base
ステップST201において、受信側端末20のベース鍵格納部21は、例えば、公知のDH鍵交換方式に基づいて、秘密裏に送信側端末10のベース鍵格納部11との間で安全に共有するベース共通鍵Kb(整数)を格納する。
In step ST201, the base
ステップST102において、送信側端末10の第1共通鍵生成部12は、入力部を介して、利用者により入力された利用者の所望する鍵となる、第1共通鍵Kuを受け取り、記憶部に格納する。
In step ST102, the first common
ステップST103において、送信側端末10の第2共通鍵生成部13は、第1共通鍵Kuが、英数記号列7桁未満で指定された場合、先頭にDeleteキー(10進数の127に対応)を付加して、7桁にする。
なお、ステップST102において、送信側端末10の第1共通鍵生成部12は、入力部を介して、利用者の所望する鍵となる、第1共通鍵Kuを受け取る際に、第1共通鍵Kuが英数記号列7桁未満の場合、エラーとして、利用者に対して再入力を促すようにしてもよい。
また、例示として、第1共通鍵Kuが英数記号文字列の場合に、その桁数を7桁としているが、桁数は、7桁に限定されるものではなく、適宜設定することができるIn step ST103, when the first common key Ku is designated with less than 7 digits of the alphanumeric symbol string, the second common
In step ST102, the first common
Further, as an example, when the first common key Ku is an alphanumeric symbol character string, the number of digits is 7 digits, but the number of digits is not limited to 7 digits and can be set as appropriate.
ステップST104において、送信側端末10の第2共通鍵生成部13は、整数変換部01により、第1共通鍵Ku(英数記号文字列)を10進数の整数Zに変換する。整数変換部01に係る処理の流れについては、後述する。
In step ST104, the second common
ステップST105において、送信側端末10の第2共通鍵生成部13は、第1演算処理部131により、10進数の整数Zにベース共通鍵Kbを加算して、10進数の整数Kmを算出する((式11)参照)。
In Step ST105, the second common
ステップST106において、送信側端末10は、ステップST105において算出された10進数の整数Kmを第2共通鍵K2として、受信側端末20に送信する。
In step ST106, the transmitting
ステップST202において、受信側端末20は、送信側端末10から、第2共通鍵K2(10進数の整数)を受信する。
In Step ST202, the receiving
ステップST203において、第1共通鍵取得部23は、第2演算処理部231により、10進数の整数である第2共通鍵K2から、10進数の整数であるベース共通鍵Kbを減算して、10進数の整数である第2中間鍵Zを算出する((式17)参照)。
In step ST203, the first common
ステップST204において、第1共通鍵取得部23は、英数字記号文字列変換部02により、10進数の整数である第2中間鍵Zを英数記号文字からなる第1共通鍵Kuに変換する((式18)参照)。
In step ST204, the first common
[整数変換部01に係る処理の流れ]
図5を参照して、英数記号文字列Kを10進数の整数Zに変換する整数変換部01に係る詳細な処理の流れを説明する。[Flow of processing according to integer conversion unit 01]
With reference to FIG. 5, a detailed processing flow according to the
ステップST301において、整数変換部01は、英数記号文字・10進数対応テーブル03に基づいて、英数記号文字列Kの各桁を構成する英数記号文字であるai(0≦i≦6)に対応する、10進数の整数Xi(32≦Xi≦127)を取得する((式7)参照)。
In step ST301, the
ステップST302において、整数変換部01は、10進数の整数Xi(32≦Xi≦127)から、それぞれ、16を引き、10進数の整数Yi(16≦Yi≦111)を算出する((式8)参照)。
In step ST302, the
ステップST303において、整数変換部01は、Yiをi番目の桁の値とする112進数を10進数の整数Zに変換する((式9)参照)。
In step ST303, the
[英数記号文字列変換部02に係る処理の流れ]
次に、図6を参照して、10進数の整数Zを英数記号文字列Kに変換する英数記号文字列変換部02に係る詳細な処理の流れを説明する。[Flow of processing related to alphanumeric character string conversion unit 02]
Next, with reference to FIG. 6, a detailed processing flow according to the alphanumeric symbol character
ステップST401において、英数記号文字列変換部02は、10進数の整数Zを112進数に変換する((式13)参照)。
In step ST401, the alphanumeric symbol character
ステップST402において、英数記号文字列変換部02は、ステップST401において算出した112進数の各桁Yi(0≦Yi≦111)に16を加算して、各桁Xi(16≦Xi≦127)を算出する((式14)参照)。
In step ST402, the alphanumeric symbol character
ステップST403において、英数記号文字列変換部02は、英数記号文字・数字対応テーブル20に基づいて、各Xiに対応する、英数記号文字であるaiを取得する((式15)参照)。In step ST 403, alphanumeric symbol
ステップST404において、英数記号文字列変換部02は、iの値の小さい順に英数記号文字である各aiを右から並べて、英数記号文字列Kを取得する((式16)参照)。In step ST404, the alphanumeric symbol character
ステップST405において、英数記号文字列変換部02は、英数記号文字であるaiのうち、制御符号については、対応する印字可能文字に「コントロール+」(^)を付けることで、制御符号を表記することで、第2共通鍵K2を算出する。In step ST405, the alphanumeric symbol character
[第1実施形態の効果]
以上説明した第1実施形態の情報システム1によれば以下の効果を奏する。
送信側端末10と受信側端末20の間で、ベース共通鍵Kbを共有した後は、利用者は、利用者自身の所望する鍵であって、利用者自身が覚えやすい任意の鍵(第1共通鍵Ku)により、平文Mを暗号化し、送信側端末から受信側端末に第2共通鍵K2を送信するだけでよい。
こうすることで、利用者は、利用者自身の所望する鍵であって、利用者自身が覚えやすい任意の鍵(例えば、パスワード、暗証番号等)により、平文Mを暗号化し、暗号文Cを作成することができ、利用者の利便性を向上させることができる。そして、利用者自身の所望する鍵とは異なる第2共通鍵K2を暗号文Cと共に或いは事後でも電子メール等により配送することができ、暗号鍵の配送についても安全性を担保することができる。
また、利用者は、暗号文を生成する毎に、毎回、第1共通鍵Kuを容易に変更することができ、暗号文の秘匿性をより高めることを容易に実現できる。[Effect of the first embodiment]
The
After sharing the base common key Kb between the transmitting
By doing so, the user encrypts the plaintext M with an arbitrary key (for example, password, personal identification number, etc.) that is desired by the user and is easy for the user to memorize, and converts the ciphertext C into It can be created and the convenience for the user can be improved. Then, the second common key K2 different from the key desired by the user can be delivered together with the ciphertext C or afterwards by e-mail or the like, and the security of the delivery of the encryption key can be ensured.
In addition, the user can easily change the first common key Ku every time the ciphertext is generated, and can easily realize the secrecy of the ciphertext.
[第2実施形態]
続いて、本発明の第2実施形態について、図面を参照しながら説明する。第1実施形態では、送信側端末10の第2共通鍵生成部12は、第1共通鍵Ku(英数記号文字列)を整数変換部01により変換した整数値を第2共通鍵K2としたが、第2実施形態では、送信側端末10の第2共通鍵生成部(以下「第2共通鍵生成部13A」という)は、整数変換部01により変換した整数値をさらに、英数記号文字列変換部02により英数記号文字列に変換して、当該英数記号文字列を第2共通鍵K2とする。
これに対応して、受信側端末20の第1共通鍵取得部(以下「第1共通鍵取得部23A」という)は、送信側端末10の第2共通鍵生成部13Aにより生成された第2共通鍵K2(英数記号文字列)から第1共通鍵Kuを取得する。
なお、第2実施形態の説明において、第1実施形態と同様の構成については同一の符号を付し、説明を省略する。[Second Embodiment]
Next, a second embodiment of the present invention will be described with reference to the drawings. In the first embodiment, the second common
Correspondingly, the first common key acquisition unit (hereinafter referred to as “first common
In the description of the second embodiment, the same components as those in the first embodiment are denoted by the same reference numerals, and the description thereof is omitted.
[機能構成]
図7に、第2実施形態に係る送信側端末10の機能構成を示す。[Function configuration]
FIG. 7 shows a functional configuration of the
[送信側端末の機能構成]
送信側端末10は、第1実施形態の第2共通鍵生成部13を第2共通鍵生成部13Aに置き換えたものとなる。第2実施形態の送信側端末10の各部の機能は、第2共通鍵生成部13Aを除いて、第1実施形態の送信側端末10の各部の機能と同じであるため、第2共通鍵生成部13A以外の構成については、同一の符号を付し、説明を省略する。
以下、第2共通鍵生成部13Aの処理について説明する。なお、第1実施形態の第2共通鍵生成部13と同様の構成については同一の符号を付し、説明を省略する。[Functional configuration of sending terminal]
The
Hereinafter, the process of the second common
[第2共通鍵生成部13A]
第2共通鍵生成部13Aは、任意の英数記号文字(例えば、ASCII文字)から構成される英数記号文字列を10進数の整数に変換する整数変換部01と、任意の整数を英数記号文字から構成される英数記号文字列に変換する英数記号文字列変換部02と、2つの整数を加算する第1演算処理部131と、を含む。[Second common
The second common
第2共通鍵生成部13Aは、整数変換部01により、第1共通鍵Kuとして指定した英数記号文字列Kuを10進数の整数Zに変換する。
The second common
次に、第2共通鍵生成部13Aは、(式19)に示すように、第1演算処理部131により、整数変換部01により算出された整数Zにベース共通鍵Kbを加算して、整数Km(「第1中間鍵Km」という)を算出する。
Km = Z + Kb (式19)Next, as shown in (Equation 19), the second common
Km = Z + Kb (Formula 19)
続いて、第2共通鍵生成部13Aは、英数記号文字列変換部02により、第1中間鍵Kmを英数記号文字列Kに変換する。第2共通鍵生成部13Aは、(式20)に示すように、変換された英数記号文字列Kを第2共通鍵K2とする。
K2 = K (式20)Subsequently, the second common
K2 = K (Formula 20)
以上のように、第2実施形態において、送信側端末10の第2共通鍵生成部13Aは、利用者により入力された利用者の所望する第1共通鍵Ku(英数記号文字列)を、整数変換部01により10進数の整数Zに変換し、第1演算処理部131により、10進数の整数Zにベース共通鍵Kbを加算して、第1中間鍵Kmを算出し、英数記号文字列変換部02により、第1中間鍵Kmを英数記号文字列に変換することで、第2共通鍵K2を算出する。
As described above, in the second embodiment, the second common
[受信側端末]
次に、第2実施形態における受信側端末20について説明する。
図7に、第2実施形態に係る受信側端末20の機能構成を示す。[Receiving terminal]
Next, the receiving
FIG. 7 shows a functional configuration of the receiving
[受信側端末の機能構成]
受信側端末20は、第1実施形態の第1共通鍵取得部23を第1共通鍵取得部23Aに置き換えたものとなる。第2実施形態の受信側端末の各部の機能は、第1共通鍵取得部23Aを除いて、第1実施形態の受信側端末の各部の機能と同じであるため、第1共通鍵取得部23A以外の構成については、同一の符号を付し、説明を省略する。
以下、第1共通鍵取得部23Aの処理について説明する。なお、第1実施形態の第1共通鍵取得部23と同様の構成については同一の符号を付し、説明を省略する。[Functional configuration of receiving terminal]
The receiving
Hereinafter, the process of the first common
第1共通鍵取得部23Aは、整数変換部01と、英数記号文字列変換部02と、2つの整数間の減算を行う第2演算処理部231と、を含む。
The first common
第1共通鍵取得部23Aは、整数変換部01により、英数記号文字からなる英数記号文字列である第2共通鍵K2を、10進数の整数である第1中間鍵Kmに変換する。
The first common
次に、第1共通鍵取得部23Aは、(式21)に示すように、第2演算処理部231により、10進数の整数である第1中間鍵Kmから、10進数の整数であるベース共通鍵Kbを減算して、10進数の整数である第2中間鍵Zを算出する。
Z = Km − Kb (式21)Next, as shown in (Equation 21), the first common
Z = Km−Kb (Formula 21)
次に、第1共通鍵取得部23Aは、英数字記号文字列変換部02により、10進数の整数である第2中間鍵Zを英数記号文字からなる英数記号文字列Kに変換する。
Next, the first common
第1共通鍵取得部23Aは、英数記号文字列Kの先頭がDeleteキー(10進数の127に対応)でない場合、英数記号文字列Kを第1共通鍵Kuとする(式22)。
Ku = a6a5a4a3a2a1a0 (式22)
ここで、aiは、ひとつの英数記号文字を意味する。
0≦i≦6
なお、英数記号文字列Kの先頭がDeleteキー(10進数の127に対応)である場合、先頭のDeleteキー(10進数の127に対応)から連続するDeleteキーを削除することで、先頭がDeleteキー以外の英数記号文字となる7桁未満の英数記号文字列を算出し、当該英数記号文字列を第1共通鍵Kuとする。The first common
Ku = a 6 a 5 a 4 a 3 a 2 a 1 a 0 ( Equation 22)
Here, a i means one alphanumeric symbol character.
0 ≦ i ≦ 6
In addition, when the head of the alphanumeric symbol character string K is the Delete key (corresponding to the decimal number 127), by deleting the continuous Delete key from the head Delete key (corresponding to the decimal number 127), the head is changed. An alphanumeric symbol character string of less than 7 digits that is an alphanumeric symbol character other than the Delete key is calculated, and the alphanumeric symbol character string is set as the first common key Ku.
以上のように、第2実施形態では、送信側端末10における第2共通鍵生成部13Aにより、第2共通鍵K2(英数記号文字列)が生成されている場合、受信側端末20における第1共通鍵取得部23Aにより、第1共通鍵Kuを取得することができる。
As described above, in the second embodiment, when the second common key K2 (alphanumeric symbol character string) is generated by the second common
[処理の流れ]
図8に、送信側端末10において、利用者の所望した、利用者自身が覚えやすい任意の第1共通鍵Kuに基づいて第2共通鍵K2を生成し、受信側端末20に配送するまでの処理の流れと、受信側端末20において、送信側端末10から暗号文と同時若しくは事後に受信する第2共通鍵K2から第1暗号鍵を取得するまでの処理の流れと、を示す。
図8を参照して、第2実施形態に係る情報システム1における処理の流れを説明する。[Process flow]
In FIG. 8, the
With reference to FIG. 8, the flow of processing in the
ステップST_A101において、送信側端末10のベース鍵格納部11は、例えば、公知のDH鍵交換方式に基づいて、秘密裏に受信側端末20のベース鍵格納部21との間で安全に共有するベース共通鍵Kb(整数)を格納する。
In step ST_A101, the base
ステップST_A201において、受信側端末20のベース鍵格納部21は、例えば、公知のDH鍵交換方式に基づいて、秘密裏に送信側端末10のベース鍵格納部11との間で安全に共有するベース共通鍵Kb(整数)を格納する。
In step ST_A201, the base
ステップST_A102において、送信側端末10の第1共通鍵生成部12は、入力部を介して、利用者により入力された利用者の所望する鍵となる、第1共通鍵Kuを受け取り、記憶部に格納する。
In step ST_A102, the first common
ステップST_A103において、送信側端末10の第2共通鍵生成部13Aは、第1共通鍵Kuが、英数記号列7桁未満で指定された場合、先頭にDeleteキー(10進数の127に対応)を付加して、7桁にする。
なお、ステップST_A102において、送信側端末10の第1共通鍵生成部12Aは、入力部を介して、利用者の所望する鍵となる、第1共通鍵Kuを受け取る際に、第1共通鍵Kuが英数記号列7桁未満の場合、エラーとして、利用者に対して再入力を促すようにしてもよい。
また、例示として、第1共通鍵Kuが英数記号文字列の場合に、その桁数を7桁としているが、桁数は、7桁に限定されるものではなく、適宜設定することができるIn step ST_A103, the second common
In step ST_A102, the first common key generation unit 12A of the
Further, as an example, when the first common key Ku is an alphanumeric symbol character string, the number of digits is 7 digits, but the number of digits is not limited to 7 digits and can be set as appropriate.
ステップST_A104において、送信側端末10の第2共通鍵生成部13Aは、整数変換部01により、第1共通鍵Ku(英数記号文字列)を10進数の整数Zに変換する。
In step ST_A104, the second common
ステップST_A105において、送信側端末10の第2共通鍵生成部13Aは、第1演算処理部131により、10進数の整数Zにベース共通鍵Kbを加算して、10進数の整数(第1中間鍵Km)を算出する((式19)参照)。
In step ST_A105, the second common
ステップST_A106において、送信側端末10の第2共通鍵生成部13Aは、英数記号文字列変換部02により、10進数の整数(第1中間鍵Km)を第2共通鍵K2(英数記号文字列)に変換する((式20)参照)。
In step ST_A106, the second common
ステップST_A107において、送信側端末10は、ステップST_A106において算出された第2共通鍵K2を受信側端末20に送信する。
In step ST_A107, the transmitting
ステップST_A202において、受信側端末20は、送信側端末10から、第2共通鍵K2を受信する。
In step ST_A202, the receiving
ステップST_A203において、受信側端末20の第1共通鍵取得部23Aは、整数変換部01により、英数記号文字からなる英数記号文字列である第2共通鍵K2を、10進数の整数である第1中間鍵Kmに変換する。
In step ST_A203, the first common
ステップST_A204において、第1共通鍵取得部23Aは、第2演算処理部231により、10進数の整数である第1中間鍵Kmから、10進数の整数であるベース共通鍵Kbを減算して、10進数の整数である第2中間鍵Zを算出する((式21)参照)。
In step ST_A204, the first common
ステップST_A205において、第1共通鍵取得部23Aは、英数字記号文字列変換部02により、10進数の整数である第2中間鍵Zを英数記号文字からなる第1共通鍵Kuに変換する((式22)参照)。
In step ST_A205, the first common
[第2実施形態の効果]
以上説明した第2実施形態の情報システム1によれば、第1実施形態と同様の効果を奏する。それに加えて、以下のような効果も奏する。[Effects of Second Embodiment]
According to the
第2実施形態においては、第1共通鍵Kuを整数変換部01、第2演算処理部231、及び英数字記号文字列変換部02の3つの異なる独立した変換部により、英数字文字列として生成する。
これにより、第2共通鍵K2から、第共通鍵Kuを算出することは、第1実施形態に比較してより困難になり、安全性を増すことができる。In the second embodiment, the first common key Ku is generated as an alphanumeric character string by three different independent conversion units: the
Thereby, it is more difficult to calculate the first common key Ku from the second common key K2, compared to the first embodiment, and the safety can be increased.
[第3実施形態]
続いて、本発明の第3実施形態について、図面を参照しながら説明する。第1実施形態では、送信側端末10の第1共通鍵生成部12第1共通鍵Kuを英数記号文字列としたが、第3実施形態では、第1共通鍵Kuを整数とする。
すなわち、送信側端末10の第1共通鍵生成部12(以下「第1共通鍵生成部12C」という)は、入力部を介して、利用者により入力された利用者の所望する鍵となる、第1共通鍵Kuを受け取り格納する。第1共通鍵Kuについては、整数とする。
なお、第3実施形態の説明において、第1実施形態と同様の構成については同一の符号を付し、説明を省略する。[Third Embodiment]
Next, a third embodiment of the present invention will be described with reference to the drawings. In the first embodiment, the first common
That is, the first common key generation unit 12 (hereinafter referred to as “first common key generation unit 12C”) of the
In the description of the third embodiment, the same components as those in the first embodiment are denoted by the same reference numerals, and the description thereof is omitted.
[機能構成]
図9に、第3実施形態に係る送信側端末10の機能構成を示す。[Function configuration]
FIG. 9 shows a functional configuration of the transmitting
[送信側端末の機能構成]
送信側端末10は、第1実施形態の第1共通鍵生成部12、及び第2共通鍵生成部13を、それぞれ第1共通鍵生成部12B、及び第2共通鍵生成部13Bに置き換えたものとなる。第2実施形態の送信側端末10の各部の機能は、第1共通鍵生成部12B、及び第2共通鍵生成部13Bを除いて、第1実施形態の送信側端末10の各部の機能と同じであるため、第1共通鍵生成部12B、及び第2共通鍵生成部13B以外の構成については、同一の符号を付し、説明を省略する。
以下、第2共通鍵生成部13Bの機能について説明する。なお、第1実施形態の第2共通鍵生成部13と同様の構成については同一の符号を付し、説明を省略する。[Functional configuration of sending terminal]
The
Hereinafter, the function of the second common
[第2共通鍵生成部13B]
第2共通鍵生成部13Bは、2つの整数を加算する第1演算処理部131を含む。[Second common
The second common
第2共通鍵生成部13Bは、第1共通鍵生成部12Bにより、第1共通鍵として指定した10進数の整数Kuにベース共通鍵Kbを加算して得られた整数を、第2共通鍵K2とする。
K2 = Ku + Kb (式23)The second common
K2 = Ku + Kb (Formula 23)
以上のように、第2共通鍵生成部13Bは、利用者により入力された利用者の所望する第1共通鍵Ku(整数)に対して、第1演算処理部131により、ベース共通鍵Kbを加算して、整数Kmを算出することで、第2共通鍵K2を算出する。
As described above, the second common
[受信側端末]
次に、第3実施形態における受信側端末20について説明する。
図9に、第3実施形態に係る受信側端末20の機能構成を示す。[Receiving terminal]
Next, the receiving
FIG. 9 shows a functional configuration of the receiving
[受信側端末の機能構成]
受診側端末20は、第1実施形態の第1共通鍵取得部23を第1共通鍵取得部23Bに置き換えたものとなる。第3実施形態の受信側端末の各部の機能は、第1共通鍵取得部23Bを除いて、第1実施形態の受信側端末の各部の機能と同じであるため、第1共通鍵取得部23B以外の構成については、同一の符号を付し、説明を省略する。
以下、第1共通鍵取得部23Bの処理について説明する。なお、第1実施形態の第1共通鍵取得部23と同様の構成については同一の符号を付し、説明を省略する。[Functional configuration of receiving terminal]
The consultation-
Hereinafter, the process of the 1st common
第1共通鍵取得部23Bは、2つの整数間の減算を行う第2演算処理部231を含む。
The first common
第1共通鍵取得部23Bは、(式24)に示すように、第2演算処理部231により、第2共通鍵K2から、10進数の整数であるベース共通鍵Kbを減算して、10進数の整数である第2中間鍵Zを算出し、当該整数Zを第1共通鍵Kuとする。
Z = K2 − Kb (式24)As shown in (Equation 24), the first common
Z = K2−Kb (Formula 24)
以上のように、第3実施形態では、送信側端末10における第2共通鍵生成部13Bにより、第2共通鍵K2(英数記号文字列)が生成されている場合、受信側端末20における第1共通鍵取得部23Bにより、第1共通鍵Kuを取得することができる。
As described above, in the third embodiment, when the second common key K2 (alphanumeric symbol character string) is generated by the second common
[処理の流れ]
図10に、送信側端末10において、利用者の所望した、利用者自身が覚えやすい任意の第1共通鍵Kuに基づいて第2共通鍵K2を生成し、受信側端末20に配送するまでの処理の流れと、受信側端末20において、送信側端末10から暗号文と同時若しくは事後に受信する第2共通鍵K2から第1暗号鍵を取得するまでの処理の流れと、を示す。
図10を参照して、第3実施形態に係る情報システム1における処理の流れを説明する。[Process flow]
In FIG. 10, the
With reference to FIG. 10, the flow of processing in the
ステップST_B101において、送信側端末10のベース鍵格納部11は、例えば、公知のDH鍵交換方式に基づいて、秘密裏に受信側端末20のベース鍵格納部21との間で安全に共有するベース共通鍵Kb(整数)を格納する。
In step ST_B101, the base
ステップST_B201において、受信側端末20のベース鍵格納部21は、例えば、公知のDH鍵交換方式に基づいて、秘密裏に送信側端末10のベース鍵格納部11との間で安全に共有するベース共通鍵Kb(整数)を格納する。
In step ST_B201, the base
ステップST_B102において、送信側端末10の第1共通鍵生成部12Bは、入力部を介して、利用者により入力された利用者の所望する鍵となる、第1共通鍵Ku(整数)を受け取り、記憶部に格納する。
In step ST_B102, the first common
ステップST_B103において、送信側端末10の第2共通鍵生成部13Bは、第1演算処理部131により、第1共通鍵Ku(整数)にベース共通鍵Kb(整数)を加算して、10進数の整数Zを算出し、第2共通鍵K2とする。
In step ST_B103, the second common
ステップST_B104において、送信側端末10は、ステップST_B103において算出された第2共通鍵K2を受信側端末20に送信する。
In step ST_B104, the transmitting
ステップST_B202において、受信側端末20は、送信側端末10から、第2共通鍵K2を受信する。
In step ST_B202, the receiving
ステップST_B203において、受信側端末20の第1共通鍵取得部23Bは、第2演算処理部231により、10進数の整数である第2共通鍵K2から、10進数の整数であるベース共通鍵Kbを減算して、10進数の整数Zを算出し、当該整数Zを第1共通鍵Kuとする。
In step ST_B203, the first common
[第3実施形態の効果]
以上説明した第3実施形態の情報システム1によれば、第1実施形態と同様の効果を奏する。それに加えて、以下のような効果も奏する。[Effect of the third embodiment]
According to the
第3実施形態においては、送信側端末10の第2共通鍵生成部13Bは、第1共通鍵Ku及びベース共通鍵Kbの単なる加算演算により第2共通鍵K2を算出し、受信側端末20の第1共通鍵取得部23Bは、第2共通鍵K2及びベース共通鍵Kbの単なる減算演算により第1共通鍵Kuを算出する。
これにより、送信側端末10及び受信側端末20において、演算処理をより高速化することができる。In the third embodiment, the second common
Thereby, in the
以上、本発明の好ましい第1実施形態から第3実施形態につき説明したが、本発明は、上述の実施形態に制限されるものではなく、適宜変更が可能である。 As described above, the first to third preferred embodiments of the present invention have been described. However, the present invention is not limited to the above-described embodiments, and can be appropriately changed.
[変形例1]
例えば、上記第1実施形態及び第2実施形態では、整数変換部01及び英数記号文字列変換部02は、112進数を応用したが、112進数に換えて96進数を応用してもよい。
具体的には、96進数を応用した整数変換部(以下、「整数変換部01A」という)及び英数記号文字列変換部(以下、「英数記号文字列変換部02A」という)は、次のとおりである。[Modification 1]
For example, in the first embodiment and the second embodiment, the
Specifically, an integer conversion unit (hereinafter referred to as “integer conversion unit 01A”) and an alphanumeric symbol character string conversion unit (hereinafter referred to as “alphanumeric symbol character string conversion unit 02A”) using 96-digit numbers are It is as follows.
[整数変換部01A(整数変換部01の別の実施例)]
整数変換部01Aは、(式7)に示すように、整数変換部01と同様に、英数記号文字・10進数対応テーブル03に基づいて、英数記号文字列Kを構成する英数記号文字である各aiに対応する、10進数の整数Xi(32≦Xi≦127)を取得する。[Integer Conversion Unit 01A (Another Example of Integer Conversion Unit 01)]
As shown in (Equation 7), the integer conversion unit 01A, like the
次に、整数変換部01Aは、(式25)に示すように、10進数の整数Xi(32≦Xi≦127)から、それぞれ、32を引き、Yi(0≦Yi≦95)を算出する。
Yi = Xi − 32 (式25)Next, the integer conversion unit 01A calculates Yi (0 ≦ Yi ≦ 95) by subtracting 32 from the decimal integer Xi (32 ≦ Xi ≦ 127), respectively, as shown in (Expression 25).
Yi = Xi−32 (Formula 25)
次に、整数変換部01Aは、(式26)に示すように、Yiをi番目の桁の値とする96進数を10進数の整数Zに変換する。
Z = Σ(0≦i≦6)Yi*(96)i (式26)
こうすることで、整数変換部01Aは、英数記号文字列Kを10進数の整数Zに変換することができる。
ここで、Zは、
Z≦75,144,747,810,815
を満たす整数(10進数表示)となる。Next, as shown in (Equation 26), the integer conversion unit 01A converts a 96-digit number having Yi as the value of the i-th digit into a decimal integer Z.
Z = Σ (0 ≦ i ≦ 6) Yi * (96) i (Formula 26)
By doing so, the integer conversion unit 01A can convert the alphanumeric symbol character string K into a decimal integer Z.
Where Z is
Z ≦ 75, 144, 747, 810, 815
It becomes an integer (decimal number display) that satisfies.
[英数記号文字列変換部02A]
英数記号文字列変換部02Aは、(式27)に示すように、10進数の整数Zを96進数に変換する。
Z = Σ(0≦i≦6)Yi*(96)i (式27)[Alphanumeric character string converter 02A]
The alphanumeric symbol character string conversion unit 02A converts a decimal integer Z into a 96-digit number, as shown in (Expression 27).
Z = Σ (0 ≦ i ≦ 6) Yi * (96) i (Formula 27)
次に、英数記号文字列変換部02Aは、(式28)に示すように、各桁Yi(0≦Yi≦95)に32を加算して、各桁Xi(32≦Xi≦127)を算出する。
Xi = Yi + 32 (式28)Next, as shown in (Equation 28), the alphanumeric symbol character string conversion unit 02A adds 32 to each digit Yi (0 ≦ Yi ≦ 95) to obtain each digit Xi (32 ≦ Xi ≦ 127). calculate.
Xi = Yi + 32 (Formula 28)
次に、英数記号文字列変換部02Aは、(式29)に示すように、英数記号文字・数字対応テーブル20に基づいて、各Xiに対応する、英数記号文字であるaiを取得する。
ai = TR−1(Xi) (16≦Xi≦127) (式29)
ここで、TR−1(Xi)は、10進数Xiに対応する英数記号文字であるaiを意味する。Next, the alphanumeric symbol character string conversion unit 02A converts ai , which is an alphanumeric symbol character corresponding to each Xi, based on the alphanumeric symbol character / number correspondence table 20 as shown in (Equation 29). get.
a i = TR −1 (Xi) (16 ≦ X i ≦ 127) (Formula 29)
Here, TR −1 (Xi) means a i that is an alphanumeric symbol character corresponding to the decimal number Xi.
次に、英数記号文字列変換部02Aは、(式30)に示すように、iの値の小さい順に英数記号文字である各aiを右から並べて、英数記号文字列Kを取得する。
K = a6a5a4a3a2a1a0 (式30)
以上、整数変換部01Aとその逆変換に相当する英数記号文字列変換部02Aについて説明した。Next, the alphanumeric symbol character string conversion unit 02A obtains an alphanumeric symbol character string K by arranging each ai that is an alphanumeric symbol character from the right in ascending order of the value of i as shown in (Equation 30). To do.
K = a 6 a 5 a 4 a 3 a 2 a 1 a 0 ( Equation 30)
The integer conversion unit 01A and the alphanumeric symbol character string conversion unit 02A corresponding to the inverse conversion have been described above.
そして、第1実施形態及び第2実施形態において、整数変換部01及び英数記号文字列変換部02に換えて、それぞれ整数変換部01A及び英数記号文字列変換部02Aを採用することとしてもよい。
In the first embodiment and the second embodiment, instead of the
[変形例2]
第1実施形態、第2実施形態、及び第3実施形態において、送信側端末10の第1演算処理部131が、加算演算をする代わりに、例えば、減算(−)、乗算(*)、除算(/)等の四則演算処理を採用してもよい。この場合、受信側端末20の第2演算処理部231は送信側端末10の第1演算処理部131の逆演算処理を行うように構成する。[Modification 2]
In the first embodiment, the second embodiment, and the third embodiment, the first
[変形例3]
第1実施形態、第2実施形態、及び第3実施形態において、送信側端末の第1演算処理部131が、加算演算をする代わりに、例えば、ビットの排他的論理和等の論理演算を採用してもよい。この場合、受信側端末20の第1共通鍵取得部23の第2演算処理部231は、第2共通鍵K2のビット列にベース共通鍵Kbのビット列の排他的論理和をするように構成することで、第1共通鍵Kuを算出することができる[Modification 3]
In the first embodiment, the second embodiment, and the third embodiment, instead of the addition operation, the first
以上、好適な実施形態について説明したが、本発明は前述した実施形態に限定されることなく種々の形態で実施することができる。前述の実施形態に記載された効果は、本発明から生じる最も好適な効果を列挙したに過ぎず、本発明による効果は、前述のものに限定されない。 As mentioned above, although preferred embodiment was described, this invention can be implemented with a various form, without being limited to embodiment mentioned above. The effects described in the above-described embodiment only list the most preferable effects resulting from the present invention, and the effects of the present invention are not limited to those described above.
1 情報システム
01、01A 整数変換部
02、02A 英数記号文字列変換部
03 英数記号文字・10進数対応テーブル
10 送信側端末
11 ベース鍵格納部
12、12B 第1共通鍵生成部
13、13A、13B 第2共通鍵生成部
14 暗号化部
15 送信部
16 第1共通鍵生成部
20 受信側端末
21 ベース鍵格納部
22 受信部
23、23A、23B 第1共通鍵取得部
131 第1演算処理部
231 第2演算処理部
1
Claims (8)
コンピュータ装置が、
予め、Diffie−Hellman鍵交換方式に基づいて前記他のコンピュータ装置と共有する共通鍵を生成し、生成した共通鍵をベース共通鍵として格納するベース共通鍵格納ステップと、
利用者の所望する文字列又は数値からなる任意の英数記号文字から構成される英数記号文字列である第1共通鍵を生成する第1共通鍵生成ステップと、
前記第1共通鍵及び前記ベース共通鍵を入力として、可逆的な変換処理を行い、第2の整数である第2共通鍵を生成する第2共通鍵生成ステップと、
前記通信ネットワークを介して、前記他のコンピュータ装置に対して前記第1共通鍵ではなく前記第2共通鍵を送信する通信ステップと、を含み、
前記第2共通鍵生成ステップは、さらに、
前記第1共通鍵である英数記号文字列を第1の整数に可逆的に変換する整数変換ステップと、
前記整数変換ステップにより算出された前記第1の整数及び前記ベース共通鍵を入力として、前記第2の整数を算出する第1演算処理ステップと、を含み、
前記整数変換ステップは、さらに、
英数記号文字の各々が、32以上127以下の整数の各々に1対1に対応付けられた、文字・整数対応テーブルに基づいて、前記英数記号文字列を構成する各桁の英数記号文字に対応する整数を算出するステップと、
前記各桁における英数記号文字に対応する各整数をそれぞれ16以上111以下の整数にシフトするステップとし、
前記シフトされた、各桁における英数記号文字に対応する各整数を、112進数における桁の値とする112進数を算出するステップと、
前記算出された112進数を10進数の整数である前記第1の整数に変換するステップと、を含む、方法。 A common key delivery method for a computer device to create a first common key for encrypting plaintext and deliver key information to another computer device via a communication network,
Computer equipment
A base common key storage step for generating a common key shared with the other computer device based on a Diffie-Hellman key exchange method in advance and storing the generated common key as a base common key;
A first common key generation step of generating a first common key which is an alphanumeric symbol character string composed of an arbitrary alphanumeric character consisting of a character string or a numerical value desired by a user;
A second common key generation step of performing a reversible conversion process using the first common key and the base common key as inputs, and generating a second common key that is a second integer ;
Transmitting the second common key instead of the first common key to the other computer apparatus via the communication network ,
The second common key generation step further includes:
An integer conversion step of reversibly converting the alphanumeric symbol character string as the first common key into a first integer;
A first arithmetic processing step of calculating the second integer using the first integer calculated by the integer conversion step and the base common key as inputs, and
The integer conversion step further includes:
Based on the character / integer correspondence table in which each of the alphanumeric symbol characters is associated with each of the integers of 32 to 127 in one-to-one correspondence, the alphanumeric symbols of each digit constituting the alphanumeric symbol character string Calculating an integer corresponding to the character;
Shifting each integer corresponding to an alphanumeric symbol character in each digit to an integer between 16 and 111,
Calculating a 112-ary number with each shifted integer corresponding to an alphanumeric symbol character in each digit as the value of the digit in 112-digit number;
Converting the computed 112 decimal number to the first integer being a decimal integer .
コンピュータ装置が、
予め、Diffie−Hellman鍵交換方式に基づいて前記他のコンピュータ装置と共有する共通鍵を生成し、生成した共通鍵をベース共通鍵として格納するベース共通鍵格納ステップと、
利用者の所望する文字列又は数値からなる任意の英数記号文字から構成される英数記号文字列である第1共通鍵を生成する第1共通鍵生成ステップと、
前記第1共通鍵及び前記ベース共通鍵を入力として、可逆的な変換処理を行い、英数記号文字から構成される英数記号文字列である第2共通鍵を生成する第2共通鍵生成ステップと、
前記通信ネットワークを介して、前記他のコンピュータ装置に対して前記第1共通鍵ではなく前記第2共通鍵を送信する通信ステップと、を含み、
前記第2共通鍵生成ステップは、さらに、
前記第1共通鍵である英数記号文字列を第1の整数に可逆的に変換する整数変換ステップと、
前記整数変換ステップにより算出された前記第1の整数及び前記ベース共通鍵を入力として、第2の整数を算出する第1演算処理ステップと、
前記第1演算処理ステップにより算出された第2の整数を前記英数記号文字から構成される英数記号文字列である第2共通鍵に可逆的に変換する英数記号文字列変換ステップと、を含み、
前記英数記号文字列変換ステップにより算出された第2の英数記号文字列を第2共通鍵とし、
前記整数変換ステップは、さらに、
英数記号文字の各々が、32以上127以下の整数の各々に1対1に対応付けられた、文字・整数対応テーブルに基づいて、前記英数記号文字列を構成する各桁の英数記号文字に対応する整数を算出するステップと、
前記各桁における英数記号文字に対応する各整数をそれぞれ16以上111以下の整数にシフトするステップとし、
前記シフトされた、各桁における英数記号文字に対応する各整数を、112進数における桁の値とする112進数を算出するステップと、
前記算出された112進数を10進数の整数である前記第1の整数に変換するステップと、を含む、方法。 A common key delivery method for a computer device to create a first common key for encrypting plaintext and deliver key information to another computer device via a communication network,
Computer equipment
A base common key storage step for generating a common key shared with the other computer device based on a Diffie-Hellman key exchange method in advance and storing the generated common key as a base common key;
A first common key generation step of generating a first common key which is an alphanumeric symbol character string composed of an arbitrary alphanumeric character consisting of a character string or a numerical value desired by a user;
A second common key generation step for generating a second common key that is an alphanumeric symbol character string composed of alphanumeric symbol characters by performing reversible conversion processing using the first common key and the base common key as inputs. When,
Transmitting the second common key instead of the first common key to the other computer apparatus via the communication network ,
The second common key generation step further includes:
An integer conversion step of reversibly converting the alphanumeric symbol character string as the first common key into a first integer;
A first calculation processing step of calculating a second integer by using the first integer calculated by the integer conversion step and the base common key as inputs;
An alphanumeric symbol character string conversion step for reversibly converting the second integer calculated in the first arithmetic processing step into a second common key that is an alphanumeric symbol character string composed of the alphanumeric symbol characters; Including
The second alphanumeric key character string calculated in the alphanumeric symbol character string conversion step as a second common key,
The integer conversion step further includes:
Based on the character / integer correspondence table in which each of the alphanumeric symbol characters is associated with each of the integers of 32 to 127 in one-to-one correspondence, the alphanumeric symbols of each digit constituting the alphanumeric symbol character string Calculating an integer corresponding to the character;
Shifting each integer corresponding to an alphanumeric symbol character in each digit to an integer between 16 and 111,
Calculating a 112-ary number with each shifted integer corresponding to an alphanumeric symbol character in each digit as the value of the digit in 112-digit number;
Converting the computed 112 decimal number to the first integer being a decimal integer .
コンピュータ装置が、
予め、Diffie−Hellman鍵交換方式に基づいて前記他のコンピュータ装置と共有する共通鍵を生成し、生成した共通鍵をベース共通鍵として格納するベース共通鍵格納ステップと、
前記他のコンピュータ装置から通信ネットワークを介して、前記第1共通鍵とは異なる英数記号文字から構成される英数記号文字列である第2共通鍵を受信するステップと、
前記他のコンピュータ装置から受信した前記第2共通鍵及び前記ベース共通鍵を入力として、可逆的な変換処理を行い、前記第1共通鍵を取得する第1共通鍵取得ステップと、
前記第1共通鍵取得ステップは、さらに、
前記第2共通鍵である英数記号文字列を可逆的に第2の整数に変換する整数変換ステップと、
前記第2の整数及び前記ベース共通鍵を入力として、第1の整数を算出する第2演算処理ステップと、
前記第2演算処理ステップにより算出された前記第1の整数を第1の英数記号文字列に可逆的に変換する英数記号文字列変換ステップと、を含み、
前記英数記号文字列変換ステップにより算出された第1の英数記号文字列を第1共通鍵とし、
前記整数変換ステップは、さらに、
英数記号文字の各々が、32以上127以下の整数の各々に1対1に対応付けられた、文字・整数対応テーブルに基づいて、前記英数記号文字列を構成する各桁の英数記号文字に対応する整数を算出するステップと、
前記各桁における英数記号文字に対応する各整数をそれぞれ16以上111以下の整数にシフトするステップとし、
前記シフトされた、各桁における英数記号文字に対応する各整数を、112進数における桁の値とする112進数を算出するステップと、
前記算出された112進数を10進数の整数である前記第2の整数に変換するステップと、を含む、方法。 A first common key that is an alphanumeric symbol character string composed of an alphanumeric symbol character consisting of a character string or a numerical value desired by a ciphertext creator for the computer device to decrypt the ciphertext via a communication network A method for receiving delivery from another computer device,
Computer equipment
A base common key storage step for generating a common key shared with the other computer device based on a Diffie-Hellman key exchange method in advance and storing the generated common key as a base common key;
Receiving a second common key that is an alphanumeric symbol character string composed of alphanumeric symbol characters different from the first common key from the other computer device via a communication network;
A first common key obtaining step of performing reversible conversion processing using the second common key and the base common key received from the other computer device as inputs, and obtaining the first common key;
The first common key acquisition step further includes:
An integer conversion step of reversibly converting the alphanumeric symbol character string as the second common key into a second integer;
A second operation processing step of calculating the first integer using the second integer and the base common key as inputs;
An alphanumeric symbol character string conversion step for reversibly converting the first integer calculated by the second arithmetic processing step into a first alphanumeric symbol character string,
The first alphanumeric symbol character string calculated by the alphanumeric symbol character string conversion step as a first common key,
The integer conversion step further includes:
Based on the character / integer correspondence table in which each of the alphanumeric symbol characters is associated with each of the integers of 32 to 127 in one-to-one correspondence, the alphanumeric symbols of each digit constituting the alphanumeric symbol character string Calculating an integer corresponding to the character;
Shifting each integer corresponding to an alphanumeric symbol character in each digit to an integer between 16 and 111,
Calculating a 112-ary number with each shifted integer corresponding to an alphanumeric symbol character in each digit as the value of the digit in 112-digit number;
Converting the computed 112 decimal number to the second integer which is a decimal integer .
前記送信側端末装置は、
予め、Diffie−Hellman鍵交換方式に基づいて前記受信側端末装置と共有する共通鍵を生成し、生成した共通鍵をベース共通鍵として格納するベース共通鍵格納部と、
利用者の所望する文字列又は数値からなる任意の英数記号文字から構成される英数記号文字列である第1共通鍵を生成する第1共通鍵生成部と、
前記第1共通鍵及び前記ベース共通鍵を入力として、可逆的な変換処理を行い、英数記号文字から構成される英数記号文字列である第2共通鍵を生成する第2共通鍵生成部と、
前記受信側端末装置に対して前記第1共通鍵ではなく前記第2共通鍵を送信する前記受信側端末装置と通信するための通信部と、を含み、
前記第2共通鍵生成部は、さらに、
前記第1共通鍵を第1の整数に可逆的に変換する整数変換部と、
前記整数変換部により算出された前記第1の整数及び前記ベース共通鍵を入力として、第1演算処理を行い、第2の整数を算出する第1演算処理部と、
前記第1演算処理部により算出された第2の整数を第2の英数記号文字列に可逆的に変換する英数記号文字列変換部と、を含み、
前記整数変換部は、さらに、
英数記号文字の各々が、32以上127以下の整数の各々に1対1に対応付けられた、文字・整数対応テーブルに基づいて、前記英数記号文字列を構成する各桁の英数記号文字に対応する整数を算出し、
前記各桁における英数記号文字に対応する各整数をそれぞれ16以上111以下の整数にシフトし、
前記シフトされた、各桁における英数記号文字に対応する各整数を、112進数における桁の値とする112進数を算出し、
前記算出された112進数を10進数の整数である前記第1の整数に変換し、
前記受信側端末装置は、
予め、Diffie−Hellman鍵交換方式に基づいて前記送信側端末装置と共有する共通鍵を生成し、生成した共通鍵をベース共通鍵として格納するベース鍵格納部と、
前記送信側端末装置から通信ネットワークを介して、前記第1共通鍵とは異なる第2共通鍵を受信するための通信部と、
前記送信側端末装置から前記通信部を介して受信した前記第2共通鍵及び前記ベース鍵格納部に格納されたベース共通鍵を入力として可逆的な変換処理を行い、前記第1共通鍵を取得する第1共通鍵取得部と、を含み、
前記第1共通鍵取得部は、さらに、
前記第2共通鍵及び前記ベース共通鍵を入力として、第2演算処理を行い、第1の整数を算出する第2演算処理部と、
前記第2演算処理部により算出された前記第1の整数を第1の英数記号文字列に可逆的に変換する第2英数記号文字列変換部と、を含み、
前記第2英数記号文字列変換部により算出された第1の英数記号文字列を第1共通鍵とする、
共通鍵配送システム。 A first common key for encrypting plaintext is created, and the first common key is obtained from the transmission side terminal device that delivers key information to the reception side terminal device, and the key information delivered from the transmission side terminal device. A common key distribution system including the receiving terminal device to obtain,
The transmitting terminal device
A base common key storage unit that generates a common key shared with the receiving terminal device based on the Diffie-Hellman key exchange method in advance, and stores the generated common key as a base common key;
A first common key generation unit that generates a first common key that is an alphanumeric symbol character string composed of an arbitrary alphanumeric character consisting of a character string or a numerical value desired by a user;
A second common key generation unit that receives the first common key and the base common key and performs a reversible conversion process to generate a second common key that is an alphanumeric symbol character string composed of alphanumeric symbol characters When,
A communication unit for communicating with the receiving terminal device that transmits the second common key instead of the first common key to the receiving terminal device,
The second common key generation unit further includes:
An integer conversion unit that reversibly converts the first common key into a first integer;
A first arithmetic processing unit that performs the first arithmetic processing by using the first integer calculated by the integer conversion unit and the base common key as inputs, and calculates a second integer;
An alphanumeric symbol character string conversion unit that reversibly converts the second integer calculated by the first arithmetic processing unit into a second alphanumeric symbol character string,
The integer conversion unit further includes:
Based on the character / integer correspondence table in which each of the alphanumeric symbol characters is associated with each of the integers of 32 to 127 in one-to-one correspondence, the alphanumeric symbols of each digit constituting the alphanumeric symbol character string Calculate the integer corresponding to the character,
Each integer corresponding to the alphanumeric symbol character in each digit is shifted to an integer between 16 and 111,
Calculating a 112-digit number in which each integer corresponding to the alphanumeric symbol character in each digit that has been shifted is a value in a 112-digit number;
Converting the calculated 112-decimal number to the first integer which is a decimal integer;
The receiving terminal device
A base key storage unit that generates a common key shared with the transmission side terminal device based on the Diffie-Hellman key exchange method in advance, and stores the generated common key as a base common key;
A communication unit for receiving a second common key different from the first common key from the transmitting terminal device via a communication network;
The first common key is obtained by performing a reversible conversion process using the second common key received from the transmitting terminal device via the communication unit and the base common key stored in the base key storage unit as inputs. It includes a first common key obtaining unit to the,
The first common key acquisition unit further includes:
A second arithmetic processing unit that performs the second arithmetic processing with the second common key and the base common key as inputs, and calculates a first integer;
A second alphanumeric character string conversion unit that reversibly converts the first integer calculated by the second arithmetic processing unit into a first alphanumeric character string;
The first alphanumeric symbol character string calculated by the second alphanumeric symbol character string conversion unit is used as a first common key.
Common key distribution system.
前記送信側端末装置は、
予め、Diffie−Hellman鍵交換方式に基づいて前記受信側端末装置と共有する共通鍵を生成し、生成した共通鍵をベース共通鍵として格納するベース共通鍵格納部と、
利用者の所望する文字列又は数値からなる任意の英数記号文字から構成される英数記号文字列である第1共通鍵を生成する第1共通鍵生成部と、
前記第1共通鍵及び前記ベース共通鍵を入力として、可逆的な変換処理を行い、英数記号文字から構成される英数記号文字列である第2共通鍵を生成する第2共通鍵生成部と、
前記受信側端末装置に対して前記第1共通鍵ではなく前記第2共通鍵を送信する前記受信側端末装置と通信するための通信部と、を含み、
前記第2共通鍵生成部は、さらに、
前記第1共通鍵を第1の整数に可逆的に変換する整数変換部と、
前記整数変換部により算出された前記第1の整数及び前記ベース共通鍵を入力として、第1演算処理を行い、第2の整数を算出する第1演算処理部と、
前記第1演算処理部により算出された第2の整数を第2の英数記号文字列に可逆的に変換する英数記号文字列変換部と、を含み、
前記整数変換部は、さらに、
英数記号文字の各々が、32以上127以下の整数の各々に1対1に対応付けられた、文字・整数対応テーブルに基づいて、前記英数記号文字列を構成する各桁の英数記号文字に対応する整数を算出し、
前記各桁における英数記号文字に対応する各整数をそれぞれ16以上111以下の整数にシフトし、
前記シフトされた、各桁における英数記号文字に対応する各整数を、112進数における桁の値とする112進数を算出し、
前記算出された112進数を10進数の整数である前記第1の整数に変換し、
前記受信側端末装置は、
予め、Diffie−Hellman鍵交換方式に基づいて前記送信側端末装置と共有する共通鍵を生成し、生成した共通鍵をベース共通鍵として格納するベース鍵格納部と、
前記送信側端末装置から通信ネットワークを介して、前記第1共通鍵とは異なる第2共通鍵を受信するための通信部と、
前記送信側端末装置から前記通信部を介して受信した前記第2共通鍵及び前記ベース鍵格納部に格納されたベース共通鍵を入力として可逆的な変換処理を行い、前記第1共通鍵を取得する第1共通鍵取得部と、を含み、
前記第1共通鍵取得部は、さらに、
前記第2共通鍵を可逆的に第2の整数に変換する整数変換部と、
前記整数変換部により算出された前記第2の整数及び前記ベース共通鍵を入力として、第2演算処理を行い、第1の整数を算出する第2演算処理部と、
前記第2演算処理部により算出された前記第1の整数を第1の英数記号文字列に可逆的に変換する第2英数記号文字列変換部と、を含み、
前記第2英数記号文字列変換部により算出された第1の英数記号文字列を第1共通鍵とし、
前記整数変換部は、さらに、
英数記号文字の各々が、32以上127以下の整数の各々に1対1に対応付けられた、文字・整数対応テーブルに基づいて、前記英数記号文字列を構成する各桁の英数記号文字に対応する整数を算出し、
前記各桁における英数記号文字に対応する各整数をそれぞれ16以上111以下の整数にシフトし、
前記シフトされた、各桁における英数記号文字に対応する各整数を、112進数における桁の値とする112進数を算出し、
前記算出された112進数を10進数の整数である前記第2の整数に変換する、共通鍵配送システム。
A first common key for encrypting plaintext is created, and the first common key is obtained from the transmission side terminal device that delivers key information to the reception side terminal device, and the key information delivered from the transmission side terminal device. A common key distribution system including the receiving terminal device to obtain,
The transmitting terminal device
A base common key storage unit that generates a common key shared with the receiving terminal device based on the Diffie-Hellman key exchange method in advance, and stores the generated common key as a base common key;
A first common key generation unit that generates a first common key that is an alphanumeric symbol character string composed of an arbitrary alphanumeric character consisting of a character string or a numerical value desired by a user;
A second common key generation unit that receives the first common key and the base common key and performs a reversible conversion process to generate a second common key that is an alphanumeric symbol character string composed of alphanumeric symbol characters When,
A communication unit for communicating with the receiving terminal device that transmits the second common key instead of the first common key to the receiving terminal device,
The second common key generation unit further includes:
An integer conversion unit that reversibly converts the first common key into a first integer;
A first arithmetic processing unit that performs the first arithmetic processing by using the first integer calculated by the integer conversion unit and the base common key as inputs, and calculates a second integer;
An alphanumeric symbol character string conversion unit that reversibly converts the second integer calculated by the first arithmetic processing unit into a second alphanumeric symbol character string,
The integer conversion unit further includes:
Based on the character / integer correspondence table in which each of the alphanumeric symbol characters is associated with each of the integers of 32 to 127 in one-to-one correspondence, the alphanumeric symbols of each digit constituting the alphanumeric symbol character string Calculate the integer corresponding to the character,
Each integer corresponding to the alphanumeric symbol character in each digit is shifted to an integer between 16 and 111,
Calculating a 112-digit number in which each integer corresponding to the alphanumeric symbol character in each digit that has been shifted is a value in a 112-digit number;
Converting the calculated 112-decimal number to the first integer which is a decimal integer;
The receiving terminal device
A base key storage unit that generates a common key shared with the transmission side terminal device based on the Diffie-Hellman key exchange method in advance, and stores the generated common key as a base common key;
A communication unit for receiving a second common key different from the first common key from the transmitting terminal device via a communication network;
The first common key is obtained by performing a reversible conversion process using the second common key received from the transmitting terminal device via the communication unit and the base common key stored in the base key storage unit as inputs. It includes a first common key obtaining unit to the,
The first common key acquisition unit further includes:
An integer conversion unit that reversibly converts the second common key into a second integer;
A second arithmetic processing unit that performs the second arithmetic processing by using the second integer calculated by the integer conversion unit and the base common key as inputs, and calculates the first integer;
A second alphanumeric character string conversion unit that reversibly converts the first integer calculated by the second arithmetic processing unit into a first alphanumeric character string;
The first alphanumeric symbol character string calculated by the second alphanumeric symbol character string conversion unit is used as a first common key,
The integer conversion unit further includes:
Based on the character / integer correspondence table in which each alphanumeric symbol character is associated with each integer between 32 and 127 in a one-to-one correspondence, the alphanumeric symbol of each digit constituting the alphanumeric symbol character string Calculate the integer corresponding to the character,
Each integer corresponding to the alphanumeric symbol character in each digit is shifted to an integer between 16 and 111,
Calculating a 112-digit number in which each integer corresponding to the alphanumeric symbol character in each digit that has been shifted is a value in a 112-digit number;
A common key distribution system that converts the calculated 112-decimal number into the second integer that is a decimal integer .
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2014/066045 WO2015193969A1 (en) | 2014-06-17 | 2014-06-17 | Method, program, and system for simultaneous or post-encryption delivery of shared key encryption key desired by user |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2015193969A1 JPWO2015193969A1 (en) | 2017-04-20 |
JP6489123B2 true JP6489123B2 (en) | 2019-03-27 |
Family
ID=54935001
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016528689A Active JP6489123B2 (en) | 2014-06-17 | 2014-06-17 | Method, program, and system for delivering key of common key encryption desired by user simultaneously or after encryption |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP6489123B2 (en) |
WO (1) | WO2015193969A1 (en) |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08204700A (en) * | 1995-01-26 | 1996-08-09 | Nippon Telegr & Teleph Corp <Ntt> | Cryptographic communication device and method |
US5734718A (en) * | 1995-07-05 | 1998-03-31 | Sun Microsystems, Inc. | NIS+ password update protocol |
JP3327368B2 (en) * | 1995-11-06 | 2002-09-24 | 日本電信電話株式会社 | User password authentication method |
JP4598250B2 (en) * | 2000-09-06 | 2010-12-15 | 株式会社サンセイアールアンドディ | Pachinko machine |
JP2007166519A (en) * | 2005-12-16 | 2007-06-28 | Dainippon Printing Co Ltd | Determination system, generator, determination apparatus and method or the like |
JP5011092B2 (en) * | 2007-12-27 | 2012-08-29 | 三菱電機株式会社 | Data download system and data download method |
JP5404030B2 (en) * | 2008-12-26 | 2014-01-29 | デジタルア−ツ株式会社 | Electronic file transmission method |
JP4999877B2 (en) * | 2009-04-13 | 2012-08-15 | 日本電信電話株式会社 | Falsification detection authentication code embedding method and apparatus and program thereof, falsification detection method and apparatus and program thereof |
JP5417026B2 (en) * | 2009-04-28 | 2014-02-12 | Kddi株式会社 | Password notification device and password notification system |
-
2014
- 2014-06-17 WO PCT/JP2014/066045 patent/WO2015193969A1/en active Application Filing
- 2014-06-17 JP JP2016528689A patent/JP6489123B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JPWO2015193969A1 (en) | 2017-04-20 |
WO2015193969A1 (en) | 2015-12-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2020528232A (en) | Terminal devices that perform homomorphic encryption, server devices that process the ciphertext, and their methods | |
CN102546600B (en) | Deputy-based encryption, decryption method, network equipment, network device and system | |
US8675864B2 (en) | Apparatus for encrypting data | |
JP6363032B2 (en) | Key change direction control system and key change direction control method | |
WO2019045741A1 (en) | Single node multi-party encryption | |
JP6974461B2 (en) | Methods and systems for advanced data-centric cryptographic systems using geometric algebra | |
JP2008513811A (en) | Calculation conversion method and system | |
CN109450615A (en) | A kind of efficient OPC UA client and server data transfer encryption method | |
KR20200115408A (en) | Apparatus for performing quorum design on secret key and method thereof | |
JP2021086158A (en) | Methods of generating encryption key and digital signature based on lattices | |
Joshy et al. | Text to image encryption technique using RGB substitution and AES | |
JP7170878B2 (en) | Apparatus and method for performing non-polynomial arithmetic on ciphertext | |
US20170012775A1 (en) | Encryption Methods and Apparatus | |
CN105530089B (en) | Attribute-based encryption method and device | |
KR101575681B1 (en) | Method of attribute-based encryption | |
JP2017527225A (en) | Cryptographic system reproducible random sequence | |
JP6489123B2 (en) | Method, program, and system for delivering key of common key encryption desired by user simultaneously or after encryption | |
KR101133988B1 (en) | Method for encrypting and decrypting stream and cryptographic file systems thereof | |
KR101793528B1 (en) | Certificateless public key encryption system and receiving terminal | |
Kumar et al. | Hybridization of Cryptography for Security of Cloud Data | |
KR102160294B1 (en) | Apparatus for performing quorum design on secret key and method thereof | |
WO2018011825A1 (en) | Encryption and decryption of messages | |
Hossen et al. | Join Public Key and Private Key for Encrypting Data | |
Kumar et al. | Role of Cryptography & its Related Techniques in Cloud Computing Security | |
Mushtaque et al. | Implementation of new encryption algorithm with random key selection and minimum space complexity |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20170607 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20180703 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180829 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20190129 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20190211 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6489123 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |