Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP6923250B2 - System and encryption processing method - Google Patents
[go: Go Back, main page]

JP6923250B2 - System and encryption processing method - Google Patents

System and encryption processing method Download PDF

Info

Publication number
JP6923250B2
JP6923250B2 JP2018234320A JP2018234320A JP6923250B2 JP 6923250 B2 JP6923250 B2 JP 6923250B2 JP 2018234320 A JP2018234320 A JP 2018234320A JP 2018234320 A JP2018234320 A JP 2018234320A JP 6923250 B2 JP6923250 B2 JP 6923250B2
Authority
JP
Japan
Prior art keywords
encrypted data
hardware
unit
data
register
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
Application number
JP2018234320A
Other languages
Japanese (ja)
Other versions
JP2020096314A (en
Inventor
友子 三神
友子 三神
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.)
NEC Platforms Ltd
Original Assignee
NEC Platforms 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 NEC Platforms Ltd filed Critical NEC Platforms Ltd
Priority to JP2018234320A priority Critical patent/JP6923250B2/en
Publication of JP2020096314A publication Critical patent/JP2020096314A/en
Application granted granted Critical
Publication of JP6923250B2 publication Critical patent/JP6923250B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Hardware Redundancy (AREA)

Description

本発明は、システム及び暗号化処理方法に関する。 The present invention relates to a system and an encryption processing method.

データの暗号化や復号化を行う装置では、その暗号化や復号化の信頼性及び安全性が重要視される場合が多い。
特許文献1には、関連する技術として、二重化された暗号処理装置の障害時に他の暗号処理装置へ切り替えて処理を引き継ぐシステムに関する技術が開示されている。
In a device that encrypts or decrypts data, the reliability and security of the encryption or decryption are often regarded as important.
Patent Document 1 discloses, as a related technique, a technique relating to a system for switching to another cryptographic processing device and taking over the processing when a failure of the duplicated cryptographic processing device occurs.

特開2004−328563号公報Japanese Unexamined Patent Publication No. 2004-328563

ところで、特許文献1のような技術を用いる場合、暗号処理装置を停止させる必要があり、暗号処理装置を連続的に稼働したまま暗号化の処理を継続することができなくなる可能性がある。 By the way, when a technique such as Patent Document 1 is used, it is necessary to stop the encryption processing device, and there is a possibility that the encryption processing cannot be continued while the encryption processing device is continuously operating.

本発明の各態様は、上記の課題を解決することのできるシステム及び暗号化処理方法を提供することを目的としている。 Each aspect of the present invention aims to provide a system and an encryption processing method capable of solving the above problems.

上記目的を達成するために、本発明の一態様によれば、システムは、第1ハードウェアと第2ハードウェアとを備えるシステムであって、前記第1ハードウェアは、第1レジスタと、暗号化される前のデータを前記第1レジスタに格納し、空きハードウェア記憶部が空きハードウェアフラグを記憶しているか否かを判定し、前記空きハードウェアフラグを記憶していると判定した場合、前記データを第2レジスタに格納するファームウェア実行部と、前記第1レジスタに格納された前記データを第1暗号化データに暗号化する第1暗号化部と、前記第1レジスタに格納された前記データを第2暗号化データに暗号化する第2暗号化部と、前記第1暗号化データと前記第2暗号化データとを比較し、一致しているか否かを判定する第1比較判定部と、前記第1暗号化データと前記第2暗号化データとが一致していないと前記第1比較判定部が判定した場合に、前記第1暗号化データと前記第2暗号化データとが一致していないことを前記第2ハードウェアに通知する通知部と、を備え、前記第2ハードウェアは、前記空きハードウェア記憶部と、前記第2レジスタと、前記第2レジスタに格納された前記データを第3暗号化データに暗号化する第3暗号化部と、前記第2レジスタに格納された前記データを第4暗号化データに暗号化する第4暗号化部と、前記第3暗号化データと前記第4暗号化データとを比較し、一致しているか否かを判定する第2比較判定部と、前記第1暗号化データと前記第2暗号化データとが一致していないことを示す通知を前記通知部から受け、前記第3暗号化データと前記第4暗号化データとが一致している場合に、前記第3暗号化データを記憶部に書き込む書き込み部と、を備えるIn order to achieve the above object, according to one aspect of the present invention, the system is a system including first hardware and second hardware, wherein the first hardware includes a first register and a cipher. When the data before being converted is stored in the first register, it is determined whether or not the free hardware storage unit stores the free hardware flag, and it is determined that the free hardware flag is stored. , A firmware execution unit that stores the data in the second register, a first encryption unit that encrypts the data stored in the first register into the first encrypted data, and a first encryption unit stored in the first register. A first comparison determination that compares the second encryption unit that encrypts the data into the second encrypted data, the first encrypted data, and the second encrypted data, and determines whether or not they match. When the first comparison determination unit determines that the unit, the first encrypted data, and the second encrypted data do not match, the first encrypted data and the second encrypted data are combined. The second hardware includes a notification unit for notifying the second hardware that they do not match, and the second hardware is stored in the free hardware storage unit, the second register, and the second register. A third encryption unit that encrypts the data into third encrypted data, a fourth encryption unit that encrypts the data stored in the second register into fourth encrypted data, and the third encryption unit. The second comparison determination unit that compares the encrypted data with the fourth encrypted data and determines whether or not they match, and the first encrypted data and the second encrypted data do not match. A writing unit for writing the third encrypted data to the storage unit when the notification indicating the above is received from the notification unit and the third encrypted data and the fourth encrypted data match .

上記目的を達成するために、本発明の別の態様によれば、暗号化処理方法は、第1レジスタを有する第1ハードウェアと、空きハードウェア記憶部および第2レジスタを有する第2ハードウェアとを備えるシステムによる暗号化処理方法であって、暗号化される前のデータを前記第1レジスタに格納し、空きハードウェア記憶部が空きハードウェアフラグを記憶しているか否かを判定し、前記空きハードウェアフラグを記憶していると判定した場合、前記データを前記第2レジスタに格納することと、前記第1レジスタに格納された前記データを第1暗号化データに暗号化することと、前記第1レジスタに格納された前記データを第2暗号化データに暗号化することと、前記第1暗号化データと前記第2暗号化データとを比較し、一致しているか否かを判定することと、前記第1暗号化データと前記第2暗号化データとが一致していないと判定した場合に、前記第1暗号化データと前記第2暗号化データとが一致していないことを前記第2ハードウェアに通知することと、前記第2レジスタに格納された前記データを第3暗号化データに暗号化することと、前記第2レジスタに格納された前記データを第4暗号化データに暗号化することと、前記第3暗号化データと前記第4暗号化データとを比較し、一致しているか否かを判定することと、前記第1暗号化データと前記第2暗号化データとが一致していないことを示す通知を受け、前記第3暗号化データと前記第4暗号化データとが一致している場合に、前記第3暗号化データを記憶部に書き込むことと、を含む

In order to achieve the above object, according to another aspect of the present invention, the encryption processing method is a first hardware having a first register and a second hardware having a free hardware storage unit and a second register. It is an encryption processing method by a system including the above, and the data before being encrypted is stored in the first register, and it is determined whether or not the free hardware storage unit stores the free hardware flag. When it is determined that the free hardware flag is stored, the data is stored in the second register, and the data stored in the first register is encrypted into the first encrypted data. , The data stored in the first register is encrypted into the second encrypted data, and the first encrypted data and the second encrypted data are compared to determine whether or not they match. When it is determined that the first encrypted data and the second encrypted data do not match, the first encrypted data and the second encrypted data do not match. Notifying the second hardware, encrypting the data stored in the second register into the third encrypted data, and converting the data stored in the second register into the fourth encrypted data. The third encrypted data and the fourth encrypted data are compared to determine whether or not they match, and the first encrypted data and the second encrypted data are encrypted. When the notification indicating that the data does not match is received and the third encrypted data and the fourth encrypted data match, the third encrypted data is written to the storage unit. Including .

本発明の各態様によれば、ハードウェアを連続的に稼働したまま暗号化の処理を継続することができる。 According to each aspect of the present invention, the encryption process can be continued while the hardware is continuously running.

本発明の一実施形態によるシステムの構成を示す図である。It is a figure which shows the structure of the system by one Embodiment of this invention. 本発明の一実施形態によるシステムの処理フローを示す図である。It is a figure which shows the processing flow of the system by one Embodiment of this invention. 本発明の実施形態による最小構成のシステムを示す図である。It is a figure which shows the system of the minimum structure by embodiment of this invention. 少なくとも1つの実施形態に係るコンピュータの構成を示す概略ブロック図である。It is a schematic block diagram which shows the structure of the computer which concerns on at least one Embodiment.

以下、図面を参照しながら実施形態について詳しく説明する。
<実施形態>
本発明の一実施形態によるシステム1は、図1に示すように、DRAM(Dynamic Random Access Memory)11、第1ハードウェア12、第2ハードウェア25を備える。
システム1では、暗号化を行う第1ハードウェア12は、その暗号化を行う部分に不具合が発生した場合、暗号化の処理が可能であり処理に空きがある第2ハードウェアに暗号化の処理を依頼する。そして、第1ハードウェア12は、第2ハードウェアによる暗号化の結果を用いて、暗号化の処理を継続する。
Hereinafter, embodiments will be described in detail with reference to the drawings.
<Embodiment>
As shown in FIG. 1, the system 1 according to an embodiment of the present invention includes a DRAM (Dynamic Random Access Memory) 11, first hardware 12, and second hardware 25.
In the system 1, the first hardware 12 that performs encryption can perform encryption processing when a problem occurs in the part to be encrypted, and the second hardware that has a vacant process can perform encryption processing. To ask. Then, the first hardware 12 continues the encryption process using the result of the encryption by the second hardware.

DRAM11は、システム1における主記憶装置である。
第1ハードウェア12は、通常時にアクティブであり暗号化の処理を行うハードウェアである。
第1ハードウェア12は、図1に示すように、暗号化制御部13、比較結果記憶部19、エラー回数カウンタ20、エラー回数上限レジスタ21、第2比較部22(通知部の一例)、ハードウェア切り離し記憶部23、ファームウェア実行部24(書き込み部の一例)を備える。
The DRAM 11 is the main storage device in the system 1.
The first hardware 12 is hardware that is normally active and performs encryption processing.
As shown in FIG. 1, the first hardware 12 includes an encryption control unit 13, a comparison result storage unit 19, an error count counter 20, an error count upper limit register 21, a second comparison unit 22 (an example of a notification unit), and hardware. It includes a hardware disconnection storage unit 23 and a firmware execution unit 24 (an example of a writing unit).

暗号化制御部13は、データの暗号化を制御する。暗号化制御部13は、図1に示すように、平文レジスタ14、第1暗号化制御部15(第1暗号化部の一例、第3暗号化部の一例)、第2暗号化制御部16(第2暗号化部の一例、第4暗号化部の一例)、第1比較部17(第1比較判定部の一例、第2比較判定部の一例、書き込む書き込み部の一例)、データ書き込み部18を備える。
平文レジスタ14は、暗号化する前のデータを保持する。
第1暗号化制御部15及び第2暗号化制御部16のそれぞれは、平文を暗号化する。
第1比較部17は、第1暗号化制御部15による平文の暗号化結果と、第2暗号化制御部16による平文の暗号化結果とを比較する。
データ書き込み部18は、2つの暗号化結果が一致する比較結果を第1比較部17が得た場合、その暗号化結果をDRAM11に書き込む。
The encryption control unit 13 controls data encryption. As shown in FIG. 1, the encryption control unit 13 includes a plaintext register 14, a first encryption control unit 15 (an example of a first encryption unit, an example of a third encryption unit), and a second encryption control unit 16. (An example of a second encryption unit, an example of a fourth encryption unit), a first comparison unit 17 (an example of a first comparison determination unit, an example of a second comparison determination unit, an example of a writing unit to be written), a data writing unit 18 is provided.
The plaintext register 14 holds the data before encryption.
Each of the first encryption control unit 15 and the second encryption control unit 16 encrypts the plaintext.
The first comparison unit 17 compares the plaintext encryption result by the first encryption control unit 15 with the plaintext encryption result by the second encryption control unit 16.
When the first comparison unit 17 obtains a comparison result in which the two encryption results match, the data writing unit 18 writes the encryption result in the DRAM 11.

比較結果記憶部19は、第1比較部17の比較結果を表すフラグを記憶する。
エラー回数カウンタ20は、第1比較部17が不一致である比較結果を得た回数をエラー回数としてカウントする。
エラー回数上限レジスタ21は、エラー回数の上限値を保持することで、そのエラー回数の上限を定める。
第2比較部22は、エラー回数カウンタ20の値とエラー回数上限レジスタ21の値とを比較する。
ハードウェア切り離し記憶部23は、エラー回数がエラー回数の上限に達したときに、エラー回数がエラー回数の上限に達したことを示すフラグを立てる。
ファームウェア実行部24は、ファームウェアを実行することにより、第1ハードウェア12を制御する。
The comparison result storage unit 19 stores a flag representing the comparison result of the first comparison unit 17.
The error count counter 20 counts as the number of errors the number of times that the first comparison unit 17 obtains a comparison result in which they do not match.
The error count upper limit register 21 holds the upper limit value of the error count to determine the upper limit of the error count.
The second comparison unit 22 compares the value of the error count counter 20 with the value of the error count upper limit register 21.
When the number of errors reaches the upper limit of the number of errors, the hardware disconnection storage unit 23 sets a flag indicating that the number of errors has reached the upper limit of the number of errors.
The firmware execution unit 24 controls the first hardware 12 by executing the firmware.

第2ハードウェア25は、図1に示すように、第1ハードウェア12と同様に、暗号化制御部13、比較結果記憶部19、エラー回数カウンタ20、エラー回数上限レジスタ21、第2比較部22、ハードウェア切り離し記憶部23、ファームウェア実行部24を備える。また、第2ハードウェア25は、さらに、空きハードウェア記憶部26を備える。
第2ハードウェア25がビジー状態でない場合、空きハードウェア記憶部26は、ビジー状態でないことを示す空きハードウェアフラグを記憶する。
As shown in FIG. 1, the second hardware 25 has an encryption control unit 13, a comparison result storage unit 19, an error count counter 20, an error count upper limit register 21, and a second comparison unit, similarly to the first hardware 12. 22, a hardware disconnection storage unit 23, and a firmware execution unit 24 are provided. Further, the second hardware 25 further includes a free hardware storage unit 26.
When the second hardware 25 is not in the busy state, the free hardware storage unit 26 stores a free hardware flag indicating that the second hardware 25 is not in the busy state.

次に、本発明の一実施形態によるシステム1の処理フローについて説明する。
ここでは、図2に示すシステム1の処理フローを説明する。
なお、同一の符号が付与されているハードウェアを区別するために、以下の説明では、第1ハードウェア12が備えるハードウェアの符号の末尾に「a」を付与し、第2ハードウェア25が備えるハードウェアの符号の末尾に「b」を付与する。
Next, the processing flow of the system 1 according to the embodiment of the present invention will be described.
Here, the processing flow of the system 1 shown in FIG. 2 will be described.
In order to distinguish the hardware to which the same code is assigned, in the following description, "a" is added to the end of the code of the hardware included in the first hardware 12, and the second hardware 25 is assigned. "B" is added to the end of the code of the provided hardware.

ファームウェア実行部24aは、DRAM11から暗号化される前のデータである平文を読み出す。そして、ファームウェア実行部24aは、読み出した平文を平文レジスタ14aに格納する(ステップS1a)。
また、ファームウェア実行部24aは、接続先の第2ハードウェア25の空きハードウェア記憶部26が空きハードウェアフラグを記憶しているか否かを判定する。ファームウェア実行部24aは、空きハードウェア記憶部26が空きハードウェアフラグを記憶していると判定した場合、ファームウェア実行部24bを介して、DRAM11から読み出した平文を平文レジスタ14bに格納する(ステップS1b)。
The firmware execution unit 24a reads the plain text which is the data before being encrypted from the DRAM 11. Then, the firmware execution unit 24a stores the read plaintext in the plaintext register 14a (step S1a).
Further, the firmware execution unit 24a determines whether or not the free hardware storage unit 26 of the second hardware 25 to be connected stores the free hardware flag. When the firmware execution unit 24a determines that the free hardware storage unit 26 stores the free hardware flag, the firmware execution unit 24a stores the plaintext read from the DRAM 11 in the plaintext register 14b via the firmware execution unit 24b (step S1b). ).

以下、第1ハードウェア12が行う処理について記載するが、第2ハードウェア25も同様の処理を行うものである。なお、図2において、第2ハードウェア25が行う処理ステップについては、処理ステップの末尾に「b」を付与して第1ハードウェア12が行う処理ステップに対応する処理ステップを示している。ただし、第1ハードウェア12は行うが、第2ハードウェア25は行わない処理も存在する。また、第2ハードウェア25は行うが、第1ハードウェア12は行わない処理については、第1ハードウェア12の処理と並行して説明する。 Hereinafter, the processing performed by the first hardware 12 will be described, but the second hardware 25 also performs the same processing. In FIG. 2, with respect to the processing step performed by the second hardware 25, a “b” is added to the end of the processing step to indicate the processing step corresponding to the processing step performed by the first hardware 12. However, there is a process in which the first hardware 12 is performed but the second hardware 25 is not performed. Further, a process in which the second hardware 25 is performed but the first hardware 12 is not performed will be described in parallel with the process of the first hardware 12.

ファームウェア実行部24aは、平文レジスタ14aに格納されている平文を、第1暗号化制御部15a(第1暗号化部の一例)及び第2暗号化制御部16a(第2暗号化部の一例)に送信する(ステップS2a)。
第1暗号化制御部15a及び第2暗号化制御部16aのそれぞれは、平文を暗号化する(ステップS3a)。
The firmware execution unit 24a uses the plaintext stored in the plaintext register 14a as the first encryption control unit 15a (an example of the first encryption unit) and the second encryption control unit 16a (an example of the second encryption unit). (Step S2a).
Each of the first encryption control unit 15a and the second encryption control unit 16a encrypts the plaintext (step S3a).

比較部17a(第1比較判定部の一例)は、第1暗号化制御部15aが平文を暗号化した結果の値(すなわち、暗号化されたデータ)と、第2暗号化制御部16aが平文を暗号化した結果の値(すなわち、暗号化されたデータ)とを比較する(ステップS4a)。
比較部17aは、両方の値が一致しているか否かを判定する(ステップS5a)。比較部17aは、判定結果(比較結果)を比較結果記憶部19aに書き込む。
In the comparison unit 17a (an example of the first comparison determination unit), the value as a result of the first encryption control unit 15a encrypting the plaintext (that is, the encrypted data) and the second encryption control unit 16a are the plaintext. Is compared with the value of the result of encrypting (that is, the encrypted data) (step S4a).
The comparison unit 17a determines whether or not both values match (step S5a). The comparison unit 17a writes the determination result (comparison result) in the comparison result storage unit 19a.

比較部17aは、両方の値が一致していると判定した場合(ステップS5aにおいてYES)、その値(暗号化されたデータ)をDRAM11に書き込む(ステップS6a)。
比較部17aは、ファームウェア実行部24aを介して、両方の値が一致していることをファームウェア実行部24bに通知する(ステップS7a)。
ファームウェア実行部24bは、ステップS3bの処理で暗号化した暗号化データを破棄する(ステップS8b)。
When the comparison unit 17a determines that both values match (YES in step S5a), the comparison unit 17a writes the value (encrypted data) to the DRAM 11 (step S6a).
The comparison unit 17a notifies the firmware execution unit 24b that both values match via the firmware execution unit 24a (step S7a).
The firmware execution unit 24b discards the encrypted data encrypted in the process of step S3b (step S8b).

また、比較部17aは、両方の値が不一致であると判定した場合(ステップS5aにおいてNO)、ファームウェア実行部24aにエラー報告を送信する(ステップS9a)。エラー報告とは、両方の値が不一致であることを示す情報である。そして、エラー回数カウンタ20は、カウント値に1を加える。 Further, when the comparison unit 17a determines that both values do not match (NO in step S5a), the comparison unit 17a transmits an error report to the firmware execution unit 24a (step S9a). Error reporting is information that indicates that both values do not match. Then, the error count counter 20 adds 1 to the count value.

第2比較部22a(通知部の一例)は、エラー回数カウンタ20aのカウント値とエラー回数上限レジスタ21aの値とを比較する。第2比較部22aは、エラー回数カウンタ20のカウント値(すなわち、エラー回数)とエラー回数上限レジスタ21の値とが一致しているか否かを判定する(ステップS10a)。 The second comparison unit 22a (an example of the notification unit) compares the count value of the error count counter 20a with the value of the error count upper limit register 21a. The second comparison unit 22a determines whether or not the count value of the error count counter 20 (that is, the number of errors) and the value of the error count upper limit register 21 match (step S10a).

第2比較部22aは、エラー回数カウンタ20のカウント値とエラー回数上限レジスタ21の値とが一致していると判定した場合(ステップS10aにおいてYES)、エラー回数がエラー回数の上限に達したことを示すフラグを、ハードウェア切り離し記憶部23に書き込む。第2比較部22aは、エラーが発生したことを第2ハードウェア25に通知する(ステップS11a)。
そして、第2比較部22aは、第1ハードウェア12を切り離す(ステップS12a)。
When the second comparison unit 22a determines that the count value of the error count counter 20 and the value of the error count upper limit register 21 match (YES in step S10a), the error count has reached the upper limit of the error count. Is written in the hardware disconnection storage unit 23. The second comparison unit 22a notifies the second hardware 25 that an error has occurred (step S11a).
Then, the second comparison unit 22a disconnects the first hardware 12 (step S12a).

また、第2比較部22aは、エラー回数カウンタ20のカウント値とエラー回数上限レジスタ21の値とが不一致であると判定した場合(ステップS10aにおいてNO)、エラー回数カウンタ20のカウント値とエラー回数上限レジスタ21の値とが不一致であることを示すフラグを、比較結果記憶部19に書き込む。そして、第2比較部22aは、ステップS11aの処理に進める。 When the second comparison unit 22a determines that the count value of the error count counter 20 and the value of the error count upper limit register 21 do not match (NO in step S10a), the count value of the error count counter 20 and the number of errors A flag indicating that the value of the upper limit register 21 does not match is written in the comparison result storage unit 19. Then, the second comparison unit 22a proceeds to the process of step S11a.

第2比較部22aがステップS11aの処理を行うと、ファームウェア実行部24bは、第1ハードウェア12からのエラーの通知によって第1ハードウェア12にエラーが発生したことを確認し、比較結果記憶部19bに書き込まれているフラフによって第2ハードウェア25における比較結果が一致していることを確認する(ステップS13b)。
そして、ファームウェア実行部24b(書き込み部の一例)は、比較部17b(第2比較判定部の一例、書き込み部の一例)を介して、第1暗号化制御部15b(第3暗号化部の一例)による平文を暗号化した結果の値(すなわち、暗号化されたデータ)を、比較部17aがDRAM11に書き込んだ値に上書きする(ステップS14b)。
When the second comparison unit 22a performs the process of step S11a, the firmware execution unit 24b confirms that an error has occurred in the first hardware 12 due to the error notification from the first hardware 12, and the comparison result storage unit. It is confirmed that the comparison results in the second hardware 25 match by the fluff written in 19b (step S13b).
Then, the firmware execution unit 24b (an example of the writing unit) uses the first encryption control unit 15b (an example of the third encryption unit) via the comparison unit 17b (an example of the second comparison determination unit and an example of the writing unit). ) Is overwritten with the value obtained by encrypting the plaintext (that is, the encrypted data) with the value written in the DRAM 11 by the comparison unit 17a (step S14b).

以上、本発明の一実施形態によるシステム1について説明した。
システム1において、第1ハードウェア12と第2ハードウェア25とを備えるシステムである。第1ハードウェア12は、データを第1暗号化データに暗号化する第1暗号化制御部15aと、前記データを第2暗号化データに暗号化する第2暗号化制御部16aと、第1暗号化データと第2暗号化データとを比較し、一致しているか否かを判定する第1比較部17と、第1暗号化データと第2暗号化データとが一致していないと第1比較部17が判定した場合に、第1暗号化データと第2暗号化データとが一致していないことを第2ハードウェア25に通知する第2比較部22と、を備える。また、第2ハードウェア25は、前記データを第3暗号化データに暗号化する第1暗号化制御部15bと、前記データを第4暗号化データに暗号化する第2暗号化制御部16bと、第3暗号化データと第4暗号化データとを比較し、一致しているか否かを判定する比較部17bと、第1暗号化データと第2暗号化データとが一致していないことを示す通知を第2比較部22から受け、第3暗号化データと第4暗号化データとが一致している場合に、第3暗号化データを比較部17bを介してDRAM11に書き込むファームウェア実行部24bと、を備える。
こうすることで、システム1は、ハードウェアを連続的に稼働したまま暗号化の処理を継続することができる。
The system 1 according to the embodiment of the present invention has been described above.
The system 1 is a system including the first hardware 12 and the second hardware 25. The first hardware 12 includes a first encryption control unit 15a that encrypts data into first encrypted data, a second encryption control unit 16a that encrypts the data into second encrypted data, and a first. If the first comparison unit 17 that compares the encrypted data and the second encrypted data and determines whether or not they match, and the first encrypted data and the second encrypted data do not match, the first When the comparison unit 17 determines, the second comparison unit 22 notifies the second hardware 25 that the first encrypted data and the second encrypted data do not match. Further, the second hardware 25 includes a first encryption control unit 15b that encrypts the data into the third encrypted data, and a second encryption control unit 16b that encrypts the data into the fourth encrypted data. , The comparison unit 17b that compares the third encrypted data and the fourth encrypted data and determines whether or not they match, and that the first encrypted data and the second encrypted data do not match. When the notification is received from the second comparison unit 22 and the third encrypted data and the fourth encrypted data match, the firmware execution unit 24b writes the third encrypted data to the DRAM 11 via the comparison unit 17b. And.
By doing so, the system 1 can continue the encryption process while the hardware is continuously running.

本発明の実施形態による最小構成のシステム1について説明する。
本発明の実施形態による最小構成のシステム1は、図3に示すように、第1ハードウェア12と第2ハードウェア25とを備えるシステムである。
第1ハードウェア12は、第1暗号化部121、第2暗号化部122、第1比較判定部123、通知部124を備える。
第2ハードウェア25は、第3暗号化部251、第4暗号化部252、第2比較判定部253、書き込み部254を備える。
第1暗号化部121は、データを第1暗号化データに暗号化する。
第2暗号化部122は、前記データを第2暗号化データに暗号化する。
第1比較判定部123は、第1暗号化データと第2暗号化データとを比較し、一致しているか否かを判定する。
通知部124は、第1暗号化データと第2暗号化データとが一致していないと第1比較判定部123が判定した場合に、第1暗号化データと第2暗号化データとが一致していないことを第2ハードウェア25に通知する。
第3暗号化部251は、前記データを第3暗号化データに暗号化する。
第4暗号化部252は、前記データを第4暗号化データに暗号化する。
第2比較判定部253は、前記第3暗号化データと前記第4暗号化データとを比較し、一致しているか否かを判定する。
書き込み部254は、第1暗号化データと第2暗号化データとが一致していないことを示す通知を通知部124から受け、第3暗号化データと第4暗号化データとが一致している場合に、第3暗号化データを記憶部に書き込む。
The system 1 having the minimum configuration according to the embodiment of the present invention will be described.
As shown in FIG. 3, the system 1 having the minimum configuration according to the embodiment of the present invention is a system including the first hardware 12 and the second hardware 25.
The first hardware 12 includes a first encryption unit 121, a second encryption unit 122, a first comparison determination unit 123, and a notification unit 124.
The second hardware 25 includes a third encryption unit 251, a fourth encryption unit 252, a second comparison determination unit 253, and a writing unit 254.
The first encryption unit 121 encrypts the data into the first encrypted data.
The second encryption unit 122 encrypts the data into the second encrypted data.
The first comparison determination unit 123 compares the first encrypted data and the second encrypted data, and determines whether or not they match.
When the first comparison determination unit 123 determines that the first encrypted data and the second encrypted data do not match, the notification unit 124 matches the first encrypted data and the second encrypted data. Notify the second hardware 25 that it has not been done.
The third encryption unit 251 encrypts the data into the third encrypted data.
The fourth encryption unit 252 encrypts the data into the fourth encrypted data.
The second comparison determination unit 253 compares the third encrypted data with the fourth encrypted data, and determines whether or not they match.
The writing unit 254 receives a notification from the notification unit 124 indicating that the first encrypted data and the second encrypted data do not match, and the third encrypted data and the fourth encrypted data match. In this case, the third encrypted data is written in the storage unit.

