JPH035101B2 - - Google Patents
Info
- Publication number
- JPH035101B2 JPH035101B2 JP56071629A JP7162981A JPH035101B2 JP H035101 B2 JPH035101 B2 JP H035101B2 JP 56071629 A JP56071629 A JP 56071629A JP 7162981 A JP7162981 A JP 7162981A JP H035101 B2 JPH035101 B2 JP H035101B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- remainder
- cycler
- multiplier
- converts
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired
Links
- 238000010586 diagram Methods 0.000 description 6
- 238000000034 method Methods 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M5/00—Conversion of the form of the representation of individual digits
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Description
【発明の詳細な説明】
本発明はデイジタル伝送系において、目指す受
信者以外にメツセージを盗用されないようにメツ
セージをデータ系列に変換し、あるいは変換され
ているデータ系列をもとのメツセージに復元する
ための符号変換器に関する。[Detailed Description of the Invention] The present invention is used in a digital transmission system to convert a message into a data series to prevent the message from being stolen by anyone other than the intended recipient, or to restore the converted data series to the original message. The present invention relates to a code converter.
デイジタル伝送系においてメツセージを傍受さ
れないようにする著名な方法として次の方法があ
る。暗号鍵を(n、e)、解読鍵を(n、d)と
する。ここでn、e、dはある定められた方法に
よつて得られる正整数である。送信側ではn未満
の任意の非負整数の入力データのaをaeをnで割
つた余りに変換して送信し、受信側では暗号化さ
れたデータbをbdをnで割つた余りに変換して復
号する。n、e、dを求める方法、アルゴリズム
の正当性、秘匿性については文献コミユニケーシ
ヨンズ・オブ・ザ・エーシーエム
(Communications of the ACM)21巻2号1978
年1月120〜126頁に詳しく載つているので省略す
る。暗号化も復号化も同一種類の変換で、入力x
に対してxmをnで割つた余りを出力するもので
ある(mは正整数)。従来、入力xに対してxmを
nで割つた余りを出力する符号変換器は、内部に
含む乗算器の処理時間の2×〔log2m〕倍の処理
時間を必要とし、全体の処理時間に占る割合が大
きいものであつた。(前記文献参照)。〔 〕は整
数部を表わす。 The following is a well-known method for preventing messages from being intercepted in a digital transmission system. Let the encryption key be (n, e) and the decryption key (n, d). Here, n, e, and d are positive integers obtained by a certain predetermined method. On the sending side, the input data a, which is any non-negative integer less than n, is converted to the remainder of a e divided by n and sent, and on the receiving side, the encrypted data b is converted to the remainder of b d divided by n. and decrypt it. Regarding the method for determining n, e, and d, the validity of the algorithm, and confidentiality, please refer to the literature Communications of the ACM, Volume 21, No. 2, 1978.
I will not omit it as it is detailed on pages 120-126 of January 2019. Encryption and decryption are the same type of transformation, and the input x
It outputs the remainder when x m is divided by n (m is a positive integer). Conventionally, a code converter that outputs the remainder when x m is divided by n for input x requires a processing time that is 2 × [log 2 m] times the processing time of the internal multiplier, which reduces the overall processing time. It took up a large proportion of my time. (See the above literature). [ ] represents the integer part.
本発明の目的は処理時間が短く内部に用いる乗
算器の処理時間の〔log2m〕倍で済み、かつ装置
規模がそれほど大きくない符号変換器を提供する
ことにある。 An object of the present invention is to provide a code converter whose processing time is short and requires only [log 2 m] times the processing time of a multiplier used internally, and whose scale is not so large.
以下図面を用いて本発明の構成および動作原理
を詳細に説明する。 The configuration and operating principle of the present invention will be explained in detail below using the drawings.
第1図は本発明の一実施例を示すブロツク図で
ある。図において101は入力端子、102は出
力端子、103は連続した複数個の入力データを
ある定められた時間だけサイクリツクに繰り返す
データ巡回器、104は前記データ巡回器103
からのデータと後記自乗器106からのデータを
両者の積またはいずれか一方のデータに変換する
選択的乗算器、105は前記選択的乗算器104
からのデータをあらかじ定められた正整数nで割
つた余りに変換する剰余器、106は前記剰余器
105からのデータをnを法として乗する自乗器
である。ここでデータxをnを法として2乗した
結果は、x2あるいはx2をnで割つた余りを意味す
る。 FIG. 1 is a block diagram showing one embodiment of the present invention. In the figure, 101 is an input terminal, 102 is an output terminal, 103 is a data cycler that cyclically repeats a plurality of consecutive input data for a predetermined time, and 104 is the data cycler 103.
105 is the selective multiplier 104 that converts the data from the squarer 106 and the data from the squarer 106 described later into the product of both or data of either one of them.
A remainder unit 106 converts the data from the remainder unit 105 into a remainder obtained by dividing it by a predetermined positive integer n, and a square unit 106 multiplies the data from the remainder unit 105 modulo n. Here, the result of squaring the data x modulo n means x 2 or the remainder when x 2 is divided by n.
第1図を用いて本発明の動作原理を説明する。
m、nをあらかじめ定められた正整数とし、mと
2進数展開した結果を式(1)とする。 The operating principle of the present invention will be explained using FIG.
Let m and n be predetermined positive integers, and the result of binary expansion with m is expressed as equation (1).
m=2i0+2i1+……+2iK (1)
ここでk、i0、i1、……、iKは非負整数で式(2)
をみたす。 m=2 i0 +2 i1 +...+2 iK (1) where k, i 0 , i 1 ,..., i K are non-negative integers and are expressed in equation (2)
Satisfy.
i0>i1>……>iK (2)
タイミングを0、1、2、…で表わす。説明を
簡単にするため選択的乗算器104、剰余器10
5、自乗器106は全て1つのタイミング間隔時
間で処理できるものとし、データ巡回器103の
出力系列の周期を3つのタイミング間隔時間と仮
定する。入力端子101に印加される入力データ
系列をa0、a1、a2、…とする。データ巡回器10
3はa0、a1、a2を受けてサイクリツクにa0、a1、
a2、a0、a1、a2、…、a0、a2をi0周期出力し、そ
の次はa3、c4、a5を入力してサイクリツクにa3、
a4、a5、a3、a4、a5、…a3、a4、a5をi0周期出力
する。以下同じことが繰り返される。このとき出
力端子102にはam 0、am 1、am 2、am 3、…をnで割
つた余りが出力されることを示す。このためには
データa0がどのような処理を受けて出力端子10
2に出力されるかを追つてゆけば十分である。選
択的乗算器104はタイミング0、1、2でデー
タ巡回器103からのデータをそのまま通過さ
せ、タイミング3(i0−i1)、3(i0−i1)+1、3(
i0
−i1)+2、…、3(i0+iK)、3(i0−iK)+1、3
(i0−iK)+2でデータ巡回器103からのデータ
と自乗器106からのデータを積に変換し、その
他のタイミングでは自乗器106からのデータを
そのまま通過させるものとする。タイミング0で
a0は選択的乗算器104をa0のまま通過し、タイ
ミング1でa0は剰余器105をa0のまま通過し、
タイミング2でa0は自乗器106を通過してa2 0
(m0 dn)となり選択的乗算器104に入力され
る。m0dnはnを法とすることを意味する。タイ
ミング3(i0−i1)で選択的乗算器104によりデ
ータ巡回器103からのデータa0と自乗器106
からのデータa0 2i0-i1(modn)は積a0 2i0-i1+1
(modn)に変換され、タイミング3(i0−i1)+1
でa0 2i0-i1+1(modn)は剰余器105により
a0 2i0-i1+1をnで割つた余りに変換され、タイミン
グ3(i0−i1)+2でa0 2i0-i1+1をnで割つた割りは
自乗器106によりa0 2i0-i1+1+2(modn)に変換さ
れ選択的乗算器104に入力される。このように
して結局タイミング3i0+1では乗余器105か
らa0 2i0+2i1+…+2iK=am 0をnで割つた余りが出力端
子102に出力される。同様にタイミング3i0+
2、3(i0+1)では出力端子102に各々am 1、
am 2をnで割つた余りが出力される。パイプライ
ン化されているので処理時間は1つの入力データ
当りほぼi0個すなわち〔log2m〕のタイミング間
隔時間ある。即ち、乗算器の処理時間の
〔log2m〕で済み、従来方法より短かくなつてい
る。 i 0 >i 1 >……>i K (2) Represent the timing as 0, 1, 2, …. For simplicity of explanation, selective multiplier 104 and remainder unit 10
5. It is assumed that the squarer 106 can process everything in one timing interval time, and the period of the output sequence of the data cycler 103 is assumed to be three timing interval times. Let the input data series applied to the input terminal 101 be a 0 , a 1 , a 2 , . . . . Data cycler 10
3 receives a 0 , a 1 , a 2 and cyclically returns a 0 , a 1 ,
Output a 2 , a 0 , a 1 , a 2 , ..., a 0 , a 2 in i 0 cycle, then input a 3 , c 4 , a 5 and cyclically output a 3 ,
Output a 4 , a 5 , a 3 , a 4 , a 5 , ...a 3 , a 4 , a 5 for i0 cycles. The same thing is repeated below. At this time, the output terminal 102 shows that the remainder obtained by dividing am 0 , am 1 , am 2 , am 3 , . . . by n is output. To do this, what kind of processing should data a 0 undergo and output terminal 10?
It is enough to follow what is output in 2. The selective multiplier 104 passes the data from the data cycler 103 as is at timings 0, 1, and 2, and transmits the data at timings 3(i 0 -i 1 ), 3(i 0 -i 1 )+1, 3(
i 0
−i 1 )+2,…, 3(i 0 +i K ), 3(i 0 −i K )+1, 3
At (i 0 −i K )+2, the data from the data circulator 103 and the data from the squarer 106 are converted into a product, and at other timings, the data from the squarer 106 is passed through as is. At timing 0
a 0 passes through the selective multiplier 104 as a 0 , and at timing 1, a 0 passes through the remainder unit 105 as a 0 ,
At timing 2, a 0 passes through the squarer 106 and becomes a 2 0
(m 0 dn) and is input to the selective multiplier 104. m 0 dn means modulo n. At timing 3 (i 0 −i 1 ), the selective multiplier 104 combines the data a 0 from the data circulator 103 with the squarer 106
The data from a 0 2i0-i1 (modn) is the product a 0 2i0-i1+1
(modn), timing 3 (i 0 − i 1 ) + 1
So a 0 2i0-i1+1 (modn) is determined by remainder unit 105.
It is converted to the remainder when a 0 2i0-i1+1 is divided by n, and at timing 3 (i 0 - i 1 ) + 2, the division when a 0 2i0-i1+1 is divided by n is converted to a 0 2i0-i1 by the squarer 106. +1+2 (modn) and input to the selective multiplier 104. In this way, at timing 3i 0 +1, the remainder obtained by dividing a 0 2i0+2i1+ . . . +2iK = a m 0 by n is output from the multiplier 105 to the output terminal 102. Similarly timing 3i 0 +
2 and 3 (i 0 +1), a m 1 and a m 1 are respectively applied to the output terminal 102.
The remainder when a m 2 is divided by n is output. Since it is pipelined, the processing time is approximately i 0 timing intervals per one input data, that is, [log 2 m]. That is, the processing time of the multiplier is [log 2 m], which is shorter than the conventional method.
第2図は選択的乗算器の一実施例を示すブロツ
ク図である。図において201,202は入力端
子、203は出力端子、204は乗算器、205
はロータリー・スイツチである。乗算器204は
入力端子201と202からのデータの積をと
り、ロータリー・スイツチ205は2つの入力端
子201と202及び乗算器204からのデータ
のいずれか1つをタイミング信号により選択出力
する。 FIG. 2 is a block diagram illustrating one embodiment of a selective multiplier. In the figure, 201 and 202 are input terminals, 203 is an output terminal, 204 is a multiplier, and 205
is a rotary switch. The multiplier 204 multiplies the data from the input terminals 201 and 202, and the rotary switch 205 selects and outputs one of the data from the two input terminals 201 and 202 and the multiplier 204 according to a timing signal.
本実施例においてロータリー・スイツチはセレ
クタにおきかえることができる。 In this embodiment, the rotary switch can be replaced with a selector.
第3図はデータ巡回器の一実施例を示すブロツ
ク図である。入力端子301より入力されデータ
はシフトレジスタ303に入れられる。シフトレ
ジスタ303の内容を古い順にa0、a1、a2とおく
と整流子304はシフトレジスタ303の各出力
より順にa0、a1、a2、a0、a1、a2、…を出力端子
302に出力する。 FIG. 3 is a block diagram showing one embodiment of the data cycler. Data input from the input terminal 301 is put into the shift register 303. If the contents of the shift register 303 are set as a 0 , a 1 , a 2 in order of oldest contents, the commutator 304 sequentially reads a 0 , a 1 , a 2 , a 0 , a 1 , a 2 , . . . from each output of the shift register 303. is output to the output terminal 302.
本実施例において整流子はロータリー・スイツ
チやセレクタに置き換えることも可能である。 In this embodiment, the commutator can be replaced with a rotary switch or a selector.
本発明において選択的乗算器、剰余器、自乗器
は等しい処理時間をもつとしたが、異なる場合で
もデータ巡回器の出力系列の周期を適当に変えれ
ばよく、また自乗器はデータxをx2に変換するだ
けでなくさらにx2をnで割つた余りに変換する回
路としてもよく、これらの変換は本発明に含まれ
るものである。 In the present invention, it is assumed that the selective multiplier, remainder unit, and squarer have the same processing time, but even if they are different, the period of the output sequence of the data cycler may be changed appropriately, and the squarer converts the data x into x 2 It is also possible to use a circuit that not only converts x 2 to the remainder of x 2 divided by n, but these conversions are included in the present invention.
以上詳細に説明したように、本発明装置を用い
れば入力データ系列a0、a1、a2、…に対してam 0、
am 1、am 2、…をそれぞれnで割つた余りの系列を
短い時間でかつ簡単に計算できるので従来技術の
欠点を除いており、デイジタル伝送系におけるプ
ライベートな通信に適用して効果が極めて大き
い。 As explained in detail above, if the device of the present invention is used, a m 0 ,
Since the series of remainders obtained by dividing each of a m 1 , a m 2 , ... by n can be easily calculated in a short time, the drawbacks of the conventional technology are eliminated, and it is effective when applied to private communications in digital transmission systems. Extremely large.
第1図は本発明の構成を示す図、第2図は選択
的乗算器の実施例を示す図、第3図はデータ巡回
器の実施例を示す図である。図において101,
201,202,301は入力端子、102,2
03,302は出力端子、103はデータ巡回
器、104は選択的乗算器、105は剰余器、1
06は自乗器、204は乗算器、205はロータ
リー・スイツチ、303はシフトレジスタ、30
4は整流子を各々示す。
FIG. 1 is a diagram showing the configuration of the present invention, FIG. 2 is a diagram showing an embodiment of a selective multiplier, and FIG. 3 is a diagram showing an embodiment of a data cycler. In the figure, 101,
201, 202, 301 are input terminals, 102, 2
03, 302 are output terminals, 103 is a data cycler, 104 is a selective multiplier, 105 is a remainder unit, 1
06 is a squarer, 204 is a multiplier, 205 is a rotary switch, 303 is a shift register, 30
4 each indicates a commutator.
Claims (1)
任意の非負整数の入力データ例a1、a2…に対して
あらかじめ定められた第2の正整数mによるべき
乗a1、a2、…のそれぞれをnで割つた余りを出力
する符号変換器において、連続した複数個の入力
データをある定められた時間だけサイクリツクに
繰り返すデータ巡回器と、前記データ巡回器から
のデータと後記自乗器からのデータを両者の積ま
たはいずれか一方のデータに変換する選択的乗算
器と、前記選択的乗算器からのデータをnで割つ
た余りに変換する剰余器と、前記剰余器からのデ
ータをnを法として2乗したデータに変換する自
乗器から成り、前記データ巡回器の最終サイクル
に、前記剰余器からのデータを出力することを特
徴とする符号変換器。1. Input data examples a 1 , a 2 ... of arbitrary non-negative integers less than a predetermined first positive integer n are raised to powers a 1 , a 2 , ... by a predetermined second positive integer m. A code converter that outputs the remainder after dividing each by n includes a data cycler that cyclically repeats a plurality of consecutive input data for a certain predetermined time, and a data cycler that cyclically repeats a plurality of consecutive input data for a predetermined time, and a data cycler that outputs the remainder after dividing each by n. a selective multiplier that converts data into the product of both or data of either one; a remainder unit that converts the data from the selective multiplier into a remainder when divided by n; and a remainder unit that converts the data from the remainder unit by multiplying n. 1. A code converter comprising a squarer for converting data into squared data as , and outputting data from the remainder unit in the final cycle of the data circulator.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP56071629A JPS57186861A (en) | 1981-05-13 | 1981-05-13 | Code converter |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP56071629A JPS57186861A (en) | 1981-05-13 | 1981-05-13 | Code converter |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS57186861A JPS57186861A (en) | 1982-11-17 |
| JPH035101B2 true JPH035101B2 (en) | 1991-01-24 |
Family
ID=13466133
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP56071629A Granted JPS57186861A (en) | 1981-05-13 | 1981-05-13 | Code converter |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPS57186861A (en) |
-
1981
- 1981-05-13 JP JP56071629A patent/JPS57186861A/en active Granted
Also Published As
| Publication number | Publication date |
|---|---|
| JPS57186861A (en) | 1982-11-17 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US4351982A (en) | RSA Public-key data encryption system having large random prime number generating microprocessor or the like | |
| EP0997016B1 (en) | Method and apparatus for fast elliptical encryption with direct embedding | |
| US5600720A (en) | Encryption apparatus, communication system using the same and method therefor | |
| US5159632A (en) | Method and apparatus for public key exchange in a cryptographic system | |
| US5271061A (en) | Method and apparatus for public key exchange in a cryptographic system | |
| US5101431A (en) | Systolic array for modular multiplication | |
| EP0872079A2 (en) | A multi-purpose high speed cryptographically secure sequence generator based on zeta one-way functions | |
| RU2091983C1 (en) | Method of coding of binary information and device for its realization | |
| US7949128B2 (en) | Method and device for the encryption and decryption of data | |
| EP0278170B1 (en) | Cipher system | |
| RU98102447A (en) | DECODING OF REPEATED DATA IN THE ENCRYPTION COMMUNICATION SYSTEM | |
| Saleh et al. | An analysis and comparison for popular video encryption algorithms | |
| US5351298A (en) | Cryptographic communication method and apparatus | |
| CN114374518A (en) | PSI intersection information acquisition method and device with intersection counting function | |
| Kiesler et al. | RSA blocking and multisignature schemes with no bit expansion | |
| JPH0527291B2 (en) | ||
| JPH035101B2 (en) | ||
| JP2727955B2 (en) | Public key encryption device | |
| JP2864813B2 (en) | Encryption device and decryption device | |
| JPH035700B2 (en) | ||
| JPH0245388B2 (en) | ||
| JPH0736673A (en) | Random number generator, communication system using the same, and method thereof | |
| JPH09149025A (en) | Cipher communication method and cipher communication system | |
| Kryvyi et al. | Symmetric system for exchange information on the base of surjective isomorphism of rings | |
| JPH0817384B2 (en) | Cryptographic communication method |