JP4338185B2 - How to encrypt / decrypt files - Google Patents

How to encrypt / decrypt files Download PDF

Info

Publication number
JP4338185B2
JP4338185B2 JP2003339160A JP2003339160A JP4338185B2 JP 4338185 B2 JP4338185 B2 JP 4338185B2 JP 2003339160 A JP2003339160 A JP 2003339160A JP 2003339160 A JP2003339160 A JP 2003339160A JP 4338185 B2 JP4338185 B2 JP 4338185B2
Authority
JP
Japan
Prior art keywords
file
information
key
encrypted
dependency
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.)
Expired - Lifetime
Application number
JP2003339160A
Other languages
Japanese (ja)
Other versions
JP2005109779A (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.)
Hitachi Software Engineering Co Ltd
Original Assignee
Hitachi Software Engineering Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Software Engineering Co Ltd filed Critical Hitachi Software Engineering Co Ltd
Priority to JP2003339160A priority Critical patent/JP4338185B2/en
Publication of JP2005109779A publication Critical patent/JP2005109779A/en
Application granted granted Critical
Publication of JP4338185B2 publication Critical patent/JP4338185B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Landscapes

  • Storage Device Security (AREA)

Description

本発明は、ファイル内の情報参照を特定の論理環境内に留めるようにした論理ファイル構成に依存するファイルの暗号化・復号方法に関するものである。   The present invention relates to a file encryption / decryption method depending on a logical file configuration in which information reference in a file is kept in a specific logical environment.

従来から知られているファイル暗号方法では、ファイルを暗号化した暗号鍵にアクセスできるユーザであれば暗号ファイルを復号して閲覧することができる。暗号鍵は外部メディアや内部記憶媒体に記録され、暗号鍵にアクセスできる環境であれば何処にいても暗号ファイルを復号することが可能である(例えば、非特許文献1参照)。これは一般的な暗号製品に対しても同様に言える特徴である(例えば、非特許文献2参照)。それに対し、物理的なデバイスの構成によって暗号鍵を生成し対象を暗号するものもある(例えば、特許文献1参照)。
特開2001−243105号公報 PGP Corporation、「PGP CORPORATION WHITE PAPERS」、[online]、2002年8月、PGP Corporation、[平成15年1月29日検索]、インターネット<URL: http://www.pgp.com/> 情報処理振興事業協会セキュリティセンター、「国内で入手可能な暗号関連製品リスト」、[online]、2000年11月29日、IPAISEC、[平成15年1月29検索]、 インターネット<URL: http:/www.ipa.go.jp/security/enc/product.htm>
In a conventionally known file encryption method, a user who can access an encryption key obtained by encrypting a file can decrypt and view the encrypted file. The encryption key is recorded on an external medium or an internal storage medium, and the encrypted file can be decrypted anywhere in an environment where the encryption key can be accessed (see, for example, Non-Patent Document 1). This is a feature that can be said for general encryption products as well (for example, see Non-Patent Document 2). On the other hand, there is one that generates an encryption key and encrypts a target by a physical device configuration (see, for example, Patent Document 1).
JP 2001-243105 A PGP Corporation, “PGP CORPORATION WHITE PAPERS”, [online], August 2002, PGP Corporation, [searched on January 29, 2003], Internet <URL: http://www.pgp.com/> Information Processing Promotion Association, Security Center, “List of Cryptographic Products Available in Japan”, [online], November 29, 2000, IPAISEC, [Search January 29, 2003], Internet <URL: http: / www.ipa.go.jp/security/enc/product.htm>

しかしながら、上記の従来技術においては、暗号ファイルと暗号鍵さえあれば何処にいても暗号ファイルを閲覧可能な環境を手に入れることができる。例えば、暗号ファイルを格納したモバイルパーソナルコンピュータを持ち歩けば、企業内のプロテクションエリアであっても、電車の中でも、顧客先でも同様に暗号ファイルを復号することができてしまう。そのため、モバイルパーソナルコンピュータの盗難、あるいは利用者の不注意や故意によって暗号ファイルの内容が漏れ出す危険性がある。
また、特開2001−243105号公報に記載の技術は、複数のコンポーネントに依存した環境で物理メディアに対するデータ保存を暗号する方法であるが、正規ユーザが正しく参照可能な環境で暗号ファイルを持ち出す行為や、コンポーネント構成が維持された環境に対して、ネットワーク上からリモートアクセスすることにより暗号ファイルを持ち出す行為に対して暗号ファイルの内容を防御できないという問題がある。
However, in the above-described conventional technology, an environment in which an encrypted file can be browsed can be obtained wherever an encrypted file and an encryption key are present. For example, if a mobile personal computer storing an encrypted file is carried around, the encrypted file can be decrypted in the same way in a protection area in a company, on a train, or at a customer site. Therefore, there is a risk that the contents of the encrypted file may leak due to theft of the mobile personal computer or the carelessness or intention of the user.
The technique described in Japanese Patent Laid-Open No. 2001-243105 is a method for encrypting data storage on a physical medium in an environment that depends on a plurality of components. In addition, there is a problem in that the content of the encrypted file cannot be protected against the act of taking out the encrypted file by remotely accessing from the network in an environment where the component configuration is maintained.

本発明の目的は、正規ユーザであったとしても、本来参照または保存されるべき環境以外ではファイル内容を参照できないようにすることができるファイルの暗号化・復号方法を提供することにある。   An object of the present invention is to provide a file encryption / decryption method capable of preventing a file content from being referred to in an environment other than an environment that should be referred to or saved even if the user is an authorized user.

上記の目的を達成するために、本発明に係るファイル暗号化・復号方法は、暗号化対象の本文を予め選択した暗号アルゴリズムと暗号鍵により暗号化した暗号ファイルを作成する第1のステップと、前記暗号ファイルの本文を復号する上で前提となる1ないし複数の環境情報を指定し、該環境情報の位置情報に基づいて前記暗号鍵を暗号化する鍵を生成し、その生成した鍵によって暗号化された前記暗号鍵と前記環境情報が含まれる鍵情報を生成する第2のステップと、前記暗号アルゴリズムの識別子、前記鍵情報とを前記暗号ファイルに格納する第3のステップと、
前記鍵情報を格納した暗号ファイルから1ないし複数の環境情報の位置情報を取り出し、その位置情報で示される論理的位置に存在する環境情報の取得を試み、いずれかの環境情報の取得に成功した場合のみ、取得に成功した環境情報の位置情報により前記暗号鍵の復号鍵情報を生成し、その復号鍵情報によって前記暗号鍵を復号する第4のステップと、復号した前記暗号鍵と前記暗号アルゴリズムの識別子で示される暗号アルゴリズムによって前記暗号ファイル内に格納された本文を復号する第5のステップとを備えることを特徴とする。
また、前記環境情報は、前記暗号ファイルと論理的な依存関係を有する依存ファイルの位置情報であることを特徴とする。
また、前記環境情報は、前記暗号ファイルの参照を許すコンピュータのハードウェアに依存する情報であることを特徴とする。
In order to achieve the above object, a file encryption / decryption method according to the present invention includes a first step of creating an encrypted file obtained by encrypting a body to be encrypted with a pre-selected encryption algorithm and encryption key, One or more environment information that is a prerequisite for decrypting the body of the encrypted file is designated, a key for encrypting the encryption key is generated based on the position information of the environment information, and the encryption key is used for encryption. A second step of generating key information including the encrypted encryption key and the environment information; a third step of storing an identifier of the encryption algorithm and the key information in the encryption file;
The location information of one or a plurality of environment information is extracted from the encryption file storing the key information, the environment information existing at the logical position indicated by the location information is acquired, and any environment information is successfully acquired. Only when the decryption key information of the encryption key is generated from the position information of the environment information that has been successfully acquired, and the encryption key is decrypted by the decryption key information, the decrypted encryption key and the encryption algorithm And a fifth step of decrypting the text stored in the encrypted file by the encryption algorithm indicated by the identifier.
Further, the environment information is position information of a dependency file having a logical dependency relationship with the encrypted file.
The environment information is information depending on hardware of a computer that permits reference to the encrypted file.

本発明によれば、ファイル暗号鍵の保管コストや鍵の交換コストをかけずに、本来参照または保存されるべき環境以外ではファイル内容を参照できないようにすることができる。
また、万一、暗号ファイルが流出した場合には、依存ファイルの依存関係を変更することにより、依存関係を検証できなくなることから暗号ファイルの参照を不可能にすることができ、意図しない環境下での暗号ファイルへのアクセス、不正持ち出しや流出による情報漏洩を防止することが可能となる。
According to the present invention, it is possible to prevent the file contents from being referred to in an environment other than the environment in which the file is originally referred to or stored without incurring the storage cost of the file encryption key or the key exchange cost.
In the unlikely event that an encrypted file is leaked, the dependency of the dependent file cannot be verified by changing the dependency of the dependent file, making it impossible to refer to the encrypted file. It is possible to prevent information leakage due to access to encrypted files, illegal take-out and outflow.

以下、添付図面を参照して、本発明の実施の形態を詳細に説明する。
図1および図2は本発明に係るファイル暗号方法を適用したコンピュータシステムの実施の形態を示すブロック図である。図1はネットワーク上でのファイルの依存関係を利用して暗号ファイルを作成する例を示し、図2はさらに図1のネットワーク上でのファイルの依存関係に加えて閲覧コンピュータ201内の他のファイルとの依存関係も利用して暗号ファイルを作成する例を示している。
図1において101、104、107、109は一般的なコンピュータを示し、依存ファイル105を格納しているコンピュータをサーバ104、その他のコンピュータをそれぞれクライアントA101、クライアントB107、クライアントC109と言う。
また、サーバ104およびクライアントA101は同一LAN100に接続されており、クライアントB107はWAN106によってサーバ104に接続されている。クライアントA101において、ネットワーク接続されているクライアントB107向けに暗号ファイル103を作成する場合には、依存ファイル105を用いて暗号ファイル103を作成し、クライアントB107に配布する。クライアントB107では、配布された暗号ファイル103の依存ファイル105をWAN106によって参照できる環境にあるため、暗号ファイル103の内容を正しく復号して参照することができる。もし、暗号ファイル103が漏洩して意図していなかったクライアントC109で参照が試みられた場合、サーバ104に接続されていないクライアントC109では暗号ファイル103に対して必要な依存ファイル105にアクセスできない。このため、暗号ファイル103の内容を正しく復号することはできない。
Embodiments of the present invention will be described below in detail with reference to the accompanying drawings.
1 and 2 are block diagrams showing an embodiment of a computer system to which a file encryption method according to the present invention is applied. FIG. 1 shows an example of creating an encrypted file using file dependency on the network, and FIG. 2 shows another file in the viewing computer 201 in addition to the file dependency on the network of FIG. This example shows how to create an encrypted file using the dependency relationship with
In FIG. 1, reference numerals 101, 104, 107, and 109 denote general computers. The computer storing the dependency file 105 is referred to as a server 104, and the other computers are referred to as a client A 101, a client B 107, and a client C 109, respectively.
The server 104 and the client A 101 are connected to the same LAN 100, and the client B 107 is connected to the server 104 by the WAN 106. In the case where the client A 101 creates the encryption file 103 for the client B 107 connected to the network, the encryption file 103 is created using the dependency file 105 and distributed to the client B 107. Since the client B 107 is in an environment where the dependent file 105 of the distributed encrypted file 103 can be referred to by the WAN 106, the contents of the encrypted file 103 can be correctly decrypted and referenced. If the reference is attempted by the client C 109 that was not intended due to the leakage of the encrypted file 103, the client C 109 not connected to the server 104 cannot access the necessary dependent file 105 for the encrypted file 103. For this reason, the contents of the encrypted file 103 cannot be correctly decrypted.

また、クライアントA101で配布先のローカルHDD内のファイルも依存ファイル204として設定する場合には、参照マシン情報DB102に予め登録されている配布先マシンのマシン情報と依存ファイル204も使用して暗号ファイル103を生成する。それを次に示す。
図2において、201は一般的なコンピュータを示し、暗号ファイル103の依存ファイルの1つである依存ファイル204はコンピュータ201内のローカルHDD203のあるディレクトリパスに格納されている。依存ファイル204が存在し、かつ、暗号ファイル103作成時に指定したマシン情報と同一のマシン情報205を生成できるコンピュータであれば正しく暗号ファイル103を参照することができる。
Further, when the client A 101 sets the file in the distribution destination local HDD as the dependency file 204, the encrypted file is also used by using the machine information of the distribution destination machine and the dependency file 204 registered in advance in the reference machine information DB 102. 103 is generated. This is shown below.
In FIG. 2, reference numeral 201 denotes a general computer, and a dependency file 204 that is one of the dependency files of the encrypted file 103 is stored in a directory path in the local HDD 203 in the computer 201. If the computer has the dependency file 204 and can generate the same machine information 205 as the machine information specified when the encrypted file 103 is created, the encrypted file 103 can be referred to correctly.

図3〜図6は、暗号ファイル103に関する情報を示すものであり、図3は暗号ファイル情報310、図4は鍵情報320、図5は依存ファイル情報330、図6は配布先マシンの参照マシン情報DB102のテーブル350の例をそれぞれ示すものである。
図3において、アイキャッチャ311は本発明の暗号ファイル103であることを示す識別子を表し、固定の文字列として例えば「SFD」を設定する。
アルゴリズムID312は本暗号ファイル103で暗号処理に用いる暗号アルゴリズムの識別子を表し「AES」(Advanced Encryption Standard)や「DES」(Data Encryption Standard)をはじめ利用可能な暗号アルゴリズムの識別子のうちの1つを設定する。
鍵長313はアルゴリズムID312で設定した暗号アルゴリズムの鍵の長さをビット単位で表す。
鍵数314は図4に示す内容の鍵情報320が何個格納されているかを表す値であり、本文長316は暗号された平文本文の内容317の長さをバイト単位で表す。
3 to 6 show information about the encrypted file 103. FIG. 3 shows the encrypted file information 310, FIG. 4 shows the key information 320, FIG. 5 shows the dependent file information 330, and FIG. 6 shows the reference machine of the distribution destination machine. An example of the table 350 of the information DB 102 is shown.
In FIG. 3, an eye catcher 311 represents an identifier indicating that it is the encrypted file 103 of the present invention, and for example, “SFD” is set as a fixed character string.
The algorithm ID 312 represents an identifier of an encryption algorithm used for encryption processing in the encrypted file 103, and is one of identifiers of usable encryption algorithms including “AES” (Advanced Encryption Standard) and “DES” (Data Encryption Standard). Set.
The key length 313 represents the key length of the encryption algorithm set by the algorithm ID 312 in bits.
The number of keys 314 is a value representing how many pieces of key information 320 having the contents shown in FIG. 4 are stored, and the body length 316 represents the length of the encrypted plaintext body contents 317 in bytes.

図4において、暗号されたファイル暗号鍵321はファイルの暗号に用いたファイル暗号鍵を依存ファイル105などとの依存関係によって暗号した結果を表す。依存ファイル数322は図5に示す内容の依存ファイル情報330が何個格納されているかを表す値である。   In FIG. 4, an encrypted file encryption key 321 represents the result of encrypting the file encryption key used for file encryption by the dependency relationship with the dependency file 105 or the like. The number of dependent files 322 is a value representing how many pieces of dependent file information 330 having the contents shown in FIG. 5 are stored.

図5において、依存ファイル位置情報331は依存ファイル105又は204の格納場所を表している。ネットワーク上に置かれた依存ファイル105の場合は、httpやftpなどで始まるURL(Uniform resource Locator)形式や、ネットワークファイルシステム上の位置を示すパス情報を設定する。コンピュータ201内に置かれた依存ファイル204(図2)の場合は、ファイルシステム上の位置を示すパス情報を設定する。
依存ファイルハッシュ値332は、依存ファイル位置情報331が示す依存ファイル105又は204の内容のハッシュ値である。
In FIG. 5, the dependency file location information 331 represents the storage location of the dependency file 105 or 204. In the case of the dependency file 105 placed on the network, a URL (Uniform resource Locator) format starting with http or ftp or path information indicating a position on the network file system is set. In the case of the dependency file 204 (FIG. 2) placed in the computer 201, path information indicating the position on the file system is set.
The dependency file hash value 332 is a hash value of the contents of the dependency file 105 or 204 indicated by the dependency file position information 331.

図6において、マシン情報351は予め登録した配布先コンピュータ201の情報であり、配布先コンピュータ201のハードウェアの特徴を示すCPUの種類、BIOSの種類、ネットワークカードのMACアドレス等を連結した値のハッシュ値である。図1の参照マシン情報DB102には、登録数分のマシン情報350が格納される。   In FIG. 6, the machine information 351 is information of the distribution destination computer 201 registered in advance, and is a value obtained by concatenating the CPU type, the BIOS type, the MAC address of the network card, etc. indicating the hardware characteristics of the distribution destination computer 201. It is a hash value. In the reference machine information DB 102 of FIG. 1, machine information 350 corresponding to the number of registrations is stored.

図7および図8は、本発明に係るファイル暗号方法の手順の実施の形態を示すフローチャート、図9および図10は復号手順を示すフローチャートである。
図7において、ファイルを暗号化する場合には、まず、本発明に係る暗号プログラムを起動後、暗号する対象ファイルを選択する(ステップ701)。次に、暗号に用いるDESなどの暗号アルゴリズムを選択する(ステップ702)。その後、ファイル暗号鍵を自動生成し(ステップ703)、選択した暗号アルゴリズムとファイル暗号鍵によって該ファイル内容を暗号化する(ステップ704)。ここまでは、暗号鍵を用いた従来のファイル暗号化手順と同じである。
次に、鍵数を指定させる。すなわち、暗号化した暗号ファイル103に対する依存関係を構築するために幾つの鍵数を暗号ファイル103に含めるかを指定させる(ステップ705)。
鍵のセットは、複数の環境で暗号ファイル103を参照させたい時、それぞれの環境に応じた依存ファイル105又は204を設定するために用いる。
ステップ706〜719において、鍵数毎に1または複数の依存ファイル105又は204を指定させ、指定された依存ファイル105又は204を入力し(ステップ707)、入力した依存ファイル105又は204の取得に成功したかどうかを判定する(ステップ708)。成功したならばその依存ファイル位置情報を入力する(ステップ709)。依存ファイル位置情報は、図5の依存ファイル位置情報331で示したように、依存ファイル105又は204が存在する場所を示すものであり、復号環境において参照可能なローカルHDDの絶対パス形式やURL形式などを指定する。
依存ファイル位置情報として、ローカルHDD203の絶対パス形式を指定した場合(ステップ710)は、閲覧できる環境を限定するため、参照マシン情報DB102から、閲覧を許可するマシンのマシン情報351を入力する(ステップ711)。
また、依存ファイル位置情報として、URL形式などのネットワーク上のパスを指定した場合には、依存ファイル105の保存場所の偽装を防止するため、依存ファイル保存先マシンであるサーバ104のネットワークカードのMACアドレスを取得し(ステップ712)、該MACアドレスのハッシュ値をマシン情報とする(ステップ713)。
FIGS. 7 and 8 are flowcharts showing an embodiment of the procedure of the file encryption method according to the present invention, and FIGS. 9 and 10 are flowcharts showing the decryption procedure.
In FIG. 7, when encrypting a file, first, after starting the encryption program according to the present invention, a target file to be encrypted is selected (step 701). Next, an encryption algorithm such as DES used for encryption is selected (step 702). Thereafter, a file encryption key is automatically generated (step 703), and the file contents are encrypted with the selected encryption algorithm and file encryption key (step 704). Up to this point, the procedure is the same as the conventional file encryption procedure using the encryption key.
Next, specify the number of keys. That is, it is specified how many keys are included in the encrypted file 103 in order to construct a dependency relationship with the encrypted file 103 (step 705).
The key set is used to set the dependent file 105 or 204 corresponding to each environment when it is desired to refer to the encrypted file 103 in a plurality of environments.
In steps 706 to 719, one or more dependent files 105 or 204 are designated for each key number, the specified dependent file 105 or 204 is input (step 707), and the input dependent file 105 or 204 is successfully acquired. It is determined whether or not (step 708). If successful, the dependent file position information is input (step 709). The dependency file location information indicates the location where the dependency file 105 or 204 exists, as indicated by the dependency file location information 331 in FIG. 5, and is the absolute path format or URL format of the local HDD that can be referred to in the decryption environment. Specify.
When the absolute path format of the local HDD 203 is specified as the dependency file position information (step 710), machine information 351 of a machine permitted to be browsed is input from the reference machine information DB 102 in order to limit the browsing environment (step 710). 711).
In addition, when a path on the network such as a URL format is specified as the dependency file location information, the MAC of the network card of the server 104 that is the dependency file storage destination machine is used to prevent the storage location of the dependency file 105 from being disguised. An address is acquired (step 712), and the hash value of the MAC address is used as machine information (step 713).

次に、ステップ703で生成したファイル暗号鍵を暗号するため、依存ファイル位置情報と依存ファイル105又は204の内容とマシン情報とを連結した値のハッシュ値を計算し、ファイル暗号鍵暗号用鍵バッファのデータの末尾に追加する(ステップ714)。
次に、依存ファイル105又は204の内容のハッシュ値をハッシュ値332とし、依存ファイル位置情報を依存ファイル位置情報331としてこれらを依存ファイル情報330として生成し保存する(ステップ715)。
この後、依存ファイル105又は204を追加するかを判定する(ステップ716)。
Next, in order to encrypt the file encryption key generated in step 703, a hash value of a value obtained by concatenating the dependency file position information, the contents of the dependency file 105 or 204, and the machine information is calculated, and a file encryption key encryption key buffer is obtained. Is added to the end of the data (step 714).
Next, the hash value of the contents of the dependent file 105 or 204 is set as the hash value 332, the dependent file position information is generated as the dependent file position information 331, and these are generated and stored as the dependent file information 330 (step 715).
Thereafter, it is determined whether to add the dependent file 105 or 204 (step 716).

依存ファイル105又は204の追加が全て終了したならば、ファイル暗号鍵暗号用鍵バッファからファイル暗号鍵を暗号するための鍵を生成し(ステップ717)、該鍵でファイル暗号鍵を暗号して鍵情報320の暗号されたファイル暗号鍵321に格納する。この場合、依存ファイル数322および依存ファイル情報323も鍵情報320に格納する(ステップ718)。
ステップ707〜718を鍵数に等しい回数だけ繰返す。
これにより、ステップ705で入力した鍵数分の鍵情報320が生成される。
鍵数分の鍵情報320が全て生成されたならば、アイキャッチャ311、アルゴリズムID312、鍵長313、鍵数314、鍵情報315、本文長316、本文317から成る暗号ファイル情報310を生成する(ステップ720)。さらに、閲覧プログラムに暗号ファイル情報310を付加(ステップ721)したあと、暗号ファイル103としてファイル出力する(ステップ722)。
If all the dependent files 105 or 204 have been added, a key for encrypting the file encryption key is generated from the file encryption key encryption key buffer (step 717), and the file encryption key is encrypted with the key. The encrypted file encryption key 321 of the information 320 is stored. In this case, the number of dependent files 322 and the dependent file information 323 are also stored in the key information 320 (step 718).
Steps 707 to 718 are repeated a number of times equal to the number of keys.
As a result, key information 320 corresponding to the number of keys input in step 705 is generated.
When all the key information 320 corresponding to the number of keys has been generated, the encryption file information 310 including the eye catcher 311, algorithm ID 312, key length 313, key number 314, key information 315, text length 316, text 317 is generated ( Step 720). Further, after adding the encryption file information 310 to the browsing program (step 721), the file is output as the encryption file 103 (step 722).

以上のように生成された暗号ファイル103を復号する場合には、図9および図10のフローチャートのように、暗号ファイル103を内包している閲覧プログラムを起動した後、暗号ファイル103内に格納されている鍵情報320の数分の依存関係の確認を行い、暗号ファイル103に格納されている鍵情報320のいずれかの環境に合致していれば閲覧処理を許可する。
そこで、鍵情報320毎に格納されている全ての依存ファイル情報330を調査する(ステップ902)。まず、依存ファイル情報330の依存ファイル位置情報331から依存ファイル105又は204の取得を試みる(ステップ903)。このとき、指定されたパスに依存ファイル105又は204が存在しなかったり、依存ファイル105又は204に対するアクセスが制限されている環境では依存ファイル105又は204の取得に失敗することになる。取得に失敗した場合には、ステップ918に進む。
When the encrypted file 103 generated as described above is decrypted, it is stored in the encrypted file 103 after starting the browsing program containing the encrypted file 103 as shown in the flowcharts of FIGS. Dependencies of the key information 320 corresponding to the number of the key information 320 are confirmed, and if it matches any environment of the key information 320 stored in the encrypted file 103, the browsing process is permitted.
Therefore, all the dependent file information 330 stored for each key information 320 is examined (step 902). First, an attempt is made to acquire the dependency file 105 or 204 from the dependency file position information 331 of the dependency file information 330 (step 903). At this time, in the environment where the dependency file 105 or 204 does not exist in the specified path or access to the dependency file 105 or 204 is restricted, acquisition of the dependency file 105 or 204 fails. If acquisition fails, the process proceeds to step 918.

依存ファイル105又は204を取得することができた場合(ステップ904)、依存ファイル105又は204の内容のハッシュ値を計算し、その計算結果のハッシュ値と依存ファイルハッシュ値332との比較を行う(ステップ905)。ハッシュ値が同一であれば(ステップ906)、暗号ファイル103作成時に用いた依存ファイル105又は204と同じであると判定し、ハッシュ値が異なれば正しい依存ファイル105又は204ではないと判定する。ハッシュ値が異なっていた場合には、ステップ918に進む。
ハッシュ値が一致していた場合、依存ファイル位置情報331がローカルHDD203内の依存ファイル204を示すもであるかどうかを判定し(ステップ907)、ローカルHDD203内の依存ファイル204を示すもであった場合には、閲覧環境先のコンピュータ201のマシン情報205を取得する(ステップ908)。マシン情報205は、閲覧環境先のコンピュータ201を特定できるハードウェア構成の特徴であり、CPUの種類、BIOSの種類、ネットワークカードのMACアドレスを連結した値のハッシュ値である(ステップ909)。
When the dependency file 105 or 204 can be acquired (step 904), the hash value of the content of the dependency file 105 or 204 is calculated, and the hash value of the calculation result is compared with the dependency file hash value 332 ( Step 905). If the hash values are the same (step 906), it is determined that they are the same as the dependent file 105 or 204 used when creating the encrypted file 103, and if the hash values are different, it is determined that the dependent file 105 or 204 is not correct. If the hash values are different, the process proceeds to step 918.
If the hash values match, it is determined whether the dependency file position information 331 indicates the dependency file 204 in the local HDD 203 (step 907), and indicates the dependency file 204 in the local HDD 203. In that case, the machine information 205 of the computer 201 of the browsing environment destination is acquired (step 908). The machine information 205 is a feature of a hardware configuration that can identify the computer 201 of the browsing environment destination, and is a hash value of a value obtained by concatenating the CPU type, the BIOS type, and the MAC address of the network card (step 909).

一方、依存ファイル位置情報331がネットワーク上の依存ファイル105を示すものであった場合、依存ファイル105を保存しているサーバ104のネットワークカードのMACアドレスを取得し(ステップ910)、該MACアドレスのハッシュ値をマシン情報とする(ステップ911)。
その後、ファイル暗号鍵自体を復号するため、依存ファイル位置情報331と依存ファイル105又は204の内容とマシン情報とを連結した値のハッシュ値を計算し、ファイル暗号鍵復号用鍵バッファのデータの末尾に追加する(ステップ912)。
On the other hand, if the dependency file location information 331 indicates the dependency file 105 on the network, the MAC address of the network card of the server 104 storing the dependency file 105 is acquired (step 910), and the MAC address The hash value is used as machine information (step 911).
Thereafter, in order to decrypt the file encryption key itself, a hash value of a value obtained by concatenating the dependency file position information 331, the contents of the dependency file 105 or 204 and the machine information is calculated, and the end of the data in the file encryption key decryption key buffer is calculated. (Step 912).

以上のステップ902〜913を依存ファイル数分だけ繰返し、依存ファイル105又は204の確認が全て正常に終了した場合は、ファイル暗号鍵の復号用鍵バッファからファイル暗号鍵の復号用鍵を生成し(ステップ914)、該鍵でファイル暗号鍵を復号する(ステップ915)。その後、復号したファイル暗号鍵で本文317を復号し(ステップ916)し、閲覧プログラムで復号内容の表示処理を行う(ステップ917)。
このとき、暗号ファイル103の閲覧環境が、暗号ファイル103生成時に指定したマシン情報205を持つ環境と異なっていたり、依存ファイル105を保存しているサーバ104が異なる場合、ファイル暗号鍵の復号に必要な鍵を正しく生成できないことになり、不正環境では暗号ファイル103を閲覧することができない。
依存ファイル105又は204の確認が失敗した場合には、鍵情報320で示された閲覧可能な環境ではないとみなし、次の鍵情報320を処理する。全ての鍵情報320の処理に失敗した場合には閲覧プログラムでの表示処理を行わず、プログラムを終了する。
When the above steps 902 to 913 are repeated for the number of dependent files, and all of the dependent files 105 or 204 are confirmed normally, a decryption key for the file encryption key is generated from the decryption key buffer for the file encryption key ( Step 914), the file encryption key is decrypted with the key (Step 915). Thereafter, the body 317 is decrypted with the decrypted file encryption key (step 916), and the display process of the decrypted content is performed with the browsing program (step 917).
At this time, if the browsing environment of the encrypted file 103 is different from the environment having the machine information 205 specified when the encrypted file 103 is generated, or the server 104 storing the dependent file 105 is different, it is necessary to decrypt the file encryption key. A correct key cannot be generated, and the encrypted file 103 cannot be viewed in an unauthorized environment.
If confirmation of the dependency file 105 or 204 fails, it is determined that the environment is not browseable as indicated by the key information 320, and the next key information 320 is processed. If the processing of all the key information 320 has failed, the display processing by the browsing program is not performed and the program is terminated.

以上のように、本実施形態によれば、ユーザがパスワードを入力したり、データの暗号鍵を別の安全な場所に保存することなく、暗号ファイルと論理的な依存関係にある他のファイルとの依存関係が確認(検証)できた場合には暗号文の参照を許可し、依存関係が確認(検証)できない場合には参照を禁止することができる。そのため、鍵の保管コストや鍵の交換コストをかけずに暗号化されたファイルを意図した環境内にいる他の利用者と共有することができる。
また、依存ファイルの保存位置、個数などにより、例えば社外では復号することが出来ない暗号ファイルや、依存ファイルのアクセスに対する制御を行うことで、特定ユーザのみしか復号できない暗号ファイルを生成することができる。
さらに、複数の鍵情報を格納することにより、たとえ1つの環境が利用できなくなっても別の環境で参照することができるようになる。
これにより、暗号ファイルが流出した場合、依存ファイルへのアクセス環境を変更しておけば、たとえ本文を暗号化した鍵を知っていたとしても、依存ファイルとの関係を確認できなくなり、復号化が失敗し、流出した暗号ファイルが解読されるのを防止することができるなど、意図しない環境下での暗号情報へのアクセス、不正持ち出しによる情報漏洩を防止することが可能となる。
As described above, according to the present embodiment, the user does not input a password or saves the data encryption key in another secure location, and other files that are logically dependent on the encrypted file Ciphertext reference is permitted when the dependency relationship can be confirmed (verified), and reference can be prohibited when the dependency relationship cannot be confirmed (verified). Therefore, an encrypted file can be shared with other users in the intended environment without incurring key storage costs or key exchange costs.
Also, depending on the storage location and number of dependent files, for example, an encrypted file that cannot be decrypted outside the company, or an encrypted file that can be decrypted only by a specific user can be generated by controlling access to the dependent file. .
Furthermore, by storing a plurality of key information, even if one environment cannot be used, it can be referred to in another environment.
As a result, if an encrypted file leaks, if the access environment to the dependent file is changed, even if the key that encrypted the body text is known, the relationship with the dependent file cannot be confirmed, and decryption is not possible. It is possible to prevent access to encrypted information in an unintended environment and information leakage due to illegal take-out, such as preventing the encrypted file that has failed and leaked from being decrypted.

本発明の一実施の形態の概略構成を示すブロック図、The block diagram which shows schematic structure of one embodiment of this invention, 本発明の一実施の形態の概略構成を示すブロック図、The block diagram which shows schematic structure of one embodiment of this invention, 暗号ファイル情報の構成を示す図である。It is a figure which shows the structure of encryption file information. 鍵情報の構成を示す図である。It is a figure which shows the structure of key information. ネットワーク環境およびローカル環境での依存ファイル情報の構成を示す図である。It is a figure which shows the structure of the dependence file information in a network environment and a local environment. 暗号ファイルの配布先環境のマシン情報DBの構成を示す図である。It is a figure which shows the structure of the machine information DB of the distribution destination environment of an encryption file. 本発明に係るファイルの暗号処理手順を示すフローチャートである。It is a flowchart which shows the encryption processing procedure of the file which concerns on this invention. 図7の続きを示すフローチャートである。It is a flowchart which shows the continuation of FIG. 本発明に係るファイルの復号処理手順を示すフローチャートである。It is a flowchart which shows the decoding process procedure of the file which concerns on this invention. 図9の続きを示すフローチャートである。10 is a flowchart showing a continuation of FIG. 9.

符号の説明Explanation of symbols

100 LAN
101 クライアントA
102 参照マシンDB
103 暗号ファイル
104 サーバ
105 依存ファイル
107 クライアントB
109 クライアントC
100 LAN
101 Client A
102 Reference machine DB
103 Encryption file 104 Server 105 Dependent file 107 Client B
109 Client C

Claims (1)

コンピュータにより暗号化対象のファイルを暗号鍵により暗号化し、その暗号化したファイルを復号するファイルの暗号化・復号方法であって、
前記コンピュータが、
前記暗号化対象のファイルの本文を暗号鍵により暗号化した暗号ファイルを作成する第1のステップと、
前記暗号ファイルと論理的な依存関係を有する依存ファイルの内容と当該依存ファイルが格納されている記憶手段の位置情報とデータベースに記憶された前記暗号ファイルの閲覧を許可するクライアントコンピュータの特徴を示す情報から成る環境情報、または前記暗号ファイルと論理的な依存関係を有する依存ファイルの内容と当該依存ファイルが格納されているネットワーク上の位置情報とネットワークカードのMACアドレスから成る環境情報を受付けて暗号用鍵バッファに格納し、その格納した依存ファイルの内容と環境情報に基づいて前記暗号鍵を暗号化する鍵を生成し、その生成した鍵によって暗号化した前記暗号鍵と前記環境情報が含まれる鍵情報を生成する第2のステップと、
前記鍵情報を前記暗号ファイルに格納する第3のステップと、
前記鍵情報を格納した暗号ファイルから前記環境情報を取り出し、その環境情報で示される論理的位置に存在する依存ファイルの取得を試み、取得に成功した場合のみ、取得に成功した依存ファイルの内容と前記環境情報とを復号用鍵バッファに格納し、その格納した依存ファイルの内容と前記環境情報により前記暗号鍵の復号鍵情報を生成し、その復号鍵情報によって前記暗号鍵を復号する第4のステップと、
復号した前記暗号鍵によって前記暗号ファイル内に格納された本文を復号する第5のステップと
を備えることを特徴とするファイルの暗号化・復号方法。
A file encryption / decryption method for encrypting a file to be encrypted with an encryption key by a computer and decrypting the encrypted file,
The computer is
A first step of creating an encrypted file obtained by encrypting a body of the file to be encrypted with an encryption key;
Information indicating the contents of the dependent file having a logical dependency with the encrypted file, the location information of the storage means storing the dependent file, and the characteristics of the client computer that permits browsing of the encrypted file stored in the database For environment information consisting of the contents of a dependency file having a logical dependency with the encryption file, location information on the network where the dependency file is stored, and the MAC address of the network card. A key that is stored in a key buffer, generates a key for encrypting the encryption key based on the contents of the stored dependency file and environment information, and includes the encryption key and the environment information encrypted by the generated key A second step of generating information;
A third step of storing the key information in the encrypted file;
The environment information is extracted from the encrypted file storing the key information, the dependency file existing at the logical position indicated by the environment information is acquired, and only when the acquisition is successful , the contents of the dependency file successfully acquired Storing the environment information in a decryption key buffer, generating decryption key information of the encryption key based on the contents of the stored dependency file and the environment information , and decrypting the encryption key based on the decryption key information Steps,
A file encryption / decryption method comprising: a fifth step of decrypting a body text stored in the encrypted file with the decrypted encryption key.
JP2003339160A 2003-09-30 2003-09-30 How to encrypt / decrypt files Expired - Lifetime JP4338185B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003339160A JP4338185B2 (en) 2003-09-30 2003-09-30 How to encrypt / decrypt files

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003339160A JP4338185B2 (en) 2003-09-30 2003-09-30 How to encrypt / decrypt files

Publications (2)

Publication Number Publication Date
JP2005109779A JP2005109779A (en) 2005-04-21
JP4338185B2 true JP4338185B2 (en) 2009-10-07

Family

ID=34534414

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003339160A Expired - Lifetime JP4338185B2 (en) 2003-09-30 2003-09-30 How to encrypt / decrypt files

Country Status (1)

Country Link
JP (1) JP4338185B2 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1840137B1 (en) 2006-03-29 2009-11-25 Nippon Shokubai Co., Ltd. Method of Producing Polyacrylic Acid (Salt) Water-Absorbent Resin
US8051204B2 (en) 2007-04-05 2011-11-01 Hitachi, Ltd. Information asset management system, log analysis server, log analysis program, and portable medium
JP5141096B2 (en) * 2007-05-25 2013-02-13 日本電気株式会社 Automatic file encryption apparatus using acquired network connection information, method and program thereof
CN115330580B (en) * 2022-08-04 2023-05-09 湖北微模式科技发展有限公司 Image content encryption algorithm based on data addition

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW396308B (en) * 1997-04-01 2000-07-01 Tumbleweed Software Corp Document delivery system
JP2000172566A (en) * 1998-12-07 2000-06-23 Nippon Telegr & Teleph Corp <Ntt> Electronic data management device and method and recording medium recording electronic data management program
JP3776619B2 (en) * 1999-03-05 2006-05-17 株式会社東芝 Encryption communication terminal, encryption communication center apparatus, encryption communication system, and storage medium
JP2002074163A (en) * 2000-08-30 2002-03-15 Nippon Telegraph & Telephone West Corp Method and device for guiding web site
JP2002268549A (en) * 2001-03-06 2002-09-20 Sharp Corp Method for controlling access to information, device for controlling access to information, network system for controlling access to information and program for controlling access to information
JP2003111044A (en) * 2001-09-27 2003-04-11 Matsushita Electric Ind Co Ltd Contents data converter, and recording and reproducing system
EP1445888A4 (en) * 2001-10-12 2010-07-07 Panasonic Corp Content processing apparatus and content protection program

Also Published As

Publication number Publication date
JP2005109779A (en) 2005-04-21

Similar Documents

Publication Publication Date Title
US7111005B1 (en) Method and apparatus for automatic database encryption
US9240883B2 (en) Multi-key cryptography for encrypting file system acceleration
US7694147B2 (en) Hashing method and system
CN106022154B (en) Database encryption method and database server
KR101371608B1 (en) Database Management System and Encrypting Method thereof
US7269736B2 (en) Distributed cryptographic methods and arrangements
US20180262326A1 (en) Protecting white-box feistel network implementation against fault attack
US20030208686A1 (en) Method of data protection
AU2002213436A1 (en) Method and apparatus for automatic database encryption
US20070276756A1 (en) Recording/Reproducing Device, Recording Medium Processing Device, Reproducing Device, Recording Medium, Contents Recording/Reproducing System, And Contents Recording/Reproducing Method
CN106022155A (en) Method and server for security management in database
CN106992851B (en) TrustZone-based database file password encryption and decryption method and device and terminal equipment
US20080235521A1 (en) Method and encryption tool for securing electronic data storage devices
EP3271859B1 (en) Portable document format file custom field
CN111917535A (en) Data encryption storage method and device and server
KR100750697B1 (en) Digital document preservation system having a share memory for user access function and document transaction method used the system
US20100011221A1 (en) Secured storage device with two-stage symmetric-key algorithm
KR20220092811A (en) Method and device for storing encrypted data
US9697372B2 (en) Methods and apparatuses for securing tethered data
CN103379133A (en) Safe and reliable cloud storage system
CN115694921B (en) Data storage method, device and medium
KR102542213B1 (en) Real-time encryption/decryption security system and method for data in network based storage
CN101692266A (en) Method of intensively encrypting and protecting files by using hidden partition (HPA) and CPU ID
JP4338185B2 (en) How to encrypt / decrypt files
JPH1124997A (en) Security method for recording computer generated file and computer readable recording medium to store security program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060106

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080408

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080418

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080617

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20090302

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090423

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20090512

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090629

R150 Certificate of patent or registration of utility model

Ref document number: 4338185

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120710

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150710

Year of fee payment: 6

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term