JP6808100B1 - 情報処理装置、情報処理方法及び情報処理プログラム - Google Patents
情報処理装置、情報処理方法及び情報処理プログラム Download PDFInfo
- Publication number
- JP6808100B1 JP6808100B1 JP2020530398A JP2020530398A JP6808100B1 JP 6808100 B1 JP6808100 B1 JP 6808100B1 JP 2020530398 A JP2020530398 A JP 2020530398A JP 2020530398 A JP2020530398 A JP 2020530398A JP 6808100 B1 JP6808100 B1 JP 6808100B1
- Authority
- JP
- Japan
- Prior art keywords
- calculation
- calculation procedure
- change
- procedure
- value
- 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
- 230000010365 information processing Effects 0.000 title claims description 45
- 238000003672 processing method Methods 0.000 title claims description 5
- 238000004364 calculation method Methods 0.000 claims abstract description 343
- 238000000034 method Methods 0.000 claims abstract description 254
- 230000008859 change Effects 0.000 claims abstract description 85
- 238000010801 machine learning Methods 0.000 claims abstract description 16
- 230000008569 process Effects 0.000 claims description 52
- 238000004422 calculation algorithm Methods 0.000 claims description 7
- 230000000873 masking effect Effects 0.000 description 26
- 230000006870 function Effects 0.000 description 23
- 230000004913 activation Effects 0.000 description 18
- 230000004048 modification Effects 0.000 description 12
- 238000012986 modification Methods 0.000 description 12
- 238000004891 communication Methods 0.000 description 8
- 238000013528 artificial neural network Methods 0.000 description 6
- 238000004458 analytical method Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000013135 deep learning Methods 0.000 description 2
- 238000013398 bayesian method Methods 0.000 description 1
- 238000003066 decision tree Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 238000003909 pattern recognition Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/71—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
- G06F21/75—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information by inhibiting the analysis of circuitry or operation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6209—Protecting access to data via a platform, e.g. using keys or access control rules to a single file or object, e.g. in a secure envelope, encrypted and accessed using a key, or with access control rules appended to the object itself
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- General Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Computing Systems (AREA)
- Complex Calculations (AREA)
- Storage Device Security (AREA)
Abstract
Description
一方で、サイバー攻撃による機密情報等の情報漏洩といったセキュリティインシデントが多数報告されている。そして、セキュリティインシデントによる情報資産の流出を防ぐため、データの暗号化といったサイバー攻撃に対するセキュリティ対策が取られるようになった。
例えば、特許文献1では、耐タンパ性を有するセキュアエレメントに学習モデル情報を格納し、さらに学習モデル情報をスクランブル化して格納することで、学習モデル情報をサイバー攻撃から保護する方法が開示されている。
そのため、演算実行時に発生する消費電力、漏洩電磁波といったサイドチャネル情報から、学習モデル情報を解析し、学習モデルを模倣するModel Reverse−Engineering攻撃手法から学習モデル情報を保護することが出来ないという課題があった。
機械学習により値が調整される学習パラメータを用いる演算を実行する演算実行タイミングが到来する度に、不規則に、演算手順を、変更前の演算手順にて演算を実行して得られる演算結果と同一の演算結果が得られる前記変更前の演算手順とは異なる演算手順に変更する演算手順変更部と、
前記演算実行タイミングが到来する度に、前記演算手順変更部による変更後の演算手順にて前記学習パラメータを用いた演算を実行する演算実行部とを有する。
なお、以下の実施の形態では、学習モデルの基となる機械学習手法の例として、ニューラルネットワークを用いた手法を用いて説明を進める。
***構成の説明***
図1は、本実施の形態に係る情報処理装置1のハードウェア構成例を示す。
情報処理装置1は、コンピュータである。
情報処理装置1は、後述の学習モデル110を用いて、学習処理及び推論処理を行う情報処理装置である。
なお、学習処理は、例えば教師あり学習において教師データを与え、後述の学習パラメータ220を調整する処理である。また、推論処理は、学習処理によって調整された学習パラメータ220に基づき、未知のデータについての予測又は識別等を行う処理である。
情報処理装置1は、プロセッサ10、メモリ11、補助記憶装置12、入出力I/F13、通信装置14、及び乱数発生器15を備え、信号線を介して互いに接続される。
なお、情報処理装置1の動作手順は、情報処理方法に相当する。また、情報処理装置1の動作を実現するプログラムは、情報処理プログラムに相当する。
また、補助記憶装置12は、SSD(登録商標、Solid State Drive)、SD(登録商標、Secure Digital)メモリカード、CF(登録商標、CompactFlash)、NANDフラッシュ、フレキシブルディスク、光ディスク、コンパクトディスク、ブルーレイ(登録商標)ディスク、DVD(登録商標、Digital Versatile Disk)といった可搬記録媒体であってもよい。
補助記憶装置12に記憶された演算手順変更部100、及び演算実行部101の機能を実現するプログラムは、メモリ11によりロードされる。また当該プログラムはプロセッサ10に読み出され、実行される。
そして、OSの少なくとも一部がプロセッサ10により実行される。
プロセッサ10はOSの少なくとも一部を実行しながら、演算手順変更部100、及び演算実行部101の機能を実現するプログラムを実行する。
プロセッサ10がOSを実行することで、タスク管理、メモリ管理、ファイル管理、通信制御等が行われる。
そして、演算手順変更部100、及び演算実行部101の機能を実現するプログラムを流通させてもよい。
情報処理装置1は、演算手順変更部100、演算実行部101、及び記憶部200を備える。
具体的には、演算手順変更部100は、学習パラメータ220を用いる演算を実行する演算実行タイミングが到来する度に、不規則に、演算手順を変更する。なお、演算手順変更部100は、変更前の演算手順にて演算を実行して得られる演算結果と同一の演算結果が得られる、変更前の演算手順とは異なる演算手順に変更する。
演算手順変更部100で行われる処理は演算手順変更処理に相当する。
具体的には、演算実行部101は、演算実行タイミングが到来する度に、演算手順変更部100による変更後の演算手順にて学習パラメータ220を用いた演算を実行する。
演算実行部101で行われる処理は演算実行処理に相当する。
なお、学習モデル110は、機械学習に基づく演算手順を定めたモデルである。学習モデル110は、後述の学習モデル情報により決定される。
なお、本実施の形態では、学習モデル110はニューラルネットワークである。
なお、モデルアーキテクチャ210は、具体的には、ニューラルネットワークにおける、ユニット数、層数、又は活性化関数といった学習処理によって調整されないパラメータである。
図2では、学習モデル110の丸はユニットを示す。また、丸の列が層を示す。したがって、モデルアーキテクチャ210のユニット数、層数は、それぞれ、14、4であることを示す。
記憶部200は、メモリ11及び補助記憶装置12により実現される。
また、モデルアーキテクチャ210、及び学習パラメータ220は、ハードディスク、SSD(登録商標)、SD(登録商標)メモリカード、CF(登録商標)、NANDフラッシュ、フレキシブルディスク、光ディスク、コンパクトディスク、ブルーレイ(登録商標)ディスク、DVD(登録商標)といった可搬記録媒体に格納されていてもよい。
また、モデルアーキテクチャ210、及び学習パラメータ220は、通信装置14を介した接続先に格納されていてもよい。
また、情報処理装置1は、処理回路により実現されてもよい。処理回路は、例えば、ロジックIC(Integrated Circuit)、GA(Gate Array)、ASIC(Application Specific Integrated Circuit)、FPGA(Field−Programmable Gate Array)である。
この場合は、演算手順変更部100、演算実行部101、及び記憶部200は、それぞれ処理回路の一部として実現される。
なお、本明細書では、プロセッサと処理回路との上位概念を、「プロセッシングサーキットリー」という。
つまり、プロセッサと処理回路とは、それぞれ「プロセッシングサーキットリー」の具体例である。
次に、図3のフローチャートを用いて、本実施の形態に係る情報処理装置1の動作例について説明する。
なお、本実施の形態では、機械学習の処理の例として、推論処理を用いて説明を進める。
なお、本実施の形態では、学習パラメータ220の値は、学習モデル110で定められた各々のユニットにおける重みである。また、学習パラメータ220の値と演算される被演算値は学習モデル110で定められた各々のユニットにおける入力値である。
具体的には、演算実行部101は、2層目のユニットから指定されていないユニットを順に指定する。また、演算実行部101は、各層の全てのユニットを指定済みであれば、次の層のユニットを指定する。具体例としては、演算実行部101は、2層目の全てのユニットが指定済みであれば、3層目のいずれかのユニットを指定する。
具体的には、演算実行部101は、指定したユニットに入力される複数の入力値及び複数の重みを演算手順変更部100へ通知する。
演算手順変更部100は、演算実行部101からの通知を受け、乱数発生器15より乱数を取得する。そして、演算手順変更部100は、乱数発生器15より取得した乱数を用いて、演算実行部101から通知された値をマスキングする。マスキングの詳細は後述する。
アンマスキングとは、マスキング後の値を用いて演算した結果を、マスキングを実施せずに演算した結果と同一にする処理である。
そして、演算手順変更部100は、マスキング後の値を演算実行部101に通知する。
そして、演算実行部101は、演算結果を演算手順変更部100へ通知する。
このアンマスキングにより得られる演算結果は、マスキングを実施する前の重みと入力値とを用いた演算結果と同一となる。
そして、演算手順変更部100は、このアンマスキングにより得られる演算結果を演算実行部101に通知する。
なお、活性化関数の演算を実行した結果は、下層のユニットに入力される値となる。又は、下層のユニットが無い場合は、出力される演算結果となる。
このように、演算手順変更部100は、活性化関数を用いた演算の演算結果の同一性を維持しつつ、演算手順を変更する。そして、演算実行部101は、変更後の演算手順にて演算を行う。具体的には、演算実行部101は、ユニットへの入力値に対して演算を行うのではなく、演算手順変更部100によるマスキング後の値に対して演算を行う。また、演算実行部101は、ユニットへの入力値に対する演算結果に対して活性化関数の演算を実行するのではなく、マスキング後の値に対する演算結果を演算手順変更部100に出力し、演算手順変更部100によるアンマスキング後の値に対してバイアスの加算及び活性化関数の演算を実行する。
具体的には、演算実行部101は、学習モデル110で定めた1層目のユニットを除く全てのユニットが指定済みであるか否かを確認する。
そして、演算実行部101は、学習モデル110で定めた1層目のユニットを除く全てのユニットが指定済みであることを確認すれば、演算処理は終了する。
一方、演算実行部101は、学習モデル110で定めた1層目のユニットを除くユニットに指定済みでないユニットがあることを確認すれば、処理はステップS200に戻る。
図5は、学習モデル110の1つのユニットの演算手順の例を図示したものである。
入力値はそれぞれx0、x1、x2である。また、重みはそれぞれw0、w1、w2である。
入力値x0、x1、x2と重みw0、w1、w2とは、同じ添え字の値の組合せで乗算される。そして、それら各々の乗算値の総和が算出される。総和は、x0w0+x1w1+x2w2である。
その後、その総和にバイアスb0が加算される。そして、そのバイアスb0の加算後の値は活性化関数による演算が行われ出力y0として出力される。
重みw0、w1、w2の各々は、まず乱数mと加算され、マスキングされる。このように、学習パラメータ220の値及び被演算値のうち少なくともいずれか一方を、乱数発生器15により発生させた乱数を加算又は乗算することで秘匿する処理がマスキングである。
その後、入力値x0、x1、x2とマスキング後の重みw0+m、w1+m、w2+mとは、同じ添え字の値の組合せで乗算される。そして、それら各々の乗算値の総和が算出される。総和は、x0w0+x1w1+x2w2+m(x0+x1+x2)である。
そして、その総和は、演算手順変更部100が算出し、記憶するアンマスキングに用いられる値−m(x0+x1+x2)と加算され、アンマスキングされる。このアンマスキングにより、バイアスb0が加算される前の演算結果は、x0w0+x1w1+x2w2となり、マスキングを実施しない場合のバイアスb0が加算される前の演算結果と同一となる。
なお、加算によるマスキングの場合は、アンマスキングの実施はバイアスb0が加算された後であってもよい。
以上のように、本実施の形態では、学習モデルで定められた演算手順に、乱数を用いたマスキングの処理とアンマスキングの処理が追加される。このため、演算実行タイミングの度に、不規則に演算手順が変更される。これにより、演算実行時に発生するサイドチャネル情報が不規則に変化する。したがって、学習モデルである学習パラメータの解析を防ぐことが可能である。
なお、本実施の形態では、学習モデルの基となる機械学習手法の例として、ニューラルネットワークを用いた手法を用いて説明した。しかし、これに限らず、ディープラーニング、回帰法、決定木学習、ベイズ法、クラスタリング等の手法に基づく学習モデルであってもよい。
また、機械学習の処理は推論処理に限らず、学習処理に適用されてもよい。
<変形例1>
実施の形態1では、学習パラメータ220の値である重みに乱数を加算してマスキングを実施した。しかし、重みに乱数を乗算してマスキングしてもよい。この変形例1について、実施の形態1と異なる点を説明する。
重みw0、w1、w2の各々は、まず乱数mと乗算され、マスキングされる。
その後、入力値x0、x1、x2とマスキング後の重みmw0、mw1、mw2とは、同じ添え字の値の組合せで乗算される。そして、それら各々の乗算値の総和が算出される。総和は、mx0w0+mx1w1+mx2w2である。
そして、その総和は、演算手順変更部100が算出し、記憶するアンマスキングに用いられる値1/mと乗算され、アンマスキングされる。このアンマスキングにより、バイアスb0が加算される前の演算結果は、x0w0+x1w1+x2w2となり、マスキングを実施しない場合のバイアスb0が加算される前の演算結果と同一となる。
変形例2として、被演算値である入力値に乱数を加算してマスキングを実施してもよい。
図8は、図5の演算手順に、入力値への加算によるマスキングの処理とアンマスキングの処理とを実施し、変更した演算手順の例を図示したものである。
入力値x0、x1、x2の各々は、まず乱数mと加算され、マスキングされる。
その後、マスキング後の入力値x0+m、x1+m、x2+mと重みw0、w1、w2は、同じ添え字の値の組合せで乗算される。そして、それら各々の乗算値の総和が算出される。総和は、x0w0+x1w1+x2w2+m(w0+w1+w2)である。
そして、その総和は、演算手順変更部100が算出し、記憶するアンマスキングに用いられる値−m(w0+w1+w2)と加算され、アンマスキングされる。このアンマスキングにより、バイアスb0が加算される前の演算結果は、x0w0+x1w1+x2w2となり、マスキングを実施しない場合のバイアスb0が加算される前の演算結果と同一となる。
なお、加算によるマスキングの場合は、アンマスキングの実施はバイアスb0が加算された後であってもよい。
変形例3として、被演算値である入力値に乱数を乗算してマスキングを実施してもよい。
図9は、図5の演算手順に、入力値への乗算によるマスキングの処理とアンマスキングの処理とを実施し、変更した演算手順の例を図示したものである。
入力値x0、x1、x2の各々は、まず乱数mと乗算され、マスキングされる。
その後、マスキング後の入力値mx0、mx1、mx2と重みw0、w1、w2は、同じ添え字の値の組合せで乗算される。そして、それら各々の乗算値の総和が算出される。総和は、mx0w0+mx1w1+mx2w2である。
そして、その総和は、演算手順変更部100が算出し、記憶するアンマスキングに用いられる値1/mと乗算され、アンマスキングされる。このアンマスキングにより、バイアスb0が加算される前の演算結果は、x0w0+x1w1+x2w2となり、マスキングを実施しない場合のバイアスb0が加算される前の演算結果と同一となる。
本実施の構成では、演算順序を変更する処理の例を説明する。
本実施の形態では、主に実施の形態1との差異を説明する。
なお、以下で説明していない事項は、実施の形態1と同様である。
ステップS200が完了した後、ステップS300では、演算手順変更部100は、演算の順序を変更する。
具体的には、演算実行部101は、指定したユニットに入力される複数の入力値及び複数の重みを用いた演算の演算順序を演算手順変更部100へ通知する。
次に、演算手順変更部100は、乱数発生器15より乱数を取得し、変更後の演算順序を決定する。演算手順変更部100は、具体例としては、フィッシャー−イェーツのシャッフルを用いて演算順序を決定する。なお、変更後の演算順序の決定には、フィッシャー−イェーツのシャッフルに限らず、サットロのアルゴリズムといったその他のシャッフルアルゴリズムを用いてもよい。
そして、演算手順変更部100は、決定した変更後の演算順序を演算実行部101に通知する。
その後、演算実行部101は、順に、バイアスの加算、活性化関数の演算を実行する。
図11では、左端の欄に演算の順序を示す。また、変更前、変更後の順序を示す。
変更前の順序は、順に、演算1:x0×w0、演算2:x1×w1、演算3:x2×w2であることが示されている。
また、変更後の演算順は、順に、演算1:x2×w2、演算2:x0×w0、演算3:x1×w1となったことが示される。
本実施の形態では、シャミアの秘密分散法に基づき、学習パラメータ220の値及び学習パラメータ220と演算される被演算値を秘匿する秘密分散処理を実施する例を説明する。
なお、本実施の形態では、学習パラメータ220の値は、学習モデル110で定められた各々のユニットにおける重みである。また、学習パラメータ220の値と演算される被演算値は学習モデル110で定められた各々ユニットにおける入力値である。
本実施の形態では、主に実施の形態2との差異を説明する。
なお、以下で説明していない事項は、実施の形態2と同様である。
具体的には、演算実行部101は、指定したユニットに入力される複数の入力値及び複数の重みを演算手順変更部100へ通知する。
演算手順変更部100は、演算実行部101からの通知を受け、乱数発生器15より乱数を取得する。
そして、演算手順変更部100は、乱数発生器15より取得した乱数を用いて、演算実行部101から通知された複数の入力値の各々及び複数の重みの各々から各々5つずつのシェアを生成する。
そして、演算手順変更部100は、生成したシェアを演算実行部101に通知する。秘密分散処理の詳細は後述する。
そして、演算実行部101は、シェアを用いた演算の結果を演算手順変更部100へ通知する。
この復元処理により得られる演算結果は、秘密分散処理を実施する前の重みと入力値とを用いた演算結果と同一となる。
そして、演算手順変更部100は、復元した乗算結果を演算実行部101に通知する。
このように、演算手順変更部100は、活性化関数を用いた演算の演算結果の同一性を維持しつつ、演算手順を変更する。そして、演算実行部101は、変更後の演算手順にて演算を行う。具体的には、演算実行部101は、ユニットへの入力値に対して演算を行うのではなく、演算手順変更部100による秘密分散処理後の値に対して演算を行う。また、演算実行部101は、ユニットへの入力値に対する演算結果に対して活性化関数の演算を実行するのではなく、復元処理後の値に対する演算結果を演算手順変更部100に出力し、演算手順変更部100による復元処理後の値に対してバイアスの加算及び活性化関数の演算を実行する。
図13は、本実施の形態に係る演算手順の変更例を示す。
図13では、秘密分散処理及び復元処理は、複数の入力値の各々と複数の重みの各々との演算の各々で実施されることを示す。
より具体的には、入力値x0と重みw0との乗算に係る秘密分散処理と復元処理の例を示す。
演算手順変更部100は、乱数発生器15が発生した乱数を用いて識別子を生成する。また、演算手順変更部100は、生成した識別子を用いて、入力値及び重みをシェアに分散する。
そして、演算手順変更部100は、入力値x0を5つの識別子に各々対応した5つのシェアx0−0、x0−1、x0−2、x0−3、x0−4に分散することを示す。
また、演算手順変更部100は、重みw0を5つの識別子に各々対応した5つのシェアw0−0、w0−1、w0−2、w0−3、w0−4に分散することを示す。
上述の通り、5つの識別子は乱数発生器15が発生した乱数を用いるため、演算実行タイミングの度に、識別子及び識別子に対応した不規則な値となる。具体例としては、5つの識別子は、1、10、5、9、3であってもよい。その場合、入力値x0の5つの識別子に対応した5つのシェアは、x0−1、x0−10、x0−5、x0−9、x0−3となる。また、重みw0の5つの識別子に対応した5つのシェアは、w0−1、w0−10、w0−5、w0−9、w0−3となる。
そして、乗算されて得られた各々の乗算値は、復元処理に用いられる。
あるいは、これらの実施の形態のうち、1つを部分的に実施しても構わない。
あるいは、これらの実施の形態のうち、2つ以上を部分的に組み合わせて実施しても構わない。
なお、本発明は、これらの実施の形態に限定されるものではなく、必要に応じて種々の変更が可能である。
Claims (12)
- 機械学習により値が調整される学習パラメータを用いる演算を実行する演算実行タイミングが到来する度に、不規則に、演算手順を、変更前の演算手順にて演算を実行して得られる演算結果と同一の演算結果が得られる前記変更前の演算手順とは異なる演算手順に変更する演算手順変更部と、
前記演算実行タイミングが到来する度に、前記演算手順変更部による変更後の演算手順にて前記学習パラメータを用いた演算を実行する演算実行部とを有し、
前記演算手順変更部は、
前記学習パラメータの値及び前記学習パラメータと演算される値である被演算値が用いられる演算手順を、前記学習パラメータの値及び前記被演算値が秘匿されるように変更し、前記演算手順における演算順序をシャッフルアルゴリズムを用いて変更する情報処理装置。 - 機械学習により値が調整される学習パラメータを用いる演算を実行する演算実行タイミングが到来する度に、不規則に、演算手順を、変更前の演算手順にて演算を実行して得られる演算結果と同一の演算結果が得られる前記変更前の演算手順とは異なる演算手順に変更する演算手順変更部と、
前記演算実行タイミングが到来する度に、前記演算手順変更部による変更後の演算手順にて前記学習パラメータを用いた演算を実行する演算実行部とを有し、
前記演算手順変更部は、
前記学習パラメータの値及び前記学習パラメータと演算される値である被演算値をシャミアの秘密分散法に基づき変更する情報処理装置。 - 前記演算手順変更部は、
前記学習パラメータの値及び前記被演算値以外の他の値の追加により前記演算手順を変更する請求項1に記載の情報処理装置。 - 前記演算手順変更部は、
前記他の値を用いた加算の追加により前記演算手順を変更する請求項3に記載の情報処理装置。 - 前記演算手順変更部は、
前記他の値を用いた乗算の追加により前記演算手順を変更する請求項3に記載の情報処理装置。 - 前記演算手順変更部は、
前記学習パラメータの値及び前記被演算値をシャミアの秘密分散法に基づき変更する請求項1に記載の情報処理装置。 - 前記演算手順変更部は、
前記シャッフルアルゴリズムとして、フィッシャー−イェーツのシャッフル又はサットロのアルゴリズムを用いる請求項1に記載の情報処理装置。 - 前記演算手順変更部は、
乱数を用いて、前記演算手順を変更する請求項1又は7に記載の情報処理装置。 - コンピュータが、機械学習により値が調整される学習パラメータを用いる演算を実行する演算実行タイミングが到来する度に、不規則に、演算手順を、変更前の演算手順にて演算を実行して得られる演算結果と同一の演算結果が得られる前記変更前の演算手順とは異なる演算手順に変更し、
前記演算実行タイミングが到来する度に、前記コンピュータが、変更された変更後の演算手順にて前記学習パラメータを用いた演算を実行し、
前記コンピュータが前記変更前の演算手順とは異なる演算手順に変更する際、前記コンピュータが、前記学習パラメータの値及び前記学習パラメータと演算される値である被演算値が用いられる演算手順を、前記学習パラメータの値及び前記被演算値が秘匿されるように変更し、前記演算手順における演算順序をシャッフルアルゴリズムを用いて変更する情報処理方法。 - 機械学習により値が調整される学習パラメータを用いる演算を実行する演算実行タイミングが到来する度に、不規則に、演算手順を、変更前の演算手順にて演算を実行して得られる演算結果と同一の演算結果が得られる前記変更前の演算手順とは異なる演算手順に変更する演算手順変更処理と、
前記演算実行タイミングが到来する度に、前記演算手順変更処理による変更後の演算手順にて前記学習パラメータを用いた演算を実行する演算実行処理とをコンピュータに実行させる情報処理プログラムであって、
前記演算手順変更処理が、
前記学習パラメータの値及び前記学習パラメータと演算される値である被演算値が用いられる演算手順を、前記学習パラメータの値及び前記被演算値が秘匿されるように変更し、前記演算手順における演算順序をシャッフルアルゴリズムを用いて変更する情報処理プログラム。 - コンピュータが、機械学習により値が調整される学習パラメータを用いる演算を実行する演算実行タイミングが到来する度に、不規則に、演算手順を、変更前の演算手順にて演算を実行して得られる演算結果と同一の演算結果が得られる前記変更前の演算手順とは異なる演算手順に変更し、
前記演算実行タイミングが到来する度に、前記コンピュータが、変更された変更後の演算手順にて前記学習パラメータを用いた演算を実行し、
前記コンピュータが前記変更前の演算手順とは異なる演算手順に変更する際、前記コンピュータが、前記学習パラメータの値及び前記学習パラメータと演算される値である被演算値をシャミアの秘密分散法に基づき変更する情報処理方法。 - 機械学習により値が調整される学習パラメータを用いる演算を実行する演算実行タイミングが到来する度に、不規則に、演算手順を、変更前の演算手順にて演算を実行して得られる演算結果と同一の演算結果が得られる前記変更前の演算手順とは異なる演算手順に変更する演算手順変更処理と、
前記演算実行タイミングが到来する度に、前記演算手順変更処理による変更後の演算手順にて前記学習パラメータを用いた演算を実行する演算実行処理とをコンピュータに実行させる情報処理プログラムであって、
前記演算手順変更処理が、
前記学習パラメータの値及び前記学習パラメータと演算される値である被演算値をシャミアの秘密分散法に基づき変更する情報処理プログラム。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2020/000196 WO2021140574A1 (ja) | 2020-01-07 | 2020-01-07 | 情報処理装置、情報処理方法及び情報処理プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP6808100B1 true JP6808100B1 (ja) | 2021-01-06 |
JPWO2021140574A1 JPWO2021140574A1 (ja) | 2021-07-15 |
Family
ID=73993006
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020530398A Active JP6808100B1 (ja) | 2020-01-07 | 2020-01-07 | 情報処理装置、情報処理方法及び情報処理プログラム |
Country Status (5)
Country | Link |
---|---|
US (1) | US20220269826A1 (ja) |
JP (1) | JP6808100B1 (ja) |
CN (1) | CN114868127A (ja) |
DE (1) | DE112020005424T5 (ja) |
WO (1) | WO2021140574A1 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024034124A1 (ja) * | 2022-08-12 | 2024-02-15 | 日本電気株式会社 | 端末装置、計算システム、計算方法、およびコンピュータ可読媒体 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003134103A (ja) * | 2001-10-30 | 2003-05-09 | Hitachi Ltd | 情報処理装置 |
US20140130173A1 (en) * | 2012-11-05 | 2014-05-08 | Sap Ag | Expression rewriting for secure computation optimization |
JP2019168911A (ja) * | 2018-03-23 | 2019-10-03 | Kddi株式会社 | 情報処理装置、情報処理方法、及びプログラム |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5188189B2 (ja) * | 2008-01-18 | 2013-04-24 | 富士通株式会社 | 認証システム、認証装置及びコンピュータプログラム |
JP5957120B1 (ja) * | 2015-05-12 | 2016-07-27 | 日本電信電話株式会社 | 秘密分散方法、秘密分散システム、分散装置、およびプログラム |
US11876786B2 (en) * | 2016-12-08 | 2024-01-16 | Comcast Cable Communications, Llc | Protocol obfuscation in moving target defense |
US11196541B2 (en) * | 2017-01-20 | 2021-12-07 | Enveil, Inc. | Secure machine learning analytics using homomorphic encryption |
US11715287B2 (en) * | 2017-11-18 | 2023-08-01 | Neuralmagic Inc. | Systems and methods for exchange of data in distributed training of machine learning algorithms |
US11030997B2 (en) * | 2017-11-22 | 2021-06-08 | Baidu Usa Llc | Slim embedding layers for recurrent neural language models |
JP7052325B2 (ja) | 2017-12-04 | 2022-04-12 | 大日本印刷株式会社 | デバイス、セキュアエレメント、プログラム、情報処理システム及び情報処理方法 |
US20210089927A9 (en) * | 2018-06-12 | 2021-03-25 | Ciena Corporation | Unsupervised outlier detection in time-series data |
US20210110384A1 (en) * | 2019-07-04 | 2021-04-15 | Vikatron, Inc. | Ad Hoc Neural Network for Proof of Wallet |
CN110647918B (zh) * | 2019-08-26 | 2020-12-25 | 浙江工业大学 | 面向深度学习模型对抗攻击的拟态防御方法 |
US11431488B1 (en) * | 2020-06-08 | 2022-08-30 | Pure Storage, Inc. | Protecting local key generation using a remote key management service |
-
2020
- 2020-01-07 WO PCT/JP2020/000196 patent/WO2021140574A1/ja active Application Filing
- 2020-01-07 JP JP2020530398A patent/JP6808100B1/ja active Active
- 2020-01-07 DE DE112020005424.1T patent/DE112020005424T5/de not_active Ceased
- 2020-01-07 CN CN202080089730.7A patent/CN114868127A/zh active Pending
-
2022
- 2022-05-11 US US17/742,101 patent/US20220269826A1/en active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003134103A (ja) * | 2001-10-30 | 2003-05-09 | Hitachi Ltd | 情報処理装置 |
US20140130173A1 (en) * | 2012-11-05 | 2014-05-08 | Sap Ag | Expression rewriting for secure computation optimization |
JP2019168911A (ja) * | 2018-03-23 | 2019-10-03 | Kddi株式会社 | 情報処理装置、情報処理方法、及びプログラム |
Non-Patent Citations (2)
Title |
---|
中井 綱人 ほか: "深層学習に対するタイミング攻撃:処理時間差を用いたAdversarial Examplesの生成", 2019年 暗号と情報セキュリティシンポジウム(SCIS2019)予稿集 [USB], JPN6020010427, 15 January 2019 (2019-01-15), JP, pages 1 - 3, ISSN: 0004329380 * |
田中 哲士 ほか: "秘密分散ベース秘密計算を用いたニューラルネットワークのコスト評価", 情報処理学会研究報告[オンライン], vol. Vol.2016-CSEC-73, No.21, JPN6020030887, 27 May 2016 (2016-05-27), JP, pages 1 - 8, ISSN: 0004329381 * |
Also Published As
Publication number | Publication date |
---|---|
US20220269826A1 (en) | 2022-08-25 |
CN114868127A (zh) | 2022-08-05 |
JPWO2021140574A1 (ja) | 2021-07-15 |
DE112020005424T5 (de) | 2022-09-01 |
WO2021140574A1 (ja) | 2021-07-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Khan et al. | A digital DNA sequencing engine for ransomware detection using machine learning | |
Clements et al. | Hardware trojan attacks on neural networks | |
Jorstad et al. | Cryptographic algorithm metrics | |
Huffmire et al. | Handbook of FPGA design security | |
Ahmed et al. | Mitigating adversarial evasion attacks of ransomware using ensemble learning | |
Adamu et al. | Ransomware prediction using supervised learning algorithms | |
Isakov et al. | Survey of attacks and defenses on edge-deployed neural networks | |
US20110302397A1 (en) | Method and Apparatus for Improved Secure Computing and Communications | |
Huffmire et al. | Managing security in FPGA-based embedded systems | |
CN107277065B (zh) | 基于强化学习的检测高级持续威胁的资源调度方法 | |
Hu et al. | Gate-level information flow tracking for security lattices | |
Tajik et al. | Artificial neural networks and fault injection attacks | |
Kaur et al. | A secure data classification model in cloud computing using machine learning approach | |
Alrahis et al. | Embracing graph neural networks for hardware security | |
JP6808100B1 (ja) | 情報処理装置、情報処理方法及び情報処理プログラム | |
Tauhid et al. | A survey on security analysis of machine learning-oriented hardware and software intellectual property | |
WO2024149202A1 (zh) | 模型部署的方法、装置及电子设备 | |
Yellu et al. | Security threat analyses and attack models for approximate computing systems: From hardware and micro-architecture perspectives | |
Do et al. | A novel non-profiled side channel attack based on multi-output regression neural network | |
Attuluri et al. | Multi-objective discrete harmony search algorithm for privacy preservation in cloud data centers | |
Galli et al. | Explainability in AI-based behavioral malware detection systems | |
Anshul et al. | PSO based exploration of multi-phase encryption based secured image processing filter hardware IP core datapath during high level synthesis | |
Farhana et al. | Evaluation of Boruta algorithm in DDoS detection | |
Müller et al. | Process mining in trusted execution environments: Towards hardware guarantees for trust-aware inter-organizational process analysis | |
Breier et al. | A desynchronization-based countermeasure against side-channel analysis of neural networks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20200602 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20200602 |
|
A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20200602 |
|
A975 | Report on accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A971005 Effective date: 20200713 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20200825 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20200914 |
|
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: 20201110 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20201208 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6808100 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |