(57)【要約】【課題】楕円曲線暗号の演算のための既約多項式の変更が容易な暗号処理装置を提供する。【解決手段】剰余乗算演算に既約多項式を用いた、２の拡大体上で定義される楕円曲線暗号を用いる暗号処理装置であって、既約多項式を用いた演算を行う演算部と、演算部での暗号処理を制御する暗号制御部とを備え、演算部は、所定の最大次数の多項式を規定可能に構成された複数の回路を有し、複数の回路のうち実質的に不活性とする回路を決定することで、既約多項式を所定の最大次数以下の多項式とする。【選択図】図１
2014174291.tif 000002
【特許請求の範囲】
【請求項１】
剰余乗算演算に既約多項式を用いた、２の拡大体上で定義される楕円曲線暗号を用いる暗号処理装置であって、
前記既約多項式を用いた演算を行う演算部と、
前記演算部での暗号処理を制御する暗号制御部と、を備え、
前記演算部は、所定の最大次数の多項式を規定可能に構成された複数の回路を有し、
前記複数の回路のうち実質的に不活性とする回路を決定することで、前記既約多項式を前記所定の最大次数以下の多項式とする、暗号処理装置。
【請求項２】
前記複数の回路は、
ビット列を構成する一部のビットの排他的論理和を入力ビットとしてフィードバックする線形フィードバックシフトレジスタを備え、該線形フィードバックシフトレジスタにより前記既約多項式を規定し、
前記線形フィードバックシフトレジスタは、
排他的論理和の対象であって前記入力ビットに影響を与えるビットを出力するタップを選択するタップ選択手段と、
前記ビット列の何れのビットをフィードバックループの始めのビットとするかを選択するフィードバック開始位置選択手段と、を有し、
前記タップ選択手段によって前記タップを選択することで、前記既約多項式の項を規定し、
前記フィードバック開始位置選択手段によって前記フィードバックループの開始位置を設定することで、前記多項式の次数を決定する、請求項１記載の暗号処理装置。
【請求項３】
前記線形フィードバックシフトレジスタは、
シフトレジスタを構成する複数のフリップフロップのそれぞれの出力信号を受ける複数の排他的論理和素子を有し、
前記タップ選択手段は、
一方入力に、前記複数の排他的論理和素子のそれぞれを実質的に不活性状態とするか、活性状態を維持するかを設定するタップ選択信号を受け、他方入力に排他的論理和の対象となる信号を受け、その出力を前記複数の排他的論理和素子のそれぞれに与える複数の論理ゲートを有し、
前記タップ選択信号によって活性状態を維持する排他的論理和素子に出力を与えるフリップフロップをタップとして選択し、
前記フィードバック開始位置選択手段は、
前記複数のフリップフロップのそれぞれの出力信号を一方の入力に受け、他方の入力にフィードバック信号を受け、フィードバック開始位置選択信号によりどちらかを選択して出力する複数のセレクタを有し、
前記フィードバック開始位置選択信号により選択される所定のフリップフロップの出力信号を、前記フィードバックループの前記始めのビットとし、
前記タップ選択信号および前記フィードバック開始位置選択信号を変更することで前記楕円曲線暗号のセキュリティ強度を変更する、請求項２記載の暗号処理装置。
【請求項４】
前記線形フィードバックシフトレジスタは、
前記複数の排他的論理和素子が、前記複数のフリップフロップのそれぞれの間に介挿されたガロア線形フィードバックシフトレジスタであって、
前記複数の論理ゲートは、複数のＡＮＤゲートであって、
前記他方入力には前記排他的論理和の対象となる信号として前記フィードバック信号を受ける、請求項３記載の暗号処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は暗号処理装置に関し、特に、拡大体型楕円曲線暗号の暗号処理装置に関する。
【背景技術】
【０００２】
拡大体型楕円曲線暗号では、セキュリティ強度（鍵長）と拡大体型楕円曲線暗号のパラメータである既約多項式が依存関係にある。
【０００３】
拡大体型楕円曲線暗号の演算装置における剰余乗算では、既約多項式を構成する線形フィードバックシフトレジスタ（ＬＦＳＲ：linear feedback shift register）を用いた演算方法が用いられるが、線形フィードバックシフトレジスタは、既約多項式に依存するため、予め設定した既約多項式に合わせて演算装置を作る必要がある。
【０００４】
すなわち、線形フィードバックシフトレジスタをハードウエアで構成する場合、使用する既約多項式の最大次数を実現できるようにハードウエアを設計するため、既約多項式の次数が固定されると共に、多項式自体も固定されてしまう。
【０００５】
特許文献１には、剰余乗算を乗算処理と剰余算処理とに分割して積和演算回路の制御により実行することで、剰余算処理の際に線形フィードバックシフトレジスタではなく、多倍長の積和演算回路で演算を行うことにより、１以上の任意の拡大次数を使用でき、拡大体の拡大次数を増加しても、装置本体を作り直さずに演算を実行する構成が開示されているが、演算に線形フィードバックシフトレジスタを用いる構成には適用できない。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００１−３４１６７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
従来、拡大体型楕円曲線暗号においてセキュリティ強度を高めるには、既約多項式の次数の変更や、既約多項式の変更が必要であるが、演算に線形フィードバックシフトレジスタを用いる暗号処理装置においては、既約多項式を構成する線形フィードバックシフトレジスタを再構築する必要があり、セキュリティ強度を容易に変更できないという問題があった。
【０００８】
本発明は上記のような問題点を解消するためになされたもので、楕円曲線暗号の演算のための既約多項式の変更が容易な暗号処理装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明に係る暗号処理装置の第１の態様は、剰余乗算演算に既約多項式を用いた、２の拡大体上で定義される楕円曲線暗号を用いる暗号処理装置であって、前記既約多項式を用いた演算を行う演算部と、前記演算部での暗号処理を制御する暗号制御部と、を備え、前記演算部は、所定の最大次数の多項式を規定可能に構成された複数の回路を有し、前記複数の回路のうち実質的に不活性とする回路を決定することで、前記既約多項式を前記所定の最大次数以下の多項式とする。
【００１０】
本発明に係る暗号処理装置の第２の態様は、前記複数の回路が、ビット列を構成する一部のビットの排他的論理和を入力ビットとしてフィードバックする線形フィードバックシフトレジスタを備え、該線形フィードバックシフトレジスタにより前記既約多項式を規定し、前記線形フィードバックシフトレジスタは、排他的論理和の対象であって前記入力ビットに影響を与えるビットを出力するタップを選択するタップ選択手段と、前記ビット列の何れのビットをフィードバックループの始めのビットとするかを選択するフィードバック開始位置選択手段と、を有し、前記タップ選択手段によって前記タップを選択することで、前記既約多項式の項を規定し、前記フィードバック開始位置選択手段によって前記フィードバックループの開始位置を設定することで、前記多項式の次数を決定する。
【００１１】
本発明に係る暗号処理装置の第３の態様は、前記線形フィードバックシフトレジスタが、シフトレジスタを構成する複数のフリップフロップのそれぞれの出力信号を受ける複数の排他的論理和素子を有し、前記タップ選択手段は、一方入力に、前記複数の排他的論理和素子のそれぞれを実質的に不活性状態とするか、活性状態を維持するかを設定するタップ選択信号を受け、他方入力に排他的論理和の対象となる信号を受け、その出力を前記複数の排他的論理和素子のそれぞれに与える複数の論理ゲートを有し、前記タップ選択信号によって活性状態を維持する排他的論理和素子に出力を与えるフリップフロップをタップとして選択し、前記フィードバック開始位置選択手段は、前記複数のフリップフロップのそれぞれの出力信号を一方の入力に受け、他方の入力にフィードバック信号を受け、フィードバック開始位置選択信号によりどちらかを選択して出力する複数のセレクタを有し、前記フィードバック開始位置選択信号により選択される所定のフリップフロップの出力信号を、前記フィードバックループの前記始めのビットとし、前記タップ選択信号および前記フィードバック開始位置選択信号を変更することで前記楕円曲線暗号のセキュリティ強度を変更する。
【００１２】
本発明に係る暗号処理装置の第４の態様は、前記線形フィードバックシフトレジスタが、前記複数の排他的論理和素子が、前記複数のフリップフロップのそれぞれの間に介挿されたガロア線形フィードバックシフトレジスタであって、前記複数の論理ゲートは、複数のＡＮＤゲートであって、前記他方入力には前記排他的論理和の対象となる信号として前記フィードバック信号を受ける。
【発明の効果】
【００１３】
本発明によれば、演算部が、所定の最大次数の多項式を規定可能に構成された複数の回路を有し、複数の回路のうち実質的に不活性とする回路を決定することで、既約多項式を所定の最大次数以下の多項式とするので、２の拡大体上で定義される楕円曲線暗号の演算のため既約多項式を変更することが可能となり、楕円曲線暗号のセキュリティ強度を容易に変更することができる。
【図面の簡単な説明】
【００１４】
【図１】本発明に係る実施の形態の可変型ガロア線形フィードバックシフトレジスタの構成を示す回路図である。
【図２】本発明に係る実施の形態の可変型ガロア線形フィードバックシフトレジスタの動作を説明する図である。
【図３】本発明に係る実施の形態の可変型ガロア線形フィードバックシフトレジスタの動作を説明する等価回路図である。
【図４】本発明に係る実施の形態の可変型ガロア線形フィードバックシフトレジスタの動作を説明する図である。
【図５】本発明に係る実施の形態の可変型ガロア線形フィードバックシフトレジスタの動作を説明する等価回路図である。
【図６】本発明に係る実施の形態の暗号処理装置の構成および動作を説明するブロック図である。
【図７】本発明に係る実施の形態の暗号処理装置の構成および動作を説明するブロック図である。
【図８】本発明に係る実施の形態の暗号処理装置の動作を説明するフローチャートである。
【発明を実施するための形態】
【００１５】
＜実施の形態＞
＜可変型ガロアＬＦＳＲの構成＞
図１は本発明に係る実施の形態の暗号処理装置に用いられる可変型ガロア線形フィードバックシフトレジスタ１００の一例の構成を示す回路図である。
【００１６】
図１に示すように可変型ガロア線形フィードバックシフトレジスタ１００は最大で８次の既約多項式を規定することができ、フリップフロップＦ１，Ｆ２，Ｆ３，Ｆ４，Ｆ５，Ｆ６，Ｆ７およびＦ８と、２入力のＡＮＤゲートＧ１，Ｇ２，Ｇ３，Ｇ４，Ｇ５，Ｇ６およびＧ７と、２入力のセレクタＳ１，Ｓ２，Ｓ３，Ｓ４，Ｓ５，Ｓ６およびＳ７と、排他的論理和素子Ａ１，Ａ２，Ａ３，Ａ４，Ａ５，Ａ６，Ａ７およびＡ８を備えている。
【００１７】
入力データを受ける排他的論理和素子Ａ１の出力は、フリップフロップＦ１の入力に接続され、フリップフロップＦ１の出力は排他的論理和素子Ａ２の入力に接続され、排他的論理和素子Ａ２の出力はフリップフロップＦ２の入力に接続され、フリップフロップＦ２の出力は排他的論理和素子Ａ３の入力に接続され、排他的論理和素子Ａ３の出力はフリップフロップＦ３の入力に接続され、フリップフロップＦ３の出力は排他的論理和素子Ａ４の入力に接続され、排他的論理和素子Ａ４の出力はフリップフロップＦ４の入力に接続され、フリップフロップＦ４の出力は排他的論理和素子Ａ５の入力に接続され、排他的論理和素子Ａ５の出力はフリップフロップＦ５の入力に接続され、フリップフロップＦ５の出力は排他的論理和素子Ａ６の入力に接続され、排他的論理和素子Ａ６の出力はフリップフロップＦ６の入力に接続され、フリップフロップＦ６の出力は排他的論理和素子Ａ７の入力に接続され、排他的論理和素子Ａ７の出力はフリップフロップＦ７の入力に接続され、フリップフロップＦ７の出力は排他的論理和素子Ａ８の入力に接続され、排他的論理和素子Ａ８の出力はフリップフロップＦ８の入力に接続され、フリップフロップＦ８の出力が出力データとなる。
【００１８】
フリップフロップＦ８の出力はＡＮＤゲートＧ７の一方入力に接続されると共に、セレクタＳ７の「０」入力に接続されている。なお、セレクタＳ７の「１」入力にはフリップフロップＦ７の出力が接続され、セレクタＳ７の選択入力には次数を決める選択信号ＳＥＬ[６]が与えられる。そして、ＡＮＤゲートＧ７の他方入力にはタップを選択するタップ選択信号ＰＡ[７]が与えられ、ＡＮＤゲートＧ７の出力は排他的論理和素子Ａ８の入力に接続されている。
【００１９】
セレクタＳ７の出力はＡＮＤゲートＧ６の一方入力に接続されると共に、セレクタＳ６の「０」入力に接続されている。なお、セレクタＳ６の「１」入力にはフリップフロップＦ６の出力が接続され、セレクタＳ６の選択入力には次数を決める選択信号ＳＥＬ[５]が与えられる。そして、ＡＮＤゲートＧ６の他方入力にはタップを選択するタップ選択信号ＰＡ[６]が与えられ、ＡＮＤゲートＧ６の出力は排他的論理和素子Ａ７の入力に接続されている。
【００２０】
セレクタＳ６の出力はＡＮＤゲートＧ５の一方入力に接続されると共に、セレクタＳ５の「０」入力に接続されている。なお、セレクタＳ５の「１」入力にはフリップフロップＦ５の出力が接続され、セレクタＳ５の選択入力には次数を決める選択信号ＳＥＬ[４]が与えられる。そして、ＡＮＤゲートＧ５の他方入力にはタップを選択するタップ選択信号ＰＡ[５]が与えられ、ＡＮＤゲートＧ５の出力は排他的論理和素子Ａ６の入力に接続されている。
【００２１】
セレクタＳ５の出力はＡＮＤゲートＧ４の一方入力に接続されると共に、セレクタＳ４の「０」入力に接続されている。なお、セレクタＳ４の「１」入力にはフリップフロップＦ４の出力が接続され、セレクタＳ４の選択入力には次数を決める選択信号ＳＥＬ[３]が与えられる。そして、ＡＮＤゲートＧ４の他方入力にはタップを選択するタップ選択信号ＰＡ[４]が与えられ、ＡＮＤゲートＧ４の出力は排他的論理和素子Ａ５の入力に接続されている。
【００２２】
セレクタＳ４の出力はＡＮＤゲートＧ３の一方入力に接続されると共に、セレクタＳ３の「０」入力に接続されている。なお、セレクタＳ３の「１」入力にはフリップフロップＦ３の出力が接続され、セレクタＳ３の選択入力には次数を決める選択信号ＳＥＬ[２]が与えられる。そして、ＡＮＤゲートＧ３の他方入力にはタップを選択するタップ選択信号ＰＡ[３]が与えられ、ＡＮＤゲートＧ３の出力は排他的論理和素子Ａ４の入力に接続されている。
【００２３】
セレクタＳ３の出力はＡＮＤゲートＧ２の一方入力に接続されると共に、セレクタＳ２の「０」入力に接続されている。なお、セレクタＳ２の「１」入力にはフリップフロップＦ２の出力が接続され、セレクタＳ２の選択入力には次数を決める選択信号ＳＥＬ[１]が与えられる。そして、ＡＮＤゲートＧ２の他方入力にはタップを選択するタップ選択信号ＰＡ[２]が与えられ、ＡＮＤゲートＧ２の出力は排他的論理和素子Ａ３の入力に接続されている。
【００２４】
セレクタＳ２の出力はＡＮＤゲートＧ１の一方入力に接続されると共に、セレクタＳ１の「０」入力に接続されている。なお、セレクタＳ１の「１」入力にはフリップフロップＦ１の出力が接続され、セレクタＳ１の選択入力には次数を決める選択信号ＳＥＬ[０]が与えられる。そして、ＡＮＤゲートＧ１の他方入力にはタップを選択するタップ選択信号ＰＡ[１]が与えられ、ＡＮＤゲートＧ１の出力は排他的論理和素子Ａ２の入力に接続されている。そして、セレクタＳ１の出力は排他的論理和素子Ａ１の入力に接続されている。
【００２５】
＜可変型ガロアＬＦＳＲの動作＞
このような構成を有する可変型ガロア線形フィードバックシフトレジスタ１００においては、７ビットのタップ選択信号ＰＡと７ビットの選択信号ＳＥＬを適宜設定することで、最大で８次の既約多項式を規定することができる。
【００２６】
例えば、既約多項式Ｘ４＋Ｘ３＋Ｘ２＋１を規定したい場合には、タップ選択信号ＰＡ[６：０]＝００００１１０とすることで、図２に示されるように、排他的論理和素子を不活性状態または活性状態としてタップを選択し、また、選択信号ＳＥＬ[６：０]＝０００１０００とすることで、図２に示されるように、フィードバックループを何れのフリップフロップの出力から始めるかを選択する。
【００２７】
すなわち、図２に示されるように、選択信号ＳＥＬ[３]＝１とすることで、フリップフロップＦ４の出力が循環する構成となり、フリップフロップＦ４よりデータの流れで下流側となるフリップフロップＦ５〜Ｆ８はフィードバックシフトレジスタとしては機能しなくなり、フリップフロップＦ４の出力が出力データとなる。
【００２８】
このように、セレクタＳ１〜Ｓ７は、どのフリップフロップの出力をフィードバックループの始めのビットとするかを選択するので、フィードバック開始位置選択手段と呼称することができ、選択信号ＳＥＬは、フィードバック開始位置選択信号と呼称することができる。
【００２９】
また、タップ選択信号ＰＡ[０]＝０とすることでＡＮＤゲートＧ１の出力は０となり、排他的論理和素子Ａ２はフリップフロップＦ１の出力をそのままフリップフロップＦ２に送るだけの実質的に不活性な状態となる。一方、排他的論理和素子Ａ３、Ａ４は活性状態を維持する。この結果、可変型ガロア線形フィードバックシフトレジスタ１００は、図３に示す等価回路のように、フリップフロップＦ４、Ｆ３およびＦ２がいわゆるタップとなり、既約多項式Ｘ４＋Ｘ３＋Ｘ２＋１が規定されることとなる。
【００３０】
このように、ＡＮＤゲートＧ１〜Ｇ７は、排他的論理和の対象であって入力ビットに影響を与えるビットを出力するタップを選択するタップ選択手段と呼称することができる。
【００３１】
また、フィードバック開始位置選択信号およびタップ選択信号を適宜に変更することで、次数および多項式を任意に変更することができる。
【００３２】
換言すれば、図１に示す可変型ガロア線形フィードバックシフトレジスタ１００は、所定の最大次数の多項式を規定可能に構成された複数の回路で構成されていると言うことができ、複数の回路のうち実質的に不活性とする回路を決定することで、既約多項式を所定の最大次数以下の次数の多項式に任意に変更することができる。
【００３３】
例えば、既約多項式をＸ４＋Ｘ３＋Ｘ２＋１からＸ８＋Ｘ６＋Ｘ４＋Ｘ３＋Ｘ２＋１に変更したい場合には、タップ選択信号ＰＡ[６：０]＝０１０１１１０とすることで、図４に示されるように、排他的論理和素子を不活性状態または活性状態としてタップを選択し、また、選択信号ＳＥＬ[６：０]＝００００００とすることで、図４に示されるように、フィードバックループを何れのフリップフロップの出力から始めるかを決定する。
【００３４】
すなわち、図４に示されるように、選択信号ＳＥＬ[６：０]＝００００００とすることでフリップフロップＦ８の出力が循環する構成となり、最大次数である８次の既約多項式となる。
【００３５】
また、タップ選択信号ＰＡ[０]、ＰＡ[４]およびＰＡ[６]を０とすることでＡＮＤゲートＧ１、Ｇ５およびＧ７の出力は０となり、排他的論理和素子Ａ２、Ａ６およびＡ８は、それぞれフリップフロップＦ１、Ｆ５およびＦ７の出力をそのままフリップフロップＦ２、Ａ６およびＡ８に送るだけの実質的に不活性な状態となる。一方、排他的論理和素子Ａ３、Ａ４、Ａ５およびＡ７は活性状態を維持する。この結果、可変型ガロア線形フィードバックシフトレジスタ１００は、図５に示す等価回路のように、フリップフロップＦ８、Ｆ６、Ｆ４およびＦ２がいわゆるタップとなり、既約多項式Ｘ８＋Ｘ６＋Ｘ４＋Ｘ３＋Ｘ２＋１が規定されることとなる。
【００３６】
以上説明したように、可変型ガロア線形フィードバックシフトレジスタ１００によれば、選択信号ＳＥＬを適宜に設定することで、ハードウエアとして設定された最大次数以下であれば既約多項式の次数を任意に設定し、変更することができる。次数を任意に設定できることから、符号理論で用いる場合には符号長を可変にでき、また、誤り訂正能力を可変にすることができる。また、暗号理論で用いる場合には、異なる次数の剰余乗算に可変することができる。
【００３７】
また、タップ選択信号ＰＡを適宜に設定することで、タップとなるフリップフロップを任意に設定できるので、ハードウエアとして設定された最大次数以下であれば既約多項式を任意に設定し、また変更することができる。タップとなるフリップフロップを任意に設定することでタップ位置を可変できることから、符号理論や暗号理論で用いる場合には、所望の既約多項式への対応が可能となる。
【００３８】
このような可変型ガロア線形フィードバックシフトレジスタを用いた楕円曲線暗号装置では、異なるドメインパラメータを持つ楕円曲線暗号にも柔軟に対応することができる。
【００３９】
＜暗号処理装置の構成＞
図６および図７は本発明に係る実施の形態の暗号処理装置１０の構成を示すブロック図であり、図６は可変型ガロア線形フィードバックシフトレジスタで既約多項式１(Ｘ２３３＋Ｘ７４＋１）を使用する場合の構成を模式的に示しており、図７は可変型ガロア線形フィードバックシフトレジスタで既約多項式２（Ｘ２８３＋Ｘ１２＋Ｘ７＋Ｘ５＋１）を規定する場合の構成を模式的に示している。なお、本発明に係る実施の形態の暗号処理装置１０は、剰余乗算演算に既約多項式を用いた、２の拡大体（ＧＦ（２ｎ）：Ｇalois Field）上で定義される楕円曲線暗号を用いる暗号処理装置である。
【００４０】
図６および図７に示すように、暗号処理装置１０は、ＣＰＵ等のホスト装置３０との間で入力データおよび出力データの授受を行うインタフェース部１と、インタフェース部１に接続されたシーケンサ部２と、シーケンサ部２に接続された演算部３とを備え、演算部３内には可変型ガロア線形フィードバックシフトレジスタ４を有している。
【００４１】
演算部３内の可変型ガロア線形フィードバックシフトレジスタ４は、図１を用いて説明した可変型ガロア線形フィードバックシフトレジスタ１００と同様の構成を有するが、最大次数はより大きな値（少なくとも２８３次）となるように構成されている。
【００４２】
また、暗号処理装置１０には、既約多項式の次数情報およびタップ位置情報をパラメータ化したデータを格納するパラメータ格納部２０が付属している。
【００４３】
パラメータ格納部２０に格納されるパラメータ化されたデータとしては、例えば、図１、図２を用いて説明した選択信号ＳＥＬに対応する次数情報やタップ選択信号ＰＡに対応するタップ位置情報であり、可変型ガロア線形フィードバックシフトレジスタ４で規定する既約多項式に合わせて格納される。図６および図７の例では、パラメータ格納部２０の格納部２０１には既約多項式１(Ｘ２３３＋Ｘ７４＋１）を規定するためのデータが格納され、格納部２０２には既約多項式２（Ｘ２８３＋Ｘ１２＋Ｘ７＋Ｘ５＋１）を規定するためのデータが格納されている。
【００４４】
シーケンサ部２は、インタフェース部１を介して受け取った入力データを演算部３に転送すると共に、演算部３を制御して、次数情報、タップ位置情報に基づいて可変型ガロア線形フィードバックシフトレジスタ４で規定される既約多項式を用いて入力データを暗号化するので暗号制御部と呼称することができる。
【００４５】
＜セキュリティ強度の変更動作＞
次に、図６および図７を参照しつつ、図８に示すフローチャートを用いて、暗号処理装置１０におけるセキュリティ強度の変更動作について説明する。
【００４６】
暗号処理装置１０での暗号処理に際しては、既約多項式１(Ｘ２３３＋Ｘ７４＋１）および既約多項式２（Ｘ２８３＋Ｘ１２＋Ｘ７＋Ｘ５＋１）の、次数情報およびタップ位置情報をパラメータ化し、パラメータ格納部２０の格納部１および２にそれぞれ格納する（ステップＳＴ１）。どのような既約多項式を使用するかはユーザが任意に決定し、予め、パラメータ格納部２０に格納しておく。なお、上記では便宜的に２つの既約多項式を格納する例を示したが、格納する既約多項式の数はこれに限定されるものではない。
【００４７】
次に、パラメータ格納部２０から既約多項式１のパラメータを読み出し、演算部３内のガロア線形フィードバックシフトレジスタ４に入力する（ステップＳＴ２）。なお、選択信号ＳＥＬに対応する次数情報はシーケンサ部２も与えられ、次数情報（ＳＥＬ）に対応する次数を有する暗号制御に使用される。
【００４８】
暗号処理装置１０では、入力された既約多項式１のパラメータデータに基づいて、演算部３内のガロア線形フィードバックシフトレジスタ４の構成を既約多項式１(Ｘ２３３＋Ｘ７４＋１）に合わせて設定し、既約多項式１を規定する（ステップＳＴ３）。
【００４９】
そして、シーケンサ部２では、規定された既約多項式１を用いて入力データを暗号化して出力データとしてインタフェース部１に与えるが、ステップＳＴ４でセキュリティ強度を変更するという指示が、例えばホスト装置３０から与えられた場合は、図７に示すようにパラメータ格納部２０から既約多項式２のパラメータを読み出し、演算部３内のガロア線形フィードバックシフトレジスタ４に入力する（ステップＳＴ５）。
【００５０】
暗号処理装置１０では、入力された既約多項式２のパラメータデータに基づいて、演算部３内のガロア線形フィードバックシフトレジスタ４の構成を既約多項式２（Ｘ２８３＋Ｘ１２＋Ｘ７＋Ｘ５＋１）に合わせて設定し、既約多項式２を規定する（ステップＳＴ６）。
【００５１】
そして、シーケンサ部２では、規定された既約多項式２を用いて入力データを暗号化して出力データとしてインタフェース部１に与えて暗号処理を終了する。
【００５２】
なお、ステップＳＴ４でセキュリティ強度を変更するという指示がない場合は、既約多項式１を用いて入力データを暗号化した後は暗号処理を終了する。
【符号の説明】
【００５３】
２  シーケンサ部
３  演算部
Ｇ１〜Ｇ７  ＡＮＤゲート
Ｓ１〜Ｓ７  セレクタ
Ａ１〜Ａ８  排他的論理和素子
【図１】
2014174291.tif 000003
【図２】
2014174291.tif 000004
【図３】
2014174291.tif 000005
【図４】
2014174291.tif 000006
【図５】
2014174291.tif 000007
【図６】
2014174291.tif 000008
【図７】
2014174291.tif 000009
【図８】
2014174291.tif 000010