JP6222285B1 - データ処理装置、データ処理方法及びプログラム - Google Patents
データ処理装置、データ処理方法及びプログラム Download PDFInfo
- Publication number
- JP6222285B1 JP6222285B1 JP2016110105A JP2016110105A JP6222285B1 JP 6222285 B1 JP6222285 B1 JP 6222285B1 JP 2016110105 A JP2016110105 A JP 2016110105A JP 2016110105 A JP2016110105 A JP 2016110105A JP 6222285 B1 JP6222285 B1 JP 6222285B1
- Authority
- JP
- Japan
- Prior art keywords
- data
- rearrangement
- destination
- embedded system
- input
- 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
Images
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
- 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
- H04L9/0618—Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
- H04L9/0631—Substitution permutation network [SPN], i.e. cipher composed of a number of stages or rounds each involving linear and nonlinear transformations, e.g. AES algorithms
-
- 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/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09C—CIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
- G09C1/00—Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/16—Obfuscation or hiding, e.g. involving white box
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Description
2.データ処理装置による全体処理例
3.暗号化等への適用例
4.データ処理装置の機能構成例
データ処理装置は、例えば、組み込みシステム(Embedded system)である。組み込みシステムは、産業機器又は家電製品等に内蔵され、特定の機能を実現するためのシステムである。なお、データ処理装置は、PC(Personal Computer)等の情報処理装置でもよい。以下、本発明の実施形態を図面に基づいて、データ処理装置が組み込みシステムである例で説明する。
図1は、本発明の一実施形態に係る組み込みシステムのハードウェア構成の一例を説明するブロック図である。図示するように、組み込みシステム1は、演算装置HW1と、記憶装置HW2と、I/F(interface)HW3とを有する。
図2は、本発明の一実施形態に係る組み込みシステムによる全体処理の一例を説明するフローチャートである。例えば、組み込みシステムは、以下のような処理を行い、データ処理方法を実現する。
ステップS101では、組み込みシステムは、並べ替えの対象となるデータ(以下「対象データ」という。)を入力する。例えば、対象データは、以下のように、複数のデータから構成されるデータである。
図2に戻り、ステップS102では、組み込みシステムは、並替番号nを入力する。例えば、並べ替えパターンをユーザが決定し、ユーザの操作等によって、並替番号nが組み込みシステムに入力される。
ステップS103では、組み込みシステムは、並替番号nに基づいて並べ替え先を計算する。例えば、「N=4」の場合には、組み込みシステムは、下記(2)式乃至下記(4)式に基づいて、並替番号nから0番目の並べ替え先「n0」乃至2番目の並べ替え先「n2」をそれぞれ計算する。
図2に戻り、ステップS104では、組み込みシステムは、対象データを並べ替える。すなわち、ステップS103を繰り返し計算すると求まる「n0」乃至「n2」に基づいて、組み込みシステムは、対象データを並べ替える。
また、組み込みシステムは、並べ替えパターンから並替番号nを例えば以下のような処理によって算出することができる。以下、図3に示す対象データDTを例に説明する。すなわち、対象データDTのように昇順に並ぶ複数のデータを所定の並べ替えパターンに変換する場合の並替番号nを算出する例を以下に説明する。
例えば、図3に示すデータが入力されるとする。なお、以下の説明では、各データが入力される順番を「0」からカウントして「c」で示す。例えば、以下のようにして、並替番号nに基づいてデータが選択される。
ステップS201では、組み込みシステムは、並替番号nを入力する。例えば、図2に示すステップS102と同様の方法等で、組み込みシステムは、並替番号nを入力する。
ステップS202では、組み込みシステムは、各並べ替え先「nc」を計算する。具体的には、ステップS201で入力される並替番号nに基づいて、組み込みシステムは、各並べ替え先「nc」をそれぞれ計算する。すなわち、各並べ替え先「nc」は、「n0」乃至「nデータ数−1」がそれぞれ計算される。例えば、上記(8)式に基づいて、組み込みシステムは、並替番号nから各並べ替え先「nc」をそれぞれ計算する。以下、並替番号nに基づいて、「n0=2」、「n1=1」、「n2=3」及び「n3=2」である例で説明する。
<<各データの入力例(ステップS203)>>
ステップS203では、組み込みシステムは、各データを入力する。この例では、最初(c=0である。)、組み込みシステムは、第0番目のデータを入力する。なお、この例では、第0番目のデータは、入力値が「0」であるとする。
ステップS204では、組み込みシステムは、入力値を代入及び候補値を計算する。まず、ステップS204では、組み込みシステムは、入力値を第1変数「data」に代入する。第0番目のデータである場合(c=0である。)には、入力値が「0」であるため、「data=0」となる。
ステップS205では、組み込みシステムは、第2変数「temp」を探索する。具体的には、ステップS205では、組み込みシステムは、「temp+ntemp=can」、かつ、「temp<data」となる第2変数「temp」が存在するか否かを探索する。もし、上記条件を満たす第2変数「temp」が存在する場合には、該当する値を第3変数「ser」とする。なお、該当する値が複数存在する場合には、最大値が第3変数「ser」となる。
ステップS206では、組み込みシステムは、第3変数が存在するか否かを判断する。すなわち、ステップS205において、上記条件を満たす第2変数「temp」が存在し、第3変数「ser」が存在する場合(ステップS206でYES)には、組み込みシステムは、ステップS207に進む。一方で、ステップS205において、上記条件を満たす第2変数「temp」が存在せず、第3変数「ser」が存在しない場合(ステップS206でNO)には、組み込みシステムは、ステップS203(ループによる繰り返しの場合)又はステップS208(ループが終了の場合)に進む。
第1番目のデータ(c=1)である場合には、組み込みシステムは、ステップS203乃至ステップS207によって以下のような処理を行う。この例では、第1番目のデータは、入力値が「1」であるとする。
第2番目のデータ(c=2)である場合には、組み込みシステムは、ステップS203乃至ステップS207によって以下のような処理を行う。この例では、第2番目のデータは、入力値が「2」であるとする。
第3番目のデータ(c=3)である場合には、組み込みシステムは、ステップS203乃至ステップS207によって以下のような処理を行う。この例では、第2番目のデータは、入力値が「3」であるとする。
ステップS208では、組み込みシステムは、候補値「can」に基づいてデータを選択する。処理結果は、例えば、以下のようになる。
図2等に示す処理は、例えば、AES(Advanced Encryption Standard)方式の暗号化等に適用可能である。具体的には、図2等に示す処理は、例えば、以下のようなAESにおけるホワイトボックスクリプトグラフィ(White−Box Cryptography)の処理等に適用できる。
ステップS401では、組み込みシステムは、サブラウンドデータを選択する。すなわち、組み込みシステムは、入力データD_INのうち、1サブラウンド当たりの処理対象となる1サブラウンドデータを選択する。また、FIPS197で定められている「ShiftRows」関数を実行した処理結果と、ステップS401を行った処理結果とは、同様の結果となる。
ステップS402では、組み込みシステムは、テーブルに基づいて置換を行う。すなわち、図示するように、組み込みシステムは、入力される「0」の1バイトのデータをテーブルに基づいて置換する。そして、テーブルに基づいて置換が行われると、置換データが生成される。また、テーブルに基づく置換には、第1変換「g」と、第2逆変換「f−1」とが含まれる。
ステップS403では、組み込みシステムは、テーブルに基づいてビットを並べ替える。図では、並べ替えは、「h」で示す。なお、「i」は、乱数の排他的論理和による加算等を示す。
ステップS404では、組み込みシステムは、排他的論理和を計算する。
図14は、本発明の一実施形態に係る組み込みシステムの機能構成の一例を示す機能ブロック図である。例えば、組み込みシステム1は、入力部FN1と、計算部FN2と、並べ替え部FN3とを含む構成である。
FN1 入力部
FN2 計算部
FN3 並べ替え部
n 並替番号
nc 並べ替え先
Claims (7)
- 前記並替番号に基づく並べ替えによって、前記データを暗号化又は復号する請求項1に記載のデータ処理装置。
- 前記データ処理装置は、組み込みシステムである請求項1に記載のデータ処理装置。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016110105A JP6222285B1 (ja) | 2016-06-01 | 2016-06-01 | データ処理装置、データ処理方法及びプログラム |
US15/494,688 US10411881B2 (en) | 2016-06-01 | 2017-04-24 | Data processing apparatus, method for processing data, and medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016110105A JP6222285B1 (ja) | 2016-06-01 | 2016-06-01 | データ処理装置、データ処理方法及びプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP6222285B1 true JP6222285B1 (ja) | 2017-11-01 |
JP2017215518A JP2017215518A (ja) | 2017-12-07 |
Family
ID=60205933
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016110105A Active JP6222285B1 (ja) | 2016-06-01 | 2016-06-01 | データ処理装置、データ処理方法及びプログラム |
Country Status (2)
Country | Link |
---|---|
US (1) | US10411881B2 (ja) |
JP (1) | JP6222285B1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2021071570A (ja) * | 2019-10-30 | 2021-05-06 | 富士電機株式会社 | 情報処理装置、情報処理方法及びプログラム |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6888377B2 (ja) | 2017-04-05 | 2021-06-16 | 富士電機株式会社 | 情報処理装置、情報処理システム及びプログラム |
CN111775698B (zh) * | 2019-04-04 | 2021-11-16 | 北京新能源汽车股份有限公司 | 一种车辆里程信息的处理方法、装置及汽车 |
CN111553372B (zh) * | 2020-04-24 | 2023-08-08 | 北京搜狗科技发展有限公司 | 一种训练图像识别网络、图像识别搜索的方法及相关装置 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4046857B2 (ja) | 1998-07-02 | 2008-02-13 | キヤノン株式会社 | 画像処理装置およびその方法、並びに、記録媒体 |
JP2003110869A (ja) | 2001-03-12 | 2003-04-11 | Sharp Corp | 画像処理装置、画像形成装置、画像処理方法、プログラム、および記録媒体 |
US7725678B2 (en) * | 2005-02-17 | 2010-05-25 | Texas Instruments Incorporated | Method and apparatus for producing an index vector for use in performing a vector permute operation |
JP2008048099A (ja) | 2006-08-14 | 2008-02-28 | Fuji Xerox Co Ltd | 画像処理方法、画像処理装置、およびルックアップテーブルの設定方法 |
KR101253176B1 (ko) * | 2006-11-02 | 2013-04-10 | 엘지전자 주식회사 | 디지털 방송 시스템 및 데이터 처리 방법 |
JP4909018B2 (ja) * | 2006-11-16 | 2012-04-04 | 富士通株式会社 | 共通鍵暗号のための暗号化装置 |
WO2013095563A1 (en) * | 2011-12-22 | 2013-06-27 | Intel Corporation | Packed data rearrangement control indexes precursors generation processors, methods, systems, and instructions |
WO2014003117A1 (ja) * | 2012-06-28 | 2014-01-03 | 日本電気株式会社 | 暗号化装置、暗号化方法およびプログラム |
JP2014016584A (ja) * | 2012-07-11 | 2014-01-30 | Canon Inc | データ分割装置、データ復元装置、データ分割方法、データ復元方法、及びプログラム |
JP2015165174A (ja) | 2014-03-03 | 2015-09-17 | シャープ株式会社 | ヒートポンプ装置 |
US10503502B2 (en) * | 2015-09-25 | 2019-12-10 | Intel Corporation | Data element rearrangement, processors, methods, systems, and instructions |
US20170185413A1 (en) * | 2015-12-23 | 2017-06-29 | Intel Corporation | Processing devices to perform a conjugate permute instruction |
-
2016
- 2016-06-01 JP JP2016110105A patent/JP6222285B1/ja active Active
-
2017
- 2017-04-24 US US15/494,688 patent/US10411881B2/en active Active
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2021071570A (ja) * | 2019-10-30 | 2021-05-06 | 富士電機株式会社 | 情報処理装置、情報処理方法及びプログラム |
JP7383985B2 (ja) | 2019-10-30 | 2023-11-21 | 富士電機株式会社 | 情報処理装置、情報処理方法及びプログラム |
Also Published As
Publication number | Publication date |
---|---|
JP2017215518A (ja) | 2017-12-07 |
US20170353300A1 (en) | 2017-12-07 |
US10411881B2 (en) | 2019-09-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6222285B1 (ja) | データ処理装置、データ処理方法及びプログラム | |
US8533456B2 (en) | Accelerating stream cipher operations using single and grid systems | |
US10148427B2 (en) | Information processing apparatus, method for processing information, and medium | |
JP5533083B2 (ja) | データ処理装置およびデータ処理方法 | |
JP6044738B2 (ja) | 情報処理装置、プログラム及び記憶媒体 | |
US10097343B2 (en) | Data processing apparatus and data processing method | |
JP3694999B2 (ja) | 画像符号化装置および画像復号装置ならびにそれらの方法 | |
JP6292195B2 (ja) | 情報処理装置及び情報処理方法 | |
JP5614122B2 (ja) | 画像データ復号装置 | |
JP4667800B2 (ja) | 符号化方法およびそのプログラム | |
KR20180067956A (ko) | 데이터 압축 장치 및 방법 | |
JP6490064B2 (ja) | 情報処理装置、プログラム、及び記録媒体 | |
JP2008067351A (ja) | 符号化装置、復号化装置、符号化方法及びプログラム | |
JP5884412B2 (ja) | 変換プログラム、変換装置、変換方法、および変換システム | |
JP5755970B2 (ja) | 演算装置 | |
JP4853026B2 (ja) | 情報処理装置及びプログラム | |
KR102225820B1 (ko) | 악성코드 분석용 머신러닝을 위한 하이브리드 피처 벡터 생성 장치 및 방법 | |
JP6589642B2 (ja) | データ処理装置およびプログラム | |
KR102282363B1 (ko) | 비트 시리얼 hight 연산 장치 및 그 방법, 그 방법을 프로세서가 수행하도록 하기 위한 명령어를 포함하는 컴퓨터 판독 가능한 기록매체 및 컴퓨터 프로그램 | |
JP6011465B2 (ja) | 暗号モジュール生成装置 | |
JP5713828B2 (ja) | 情報処理装置、情報処理方法、及びプログラム | |
JP5732765B2 (ja) | 画像データ復号装置 | |
JP4901564B2 (ja) | 分割テーブル作成装置及び分割テーブル作成プログラム | |
JP6711003B2 (ja) | データ処理装置およびプログラム | |
JP2019092030A (ja) | 演算装置、演算方法及び演算プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20170825 |
|
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: 20170905 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20170918 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6222285 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |