This application is based on and claims priority under 35 USC 119 from Japanese Patent Application No. 2009-149733 filed Jun. 24, 2009.
The present invention relates to a document information creation device, a document registration system, a computer-readable storage medium storing a program for creating document information and a document information creation method.
According to an aspect of the invention, there is provided a document information creation device including: a memory that associates and stores confidential terms that are to be kept confidential and attributes of the confidential terms, and that stores at least one replacement candidate term, which has a pre-specified attribute and is for replacing a confidential term that has the pre-specified attribute, in association with, of the confidential terms, a confidential term that has the pre-specified attribute; and a creation unit that creates replacement document information by applying to document information at least one of a first replacement that replaces a confidential term that is contained in the document information and has the pre-specified attribute with one of the replacement candidate terms stored in the memory, and a second replacement that replaces a confidential term that is contained in the document information and has an attribute other than the pre-specified attribute with a term generated from characters selected from a pre-specified set of characters.
Exemplary embodiments of the present invention will be described in detail based on the following figures, wherein:
Herebelow, an exemplary embodiment will be described in which the present invention is applied to a relay server disposed between a client and a storage server.
The client 12 is equipped with, for example, a reception unit (not shown) for receiving user instructions, such as a keyboard and a mouse or the like; a processing execution unit (not shown) such as a computer or the like that executes processing in accordance with the details of instructions received by the reception unit; and a reporting unit (not shown), such as a display device and a sound output device or the like, for reporting processing results to the user (operator).
The client 12 transmits document information that is an object of registration to the document relay server 14. “The document information that is an object of registration” is document information that is to be registered at the storage server 16, and is document information before processing by the document relay server 14. “The document information” is information (data) of a document. In the present exemplary embodiment, a case in which text data is used as an example of document information will be described.
When, for example, a user ID for identifying a user, confidential terms that are to be kept confidential, and attributes of the confidential terms are inputted to the client 12 via the reception unit, the client 12 prepares a confidential term table 18, illustrated in table 2, in which the user ID, the confidential terms and the attributes are associated. When the client 12 receives an instruction to send the confidential term table 18 to the document relay server 14 via the reception unit, the client 12 sends the confidential term table 18 to the document relay server 14.
Contents registered in the confidential term table 18 are described in detail with reference to
As illustrated in
The ROM 14a serves as a storage medium, in which a basic program such as an OS or the like is stored. The HDD 14d serves as a storage medium, in which programs for executing respective processing routines for document information creation processing and search processing, which will be described in detail later, are stored.
A replacement candidate dictionary 20, illustrated in
When the CPU 14c of the document relay server 14 receives the confidential term table 18 from the client 12, the CPU 14c stores the confidential term table 18 in the HDD 14d.
As mentioned above, the confidential terms 18b that are to be kept confidential and the attributes 18a of the confidential terms 18b are stored in correspondence in the HDD 14d of the present exemplary embodiment, and at least one replacement candidate term 20a that has a pre-specified attribute 18a and is for replacing the confidential terms 18b that have the pre-specified attribute 18a is stored in association with, of all the confidential terms 18b, the confidential terms 18b that have the pre-specified attribute 18a. The HDD 14d storing the confidential term table 18 and the replacement candidate dictionary 20 corresponds to a memory.
The CPU 14c reads programs from the ROM 14a and the HDD 14d and executes processing. Various kinds of data are temporarily stored in the RAM 14b.
The client 12 and the storage server 16 are connected to the I/O port 14e.
The processing routine of the document information creation processing that is executed by the CPU 14c of the computer of the document relay server 14 will be described using
In step 100, it is determined whether or not the confidential terms 18b are contained in the received document information, by searching for whether each of the confidential terms 18b registered in the confidential term table 18 that is stored in the HDD 14d is included in a document represented by the received document information. If a confidential term 18b is included, the confidential term 18b is extracted. Step 100 is an example of extraction processing (an extraction unit). In step 100 and steps subsequent to step 100 that use the confidential term table 18, the confidential term table 18 that is used is the confidential term table 18 that corresponds to the user represented by the received user ID.
If it is determined in step 100 that the confidential terms 18b are not contained in the received document information, the processing advances to step 122. If it is determined in step 100 that a confidential term 18b is contained in the received document information, the processing advances to step 102.
In step 102, on the basis of the registered contents of the confidential term table 18, a single confidential term 18b that has not yet been selected is selected from all confidential terms 18b that are contained in the received document information, and it is determined whether or not the attribute 18a corresponding to the selected confidential term 18b is one of the pre-specified attributes (for example, in the present exemplary embodiment, attributes other than numerical values (for example, plural attributes representing particular nouns such as personal names, place names, company names and so forth)).
If it is determined in step 102 that the attribute 18a corresponding to the selected confidential term 18b is not one of the pre-specified attributes, the processing advances to step 118. If it is determined in step 102 that the attribute 18a corresponding to the selected confidential term 18b is a pre-specified attribute, the processing advances to step 104.
In step 104, the replacement candidate dictionary 20 corresponding to the attribute of the selected confidential term 18b is searched for in the HDD 14d, and one record is read from the plural records registered in the replacement candidate dictionary 20 that is obtained as a result of the search. For example, a first record is read.
In step 106, it is determined whether or not the replacement candidate term 20a registered in the single record that has been read is contained in the document represented by the received document information.
If it is determined in step 106 that the replacement candidate term 20a registered in the one record that has been read is contained in the document represented by the received document information, the processing advances to step 108. In step 108, from the records registered in the replacement candidate dictionary 20 obtained as a result of the search in step 104, one record of records that have not yet been read in the present document information creation processing is read. For example, the next record after the record that has been read is read. Then the processing returns to step 106.
In step 108, if all records registered in the replacement candidate dictionary 20 obtained as the result of the search in step 104 have been read, a message is sent to the client 12 to check for approval or prohibition of registration of the document information in the storage server 16 without confidential terms in the document information having been replaced with replacement candidate terms (for example, “Please select: Register document information in storage server without replacement/Destroy document information without registering”). Hence, the message is displayed at the client 12, and the user returns an instruction approving registration or an instruction not approving registration to the document relay server 14 via the client 12. If the instruction representing approval of registration is received, the document relay server 14 sends the received document information to the storage server 16. Hence, the document information is registered by the storage server 16. If the document relay server 14 receives the instruction not approving registration, the received document information is destroyed, and the present document information creation processing ends.
If it is determined in step 106 that the replacement candidate term 20a registered in the one record that has been read is not contained in the document represented by the received document information, the processing advances to step 110. In step 110, the replacement candidate term 20a registered in the single record that has been read serves as a replacement term, and control is carried out so as to store the received user ID, the received document ID, the selected confidential term 18b and the replacement term in association. More specifically, in step 110, as illustrated in
In step 112, on the basis of the contents registered in the confidential term table 18, it is determined whether or not there is a confidential term 18b that has not been selected in step 102 among the confidential terms 18b contained in the received document information. If it is determined in step 112 that there is a confidential term 18b that has not been selected in step 102, the processing returns to step 102. If it is determined in step 112 that there are no confidential terms 18b that have not been selected in step 102, the processing advances to step 114.
In step 114, “document information to be registered” is created by applying replacement processing to the received document information (the registration object document information), to replace the confidential terms 22c contained in the received document information with the corresponding replacement terms 22d. The “document information to be registered” is the document information after this replacement processing has been applied to the received document information, and is information that is to be registered in the storage server 16. The processing when the processing proceeds from step 110 to step 114 is an example of processing of a first replacement; and processing when the processing proceeds from step 120 to step 114, which will be described in more detail below, is an example of processing of a second replacement. Step 114 is an example of creation processing (a creation unit).
In step 116, the document information to be registered that has been created in step 114 is sent to the storage server 16. Hence, the storage server 16 registers the document information to be registered. Then the present document information creation processing ends.
In step 118, a random number (a random value) with a pre-specified number of figures is generated using a pre-specified random number generation algorithm. The pre-specified number of figures may be generated such that, for example, the number of figures is the same as the number of figures of the selected confidential term 18b. The random number may also be generated to have a number of figures greater than or lower than the number of figures of the selected confidential term 18b. At this time, digits may be generated such that zeroes are not contained in leading places, such that the digits seem meaningful. Thus, a term (in this case, a numerical value with the pre-specified number of figures) is generated from characters randomly selected from a pre-specified set of characters (the digits 0 to 9). Another term may be generated if the term generated in step 118 is the same as the numerical value of the selected confidential term 18b, and the generation of terms carried out until the generated term is different from the numerical value of the selected confidential term 18b.
In step 120, control is carried out so as to store the term generated in step 118 as a replacement term, the received user ID, the received document ID, the selected confidential term 18b and the replacement term in association. More specifically, in step 120, as illustrated in
In step 122, the received document information is sent to the storage server 16 in the form of the document information to be registered. Hence, the storage server 16 registers the document information to be registered. Then the present document information creation processing ends.
Hereabove, the document information creation processing has been described. It will now be described with a specific example of document information before replacement by the document information creation processing and of document information after replacement. For example, as the registration object document information (the document information before replacement), as illustrated in
A processing routine of the document search processing that is executed by the CPU 14c of the computer of the document relay server 14 will be described using
In step 200, it is determined whether or not the received search term is registered as a confidential term 22c in the replacement table 22. In step 200 and steps after step 200 that use the replacement table 22, the replacement table 22 that corresponds to the user represented by the received user ID is used.
If it is determined in step 200 that the received search term is not registered as a confidential term 22c in the replacement table 22, the processing advances to step 216. If it is determined in step 200 that the received search term is registered as a confidential term 22c in the replacement table 22, the processing advances to step 202.
In step 202, when the received search term is a confidential term 22c, the replacement term 22d corresponding to that confidential term 22c is acquired from the replacement table 22.
In step 204, an instruction to send document information that contains the replacement term 22d acquired in step 202 is outputted to the storage server 16. Hence, in accordance with the instruction, the storage server 16 searches for document information containing the replacement term 22d from among registered document information, and sends document information obtained as a result of the search to the document relay server 14. Thus, by the processing of step 204, the document relay server 14 acquires specified document information from among the document information registered in the storage server 16. In the above-described case, “specified document information” means document information containing the replacement term 22d acquired in step 202.
In step 206, it is determined whether or not document information has been acquired by document information being received from the storage server 16. This determination in step 206 is repeated until it is determined that document information has been acquired from the storage server 16. When the determination of step 206 is that document information has been acquired from the storage server 16, the processing advances to step 208.
In step 208, one replacement term 22d that has not yet been selected is selected from the replacement terms 22d that are contained in the acquired document information, and the one confidential term 22c that corresponds to the selected replacement term 22d is acquired from the replacement table 22.
In step 210, the replacement term 22d that has been selected in step 208 is converted (replaced) in the acquired document information to the confidential term 22c acquired in step 208. Step 210 is an example of conversion processing (a conversion unit).
In step 212, it is determined whether or not a replacement term 22d that has not yet been selected in step 208 is present among the replacement terms 22d that are contained in the acquired document information. If it is determined in step 212 that a replacement term 22d that has not yet been selected in step 208 is present, the processing returns to step 208. If it is determined in step 212 that no replacement terms 22d that have not yet been selected in step 208 are present, the processing advances to step 214. When it is determined in step 212 that no replacement term 22d that has not yet been selected in step 208 is present, all of the replacement terms 22d in the acquired document information have been converted to the confidential terms 22c.
In step 214, the document information in which all the replacement terms 22d have been converted to the corresponding confidential terms 22c is sent to the client 12. Thus, the search object document information is sent to the client 12. Then the present document search processing ends.
In step 216, an instruction to search for document information containing the received search term is outputted to the storage server 16. Hence, in accordance with the instruction, the storage server 16 searches for document information containing the search term from among the registered document information, and sends document information obtained as a result of the search to the document relay server 14. Thus, by the processing of step 216, the document relay server 14 acquires specified document information from among the document information registered in the storage server 16. “Specified document information”, in the above-described case, means document information containing the received search term.
In step 218, it is determined whether or not document information has been acquired by document information being received from the storage server 16. This determination in step 218 is repeated until it is determined that document information has been acquired from the storage server 16. When the determination of step 218 is that document information has been acquired from the storage server 16, the processing advances to step 220.
In step 220, the acquired document information is sent to the client 12. Thus, the search object document information is sent to the client 12. Then the present document search processing ends.
Hereabove, the document search processing has been described. Document information before replacement by the document search processing (the document information to be registered) and document information after replacement (the registration object document information) will now be described. For example, as the document information before replacement, as illustrated in
Hereabove, the document registration system 10 of the present exemplary embodiment has been described. In the example that has been described, a document ID is sent from the client 12, but this is not to be limiting. A hash value may be calculated from the document information after replacement, using a pre-specified hash function (for example, SHA-256 or the like), and the calculated hash function may serve as a document ID.
A constitution is possible in which the functions of the document relay server 14 described hereabove are provided at the client 12 or the storage server 16, the document relay server 14 is omitted, and the client 12 and the storage server 16 are directly connected.
A case has been described in which attributes other than numerical values are given as examples of the pre-specified attributes and, in step 118, a term (a numerical value with a pre-specified number of figures in this case) is generated from randomly selected characters from a pre-specified set of characters (the digits 0 to 9), but this is not to be limiting. For example, attributes other than attributes such as personal name, company name and the like may be given as pre-specified attributes and, in step 118, text strings may be generated by randomly selected text strings from a pre-specified set of characters (alphabets, characters of Japanese syllabary Hiragana, Katakana, Japanese Kanji, Chinese characters or the like). Such a case will be suitable if the text strings are generated so as to be intelligible (or meaningful, a person understands a meaning of the text strings), for example, using information from an unillustrated dictionary.
An example in which the client 12 sends the registration object document information to the document relay server 14 in one language (for example, English, Japanese or Chinese) and the confidential terms 22c in the registration object document information are replaced with the corresponding replacement terms 22d by the document relay server 14 to create the document information to be registered, and an example in which specified document information is acquired from among documents registered in the storage server 16 and the replacement terms 22d in the acquired document information are converted to the confidential terms 22c, have been described. However, the document relay server 14 may be provided with a function for translating from a pre-specified language (for example, Japanese or Chinese) to another language (for example, English) and with a function that translates from the other language to the pre-specified language. The document relay server 14 may then translate registration object document information in the pre-specified language to the other language, and replace the confidential terms 22c in the translated document information with the corresponding replacement terms 22d to create the document information to be registered. Specified document information may be acquired from among the document information in the other language that is registered in the storage server 16, with the replacement terms 22d in the acquired document information being converted to the confidential terms 22c, the document information after replacement being translated from the other language to the pre-specified language, and the translated document information being sent to the client 12.
For the document search processing, an example has been described in which an instruction to send document information containing a replacement term 22d is outputted to the storage server 16, the storage server 16, in accordance with the instruction, searches for document information containing the replacement term 22d from among registered document information, and the storage server 16 sends document information obtained as a result of the search to the document relay server 14. However, processing as described below may also be carried out. That is, the document search processing may be executed by the CPU 14c when a user ID and a document ID are received from the client 12, with an instruction to send document information indicated by the document ID being outputted to the storage server 16. In this case, in accordance with the instruction, the storage server 16 searches for the document information indicated by the document ID from among the registered document information, and sends document information obtained as a result of the search to the document relay server 14. Thus, according to this processing, the document relay server 14 acquires specified document information from among the document information that has been registered in the storage server 16. In this case, “specified document information” means the document information indicated by the document ID.
The programs described herein may be saved to and provided on a storage medium, and the programs may be provided by a communications unit. In these cases too, for example, the described programs may fall within the scope of the invention: “a computer-readable storage medium storing a program”.
The term “a computer-readable storage medium storing a program” includes a recording medium on which the program is recorded, which recording medium is readable by a computer and is used for installation of the program, execution, distribution of the program and so forth.
The term recording medium includes, for example: a DVD-R, DVD-RW, DVD-RAM or the like, which are Digital Versatile Discs (DVD) according to standards established by the DVD Forum; a Compact Disc (CD), which is a read-only memory (CD-ROM), CD-Recordable (CD-R), CD-Rewritable (CD-RW) or the like; a Blu-ray Disc (registered trademark); a magneto-optic disc (MO); a flexible disk (FD); a magnetic tape; a hard disc; a read-only memory (ROM); an electrically erasable and programmable read-only memory (EEPROM); a flash memory; a random access memory (RAM); and the like.
The mentioned program or a portion thereof may be recorded on a recording medium and kept in storage, distributed or the like. The program or portion thereof may also be propagated by communication using a propagation medium such as, for example: a wired network or wireless network used in, for example, a local area network (LAN), a metropolitan area network (MAN), a wide area network (WAN), the Internet, an intranet, an extranet or the like; a combination thereof; or the like. The program or portion thereof may also be embodied and carried in a carrier wave.
The mentioned program may be a portion of another program and/or may be recorded on a recording medium together with a separate program. The mentioned program may be split between plural recording mediums and recorded. Further, the mentioned program may be recorded in any mode, such as compression, encryption or the like, as long as the program is restorable therefrom.
The foregoing description of the embodiments of the present invention has been provided for the purpose of illustration and description. It is not intended to be exhaustive or to limit the invention to the precise forms disclosed. Obviously, many modifications and variations will be apparent to practitioners skilled in the art. The embodiments were chosen and described in order to best explain the principles of the invention and its practical applications, thereby enabling others skilled in the art to be suited to the particular use contemplated. It is intended that the scope of the invention be defined by the following claims and their equivalents.
Number | Date | Country | Kind |
---|---|---|---|
2009-149733 | Jun 2009 | JP | national |