なお、本発明の実施形態における処理は、適切な処理が行われる範囲において、処理の順番が入れ替わってもよい。 In the processing according to the embodiment of the present invention, the order of the processing may be changed as long as the appropriate processing is performed.

本発明の実施形態におけるDRAM11、平文レジスタ14(14a、14b)、比較結果記憶部19(19a、19b)、エラー回数上限レジスタ21(21a、21b)、ハードウェア切り離し記憶部23(23a、23b)、その他の記憶装置のそれぞれは、適切な情報の送受信が行われる範囲においてどこに備えられていてもよい。また、DRAM11、平文レジスタ14(14a、14b)、比較結果記憶部19(19a、19b)、エラー回数上限レジスタ21(21a、21b)、ハードウェア切り離し記憶部23(23a、23b)、その他の記憶装置のそれぞれは、適切な情報の送受信が行われる範囲において複数存在しデータを分散して記憶していてもよい。 DRAM 11, plaintext register 14 (14a, 14b), comparison result storage unit 19 (19a, 19b), error count upper limit register 21 (21a, 21b), hardware detached storage unit 23 (23a, 23b) according to the embodiment of the present invention. , Each of the other storage devices may be provided anywhere as long as appropriate information is transmitted and received. Further, the DRAM 11, the plaintext register 14 (14a, 14b), the comparison result storage unit 19 (19a, 19b), the error count upper limit register 21 (21a, 21b), the hardware disconnection storage unit 23 (23a, 23b), and other storage. Each of the devices may exist in a plurality of devices within a range in which appropriate information is transmitted and received, and the data may be distributed and stored.

本発明の実施形態について説明したが、上述の第1ハードウェア12、第2ハードウェア25、ファームウェア実行部24(24a、24b)、その他の制御装置は内部に、コンピュータシステムを有していてもよい。そして、上述した処理の過程は、プログラムの形式でコンピュータ読み取り可能な記録媒体に記憶されており、このプログラムをコンピュータが読み出して実行することによって、上記処理が行われる。コンピュータの具体例を以下に示す。
図4は、少なくとも1つの実施形態に係るコンピュータの構成を示す概略ブロック図である。
コンピュータ5は、図4に示すように、CPU6、メインメモリ7、ストレージ8、インターフェース9を備える。
例えば、上述の第1ハードウェア12、第2ハードウェア25、ファームウェア実行部24(24a、24b)、その他の制御装置のそれぞれは、コンピュータ5に実装される。そして、上述した各処理部の動作は、プログラムの形式でストレージ8に記憶されている。CPU6は、プログラムをストレージ8から読み出してメインメモリ7に展開し、当該プログラムに従って上記処理を実行する。また、CPU6は、プログラムに従って、上述した各記憶部に対応する記憶領域をメインメモリ7に確保する。
Although the embodiment of the present invention has been described, the above-mentioned first hardware 12, second hardware 25, firmware execution units 24 (24a, 24b), and other control devices may have a computer system inside. good. The process of the above-mentioned processing is stored in a computer-readable recording medium in the form of a program, and the above-mentioned processing is performed by the computer reading and executing this program. A specific example of a computer is shown below.
FIG. 4 is a schematic block diagram showing a configuration of a computer according to at least one embodiment.
As shown in FIG. 4, the computer 5 includes a CPU 6, a main memory 7, a storage 8, and an interface 9.
For example, the first hardware 12, the second hardware 25, the firmware execution units 24 (24a, 24b), and the other control devices described above are each mounted on the computer 5. The operation of each processing unit described above is stored in the storage 8 in the form of a program. The CPU 6 reads the program from the storage 8, expands it into the main memory 7, and executes the above processing according to the program. Further, the CPU 6 secures a storage area corresponding to each of the above-mentioned storage units in the main memory 7 according to the program.

ストレージ8の例としては、HDD(Hard Disk Drive)、SSD(Solid State Drive)、磁気ディスク、光磁気ディスク、CD−ROM(Compact Disc Read Only Memory)、DVD−ROM(Digital Versatile Disc Read Only Memory)、半導体メモリ等が挙げられる。ストレージ8は、コンピュータ5のバスに直接接続された内部メディアであってもよいし、インターフェース9または通信回線を介してコンピュータ5に接続される外部メディアであってもよい。また、このプログラムが通信回線によってコンピュータ5に配信される場合、配信を受けたコンピュータ5が当該プログラムをメインメモリ7に展開し、上記処理を実行してもよい。少なくとも1つの実施形態において、ストレージ8は、一時的でない有形の記憶媒体である。 Examples of the storage 8 include HDD (Hard Disk Drive), SSD (Solid State Drive), magnetic disk, optical magnetic disk, CD-ROM (Compact Disk Read Only Memory), DVD-ROM (Digital Versaille Disk Read). , Semiconductor memory and the like. The storage 8 may be internal media directly connected to the bus of computer 5, or external media connected to computer 5 via an interface 9 or a communication line. When this program is distributed to the computer 5 via a communication line, the distributed computer 5 may expand the program in the main memory 7 and execute the above processing. In at least one embodiment, the storage 8 is a non-temporary tangible storage medium.

