WO2009125830A1 - 情報漏洩防止装置、その方法及びそのプログラム - Google Patents

情報漏洩防止装置、その方法及びそのプログラム Download PDF

Info

Publication number
WO2009125830A1
WO2009125830A1 PCT/JP2009/057322 JP2009057322W WO2009125830A1 WO 2009125830 A1 WO2009125830 A1 WO 2009125830A1 JP 2009057322 W JP2009057322 W JP 2009057322W WO 2009125830 A1 WO2009125830 A1 WO 2009125830A1
Authority
WO
WIPO (PCT)
Prior art keywords
key
identifier
file
access
decryption
Prior art date
Application number
PCT/JP2009/057322
Other languages
English (en)
French (fr)
Inventor
朝倉 義晴
Original Assignee
日本電気株式会社
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 日本電気株式会社 filed Critical 日本電気株式会社
Priority to CN200980108718XA priority Critical patent/CN101971186B/zh
Priority to US12/922,809 priority patent/US20110016330A1/en
Priority to JP2010507276A priority patent/JP5164029B2/ja
Publication of WO2009125830A1 publication Critical patent/WO2009125830A1/ja

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage

Definitions

  • the present invention relates to an information leakage prevention apparatus, a method thereof, and a program thereof, and particularly relates to information leakage prevention from a file created in a terminal, and the file is created by encrypting the file with the application and the user of the application as a set.
  • the present invention relates to an information leakage prevention apparatus, a method thereof, and a program for preventing a file from being used by an application other than the application used to create the file.
  • Non-Patent Document 1 is given as an access control technology based on access authority settings and access authorities.
  • Non-Patent Document 1 describes arbitrary access control and forced access control.
  • the resource owner sets the access authority for each accessor attribute.
  • the OS Operating System
  • the OS controls access to resources by the accessor based on the set access authority.
  • access control to files in Linux can be mentioned.
  • the owner of a file sets access authority (read, write, execute) for each attribute (owner, group, all members) of the user (accessor) for the file. Therefore, the setting of the access authority to the file depends on the owner of the file, and it is necessary to set for each file. For this reason, it cannot be guaranteed that appropriate access authority is set for all files.
  • the system administrator divides accessors and resources by security level. Then, a resource that can be accessed by the accessor and an access right to the resource are set in units of security levels. This setting is called a security policy.
  • the OS controls access to resources by the accessor based on the security policy. Therefore, if the security policy is set appropriately, even if a virus operates, the resources that can be accessed are limited, and leakage of important files and information in the files can be prevented.
  • SELINux Security-Enhanced Linux
  • an administrator describes what access (for example, reading and writing) an accessor (application) can access to a resource (for example, a file) as an access control rule.
  • SELInux controls access to files by applications based on access control rules. Therefore, although the administrator can centrally manage the setting of access authority to resources, it is necessary to describe the relationship between accessor, resource, and access as access control rules, and the number of accessors, resource types, and access types increase. As a result, access control rules become complicated.
  • discretionary access control is easier to manage access authority than compulsory access control, but it cannot guarantee that appropriate access authority is set for all files. Information leakage can easily occur when infected.
  • forced access control is less susceptible to information leakage when infected with a virus, etc., but the creation of access control rules is complicated.
  • the number of users, applications (application software), resource types, and access types Maintenance is required as the number increases and decreases.
  • Patent Document 1 generates a key from device-specific information that cannot be changed by the user, such as a model name, and information that can be changed by the user, such as administrator information.
  • device-specific information such as a model name
  • information that can be changed by the user such as administrator information.
  • a key is generated every time during encryption and decryption, there is a problem that only a common encryption key method using the same key for encryption and decryption can be adopted.
  • Patent Document 2 transmits an access right ID to an access management server, receives an encryption key from the access management server, encrypts the file, and stores the encrypted file in a predetermined area. For this reason, there is a problem that only a method of encrypting a file using a key stored in advance can be used.
  • Patent Document 3 merely checks the access right to the file from the user identifier known from the packet.
  • Patent Document 4 generates an individual key from a medium ID read from the medium, decrypts the permission information read from the medium using the individual key, generates a data decryption key, and uses the data decryption key from the medium.
  • the read encrypted data is decrypted to generate original data. Thereby, confidentiality of the encrypted data is intended. For this reason, Patent Document 4 has a problem that access control such as key generation is complicated.
  • the present invention has been made in view of the above, and an information leakage prevention apparatus, a method thereof, and a program thereof for preventing information leakage from a file due to a virus or the like without requiring an access control rule such as forced access control.
  • the purpose is to provide.
  • an information leakage prevention apparatus includes a data processing device that executes a plurality of applications for each of a plurality of users, a file storage device that stores a file related to the execution of the application, A key storage device for storing a pair of encryption key and decryption key used for encryption and decryption of the data of the file, and the data processing device executes the application, an identifier for identifying the application, and the An execution detection means for detecting each user who has started the application by an access identifier which is a set of an identifier for identifying the user who started the application, and an encryption key and a decryption key unique to the access identifier in the key storage device A key confirming unit for confirming whether or not a set of keys exists and the key confirming unit When it is confirmed that a pair of an encryption key and a decryption key unique to the access identifier does not exist in the key storage device, the encryption key and the decryption key unique
  • an information leakage prevention method includes a data processing device that executes a plurality of applications for each of a plurality of users, a file storage device that stores a file related to the execution of the application, and An information leakage prevention method in a system having a key storage device for storing a pair of encryption key and decryption key used for encryption and decryption of data of the file, the identifier identifying the application for execution of the application And an access identifier that is a set of an identifier that identifies the user who started the application, an execution detection procedure for detecting each user who started the application, and an encryption key unique to the access identifier in the key storage device A key confirmation procedure for confirming whether or not a decryption key pair exists; When it is confirmed in the key confirmation procedure that a pair of encryption key and decryption key unique to the access identifier does not exist in the key storage device, a pair of encryption key and decryption key unique to the access
  • an information leakage prevention program includes a data processing device that executes a plurality of applications for each of a plurality of users, a file storage device that stores a file related to the execution of the application, An information leakage prevention program in a system having a key storage device for storing a pair of encryption key and decryption key used for encryption and decryption of data of the file, the identifier identifying the application to execute the application And an access identifier that is a set of an identifier that identifies the user who has started the application, an execution detection process that detects each user who has started the application, an encryption key that is unique to the access identifier, and Key confirmation that checks whether a decryption key pair exists A pair of encryption key and decryption key unique to the access identifier when it is confirmed that the pair of encryption key and decryption key unique to the access identifier does not exist in the key storage device.
  • a key generation process for storing in the key storage device a set of the access identifier, the encryption key, and the decryption key as a key element, and access for detecting access to the file by the application for each user A detection process; a process for acquiring a set of an encryption key and a decryption key specific to the access identifier from the key storage device; and an encryption for encrypting and decrypting data using the acquired pair of the encryption key and the decryption key
  • the decryption processing is executed by a computer.
  • execution of an application is detected for each user by an access identifier that is a set of an identifier that identifies the application and an identifier that identifies the user who started the application, and an encryption key unique to the access identifier and
  • an access identifier that is a set of an identifier that identifies the application and an identifier that identifies the user who started the application, and an encryption key unique to the access identifier
  • an encryption key and a decryption key unique to this access identifier are created, access to the file by an application is detected for each user, and an access identifier unique to the access identifier
  • An information leakage prevention device that prevents information leakage from a file due to viruses or the like without requiring an access control rule such as forced access control by performing encryption and decryption of data using an encryption key and a decryption key The method and the program can be obtained.
  • FIG. 1 It is a block diagram which shows the structure of the terminal using the information leakage prevention apparatus which concerns on the 1st Embodiment of this invention. It is a flowchart which shows operation
  • FIG. 1 It is a block diagram which shows the structure of the terminal using the information leakage prevention apparatus which concerns on the 2nd Embodiment of this invention. It is a flowchart which shows operation
  • FIG. 1 is a block diagram showing a configuration of a terminal using the information leakage prevention apparatus according to the first embodiment of the present invention.
  • the information leakage prevention apparatus according to the present embodiment is mounted on a terminal 50.
  • the terminal 50 includes a data processing device 10, a key storage device 20, a file storage device 30, and a plurality of applications (application software) 1 to N.
  • the data processing apparatus 10 executes a plurality of applications 1 to N for each of a plurality of users, and in the present embodiment, the execution detection means 101, the key confirmation means 102, the key generation means 103, and the access detection Means 104 and encryption / decryption means 105.
  • the access identifier refers to a set of an identifier that specifies a user and an identifier that specifies an application.
  • the user ID may be used as the identifier for specifying the user, and the identifier for specifying the application may be the executable file name of the application.
  • the key confirmation unit 102 When the key confirmation unit 102 receives the access identifier from the execution detection unit 101, the key confirmation unit 102 confirms whether or not a key element including the access identifier exists in the key storage device 20. If there is no key element, the access identifier received from the execution detection unit 101 is transmitted to the key generation unit 103.
  • the key element is a set of an access identifier and a key
  • the key is a set of an encryption key used for data encryption and a decryption key for decrypting the encrypted data. .
  • the key generation unit 103 When the key generation unit 103 receives the access identifier from the key confirmation unit 102, the key generation unit 103 generates a unique key for the access identifier, and stores the key element including the access identifier and the created key in the key storage device 20.
  • the access detecting unit 104 transmits a write identifier to the encryption / decryption unit 105 when detecting writing to the file, and transmits a read identifier to the encryption / decryption unit 105 when detecting reading of the file.
  • the write identifier refers to a set of an access identifier instructed to write, a file identifier, and data to be written
  • a read identifier refers to a pair of an access identifier instructed to read and a file identifier.
  • the file identifier the file name of the file is used.
  • the encryption / decryption means 105 When the encryption / decryption means 105 receives the write identifier from the access detection means 104, the encryption / decryption means 105 searches the key storage device 20 for the key element having the access identifier included in the write identifier, and acquires the encryption key from the key element extracted by this search. Then, after the write data is encrypted with this encryption key, the encrypted data is written into the file indicated by the file identifier on the file storage device 30.
  • the encryption / decryption means 105 searches the key storage device 20 for a key element having the access identifier included in the read identifier, and decrypts the decryption key from the key element extracted by this search. After the data read from the file indicated by the file identifier on the file storage device 30 is decrypted with the decryption key, the decrypted data is passed to the application indicated by the access identifier.
  • the key storage device 20 stores the above key elements.
  • the file storage device 30 stores a file created by the application.
  • FIG. 2 is a flowchart showing the operation of the execution detection unit 101 shown in FIG. Now, it is assumed that the user A (not shown) starts the application M (1 ⁇ M ⁇ N). At this time, an access identifier composed of the user A and the application M is expressed as an access identifier ⁇ (not shown).
  • the execution detection unit 101 When the execution detection unit 101 detects the execution of the application M (step S101), the execution detection unit 101 transmits the access identifier ⁇ to the key confirmation unit 102 (step S102).
  • FIG. 3 is a flowchart showing the operation of the key confirmation unit 102 shown in FIG.
  • the key confirmation unit 102 when receiving the access identifier ⁇ (step S201), the key confirmation unit 102 confirms whether or not there is a key element including the access identifier ⁇ in the key storage device 20 (step S202).
  • the key confirmation unit 102 transmits the access identifier ⁇ to the key generation unit 103 (step S203).
  • the key confirmation unit 102 ends the process of FIG. 3 without transmitting the access identifier ⁇ to the key generation unit 103. To do.
  • FIG. 4 is a flowchart showing the operation of the key generation means 103 shown in FIG.
  • the key generation means 103 receives the access identifier ⁇ from the key confirmation means 102 (step S301)
  • the key ⁇ 1 unique to the access identifier ⁇ (the key ⁇ 1 is an encryption key ⁇ 2 and a decryption key ⁇ 3).
  • Step S302 a key element ⁇ 4 composed of the access identifier ⁇ and the key ⁇ 1 is generated (step S303).
  • the key element ⁇ 4 is stored in the key storage device 20 (step S304).
  • FIGS. 5 is a flowchart showing the operation of the access detection unit 104 shown in FIG. 1
  • FIG. 6 is a flowchart showing the operation of the encryption / decryption unit 105 shown in FIG.
  • step S401 of FIG. 5 when the access detection unit 104 detects writing to the file 1 (YES), it decrypts a write identifier 1 (not shown) composed of the access identifier ⁇ , the file identifier 1, and the data 1. It transmits to the means 105 (step S402).
  • the encryption / decryption means 105 searches the key storage device 20 for the key element ⁇ 4 including the access identifier ⁇ , and obtains the encryption key ⁇ 2 from the key element ⁇ 4. (Step S502).
  • the encryption / decryption means 105 encrypts the data 1 using the acquired encryption key ⁇ 2, and then writes the encrypted data 1 to the file 1 on the file storage device 30 (step S503).
  • step S401 in FIG. 5 the access detection unit 104 checks whether or not the reading is detected in step S403, and if it is detected (YES), the access is detected.
  • Read identifier 1 (not shown) consisting of identifier ⁇ and file identifier 1 is transmitted to encryption / decryption means 105 (step S404).
  • step S403 If no reading is detected in step S403 (NO), the access detection unit 104 ends the processing in FIG. 6 without transmitting the write identifier or the read identifier to the encryption / decryption unit 105.
  • the encryption / decryption means 105 checks whether or not the read identifier 1 is received in step S504, and if it is received (YES), the access identifier The key element ⁇ 4 including ⁇ is searched from the key storage device 20, and the decryption key ⁇ 3 is obtained from the key element ⁇ 4 (step S505).
  • the encryption / decryption means 105 decrypts the data 2 read from the file 1 on the file storage device 30 with the decryption key ⁇ 3, and then delivers the decrypted data 2 to the application M (step S506).
  • step S504 if the read identifier is not received (NO), the encryption / decryption means 105 ends the process of FIG. 6 without encrypting or decrypting the data.
  • the terminal 50 shown in FIG. 1 is applied to a PC (Personal Computer) 51 shown in FIG. 7 as an example.
  • the PC 51 includes a CPU (Central Processing Unit) 11 that operates under program control as a data processing device, a Flash memory 21 that is a rewritable nonvolatile memory as a key storage device, and an HDD (Hard Disk Drive) 31 as a file storage device.
  • a mailer 41 and a WEB server 42 as a plurality of applications.
  • the CPU 11 operates as the execution detection unit 111, the key confirmation unit 112, the key generation unit 113, the access detection unit 114, and the encryption / decryption unit 115.
  • a program for operating the CPU 11 as each of these means 111 to 115 is stored in a storage device (not shown) for storing a program in the PC 51 as an information leakage prevention program.
  • the access identifier consisting of the user A and the mailer 41 is AID1. Further, it is assumed that no key element is stored in the flash memory 21, and a file name is used as a file identifier.
  • the key confirmation unit 112 When receiving the AID1, the key confirmation unit 112 confirms whether or not there is a key element including the AID1 from the flash memory 21. Now, since no key element is stored in the flash memory 21, AID 1 is transmitted to the key generation unit 113.
  • the key generation unit 113 When receiving the AID1, the key generation unit 113 generates KEY1 including the encryption key 1 and the decryption key 1 that are unique to the AID1. At this time, it is assumed that the encryption key 1 and the decryption key 1 are a secret key 1 and a public key 1, respectively.
  • the key generation means 113 stores the key element 1 composed of AID1 and KEY1 in the flash memory 21.
  • the mailer 41 writes data 1 to the file 1 having the file name / mail / mail01 existing on the HDD 31.
  • the access detection unit 114 When the access detection unit 114 detects writing to the file 1, the access detection unit 114 transmits a write identifier WID1 including AID1, / mail / mail01, and data 1 to the encryption / decryption unit 115.
  • the encryption / decryption means 115 searches the flash memory 21 for the key element 1 including AID 1 and acquires the secret key 1 from the key element 1. After the data 1 is encrypted using the acquired secret key 1, the encrypted data 1 is written into the file 1 on the HDD 31.
  • the mailer 41 reads the data 2 from the file 1 existing on the HDD 31.
  • the access detection unit 114 When the access detection unit 114 detects reading into the file 1, the access detection unit 114 transmits a read identifier RID1 including AID1 and / mail / mail01 to the encryption / decryption unit 115.
  • the encryption / decryption means 115 Upon receiving RID1, the encryption / decryption means 115 searches the flash memory 21 for the key element 1 including AID1, and acquires the public key 1 from the key element 1. Further, after the encrypted data 2 is read from the file 1, the data 2 is decrypted with the public key 1, and the decrypted data 2 is transferred to the mailer 41.
  • an access identifier composed of the user A and the WEB server 42 is AID2.
  • the execution detection unit 111 transmits AID2 to the key confirmation unit 112 when detecting the activation of the WEB server 42.
  • the key confirmation unit 112 When receiving the AID2, the key confirmation unit 112 confirms whether or not a key element including the AID2 exists in the flash memory 21. Now, since the key element including AID2 is not stored in the flash memory 21, AID2 is transmitted to the key generation means 113.
  • the key generation unit 113 When the key generation unit 113 receives AID2, the key generation unit 113 generates KEY2 including the encryption key 2 and the decryption key 2 that are unique to AID2. At this time, it is assumed that the encryption key 2 and the decryption key 2 are the secret key 2 and the public key 2, respectively.
  • the key generation means 113 stores the key element 2 composed of AID2 and KEY2 in the flash memory 21.
  • the WEB server 42 reads data 3 from the file 1 existing on the HDD 31.
  • the access detection unit 114 When the access detection unit 114 detects reading of the data 3 from the file 1, the access detection unit 114 transmits a read identifier RID2 including AID2 and / mail / mail01 to the encryption / decryption unit 115.
  • the encryption / decryption means 115 searches the flash memory 21 for the key element 2 including AID2, and obtains the public key 2 from the key element 2. After reading the encrypted data 3 from the file 2, an attempt is made to decrypt the data 3 using the public key 2. Since the data 3 is encrypted with the private key 1, the decryption with the public key 2 fails. Therefore, the encrypted data 3 is transferred to the WEB server 42.
  • the data written in the file is encrypted with a unique encryption key determined by the combination of the user and the application. Therefore, even if the file leaks, the data in the file is read. It is not.
  • encrypted data can be decrypted only by a combination of a user and an application, the virus cannot decrypt the data in the file even if it is infected with a virus or the like that operates with user authority. Therefore, it is possible to prevent data in the file from leaking.
  • the data in the file is encrypted with an encryption key that is uniquely determined by the user and application pair, and the encrypted data can be decrypted only by the user and application pair that has written the data. Therefore, data leakage can be prevented without requiring access control to the file by the application, and an access control rule becomes unnecessary.
  • the keys used for encryption and decryption of data in the file are automatically generated so as to be uniquely determined from the combination of the user and the application, there is no need to prepare an encryption key and a decryption key in advance, and the number of users and applications increases. There is no need for maintenance.
  • FIG. 8 is a block diagram showing a configuration of a terminal using the information leakage prevention apparatus according to the present embodiment.
  • the present embodiment further includes an identifier assigning unit 106 that assigns an access identifier instructing file creation to the file.
  • an access detection means 107 is provided.
  • the access detection unit 107 When the access detection unit 107 detects the creation of a file, the access detection unit 107 transmits an access identifier instructing the creation of the file and a file identifier to the identifier giving unit 106.
  • the access detection unit 107 checks whether the access identifier instructed to be written is assigned to the file indicated by the file identifier. If it is not granted, an error identifier is returned to the application indicated by the access identifier.
  • the access detecting means 107 checks whether or not the access identifier instructed to be read is attached to the file indicated by the file identifier, and if so, the access identifier is encrypted and decrypted. If it is not given, the error identifier is returned to the application indicated by the access identifier.
  • FIG. 9 is a flowchart showing the operation of the access detection means 107 shown in FIG. 8
  • FIG. 10 is a flowchart showing the operation of the identifier assigning means 106 shown in FIG.
  • an access identifier composed of a user A (not shown) and an application M (1 ⁇ M ⁇ N) is defined as an access identifier ⁇ .
  • the application M started by the user A attempts to create a file 2 having a file identifier 2 (not shown).
  • the access detection means 107 detects the creation of the file 2 (step S601), it sends the access identifier ⁇ instructing the creation of the file 2 and the file identifier 2 to the identifier assignment means 106 (step S602).
  • the identifier assigning means 106 assigns the access identifier ⁇ received from the access detecting means 107 (step S701) to the file 2 having the file identifier 2 (step S702).
  • the access detection unit 107 confirms whether or not the writing to the file 2 is detected in step S603, and if it is detected (YES). It is checked whether or not the access identifier ⁇ is assigned to the file 2 (step S604).
  • the access detection means 107 encrypts the write identifier 2 (not shown) consisting of the access identifier ⁇ , the file identifier 2 and the write data 2 (not shown). It transmits to the decoding means 105 (step S605).
  • step S604 if the access identifier is not given to the file in step S604, an error identifier is returned to the application M (step S609).
  • step S606 of FIG. 9 when the writing to the file is not detected (NO), the access detecting means 107 confirms whether or not the reading from the file 2 is detected, and if detected (YES). It is checked whether the access identifier ⁇ is assigned to the file 2 (step S607).
  • the access detection means 107 transmits a read identifier 2 (not shown) consisting of the access identifier ⁇ and the file identifier 2 to the encryption / decryption means 105 (step S608).
  • step S607 if an access identifier is not given in step S607, an error identifier is returned to the application M (step S609).
  • step S606 when the reading of the file is not detected (NO), the access detection unit 107 ends the process of FIG.
  • the terminal 50 shown in FIG. 8 is applied to a PDA (Personal Digital Assistant) 52 shown in FIG. 11 as an example.
  • the PDA 52 includes a CPU (Central Processing Unit) 12 that operates under program control as a data processing device, a Flash memory (1) 22 that is a rewritable nonvolatile memory as a key storage device, and a Flash memory (2 as a file storage device). 23) has an address book 45 and a virus 46 as a plurality of applications.
  • a CPU Central Processing Unit
  • Flash memory (1) 22 that is a rewritable nonvolatile memory as a key storage device
  • Flash memory 2 as a file storage device
  • the CPU 12 operates as an execution detection unit 121, a key confirmation unit 122, a key generation unit 123, an access detection unit 127, an encryption / decryption unit 125, and an identifier addition unit 126.
  • a program for operating the CPU 11 as each of these means 121 to 126 is stored in a storage device (not shown) for storing a program in the PDA 52 as an information leakage prevention program.
  • the access identifier consisting of the user A and the address book 45 is AID1.
  • the flash memory (1) 22 stores a key element 1 including AID1 and KEY1 composed of an encryption key 1 and a decryption key 1 that are unique to AID1.
  • the file system of the flash memory (2) 23 has an area for associating a file with an access identifier, and uses a file name as the file identifier.
  • the execution detection unit 121 detects the activation of the address book 45, the execution detection unit 121 transmits AID 1 to the key confirmation unit 122.
  • the key confirmation unit 122 When receiving the AID1, the key confirmation unit 122 confirms from the flash memory (1) 22 whether there is a key element including the AID1. Now, since the key element 1 is stored in the flash memory (1) 22, the key confirmation unit 122 does not transmit AID 1 to the key generation unit 123.
  • the access detection unit 127 When the access detection unit 127 detects the creation of the file 1, the access detection unit 127 transmits AID1 instructing the creation of the file 1 and / addr / addr01 to the identifier adding unit 126.
  • the identifier assigning means 126 assigns AID1 to the file 1 whose file name is / addr / addr01 (associates the file 1 and AID1 on the file system of the flash memory (2) 23).
  • the address book 45 writes data 1 to the file 1 having the file name / addr / addr01 existing on the flash memory (2) 23.
  • the access detection means 127 When the access detection means 127 detects writing to the file 1, it checks whether AID1 is assigned to the file 1. Since AID1 is assigned to the file 1, a write identifier WID1 composed of AID1 and / addr / addr01 is transmitted to the encryption / decryption means 125.
  • the encryption / decryption means 125 searches the flash memory (1) 22 for the key element 1 including AID1, and acquires the common key 1 from the key element 1. After encrypting the data 1 using the acquired common key 1, the encrypted data 1 is written into the file 1 on the flash memory (2) 23.
  • the virus 46 is activated with the authority of the user A.
  • the access identifier composed of the user A and the virus 46 is AID2.
  • the execution detection unit 121 transmits AID2 to the key confirmation unit 122 when the activation of the virus 46 is detected.
  • the key confirmation unit 122 When the key confirmation unit 122 receives AID2, the key confirmation unit 122 tries to obtain a key element including AID2 from the flash memory (1) 22. Now, since the key element including AID 2 is not stored in the flash memory, AID 2 is transmitted to the key generation unit 123.
  • the key generation unit 123 When the key generation unit 123 receives AID2, the key generation unit 123 generates KEY2 including the encryption key 2 and the decryption key 2 that are unique to AID2. At this time, it is assumed that the encryption key 2 and the decryption key 2 are the common key 2.
  • the key element 2 composed of AID2 and KEY2 is stored in the flash memory (1) 22.
  • the virus 46 reads data 2 from the file 1 existing on the flash memory (2) 23.
  • the access detection unit 127 When the access detection unit 127 detects reading from the file 1, the access detection unit 127 checks whether AID2 is assigned to the file 1. Since AID2 is not assigned to file 1, an error identifier is returned to virus 46.
  • the flash memory and the HDD are used as the key storage device and the file storage device, the mailer and WEB server, or the address book and virus are used as the application, and the PC or PDA is used as the terminal.
  • the key storage device, the file storage device, the application, and the terminal are not limited to these examples, and other devices may be used.
  • the information leakage prevention apparatus can be realized by hardware, software, or a combination thereof, but the hardware and software configuration is not particularly limited, and the data processing described above. Any device can be applied as long as it has a device, a file storage device, and a key storage device and can realize the functions of the respective units of the data processing device.
  • a circuit or component software module, etc.
  • any of them may be used.
  • the data to be recorded in the file is encrypted for each user / application pair, and the other user / application pair is encrypted.
  • the present invention can also be used for terminals such as PCs and PDAs using information leakage prevention devices.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Theoretical Computer Science (AREA)
  • Bioethics (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Storage Device Security (AREA)

Abstract

 アクセス制御規則なしにファイルの情報漏洩を防止する情報漏洩防止装置を提供する。情報漏洩防止装置は、データ処理装置、ファイル記憶装置、鍵記憶装置を有する。データ処理装置は、アプリケーションの実行を、このアプリケーションを特定する識別子とこのアプリケーションを起動したユーザを特定する識別子との組であるアクセス識別子によって、このアプリケーションを起動したユーザ毎に検知する実行検知手段と、鍵記憶装置に、アクセス識別子に固有の暗号鍵と復号鍵の組が存在するか否かを確認する鍵確認手段と、アクセス識別子に固有の暗号鍵と復号鍵とを作成し、このアクセス識別子と暗号鍵と復号鍵との組を鍵要素として鍵記憶装置に保存する鍵生成手段と、アプリケーションによるファイルへのアクセスをユーザ毎に検知するアクセス検知手段と、アクセス識別子に固有の暗号鍵及び復号鍵の組を前記鍵記憶装置から取得し、この暗号鍵及び復号鍵の組を用いてデータの暗号化及び復号を行う暗号復号手段とを備える。

Description

情報漏洩防止装置、その方法及びそのプログラム
 本発明は、情報漏洩防止装置、その方法及びそのプログラムに係り、特に端末内で作成したファイルからの情報漏洩防止に関し、アプリケーションとそのアプリケーションの利用者を組としてファイルを暗号化し、ファイルを作成した利用者であっても、そのファイルの作成に用いたアプリケーション以外からはファイルを利用できないようにする情報漏洩防止装置、その方法及びそのプログラムに関する。
 近年、ウィルス感染による、PC(Personal Computer)などの端末に記録されているファイルやファイル内の情報の流出が増えている。このようなファイルの流出を防ぐためには、ファイルへのアクセス権限を適切に設定し、アプリケーションによるファイルへのアクセスを設定したアクセス権限に基づいて適切に制御することが有効である。
 アクセス権限の設定とアクセス権限に基づくアクセス制御技術として、非特許文献1があげられる。非特許文献1では、任意アクセス制御と強制アクセス制御について述べている。
 任意アクセス制御では、リソースの所有者がアクセス者の属性ごとにアクセス権限を設定する。OS(Operating System)は、設定されたアクセス権限に基づき、アクセス者によるリソースへのアクセスを制御する。
 任意アクセス制御の例として、Linuxにおけるファイルへのアクセス制御があげられる。Linuxでは、ファイルの所有者がファイルに対して、ユーザ(アクセス者)の属性(所有者、グループ、全員)ごとにアクセス権限(読み込み、書き込み、実行)を設定する。そのため、ファイルへのアクセス権限の設定は、ファイルの所有者に依存し、また、ファイルごとに設定を行う必要がある。このため、すべてのファイルに対して適切なアクセス権限が設定されていることは保証できない。
 一方、任意アクセス制御のようなアクセス制御規則が存在しない環境では、ウィルスなどによるファイル内からの情報漏洩が起こり得る。その理由は、任意アクセス制御ではユーザ単位でアクセス制御を行うため、ウィルスがユーザ権限で動作すれば、ユーザが作成したファイルから情報を取得できるためである。
 強制アクセス制御では、システム管理者がアクセス者とリソースをセキュリティ・レベルで段階分けする。そして、アクセス者がアクセス可能なリソースとそのリソースに対するアクセス権限を、セキュリティ・レベル単位で設定する。この設定をセキュリティポリシと呼ぶ。
 OSは、セキュリティポリシに基づき、アクセス者によるリソースへのアクセスを制御する。そのため、セキュリティポリシが適切に設定されていれば、ウィルスが動作したとしても、アクセス可能なリソースが限定され、重要なファイルやファイル内の情報の流出を防ぐことができる。
 強制アクセス制御の例として、SELinux(Security-Enhanced Linux)におけるファイルへのアクセス制御があげられる。SELinuxでは、管理者がアクセス者(アプリケーション)がリソース(たとえばファイル)に対してどのようなアクセス(たとえば読み込み、書き込み)が可能かをアクセス制御規則として記述する。
 SELinuxは、アクセス制御規則に基づいてアプリケーションによるファイルへのアクセスを制御する。そのため、リソースへのアクセス権限の設定は管理者が一元管理できるが、アクセス者、リソース、アクセスの関係をアクセス制御規則として記述する必要があり、アクセス者数、リソースの種類、アクセスの種類の増加に伴い、アクセス制御規則が複雑になる。
 以上のように、任意アクセス制御は、強制アクセス制御と比較してアクセス権限の管理が容易であるが、すべてのファイルに対して適切なアクセス権限が設定されていることは保証できないため、ウィルスなどに感染したときに情報漏洩が容易に起こりうる。
 一方で、強制アクセス制御は、ウィルスなどに感染したときの情報漏洩が起こりにくいが、アクセス制御規則の作成が複雑であり、ユーザ数、アプリケーション(アプリケーションソフトウェア)数、リソースの種類、アクセスの種類の増減に伴い保守が必要となる。
 そのため、暗号鍵を用いてファイルを暗号化し、復号鍵を用いて暗号化したファイルを復号する技術がある(例えば、特許文献1~4参照)。
特開2006-262450号公報 特開2007-108883号公報 特開平02-004037号公報 特開平09-134311号公報
アクセス制御の種類---DAC,MAC,RBAC(http://itpro.nikkeibp.co.jp/article/COLUMN/20060526/239136/)
 しかしながら、特許文献1の技術は、モデル名等のユーザが変更不能な機器固有の情報と管理者情報等のユーザが変更可能な情報とから鍵を生成している。この方式では、暗号化時及び復号化時に鍵を毎回生成するため、暗号化と復号で同じ鍵を使う共通暗号鍵方式しか採用できないという問題点がある。
 特許文献2の技術は、アクセス権IDをアクセス管理サーバに送信し、アクセス管理サーバから暗号鍵を受信してファイルを暗号化し、暗号化ファイルを所定領域に格納する。このため、あらかじめ保管されている鍵を用いてファイルを暗号化する方式しか利用できないという問題点がある。
 特許文献3は、パケットから知ったユーザ識別子から、ファイルへのアクセス権をチェックするというものに過ぎない。
 又、特許文献4は、媒体から読み出した媒体IDから個別鍵を生成し、この個別鍵を用いて媒体から読み出した許諾情報を復号してデータ復号鍵を生成し、このデータ復号鍵で媒体から読み出した暗号化データを復号して元のデータを生成する。これにより、暗号化データの機密保持を図る。このため、特許文献4では、鍵の生成等のアクセス制御が煩雑であるという問題点がある。
 本発明は、上記に鑑みてなされたもので、強制アクセス制御等のようなアクセス制御規則を必要とせずにウィルスなどによるファイル内からの情報漏洩を防止する情報漏洩防止装置、その方法及びそのプログラムを提供することを目的とする。
 上述の課題を解決するため、本発明に係る情報漏洩防止装置は、複数のアプリケーションを複数のユーザ毎にそれぞれ実行するデータ処理装置と、前記アプリケーションの実行に係るファイルを記憶するファイル記憶装置と、前記ファイルのデータの暗号化及び復号に用いる暗号鍵及び復号鍵の組を保存する鍵記憶装置と、を有し、前記データ処理装置は、前記アプリケーションの実行を、前記アプリケーションを特定する識別子と前記アプリケーションを起動したユーザを特定する識別子との組であるアクセス識別子によって、前記アプリケーションを起動したユーザ毎に検知する実行検知手段と、前記鍵記憶装置に、前記アクセス識別子に固有の暗号鍵と復号鍵の組が存在するか否かを確認する鍵確認手段と、前記鍵確認手段が前記アクセス識別子に固有の暗号鍵と復号鍵の組が前記鍵記憶装置に存在しない旨を確認した場合に、前記アクセス識別子に固有の前記暗号鍵と前記復号鍵とを作成し、該アクセス識別子と前記暗号鍵と前記復号鍵との組を鍵要素として前記鍵記憶装置に保存する鍵生成手段と、前記アプリケーションによる前記ファイルへのアクセスを前記ユーザ毎に検知するアクセス検知手段と、前記アクセス識別子に固有の暗号鍵及び復号鍵の組を前記鍵記憶装置から取得し、該取得した暗号鍵及び復号鍵の組を用いてデータの暗号化及び復号を行う暗号復号手段と、を備えることを特徴とする。
 上述の課題を解決するため、本発明に係る情報漏洩防止方法は、複数のアプリケーションを複数のユーザ毎にそれぞれ実行するデータ処理装置と、前記アプリケーションの実行に係るファイルを記憶するファイル記憶装置と、前記ファイルのデータの暗号化及び復号に用いる暗号鍵及び復号鍵の組を保存する鍵記憶装置と、を有するシステムにおける情報漏洩防止方法であって、前記アプリケーションの実行を、前記アプリケーションを特定する識別子と前記アプリケーションを起動したユーザを特定する識別子との組であるアクセス識別子によって、前記アプリケーションを起動したユーザ毎に検知する実行検知手順と、前記鍵記憶装置に、前記アクセス識別子に固有の暗号鍵と復号鍵の組が存在するか否かを確認する鍵確認手順と、前記鍵確認手順で前記アクセス識別子に固有の暗号鍵と復号鍵の組が前記鍵記憶装置に存在しない旨が確認された場合に、前記アクセス識別子に固有の暗号鍵と復号鍵の組を生成し、該アクセス識別子と前記暗号鍵と前記復号鍵との組を鍵要素として前記鍵記憶装置に保存する鍵生成手順と、前記アプリケーションによる前記ファイルへのアクセスを前記ユーザ毎に検知するアクセス検知手順と、前記アクセス識別子に固有の暗号鍵及び復号鍵の組を前記鍵記憶装置から取得する手順と、該取得した暗号鍵及び復号鍵の組を用いてデータの暗号化及び復号を行う暗号復号手順と、を備えることを特徴とする。
 上述の課題を解決するため、本発明に係る情報漏洩防止プログラムは、複数のアプリケーションを複数のユーザ毎にそれぞれ実行するデータ処理装置と、前記アプリケーションの実行に係るファイルを記憶するファイル記憶装置と、前記ファイルのデータの暗号化及び復号に用いる暗号鍵及び復号鍵の組を保存する鍵記憶装置と、を有するシステムにおける情報漏洩防止プログラムであって、前記アプリケーションの実行を、前記アプリケーションを特定する識別子と前記アプリケーションを起動したユーザを特定する識別子との組であるアクセス識別子によって、前記アプリケーションを起動したユーザ毎に検知する実行検知処理と、前記鍵記憶装置に、前記アクセス識別子に固有の暗号鍵と復号鍵の組が存在するか否かを確認する鍵確認処理と、前記鍵確認処理で前記アクセス識別子に固有の暗号鍵と復号鍵の組が前記鍵記憶装置に存在しない旨が確認された場合に、前記アクセス識別子に固有の暗号鍵と復号鍵の組を生成し、該アクセス識別子と前記暗号鍵と前記復号鍵との組を鍵要素として前記鍵記憶装置に保存する鍵生成処理と、前記アプリケーションによる前記ファイルへのアクセスを前記ユーザ毎に検知するアクセス検知処理と、前記アクセス識別子に固有の暗号鍵及び復号鍵の組を前記鍵記憶装置から取得する処理と、該取得した暗号鍵及び復号鍵の組を用いてデータの暗号化及び復号を行う暗号復号処理と、をコンピュータに実行させることを特徴とする。
 本発明によれば、アプリケーションの実行を、アプリケーションを特定する識別子とこのアプリケーションを起動したユーザを特定する識別子との組であるアクセス識別子によって、ユーザ毎に検知し、アクセス識別子に固有の暗号鍵と復号鍵の組が鍵記憶装置に存在しない場合に、このアクセス識別子に固有の暗号鍵と復号鍵とを作成し、アプリケーションによる前記ファイルへのアクセスを前記ユーザ毎に検知し、アクセス識別子に固有の暗号鍵及び復号鍵を用いてデータの暗号化及び復号を行うことにより、強制アクセス制御等のようなアクセス制御規則を必要とせずにウィルスなどによるファイル内からの情報漏洩を防止する情報漏洩防止装置、その方法及びそのプログラムを得ることができる。
本発明の第1の実施の形態に係る情報漏洩防止装置を用いた端末の構成を示すブロック図である。 図1に示す実行検知手段の動作を示す流れ図である。 図1に示す鍵確認手段の動作を示す流れ図である。 図1に示す鍵生成手段の動作を示す流れ図である。 図1に示すアクセス検知手段の動作を示す流れ図である。 図1に示す暗号復号手段の動作を示す流れ図である。 図1に示す情報漏洩防止装置を用いた端末の具体例を示すブロック図である。 本発明の第2の実施の形態に係る情報漏洩防止装置を用いた端末の構成を示すブロック図である。 図8に示すアクセス検知手段の動作を示す流れ図である。 図8に示す識別子付与手段の動作を示す流れ図である。 図8に示す情報漏洩防止装置を用いた端末の具体例を示すブロック図である。
 次に、本発明に係る情報漏洩防止装置、その方法及びそのプログラムの実施の形態について、図面を参照して詳細に説明する。
 [第1の実施の形態]
 図1は、本発明の第1の実施の形態に係る情報漏洩防止装置を用いた端末の構成を示すブロック図である。この図1において、本実施の形態に係る情報漏洩防止装置は、端末50に搭載されている。この端末50は、データ処理装置10と、鍵記憶装置20と、ファイル記憶装置30と、複数のアプリケーション(アプリケーションソフトウェア)1~Nとを含む。
 データ処理装置10は、複数のアプリケーション1~Nを複数のユーザ毎にそれぞれ実行するもので、本実施の形態では、実行検知手段101と、鍵確認手段102と、鍵生成手段103と、アクセス検知手段104と、暗号復号手段105とを含む。
 実行検知手段101は、アクセス識別子が示すアプリケーションの実行を検知すると、アクセス識別子を鍵確認手段102に送信する。なお、アクセス識別子とは、ユーザを特定する識別子とアプリケーションを特定する識別子との組のことをいう。ユーザを特定する識別子には、ユーザのIDを用いればよいし、アプリケーションを特定する識別子は、そのアプリケーションの実行ファイル名でよい。
 鍵確認手段102は、アクセス識別子を実行検知手段101から受信すると、鍵記憶装置20にアクセス識別子を含む鍵要素が存在するか否かを確認する。鍵要素が存在しない場合は、実行検知手段101から受信したアクセス識別子を鍵生成手段103に送信する。なお、鍵要素とは、アクセス識別子と鍵の組のことをいい、鍵とは、データの暗号化に用いる暗号鍵と暗号化されたデータを復号する復号鍵とが組になったものをいう。
 鍵生成手段103は、アクセス識別子を鍵確認手段102から受信すると、そのアクセス識別子に対して一意な鍵を生成し、そのアクセス識別子及び作成した鍵からなる鍵要素を鍵記憶装置20に保存する。
 アクセス検知手段104は、ファイルへの書き込みを検知すると、書き込み識別子を暗号復号手段105に送信し、ファイルの読み込みを検知すると、読み込み識別子を暗号復号手段105に送信する。なお、書き込み識別子とは、書き込みを指示したアクセス識別子とファイル識別子と書き込むデータとの組のことをいい、読み込み識別子とは、読み込みを指示したアクセス識別子とファイル識別子の組のことをいう。ファイル識別子には、そのファイルのファイル名を用いる。
 暗号復号手段105は、書き込み識別子をアクセス検知手段104から受信すると、この書き込み識別子に含まれるアクセス識別子を有する鍵要素を鍵記憶装置20から検索し、この検索によって抽出した鍵要素から暗号鍵を取得し、書き込みデータをこの暗号鍵で暗号化した後に、ファイル記憶装置30上のファイル識別子が示すファイルに暗号化したデータを書き込む。
 又、暗号復号手段105は、読み込み識別子をアクセス検知手段104から受信すると、この読み込み識別子に含まれるアクセス識別子を有する鍵要素を鍵記憶装置20から検索し、この検索によって抽出した鍵要素から復号鍵を取得し、ファイル記憶装置30上のファイル識別子が示すファイルから読み込んだデータを復号鍵で復号した後に、アクセス識別子が示すアプリケーションに復号したデータを渡す。
 鍵記憶装置20は、前述の鍵要素を記憶する。
 ファイル記憶装置30は、アプリケーションが作成したファイルを記憶する。
 次に、図1~図6を参照して、本実施の形態に係る情報漏洩防止装置の全体の動作について詳細に説明する。なお、鍵記憶装置20には鍵要素が登録されていないとする。
 図2は、図1に示す実行検知手段101の動作を示す流れ図である。今、ユーザA(図示せず)がアプリケーションM(1≦M≦N)を起動したとする。このときユーザAとアプリケーションMからなるアクセス識別子をアクセス識別子α(図示せず)と表記する。
 実行検知手段101は、アプリケーションMの実行を検知すると(ステップS101)、アクセス識別子αを鍵確認手段102に送信する(ステップS102)。
 図3は、図1に示す鍵確認手段102の動作を示す流れ図である。この図4において、鍵確認手段102はアクセス識別子αを受信すると(ステップS201)、鍵記憶装置20にアクセス識別子αを含む鍵要素が存在するか否かを確認する(ステップS202)。
 前述のように、鍵記憶装置20には、鍵要素が保存されていないため、鍵確認手段102は、アクセス識別子αを鍵生成手段103に送信する(ステップS203)。
 一方で、ステップS202において、鍵記憶装置20に鍵要素が保存されている場合(YES)、鍵確認手段102は、アクセス識別子αを鍵生成手段103に送信することなく、図3の処理を終了する。
 図4は、図1に示す鍵生成手段103の動作を示す流れ図である。この図4において、鍵生成手段103は、アクセス識別子αを鍵確認手段102から受信すると(ステップS301)、アクセス識別子αに対して一意な鍵α1(鍵α1は、暗号鍵α2と復号鍵α3との組を指す)を生成し(ステップS302)、アクセス識別子αと鍵α1からなる鍵要素α4を生成する(ステップS303)。そして、鍵要素α4を鍵記憶装置20に保存する(ステップS304)。
 今、アプリケーションMがファイル識別子1(図示せず)を持つファイル1(図示せず)にデータ1(図示せず)の書き込みを行うとする場合を、図5及び図6を用いて説明する。ここで、図5は、図1に示すアクセス検知手段104の動作を示す流れ図であり、図6は、図1に示す暗号復号手段105の動作を示す流れ図である。
 まず、図5のステップS401において、アクセス検知手段104は、ファイル1への書き込みを検知すると(YES)、アクセス識別子αとファイル識別子1とデータ1からなる書き込み識別子1(図示せず)を暗号復号手段105に送信する(ステップS402)。
 次に、図6において、暗号復号手段105は、書き込み識別子1を受信すると(ステップS501)、アクセス識別子αを含む鍵要素α4を鍵記憶装置20から検索し、鍵要素α4から暗号鍵α2を取得する(ステップS502)。
 更に、暗号復号手段105は、取得した暗号鍵α2を用いてデータ1を暗号化した後に、ファイル記憶装置30上のファイル1に暗号化したデータ1を書き込む(ステップS503)。
 次に、アプリケーションMがファイル識別子1を持つファイル1からデータ2(図示せず)の読み込みを行うとする場合を、図5及び図6を用いて説明する。
 図5のステップS401において、ファイル1への書き込みを検知しなかった場合(NO)、アクセス検知手段104は、ステップS403において読み込みを検知したか否かを確認し、検知した場合(YES)、アクセス識別子αとファイル識別子1からなる読み込み識別子1(図示せず)を暗号復号手段105に送信する(ステップS404)。
 なお、ステップS403において、読み込みを検知しなかった場合(NO)、アクセス検知手段104は、書き込み識別子又は読み込み識別子を暗号復号手段105に送信することなく、図6の処理を終了する。
 図6のステップS501において、書き込み識別子を受信しなかった場合(NO)、暗号復号手段105は、ステップS504において読み込み識別子1を受信したか否かを確認し、受信した場合(YES)、アクセス識別子αを含む鍵要素α4を鍵記憶装置20から検索し、鍵要素α4から復号鍵α3を取得する(ステップS505)。
 続いて、暗号復号手段105は、ファイル記憶装置30上のファイル1から読み込んだデータ2を復号鍵α3で復号した後に、アプリケーションMに復号したデータ2を渡す(ステップS506)。
 なお、ステップS504において、読み込み識別子を受信しなかった場合(NO)、暗号復号手段105は、データの暗号化又は復号を行うことなく、図6の処理を終了する。
 次に、図1に示す本実施の形態に係る情報漏洩防止装置を用いた端末の具体例について、図7を参照して説明する。
 図1に示す端末50は、一例として、図7に示すPC(Personal Computer)51に適用される。このPC51は、データ処理装置としてプログラム制御で動作するCPU(Central Processing Unit)11を、鍵記憶装置として書き換え可能な不揮発性メモリであるFlashメモリ21を、ファイル記憶装置としてHDD(Hard Disk Drive)31を、複数のアプリケーションとしてメーラ41とWEBサーバ42とを持つ。
 CPU11は、図7の例では、実行検知手段111、鍵確認手段112、鍵生成手段113、アクセス検知手段114及び暗号復号手段115として動作する。これら各手段111~115としてCPU11を動作させるプログラムは、情報漏洩防止プログラムとして、PC51内のプログラムを格納する記憶装置(非図示)に格納されている。
 ここで、ユーザAとメーラ41からなるアクセス識別子をAID1とする。また、Flashメモリ21には鍵要素が保存されていないとし、ファイル識別子としてファイル名を用いるとする。
 今、ユーザAがメーラ41を起動したとする。実行検知手段111は、メーラ41の起動を検知すると、AID1を鍵確認手段112に送信する。
 鍵確認手段112は、AID1を受信すると、Flashメモリ21からAID1を含む鍵要素が存在するか否かを確認する。今、Flashメモリ21には鍵要素が保存されていないため、AID1を鍵生成手段113に送信する。
 鍵生成手段113は、AID1を受信すると、AID1に対して一意な暗号鍵1と復号鍵1からなるKEY1を生成する。このとき、暗号鍵1と復号鍵1は、それぞれ、秘密鍵1と公開鍵1であるとする。鍵生成手段113は、AID1とKEY1からなる鍵要素1をFlashメモリ21に保存する。
 今、メーラ41がHDD31上に存在するファイル名/mail/mail01であるファイル1にデータ1の書き込みを行うとする。
 アクセス検知手段114は、ファイル1への書き込みを検知すると、AID1と/mail/mail01とデータ1とからなる書き込み識別子WID1を暗号復号手段115に送信する。
 暗号復号手段115は、WID1を受信すると、AID1を含む鍵要素1をFlashメモリ21から検索し、鍵要素1から秘密鍵1を取得する。取得した秘密鍵1を用いてデータ1を暗号化した後に、HDD31上のファイル1に暗号化したデータ1を書き込む。
 次に、メーラ41がHDD31上に存在するファイル1からデータ2の読み込みを行うとする。
 アクセス検知手段114は、ファイル1への読み込みを検知すると、AID1と/mail/mail01からなる読み込み識別子RID1を暗号復号手段115に送信する。
 暗号復号手段115は、RID1を受信すると、AID1を含む鍵要素1をFlashメモリ21から検索し、鍵要素1から公開鍵1を取得する。更に、暗合化されたデータ2をファイル1から読み込んだ後、データ2を公開鍵1で復号し、復号したデータ2をメーラ41に渡す。
 次に、ユーザAがWEBサーバ42を起動したとする。このとき、ユーザAとWEBサーバ42からなるアクセス識別子をAID2とする。
 実行検知手段111は、WEBサーバ42の起動を検知すると、AID2を鍵確認手段112に送信する。
 鍵確認手段112は、AID2を受信すると、Flashメモリ21にAID2を含む鍵要素が存在するか否かを確認する。今、Flashメモリ21には、AID2を含む鍵要素が保存されていないため、AID2を鍵生成手段113に送信する。
 鍵生成手段113は、AID2を受信すると、AID2に対して一意な暗号鍵2と復号鍵2からなるKEY2を生成する。このとき、暗号鍵2と復号鍵2はそれぞれ、秘密鍵2と公開鍵2であるとする。鍵生成手段113は、AID2とKEY2からなる鍵要素2をFlashメモリ21に保存する。
 今、WEBサーバ42がHDD31上に存在するファイル1からデータ3の読み込みを行うとする。
 アクセス検知手段114は、ファイル1からデータ3の読み込みを検知すると、AID2と/mail/mail01からなる読み込み識別子RID2を暗号復号手段115に送信する。
 暗号復号手段115は、RID2を受信すると、AID2を含む鍵要素2をFlashメモリ21から検索し、鍵要素2から公開鍵2を取得する。暗号化されたデータ3をファイル2から読み込んだ後、公開鍵2を用いてデータ3の復号を試みる。データ3は、秘密鍵1で暗号化されたものなので、公開鍵2による復号は失敗する。そのため、暗号化されたままのデータ3をWEBサーバ42に渡す。
 以上説明したように、本実施の形態では、ファイルに書き込まれるデータはユーザとアプリケーションの組から定まる一意な暗号鍵で暗号化されるため、ファイルが流出してもファイル内のデータが読み込まれるおそれはない。また、暗号化されたデータを復号できるのは、ユーザとアプリケーションの組だけであるため、ユーザ権限で動作するウィルスなどに感染しても、ウィルスはファイル内のデータを復号できない。そのため、ファイル内のデータが漏洩することを防ぐことができる。
 又、ファイル内のデータはユーザとアプリケーションの組から一意に定まる暗号鍵で暗号化され、データを書き込んだユーザとアプリケーションの組のみ暗号化したデータを復号できる。そのため、アプリケーションによるファイルに対するアクセス制御を必要とせずにデータの漏洩を防ぐことでき、アクセス制御規則が不要となる。
 更に、ファイル内のデータの暗号、復号に用いる鍵はユーザとアプリケーションの組から一意に定まるように自動で生成されるため、あらかじめ暗号鍵、復号鍵を用意する必要がなく、ユーザやアプリケーションの増加に対して保守をする必要がない。
 [第2の実施の形態]
 次に、本発明の第2の実施の形態について図面を参照して詳細に説明する。ここで、図8は、本実施の形態に係る情報漏洩防止装置を用いた端末の構成を示すブロック図である。
 図8を参照すると、本実施の形態は、第1の実施の形態の構成要素に加え、ファイルの作成を指示したアクセス識別子をファイルに付与する識別子付与手段106を新たに備える。
 又、本実施の形態のアクセス検知手段104に代えて、アクセス検知手段107を備える。
 このアクセス検知手段107は、ファイルの作成を検知すると、ファイルの作成を指示したアクセス識別子とファイル識別子とを識別子付与手段106に送信する。
 又、アクセス検知手段107は、ファイルへの書き込みを検知すると、書き込みを指示したアクセス識別子が、ファイル識別子が示すファイルに付与されているか調べ、付与されている場合は、書き込み識別子を暗号復号手段105に送信し、付与されていない場合は、エラー識別子をアクセス識別子が示すアプリケーションに返す。
 更に、アクセス検知手段107は、ファイルの読み込みを検知すると、読み込みを指示したアクセス識別子がファイル識別子が示すファイルに付与されているか否かを調べ、付与されている場合は、読み込み識別子を暗号復号手段105に送信し、付与されていない場合は、エラー識別子をアクセス識別子が示すアプリケーションに返す。
 次に、図8、図9及び図10を参照して、本実施の形態の全体の動作について詳細に説明する。ここで、図9は、図8に示すアクセス検知手段107の動作を示す流れ図であり、図10は、図8に示す識別子付与手段106の動作を示す流れ図である。
 なお、本実施の形態の全体の動作は、識別子付与手段106とアクセス検知手段107以外は第1の実施の形態と同じであるため、かかる部分についての詳細な説明は省略する。
 まず、ユーザA(図示せず)とアプリケーションM(1≦M≦N)からなるアクセス識別子をアクセス識別子αとする。今、ユーザAが起動したアプリケーションMが、ファイル識別子2(図示せず)を持つファイル2の作成を試みたとする。
 図9において、アクセス検知手段107は、ファイル2の作成を検知すると(ステップS601)、ファイル2の作成を指示したアクセス識別子αとファイル識別子2を識別子付与手段106に送信する(ステップS602)。
 図10において、識別子付与手段106は、アクセス検知手段107から受信したアクセス識別子αを(ステップS701)、ファイル識別子2を有するファイル2に付与する(ステップS702)。
 今、アプリケーションMがファイル2にデータの書き込みを行うとする。
 図9のステップS601において、ファイルの作成を検知しなかった場合(NO)、アクセス検知手段107は、ステップS603においてファイル2への書き込みを検知したか否かを確認し、検知した場合(YES)、アクセス識別子αがファイル2に付与されているか否かを調べる(ステップS604)。
 ファイル2には、アクセス識別子αが付与されているため、アクセス検知手段107は、アクセス識別子αとファイル識別子2と書き込みデータ2(図示せず)からなる書き込み識別子2(図示せず)を、暗号復号手段105に送信する(ステップS605)。
 一方で、ステップS604において、アクセス識別子がファイルに付与されていない場合は、アプリケーションMにエラー識別子を返す(ステップS609)。
 又、図9のステップS606において、ファイルへの書き込みを検知しなかった場合(NO)、アクセス検知手段107は、ファイル2からの読み込みを検知したか否かを確認し、検知した場合(YES)、アクセス識別子αがファイル2に付与されているかを調べる(ステップS607)。
 ファイル2にはアクセス識別子αが付与されているため、アクセス検知手段107は、アクセス識別子αとファイル識別子2からなる読み込み識別子2(図示せず)を暗号復号手段105に送信する(ステップS608)。
 一方で、ステップS607において、アクセス識別子が付与されていない場合は、アプリケーションMにエラー識別子を返す(ステップS609)。
 なお、ステップS606において、ファイルの読み込みを検知しなかった場合(NO)、アクセス検知手段107は、図9の処理を終了する。
 次に、図8に示す図1に示す本実施の形態に係る情報漏洩防止装置を用いた端末50の具体例について、図11を参照して説明する。
 図8に示す端末50は、一例として、図11に示すPDA(Personal Digital Assistant)52に適用される。このPDA52は、データ処理装置としてプログラム制御で動作するCPU(Central Processing Unit)12を、鍵記憶装置として書き換え可能な不揮発性メモリであるFlashメモリ(1)22を、ファイル記憶装置としてFlashメモリ(2)23を、複数のアプリケーションとしてアドレス帳45とウィルス46とを持つ。
 CPU12は、図11の例では、実行検知手段121、鍵確認手段122、鍵生成手段123、アクセス検知手段127、暗号復号手段125及び識別子付与手段126として動作する。これら各手段121~126としてCPU11を動作させるプログラムは、情報漏洩防止プログラムとして、PDA52内のプログラムを格納する記憶装置(非図示)に格納されている。
 ここで、ユーザAとアドレス帳45からなるアクセス識別子をAID1とする。またFlashメモリ(1)22には、AID1と、AID1に一意な暗号鍵1及び復号鍵1からなるKEY1と、を備える鍵要素1が保存されているとする。このとき、暗号鍵1及び復号鍵1は、共通鍵1であるとする(すなわち、暗号鍵1=復号鍵1)。
 又、Flashメモリ(2)23のファイルシステムは、ファイルとアクセス識別子を関連付ける領域を持つものとし、ファイル識別子としてファイル名を用いるとする。
 今、ユーザAがアドレス帳45を起動したとする。実行検知手段121はアドレス帳45の起動を検知すると、AID1を鍵確認手段122に送信する。
 鍵確認手段122は、AID1を受信すると、Flashメモリ(1)22からAID1を含む鍵要素が存在するか否かを確認する。今、Flashメモリ(1)22には、鍵要素1が保存されているため、鍵確認手段122は、AID1を鍵生成手段123に送信しない。
 今、アドレス帳45が、ファイル名/addr/addr01であるファイル1の作成を試みたとする。
 アクセス検知手段127は、ファイル1の作成を検知すると、ファイル1の作成を指示したAID1と/addr/addr01とを識別子付与手段126に送信する。
 識別子付与手段126は、AID1をファイル名が/addr/addr01であるファイル1に付与する(Flashメモリ(2)23のファイルシステム上で、ファイル1とAID1を関連付ける)。
 今、アドレス帳45がFlashメモリ(2)23上に存在するファイル名/addr/addr01であるファイル1にデータ1の書き込みを行うとする。
 アクセス検知手段127は、ファイル1への書き込みを検知すると、AID1がファイル1に付与されているか調べる。ファイル1には、AID1が付与されているため、AID1と/addr/addr01からなる書き込み識別子WID1を暗号復号手段125に送信する。
 暗号復号手段125は、WID1を受信すると、AID1を含む鍵要素1をFlashメモリ(1)22から検索し、鍵要素1から共通鍵1を取得する。取得した共通鍵1を用いてデータ1を暗号化した後に、Flashメモリ(2)23上のファイル1に暗号化したデータ1を書き込む。
 次に、ウィルス46がユーザAの権限で起動したとする。このとき、ユーザAとウィルス46からなるアクセス識別子をAID2とする。
 実行検知手段121は、ウィルス46の起動を検知すると、AID2を鍵確認手段122に送信する。
 鍵確認手段122は、AID2を受信すると、Flashメモリ(1)22からAID2を含む鍵要素の取得を試みる。今、Flashメモリには、AID2を含む鍵要素が保存されていないため、AID2を鍵生成手段123に送信する。
 鍵生成手段123は、AID2を受信すると、AID2に対して一意な暗号鍵2と復号鍵2とからなるKEY2を生成する。このとき、暗号鍵2及び復号鍵2は、共通鍵2であるとする。AID2とKEY2からなる鍵要素2をFlashメモリ(1)22に保存する。
 今、ウィルス46がFlashメモリ(2)23上に存在するファイル1からデータ2の読み込みを行うとする。
 アクセス検知手段127は、ファイル1からの読み込みを検知すると、AID2がファイル1に付与されているか調べる。ファイル1には、AID2は付与されていないため、エラー識別子をウィルス46に返す。
 以上説明したように、本実施の形態では、第1の実施の形態での効果に加え、ファイルを作成したユーザとアプリケーションとの組のみがそのファイルにアクセスできる。そのため、他のユーザとアプリケーションの組によりファイル内のデータの改ざんを防ぐことができる。
 更に、ファイルからデータを読み込むときに復号できない場合、読み込みアクセス自体が拒否されるため、アプリケーションが復号されていない意味のないデータを読み込むことがなくなるため、本実施の形態に係るPDA等の装置自体の性能が向上する。
 又、上記各実施の形態に係る情報漏洩防止装置では、鍵記憶装置及びファイル記憶装置としてそれぞれFlashメモリ及びHDDを、アプリケーションとしてメーラ及びWEBサーバ、又はアドレス帳及びウィルスを、端末としてPC又はPDAを、それぞれ例に挙げて説明したが、鍵記憶装置、ファイル記憶装置、アプリケーション及び端末はこれらの例に限定されず、他のものであってもよい。
 なお、上記各実施の形態に係る情報漏洩防止装置は、ハードウェア、ソフトウェア又はこれらの組合せにより実現することができるが、そのハードウェア、ソフトウェア構成は特に限定されるものではなく、上述したデータ処理装置、ファイル記憶装置、及び鍵記憶装置を有し、データ処理装置の各手段の機能を実現可能な構成であれば、いずれのものでも適用可能である。例えば、上記データ処理装置の各手段の機能毎に回路や部品(ソフトウェアモジュール等)を独立させて個別に構成したものでも、複数の機能を1つの回路や部品に組み入れて一体的に構成したものでも、いずれのものであってもよい。
 また、上記データ処理装置の各手段の機能を、プログラムコードを用いて実現する場合、かかるプログラムコード及びこれを記録する記録媒体は、本発明の範疇に含まれる。この場合、オペレーティングシステム(OS)等の他のソフトウェアと共に上記各手段の機能が実現される場合は、それらのプログラムコードも含まれる。
 以上、実施の形態を参照して本願発明を説明したが、本願発明は上記実施の形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
 この出願は、2008年4月10日に出願された日本出願特願2008-102428号を基礎とする優先権を主張し、その開示の全てをここに取り込む。
 本発明によれば、ユーザとアプリケーションの組ごとに一意な暗号鍵と復号鍵を生成することで、ユーザとアプリケーションの組ごとにファイルへ記録するデータを暗号化し、その他のユーザとアプリケーションとの組による当該ファイルへのアクセスを防止し、当該ファイルに記録されたデータの漏洩を防止する情報漏洩防止装置、その方法及びそのプログラムの用途に利用できる。本発明は、情報漏洩防止装置を用いたPC、PDAなどの端末の用途にも利用できる。
 1~N、M アプリケーション
 10 データ処理装置
 11、12 CPU
 20 鍵記憶装置
 21 Flashメモリ
 22 Flashメモリ(1)
 23 Flashメモリ(2)
 30 ファイル記憶装置
 31 HDD
 41 メーラ
 42 WEBサーバ
 45 アドレス帳
 46 ウィルス
 50 端末
 51 PC
 52 PDA
 101 実行検知手段
 102 鍵確認手段
 103 鍵生成手段
 104、107 アクセス検知手段
 105 暗号復号手段
 106 識別子付与手段
 111 実行検知手段
 112 鍵確認手段
 113 鍵生成手段
 114 アクセス検知手段
 115 暗号復号手段
 121 実行検知手段
 122 鍵確認手段
 123 鍵生成手段
 125 暗号復号手段
 126 識別子付与手段
 127 アクセス検知手段

Claims (40)

  1.  複数のアプリケーションを複数のユーザ毎にそれぞれ実行するデータ処理装置と、
     前記アプリケーションの実行に係るファイルを記憶するファイル記憶装置と、
     前記ファイルのデータの暗号化及び復号に用いる暗号鍵及び復号鍵の組を保存する鍵記憶装置と、を有し、
     前記データ処理装置は、
     前記アプリケーションの実行を、前記アプリケーションを特定する識別子と前記アプリケーションを起動したユーザを特定する識別子との組であるアクセス識別子によって、前記アプリケーションを起動したユーザ毎に検知する実行検知手段と、
     前記鍵記憶装置に、前記アクセス識別子に固有の暗号鍵と復号鍵の組が存在するか否かを確認する鍵確認手段と、
     前記鍵確認手段が前記アクセス識別子に固有の暗号鍵と復号鍵の組が前記鍵記憶装置に存在しない旨を確認した場合に、前記アクセス識別子に固有の前記暗号鍵と前記復号鍵とを作成し、該アクセス識別子と前記暗号鍵と前記復号鍵との組を鍵要素として前記鍵記憶装置に保存する鍵生成手段と、
     前記アプリケーションによる前記ファイルへのアクセスを前記ユーザ毎に検知するアクセス検知手段と、
     前記アクセス識別子に固有の暗号鍵及び復号鍵の組を前記鍵記憶装置から取得し、該取得した暗号鍵及び復号鍵の組を用いてデータの暗号化及び復号を行う暗号復号手段と、を備えることを特徴とする情報漏洩防止装置。
  2.  前記実行検知手段は、検知した前記アクセス識別子を前記鍵確認手段に送信し、
     前記鍵確認手段は、該受信した前記アクセス識別子を含む前記鍵要素が前記鍵記憶装置に存在するか否かを確認することを特徴とする請求項1に記載の情報漏洩防止装置。
  3.  前記鍵確認手段は、前記実行検知手段から受信したアクセス識別子を含む鍵要素が前記鍵記憶装置に存在しない場合、前記アクセス識別子を前記鍵生成手段に送信し、
     前記鍵生成手段は、該受信した前記アクセス識別子に対して固有の前記暗号鍵と前記復号鍵の組を生成し、前記アクセス識別子と前記暗号鍵と前記復号鍵との組を前記鍵要素として前記鍵記憶装置に保存することを特徴とする請求項1又は2記載の情報漏洩防止装置。
  4.  前記アクセス検知手段は、前記アプリケーションによる前記ファイルへの書き込みを検知すると、前記アクセス識別子と前記ファイルのファイル識別子と該書き込みに係るデータとから成る書き込み識別子を前記暗号復号手段に送信し、
     前記暗号復号手段は、該受信した前記書き込み識別子が含む前記アクセス識別子について前記鍵記憶装置を検索し、該検索で抽出した前記鍵要素から前記暗号鍵を取得し、該取得した前記暗号鍵を用いて暗号化した前記データを前記ファイルに書き込むことを特徴とする請求項1乃至3のいずれか1項に記載の情報漏洩防止装置。
  5.  前記アクセス検知手段は、前記アプリケーションによる前記ファイルの読み込みを検知すると、前記アクセス識別子と前記ファイルのファイル識別子とから成る読み込み識別子を前記暗号復号手段に送信し、
     前記暗号復号手段は、該受信した前記読み込み識別子が含む前記アクセス識別子について前記鍵記憶装置を検索し、該検索で抽出した前記鍵要素から前記復号鍵を取得し、該取得した前記復号鍵を用いて前記ファイルから読み込んだデータを復号し、前記アプリケーションに渡すことを特徴とする請求項1乃至4のいずれか1項に記載の情報漏洩防止装置。
  6.  前記暗号鍵及び前記復号鍵は、それぞれ秘密鍵又は公開鍵のいずれかである、又は、前記暗号鍵及び前記復号鍵は、共通鍵であることを特徴とする請求項1乃至5のいずれか1項に記載の情報漏洩防止装置。
  7.  前記ファイル識別子は、前記ファイルのフルパス名であることを特徴とする請求項4又は5に記載の情報漏洩防止装置。
  8.  前記アクセス識別子は、前記アプリケーションを特定する識別子として、前記アプリケーションの実行ファイル名を、前記ユーザを特定する識別子として、前記ユーザのIDを、それぞれ含むことを特徴とする請求項1乃至5のいずれか1項に記載の情報漏洩防止装置。
  9.  前記データ処理装置は、前記アクセス識別子をファイルに付与する識別子付与手段を更に備えることを特徴とする請求項1乃至3のいずれか1項に記載の情報漏洩防止装置。
  10.  前記アクセス検知手段は、前記アプリケーションによるファイルの作成を検知すると、前記アクセス識別子及び前記ファイルのファイル識別子を前記識別子付与手段に送信し、
     前記識別子付与手段は、該受信した前記ファイル識別子を有するファイルに、該受信した前記アクセス識別子を付与することを特徴とする請求項9に記載の情報漏洩防止装置。
  11.  前記アクセス検知手段は、前記アプリケーションによるファイルへの書き込みを検知すると、前記アクセス識別子が前記ファイルに付与されているか否かを調べ、付与されている場合は前記アクセス識別子と前記ファイル識別子と該書き込みに係るデータとから成る書き込み識別子を前記暗号復号手段に送信し、付与されていない場合は前記アプリケーションにエラー識別子を返し、
     前記暗号復号手段は、該受信した前記書き込み識別子が含む前記アクセス識別子について前記鍵記憶装置を検索し、該検索で抽出した前記鍵要素から前記暗号鍵を取得し、該取得した前記暗号鍵を用いて暗号化した前記データを前記ファイルに書き込むことを特徴とする請求項9又は10に記載の情報漏洩防止装置。
  12.  前記アクセス検知手段は、前記アプリケーションによるファイルの読み込みを検知すると、前記アクセス識別子が前記ファイルに付与されているか否かを調べ、付与されている場合は前記アクセス識別子と前記ファイル識別子とから成る読み込み識別子を前記暗号復号手段に送信し、付与されていない場合は前記アプリケーションにエラー識別子を返し、
     前記暗号復号手段は、該受信した前記読み込み識別子が含む前記アクセス識別子について前記鍵記憶装置を検索し、該検索で抽出した前記鍵要素から前記復号鍵を取得し、該取得した前記復号鍵を用いて前記ファイルから読み込んだデータを復号し、前記アプリケーションに渡すことを特徴とする請求項9乃至11のいずれか1項に記載の情報漏洩防止装置。
  13.  前記暗号鍵及び前記復号鍵は、それぞれ秘密鍵又は公開鍵のいずれかである、又は、前記暗号鍵及び前記復号鍵は、共通鍵であることを特徴とする請求項11又は12に記載の情報漏洩防止装置。
  14.  前記ファイル識別子は、前記ファイルのフルパス名であることを特徴とする請求項10乃至12のいずれか1項に記載の情報漏洩防止装置。
  15.  前記アクセス識別子は、前記アプリケーションを特定する識別子として、前記アプリケーションの実行ファイル名を、前記ユーザを特定する識別子として、前記ユーザのIDを、それぞれ含むことを特徴とする請求項9乃至12のいずれか1項に記載の情報漏洩防止装置。
  16.  複数のアプリケーションを複数のユーザ毎にそれぞれ実行するデータ処理装置と、前記アプリケーションの実行に係るファイルを記憶するファイル記憶装置と、前記ファイルのデータの暗号化及び復号に用いる暗号鍵及び復号鍵の組を保存する鍵記憶装置と、を有するシステムにおける情報漏洩防止方法であって、
     前記アプリケーションの実行を、前記アプリケーションを特定する識別子と前記アプリケーションを起動したユーザを特定する識別子との組であるアクセス識別子によって、前記アプリケーションを起動したユーザ毎に検知する実行検知手順と、
     前記鍵記憶装置に、前記アクセス識別子に固有の暗号鍵と復号鍵の組が存在するか否かを確認する鍵確認手順と、
     前記鍵確認手順で前記アクセス識別子に固有の暗号鍵と復号鍵の組が前記鍵記憶装置に存在しない旨が確認された場合に、前記アクセス識別子に固有の暗号鍵と復号鍵の組を生成し、該アクセス識別子と前記暗号鍵と前記復号鍵との組を鍵要素として前記鍵記憶装置に保存する鍵生成手順と、
     前記アプリケーションによる前記ファイルへのアクセスを前記ユーザ毎に検知するアクセス検知手順と、
     前記アクセス識別子に固有の暗号鍵及び復号鍵の組を前記鍵記憶装置から取得する手順と、
     該取得した暗号鍵及び復号鍵の組を用いてデータの暗号化及び復号を行う暗号復号手順と、
     を備えることを特徴とする情報漏洩防止方法。
  17.  前記アクセス検知手順は、前記アプリケーションによる前記ファイルへの書き込みを検知すると、前記アクセス識別子と前記ファイルのファイル識別子と該書き込みに係るデータとから成る書き込み識別子を前記暗号復号手順に引き渡し、
     前記暗号復号手順は、前記書き込み識別子が含む前記アクセス識別子について前記鍵記憶装置を検索し、該検索で抽出した前記鍵要素から前記暗号鍵を取得し、該取得した前記暗号鍵を用いて暗号化した前記データを前記ファイルに書き込むことを特徴とする請求項16に記載の情報漏洩防止方法。
  18.  前記アクセス検知手順は、前記アプリケーションによる前記ファイルの読み込みを検知すると、前記アクセス識別子と前記ファイルのファイル識別子とから成る読み込み識別子を前記暗号復号手順に引き渡し、
     前記暗号復号手順は、該受信した前記読み込み識別子が含む前記アクセス識別子について前記鍵記憶装置を検索し、該検索で抽出した前記鍵要素から前記復号鍵を取得し、該取得した前記復号鍵を用いて前記ファイルから読み込んだデータを復号し、前記アプリケーションに渡すことを特徴とする請求項16又は17に記載の情報漏洩防止方法。
  19.  前記暗号鍵及び前記復号鍵は、それぞれ秘密鍵又は公開鍵のいずれかである、又は、前記暗号鍵及び前記復号鍵は、共通鍵であることを特徴とする請求項16乃至18のいずれか1項に記載の情報漏洩防止方法。
  20.  前記ファイル識別子は、前記ファイルのフルパス名であることを特徴とする請求項17又は18に記載の情報漏洩防止方法。
  21.  前記アクセス識別子は、前記アプリケーションを特定する識別子として、前記アプリケーションの実行ファイル名を、前記ユーザを特定する識別子として、前記ユーザのIDを、それぞれ含むことを特徴とする請求項16乃至18のいずれか1項に記載の情報漏洩防止方法。
  22.  前記アクセス識別子をファイルに付与する識別子付与手順を更に備え、
     前記アクセス検知手順は、前記アプリケーションによるファイルの作成を検知すると、前記アクセス識別子及び前記ファイルのファイル識別子を前記識別子付与手順に引き渡し、
     前記識別子付与手順は、前記ファイル識別子を有するファイルに、前記アクセス識別子を付与することを特徴とする請求項16に記載の情報漏洩防止方法。
  23.  前記アクセス検知手順は、前記アプリケーションによるファイルへの書き込みを検知すると、前記アクセス識別子が前記ファイルに付与されているか否かを調べ、付与されている場合は前記アクセス識別子と前記ファイル識別子と該書き込みに係るデータとから成る書き込み識別子を前記暗号復号手順に引き渡し、付与されていない場合は前記アプリケーションにエラー識別子を返し、
     前記暗号復号手順は、前記書き込み識別子が含む前記アクセス識別子について前記鍵記憶装置を検索し、該検索で抽出した前記鍵要素から前記暗号鍵を取得し、該取得した前記暗号鍵を用いて暗号化した前記データを前記ファイルに書き込むことを特徴とする請求項22に記載の情報漏洩防止方法。
  24.  前記アクセス検知手順は、前記アプリケーションによるファイルの読み込みを検知すると、前記アクセス識別子が前記ファイルに付与されているか否かを調べ、付与されている場合は前記アクセス識別子と前記ファイル識別子とから成る読み込み識別子を前記暗号復号手順に引き渡し、付与されていない場合は前記アプリケーションにエラー識別子を返し、
     前記暗号復号手順は、前記読み込み識別子が含む前記アクセス識別子について前記鍵記憶装置を検索し、該検索で抽出した前記鍵要素から前記復号鍵を取得し、該取得した前記復号鍵を用いて前記ファイルから読み込んだデータを復号し、前記アプリケーションに渡すことを特徴とする請求項22又は23に記載の情報漏洩防止方法。
  25.  前記暗号鍵及び前記復号鍵は、それぞれ秘密鍵又は公開鍵のいずれかである、又は、前記暗号鍵及び前記復号鍵は、共通鍵であることを特徴とする請求項23又は24に記載の情報漏洩防止方法。
  26.  前記ファイル識別子は、前記ファイルのフルパス名であることを特徴とする請求項22乃至24のいずれか1項に記載の情報漏洩防止方法。
  27.  前記アクセス識別子は、前記アプリケーションを特定する識別子として、前記アプリケーションの実行ファイル名を、前記ユーザを特定する識別子として、前記ユーザのIDを、それぞれ含むことを特徴とする請求項22乃至24のいずれか1項に記載の情報漏洩防止方法。
  28.  複数のアプリケーションを複数のユーザ毎にそれぞれ実行するデータ処理装置と、前記アプリケーションの実行に係るファイルを記憶するファイル記憶装置と、前記ファイルのデータの暗号化及び復号に用いる暗号鍵及び復号鍵の組を保存する鍵記憶装置と、を有するシステムにおける情報漏洩防止プログラムであって、
     前記アプリケーションの実行を、前記アプリケーションを特定する識別子と前記アプリケーションを起動したユーザを特定する識別子との組であるアクセス識別子によって、前記アプリケーションを起動したユーザ毎に検知する実行検知処理と、
     前記鍵記憶装置に、前記アクセス識別子に固有の暗号鍵と復号鍵の組が存在するか否かを確認する鍵確認処理と、
     前記鍵確認処理で前記アクセス識別子に固有の暗号鍵と復号鍵の組が前記鍵記憶装置に存在しない旨が確認された場合に、前記アクセス識別子に固有の暗号鍵と復号鍵の組を生成し、該アクセス識別子と前記暗号鍵と前記復号鍵との組を鍵要素として前記鍵記憶装置に保存する鍵生成処理と、
     前記アプリケーションによる前記ファイルへのアクセスを前記ユーザ毎に検知するアクセス検知処理と、
     前記アクセス識別子に固有の暗号鍵及び復号鍵の組を前記鍵記憶装置から取得する処理と、
     該取得した暗号鍵及び復号鍵の組を用いてデータの暗号化及び復号を行う暗号復号処理と、
     をコンピュータに実行させることを特徴とする情報漏洩防止プログラム。
  29.  前記アクセス検知処理は、前記アプリケーションによる前記ファイルへの書き込みを検知すると、前記アクセス識別子と前記ファイルのファイル識別子と該書き込みに係るデータとから成る書き込み識別子を前記暗号復号処理に引き渡し、
     前記暗号復号処理は、前記書き込み識別子が含む前記アクセス識別子について前記鍵記憶装置を検索し、該検索で抽出した前記鍵要素から前記暗号鍵を取得し、該取得した前記暗号鍵を用いて暗号化した前記データを前記ファイルに書き込むことを特徴とする請求項28に記載の情報漏洩防止プログラム。
  30.  前記アクセス検知処理は、前記アプリケーションによる前記ファイルの読み込みを検知すると、前記アクセス識別子と前記ファイルのファイル識別子とから成る読み込み識別子を前記暗号復号処理に引き渡し、
     前記暗号復号処理は、該受信した前記読み込み識別子が含む前記アクセス識別子について前記鍵記憶装置を検索し、該検索で抽出した前記鍵要素から前記復号鍵を取得し、該取得した前記復号鍵を用いて前記ファイルから読み込んだデータを復号し、前記アプリケーションに渡すことを特徴とする請求項28又は29に記載の情報漏洩防止プログラム。
  31.  前記暗号鍵及び前記復号鍵は、それぞれ秘密鍵又は公開鍵のいずれかである、又は、前記暗号鍵及び前記復号鍵は、共通鍵であることを特徴とする請求項28乃至30のいずれか1項に記載の情報漏洩防止プログラム。
  32.  前記ファイル識別子は、前記ファイルのフルパス名であることを特徴とする請求項29又は30に記載の情報漏洩防止プログラム。
  33.  前記アクセス識別子は、前記アプリケーションを特定する識別子として、前記アプリケーションの実行ファイル名を、前記ユーザを特定する識別子として、前記ユーザのIDを、それぞれ含むことを特徴とする請求項28乃至30のいずれか1項に記載の情報漏洩防止プログラム。
  34.  前記アクセス検知処理は、前記アプリケーションによるファイルの作成を検知すると、前記アクセス識別子及び前記ファイルのファイル識別子を取得し、
     前記アクセス検知処理から前記アクセス識別子及び前記ファイル識別子を取得し、前記ファイル識別子を有するファイルに、前記アクセス識別子を付与する識別子付与処理を更にコンピュータに実行させることを特徴とする請求項28に記載の情報漏洩防止プログラム。
  35.  前記アクセス検知処理は、前記アプリケーションによるファイルへの書き込みを検知すると、前記アクセス識別子が前記ファイルに付与されているか否かを調べ、付与されている場合は前記アクセス識別子と前記ファイル識別子と該書き込みに係るデータとから成る書き込み識別子を前記暗号復号処理に引き渡し、付与されていない場合は前記アプリケーションにエラー識別子を返し、
     前記暗号復号処理は、前記書き込み識別子が含む前記アクセス識別子について前記鍵記憶装置を検索し、該検索で抽出した前記鍵要素から前記暗号鍵を取得し、該取得した前記暗号鍵を用いて暗号化した前記データを前記ファイルに書き込むことを特徴とする請求項34に記載の情報漏洩防止プログラム。
  36.  前記アクセス検知処理は、前記アプリケーションによるファイルの読み込みを検知すると、前記アクセス識別子が前記ファイルに付与されているか否かを調べ、付与されている場合は前記アクセス識別子と前記ファイル識別子とから成る読み込み識別子を前記暗号復号処理に引き渡し、付与されていない場合は前記アプリケーションにエラー識別子を返し、
     前記暗号復号処理は、前記読み込み識別子が含む前記アクセス識別子について前記鍵記憶装置を検索し、該検索で抽出した前記鍵要素から前記復号鍵を取得し、該取得した前記復号鍵を用いて前記ファイルから読み込んだデータを復号し、前記アプリケーションに渡すことを特徴とする請求項34又は35に記載の情報漏洩防止プログラム。
  37.  前記暗号鍵及び前記復号鍵は、それぞれ秘密鍵又は公開鍵のいずれかである、又は、前記暗号鍵及び前記復号鍵は、共通鍵であることを特徴とする請求項35又は36に記載の情報漏洩防止プログラム。
  38.  前記ファイル識別子は、前記ファイルのフルパス名であることを特徴とする請求項34乃至36のいずれか1項に記載の情報漏洩防止プログラム。
  39.  前記アクセス識別子は、前記アプリケーションを特定する識別子として、前記アプリケーションの実行ファイル名を、前記ユーザを特定する識別子として、前記ユーザのIDを、それぞれ含むことを特徴とする請求項34乃至36のいずれか1項に記載の情報漏洩防止プログラム。
  40.  請求項1乃至15のいずれか1項に記載の情報漏洩防止装置を備えたことを特徴とする端末。
PCT/JP2009/057322 2008-04-10 2009-04-10 情報漏洩防止装置、その方法及びそのプログラム WO2009125830A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN200980108718XA CN101971186B (zh) 2008-04-10 2009-04-10 信息泄露防止装置和方法及其程序
US12/922,809 US20110016330A1 (en) 2008-04-10 2009-04-10 Information leak prevention device, and method and program thereof
JP2010507276A JP5164029B2 (ja) 2008-04-10 2009-04-10 情報漏洩防止装置、その方法及びそのプログラム

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2008102428 2008-04-10
JP2008-102428 2008-04-10

Publications (1)

Publication Number Publication Date
WO2009125830A1 true WO2009125830A1 (ja) 2009-10-15

Family

ID=41161961

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2009/057322 WO2009125830A1 (ja) 2008-04-10 2009-04-10 情報漏洩防止装置、その方法及びそのプログラム

Country Status (4)

Country Link
US (1) US20110016330A1 (ja)
JP (1) JP5164029B2 (ja)
CN (1) CN101971186B (ja)
WO (1) WO2009125830A1 (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011141806A (ja) * 2010-01-08 2011-07-21 Hitachi Solutions Ltd ネットワークへの情報流出防止装置
JP2013118500A (ja) * 2011-12-02 2013-06-13 Toshiba Corp 認証装置、認証方法および認証プログラム
JP5485452B1 (ja) * 2012-08-02 2014-05-07 エヌ・ティ・ティ・コミュニケーションズ株式会社 鍵管理システム、鍵管理方法、ユーザ端末、鍵生成管理装置、及びプログラム
JP2016534425A (ja) * 2013-10-11 2016-11-04 ランディス・ギア イノベーションズ インコーポレイテッドLandis+Gyr Innovations, Inc. デバイスと、そのデバイス内のデータとを保護すること
JP6467091B1 (ja) * 2018-06-21 2019-02-06 株式会社LIFULL Senior 情報処理装置、情報処理プログラム、及び情報処理方法
WO2021250862A1 (ja) * 2020-06-11 2021-12-16 日本電気株式会社 管理装置、管理システム、管理方法、及び、プログラムが格納された非一時的なコンピュータ可読媒体

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9397981B2 (en) * 2009-04-20 2016-07-19 International Business Machines Corporation Method and system for secure document exchange
CN102122336B (zh) * 2011-02-14 2013-09-11 中国联合网络通信集团有限公司 游戏保护加密和解密方法、设备和系统
JP2012234439A (ja) * 2011-05-06 2012-11-29 Canon Inc 画像処理装置、そのデータ管理方法及びプログラム
JP5677273B2 (ja) * 2011-11-18 2015-02-25 三菱電機株式会社 暗号処理システム、暗号処理方法、暗号処理プログラム及び鍵生成装置
US20130170645A1 (en) * 2011-12-29 2013-07-04 Mediatek Inc. Encryption and decryption devices and methods thereof
CN104145446B (zh) * 2012-02-29 2018-06-05 黑莓有限公司 操作计算设备的方法、计算设备及计算机程序
CN102930223B (zh) * 2012-09-21 2015-07-22 北京深思洛克软件技术股份有限公司 一种磁盘数据保护方法和系统
CN103107995B (zh) * 2013-02-06 2015-11-25 中电长城网际系统应用有限公司 一种云计算环境数据安全存储系统和方法
CN103107889B (zh) * 2013-02-06 2016-08-03 中电长城网际系统应用有限公司 一种可搜索的云计算环境数据加密存储系统和方法
CN106662991B (zh) * 2014-06-02 2019-07-09 施拉奇锁有限责任公司 电子凭证管理系统
WO2016010665A1 (en) 2014-07-15 2016-01-21 Sikka Neil Apparatus for and method of preventing unsecured data access
CN105844170A (zh) * 2015-01-16 2016-08-10 阿里巴巴集团控股有限公司 一种文件处理方法和装置
CN104765807B (zh) * 2015-04-02 2018-01-16 中国人民解放军信息工程大学 一种分布式文件系统的拟态防窃取方法
CN105046146B (zh) * 2015-06-30 2018-05-04 中标软件有限公司 一种安卓系统的资源访问方法
US11424931B2 (en) * 2016-01-27 2022-08-23 Blackberry Limited Trusted execution environment
CN108694324B (zh) * 2017-04-06 2022-12-20 腾讯科技(深圳)有限公司 一种信息泄露监控方法以及装置
WO2019149797A1 (en) * 2018-01-31 2019-08-08 Assa Abloy Ab Enabling an encrypted software module in a container file
JP7031569B2 (ja) * 2018-11-29 2022-03-08 日本電信電話株式会社 情報作成装置、情報作成方法、および、情報作成プログラム
CN113407434A (zh) * 2020-03-16 2021-09-17 腾讯科技(深圳)有限公司 调试文件的处理方法、装置
EP4135279A4 (en) 2020-05-28 2024-01-10 Siemens Ag METHOD AND DEVICE FOR DETECTING INFORMATION LEAKS AND COMPUTER READABLE MEDIUM

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003248627A (ja) * 2002-02-25 2003-09-05 Nippon Telegr & Teleph Corp <Ntt> ファイルアクセス制御方法、プログラム及び記憶媒体
JP2004046307A (ja) * 2002-07-09 2004-02-12 Fujitsu Ltd データ保護プログラムおよびデータ保護方法
JP2004310557A (ja) * 2003-04-09 2004-11-04 Sony Corp 情報記憶媒体及び情報記憶媒体のメモリ管理方法
JP2005310041A (ja) * 2004-04-26 2005-11-04 Systemneeds Inc 本人認証インフラストラクチャシステム

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100652098B1 (ko) * 2000-01-21 2006-12-01 소니 가부시끼 가이샤 데이터 인증 처리 시스템
JP4481914B2 (ja) * 2005-10-11 2010-06-16 キヤノン株式会社 情報処理方法およびその装置
CN100568251C (zh) * 2006-03-23 2009-12-09 沈明峰 协同工作环境下涉密文档的保护方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003248627A (ja) * 2002-02-25 2003-09-05 Nippon Telegr & Teleph Corp <Ntt> ファイルアクセス制御方法、プログラム及び記憶媒体
JP2004046307A (ja) * 2002-07-09 2004-02-12 Fujitsu Ltd データ保護プログラムおよびデータ保護方法
JP2004310557A (ja) * 2003-04-09 2004-11-04 Sony Corp 情報記憶媒体及び情報記憶媒体のメモリ管理方法
JP2005310041A (ja) * 2004-04-26 2005-11-04 Systemneeds Inc 本人認証インフラストラクチャシステム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
KAZUHISA SUZUKI: "A Design of Privacy-Aware Data Object Container for An Adaptive and Fine-Grained Data Access Control, Information Processing Society of Japan Kenkyu Hokoku", IPSJ SIG TECHNICAL REPORTS, vol. 2007, no. 10, 31 January 2007 (2007-01-31), pages 57 - 64 *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011141806A (ja) * 2010-01-08 2011-07-21 Hitachi Solutions Ltd ネットワークへの情報流出防止装置
JP2013118500A (ja) * 2011-12-02 2013-06-13 Toshiba Corp 認証装置、認証方法および認証プログラム
JP5485452B1 (ja) * 2012-08-02 2014-05-07 エヌ・ティ・ティ・コミュニケーションズ株式会社 鍵管理システム、鍵管理方法、ユーザ端末、鍵生成管理装置、及びプログラム
JP2016534425A (ja) * 2013-10-11 2016-11-04 ランディス・ギア イノベーションズ インコーポレイテッドLandis+Gyr Innovations, Inc. デバイスと、そのデバイス内のデータとを保護すること
JP6467091B1 (ja) * 2018-06-21 2019-02-06 株式会社LIFULL Senior 情報処理装置、情報処理プログラム、及び情報処理方法
JP2019220871A (ja) * 2018-06-21 2019-12-26 株式会社LIFULL Senior 情報処理装置、情報処理プログラム、及び情報処理方法
WO2021250862A1 (ja) * 2020-06-11 2021-12-16 日本電気株式会社 管理装置、管理システム、管理方法、及び、プログラムが格納された非一時的なコンピュータ可読媒体

Also Published As

Publication number Publication date
JP5164029B2 (ja) 2013-03-13
CN101971186B (zh) 2013-06-12
US20110016330A1 (en) 2011-01-20
CN101971186A (zh) 2011-02-09
JPWO2009125830A1 (ja) 2011-08-04

Similar Documents

Publication Publication Date Title
JP5164029B2 (ja) 情報漏洩防止装置、その方法及びそのプログラム
US7428306B2 (en) Encryption apparatus and method for providing an encrypted file system
JP4847967B2 (ja) 多目的コンテンツ制御を備えたメモリシステム
US11232222B2 (en) Access management system, access management method and program
JP4857284B2 (ja) 多目的コンテンツ制御をするコントロール構造の生成システム
US10824571B1 (en) Separate cryptographic keys for protecting different operations on data
WO2014011313A1 (en) System and method for cloud key management
JP2008524753A5 (ja)
US8750519B2 (en) Data protection system, data protection method, and memory card
JP2008524758A5 (ja)
KR101910826B1 (ko) 사물인터넷 디바이스의 보안 방법 및 장치
JP4084971B2 (ja) 電子データ交換システムにおけるデータ保護装置及びデータ保護方法並びにそれに用いるプログラム
EP2212825B1 (en) Cryptographically controlling access to documents
JP2008005408A (ja) 記録データ処理装置
US9361483B2 (en) Anti-wikileaks USB/CD device
KR20110007834A (ko) 위치 인증을 통한 사용자 프로그램의 기밀문서 판독 방지방법
JP2022531538A (ja) 暗号システム
CN112784321B (zh) 磁盘资安系统
KR101177111B1 (ko) 복사 제어 정보에 따르지 않는 디지털 컨텐트의 사용을방지하는 방법 및 이를 위한 장치
JP4801777B2 (ja) 認証処理システム、及び認証処理方法、並びにプログラム
TW202119244A (zh) 磁碟資安系統
JP2018169740A (ja) ファイルシステムおよびファイル管理方法

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 200980108718.X

Country of ref document: CN

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 09730793

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2010507276

Country of ref document: JP

WWE Wipo information: entry into national phase

Ref document number: 12922809

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 09730793

Country of ref document: EP

Kind code of ref document: A1