JPH05333776A - 関数処理モジュール - Google Patents

関数処理モジュール

Info

Publication number
JPH05333776A
JPH05333776A JP4139425A JP13942592A JPH05333776A JP H05333776 A JPH05333776 A JP H05333776A JP 4139425 A JP4139425 A JP 4139425A JP 13942592 A JP13942592 A JP 13942592A JP H05333776 A JPH05333776 A JP H05333776A
Authority
JP
Japan
Prior art keywords
function
function processing
algorithm
processing module
input data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP4139425A
Other languages
English (en)
Inventor
Taro Shibagaki
太郎 柴垣
Masato Tajima
正登 田島
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP4139425A priority Critical patent/JPH05333776A/ja
Priority to GB9311145A priority patent/GB2267419B/en
Priority to US08/069,105 priority patent/US5517614A/en
Priority to GB9522945A priority patent/GB2294140B/en
Priority to FR9306502A priority patent/FR2691827B1/fr
Publication of JPH05333776A publication Critical patent/JPH05333776A/ja
Priority to US08/428,364 priority patent/US5740251A/en
Priority to US08/630,469 priority patent/US5793940A/en
Pending legal-status Critical Current

Links

Abstract

(57)【要約】 【目的】この発明の目的は、少なくとも第三者に複数の
アルゴリズムのどれが実行されているのかわからないよ
うにして、さらに機密性を向上させることのできる関数
処理モジュールを提供することにある。 【構成】この発明は、複数の関数アルゴリズムが格納さ
れ指定された関数アルゴリズムを実行して入力データの
関数演算処理を行う関数処理部と、この関数処理部に対
してその処理結果に基づいて次の関数アルゴリズムを指
定するアルゴリズム選択制御部とを具備して構成され
る。また、関数処理部の計算結果を直接出力せずに他の
値に変換して出力する出力変換部を備えて構成される。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明は、例えば暗号処理のよ
うに、機密保護を目的とした関数処理に用いる関数処理
モジュールに関する。
【0002】
【従来の技術】機密保護を目的としたデータの関数処理
(例えば暗号処理)に用いる関数処理モジュールとし
て、例えば暗号LSI(大規模集積回路装置)がある。
従来、この種の関数処理モジュールでは、ただ1つの関
数アルゴリズムをサポートするか、また仮に複数の関数
アルゴリズムをサポートしているにしても、その切替え
をを外部からの制御信号により直接行っていた。
【0003】しかしながら、セキュリティの立場から
は、1つより複数のアルゴリズムを用いた方がより安全
であり、また、できれば第三者にとってある時点でどの
アルゴリズムが実行されているのか全く分からないよう
な構造になっていることが望ましい。さらに、関数処理
結果がそのまま出力されるのではなく、場合に応じてモ
ジュール外部へは隠蔽された形で出力された方がより安
全である。
【0004】
【発明が解決しようとする課題】以上述べたように、従
来の関数処理モジュールでは、安全性(セキュリティ)
が必ずしも満足できるものではなく、さらに安全性の向
上が求められている。
【0005】この発明は上記の課題を解決するためにな
されたもので、複数の関数アルゴリズムを内部的に制御
することで、各処理段階でどのアルゴリズムが実行され
ているのかわからないようにすると共に、関数処理結果
も場合によっては直接出力しないようにして、さらに機
密性を向上させることのできる関数処理モジュールを提
供することを目的とする。
【0006】
【課題を解決するための手段】上記目的を達成するため
にこの発明は、複数の関数アルゴリズムが格納され指定
された関数アルゴリズムを実行して入力データの関数演
算処理を行う関数処理部と、この関数処理部に対してそ
の処理結果に基づいて次の関数アルゴリズムを指定する
アルゴリズム選択制御部とを具備して構成される。
【0007】また、関数処理部の計算結果を直接出力せ
ずに他の値に変換して出力する出力変換部を備えて構成
される。
【0008】
【作用】上記構成による関数処理モジュールでは、複数
の関数アルゴリズムを使い分ける場合に、その切替えを
外部制御信号によって直接行うのではなく、モジュール
内部で計算された値に基づき、外部からは直接見えない
方法で次に実行するアルゴリズムを決定するようにして
おり、不正な第三者が関数処理モジュールへの入出力信
号だけを見ても、内部で実行されているアルゴリズムを
推定することができないようにしている。勿論、内部構
造を知るシステム管理者にとっては関数処理モジュール
の状態を完全にフォローすることができる。
【0009】また、関数処理後の値をそのまま外部へ出
力するのではなく、いったん別の値に変換して外部に出
力するようにしており、モジュール内部で実行されてい
るアルゴリズムを予測することがより困難になってい
る。勿論、この関数値の変換は外部とは遮断された形で
内部的に行われるため、非常に安全である。
【0010】
【実施例】以下、図面を参照してこの発明の一実施例を
詳細に説明する。
【0011】図1はこの発明に係る関数処理モジュール
の構成を示すもので、関数処理部1にはN個の関数アル
ゴリズムF0 〜FN-1 が格納されている。この関数処理
部1で実行される関数アルゴリズムは、アルゴリズム選
択制御部2からの選択制御信号により決定される。ここ
である関数アルゴリズムFk が選択されたとすれば、関
数処理部1は入力データXについてFk(X)=Yを計算
する。
【0012】上記アルゴリズム選択制御部2は関数処理
部1の計算結果Y=Fk(X) を入力し、その全体または
一部の値に基づいて関数処理部1が次に実行する関数ア
ルゴリズムFk+1 を決定し、選択制御信号を関数処理部
1に供給する。関数アルゴリズムFk をFk+1 に遷移さ
せる決定法として様々な方式が考えられるが、1つの方
法としてアルゴリズムの時間変化が有限状態離散時間マ
ルコフ過程を形成しているとみなす確率的な方式があ
る。無論、計算結果Yに基づき確定的に遷移させる方式
でもよい。
【0013】上記構成によれば、モジュール内部で関数
処理部1の計算結果に基づいて次の関数アルゴリズムを
決定し遷移させるようにしているので、各処理段階でど
のアルゴリズムが実行されているのか第三者にわからな
いようにすることができる。
【0014】この発明は上記実施例に限らず、図1にお
いて、上記関数アルゴリズム遷移決定に外部入力データ
X′を用い、アルゴリズム選択制御部2において、関数
処理部1の計算結果Fk(X) と外部入力データX′とを
比較し、その比較結果に基づいて次の関数アルゴリズム
Fk+1 を決定するようにしてもよい。この場合も上述の
確率的あるいは確定的な遷移決定方式をとることができ
る。
【0015】例えば、Y=Fk(X) とX′を比較して、
Fk(X)=X′のときは現行のアルゴリズムFk をその
まま保持し、Y=Fk(X)≠X′のときは現行のアルゴ
リズムを別のアルゴリズムFk+1 に遷移させるように制
御することもできる。
【0016】上記構成によれば、外部入力データX′に
より直接関数アルゴリズムを指定していないので、外部
から関数アルゴリズムを選択制御する場合でも第三者に
内部処理内容をわからないようにすることができる。
【0017】また、図1において、関数処理部1の計算
結果Fk(X) =Yを直接出力せず、出力変換部3で他の
値に置き換える等、隠蔽(マスク)した形で出力するよ
うにすればいっそうセキュリティを持たせることができ
る。
【0018】この隠蔽法も種々のものが考えられるが、
上記のようにアルゴリズムの時間変化が有限状態離散時
間マルコフ過程を形成している場合には、例えば過去に
実行したアルゴリズムの履歴に依存した値Bj (j≦
k)を用いて、Y′=Y+Bj(j≦k)によりYの値
を変換する方法がある。
【0019】この場合、関数処理部1の計算結果Yをマ
スク制御部4に送り、このマスク制御部4に過去の実行
アルゴリズムの履歴を蓄積しておき、その履歴に依存し
た値Bj を計算して出力変換部3に供給することで実現
できる。もちろん、出力変換はマスク制御部4によら
ず、出力変換部3の内部に存在する固定データに基づい
て行うようにしてもよい。
【0020】上記各実施例では、関数処理部1に格納し
た複数の関数アルゴリズムが互いに独立したものとして
説明したが、これに限らず、例えば1つの基本アルゴリ
ズムFと複数のサブアルゴリズムG0 〜GN-1 を組み合
わせて構成し、G0 〜GN-1の部分のみを制御すること
により、全体アルゴリズムを変化させるようにしてもよ
い。この場合、関数処理部1のアルゴリズム格納容量を
減らすことができ、関数処理モジュールをLSI化する
場合など、回路規模を小さく抑えたい場合に有効な手段
となる。
【0021】また、上記各実施例では、関数処理部1の
入力データを1系統としたが、これに限らず出力変換部
3の出力をフィードバックして使用するようにしてもよ
いことはもちろんである。
【0022】さらに、この発明は上記実施例に限らず、
例えば全体をLSI構成とせず、関数処理部1をアルゴ
リズム格納部と演算処理部に分け、アルゴリズム選択制
御部2からの選択制御に応じて格納部からアルゴリズム
を読出し、演算処理部に移すようにしてもよい。この場
合、アルゴリズム格納部のアルゴリズムを変更または追
加可能な構造にできれば、よりいっそうセキュリティを
高め、しかも汎用性を持たせることができる。
【0023】その他この発明の要旨を逸脱しない範囲で
種々変形しても同様に実施例可能である。
【0024】
【発明の効果】以上のようにこの発明によれば、複数の
関数アルゴリズムを内部的に制御することで、各処理段
階でどのアルゴリズムが実行されているのかわからない
ようにすると共に、関数処理結果も場合によっては直接
出力しないようにして、さらに機密性を向上させること
のできる関数処理モジュールを提供することができる。
【図面の簡単な説明】
【図1】この発明に係る関数処理モジュールの一実施例
を示すブロック構成図。
【符号の説明】
1…関数処理部、2…関数アルゴリズム選択制御部、3
…出力変換部、4…マスク制御部、F0 〜FN-1 …関数
アルゴリズム。

Claims (10)

    【特許請求の範囲】
  1. 【請求項1】複数の関数アルゴリズムが格納され指定さ
    れた関数アルゴリズムを実行して入力データの関数演算
    処理を行う関数処理部と、この関数処理部に対してその
    処理結果に基づいて次の関数アルゴリズムを指定するア
    ルゴリズム選択制御部とを具備する関数処理モジュー
    ル。
  2. 【請求項2】前記アルゴリズム選択制御部は、前記関数
    処理部の関数アルゴリズムFk からFk+1 への遷移制御
    をFk による入力データXに対する計算結果Fk(X) の
    全体またはその一部の値に基づいて確率的に行うことを
    特徴とする請求項1記載の関数処理モジュール。
  3. 【請求項3】前記アルゴリズム選択制御部は、前記関数
    処理部の関数アルゴリズムFk からFk+1 への遷移制御
    をFk による入力データXに対する計算結果Fk(X) の
    全体またはその一部の値に基づいて確定的に行うことを
    特徴とする請求項1記載の関数処理モジュール。
  4. 【請求項4】前記アルゴリズム選択制御部は、前記関数
    処理部の処理結果と外部入力データとを比較しその比較
    結果に基づいて次の関数アルゴリズムを指定するように
    したことを特徴とする請求項1記載の関数処理モジュー
    ル。
  5. 【請求項5】前記アルゴリズム選択制御部は、前記関数
    処理部の関数アルゴリズムFk からFk+1 への遷移制御
    をFk による入力データXに対する計算結果Fk(X) と
    外部入力データX′との比較結果に基づいて確率的に行
    うことを特徴とする請求項4記載の関数処理モジュー
    ル。
  6. 【請求項6】前記アルゴリズム選択制御部は、前記関数
    処理部の関数アルゴリズムFk からFk+1 への遷移制御
    をFk による入力データXに対する計算結果Fk(X) と
    外部入力データX′との比較結果に基づいて確定的に行
    うことを特徴とする請求項4記載の関数処理モジュー
    ル。
  7. 【請求項7】さらに、前記関数処理部の計算結果を直接
    出力せずに他の値に変換して出力する出力変換部を備え
    ることを特徴とする請求項1記載の関数処理モジュー
    ル。
  8. 【請求項8】前記出力変換部は、前記関数処理部が過去
    に実行した関数アルゴリズムの履歴の全体またはその一
    部に依存する値に基づいて出力変換を行うことを特徴と
    する請求項7記載の関数処理モジュール。
  9. 【請求項9】前記出力変換部は、内部に存在する固定デ
    ータに基づいて出力変換を行うことを特徴とする請求項
    7記載の関数処理モジュール。
  10. 【請求項10】前記関数処理部は、前記複数の関数アル
    ゴリズムが1つの基本アルゴリズムと複数のサブアルゴ
    リズムを組み合わせて構成されることを特徴とする請求
    項1記載の関数処理モジュール。
JP4139425A 1992-05-29 1992-05-29 関数処理モジュール Pending JPH05333776A (ja)

Priority Applications (7)

Application Number Priority Date Filing Date Title
JP4139425A JPH05333776A (ja) 1992-05-29 1992-05-29 関数処理モジュール
GB9311145A GB2267419B (en) 1992-05-29 1993-05-28 Data processing apparatus
US08/069,105 US5517614A (en) 1992-05-29 1993-05-28 Data compression/encryption processing apparatus
GB9522945A GB2294140B (en) 1992-05-29 1993-05-28 Data processing apparatus
FR9306502A FR2691827B1 (fr) 1992-05-29 1993-06-01 Appareil de traitement de donnees.
US08/428,364 US5740251A (en) 1992-05-29 1995-04-25 Data processing apparatus
US08/630,469 US5793940A (en) 1992-05-29 1996-04-10 Data processing apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4139425A JPH05333776A (ja) 1992-05-29 1992-05-29 関数処理モジュール

Publications (1)

Publication Number Publication Date
JPH05333776A true JPH05333776A (ja) 1993-12-17

Family

ID=15244906

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4139425A Pending JPH05333776A (ja) 1992-05-29 1992-05-29 関数処理モジュール

Country Status (1)

Country Link
JP (1) JPH05333776A (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002089397A1 (fr) * 2001-04-24 2002-11-07 Nti, Inc. Procede de transmission de donnees
JP2003067072A (ja) * 2001-08-27 2003-03-07 Victor Co Of Japan Ltd オプション機能を有するデジタル機器
WO2003084126A1 (fr) * 2002-03-29 2003-10-09 Nti, Inc. Dispositif de communication
JP2009244302A (ja) * 2008-03-28 2009-10-22 Toshiba Corp 暗号化装置、復号化装置、データ保護システム、データ保護方法、暗号化プログラム、復号化プログラム
JP2016513383A (ja) * 2013-01-19 2016-05-12 トロンデルト オーユー 数値制御製造システムにおける安全なストリーミング手法と、安全な数値制御製造システム

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002089397A1 (fr) * 2001-04-24 2002-11-07 Nti, Inc. Procede de transmission de donnees
CN1326350C (zh) * 2001-04-24 2007-07-11 Nti股份有限公司 资料传送方法
JP2003067072A (ja) * 2001-08-27 2003-03-07 Victor Co Of Japan Ltd オプション機能を有するデジタル機器
WO2003084126A1 (fr) * 2002-03-29 2003-10-09 Nti, Inc. Dispositif de communication
JP2009244302A (ja) * 2008-03-28 2009-10-22 Toshiba Corp 暗号化装置、復号化装置、データ保護システム、データ保護方法、暗号化プログラム、復号化プログラム
JP2016513383A (ja) * 2013-01-19 2016-05-12 トロンデルト オーユー 数値制御製造システムにおける安全なストリーミング手法と、安全な数値制御製造システム

Similar Documents

Publication Publication Date Title
EP1964316B1 (en) Secure system-on-chip
JP3081619B2 (ja) コンピュータ・システムとその保安方法
JP3627384B2 (ja) ソフトウェアの保護機能付き情報処理装置及びソフトウェアの保護機能付き情報処理方法
KR100227875B1 (ko) 프로그램 코드를 보호용으로 사용되는 어드레스 정보 스트림의 암호화
US5214698A (en) Method and apparatus for validating entry of cryptographic keys
JPH0619392A (ja) 暗号キーのバージョンを制御する制御機構
JP7400744B2 (ja) 車両制御システム
US9735953B2 (en) Side channel analysis resistant architecture
US7970133B2 (en) System and method for secure and flexible key schedule generation
KR20070057968A (ko) 랜덤 함수를 이용한 비밀 공유
JP2564593B2 (ja) プログラムを機密保護し且つ機密保護されたプログラムを保全制御する方法
JPH0934798A (ja) ロック回路付き集積回路デバイスを備えた電子組立体
JPH05333776A (ja) 関数処理モジュール
US20050249348A1 (en) Data encryption/decryption method, device, and program
JP3982531B2 (ja) ソフトウェアの保護機能付き情報処理装置およびソフトウェアの保護機能付き情報処理方法
JP3982530B2 (ja) ソフトウェアの保護機能付き情報処理装置およびソフトウェアの保護機能付き情報処理方法
EP3475825B1 (en) Cryptographic operations employing non-linear share encoding for protecting from external monitoring attacks
KR100243347B1 (ko) 컴퓨터 패스워드 보호 방법
JP4098959B2 (ja) ディジタル回路
JP2000076144A (ja) 論理回路、マイクロコンピュータ、および論理回路・記憶回路間の通信方法
US20240193300A1 (en) Data processing device and method for processing secret data
Domingo-Ferrer Algorithm-sequenced access control
WO2021044578A1 (ja) 情報処理装置、情報処理方法、及び情報処理プログラム
WO2022264170A1 (en) A method and a device for securing access to an application
TW202437140A (zh) 執行選擇功能之安全控制器及方法