また、上記プログラムは、前述した機能の一部を実現してもよい。さらに、上記プログラムは、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるファイル、いわゆる差分ファイル(差分プログラム)であってもよい。上記プログラムは、ファームウェアであってもよい。 Further, the above program may realize a part of the above-mentioned functions. Further, the program may be a file that can realize the above-mentioned functions in combination with a program already recorded in the computer system, that is, a so-called difference file (difference program). The above program may be firmware.

本発明のいくつかの実施形態を説明したが、これらの実施形態は、例であり、発明の範囲を限定しない。これらの実施形態は、発明の要旨を逸脱しない範囲で、種々の追加、省略、置き換え、変更を行ってよい。 Although some embodiments of the present invention have been described, these embodiments are examples and do not limit the scope of the invention. Various additions, omissions, replacements, and changes may be made to these embodiments without departing from the gist of the invention.

1・・・システム
5・・・コンピュータ
6・・・CPU
7・・・メインメモリ
8・・・ストレージ
9・・・インターフェース
11・・・DRAM(Dynamic Random Access Memory)
12・・・第1ハードウェア
13・・・暗号化制御部
14・・・平文レジスタ
15・・・第1暗号化制御部
16・・・第2暗号化制御部
17・・・第1比較部
18・・・データ書き込み部
19・・・比較結果記憶部
20・・・エラー回数カウンタ
21・・・エラー回数上限レジスタ
22・・・第2比較部
23・・・ハードウェア切り離し記憶部
24・・・ファームウェア実行部
25・・・第2ハードウェア
26・・・空きハードウェア記憶部
1 ... System 5 ... Computer 6 ... CPU
7 ... Main memory 8 ... Storage 9 ... Interface 11 ... DRAM (Dynamic Random Access Memory)
12 ... 1st hardware 13 ... Encryption control unit 14 ... Plain register 15 ... 1st encryption control unit 16 ... 2nd encryption control unit 17 ... 1st comparison unit 18 ... Data writing unit 19 ... Comparison result storage unit 20 ... Error count counter 21 ... Error count upper limit register 22 ... Second comparison unit 23 ... Hardware detached storage unit 24 ... -Firmware execution unit 25 ... Second hardware 26 ... Free hardware storage unit

Claims (3)

第1ハードウェアと第2ハードウェアとを備えるシステムであって、
前記第1ハードウェアは、
第1レジスタと、
暗号化される前のデータを前記第1レジスタに格納し、空きハードウェア記憶部が空きハードウェアフラグを記憶しているか否かを判定し、前記空きハードウェアフラグを記憶していると判定した場合、前記データを第2レジスタに格納するファームウェア実行部と、
前記第1レジスタに格納された前記データを第1暗号化データに暗号化する第1暗号化部と、
前記第1レジスタに格納された前記データを第2暗号化データに暗号化する第2暗号化部と、
前記第1暗号化データと前記第2暗号化データとを比較し、一致しているか否かを判定する第1比較判定部と、
前記第1暗号化データと前記第2暗号化データとが一致していないと前記第1比較判定部が判定した場合に、前記第1暗号化データと前記第2暗号化データとが一致していないことを前記第2ハードウェアに通知する通知部と、
を備え、
前記第2ハードウェアは、
前記空きハードウェア記憶部と、
前記第2レジスタと、
前記第2レジスタに格納された前記データを第3暗号化データに暗号化する第3暗号化部と、
前記第2レジスタに格納された前記データを第4暗号化データに暗号化する第4暗号化部と、
前記第3暗号化データと前記第4暗号化データとを比較し、一致しているか否かを判定する第2比較判定部と、
前記第1暗号化データと前記第2暗号化データとが一致していないことを示す通知を前記通知部から受け、前記第3暗号化データと前記第4暗号化データとが一致している場合に、前記第3暗号化データを記憶部に書き込む書き込み部と、
を備えるシステム。
A system with first and second hardware
The first hardware is
1st register and
The data before being encrypted is stored in the first register, it is determined whether or not the free hardware storage unit stores the free hardware flag, and it is determined that the free hardware flag is stored. In this case, the firmware execution unit that stores the data in the second register and
A first encryption unit that encrypts the data stored in the first register into first encrypted data,
A second encryption unit that encrypts the data stored in the first register into second encrypted data, and
A first comparison determination unit that compares the first encrypted data and the second encrypted data and determines whether or not they match.
When the first comparison determination unit determines that the first encrypted data and the second encrypted data do not match, the first encrypted data and the second encrypted data match. A notification unit that notifies the second hardware that there is no data,
With
The second hardware is
The free hardware storage unit and
With the second register
A third encryption unit that encrypts the data stored in the second register into third encrypted data, and
A fourth encryption unit that encrypts the data stored in the second register into fourth encrypted data, and
A second comparison determination unit that compares the third encrypted data and the fourth encrypted data and determines whether or not they match.
When a notification indicating that the first encrypted data and the second encrypted data do not match is received from the notification unit, and the third encrypted data and the fourth encrypted data match. In addition, a writing unit that writes the third encrypted data to the storage unit,
System with.
前記第1暗号化データと前記第2暗号化データとが一致していないことをエラー回数としてカウントするエラー回数カウンタ、
を備え、
前記通知部は、
前記エラー回数カウンタが前記エラー回数の上限に達した場合に、前記第1暗号化データと前記第2暗号化データとが一致していないことを前記第2ハードウェアに通知する、
請求項1に記載のシステム。
An error count counter that counts the fact that the first encrypted data and the second encrypted data do not match as the number of errors.
With
The notification unit
When the error count counter reaches the upper limit of the error count, the second hardware is notified that the first encrypted data and the second encrypted data do not match.
The system according to claim 1.
第1レジスタを有する第1ハードウェアと、空きハードウェア記憶部および第2レジスタを有する第2ハードウェアとを備えるシステムによる暗号化処理方法であって、
暗号化される前のデータを前記第1レジスタに格納し、空きハードウェア記憶部が空きハードウェアフラグを記憶しているか否かを判定し、前記空きハードウェアフラグを記憶していると判定した場合、前記データを前記第2レジスタに格納することと、
前記第1レジスタに格納された前記データを第1暗号化データに暗号化することと、
前記第1レジスタに格納された前記データを第2暗号化データに暗号化することと、
前記第1暗号化データと前記第2暗号化データとを比較し、一致しているか否かを判定することと、
前記第1暗号化データと前記第2暗号化データとが一致していないと判定した場合に、前記第1暗号化データと前記第2暗号化データとが一致していないことを前記第2ハードウェアに通知することと、
前記第2レジスタに格納された前記データを第3暗号化データに暗号化することと、
前記第2レジスタに格納された前記データを第4暗号化データに暗号化することと、
前記第3暗号化データと前記第4暗号化データとを比較し、一致しているか否かを判定することと、
前記第1暗号化データと前記第2暗号化データとが一致していないことを示す通知を受け、前記第3暗号化データと前記第4暗号化データとが一致している場合に、前記第3暗号化データを記憶部に書き込むことと、
を含む暗号化処理方法。
An encryption processing method by a system including a first hardware having a first register, a free hardware storage unit, and a second hardware having a second register.
The data before being encrypted is stored in the first register, it is determined whether or not the free hardware storage unit stores the free hardware flag, and it is determined that the free hardware flag is stored. In the case, storing the data in the second register and
To encrypt the data stored in the first register into the first encrypted data, and
To encrypt the data stored in the first register into the second encrypted data,
Comparing the first encrypted data with the second encrypted data to determine whether or not they match, and
When it is determined that the first encrypted data and the second encrypted data do not match, the second hardware indicates that the first encrypted data and the second encrypted data do not match. Notifying the ware and
To encrypt the data stored in the second register into the third encrypted data, and
To encrypt the data stored in the second register into the fourth encrypted data, and
Comparing the third encrypted data with the fourth encrypted data to determine whether or not they match, and
When the notification indicating that the first encrypted data and the second encrypted data do not match is received and the third encrypted data and the fourth encrypted data match, the first 3 Writing encrypted data to the storage unit and
Cryptographic processing method including.
JP2018234320A 2018-12-14 2018-12-14 System and encryption processing method Active JP6923250B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018234320A JP6923250B2 (en) 2018-12-14 2018-12-14 System and encryption processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018234320A JP6923250B2 (en) 2018-12-14 2018-12-14 System and encryption processing method

