JP2013080379A - Security token, data update method, and computer program - Google Patents

Security token, data update method, and computer program Download PDF

Info

Publication number
JP2013080379A
JP2013080379A JP2011220054A JP2011220054A JP2013080379A JP 2013080379 A JP2013080379 A JP 2013080379A JP 2011220054 A JP2011220054 A JP 2011220054A JP 2011220054 A JP2011220054 A JP 2011220054A JP 2013080379 A JP2013080379 A JP 2013080379A
Authority
JP
Japan
Prior art keywords
data
updated
update
edc
error detection
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
Application number
JP2011220054A
Other languages
Japanese (ja)
Other versions
JP5822123B2 (en
Inventor
Yutaka Yamaishi
豊 山石
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.)
Dai Nippon Printing Co Ltd
Original Assignee
Dai Nippon Printing Co Ltd
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 Dai Nippon Printing Co Ltd filed Critical Dai Nippon Printing Co Ltd
Priority to JP2011220054A priority Critical patent/JP5822123B2/en
Publication of JP2013080379A publication Critical patent/JP2013080379A/en
Application granted granted Critical
Publication of JP5822123B2 publication Critical patent/JP5822123B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Storage Device Security (AREA)

Abstract

PROBLEM TO BE SOLVED: To provide a security token which can detect the illegal update of data other than target data even if the data other than the target data has illegally been updated during updating data of a data object stored in a memory of the security token.SOLUTION: A security token 1 is provided with data update means 10 that, when receiving an instruction to update data included in a data object 11 that is stored in EEPROM104, calculates, before updating the target data, an error detection code that is obtained before the data update from data other than the target data; and after the target data has been updated, verifies the error detection code before the data update, which is calculated from the data other than the target data, against an error detection code after the data update, which is calculated from the data other than the target data.

Description

ICカードに代表されるセキュリティトークンのメモリに記憶されているデータの整合性を検証するための技術に関する。   The present invention relates to a technique for verifying the consistency of data stored in a memory of a security token represented by an IC card.

ICカードに代表されるセキュリティトークンのメモリには、セキュアなサービスにて利用するデータオブジェクトが記憶され、特許文献1で開示されているように、このデータオブジェクトには、データオブジェクトに含まれるデータに誤りがないことを検証できるように誤り検出符号(誤り検出符号: Error Detection Code)が付加される。   A data object used in a secure service is stored in a memory of a security token represented by an IC card. As disclosed in Patent Document 1, this data object includes data included in the data object. An error detection code (Error Detection Code) is added so that it can be verified that there is no error.

誤り検出符号を用いてデータの整合性を検証する従来の手法では、セキュリティトークンのメモリに記憶されたデータオブジェクトからデータを読み出す際、(R1)読み出し対象となるデータが含まれているデータオブジェクトの誤り検出符号を算出するステップ、(R2)誤り検出符号を算出したデータオブジェクトに付加されている誤り検出符号と算出した誤り検出符号を照合するステップ、(R3)誤り検出符号の照合に成功すると、読み出し対象となるデータをデータオブジェクトから読み出しするステップが順に実行される。また、データオブジェクトに含まれているデータを更新する際、上述した(R1)及び(R2)を実行した後、(U1)誤り検出符号の照合に成功すると、更新対象となるデータを更新するステップ、(U2)更新後のデータオブジェクトの更新後の誤り検出符号を算出するステップ、(U3)更新後のデータオブジェクトに付加されている誤り検出符号を更新するステップ、が順に実行される。   In the conventional method of verifying data consistency using an error detection code, when data is read from a data object stored in the security token memory, (R1) the data object containing the data to be read is included. A step of calculating an error detection code; (R2) a step of verifying the error detection code added to the data object for which the error detection code has been calculated and the calculated error detection code; and (R3) if the error detection code is successfully verified, The steps of reading data to be read from the data object are executed in order. Further, when updating the data included in the data object, after executing (R1) and (R2) described above, and (U1) succeeding in collating the error detection code, the step of updating the data to be updated (U2) A step of calculating an error detection code after updating the updated data object, and (U3) a step of updating the error detection code added to the updated data object are sequentially executed.

しかし、上述した手順では、更新時の(U1)と(U2)の間で更新対象外のデータの改竄またはデータ化けが生じた場合、更新対象外のデータに誤りがあるにもかかわらず、(U2)にて、誤った更新対象外のデータを含む状態で誤り検出符号が算出されてしまい、例えば、データオブジェクトからデータを読み出す際、データオブジェクトに誤りがあることを検出することはできなかった。   However, in the above-described procedure, if the data not to be updated is falsified or garbled between (U1) and (U2) at the time of update, In U2), an error detection code is calculated in a state including erroneous data not to be updated. For example, when data is read from a data object, it cannot be detected that the data object has an error. .

図5を用いて上記内容を説明する。図5は、従来の手法において不十分なケースを説明する図で、図5において、データオブジェクトのサイズは8バイトで、2バイトの誤り検出符号(ここでは、CRC16)をデータオブジェクトに付加している。   The above contents will be described with reference to FIG. FIG. 5 is a diagram for explaining a case where the conventional technique is insufficient. In FIG. 5, the size of the data object is 8 bytes, and a 2-byte error detection code (in this case, CRC16) is added to the data object. Yes.

図5(a)は、データを更新する前のデータオブジェクトを説明する図で、データを更新する前のデータオブジェクトに含まれているデータは全て「00h」で、該データオブジェクトに付加されている誤り検出符号は「66BBh」である。   FIG. 5A is a diagram for explaining a data object before updating data. All data included in the data object before updating data is “00h” and is added to the data object. The error detection code is “66BBh”.

図5(b)は、(U1)更新対象となるデータを更新するステップの内容を説明する図である。図5(b)ではデータオブジェクトのD3・D4の2バイトが更新対象となるデータで、データオブジェクトのD3の内容が「00h」から「AAh」へ、D4が「00h」から「BBh」へ更新され、データ化けまたはデータの改竄攻撃により更新対象外となるD6のデータが「00h」から「FFh」に不正に更新されている。   FIG. 5B is a diagram for explaining the contents of the step (U1) for updating data to be updated. In FIG. 5B, 2 bytes of D3 and D4 of the data object are data to be updated, and the content of D3 of the data object is updated from “00h” to “AAh”, and D4 is updated from “00h” to “BBh”. Thus, the data of D6 that is not subject to update due to data corruption or data tampering attack is illegally updated from “00h” to “FFh”.

図5(c)は、(U2)更新後のデータオブジェクトの誤り検出符号を算出するステップの内容を説明する図で、更新後のデータオブジェクトの誤り検出符号は、更新後のデータオブジェクトに含まれている全てのデータを対象として算出されため、図5(c)では、不正に更新されたD6のデータも含めて更新後の誤り検出符号が算出され、正式な更新後の誤り検出符号は「0000AABB00000000h」から算出された「4E3Fh」になるにも係わらず、更新後の誤り検出符号として「2E3Eh」が算出されてしまう。   FIG. 5C is a diagram for explaining the contents of the step (U2) of calculating the error detection code of the updated data object. The error detection code of the updated data object is included in the updated data object. In FIG. 5C, the updated error detection code is calculated including the illegally updated data D6, and the officially updated error detection code is “ In spite of becoming “4E3Fh” calculated from “0000AABB00000000h”, “2E3Eh” is calculated as the updated error detection code.

図5(d)は、(U3)更新後のデータオブジェクトに付加されている誤り検出符号を更新するステップの内容を説明する図で、不正に更新されたD6のデータも含めて算出された「2E3Eh」が、データを更新したデータオブジェクトに付加されることになり、更新後にデータオブジェクトを読み出す際に誤り検出符号を照合しても、更新後のデータオブジェクトの内容と該データオブジェクトの内容から算出される誤り検出符号は一致してしまうため、不正に更新されたデータ(ここでは、D6のデータ)が更新後のデータオブジェクトに含まれることを検出できない。   FIG. 5D is a diagram for explaining the contents of the step (U3) of updating the error detection code added to the updated data object. The calculation is performed including the data of D6 that is illegally updated. 2E3Eh "is added to the data object whose data has been updated, and even if the error detection code is collated when the data object is read after the update, it is calculated from the content of the updated data object and the content of the data object. Since the error detection codes to be matched coincide with each other, it is impossible to detect that the illegally updated data (D6 data here) is included in the updated data object.

特許第3231448号公報Japanese Patent No. 3321448

このように、誤り検出符号を用いてデータの整合性を検証する従来の手法では、セキュリティトークンのメモリに記憶されたデータオブジェクトのデータを更新した際、更新対象外のデータが不正に更新されても、更新対象外のデータが不正に更新されたことを検出できない問題があった。   As described above, in the conventional method of verifying data consistency using an error detection code, when data of a data object stored in a memory of a security token is updated, data that is not an update target is illegally updated. However, there was a problem that it was not possible to detect that the data not subject to update was updated illegally.

そこで、本発明は、セキュリティトークンのメモリに記憶されたデータオブジェクトのデータを更新した際、更新対象外のデータが不正に更新されても、更新対象外のデータが不正に更新されたことを検出できるセキュリティトークン及び方法を提供することを目的とする。   Therefore, according to the present invention, when the data of the data object stored in the memory of the security token is updated, it is detected that the data that is not the update target is illegally updated even if the data that is not the update target is illegally updated. An object is to provide a security token and method that can be used.

上述した課題を解決する第1の発明は、メモリに記憶されたデータオブジェクトに含まれるデータを更新する命令を受けると、更新対象となるデータを更新する前に、更新対象外のデータからデータ更新前の誤り検出符号を算出しておき、更新対象となるデータを更新した後に、更新対象外のデータから算出したデータ更新後の誤り検出符号と、更新対象外のデータから算出したデータ更新前の誤り検出符号を照合するデータ更新手段を備えたことを特徴とするセキュリティトークンである。   According to a first aspect of the present invention for solving the above-described problem, when an instruction to update data included in a data object stored in a memory is received, before updating the data to be updated, the data is updated from the data not to be updated. After calculating the previous error detection code and updating the data to be updated, the error detection code after the data update calculated from the data not to be updated and the data before the data update calculated from the data not to be updated A security token characterized by comprising data updating means for collating error detection codes.

また、第2の発明は、第1の発明のセキュリティトークンにおいて、前記データ更新手段は、更新対象となるデータを更新した後に、更新対象となるデータの誤り検出符号の照合に成功した場合のみ、データオブジェクトのデータ更新後の誤り検出符号を算出し、データオブジェクトに付加されている誤り検出符号を該データ更新後の誤り検出符号に更新することを特徴とする。   In addition, in the security token of the first invention, the second invention is the security token of the first invention, wherein the data updating means only updates the data to be updated and then succeeds in collating the error detection code of the data to be updated. An error detection code after data update of the data object is calculated, and an error detection code added to the data object is updated to the error detection code after data update.

更に、上述した課題を解決する第3の発明は、メモリに記憶されたデータオブジェクトに含まれるデータを更新する命令をセキュリティトークンが受けると、前記セキュリティトークンが、更新対象となるデータを更新する前に、更新対象外のデータからデータ更新前の誤り検出符号を算出するステップ1、前記セキュリティトークンが、更新対象となるデータを更新した後に、更新対象外のデータから算出したデータ更新後の誤り検出符号と、更新対象外のデータから算出したデータ更新前の誤り検出符号を照合するステップ2が順に実行されることを特徴とするデータの更新方法である。   Further, according to a third invention for solving the above-described problem, when a security token receives an instruction to update data included in a data object stored in a memory, the security token updates data to be updated. First, an error detection code before data update is calculated from data not to be updated, and error detection after data update calculated from data not to be updated after the security token has updated data to be updated The data updating method is characterized in that step 2 for collating a code with an error detection code before updating calculated from data not to be updated is sequentially executed.

また、第4の発明は、第3の発明に記載のデータの更新方法において、前記ステップ2の実行後、前記セキュリティトークンは、更新対象となるデータの誤り検出符号の照合に成功した場合のみ、データオブジェクトのデータ更新後の誤り検出符号を算出し、データオブジェクトに付加されている誤り検出符号を該データ更新後の誤り検出符号に更新するステップ3を実行することを特徴とする。   The fourth invention is the data update method according to the third invention, wherein after the execution of the step 2, the security token is verified only when the error detection code of the data to be updated is successfully verified. An error detection code after data update of the data object is calculated, and step 3 is performed in which the error detection code added to the data object is updated to the error detection code after data update.

更に、上述した課題を解決する第5の発明は、メモリに記憶されたデータオブジェクトに含まれるデータを更新する命令を受けると、更新対象となるデータを更新する前に、更新対象外のデータからデータ更新前の誤り検出符号を算出するステップ1、更新対象となるデータを更新した後に、更新対象外のデータから算出したデータ更新後の誤り検出符号と、更新対象外のデータから算出したデータ更新前の誤り検出符号を照合するステップ2をセキュリティトークンに実行させるためのコンピュータプログラムである。   Furthermore, in a fifth invention for solving the above-described problem, when an instruction to update data included in a data object stored in a memory is received, before updating the data to be updated, the data that is not the update target is updated. Step 1 for calculating an error detection code before data update, after updating the data to be updated, an error detection code after data update calculated from data not to be updated, and data update calculated from data not to be updated A computer program for causing a security token to execute step 2 for collating a previous error detection code.

また、第6の発明は、第5の発明に記載のコンピュータプログラムにおいて、前記ステップ2の実行後、更新対象となるデータの誤り検出符号の照合に成功した場合のみ、データオブジェクトのデータ更新後の誤り検出符号を算出し、データオブジェクトに付加されている誤り検出符号を該データ更新後の誤り検出符号に更新するステップ3をセキュリティトークンに実行させることを特徴とするコンピュータプログラムである。   Further, the sixth invention is the computer program according to the fifth invention, in which, after execution of the step 2, only after the error detection code of the data to be updated is successfully verified, the data object after the data update is updated. A computer program that causes a security token to execute step 3 of calculating an error detection code and updating an error detection code added to a data object to an error detection code after the data update.

上述した本発明によれば、セキュリティトークンのメモリに記憶されたデータオブジェクトのデータを更新した際、データを更新する前に、更新対象外となるデータオブジェクトのデータから算出した誤り検出符号と、データを更新した後に、更新対象外となるデータオブジェクトのデータから算出した誤り検出符号が照合されるので、更新対象外のデータオブジェクトのデータが不正に更新されても、更新対象外のデータが不正に更新されたことを検出できるようになる。   According to the present invention described above, when the data object data stored in the memory of the security token is updated, the error detection code calculated from the data object data not to be updated and the data are updated before the data is updated. After the update, the error detection code calculated from the data of the data object that is not the update target is collated, so even if the data of the data object that is not the update target is updated illegally, the data that is not the update target is incorrect It becomes possible to detect that it has been updated.

セキュリティトークンの一例を説明する図。The figure explaining an example of a security token. セキュリティトークンのブロック図。Block diagram of a security token. データ更新手段の動作を説明するフロー図。The flowchart explaining operation | movement of a data update means. データ更新手段の動作を説明する補足図。FIG. 6 is a supplementary diagram for explaining the operation of the data updating means. 従来の手法において不十分なケースを説明する図。The figure explaining the case inadequate in the conventional method.

ここから、本発明の好適な実施形態について、図面を参照しながら詳細に説明する。なお、これから説明する実施形態は本発明の一実施形態にしか過ぎず、種々の変形や変更が可能である。   Now, preferred embodiments of the present invention will be described in detail with reference to the drawings. The embodiment described below is only one embodiment of the present invention, and various modifications and changes are possible.

図1は、セキュリティトークンの一例を説明する図である。本実施形態に係るセキュリティトークン1は、内部にメモリを有し外部装置とデータを通信できるように構成されたデバイスで、図1ではセキュリティトークン1をICカード(スマートカード、チップカード)として図示しているが、セキュリティトークン1の形態はICカードに限定されず、USBキーの形態であってもよい。   FIG. 1 is a diagram illustrating an example of a security token. A security token 1 according to the present embodiment is a device that has a memory therein and is configured to be able to communicate data with an external device. In FIG. 1, the security token 1 is illustrated as an IC card (smart card, chip card). However, the form of the security token 1 is not limited to the IC card, and may be a form of a USB key.

