JP2005044185A - データ処理方法、データ検査方法 - Google Patents
データ処理方法、データ検査方法 Download PDFInfo
- Publication number
- JP2005044185A JP2005044185A JP2003278461A JP2003278461A JP2005044185A JP 2005044185 A JP2005044185 A JP 2005044185A JP 2003278461 A JP2003278461 A JP 2003278461A JP 2003278461 A JP2003278461 A JP 2003278461A JP 2005044185 A JP2005044185 A JP 2005044185A
- Authority
- JP
- Japan
- Prior art keywords
- data
- value
- crc
- sig
- memory
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/18—Error detection or correction; Testing, e.g. of drop-outs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1004—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Bioethics (AREA)
- Health & Medical Sciences (AREA)
- Quality & Reliability (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Signal Processing (AREA)
- Error Detection And Correction (AREA)
- Storage Device Security (AREA)
- Detection And Correction Of Errors (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
Abstract
【解決手段】 所定量のデータD(1),D(2)・・D(n)に対して、CRC処理を行ってCRC値(1),CRC値(2)・・CRC値(n)値を算出し、そのCRC値(1),CRC値(2)・・CRC値(n)に対して、順次発生される乱数値R(1),R(2)・・R(n)に応じた回数、CRC処理を行って、次のデータに付加するsig値(1),sig値(2)・・sig値(n)を生成するようにした。
【選択図】 図5
Description
上記したようなデータ処理装置では、例えば重要度の高いデータを伝送したり、或いは記憶するため、データの秘密保持性を高めるための技術が提案されている。
例えば、下記特許文献1には、所定の情報に複数の改ざん防止対策を施して秘密保持性を高めるようにした技術が開示されている。
図1は、本実施の形態としてのデータ処理方法、及びデータ検査方法を備えたデータ処理装置の構成を示した図である。
この図1に示すデータ処理装置1は、データの伝送や記録、再生を行うことができる電子機器などに搭載される。
データ処理装置1は、少なくともCPUなどにより構成されたマイクロコンピュータ(以下、「マイコン」という)2と、メモリ3が設けられており、マイコン2は、各種データをメモリ3に書き込んだり、或いはメモリ3に記憶されているデータの読み出しを行うことが可能とされる。
また、データ処理装置1,10は、通信回線5を介して接続することも可能である。通信回線5としては、有線又は無線の公衆回線網や専用回線が考えられ、例えばインターネット、衛星通信網、光ファイバー網、その他各種の通信回線を適用することが考えられる。
CRC方式に用いられる生成多項式は各種提案されており、例えばCRC−CCITT(国際電信電話諮問機関)の勧告による生成多項式(X16+X12+X5+1)などがよく知られている。また、CRC方式の誤り検出機能回路は、比較的簡単な回路で実現できるため、マイコン2のCPUにも容易に実装可能とされる。
この図2に示すデータ切出部11は、マイコン2に入力される実際のデータを所定バイト(byte)のデータ単位で切り出して順次データバッファ12に出力するようにされる。
データバッファ12は、データ切出部11から入力される切出データDを一時的に保持すると共に、保持した切出データDを1バイトずつCRC演算部13に出力するようにされる。
また、このようなCRC演算部13において、所定バイトの切出データDに対応したCRC値を生成するには、データバッファ12から切出データDを1バイトずつ連続的に入力していくことで、所定バイトの切出データDを全て入力し終えた時点で、切出データDに対応するCRC値が生成されることになる。
この場合、乱数値R(1),R(2)・・R(n)は、CRC演算部13において行われるsig値(1),sig値(2)・・sig値(n)の生成処理ごとに変化した値になる。
乱数値発生部15は、基データが同じであれば、常に同じ乱数パターンで乱数値R(1),R(2)・・R(n)を発生するものとされる。
ただし、データ処理装置1,10間でデータ伝送を行う場合には、データ処理装置1,10が同一の乱数パターンで乱数値R(1),R(2)・・R(n)を発生するように、乱数値発生部15の乱数テーブルや計算式及び基データ等は同じにしておく必要がある。
そして、このCRC演算部13で生成したCRC値(1),CRC値(2)・・CRC値(n)から、CRC値(1),CRC値(2)・・CRC値(n)を検査(チェック)するためのsig値(1),sig値(2)・・sig値(n)を生成するようにしている。
そして、入力データをメモリ3に書き込むときは、切出データD(1),D(2)・・D(n)と、そのCRC値(1),CRC値(2)・・CRC値(n)と共に、sig値(1),sig値(2)・・sig値(n)をメモリ3に書き込むようにしている。
図3は、図2に示したCRC演算部13においてCRC値からチェック値を生成するブロックの構成を示した図である。
この図3に示す演算ブロック21は、1バイトの入力データにCRC演算を行うブロックであり、本実施の形態では、この演算ブロック21で生成した切出データD(1),D(2)・・D(n)ごとのCRC値(1),CRC値(2)・・CRC値(n)に対して、乱数値発生部15からの乱数値R(1),R(2)・・R(n)に応じた回数だけ、CRC処理を行って、チェック値(sig値)S(1),sig値(2)・・sig値(n)を算出するようにしている。
判別ブロック22は、演算ブロック21から入力されるCRC値(1)に対して、演算ブロック21において乱数値R(1)に応じた回数だけCRC演算が行われたかどうかの判別を行う。
ここで、否定結果が得られた時、即ち、乱数値R(1)に応じた回数だけCRC演算が行われいないと判別した時は、演算ブロック21からの入力値を演算ブロック21にフィードバックするようにされる。
そして、判別ブロック22において肯定結果が得られた時、即ち、演算ブロック21においてCRC値(1)に対して乱数値R(1)に応じた回数だけCRC演算が行われたと判別した時に、演算ブロック21から入力される入力値をsig値(1)として出力するようにしている。
以降は、演算ブロック21から順々に入力されるCRC値(2)・・CRC値(n)に対して同様の処理を施してsig値(2)・・sig値(n)を求めるようにされる。
本実施の形態のデータ処理装置1では、実際に入力されるデータをメモリ3に書き込むときは、切出データD(1),D(2)・・D(n)と、これら切出データD(1),D(2)・・D(n)ごとのCRC値(1),CRC値(2)・・CRC値(n)と、これらCRC値(1),CRC値(2)・・CRC値(n)から求めたsig値(1),sig値(2)・・sig値(n)をメモリ3に書き込むようにしている。
このとき、メモリ3の1行目の先頭に位置するsig値を書き込むためのデータ領域を使用せずに、切出データのデータ領域から切出データD(1)、CRC値(1)の順で書き込みを行い、sig値(1)については、2行目のsig値を書き込むためのデータ領域に対して、次の切出データD(2)、CRC値(2)を書き込む時に、切出データD(2)、CRC値(2)と共にsig値(1)を書き込むようにしている。したがって、このときのメモリ3の2行目には、その先頭からsig値(1)、切出データD(2)、CRC値(2)の順で書き込みを行うようにしている。
従って、再度、データの更新を行う際には、更新が行われていないデータについてのみ、データの上書きを行うことが可能になる。
この場合、マイコン2は、先ず、ステップS101において、変数nに対して「1」を代入する。そして続くステップS102において、データバッファ12を介して入力される切出データD(1)をCRC演算部13に1バイトずつ入力してCRC演算を行い、切出データD(1)のCRC値(1)を求める。
このとき、マイコン2は、図4に示したようにメモリ3の1行目の先頭の2バイト分のデータ領域にデータを書き込むことなく、3バイト目のデータ領域からデータを書き込むように制御を行うようにする。
そして続くステップS108において、上記ステップS105において保持したsig値(1)と、切出データD(2)、及びCRC値(2)をメモリ3の第2行目のデータ領域の先頭位置から書き込むように制御を行う。
このようなステップS104からの処理は、ステップS109において、全てのデータの書き込みが終了したと判別するまで行う。
そしてステップS109において、全てのデータの書き込みが終了したと判別した場合には、ステップS110に進み、ステップS110において、最後に求めたsig値(n)の値をメモリ3のn+1行目の先頭から書き込んで処理を終えることになる。これにより、メモリ3には、図4に示すようなデータ構造でデータの書き込みを行うことができる。
この場合、マイコン2は、ステップS201において、変数nに対して「1」を代入した後、続くステップS202において、乱数値発生部15から乱数値R(1)を取得する。
そして、ステップS203において、メモリ3から読出対象とされるデータのCRC値(1)、sig値(1)を読み出しを行い、続くステップS204において、CRC値(1)に対して乱数値R(1)に応じた回数だけCRC演算を行って、演算値X(1)を求める。
続くステップS205において、演算値X(1)と、メモリ3から読み出したsig値(1)とが一致するかどうかの判別を行い、演算値X(1)とsig値(1)が一致したときはメモリ3に記憶されているデータD(1)は正当であると判断してステップS206に進む。
Claims (5)
- 少なくとも、所定量のデータに対して、CRC処理を行ってCRC値を算出し、
上記CRC値に対して、Y回、CRC処理を行って、次のデータに付加するチェック値を生成するようにしたことを特徴とするデータ処理方法。 - 上記Y回は、順次発生される乱数値により決定され、上記チェック値の生成処理ごとに変化されることを特徴とする請求項1に記載のデータ処理方法。
- 上記所定量のデータが記憶されるデータ領域には、上記データと、上記データのCRC値、及び一つ前のデータ領域に記憶されたデータのCRC値から生成されたチェック値が記憶されることを特徴とする請求項1に記載のデータ処理方法。
- 所定量のデータごとにCRC値とチェック値が付加されているデータのデータ検査方法として、
データに付加されているCRC値に対して、Y回、CRC処理を行って求めた演算値と、次の所定量のデータに付加されているチェック値とを比較することで、データの検査を行うようにしたことを特徴とするデータ検査方法。 - 上記Y回は、順次発生される乱数値により決定され、上記チェック値の生成処理ごとに変化されることを特徴とする請求項4に記載のデータ検査方法。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003278461A JP4196770B2 (ja) | 2003-07-23 | 2003-07-23 | データ処理方法、データ検査方法 |
US10/888,979 US7373525B2 (en) | 2003-07-23 | 2004-07-13 | Data processing method and data checking method |
EP04017383A EP1501014A1 (en) | 2003-07-23 | 2004-07-22 | Data processing method and data checking method |
KR1020040057056A KR20050011718A (ko) | 2003-07-23 | 2004-07-22 | 데이터 처리 방법 및 데이터 검사 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003278461A JP4196770B2 (ja) | 2003-07-23 | 2003-07-23 | データ処理方法、データ検査方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2005044185A true JP2005044185A (ja) | 2005-02-17 |
JP4196770B2 JP4196770B2 (ja) | 2008-12-17 |
Family
ID=33487699
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003278461A Expired - Fee Related JP4196770B2 (ja) | 2003-07-23 | 2003-07-23 | データ処理方法、データ検査方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US7373525B2 (ja) |
EP (1) | EP1501014A1 (ja) |
JP (1) | JP4196770B2 (ja) |
KR (1) | KR20050011718A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007243327A (ja) * | 2006-03-06 | 2007-09-20 | Fuji Xerox Co Ltd | 情報処理装置 |
JP2008541257A (ja) * | 2005-05-09 | 2008-11-20 | ストミクロエレクトロニクス・ソシエテ・アノニム | エラー注入によるアタックに対してメモリを保護する装置 |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102007007309A1 (de) * | 2007-02-07 | 2008-08-14 | Atmel Germany Gmbh | Verfahren zum wenigstens temporären Freischalten einer bidirektionalen Kommunikation und Transponder |
DE102007043083A1 (de) * | 2007-09-10 | 2009-03-12 | Continental Automotive Gmbh | Verfahren und Vorrichtung zum Codieren von Datenworten |
US7941398B2 (en) * | 2007-09-26 | 2011-05-10 | Pentaho Corporation | Autopropagation of business intelligence metadata |
DE102008008317A1 (de) * | 2008-02-07 | 2009-08-13 | Man Turbo Ag | Verfahren zum Schutz von gespeicherten Betriebsdaten einer Maschinenanlage oder ähnlichen Anlage |
US9154161B1 (en) | 2014-04-01 | 2015-10-06 | Cisco Technology, Inc. | Calculating cyclic redundancy checks over overlapping windows of streaming data |
CN105912418A (zh) * | 2016-04-25 | 2016-08-31 | 湖南省湘电试验研究院有限公司 | 一种基于crc校验方式的配电安全芯片掉电保护方法 |
CN108573172B (zh) * | 2017-03-08 | 2021-03-12 | 杭州海康威视数字技术股份有限公司 | 一种数据校验、存储方法及装置 |
US10248577B2 (en) | 2017-04-07 | 2019-04-02 | International Business Machines Corporation | Using a characteristic of a process input/output (I/O) activity and data subject to the I/O activity to determine whether the process is a suspicious process |
US10282543B2 (en) | 2017-05-03 | 2019-05-07 | International Business Machines Corporation | Determining whether to destage write data in cache to storage based on whether the write data has malicious data |
US10445497B2 (en) * | 2017-05-03 | 2019-10-15 | International Business Machines Corporation | Offloading processing of writes to determine malicious data from a first storage system to a second storage system |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5022080A (en) | 1990-04-16 | 1991-06-04 | Durst Robert T | Electronic notary |
US5363448A (en) * | 1993-06-30 | 1994-11-08 | United Technologies Automotive, Inc. | Pseudorandom number generation and cryptographic authentication |
US5465260A (en) * | 1993-11-04 | 1995-11-07 | Cirrus Logic, Inc. | Dual purpose cyclic redundancy check |
US5398284A (en) * | 1993-11-05 | 1995-03-14 | United Technologies Automotive, Inc. | Cryptographic encoding process |
US5619575A (en) * | 1994-08-22 | 1997-04-08 | United Technologies Automotive, Inc. | Pseudorandom composition-based cryptographic authentication process |
US5689566A (en) * | 1995-10-24 | 1997-11-18 | Nguyen; Minhtam C. | Network with secure communications sessions |
US5828751A (en) * | 1996-04-08 | 1998-10-27 | Walker Asset Management Limited Partnership | Method and apparatus for secure measurement certification |
US6292918B1 (en) * | 1998-11-05 | 2001-09-18 | Qualcomm Incorporated | Efficient iterative decoding |
US6530057B1 (en) * | 1999-05-27 | 2003-03-04 | 3Com Corporation | High speed generation and checking of cyclic redundancy check values |
US6701478B1 (en) * | 2000-12-22 | 2004-03-02 | Nortel Networks Limited | System and method to generate a CRC (cyclic redundancy check) value using a plurality of CRC generators operating in parallel |
US7055085B2 (en) * | 2002-03-07 | 2006-05-30 | Broadcom Corporation | System and method for protecting header information using dedicated CRC |
US7646300B2 (en) * | 2004-10-27 | 2010-01-12 | Intelleflex Corporation | Master tags |
-
2003
- 2003-07-23 JP JP2003278461A patent/JP4196770B2/ja not_active Expired - Fee Related
-
2004
- 2004-07-13 US US10/888,979 patent/US7373525B2/en not_active Expired - Fee Related
- 2004-07-22 EP EP04017383A patent/EP1501014A1/en not_active Withdrawn
- 2004-07-22 KR KR1020040057056A patent/KR20050011718A/ko not_active Application Discontinuation
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008541257A (ja) * | 2005-05-09 | 2008-11-20 | ストミクロエレクトロニクス・ソシエテ・アノニム | エラー注入によるアタックに対してメモリを保護する装置 |
JP4920680B2 (ja) * | 2005-05-09 | 2012-04-18 | ストミクロエレクトロニクス・ソシエテ・アノニム | エラー注入によるアタックに対してメモリを保護する装置 |
JP2007243327A (ja) * | 2006-03-06 | 2007-09-20 | Fuji Xerox Co Ltd | 情報処理装置 |
Also Published As
Publication number | Publication date |
---|---|
US20050022093A1 (en) | 2005-01-27 |
JP4196770B2 (ja) | 2008-12-17 |
KR20050011718A (ko) | 2005-01-29 |
US7373525B2 (en) | 2008-05-13 |
EP1501014A1 (en) | 2005-01-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4196770B2 (ja) | データ処理方法、データ検査方法 | |
US8699714B2 (en) | Distributed PUF | |
JP2721099B2 (ja) | エラーバースト修正のための試行錯誤方法及びマルチバイトエラーの修正方法 | |
US20030126400A1 (en) | Data integrity check method using cumulative hash function | |
ATE306099T1 (de) | Verfahren zur feststellung böswilligen rechnerkodes | |
CN104598342B (zh) | 内存的检测方法和装置 | |
KR20040098025A (ko) | 디지털 서명에 의한 디지털 오브젝트의 워터마킹 | |
US7721113B2 (en) | Data alteration detecting method, data alteration detecting device and data alteration detecting program | |
CN113065169B (zh) | 一种文件存证方法、装置及设备 | |
CN102405496A (zh) | 传感器模块和传感器模块的制造方法 | |
CN1117362C (zh) | 制作无明显印迹的水印的方法和装置 | |
CN102971984B (zh) | 认证存储设备的方法和主机设备 | |
JP2006254429A (ja) | 伝送データの無欠性検査方法及び手段 | |
US20050289409A1 (en) | Parallel data bus | |
JP2908272B2 (ja) | 情報処理装置 | |
JPH11328848A (ja) | データ伝送方式 | |
JP3554715B2 (ja) | 誤り検出装置 | |
CN111415288B (zh) | 数字水印嵌入、检测方法和装置 | |
JP2006004377A (ja) | データ処理装置およびデータ処理方法 | |
JP2007096413A (ja) | パケット記録支援装置、パケット記録支援方法、及びパケット記録支援プログラム | |
CN115883244A (zh) | 应用系统中guid脆弱性检测方法及装置 | |
JP4459040B2 (ja) | 情報処理システム、情報処理装置及びデータグラム分割送信方法 | |
JP2000183868A (ja) | 認証装置及び認証方法 | |
KR100229325B1 (ko) | 콘벌루션 인터리버 | |
CN117113437A (zh) | 一种文件篡改检测方法、装置、计算机设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20070608 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070619 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070816 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20080212 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20080313 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080410 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20080421 |
|
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: 20080909 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20080922 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111010 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111010 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |