JP2004336344A - Encrypting/decrypting device - Google Patents

Encrypting/decrypting device Download PDF

Info

Publication number
JP2004336344A
JP2004336344A JP2003129048A JP2003129048A JP2004336344A JP 2004336344 A JP2004336344 A JP 2004336344A JP 2003129048 A JP2003129048 A JP 2003129048A JP 2003129048 A JP2003129048 A JP 2003129048A JP 2004336344 A JP2004336344 A JP 2004336344A
Authority
JP
Japan
Prior art keywords
encryption
decryption
encryption key
key information
command
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.)
Withdrawn
Application number
JP2003129048A
Other languages
Japanese (ja)
Inventor
Noriyuki Suzuki
範之 鈴木
Makoto Kobayashi
誠 小林
智行 ▲高▼田
Satoyuki Takada
Hiroyasu Ito
博康 伊藤
Kyohei Inukai
恭平 犬飼
Takeshi Toyama
猛 外山
Tadashi Takayama
正 高山
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2003129048A priority Critical patent/JP2004336344A/en
Publication of JP2004336344A publication Critical patent/JP2004336344A/en
Withdrawn legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To provide a encrypting/decrypting device which is secure even when the encrypting/decrypting device is stolen together with a storage device or a storage medium. <P>SOLUTION: In the encrypting/decrypting device provided with a 1st interface means to be connected to a master device, a 2nd interface means to be connected to a storage device, an encryption key information storage means for storing encryption key information, an encryption key information setting means for setting prescribed encryption key information in the encryption key information storage means, and an encrypting/decrypting means for encrypting/decrypting data on the basis of the encryption key information stored in the encryption key information storage means and constituted so as to encrypt/decrypt data transferred between the 1st and 2nd interfaces, the encryption key information is set by a prescribed encryption key setting command issued through the 1st interface means. <P>COPYRIGHT: (C)2005,JPO&NCIPI

Description

【0001】
【発明の属する技術分野】
本発明は記憶データの暗復号化装置に関するものである。
【0002】
【従来の技術】
ハードディスク等の記憶装置にデータを記憶させるのに、書き込み時にデータを暗号化し、読み込み時にデータを複合化する装置が知られている。例えば、特開平11−85621には、コンピュータシステムと外部記憶装置と接続するインターフェース上に挿入されるタイプの暗復号化装置が開示されている。また特許第2600643号には、SCSIインターフェース上に挿入するタイプのファイル暗号装置が開示されている。このようなインターフェース上に挿入するタイプの暗復号化装置は、既存のコンピュータ資産にも適用可能であり、加えて暗復号化処理をハードウェア化することも可能なため、大容量または多数のデータをしばしば暗復号化して利用する場合に好適なものである。
【0003】
【発明が解決しようとする課題】
ところで、このような記憶装置に対する暗復号化装置は基本的にデータの盗用・漏洩を防止することを目的としている。つまりデータを記憶させてある記憶装置ないしは記憶媒体が盗まれてしまった場合でも、データを暗号化しておくことで盗用や漏洩を防止しようとするものである。
【0004】
暗号化によってデータの盗用・漏洩を防止する際、最も大切なのは暗号化する際に使用した暗号鍵情報を盗まれないようにしておくことである。さらに、暗号鍵情報が万一漏洩してしまったときに備えて、ファイル毎あるいは記憶媒体毎など、適宜の情報単位で使用する暗号鍵情報を違えておくのも被害を最小限にとどめるために効果的な手段である。
【0005】
しかしながら上記従来技術前者の第一実施例では、暗号鍵情報が暗復号化装置内に不揮発に保持される構成になっているため、記憶装置と暗復号化装置を一緒に盗まれてしまえばデータは簡単に復号されてしまう。上記従来技術前者の第二実施例では暗号鍵情報が取り外し可能なICカードに保持される構成になっているため、上記の第一実施例よりは安全性が向上しているといえるが、記憶装置、暗復号化装置、ICカードを一緒に盗まれてしまえば、やはりデータは簡単に復号されてしまう。
【0006】
また上記従来技術前者の第二実施例においては、複数のICカードを準備しておき、これを取り替えながら使用すれば、記憶媒体毎などで違った暗号鍵情報を適用することができるが、ICカードの数が増えてくると、どのICカードがどの暗号鍵情報であったかを管理するのが大変になってくる。さらに上記従来技術前者の第二実施例においてはICカードを取り外すことで暗復号化機能を停止させることができるが、例えばファイル毎に暗号化する/しないという運用を行いたい場合は、その都度ICカードを抜き差ししなければならない。
【0007】
上記従来技術後者の場合も、暗号鍵情報(装置キー)が暗復号化装置(ファイル暗号装置)内に保持される構成になっているため、記憶装置(外部ファイル装置)と暗復号化装置が一緒に盗まれてしまえば、データが簡単に復号されてしまうことにかわりはない。また上記従来技術後者では、暗号鍵情報をファイル装置毎に変更したり、暗号化の使用/不使用を選択したりすることが可能であるが、その設定には外部に別途端末装置を必要とする構成になっている。さらにファイル毎に異なった暗号鍵情報を適用して記憶することについては何の考慮もされていない。
【0008】
本発明はこうした従来技術の不備に鑑みてなされたものであり、その目的は暗復号化装置が記憶装置あるいは記憶媒体と一緒に盗まれてしまった場合でも安全な暗復号装置を提供することにある。
【0009】
また本発明の他の目的は、別途の端末装置等を用いずに、暗号鍵情報の変更や暗復号化機能の使用/不使用等の設定をより簡単かつ柔軟に実施することのできる暗復号化装置を提供することにある。
【0010】
【課題を解決するための手段】
本発明によれば、上位装置と接続される第一インターフェース手段と、記憶装置と接続される第二インターフェース手段と、暗号鍵情報を記憶しておく暗号鍵情報記憶手段と、該暗号鍵情報記憶手段に所定の暗号鍵情報を設定する暗号鍵情報設定手段と、上記暗号鍵情報記憶手段に記憶された暗号鍵情報に基づいてデータの暗復号化を行う暗復号化手段とを備え、上記第一、第二インターフェース間に転送されるデータを暗復号化する暗復号化装置において、上記第一インターフェース手段を介して発行される所定の暗号鍵設定コマンドによって上記暗号鍵情報の設定を行うようにしたものである。
【0011】
また上記暗復号化手段が、上記第一インターフェース手段を介して発行される所定の暗復号化機能開始コマンドおよび暗復号化機能停止コマンドに基づいて暗復号化機能を実行するようにした。
【0012】
また上記暗復号化手段が、上記暗号鍵情報記憶手段に記憶された暗号鍵情報が所定の値であった場合には暗復号化を行わないようにした。
【0013】
さらに上記第二インターフェース手段に接続される記憶装置の所定の記憶領域ないしは所定の記憶手段に暗復号化機能の使用/不使用の設定情報を記憶しておき、上記暗復号化手段が、上記第二インターフェース手段を介して読み取った上記暗復号化機能の使用/不使用の設定情報に基づいて暗復号化機能を実行するようにした。
【0014】
【発明の実施の形態】
図1は本発明を実施した暗復号装置と、上位装置、記憶装置との接続状態を示す図である。図中1は、記憶データの暗復号化を実行する暗復号装置である。暗復号装置1とパーソナルコンピュータ等の上位装置2とは、ATAインターフェースによって接続される。3はデータを記憶する記憶装置であり、本実施例においては例えばiVDRディスクのような可搬型記憶装置になっている。なおiVDRディスクは、2.5インチ型のハードディスク装置をベースとした可搬型記憶装置で、去る2002年3月6日にiVDRハードディスクドライブ・コンソーシアム(http://www.ivdr.org)によって発表されたものである。(「iVDR」はiVDRハードディスクドライブ・コンソーシアムの商標。)
暗復号化装置1と可搬型記憶装置3とは、コネクタ4、5で相互に接続されており使用者によって適宜着脱が可能である。また暗復号化装置1は、上位装置2の汎用の拡張ベイ(例えば、デスクトップ型パーソナルコンピュータの5インチベイ)に格納される形状になっていて、共通の筐体6に収納されている。すなわち暗復号化装置1、上位装置2、可搬型記憶装置3とで、暗復号化機能付の可搬型記憶装置を備えたパーソナルコンピュータ等の電子機器が構成される。ここで上位装置2から/への記憶データは、暗復号化装置1によって暗復号化されるので、可搬型記憶装置3には暗号化されたデータが読み書きされるようになっている。
【0015】
図2に暗復号化装置1の詳細な構成図を示す。図中30は装置全体の制御を司るCPUである。CPU30のバス上には、暗復号化回路31、第一ATAインターフェース回路32、第二インターフェース回路35、ROM36、RAM37が接続されている。第一ATAインターフェース回路32は上位装置2と接続されるATAインターフェース回路で、34はその接続用コネクタである。第一ATAインターフェース回路32は、33のバッファRAMを備えており、上位装置2が行うATAレジスタに対するアクセス内容をCPU30の指示に基づいて、一旦このバッファRAM33に蓄積することもできるようになっている。なおバッファRAM33に蓄積した場合は、第一ATAインターフェース回路32から暗復号化回路31への出力は行われない。またバッファRAM33の蓄積内容は、CPU30から読出し可能である。第二インターフェース回路35は可搬型記憶装置3と接続されるATAインターフェース回路であり、5は図1でも説明したその接続用コネクタである。なお図1の構成では、第二ATAインターフェース回路35の先に一台の可搬型記憶装置しか接続されていないが、マスタ、スレーブ二台の可搬型記憶装置を接続することも、もちろん可能である。
【0016】
第一ATAインターフェース回路32と第二ATAインターフェース回路35は暗復号化回路31を介しても相互に接続されている。上記装置2から書き込みデータは暗復号化回路31で暗号化された後、可搬型記憶装置3に書き込まれる。また可搬型記憶装置3に記憶されたデータは暗復号化装置31で復号化されて、上記装置2に読み込まれる。なお暗復号化処理には、DES、RC4などの周知のアルゴリズムが用いられる。また暗復号化処理は暗復号化装置内31にある暗号鍵レジスタの値に基づいて実行される。この暗号鍵レジスタはCPU30の制御に基づいて、任意の値に設定できるようになっている。なお暗号鍵レジスタは通常のフリップフロップ素子などで構成されており、設定された値を不揮発に保持するものではない。また暗復号化装置31は常にデータの暗復号化を行うわけではなく、CPU30からの指示に基づいて暗復号化機能の開始/停止を設定できるようになっている。暗復号化機能が停止されているとき、暗復号化回路31は第一ATAインターフェース回路31と第二ATAインターフェース回路35との間で、暗復号化を実行することなく普通にデータを転送する。
【0017】
ROM36にはCPU30の動作プログラムや各種テーブルデータが格納され、RAM37には各種作業領域などが設けられる。なお図3、4では、バッファRAM33とRAM37を別々の構成要素としたが、これらを一系統のRAMで兼用するようにしても、もちろんよい。
【0018】
ところで本実施例では、ATAインターフェースに対して3つの新しいコマンドを定義することする。ひとつは暗号鍵設定コマンドである。暗復号化装置1が上位装置2よりこのコマンドを受領した場合は、当該コマンドのコマンドパラメータで指定されている値を、上記暗号鍵レジスタに設定するようになっている。残り二つのコマンドは暗復号化機能の開始/停止コマンドである。暗復号化装置1が上位装置2より暗復号化機能開始コマンドを受領した場合は暗復号化回路31の暗復号化を開始し、暗復号化機能停止コマンドを受領した場合は、暗復号化回路31の暗復号化を停止するようになっている。これらのコマンドはATAインターフェースのベンダー定義コマンドを利用して新規に定義する。
【0019】
つぎに図3、4のフローチャートを用いて、暗復号化装置1内のCPU30の、本発明の主旨にかかる暗復号化動作について説明する。まずステップ100で暗復号化回路31内の暗号鍵レジスタを「0」にクリアする。そしてRAM37内に暗復号化フラグ領域を設けておき、当該暗復号化フラグをクリアする。
【0020】
ついで、ステップ101においてバッファRAM33の内容をクリアした上でバッファRAM33の蓄積を有効にする。この状態で上位装置2からATAレジスタに対して何らかのアクセスがなされたとき、そのアクセス内容はバッファRAM33に一旦蓄積される。そこでステップ102でまず当該アクセスが暗号鍵設定コマンドであるか否かを判定する。暗号鍵設定コマンドであった場合は、ステップ103でコマンド発行かステータスリードかを判定し、コマンド発行(書き込み)であった場合はステップ104でコマンドパラメータで指定されている値を暗復号化回路31内の暗号鍵レジスタに設定する。またステータスリード(読み込み)であった場合は、ステップ105で暗号鍵設定コマンドに対する戻り値を第一ATAインターフェース回路32に出力する。なお暗号鍵情報(暗号鍵レジスタに設定する値)としては、使用者が暗復号化の際に使用するパスワード/パスフレーズといったものをそのまま利用してもよいし、当該パスワード/パスフレーズに所定の変換処理を施し、その結果得られた値を利用するようにしてもよい。
【0021】
さてステップ102に戻り、暗号鍵設定コマンドでなかった場合はステップ106で暗復号化機能開始コマンドであるか否かを判定する。暗復号化機能開始コマンドであった場合は、ステップ107でコマンド発行かステータスリードかを判定し、コマンド発行であった場合はステップ108で上記暗復号化フラグをセットする。またステータスリードであった場合は、ステップ109で暗復号化機能開始コマンドに対する戻り値を第一ATAインターフェース回路32に出力する。
【0022】
ステップ106に戻り、暗号鍵設定コマンドでなかった場合はステップ110で暗復号化機能停止コマンドであるか否かを判定する。暗復号化機能停止コマンドであった場合は、ステップ111でコマンド発行かステータスリードかを判定し、コマンド発行であった場合はステップ112で上記暗復号化フラグをクリアする。またステータスリードであった場合は、ステップ113で暗復号化機能停止コマンドに対する戻り値を第一ATAインターフェース回路32に出力する。
【0023】
以上説明した三つのコマンドは暗復号化に関連した新規定義のコマンドである。したがって可搬型記憶装置3に対して出力する必要がない。そこで以上説明したステップ102〜113までの処理で暗復号化装置1内において当該コマンドを受領・処理し、可搬型記憶装置3へは(言い換えるなら第二ATAインターフェース回路35へは)何らの出力もなされないようになっているわけである。
【0024】
ステップ110に戻り、暗復号化機能停止コマンドでなかった場合は暗復号化に関する新規定義のコマンドではないわけであるから、当該ATAレジスタに対するアクセスは可搬型記憶装置3に対するアクセスであると判定できる。そこでステップ114においてバッファRAM33に蓄積されたアクセス内容を読み出して、第二ATAインターフェース回路35にそのまま出力し(この際暗復号化回路31は経由せず、CPUバスを介して第二ATAインターフェース回路35に出力する。)、ステップ115でバッファRAM33の蓄積を無効にする。バッファRAM33の蓄積を無効としたので、以後上記装置2のATAレジスタに対するアクセスは、直ちに暗復号化回路31に出力される。
【0025】
ところでATAレジスタに対するアクセスがRAM33に蓄積されている間、暗復号化装置1および可搬型記憶装置3は、上位装置2に対して何の反応も示すことができない。コマンド発行の場合はそれでも問題はないが、ステータスリードの場合はそういうわけにも行かない。そこで第一ATAインターフェース回路32は必要に応じて、上位装置2のATAレジスタに対するアクセスをバッファRAM33に蓄積してから所定期間の間、IORDY信号をネゲートして上位装置2に対してウェイトを掛けるようになっている。
【0026】
つぎにステップ116でバッファRAM33から読み出したアクセス内容がコマンドの発行であるかステータスリードであるかを判定する。またステップ117において当該アクセス内容がデータ転送を伴うリードまたはライトに関するコマンド(具体的にはREAD BUFFER、READ DMA、READ DMA QUEUED、READ SECTOR(S)、READ MULTIPLE、WRITE BUFFER、WRITE DMA、WRITE DMA QUEUED、WRITE SECTOR(S)、WRITE MULTIPLEコマンド等。)であるか否かを判定する。さらにステップ118において暗復号化フラグがセットされているか否かを判定する。データ転送を伴うリードまたはライトに関するコマンドでない、ステータスリードである、暗復号化フラグがクリアされている、のいずれかの場合には、ステップ119で暗復号化回路31の暗復号化機能を停止する。したがって以後のデータ転送やコマンドに対する可搬型記憶装置3からの戻り値(ステータスリード)は、第一ATAインターフェース回路32と第二ATAインターフェース回路35との間で、暗復号化が実行されることなく転送される。
【0027】
一方、リードまたはライトに関するコマンドの発行であり、かつ暗復号化フラグがセットされている場合には、ステップ120で暗復号化回路31の暗復号化機能を開始する。したがって以後のデータ転送(DMA転送やPIO転送でのデータレジスタへのアクセス)は、第一ATAインターフェース回路32と第二ATAインターフェース回路35との間で所定の暗復号化が実行された上で転送される。
【0028】
ところで暗復号化処理は暗復号化回路31によってハードウェアで処理されるが、それでも若干の遅延時間は生じてしまう。そこで第一ATAインターフェース回路31は、必要に応じて所定期間の間(その遅延時間分)、上位装置2に対してIORDY信号を遅延させて(PIO転送の場合はウェイトを掛けるべくネゲートして)出力するようになっている。
【0029】
そしてステップ121でデータ転送が終了するのを待機し、ステップ102へ戻る。以後はステップ102からの処理を繰り返し実行する。つまり以上の処理によって、以下のことが実現される。
【0030】
1)暗復号化の設定に関する新規定義のコマンドは、暗復号化装置1で処理されて可搬型記憶回路3へは出力されない。
【0031】
2)暗復号化フラグが設定されているときの、記憶データの転送に関してのみ暗復号化が実行される。コマンド発行(コントロールブロックレジスタへのアクセスを含む。)とそれに対応するステータスリード、および記憶データの転送に関係ないコマンド(IDENTIFY DEVICE等のPIO data in/outコマンド)のデータ転送に関して暗復号化は実行されない。
【0032】
3)暗復号化処理の開始/停止を随時任意に設定可能である。これによりファイル毎に暗復号化を使用/不使用とする運用が可能となる。(ディレクトリ情報は暗復号化せず、個々のファイル内容だけを暗復号化することもできる。)
4)暗号鍵情報を随時任意に設定可能である。これにより記憶装置毎、パーティション毎、ファイル毎などで異なった暗号鍵情報を使用できる。
【0033】
5)暗号鍵情報は暗復号化装置、記憶装置のどちらにも不揮発には保持されない。これにより、たとえ暗復号化装置と記憶装置を一緒に盗まれてしまった場合でも、データが復号されることがない。
【0034】
なお図3、4のフロー図では、暗号鍵レジスタの内容を(リセット後の初期化以外では)特にクリアするようにはしていないが、データ転送が終了後に上位装置2から暗号鍵設定コマンドをその都度発行して、毎回暗号鍵レジスタの内容をクリアするようにしてもよい。
【0035】
以上説明してきたように本実施例によれば、暗復号化装置と記憶装置とが一緒に盗まれてしまった場合でも従来よりも安全性が高く、しかもファイル毎、記憶装置毎などで暗号鍵情報を変えて暗号化したり、ファイル毎の暗号化/非暗号化を簡単に指示することも可能な暗復号化装置を実現することができる。
【0036】
なお以上の説明では、暗復号化装置と、上位装置、可搬型記憶装置を接続するインターフェースとしてATAインターフェースを例に説明を行ったが、本発明はこれに限定されることなく、SCSI、IEEE1394、USBなど、他のインターフェースであっても良いことは言うまでもない。
【0037】
(第2の実施例)
さて上記実施例では、記憶するデータの暗復号化/非暗復号化は上位装置2からの指示にのみ基づいて実行される。このことはデータの暗復号化/非暗復号化が、使用者の操作のみに委ねられているということである。しかしながら可搬型記憶装置を複数の人間で共有する場合などは、不用意に暗号化したデータを記憶させたくない場合も考えられる。また自分の可搬型記憶装置を一時的に他人に貸す場合に、平文のデータを読み書きすることや、暗号化されているデータを復号化して読み出すこと(もちろん暗復号化に係るパスワード/パスフレーズ等は口頭などで通達してあるものとする)は構わないが、新規に暗号化データを書き込まれるのは困るといったことも想定される。そこで本実施例では、記憶装置側に暗復号化機能の使用/不使用の設定情報を予め記憶させておき、暗復号化装置がこれを読み取ってデータの暗復号化を実行する/しないようにした。
【0038】
図5は本実施例における暗復号化装置の構成図である。上記実施例における構成(図2)と異なるのは、可搬型記憶装置3の装着を検知する装着検知スイッチ38が追加になっている点である。装着検知スイッチ38はCPUバスを介してCPU30に接続されている。可搬型記憶装置3の装着により装着検知スイッチ38は押圧され、そのときのエッジ信号によりCPU30で可搬型記憶装置3の新規の装着を検知できるようになっている。
【0039】
つぎに図5、6のフローチャートを用いて、暗復号化装置1内のCPU30の、本実施例での動作について説明する。まず前提として、可搬型記憶装置3の所定の記憶領域に暗復号化機能を使用するのかしないのかの設定情報が予め記憶されている。所定の記憶領域とは、例えば上位装置2のOSでは使用されない特定の領域などである。記憶媒体上の所定の記憶領域ではなく、可搬型記憶装置3内のフラッシュメモリなど別の記憶手段上に記憶しておくのでも、もちろんよい。当該設定情報の記憶の仕方については特に詳しく述べないが、例えば所定のユーティリティソフトウェアを使用するなどして、使用者が適宜に設定した情報を記憶すればよい。なお当該設定情報は、暗号化機能の使用/不使用、復号化機能の使用/不使用とが独立に設定されている。
【0040】
まずステップ200で暗号鍵レジスタをクリアする。そしてRAM37内に暗号化フラグ、復号化フラグ領域を設けておき、当該暗号化フラグ、復号化フラグをクリアする。つぎにステップ201で、可搬型記憶装置3が新規に装着されたか否かを判定する。新規に装着されている場合は、ステップ202で上記所定の記憶領域に記憶させておいた暗復号化機能を使用/不使用の設定情報を読み込む。ステップ203で暗号化の使用/不使用の設定を判定する。使用に設定されている場合は、ステップ204で暗号化フラグをセットする。同様にステップ205で復号化の使用/不使用の設定を判定する。使用に設定されている場合は、ステップ206で復号化フラグをセットする。なお暗復号化機能の使用/不使用の設定情報の読み込みは毎回行われるわけではなく、可搬型記憶装置3が新規に装着されたときに1回だけ実行される。
【0041】
ステップ201に戻り、可搬型記憶装置3の新規装着が検知されなかった場合は、ステップ207でバッファRAM33の内容をクリアした上でバッファRAM33の蓄積を有効にする。そしてステップ208でバッファRAM33に蓄積されたアクセス内容が暗号鍵設定コマンドであるか否かを判定する。暗号鍵設定コマンドであった場合は、ステップ209でコマンド発行かステータスリードかを判定し、コマンド発行であった場合はステップ210でコマンドパラメータで指定されている値を暗復号化回路31内の暗号鍵レジスタに設定する。またステータスリードであった場合は、ステップ211で暗号鍵設定コマンドに対する戻り値を第一ATAインターフェース回路32に出力する。
【0042】
ステップ209に戻り、暗号鍵設定コマンドでなかった場合はステップ212においてバッファRAM33に蓄積されたアクセス内容を読み出して、第二ATAインターフェース回路35にそのまま出力し、ステップ213でバッファRAM33の蓄積を無効にする。
【0043】
つぎにステップ214でバッファRAM33から読み出したアクセス内容がコマンドの発行であるかステータスリードであるかを判定する。またステップ215において暗号鍵レジスタの内容が「0」であるか否かを判定する。さらにステップ216において当該アクセス内容が、データ転送を伴うリードまたはライトに関するコマンドであるかを判定する。ステータスリードである、暗号鍵レジスタの内容が「0」である、データ転送を伴うリードまたはライトに関するコマンドでない、のいずれかの場合には、ステップ219で暗復号化回路31の暗復号化機能を停止する。ステップ216に戻り、データ転送を伴うリードに関するコマンドの発行であり、かつ暗号鍵レジスタの内容が「0」でない場合には、ステップ218で復号化フラグがセットされているか否かを判定する。さらにステップ216でデータ転送を伴うライトに関するコマンドの発行であり、かつ暗号鍵レジスタの内容が0でない場合には、ステップ219で暗号化フラグがセットされているか否かを判定する。いずれも復号化フラグまたは暗号化フラグがセットされている場合、ステップ210で暗復号化回路31の暗復号化機能を開始し、クリアされている場合は、ステップ219で暗復号化回路31の暗復号化機能を停止する。そしてステップ221でデータ転送が終了するのを待機し、ステップ201へ戻る。以後はステップ201からの処理を繰り返し実行する。つまり以上の処理によって、以下のことが実現される。
【0044】
1)暗号化処理の開始/停止の設定を暗号鍵情報の内容によって行うようにした。すなわち、上記実施例で用いた暗復号化機能開始/停止コマンドを不要とした。
【0045】
2)可搬型記憶装置3上の所定の記憶領域に記憶してある、暗復号化機能を使用/不使用の設定が、個別の暗復号化処理の開始/停止の設定に優先する。すなわち、可搬型記憶装置3に暗復号化機能使用/不使用の属性を持たせることができる。
【0046】
3)暗号化機能と複合化機能の使用/不使用の設定は、独立に行うことができる。
【0047】
以上説明してきたように本実施例によれば、可搬型記憶装置側に暗復号化機能の使用/不使用の設定情報を予め記憶させておき、暗復号化装置がこれを読み取ってデータの暗復号化を実行する/しないようにしたので、共有化している可搬型記憶装置にうっかり暗号化してデータを記憶してしまうのを防止したり、他人に可搬型記憶装置を貸す場合に、一時的に暗復号化機能を使用停止するなど、暗復号化に関する柔軟な運用が可能となる。
【0048】
【発明の効果】
以上説明してきたように、本発明によれば暗復号化装置と記憶装置とが一緒に盗窃されてしまった場合でも、データを復号化されることのない高い安全性を有する暗復号化装置を実現することができる。さらにファイル毎、記憶装置毎などで暗号鍵情報を変えて暗号化する、ファイル毎に暗号化/非暗号化して記憶する、可搬型記憶装置に暗復号化機能の使用/不使用の属性を持たせることができるなど、暗復号化に関して柔軟な運用を行うことが可能であるという優れた効果を有している。しかも種々の設定・変更等を行うのに、上位装置以外に別途、端末装置等を準備する必要は全くない。
【図面の簡単な説明】
【図1】本発明を実施した暗復号装置、上位装置、記憶装置との接続状態を示す図
【図2】暗復号化装置1の構成図
【図3】本発明の主旨にかかる暗復号化動作のフローチャート
【図4】本発明の主旨にかかる暗復号化動作のフローチャート
【図5】第二実施例での暗復号化装置1の構成図
【図6】第二実施例における暗復号化動作のフローチャート
【図7】第二実施例における暗復号化動作のフローチャート
【符号の説明】
1 暗復号化装置
2 上位装置
3 可搬型記憶装置
4、5 コネクタ
6 共通筐体
30 CPU
31 暗復号化回路
32 第一ATAインターフェース回路
33 バッファRAM
34 コネクタ
35 第二ATAインターフェース回路
36 ROM
37 RAM
38 装着検知スイッチ
[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to an encryption / decryption device for stored data.
[0002]
[Prior art]
In order to store data in a storage device such as a hard disk, a device that encrypts data at the time of writing and decrypts the data at the time of reading is known. For example, Japanese Patent Application Laid-Open No. H11-85621 discloses an encryption / decryption device of a type inserted on an interface connecting a computer system and an external storage device. Japanese Patent No. 2600643 discloses a file encryption device of a type that is inserted on a SCSI interface. An encryption / decryption device of the type inserted on such an interface can be applied to existing computer resources, and in addition, since encryption / decryption processing can be implemented by hardware, a large capacity or a large number of data can be obtained. Is often used when it is used after being decrypted.
[0003]
[Problems to be solved by the invention]
Incidentally, an encryption / decryption device for such a storage device basically aims at preventing data from being stolen and leaked. That is, even if a storage device or a storage medium storing data is stolen, the data is encrypted to prevent plagiarism and leakage.
[0004]
In preventing data from being stolen or leaked by encryption, the most important thing is to prevent the encryption key information used for encryption from being stolen. Furthermore, in order to minimize damage, it is also possible to use different encryption key information in appropriate information units, such as files or storage media, in case encryption key information is leaked. It is an effective means.
[0005]
However, in the first embodiment of the prior art, since the encryption key information is held in a non-volatile manner in the encryption / decryption device, if the storage device and the encryption / decryption device are stolen together, the data will be lost. Is easily decrypted. In the second embodiment of the prior art, since the encryption key information is stored in a removable IC card, it can be said that the security is improved as compared with the first embodiment. If the device, the encryption / decryption device, and the IC card are stolen together, the data is easily decrypted.
[0006]
In the second embodiment of the prior art, if a plurality of IC cards are prepared and used while replacing them, different encryption key information can be applied to each storage medium. As the number of cards increases, it becomes difficult to manage which IC card has which encryption key information. Further, in the second embodiment of the prior art, the encryption / decryption function can be stopped by removing the IC card. However, for example, when it is desired to perform encryption / non-encryption for each file, the IC You have to remove and insert the card.
[0007]
Also in the latter case of the prior art, since the encryption key information (device key) is held in the encryption / decryption device (file encryption device), the storage device (external file device) and the encryption / decryption device are used. Once stolen, the data is still easy to decrypt. In the latter case, it is possible to change the encryption key information for each file device and to select use / non-use of encryption. However, the setting requires an external terminal device separately. Configuration. Further, no consideration is given to the storage of different encryption key information applied to each file.
[0008]
The present invention has been made in view of such deficiencies in the prior art, and an object of the present invention is to provide a secure encryption / decryption device even if the encryption / decryption device is stolen together with a storage device or a storage medium. is there.
[0009]
Another object of the present invention is to provide an encryption / decryption method capable of changing encryption key information and setting / non-use of an encryption / decryption function more easily and flexibly without using a separate terminal device or the like. To provide a chemical conversion device.
[0010]
[Means for Solving the Problems]
According to the present invention, first interface means connected to a higher-level device, second interface means connected to a storage device, encryption key information storage means for storing encryption key information, and encryption key information storage Means for setting predetermined encryption key information in the means, and encryption / decryption means for performing encryption / decryption of data based on the encryption key information stored in the encryption key information storage means. In an encryption / decryption device for encrypting / decrypting data transferred between the first and second interfaces, the encryption key information is set by a predetermined encryption key setting command issued via the first interface means. It was done.
[0011]
Further, the encryption / decryption means executes the encryption / decryption function based on a predetermined encryption / decryption function start command and an encryption / decryption function stop command issued via the first interface means.
[0012]
The encryption / decryption means does not perform encryption / decryption when the encryption key information stored in the encryption key information storage means has a predetermined value.
[0013]
Further, setting information for use / non-use of the encryption / decryption function is stored in a predetermined storage area of the storage device connected to the second interface means or a predetermined storage means, and the encryption / decryption means stores The encryption / decryption function is executed based on the setting information of use / non-use of the encryption / decryption function read through the two interface means.
[0014]
BEST MODE FOR CARRYING OUT THE INVENTION
FIG. 1 is a diagram showing a connection state between an encryption / decryption device embodying the present invention, a host device, and a storage device. In the figure, reference numeral 1 denotes an encryption / decryption device that performs encryption / decryption of stored data. The encryption / decryption device 1 and a host device 2 such as a personal computer are connected by an ATA interface. Reference numeral 3 denotes a storage device for storing data. In this embodiment, the storage device 3 is a portable storage device such as an iVDR disk. The iVDR disk is a portable storage device based on a 2.5-inch hard disk device, and was announced on March 6, 2002 by the iVDR hard disk drive consortium (http://www.ivdr.org). It is a thing. ("IVDR" is a trademark of the iVDR Hard Disk Drive Consortium.)
The encryption / decryption device 1 and the portable storage device 3 are connected to each other by connectors 4 and 5, and can be appropriately attached and detached by the user. The encryption / decryption device 1 has a shape that is stored in a general-purpose expansion bay (for example, a 5-inch bay of a desktop personal computer) of the host device 2 and is housed in a common housing 6. That is, the encryption / decryption device 1, the host device 2, and the portable storage device 3 constitute an electronic device such as a personal computer including a portable storage device having an encryption / decryption function. Here, since the storage data from / to the higher-level device 2 is encrypted / decrypted by the encryption / decryption device 1, the encrypted data is read / written to / from the portable storage device 3.
[0015]
FIG. 2 shows a detailed configuration diagram of the encryption / decryption device 1. In the figure, reference numeral 30 denotes a CPU that controls the entire apparatus. On the bus of the CPU 30, an encryption / decryption circuit 31, a first ATA interface circuit 32, a second interface circuit 35, a ROM 36, and a RAM 37 are connected. The first ATA interface circuit 32 is an ATA interface circuit connected to the host device 2, and 34 is a connector for the connection. The first ATA interface circuit 32 includes 33 buffer RAMs, and can temporarily accumulate the contents of access to the ATA register performed by the host device 2 in the buffer RAM 33 based on an instruction from the CPU 30. . When the data is stored in the buffer RAM 33, the output from the first ATA interface circuit 32 to the encryption / decryption circuit 31 is not performed. The contents stored in the buffer RAM 33 can be read from the CPU 30. The second interface circuit 35 is an ATA interface circuit connected to the portable storage device 3, and 5 is the connection connector described with reference to FIG. Although only one portable storage device is connected to the end of the second ATA interface circuit 35 in the configuration of FIG. 1, it is of course possible to connect two portable storage devices, a master and a slave. .
[0016]
The first ATA interface circuit 32 and the second ATA interface circuit 35 are connected to each other via the encryption / decryption circuit 31. The write data from the device 2 is encrypted by the encryption / decryption circuit 31 and then written to the portable storage device 3. The data stored in the portable storage device 3 is decrypted by the encryption / decryption device 31 and read into the device 2. A well-known algorithm such as DES and RC4 is used for the encryption / decryption processing. The encryption / decryption process is executed based on the value of the encryption key register in the encryption / decryption device 31. This encryption key register can be set to an arbitrary value under the control of the CPU 30. Note that the encryption key register is composed of a normal flip-flop element or the like, and does not hold the set value in a nonvolatile manner. The encryption / decryption device 31 does not always perform encryption / decryption of data, but can start / stop the encryption / decryption function based on an instruction from the CPU 30. When the encryption / decryption function is stopped, the encryption / decryption circuit 31 normally transfers data between the first ATA interface circuit 31 and the second ATA interface circuit 35 without performing encryption / decryption.
[0017]
The ROM 36 stores an operation program of the CPU 30 and various table data, and the RAM 37 is provided with various work areas. In FIGS. 3 and 4, the buffer RAM 33 and the RAM 37 are separate components, but these may be shared by one system of RAM.
[0018]
In this embodiment, three new commands are defined for the ATA interface. One is an encryption key setting command. When the encryption / decryption device 1 receives this command from the host device 2, the value specified by the command parameter of the command is set in the encryption key register. The remaining two commands are start / stop commands for the encryption / decryption function. When the encryption / decryption device 1 receives the encryption / decryption function start command from the host device 2, the encryption / decryption circuit 31 starts encryption / decryption, and receives the encryption / decryption function stop command when the encryption / decryption function stop command is received. 31 is stopped. These commands are newly defined using the ATA interface vendor-defined command.
[0019]
Next, an encryption / decryption operation of the CPU 30 in the encryption / decryption device 1 according to the gist of the present invention will be described with reference to the flowcharts of FIGS. First, at step 100, the encryption key register in the encryption / decryption circuit 31 is cleared to "0". Then, an encryption / decryption flag area is provided in the RAM 37, and the encryption / decryption flag is cleared.
[0020]
Next, in step 101, the contents of the buffer RAM 33 are cleared, and the accumulation in the buffer RAM 33 is enabled. When any access is made to the ATA register from the host device 2 in this state, the access content is temporarily stored in the buffer RAM 33. Therefore, it is first determined in step 102 whether the access is an encryption key setting command. If the command is an encryption key setting command, it is determined in step 103 whether the command is issued or status read. If the command is issued (written), the value specified by the command parameter is sent to the encryption / decryption circuit 31 in step 104. Is set in the encryption key register inside. If the status is read (read), a return value to the encryption key setting command is output to the first ATA interface circuit 32 in step 105. As the encryption key information (the value set in the encryption key register), a password / passphrase used by the user at the time of encryption / decryption may be used as it is, or a predetermined password / passphrase may be used. A conversion process may be performed, and the value obtained as a result may be used.
[0021]
Returning to step 102, if it is not an encryption key setting command, it is determined in step 106 whether the command is an encryption / decryption function start command. If the command is an encryption / decryption function start command, it is determined in step 107 whether the command is issued or status read. If the command is issued, the encryption / decryption flag is set in step 108. If it is a status read, a return value to the encryption / decryption function start command is output to the first ATA interface circuit 32 in step 109.
[0022]
Returning to step 106, if the command is not an encryption key setting command, it is determined in step 110 whether the command is an encryption / decryption function stop command. If the command is an encryption / decryption function stop command, it is determined in step 111 whether the command is issued or the status is read. If the command is issued, the encryption / decryption flag is cleared in step 112. If it is a status read, a return value to the encryption / decryption function stop command is output to the first ATA interface circuit 32 in step 113.
[0023]
The three commands described above are newly defined commands related to encryption / decryption. Therefore, there is no need to output to the portable storage device 3. Therefore, the command is received and processed in the encryption / decryption device 1 by the processing of steps 102 to 113 described above, and no output is sent to the portable storage device 3 (in other words, to the second ATA interface circuit 35). It is not done.
[0024]
Returning to step 110, if the command is not the encryption / decryption function stop command, it is not a newly defined command related to encryption / decryption, so that it can be determined that the access to the ATA register is an access to the portable storage device 3. Therefore, in step 114, the access content stored in the buffer RAM 33 is read out and output as it is to the second ATA interface circuit 35 (in this case, the second ATA interface circuit 35 is not passed through the encryption / decryption circuit 31 but through the CPU bus. At step 115), and invalidates the accumulation in the buffer RAM 33 at step 115. Since the accumulation in the buffer RAM 33 is invalidated, the access to the ATA register of the device 2 is immediately output to the encryption / decryption circuit 31.
[0025]
By the way, while the access to the ATA register is stored in the RAM 33, the encryption / decryption device 1 and the portable storage device 3 cannot show any reaction to the host device 2. In the case of issuing a command, there is no problem, but in the case of a status read, this is not the case. Therefore, the first ATA interface circuit 32 negates the IORDY signal for a predetermined period after accumulating the access to the ATA register of the higher-level device 2 in the buffer RAM 33 and applies a wait to the higher-level device 2 as necessary. It has become.
[0026]
Next, in step 116, it is determined whether the access content read from the buffer RAM 33 is a command issue or a status read. Further, in step 117, the access content is a command related to read or write accompanied by data transfer (specifically, READ BUFFER, READ DMA, READ DMA QUEUED, READ SECTOR (S), READ MULTIPLE, WRITE BUFFER, WRITE DMA, WRITE DMA QUEUED. , WRITE SECTOR (S), WRITE MULTIPLE command, etc.). In step 118, it is determined whether the encryption / decryption flag is set. If the command is not a command related to read or write involving data transfer, is a status read, or the encryption / decryption flag is cleared, the encryption / decryption function of the encryption / decryption circuit 31 is stopped in step 119. . Therefore, the return value (status read) from the portable storage device 3 with respect to the subsequent data transfer or command is transmitted between the first ATA interface circuit 32 and the second ATA interface circuit 35 without performing encryption / decryption. Will be transferred.
[0027]
On the other hand, if a command related to reading or writing is issued and the encryption / decryption flag is set, the encryption / decryption function of the encryption / decryption circuit 31 is started in step 120. Therefore, subsequent data transfer (access to the data register in DMA transfer or PIO transfer) is performed after predetermined encryption / decryption is performed between the first ATA interface circuit 32 and the second ATA interface circuit 35. Is done.
[0028]
By the way, the encryption / decryption processing is processed by hardware by the encryption / decryption circuit 31, but a slight delay time still occurs. Therefore, the first ATA interface circuit 31 delays the IORDY signal with respect to the higher-level device 2 for a predetermined period (for the delay time) as necessary (in the case of the PIO transfer, negates to apply a wait). Output.
[0029]
Then, in step 121, the process waits for the data transfer to end, and returns to step 102. Thereafter, the processing from step 102 is repeatedly executed. That is, the following processing is realized by the above processing.
[0030]
1) The newly defined command related to the encryption / decryption setting is processed by the encryption / decryption device 1 and is not output to the portable storage circuit 3.
[0031]
2) When the encryption / decryption flag is set, encryption / decryption is performed only for transfer of stored data. Encryption / decryption is executed for command issuance (including access to the control block register), status read corresponding thereto, and data transfer of a command (PIO data in / out command such as IDENTIFY DEVICE) unrelated to storage data transfer. Not done.
[0032]
3) The start / stop of the encryption / decryption process can be arbitrarily set at any time. As a result, it is possible to operate encryption / decryption for each file. (It is also possible to encrypt / decrypt individual file contents without encrypting the directory information.)
4) Encryption key information can be arbitrarily set at any time. As a result, different encryption key information can be used for each storage device, each partition, and each file.
[0033]
5) The encryption key information is not stored in a nonvolatile manner in either the encryption / decryption device or the storage device. Thus, even if the encryption / decryption device and the storage device are stolen together, the data is not decrypted.
[0034]
In the flowcharts of FIGS. 3 and 4, the contents of the encryption key register are not particularly cleared (other than initialization after resetting), but the encryption key setting command is sent from the higher-level device 2 after the data transfer is completed. It may be issued each time to clear the contents of the encryption key register every time.
[0035]
As described above, according to this embodiment, even if the encryption / decryption device and the storage device are stolen together, the security is higher than before, and the encryption key is used for each file and each storage device. It is possible to realize an encryption / decryption device capable of changing information and encrypting or easily instructing encryption / decryption for each file.
[0036]
In the above description, the ATA interface has been described as an example of an interface for connecting the encryption / decryption device, the host device, and the portable storage device. However, the present invention is not limited to this, and SCSI, IEEE 1394, It goes without saying that another interface such as USB may be used.
[0037]
(Second embodiment)
In the above embodiment, encryption / decryption / non-encryption / decryption of data to be stored is executed based only on an instruction from the host device 2. This means that the encryption / decryption / non-decryption of data is left to the user only. However, when the portable storage device is shared by a plurality of persons, there may be a case where the user does not want to store carelessly encrypted data. When temporarily lending your portable storage device to another person, you can read and write plaintext data, or decrypt and read encrypted data (of course, passwords / passphrases related to encryption / decryption, etc.). Is assumed to have been communicated verbally), but it may be difficult to write new encrypted data. Therefore, in the present embodiment, setting information of use / non-use of the encryption / decryption function is stored in the storage device in advance, and the encryption / decryption device reads the information to execute / decrypt data. did.
[0038]
FIG. 5 is a configuration diagram of the encryption / decryption device in the present embodiment. The difference from the configuration in the above embodiment (FIG. 2) is that an attachment detection switch 38 for detecting the attachment of the portable storage device 3 is added. The mounting detection switch 38 is connected to the CPU 30 via the CPU bus. When the portable storage device 3 is attached, the attachment detection switch 38 is pressed, and the CPU 30 can detect the new attachment of the portable storage device 3 by the edge signal at that time.
[0039]
Next, the operation of the CPU 30 in the encryption / decryption device 1 in this embodiment will be described with reference to the flowcharts of FIGS. First, as a premise, setting information as to whether or not to use the encryption / decryption function is stored in a predetermined storage area of the portable storage device 3 in advance. The predetermined storage area is, for example, a specific area that is not used by the OS of the host device 2. Of course, the information may be stored in another storage means such as a flash memory in the portable storage device 3 instead of the predetermined storage area on the storage medium. The method of storing the setting information is not particularly described in detail, but the information appropriately set by the user may be stored, for example, by using predetermined utility software. In the setting information, use / non-use of the encryption function and use / non-use of the decryption function are set independently.
[0040]
First, at step 200, the encryption key register is cleared. Then, an encryption flag and a decryption flag area are provided in the RAM 37, and the encryption flag and the decryption flag are cleared. Next, in step 201, it is determined whether or not the portable storage device 3 is newly attached. If it is newly installed, the setting information for use / non-use of the encryption / decryption function stored in the predetermined storage area is read in step 202. In step 203, the setting of use / non-use of encryption is determined. If it is set to use, an encryption flag is set in step 204. Similarly, in step 205, the use / non-use setting of the decoding is determined. If it is set to use, a decoding flag is set in step 206. The setting information for use / non-use of the encryption / decryption function is not read every time, but is read only once when the portable storage device 3 is newly attached.
[0041]
Returning to step 201, if no new attachment of the portable storage device 3 is detected, the contents of the buffer RAM 33 are cleared and the accumulation in the buffer RAM 33 is enabled in step 207. In step 208, it is determined whether or not the access content stored in the buffer RAM 33 is an encryption key setting command. If the command is an encryption key setting command, it is determined in step 209 whether the command is issued or the status is read. If the command is issued, the value specified by the command parameter is encrypted in step 210 in the encryption / decryption circuit 31. Set in the key register. If it is a status read, a return value to the encryption key setting command is output to the first ATA interface circuit 32 in step 211.
[0042]
Returning to step 209, if the received command is not an encryption key setting command, the access content stored in the buffer RAM 33 is read out in step 212 and output directly to the second ATA interface circuit 35, and the storage in the buffer RAM 33 is invalidated in step 213. I do.
[0043]
Next, in step 214, it is determined whether the access content read from the buffer RAM 33 is a command issue or a status read. In step 215, it is determined whether the content of the encryption key register is "0". Further, in step 216, it is determined whether the access content is a command related to read or write accompanied by data transfer. If the status is a status read, the content of the encryption key register is “0”, or the command is not a command related to read or write with data transfer, the encryption / decryption function of the encryption / decryption circuit 31 is set in step 219. Stop. Returning to step 216, if a command related to reading with data transfer is issued and the content of the encryption key register is not "0", it is determined in step 218 whether or not the decryption flag is set. If it is determined in step 216 that a command related to writing with data transfer is issued and the content of the encryption key register is not 0, it is determined in step 219 whether an encryption flag is set. In either case, if the decryption flag or the encryption flag is set, the encryption / decryption function of the encryption / decryption circuit 31 is started in step 210; Stop the decryption function. Then, in step 221, the process waits for the data transfer to end, and returns to step 201. Thereafter, the processing from step 201 is repeatedly executed. That is, the following processing is realized by the above processing.
[0044]
1) The start / stop of the encryption process is set according to the contents of the encryption key information. That is, the encryption / decryption function start / stop command used in the above embodiment is not required.
[0045]
2) The setting of use / non-use of the encryption / decryption function stored in a predetermined storage area on the portable storage device 3 has priority over the setting of start / stop of individual encryption / decryption processing. That is, the portable storage device 3 can have an attribute of using / not using the encryption / decryption function.
[0046]
3) The setting of use / non-use of the encryption function and the decryption function can be performed independently.
[0047]
As described above, according to the present embodiment, the setting information of use / non-use of the encryption / decryption function is stored in the portable storage device in advance, and the encryption / decryption device reads the setting information to encrypt the data. Since the decryption is performed / not performed, it is possible to prevent data from being inadvertently encrypted and stored in the shared portable storage device, or to temporarily rent the portable storage device to another person. In this case, the encryption / decryption function can be stopped and flexible operation relating to encryption / decryption can be performed.
[0048]
【The invention's effect】
As described above, according to the present invention, even if the encryption / decryption device and the storage device are stolen together, a high-security encryption / decryption device that does not decrypt data is provided. Can be realized. Furthermore, encryption is performed by changing encryption key information for each file, each storage device, or the like, encrypted / non-encrypted for each file and stored, and a portable storage device has an attribute of use / non-use of an encryption / decryption function. For example, there is an excellent effect that flexible operation regarding encryption / decryption can be performed. In addition, there is no need to prepare a terminal device or the like separately from the host device in order to perform various settings and changes.
[Brief description of the drawings]
FIG. 1 is a diagram showing a connection state between an encryption / decryption device, a host device, and a storage device according to the present invention
FIG. 2 is a configuration diagram of an encryption / decryption device 1.
FIG. 3 is a flowchart of an encryption / decryption operation according to the gist of the present invention;
FIG. 4 is a flowchart of an encryption / decryption operation according to the gist of the present invention;
FIG. 5 is a configuration diagram of an encryption / decryption device 1 according to a second embodiment.
FIG. 6 is a flowchart of an encryption / decryption operation in the second embodiment.
FIG. 7 is a flowchart of an encryption / decryption operation in the second embodiment.
[Explanation of symbols]
1 encryption / decryption device
2 Host device
3 Portable storage device
4,5 connector
6 common housing
30 CPU
31 Encryption / decryption circuit
32 1st ATA interface circuit
33 Buffer RAM
34 Connector
35 Second ATA interface circuit
36 ROM
37 RAM
38 Mounting detection switch

Claims (8)

上位装置と接続される第一インターフェース手段と、記憶装置と接続される第二インターフェース手段と、暗号鍵情報を記憶しておく暗号鍵情報記憶手段と、該暗号鍵情報記憶手段に所定の暗号鍵情報を設定する暗号鍵情報設定手段と、上記暗号鍵情報記憶手段に記憶された暗号鍵情報に基づいてデータの暗復号化を行う暗復号化手段とを備え、上記第一、第二インターフェース間に転送される記憶データを暗復号化する暗復号化装置において、上記暗号鍵情報設定手段が上記第一インターフェース手段を介して発行される所定の暗号鍵設定コマンドに基づいて上記暗号鍵情報を設定することを特徴とする、暗復号化装置。First interface means connected to the host device, second interface means connected to the storage device, encryption key information storage means for storing encryption key information, and a predetermined encryption key stored in the encryption key information storage means. An encryption key information setting unit for setting information; and an encryption / decryption unit for performing encryption / decryption of data based on the encryption key information stored in the encryption key information storage unit. The encryption key information setting means sets the encryption key information based on a predetermined encryption key setting command issued through the first interface means. Encryption / decryption device. 上記暗復号化手段は、上記第一インターフェース手段を介して発行される所定の暗復号化機能開始コマンドおよび暗復号化機能停止コマンドに基づいて暗復号化機能を実行することを特徴とする、請求項1の暗復号化装置。The encryption / decryption means executes an encryption / decryption function based on a predetermined encryption / decryption function start command and an encryption / decryption function stop command issued via the first interface means. Item 7. The encryption / decryption device according to Item 1. 上記暗復号化手段は、上記暗号鍵情報記憶手段に記憶された暗号鍵情報が所定の値であった場合には暗復号化を行わないことを特徴とする、請求項1の暗復号化装置。2. The encryption / decryption device according to claim 1, wherein the encryption / decryption unit does not perform encryption / decryption when the encryption key information stored in the encryption key information storage unit has a predetermined value. . リセット時に、上記暗号鍵情報記憶手段に記憶された暗号鍵情報が上記所定の値に初期化されることを特徴とする、請求項1、3の暗復号化装置。4. The encryption / decryption device according to claim 1, wherein upon resetting, the encryption key information stored in the encryption key information storage unit is initialized to the predetermined value. 上記暗号鍵情報記憶手段が揮発性の記憶手段であることを特徴とする、請求項1の暗復号化装置。2. The encryption / decryption device according to claim 1, wherein said encryption key information storage means is a volatile storage means. 上記第二インターフェース手段に接続される記憶装置の所定の記憶領域ないしは所定の記憶手段に暗復号化機能の使用/不使用の設定情報を記憶しておき、上記暗復号化手段は、上記第二インターフェース手段を介して読み取った上記暗復号化機能の使用/不使用の設定情報に基づいて暗復号化機能を実行することを特徴とする、請求項1の暗復号化装置。The use / non-use setting information of the encryption / decryption function is stored in a predetermined storage area of the storage device connected to the second interface means or a predetermined storage means, and the encryption / decryption means stores 2. The encryption / decryption device according to claim 1, wherein the encryption / decryption function is executed based on setting information of use / non-use of the encryption / decryption function read via an interface unit. 上記暗復号化機能の使用/不使用の情報を、暗号化機能と複合化機能とで独立に設定可能であることを特徴とする、請求項6の暗復号化装置。7. The encryption / decryption device according to claim 6, wherein the use / non-use information of the encryption / decryption function can be set independently for the encryption function and the decryption function. 上記記憶装置が可搬型記憶装置であることを特徴とする、請求項1、6の暗復号化装置。7. The encryption / decryption device according to claim 1, wherein said storage device is a portable storage device.
JP2003129048A 2003-05-07 2003-05-07 Encrypting/decrypting device Withdrawn JP2004336344A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003129048A JP2004336344A (en) 2003-05-07 2003-05-07 Encrypting/decrypting device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003129048A JP2004336344A (en) 2003-05-07 2003-05-07 Encrypting/decrypting device

Publications (1)

Publication Number Publication Date
JP2004336344A true JP2004336344A (en) 2004-11-25

Family

ID=33505007

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003129048A Withdrawn JP2004336344A (en) 2003-05-07 2003-05-07 Encrypting/decrypting device

Country Status (1)

Country Link
JP (1) JP2004336344A (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006252451A (en) * 2005-03-14 2006-09-21 Ricoh Co Ltd Storage system
WO2007102323A1 (en) * 2006-03-08 2007-09-13 Matsushita Electric Industrial Co., Ltd. Interface circuit, information processing device, and information processing system
JP2010503301A (en) * 2006-09-07 2010-01-28 インターナショナル・ビジネス・マシーンズ・コーポレーション Method for configuring a storage drive to communicate with an encryption manager and a key manager
JP4463320B1 (en) * 2009-06-12 2010-05-19 株式会社ハギワラシスコム ENCRYPTION STORAGE DEVICE, INFORMATION DEVICE, AND ENCRYPTION STORAGE DEVICE SECURITY METHOD
JP2010244853A (en) * 2009-04-06 2010-10-28 I-O Data Device Inc Connector and information processing device
JP2016181836A (en) * 2015-03-24 2016-10-13 キヤノン株式会社 Information processor, cryptographic device, control method of information processor and program
JP2020025314A (en) * 2015-03-24 2020-02-13 キヤノン株式会社 Information processing apparatus, encryption apparatus, control method of information processing apparatus, and program

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006252451A (en) * 2005-03-14 2006-09-21 Ricoh Co Ltd Storage system
WO2007102323A1 (en) * 2006-03-08 2007-09-13 Matsushita Electric Industrial Co., Ltd. Interface circuit, information processing device, and information processing system
JPWO2007102323A1 (en) * 2006-03-08 2009-07-23 パナソニック株式会社 Interface circuit, information processing apparatus and information processing system
JP2010503301A (en) * 2006-09-07 2010-01-28 インターナショナル・ビジネス・マシーンズ・コーポレーション Method for configuring a storage drive to communicate with an encryption manager and a key manager
JP2010244853A (en) * 2009-04-06 2010-10-28 I-O Data Device Inc Connector and information processing device
JP4463320B1 (en) * 2009-06-12 2010-05-19 株式会社ハギワラシスコム ENCRYPTION STORAGE DEVICE, INFORMATION DEVICE, AND ENCRYPTION STORAGE DEVICE SECURITY METHOD
JP2010288123A (en) * 2009-06-12 2010-12-24 Hagiwara Sys-Com:Kk Encryption storage device, information equipment, and security method of encryption storage device
JP2016181836A (en) * 2015-03-24 2016-10-13 キヤノン株式会社 Information processor, cryptographic device, control method of information processor and program
JP2020025314A (en) * 2015-03-24 2020-02-13 キヤノン株式会社 Information processing apparatus, encryption apparatus, control method of information processing apparatus, and program

Similar Documents

Publication Publication Date Title
KR102139179B1 (en) Security subsystem
AU2012204448B2 (en) System and method for in-place encryption
US20100058066A1 (en) Method and system for protecting data
EP2759943B1 (en) File encryption method and device, file decryption method and device
US7818567B2 (en) Method for protecting security accounts manager (SAM) files within windows operating systems
CN100378689C (en) Enciphered protection and read write control method for computer data
AU2012204448A1 (en) System and method for in-place encryption
JP6751856B2 (en) Information processing equipment and information processing system
JP4793949B2 (en) Computer information processing apparatus and information management program
JP2004336344A (en) Encrypting/decrypting device
CN111159726B (en) UEFI (unified extensible firmware interface) environment variable-based full-disk encryption and decryption method and system
CN110673863B (en) Intelligent lock system supporting pluggable external storage and intelligent upgrading method
US20220123932A1 (en) Data storage device encryption
US20120047582A1 (en) Data deleting method for computer storage device
US20220121781A1 (en) Data storage device encryption
KR102305680B1 (en) System for storing security information using a plurality of storages
JP2011108151A (en) Security adaptor for external storage
CN101763485A (en) Data protecting method
JP2006344104A (en) File management program and file management device
TW202036349A (en) Computer system and method for virtual hard disk encryption and decryption
JP2006018345A (en) Security enhancement device using access control method
CN113553296A (en) Data security transmission system
JP2005223569A (en) Encryption unit and recording system
JP2013092960A (en) Information processor and information processing method
TW201421276A (en) Method for processing data

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20060801