図2は、セキュリティトークン1のブロック図である。本実施形態のセキュリティトークン1には、CPU100、RAM101、ROM102(Read#Only Memory)、EEPROM104(Electrically Erasable Programmable Read-Only Memory)、特定のプロトコルに対応したUART103(Universal Asynchronous Receiver Transmitter)及び特定の演算に特化したコプロセッサ105などを有するICモジュール100が実装され、本実施形態において、データオブジェクト11がEERPOM104に記憶され、データオブジェクト11に含まれているデータを更新する際に動作するデータ更新手段10として機能するコンピュータプログラムがROM102に実装されている。   FIG. 2 is a block diagram of the security token 1. The security token 1 of the present embodiment includes a CPU 100, a RAM 101, a ROM 102 (Read # Only Memory), an EEPROM 104 (Electrically Erasable Programmable Read-Only Memory), a UART 103 (Universal Asynchronous Receiver Transmitter) corresponding to a specific protocol, and a specific operation. In this embodiment, the data module 11 is stored in the EERPOM 104 and operates when updating the data included in the data object 11. A computer program that functions as 10 is mounted in the ROM 102.

本実施形態において、EEPROM104に記憶されるデータオブジェクト11とは、バイナリ型またはレコード型のデータファイル、EEPROM104が所定のサイズに分割されたページメモリ、または、BER−TLV形式のデータオブジェクトなどデータの塊を意味し、セキュリティトークン1のROM102に実装されたコンピュータプログラムで実現されるデータ更新手段10は、従来技術で述べた問題が発生することがないように、データオブジェクト11に含まれたデータを更新した際、更新対象外のデータが更新されていないことを検証するように設計されている。   In the present embodiment, the data object 11 stored in the EEPROM 104 is a data block such as a binary or record type data file, a page memory in which the EEPROM 104 is divided into a predetermined size, or a data object in the BER-TLV format. The data updating means 10 realized by a computer program installed in the ROM 102 of the security token 1 updates the data included in the data object 11 so that the problems described in the prior art do not occur. Is designed to verify that data that is not subject to update has not been updated.

更新対象外のデータが更新されていないことを検証する手法としては、データを更新する前に、該データが含まれているデータオブジェクト11の内容を一時的にRAM101にバッファしておき、データを更新した後に、更新後のデータオブジェクト11の内容とRAM101にバッファした内容を照合し、更新対象外のデータが変更されていないか検証するようにすることもできるが、データオブジェクト11のサイズが大きい場合、データオブジェクト11の内容すべてをRAM101にバッファできないこともあるため、本実施形態のデータ更新手段10は、更新対象外のデータの誤り検出符号を利用して更新対象外のデータが更新されていないことを検証する。   As a method for verifying that the data not to be updated is not updated, before updating the data, the contents of the data object 11 including the data are temporarily buffered in the RAM 101, and the data is stored. After updating, the contents of the updated data object 11 and the contents buffered in the RAM 101 can be collated to verify whether the data not to be updated has been changed, but the size of the data object 11 is large. In this case, since the entire contents of the data object 11 may not be buffered in the RAM 101, the data updating unit 10 of the present embodiment uses the error detection code of the data not to be updated to update the data not to be updated. Verify that there is no.

図3は、本実施形態におけるデータ更新手段10の動作を説明するフロー図で、図4は、データ更新手段10の動作を説明する補足図である。   FIG. 3 is a flowchart for explaining the operation of the data updating unit 10 in the present embodiment, and FIG. 4 is a supplementary diagram for explaining the operation of the data updating unit 10.

更新するデータが含まれているデータオブジェクト11と、更新対象となるデータ及び更新値が指定されるデータ更新命令を外部装置からセキュリティトークン1が受信すると(S1)、セキュリティトークン1のデータ更新手段10が作動し、セキュリティトークン1のデータ更新手段10は、まず、指定されたデータオブジェクト11から算出した誤り検出符号と該データオブジェクト11に付加されている誤り検出符号を照合することで、指定されたデータオブジェクト11に付加された誤り検出符号を検証する(S2)。   When the security token 1 receives the data object 11 containing the data to be updated and the data update command specifying the update target data and the update value from the external device (S1), the data update unit 10 of the security token 1 The data updating means 10 of the security token 1 first matches the error detection code calculated from the specified data object 11 with the error detection code added to the data object 11 to specify The error detection code added to the data object 11 is verified (S2).

図4(a)は、指定されたデータオブジェクト11を説明する図である。図4において、指定されたデータオブジェクト11のサイズは8バイトで、指定されたデータオブジェクト11に含まれているデータは全て「00h」で、指定されたデータオブジェクト11に付加されている誤り検出符号(ここでは、CRC16)は「66BBh」である。   FIG. 4A is a diagram for explaining the designated data object 11. In FIG. 4, the size of the designated data object 11 is 8 bytes, all the data included in the designated data object 11 is “00h”, and the error detection code added to the designated data object 11 (In this case, CRC16) is “66BBh”.

指定されたデータオブジェクト11に付加されている誤り検出符号の検証に失敗すると、データを更新する処理は終了になるが、図4(a)において、指定されたデータオブジェクト11に含まれているデータから算出される誤り検出符号は「66BBh」になるため、ここでは、指定されたデータオブジェクト11に付加された更新前の誤り検出符号の検証に成功したものとする。   When the verification of the error detection code added to the designated data object 11 fails, the data updating process ends, but the data included in the designated data object 11 in FIG. Therefore, it is assumed here that the pre-update error detection code added to the specified data object 11 has been successfully verified.

セキュリティトークン1のデータ更新手段10は、指定されたデータオブジェクト11に付加されている誤り検出符号の検証に成功すると、指定されたデータオブジェクト11の中から更新対象外のデータを対象としてデータ更新前の誤り検出符号を算出し、更新対象外のデータから算出されたデータ更新前の誤り検出符号をRAM101に一時的に保持する(S3)。   If the data update unit 10 of the security token 1 succeeds in verifying the error detection code added to the designated data object 11, the data update unit 10 before the data update is performed on the non-update target data from the designated data object 11. The error detection code before data update calculated from the data not to be updated is temporarily stored in the RAM 101 (S3).

なお、更新対象外のデータではなく、更新対象外のデータから算出されたデータ更新前の誤り検出符号をRAM101に一時的に保持することで、更新対象外のデータが不正に更新されていないことを検証するために必要なRAM101の領域は誤り検出符号のバイト数(ここでは、2バイト)で済む。   It should be noted that non-update target data is not illegally updated by temporarily storing in RAM 101 the error detection code before the data update calculated from the non-update target data instead of the non-update target data. The area of the RAM 101 necessary for verifying the error is the number of bytes of the error detection code (here, 2 bytes).

図4(b)は、更新対象外のデータの誤り検出符号を説明する図である。図4(b)において、更新対象となるデータはD3・D4で、更新対象外のデータであるD0、D1、D2、D5、D6及びD7を結合した「000000000000h」から算出される誤り検出符号は「7459h」になる。   FIG. 4B is a diagram for explaining an error detection code of data that is not an update target. In FIG. 4B, the data to be updated is D3 / D4, and the error detection code calculated from “000000000000h” obtained by combining D0, D1, D2, D5, D6, and D7 which are data not to be updated is It becomes “7459h”.

セキュリティトークン1のデータ更新手段10は、更新対象外のデータを対象としてデータ更新前の誤り検出符号を算出すると、指定されたデータオブジェクト11に含まれているデータの中から、更新対象となるデータを更新値に更新する(S4)。   When the data update unit 10 of the security token 1 calculates the error detection code before the data update for the data not to be updated, the data to be updated from the data included in the designated data object 11 Is updated to the updated value (S4).

図4(c)は、更新後のデータオブジェクト11を説明する図である。図4(c)において、更新対象となるデータはD3・D4で、図4(c)では、データオブジェクト11のD3の内容が「00h」から「AAh」へ、D4が「00h」から「BBh」へ更新されている。なお、ここでは、データオブジェクト11に付加されている誤り検出符号は更新前の値(ここでは、「66BBh」)のままである。   FIG. 4C illustrates the updated data object 11. 4C, the data to be updated is D3 / D4. In FIG. 4C, the content of D3 of the data object 11 is changed from “00h” to “AAh”, and D4 is changed from “00h” to “BBh”. It has been updated to. Here, the error detection code added to the data object 11 remains the value before update (here, “66BBh”).

セキュリティトークン1のデータ更新手段10は、指定されたデータオブジェクト11の中から更新対象となるデータを更新値に更新すると、更新対象となるデータを更新した際、データ化けまたはデータの改竄攻撃により、更新対象外のデータが不正に更新されていないことを検証するために、指定されたデータオブジェクト11の中から更新対象外のデータを対象としてデータ更新後の誤り検出符号を算出する(S5)。   When the data update unit 10 of the security token 1 updates the data to be updated from the designated data object 11 to the update value, when the data to be updated is updated, the data update means 10 causes data corruption or data tampering attack. In order to verify that data not to be updated has been illegally updated, an error detection code after data update is calculated from the designated data object 11 for data that is not to be updated (S5).

セキュリティトークン1のデータ更新手段10は、更新対象外のデータからデータ更新後の誤り検出符号を算出すると、更新対象外のデータから算出したデータ更新前の誤り検出符号(この誤り検出符号はRAM101に保持されている)とデータ更新後の誤り検出符号を照合し(S6)、照合に成功しない場合、該データオブジェクト11の誤り検出符号を更新することなく、この手順を終了する。   When the data update unit 10 of the security token 1 calculates the error detection code after the data update from the data not to be updated, the error detection code before the data update calculated from the data not to be updated (the error detection code is stored in the RAM 101). Stored) and the error detection code after data update are collated (S6), and if the collation is not successful, this procedure is terminated without updating the error detection code of the data object 11.

図4(d)は、更新対象外のデータが不正に更新された場合を説明する図である。図4(c)において、更新対象外となるデータであるD6が「FFh」に不正に更新され、更新対象外のデータであるD0、D1、D2、D5、D6及びD7を結合した「00000000FF00h」から算出されるデータ更新後の誤り検出符号は「1458h」になり、データ更新前の誤り検出符号「7459h」とは異なるため、図4(d)のケースでは、誤り検出符号を更新することなく、この手順は終了になる。   FIG. 4D is a diagram illustrating a case where data that is not an update target is updated illegally. In FIG. 4C, D6, which is data that is not the update target, is illegally updated to “FFh”, and “00000000FF00h” is a combination of D0, D1, D2, D5, D6, and D7, which is the data that is not the update target. The error detection code after updating the data calculated from “1458h” is different from the error detection code “7459h” before updating the data. In the case of FIG. 4D, the error detection code is not updated. This procedure ends.

セキュリティトークン1のデータ更新手段10は、更新対象外のデータから算出したデータ更新前の誤り検出符号とデータ更新後の誤り検出符号の照合に成功すると、データ更新後のデータオブジェクト11に含まれているデータ全てから更新後の誤り検出符号を算出し(S7)、指定されたデータオブジェクト11の誤り検出符号を更新後の誤り検出符号に更新して(S8)、この手順を終了する。   The data update means 10 of the security token 1 is included in the data object 11 after the data update if the error detection code before the data update calculated from the data not to be updated and the error detection code after the data update are successfully verified. The updated error detection code is calculated from all the data (S7), the error detection code of the designated data object 11 is updated to the updated error detection code (S8), and this procedure is terminated.

図4(e)は、更新対象外のデータが不正に更新されていない場合を説明する図である。図4(e)において、更新対象外となるデータは不正に更新されず「00h」のままであるため、更新後のデータオブジェクト11の内容「0000AABB00000000h」から算出される更新後の誤り検出符号は「4E3Fh」になり、データオブジェクト11に付加されている誤り検出符号は更新前の値「66BBh」から更新後の値「4E3Fh」に更新されている。   FIG. 4E is a diagram illustrating a case where data that is not an update target has not been updated illegally. In FIG. 4E, since the data that is not to be updated is not updated illegally and remains “00h”, the error detection code after update calculated from the content “0000AABB00000000h” of the updated data object 11 is “4E3Fh”, and the error detection code added to the data object 11 is updated from the value “66BBh” before update to the value “4E3Fh” after update.

このように、更新対象外のデータを対象として算出したデータ更新前の誤り検出符号とデータ更新後の誤り検出符号を照合することで、更新対象外のデータに不正な誤りがあったことを検出できるようになるし、また、照合に成功しない場合、データオブジェクトの誤り検出符号を更新することなくこの手順を終了することで、次にデータオブジェクト11の内容を読み出す際、データオブジェクト11の内容から算出される誤り検出符号(ここでは、「2E3Eh」)とデータオブジェクト11に付加されている誤り検出符号(ここでは、「66BBh」)は異なるため、不正に更新されデータが含まれているデータオブジェクト11が利用されることはない。   In this way, by comparing the error detection code before the data update calculated for the data that is not the update target with the error detection code after the data update, it is detected that there is an illegal error in the data that is not the update target. If the collation is not successful, the procedure is terminated without updating the error detection code of the data object, so that the next time the content of the data object 11 is read, the content of the data object 11 is read. Since the calculated error detection code (here, “2E3Eh”) and the error detection code added to the data object 11 (here, “66BBh”) are different, the data object that is illegally updated and includes data 11 is never used.

1 セキュリティトークン
10 データ更新手段
11 データオブジェクト
1 security token 10 data updating means 11 data object

Claims (6)

メモリに記憶されたデータオブジェクトに含まれるデータを更新する命令を受けると、更新対象となるデータを更新する前に、更新対象外のデータからデータ更新前のEDCを算出しておき、更新対象となるデータを更新した後に、更新対象外のデータから算出したデータ更新後のEDCと、更新対象外のデータから算出したデータ更新前のEDCを照合するデータ更新手段を備えたことを特徴とするセキュリティトークン。   When receiving an instruction to update data included in the data object stored in the memory, before updating the data to be updated, the EDC before the data update is calculated from the data not to be updated, and the update target And a data updating means for collating the updated EDC calculated from the data not to be updated with the EDC before the data calculated from the data not to be updated. token. 前記データ更新手段は、更新対象となるデータを更新した後に、更新対象となるデータのEDCの照合に成功した場合のみ、データオブジェクトのデータ更新後のEDCを算出し、データオブジェクトに付加されているEDCを該データ更新後のEDCに更新することを特徴とする、請求項1に記載したセキュリティトークン。   The data updating means calculates the EDC after the data update of the data object and adds it to the data object only when the EDC verification of the data to be updated succeeds after updating the data to be updated. The security token according to claim 1, wherein the EDC is updated to the EDC after the data update. メモリに記憶されたデータオブジェクトに含まれるデータを更新する命令をセキュリティトークンが受けると、前記セキュリティトークンが、更新対象となるデータを更新する前に、更新対象外のデータからデータ更新前のEDCを算出するステップ1、前記セキュリティトークンが、更新対象となるデータを更新した後に、更新対象外のデータから算出したデータ更新後のEDCと、更新対象外のデータから算出したデータ更新前のEDCを照合するステップ2が順に実行されることを特徴とするデータの更新方法。   When the security token receives an instruction to update data included in the data object stored in the memory, before the security token updates the data to be updated, the EDC before the data update is updated from the data not to be updated. Step 1 for calculating, after the security token updates the data to be updated, the EDC after the data update calculated from the data not to be updated is compared with the EDC before the data update calculated from the data not to be updated The data updating method is characterized in that step 2 is sequentially executed. 前記ステップ2の実行後、前記セキュリティトークンは、更新対象となるデータのEDCの照合に成功した場合のみ、データオブジェクトのデータ更新後のEDCを算出し、データオブジェクトに付加されているEDCを該データ更新後のEDCに更新するステップ3を実行することを特徴とする、請求項3に記載したデータの更新方法。   After the execution of the step 2, the security token calculates the EDC after the data update of the data object only when the verification of the EDC of the data to be updated is successful, and the EDC added to the data object 4. The data updating method according to claim 3, wherein step 3 of updating to an updated EDC is executed. メモリに記憶されたデータオブジェクトに含まれるデータを更新する命令を受けると、更新対象となるデータを更新する前に、更新対象外のデータからデータ更新前のEDCを算出するステップ1、更新対象となるデータを更新した後に、更新対象外のデータから算出したデータ更新後のEDCと、更新対象外のデータから算出したデータ更新前のEDCを照合するステップ2をセキュリティトークンに実行させるためのコンピュータプログラム。   When an instruction to update data included in a data object stored in a memory is received, before updating data to be updated, step 1 for calculating EDC before data update from data not to be updated; A computer program for causing a security token to execute step 2 for collating EDC after data update calculated from data not to be updated and EDC before data calculated from data not to be updated . 前記ステップ2の実行後、更新対象となるデータのEDCの照合に成功した場合のみ、データオブジェクトのデータ更新後のEDCを算出し、データオブジェクトに付加されているEDCを該データ更新後のEDCに更新するステップ3を前記セキュリティトークンに実行させる特徴とする、請求項5に記載したコンピュータプログラム。
After the execution of step 2, the EDC after the data update of the data object is calculated only when the EDC verification of the data to be updated is successful, and the EDC added to the data object is used as the EDC after the data update. The computer program according to claim 5, wherein the security token is caused to execute step 3 of updating.
JP2011220054A 2011-10-04 2011-10-04 Security token, data update method, and computer program Active JP5822123B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011220054A JP5822123B2 (en) 2011-10-04 2011-10-04 Security token, data update method, and computer program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011220054A JP5822123B2 (en) 2011-10-04 2011-10-04 Security token, data update method, and computer program

Publications (2)

Publication Number Publication Date
JP2013080379A true JP2013080379A (en) 2013-05-02
JP5822123B2 JP5822123B2 (en) 2015-11-24