Publications (2)

Publication Number Publication Date
JP2020096314A JP2020096314A (en) 2020-06-18
JP6923250B2 true JP6923250B2 (en) 2021-08-18

Family

ID=71085141

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018234320A Active JP6923250B2 (en) 2018-12-14 2018-12-14 System and encryption processing method

Country Status (1)

Country Link
JP (1) JP6923250B2 (en)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2561181B2 (en) * 1991-05-13 1996-12-04 財団法人鉄道総合技術研究所 Clock synchronous dual circuit
JP3257506B2 (en) * 1998-04-24 2002-02-18 日本電気株式会社 Highly reliable encryption mechanism
ATE537502T1 (en) * 2007-03-29 2011-12-15 Fujitsu Ltd INFORMATION PROCESSING APPARATUS AND ERROR PROCESSING METHOD
US9952579B2 (en) * 2013-02-15 2018-04-24 Mitsubishi Electric Corporation Control device

Also Published As

Publication number Publication date
JP2020096314A (en) 2020-06-18

Similar Documents

Publication Publication Date Title
KR101047213B1 (en) Encryption apparatus, encryption method and computer readable recording medium
CN102262721B (en) Data encryption for independent agency is changed
JP2005504373A (en) Method and apparatus for data encryption / decryption in mass storage device
EP2722787A1 (en) Method and apparatus for writing and reading encrypted hard disk data
JP2008109611A (en) Encryption conversion apparatus, encryption conversion method, and encryption conversion program
TWI675311B (en) Method and device for processing ciphertext data to change confidentiality in database
CN116011041B (en) Key management method, data protection method, system, chip and computer equipment
US8943328B2 (en) Key rotation for encrypted storage media
WO2015087426A1 (en) Storage device and storage device control method
CN112088376A (en) A file storage method, device and storage medium
JPWO2009075353A1 (en) Distributed information generation apparatus, restoration apparatus, verification apparatus, and secret information distribution system
CN110673863B (en) Smart lock system that supports pluggable external storage and smart upgrade methods
JP4828155B2 (en) Storage system
US8090978B2 (en) Protection of data on failing storage devices
US12166873B2 (en) Updateable encryption in self encrypting drives
JP6923250B2 (en) System and encryption processing method
JP5266713B2 (en) Information processing apparatus, program, external encryption system, and external encryption method
JP2010165206A (en) Memory controller and nonvolatile storage device
JP2019095969A (en) Semiconductor device, authentication system and authentication method
US20070168284A1 (en) Management of encrypted storage media
US20150249467A1 (en) Storage device, controller, and data writing method
CN110598403B (en) Process data protection method
JP2021072047A (en) Security management system and security management method
JP2012252532A (en) Data restoration control method and recording device
CN114095175B (en) A grayscale verifiable data security method, device and storage medium

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200406

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210203

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210316

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210517

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210721

R150 Certificate of patent or registration of utility model

Ref document number: 6923250

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150