JPS596100B2 - 暗号装置 - Google Patents
暗号装置Info
- Publication number
- JPS596100B2 JPS596100B2 JP54117345A JP11734579A JPS596100B2 JP S596100 B2 JPS596100 B2 JP S596100B2 JP 54117345 A JP54117345 A JP 54117345A JP 11734579 A JP11734579 A JP 11734579A JP S596100 B2 JPS596100 B2 JP S596100B2
- Authority
- JP
- Japan
- Prior art keywords
- remainder
- register
- key
- encryption
- decryption
- 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
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
-
- 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/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
Description
【発明の詳細な説明】
本発明は公開鍵暗号方式について、MIT(マサチユセ
ツツエ科大学)のリベスト(Rives【)、シヤミー
ル(Shamir)、アドレマン(Adleman)の
3人が発表したアルゴリズムを実現する暗号装置に関す
るものである。
ツツエ科大学)のリベスト(Rives【)、シヤミー
ル(Shamir)、アドレマン(Adleman)の
3人が発表したアルゴリズムを実現する暗号装置に関す
るものである。
本アルゴリズムの特徴とするところは、二つの大きな素
数の積の素因数分解することの難しさを利用することに
より、暗号鍵から解読鍵を簡単に割り出すことができな
いため、利用者は自分の解読鍵だけを秘密として暗号鍵
は公開してもかまわない公開鍵暗号方式が実現できるこ
とである。
数の積の素因数分解することの難しさを利用することに
より、暗号鍵から解読鍵を簡単に割り出すことができな
いため、利用者は自分の解読鍵だけを秘密として暗号鍵
は公開してもかまわない公開鍵暗号方式が実現できるこ
とである。
本アルゴリズムによる暗号化と解読の演算は、平文をM
,暗号文をC,暗号鍵を2つの整数のペア(N,e)、
解読鍵を(N,d)とすると次の式で示す通りである。
暗号処理 C=Me(MOdn) ・・・・・・(1
)解読処理 M壬Cd(MOdn) ・・・・・・(
2)本アルゴリズムを実現するために、上記演算を高位
の整数に対して効率的に演算する装置が必要とされる。
,暗号文をC,暗号鍵を2つの整数のペア(N,e)、
解読鍵を(N,d)とすると次の式で示す通りである。
暗号処理 C=Me(MOdn) ・・・・・・(1
)解読処理 M壬Cd(MOdn) ・・・・・・(
2)本アルゴリズムを実現するために、上記演算を高位
の整数に対して効率的に演算する装置が必要とされる。
しかるに、上記アルゴリズムを行う従来の技術としては
演算部が1つの処理装置を使つて行なつていた。
演算部が1つの処理装置を使つて行なつていた。
本発明の目的は、暗号または解読の演算部に乗算器と除
算器とを含むモジユロ計算部を2組もうけて、それを並
列処理させることにより処理時間を短縮できる暗号装置
を提供することである。
算器とを含むモジユロ計算部を2組もうけて、それを並
列処理させることにより処理時間を短縮できる暗号装置
を提供することである。
本発明の別の目的は前記2組のモジユロ計算部を同一仕
様で実現することにより装置のLSl化が容易に出来る
装置を提供することである。本発明では限られた桁数の
レジスタを用いて演算を効率的に実行する装置が提供さ
れる。
様で実現することにより装置のLSl化が容易に出来る
装置を提供することである。本発明では限られた桁数の
レジスタを用いて演算を効率的に実行する装置が提供さ
れる。
本発明では暗号プロセスの演算、すなわちC=Me(M
Odn)の計算は次の順序で行う。
Odn)の計算は次の順序で行う。
ステツプ1:2進数展開された暗号鍵eを、EK・・・
・・・El,eOとおく。ステツプ2:変数Cl,C2
をC1=Ml,C2=1とおく。
・・・El,eOとおく。ステツプ2:変数Cl,C2
をC1=Ml,C2=1とおく。
ステツプ3:前記2進数展開された暗号鍵の桁番号 1
=0,1,・・・,Kの順に次の計算A,Bを並列して
行う。
=0,1,・・・,Kの順に次の計算A,Bを並列して
行う。
すなわち、ステツプ3−A:W1←C1×Cl
Cl←(W1÷n)の余り
ただし、nは第(1)式に示すnである。
ステツプ3−B:W2←ClXC2
C2←(W2÷n)の余り
ただしステツプ3−Bの処理はEi−1の場合にのみ行
う。
う。
ステツプ4:終了。
C2の値が求めるものである。以下本発明を実施例によ
り詳細に説明する。図は本発明の一実施例のプロツク図
である。図において、10は暗号装置、11はモジユロ
計算部All2はモジユロ計算部B、13aは第1の乗
算器、14aは前記乗算器13aの結果を格納する第1
のレジスタ、15aは剰余のみを出力する第1の除算器
、16aは第2のレジスタ、17はゲート回路、13b
は第2の乗算器、14bは前記乗算器13bの結果を格
納する第3のレジスタ、15bは剰余のみを出力する第
2の除算器、16bは第4のレジスタ、18は第5のレ
ジスタであり、第1の暗号鍵または解読鍵。を格納する
。19はデータビツトプロツクを格納する第6のレジス
タ、20は第7のレジスタであり、第2の暗号鍵または
解読鍵eを格納する、21は暗号装置10の制御部、3
0はモジユロ計算部Allとモジユロ計算部Bl2間デ
ータの転送指示線、31は前記第7のレジスタ20を右
シフトする制御線、32は第7のレジスタ20の最下位
ビツトを示す信号線、33はモジユロ計算部Bl2の動
作指示線、34は暗号装置10の動作開始指示線、35
は暗号装置10の動作終了表示線、36はモジユロ計算
部Bl2の初期値信号線である。
り詳細に説明する。図は本発明の一実施例のプロツク図
である。図において、10は暗号装置、11はモジユロ
計算部All2はモジユロ計算部B、13aは第1の乗
算器、14aは前記乗算器13aの結果を格納する第1
のレジスタ、15aは剰余のみを出力する第1の除算器
、16aは第2のレジスタ、17はゲート回路、13b
は第2の乗算器、14bは前記乗算器13bの結果を格
納する第3のレジスタ、15bは剰余のみを出力する第
2の除算器、16bは第4のレジスタ、18は第5のレ
ジスタであり、第1の暗号鍵または解読鍵。を格納する
。19はデータビツトプロツクを格納する第6のレジス
タ、20は第7のレジスタであり、第2の暗号鍵または
解読鍵eを格納する、21は暗号装置10の制御部、3
0はモジユロ計算部Allとモジユロ計算部Bl2間デ
ータの転送指示線、31は前記第7のレジスタ20を右
シフトする制御線、32は第7のレジスタ20の最下位
ビツトを示す信号線、33はモジユロ計算部Bl2の動
作指示線、34は暗号装置10の動作開始指示線、35
は暗号装置10の動作終了表示線、36はモジユロ計算
部Bl2の初期値信号線である。
以下、暗号プロセスを例にとつて動作説明する。
装置外部より、第1の暗号鍵nを第5のレジスタ18に
、第2の暗号鍵eを第7のレジスタ20に、暗号化する
単位のプロツクの内容であるデータビツトプロツクmを
第6のレジスタ19にセツトする。なお、暗号文はMで
あるが、これを単位のプロツクの意味で「m」とした。
次に装置外部より指示線34を介して、暗号動作指示信
号を受けると制御部21は第6のレジスタ19の内容を
第2のレジスタ16aにセツトする。その後2進数展開
された第2の暗号鍵eのビツト長分だけ最下位ビツトか
ら最上位ビツトの順序で以下に示すモジユロ計算を繰り
返す。例えば、nを「91」,eを「23],mを「8
2」である場合について述べる。なお、実際の計算は2
進数展開して行なつているが、簡単のため、10進数表
示で説明する。(1)モジユロ計算部A1第2のレジス
タ16aにセツトされたデータビツトプロツクm「82
」は、第1の乗算器13aで巾乗される。
、第2の暗号鍵eを第7のレジスタ20に、暗号化する
単位のプロツクの内容であるデータビツトプロツクmを
第6のレジスタ19にセツトする。なお、暗号文はMで
あるが、これを単位のプロツクの意味で「m」とした。
次に装置外部より指示線34を介して、暗号動作指示信
号を受けると制御部21は第6のレジスタ19の内容を
第2のレジスタ16aにセツトする。その後2進数展開
された第2の暗号鍵eのビツト長分だけ最下位ビツトか
ら最上位ビツトの順序で以下に示すモジユロ計算を繰り
返す。例えば、nを「91」,eを「23],mを「8
2」である場合について述べる。なお、実際の計算は2
進数展開して行なつているが、簡単のため、10進数表
示で説明する。(1)モジユロ計算部A1第2のレジス
タ16aにセツトされたデータビツトプロツクm「82
」は、第1の乗算器13aで巾乗される。
その結果82×826724を第1のレジスタ14aほ
格納し、次いで前記巾乗の値「6724]は、除算器1
5aにおいて、第5のレジスタ18に格納してある第1
の暗号鍵n「91」を除数として割算される。除算器1
5aは剰余として「81」を得て、その結果を第2のレ
ジスタ16aにセツトする。
格納し、次いで前記巾乗の値「6724]は、除算器1
5aにおいて、第5のレジスタ18に格納してある第1
の暗号鍵n「91」を除数として割算される。除算器1
5aは剰余として「81」を得て、その結果を第2のレ
ジスタ16aにセツトする。
2第2のレジスタ16aにセツトされた前記1の剰余「
81]は、第1の乗算器13aで巾乗される。
81]は、第1の乗算器13aで巾乗される。
その結果、81×81=6561を第1のレジスタ14
aに格納し、次いで前記巾乗の値「6561]は、除算
器15aにおいて、第5のレジスタ18に格納してある
第1の暗号鍵n「91」を除数として割算される。除算
器15aは除余として「9」を得て、その結果を第2の
レジスタ16aにセツトする。3第2のレジスタ16a
にセツトされた前記2の剰余「9」は、第1の乗算器1
3aで巾乗される。
aに格納し、次いで前記巾乗の値「6561]は、除算
器15aにおいて、第5のレジスタ18に格納してある
第1の暗号鍵n「91」を除数として割算される。除算
器15aは除余として「9」を得て、その結果を第2の
レジスタ16aにセツトする。3第2のレジスタ16a
にセツトされた前記2の剰余「9」は、第1の乗算器1
3aで巾乗される。
その結果、9×9−81を第1のレジスタ14aに格納
し、次いで前記巾乗のj値「81」は、第1の除算器1
5aにおいて、第5のレジスタ18に格納してある第1
の暗号鍵n[91」を除数として割算される。除算器1
5aは剰余として「81」を得て、その結果を第2のレ
ジスタ16aにセツトする。S4第2のレジスタ16a
にセツトされた前記3の剰余「81」は、第1の剰算器
13aで巾乗される。その結果、81×81=6561
を第1のレジスタ14aに格納し、次いで前記巾乗の値
「6561」は、第1の除算器 315aにおいて、第
5のレジスタ18に格納してある第1の暗号鍵n[91
」を除数として割算される。除算器15aは剰余として
「9」を得て、その結果を第2のレジスタ16aにセツ
トする。
し、次いで前記巾乗のj値「81」は、第1の除算器1
5aにおいて、第5のレジスタ18に格納してある第1
の暗号鍵n[91」を除数として割算される。除算器1
5aは剰余として「81」を得て、その結果を第2のレ
ジスタ16aにセツトする。S4第2のレジスタ16a
にセツトされた前記3の剰余「81」は、第1の剰算器
13aで巾乗される。その結果、81×81=6561
を第1のレジスタ14aに格納し、次いで前記巾乗の値
「6561」は、第1の除算器 315aにおいて、第
5のレジスタ18に格納してある第1の暗号鍵n[91
」を除数として割算される。除算器15aは剰余として
「9」を得て、その結果を第2のレジスタ16aにセツ
トする。
55第2のレジスタ16aにセ
ツトされた前記4の剰余「9」は、第1の乗算器13a
で巾乗される。その結果、9X9=81を第1のレジス
タ14aに格納し、次いで前記巾乗の値「81」は、第
1の除算器15aにおいて、4第5のレジスタ18に格
納してある第1の暗号鍵n「91」を除数として割算さ
れる。除算器15aは剰余として「81」を得て、その
結果を第2のレジスタ16aにセツトする。以上の動作
でモジユロ計算部Allでの1つのデータビツトプロツ
クmについてのモジユロ計算を終了する。このように、
モジユロ計算部Allでは、モジユロ計算を2進数展開
された第2の暗号鍵e(この例では「23」を2進数展
開した「10111」の5ビツト分)の,ビツト長、す
なわち5回だけ行なう。2)制御部 このモジユロ計算の間、制御部21は1回の演算ごとに
、第7のレジスタ20を1ビツト右シフトするとともに
更新された最下位ビツトの値を信号線32を介して検出
し、その値が「1」の場合にのみ、ゲート回路17を起
動し、第2のレジスタ16aの内容をモジユロ計算部B
l2に転送し、かつ、動作指示線33より動作指示信号
を送り、モジユロ計算部Bl2の動作起動をかける。
ツトされた前記4の剰余「9」は、第1の乗算器13a
で巾乗される。その結果、9X9=81を第1のレジス
タ14aに格納し、次いで前記巾乗の値「81」は、第
1の除算器15aにおいて、4第5のレジスタ18に格
納してある第1の暗号鍵n「91」を除数として割算さ
れる。除算器15aは剰余として「81」を得て、その
結果を第2のレジスタ16aにセツトする。以上の動作
でモジユロ計算部Allでの1つのデータビツトプロツ
クmについてのモジユロ計算を終了する。このように、
モジユロ計算部Allでは、モジユロ計算を2進数展開
された第2の暗号鍵e(この例では「23」を2進数展
開した「10111」の5ビツト分)の,ビツト長、す
なわち5回だけ行なう。2)制御部 このモジユロ計算の間、制御部21は1回の演算ごとに
、第7のレジスタ20を1ビツト右シフトするとともに
更新された最下位ビツトの値を信号線32を介して検出
し、その値が「1」の場合にのみ、ゲート回路17を起
動し、第2のレジスタ16aの内容をモジユロ計算部B
l2に転送し、かつ、動作指示線33より動作指示信号
を送り、モジユロ計算部Bl2の動作起動をかける。
第2の暗号鍵eが「23」の場合は、2進数で「101
11」であるから、前記1ビツト右シフトは、1→1→
1→0→1である。
11」であるから、前記1ビツト右シフトは、1→1→
1→0→1である。
以下この「10111」を「E49e39e2!ElF
eO]と表わす。{)モジユロ計算部Bl2 l制御部21は、第7のレジスタ20の最下位ビツトE
。
eO]と表わす。{)モジユロ計算部Bl2 l制御部21は、第7のレジスタ20の最下位ビツトE
。
が[1」であることを検出して、第4のレジスタ16b
に初期値「1]をセツトするとともに、ゲート回路17
を起動して、前記(1)の1において、第2のレジスタ
16aにセツトざれたデータビツトプロツクm「82」
を、第2の乗算器13bに転送する。
に初期値「1]をセツトするとともに、ゲート回路17
を起動して、前記(1)の1において、第2のレジスタ
16aにセツトざれたデータビツトプロツクm「82」
を、第2の乗算器13bに転送する。
第2の乗算器13bは、前記初期値[1」と前記転送さ
れた「82」とを乗算する。その結果、82×1=82
を第3のレジスタ14bに格納し、次いで当該格納され
た「82」は、第2の除算器15bにおいて、第5のレ
ジスタ18に格納してある第1の暗号鍵n[91」を除
数として割算される。除算器15bは剰余として「82
」を得て、その結果を第4のレジスタ16bにセツトす
る。2次に、e1が「1」であるから、ゲート回路17
が起動されて、第2のレジスタ16aにセツトしてある
前記(1)の1の結果「81」を第2の乗算器13bに
転送する。
れた「82」とを乗算する。その結果、82×1=82
を第3のレジスタ14bに格納し、次いで当該格納され
た「82」は、第2の除算器15bにおいて、第5のレ
ジスタ18に格納してある第1の暗号鍵n[91」を除
数として割算される。除算器15bは剰余として「82
」を得て、その結果を第4のレジスタ16bにセツトす
る。2次に、e1が「1」であるから、ゲート回路17
が起動されて、第2のレジスタ16aにセツトしてある
前記(1)の1の結果「81」を第2の乗算器13bに
転送する。
一方、前記1の結果「82」を第2の乗算器13bに送
る。乗算器13bでは、送られてきた結果を乗算して8
1×82=6642を得て、第3のレジスタ14bに格
納する。次いで前記乗算の値「6642]は、第2の乗
算器15bにおいて、第5のレジスタ18に格納してあ
る第1の暗号鍵n「91]を除数として割算される。除
算器15bは剰余として「90」を得て、その結果を第
4のレジスタ16bにセツトする。3次に、E2が「1
]であるから、ゲート回路17が起動されて、第2のレ
ジスタ16aにセツトしてある前記(1)の2の結果「
9」を第2の乗算器13bに転送する。
る。乗算器13bでは、送られてきた結果を乗算して8
1×82=6642を得て、第3のレジスタ14bに格
納する。次いで前記乗算の値「6642]は、第2の乗
算器15bにおいて、第5のレジスタ18に格納してあ
る第1の暗号鍵n「91]を除数として割算される。除
算器15bは剰余として「90」を得て、その結果を第
4のレジスタ16bにセツトする。3次に、E2が「1
]であるから、ゲート回路17が起動されて、第2のレ
ジスタ16aにセツトしてある前記(1)の2の結果「
9」を第2の乗算器13bに転送する。
一方、前記2の結果「90」を第2の乗算器13bに送
る。乗算器13bでは、送られてきた結果を乗算して9
×90−810を得て、第3のレジスタ14bに格納す
る。次いで前記乗算の値「810」は、第2の除算器1
3bにおいて、第5のレジスタ18に格納してある第1
の暗号鍵n「91」を除数として割算される。
る。乗算器13bでは、送られてきた結果を乗算して9
×90−810を得て、第3のレジスタ14bに格納す
る。次いで前記乗算の値「810」は、第2の除算器1
3bにおいて、第5のレジスタ18に格納してある第1
の暗号鍵n「91」を除数として割算される。
除算器15bは剰余として「82」を得て、その結果を
第4のレジスタ16bにセツトする。4次にE3が「O
]であるから、ゲート回路17が起動されず、かつ制御
部21から動作指示線33を経て動作指示信号が送られ
ないため、モジユロ計算は行なわない。
第4のレジスタ16bにセツトする。4次にE3が「O
]であるから、ゲート回路17が起動されず、かつ制御
部21から動作指示線33を経て動作指示信号が送られ
ないため、モジユロ計算は行なわない。
5次にE4が[1」であるから、ゲート回路17が起動
されて、第2のレジスタ16aにセツトしてある前記(
1)の4の結果「9」を第2の乗算器13bに転送する
。
されて、第2のレジスタ16aにセツトしてある前記(
1)の4の結果「9」を第2の乗算器13bに転送する
。
一方、前記第4のレジスタ16bにセツトしてある前記
3の結果[82」を第2の乗算器13bに送る。乗算器
13bでは、送られてきた結果を乗算して9×82=7
38を得て、第3のレジスタ14bに格納する。次いで
前記乗算の値「738]は、第2の除算器13bにおい
て、第5のレジスタ18に格納してある第1の暗号鍵n
[91」を除数として割算される。
3の結果[82」を第2の乗算器13bに送る。乗算器
13bでは、送られてきた結果を乗算して9×82=7
38を得て、第3のレジスタ14bに格納する。次いで
前記乗算の値「738]は、第2の除算器13bにおい
て、第5のレジスタ18に格納してある第1の暗号鍵n
[91」を除数として割算される。
除算器15bは剰余として「10」を得て、その結果を
第4のレジスタ16bにセツトする。以上のようにモジ
ユロ計算部Bl2の計算は、制御部21により、モジユ
ロ計算部Allの計算と並列して行なわれ、制御部21
が第7のレジスタ20の内容を順次右シフトしながら第
2の暗号鍵eのビツトを検出するので、前記第2の暗号
鍵EOe4を検出した後、モジユロ計算部Bl2の計算
(前記(3)の5の計算)が終了して、1つのデータビ
ツトプロツクmについてのモジユロ計算を終了する。外
部装置(図示しない)は制御部21より動作終了表示線
35を介して、終了信号を受けると第4のレジスタ16
bの内容「10」を読み取り、これが平文Mのデータビ
ツトプロツクm「82」の暗号文である。以下、平文M
を完結するデータビツトプロツクmの個数分だけ、前述
と同様のモシユロ計算を行なう。解読プロセスは装置外
部より、第5及び第7のレジスタ18,20にセツトさ
れる2組の解読鍵n及びd1並びに第6のレジスタ19
にセツトされるデータプロツクの値が違うだけで暗号装
置の構成および動作は暗号プロセスと同様である。
第4のレジスタ16bにセツトする。以上のようにモジ
ユロ計算部Bl2の計算は、制御部21により、モジユ
ロ計算部Allの計算と並列して行なわれ、制御部21
が第7のレジスタ20の内容を順次右シフトしながら第
2の暗号鍵eのビツトを検出するので、前記第2の暗号
鍵EOe4を検出した後、モジユロ計算部Bl2の計算
(前記(3)の5の計算)が終了して、1つのデータビ
ツトプロツクmについてのモジユロ計算を終了する。外
部装置(図示しない)は制御部21より動作終了表示線
35を介して、終了信号を受けると第4のレジスタ16
bの内容「10」を読み取り、これが平文Mのデータビ
ツトプロツクm「82」の暗号文である。以下、平文M
を完結するデータビツトプロツクmの個数分だけ、前述
と同様のモシユロ計算を行なう。解読プロセスは装置外
部より、第5及び第7のレジスタ18,20にセツトさ
れる2組の解読鍵n及びd1並びに第6のレジスタ19
にセツトされるデータプロツクの値が違うだけで暗号装
置の構成および動作は暗号プロセスと同様である。
もちろん、解読処理のアルゴリズムは前記の第(2)式
に従う。ちなみに、nを「91」,eを「23」とした
場合、例えばdは「47」であればよい。以上のように
本発明によれば、2組のモジユロ計算部を並列処理させ
ることにより、暗号または解読処理時間を短縮させるこ
とができる。また、2組のモジユロ計算部A,Bを同一
仕様で出来るので暗号装置のLSI化が容易に可能とな
る。
に従う。ちなみに、nを「91」,eを「23」とした
場合、例えばdは「47」であればよい。以上のように
本発明によれば、2組のモジユロ計算部を並列処理させ
ることにより、暗号または解読処理時間を短縮させるこ
とができる。また、2組のモジユロ計算部A,Bを同一
仕様で出来るので暗号装置のLSI化が容易に可能とな
る。
図は本発明の一実施例を示す暗号装置のプロツク構成図
である。 10・・・・・・暗号装置、11・・・・・・モジユロ
計算部All2・・・・・・モジユロ計算部Bll3a
,l3b・・・・・・乗算器、14a,14b・・・・
・・第1,第3のレジスタ、15a,15b・・・・・
・除算器、16a,16b・・・・・・第2,第4のレ
ジスタ、17・・・・・・ゲート回路、18・・・・・
・第5のレジスタ、19・・・・・・第6のレジスタ、
20・・・・・・第7のレジスタ、21・・・・・・制
御部、30・・・・・・転送指示線、31・・・・・・
レジスタ20を右シフトする制御線、32・・・・・・
信号線、33・・・・・・モジユロ計算部B動作指示線
、34・・・・・・暗号装置の動作開始指示線、35・
・・・・・暗号装置の動作終了表示線、36・・・・・
・モジユロ計算部Bの初期値信号線。
である。 10・・・・・・暗号装置、11・・・・・・モジユロ
計算部All2・・・・・・モジユロ計算部Bll3a
,l3b・・・・・・乗算器、14a,14b・・・・
・・第1,第3のレジスタ、15a,15b・・・・・
・除算器、16a,16b・・・・・・第2,第4のレ
ジスタ、17・・・・・・ゲート回路、18・・・・・
・第5のレジスタ、19・・・・・・第6のレジスタ、
20・・・・・・第7のレジスタ、21・・・・・・制
御部、30・・・・・・転送指示線、31・・・・・・
レジスタ20を右シフトする制御線、32・・・・・・
信号線、33・・・・・・モジユロ計算部B動作指示線
、34・・・・・・暗号装置の動作開始指示線、35・
・・・・・暗号装置の動作終了表示線、36・・・・・
・モジユロ計算部Bの初期値信号線。
Claims (1)
- 1 2組の暗号鍵n、eまたは解読鍵n、dをもとにデ
ータビットのブロックに対して暗号または解読処理を実
行するための暗号装置において、装置外部から入力され
る2進数展開された2組の暗号鍵n、eまたは解読鍵n
、dのうち第1の暗号鍵nまたは第1の解読鍵nを記憶
するための第1の手段と、第2の暗号鍵eまたは第2の
解読鍵dを記憶するための第2の手段と、装置外部から
入力される2進数展開されたデータビットブロックを記
憶する第3の手段と、除算して剰余のみを得る手段であ
つてかつ前記第3の手段の内容を初期値としてその値を
2乗し又は前記初期条件以外は1ステップ前の剰余を2
乗し、前記第1の手段に記憶した第1の暗号鍵nまたは
第1の解読鍵nを除数とし、前記2乗した結果を被除数
として除算して前記剰余を得る第4の手段と、除算して
剰余のみを得る手段であつてかつ初期条件として前記第
4の手段を介して第3の手段の内容を得又は前記初期条
件以外は1ステップ前の剰余と前記第4の手段の剰余と
を乗算し、前記第1の手段に記憶した第1の暗号鍵nま
たは第1の解読鍵nを除数とし、前記乗算した結果を被
除数として除算し前記剰余を得る第5の手段と、前記第
2の手段に記憶した第2の暗号鍵eまたは第2の解読鍵
dのビットをシフトし特定の位置にあるビットの値によ
り、第4の手段の内容又は剰余を第5の手段へ情報伝送
しかつ第5の手段に演算指示を行なうことにより第4の
手段と第5の手段とを並列処理させる第6の手段とを有
し、2進数に展開された第2の暗号鍵e又は解読鍵dの
桁数回モジユロ計算を繰り返し実行することにより、デ
ータビットのブロックを暗号又は解読処理することを特
徴とする暗号装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP54117345A JPS596100B2 (ja) | 1979-09-14 | 1979-09-14 | 暗号装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP54117345A JPS596100B2 (ja) | 1979-09-14 | 1979-09-14 | 暗号装置 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS5642449A JPS5642449A (en) | 1981-04-20 |
| JPS596100B2 true JPS596100B2 (ja) | 1984-02-09 |
Family
ID=14709394
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP54117345A Expired JPS596100B2 (ja) | 1979-09-14 | 1979-09-14 | 暗号装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPS596100B2 (ja) |
-
1979
- 1979-09-14 JP JP54117345A patent/JPS596100B2/ja not_active Expired
Also Published As
| Publication number | Publication date |
|---|---|
| JPS5642449A (en) | 1981-04-20 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| EP0801345B1 (en) | Circuit for modulo multiplication and exponentiation arithmetic | |
| US7277540B1 (en) | Arithmetic method and apparatus and crypto processing apparatus for performing multiple types of cryptography | |
| US8090757B2 (en) | Circuit and method for performing multiple modulo mathematic operations | |
| US6282290B1 (en) | High speed modular exponentiator | |
| EP0917047B1 (en) | Apparatus for modular inversion for information security | |
| CN109039640B (zh) | 一种基于rsa密码算法的加解密硬件系统及方法 | |
| CN100504758C (zh) | 多字乘法-累加电路和蒙哥马利模乘法-累加电路 | |
| JPH11305996A (ja) | 乗算を用いる計算装置のデ―タ処理高速化方法および装置 | |
| KR100442218B1 (ko) | 몽고메리의 알고리즘을 이용한 멱승 잉여 연산기 | |
| IL97413A (en) | Microcircuit for the implementation of rsa algorithm and ordinary and modular arithmetic in particular exponentiation with large operands | |
| US7831650B2 (en) | Method for modular multiplication | |
| US7050579B1 (en) | Cryptographic methods and apparatus using word-wise montgomery multiplication | |
| US6963644B1 (en) | Multi-word arithmetic device for faster computation of cryptosystem calculations | |
| JP2004258141A (ja) | モンゴメリ乗算剰余の多倍長演算のための演算装置 | |
| KR100416291B1 (ko) | 타원곡선암호화의 유한체 역원과 승산 장치 및 그 방법 | |
| JP3904421B2 (ja) | 剰余乗算演算装置 | |
| JPS596100B2 (ja) | 暗号装置 | |
| JPH09251267A (ja) | 暗号化装置及び暗号化方法 | |
| JP3591857B2 (ja) | 擬似乱数生成方法及び装置、通信方法及び装置 | |
| US20030128842A1 (en) | Modular squaring circuit, modular squaring method, and modular squaring program | |
| JP4306121B2 (ja) | 除算回路,乗除算回路 | |
| US20050165875A1 (en) | Arithmetic device | |
| JP5179933B2 (ja) | データ処理装置 | |
| JP3137599B2 (ja) | BのC乗のnを法とした剰余を計算する回路 | |
| JPS63147185A (ja) | 公開鍵暗号の復号化装置 |