Family

ID=48526699

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011220054A Active JP5822123B2 (en) 2011-10-04 2011-10-04 Security token, data update method, and computer program

Country Status (1)

Country Link
JP (1) JP5822123B2 (en)

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0635776A (en) * 1992-07-16 1994-02-10 Dainippon Printing Co Ltd Data writing and reading method and data recording and reproducing device for them
JP3231448B2 (en) * 1993-01-27 2001-11-19 大日本印刷株式会社 IC card
JP2002351685A (en) * 2001-05-22 2002-12-06 Sankyo Seiki Mfg Co Ltd Data updating method and controller for nonvolatile memory
JP2004178639A (en) * 2002-11-25 2004-06-24 Fuji Photo Film Co Ltd Recording medium cartridge and its recording/ reproducing device
WO2007001073A1 (en) * 2005-06-28 2007-01-04 Movell Software, Inc. Data backup system, and data backup method
WO2007094045A1 (en) * 2006-02-14 2007-08-23 Fujitsu Limited Readout processing device and readout processing method
JP2008060617A (en) * 2004-12-10 2008-03-13 Matsushita Electric Ind Co Ltd Electronic data verification device, electronic data preparation device, electronic data verification method, electronic data preparation method, and integrated circuit
JP2009169550A (en) * 2008-01-11 2009-07-30 Nidec Sankyo Corp Memory monitoring method
JP5734815B2 (en) * 2011-11-18 2015-06-17 未来工業株式会社 Pipe fitting cover and piping method

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0635776A (en) * 1992-07-16 1994-02-10 Dainippon Printing Co Ltd Data writing and reading method and data recording and reproducing device for them
JP3231448B2 (en) * 1993-01-27 2001-11-19 大日本印刷株式会社 IC card
JP2002351685A (en) * 2001-05-22 2002-12-06 Sankyo Seiki Mfg Co Ltd Data updating method and controller for nonvolatile memory
JP2004178639A (en) * 2002-11-25 2004-06-24 Fuji Photo Film Co Ltd Recording medium cartridge and its recording/ reproducing device
JP2008060617A (en) * 2004-12-10 2008-03-13 Matsushita Electric Ind Co Ltd Electronic data verification device, electronic data preparation device, electronic data verification method, electronic data preparation method, and integrated circuit
WO2007001073A1 (en) * 2005-06-28 2007-01-04 Movell Software, Inc. Data backup system, and data backup method
WO2007094045A1 (en) * 2006-02-14 2007-08-23 Fujitsu Limited Readout processing device and readout processing method
JP2009169550A (en) * 2008-01-11 2009-07-30 Nidec Sankyo Corp Memory monitoring method
JP5734815B2 (en) * 2011-11-18 2015-06-17 未来工業株式会社 Pipe fitting cover and piping method

Also Published As

Publication number Publication date
JP5822123B2 (en) 2015-11-24

Similar Documents

Publication Publication Date Title
CN105938433B (en) Method for programming a control device of a motor vehicle
CN112084484B (en) Equipment hardware safety detection method and device, electronic equipment and storage medium
CN104866768A (en) Startup control method and device for ATM (Automatic Teller Machine) operating system
CN105677409B (en) A kind of method for upgrading system and device
CN113238790B (en) Firmware program updating method and system based on SD card and EEPROM
JP2005293109A (en) Software execution management device, software execution management method, and control program
JP5822123B2 (en) Security token, data update method, and computer program
CN115481405A (en) Safe starting and optimized upgrading method of embedded system
US10298406B1 (en) Security integrated circuit
US7840814B2 (en) Method for managing an executable code downloaded in a reprogrammable on-board system
CN114710297A (en) Block chain evidence storing method, device and equipment based on aggregated signature and storage medium
US8527835B2 (en) Method for secure data transfer
CN108200060B (en) Single sign-on verification method based on web subsystem, server and storage medium
CN106484477B (en) The software download and starting method of safety
CN111538371A (en) Real-time clock device, working method thereof and USB (universal serial bus) equipment
US10242183B2 (en) Method of executing a program by a processor and electronic entity comprising such a processor
JP6308074B2 (en) Microcomputer
CN115828255A (en) Method for upgrading signed firmware, electronic device and storage medium
CN117743011A (en) RomCode operation error repairing method and device
JP6155933B2 (en) Portable storage media
JP6610002B2 (en) Arithmetic apparatus, arithmetic method, and arithmetic processing program
JP2021043674A (en) Control device and method
US20110016329A1 (en) Integrated circuit card having a modifiable operating program and corresponding method of modification
JP6175882B2 (en) Information storage medium, IC card, and bytecode execution method
KR100841886B1 (en) Mcu memory control method of embedded system

Legal Events

Date Code Title Description
RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20130823

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140822

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150421

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150526

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150724

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20150724

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: 20150911

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150924

R150 Certificate of patent or registration of utility model

Ref document number: 5822123

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150