Abstract:
Constraints are added to the size of an encryption area at the time of encryption processing. For example, if the respective number of horizontal and vertical divided blocks is divided by a predetermined positive integer, the size of the encryption area is limited such that the remaining is a certain number of 0 (namely, a multiple of the predetermined positive integer to the respective number of blocks) or 1 or more. Block positions in the encryption area are detected according to the constraints of the number of blocks of an encryption image as the decryption processing corresponding to the encryption processing. Because the number of horizontal and vertical blocks is previously limited at the time of the encryption, the possibility of the number of blocks to be considered in the detection of the block positions is reduced, resulting in improved decryption accuracy.

Description:
CROSS-REFERENCE TO RELATED APPLICATIONS 
       [0001]    This application is a continuation application of International PCT Application No. PCT/JP2008/003012 which was filed on Oct. 23, 2008, the entire contents of which are incorporated herein by reference. 
     
    
     FIELD 
       [0002]    The present invention relates to a technique of visually encrypting or decrypting a portion of printed matter or a digital image, and in particular, relates to an image encryption and decryption technique for improving the precision of decrypting an encrypted image on printed matter. 
       BACKGROUND 
       [0003]    As society becomes more computerized, the leakage of confidential information has become a serious problem, and the development of techniques to prevent information leakageage is desired. For digital data, for example, techniques have been developed for encrypting data so that the content will not be visible even if the information is obtained by a third party, and some of these techniques are already being utilized for effectively preventing information leakageage. 
         [0004]    On the other hand, techniques for preventing information leakage from preprinted matter on paper or the like have not been sufficiently developed, nor is there any commercial product therefor. In fact, it is said that about forty percent of the entire information leakage is from printed matter, and thus the development of a technique to prevent information leakage from printed matter, as was done for digital data, is desired. 
         [0005]    Examples in which countermeasures against information leakage from printed matter are required include bills issued when merchandise is purchased, credit card statements, hospital medical records, students&#39; school records, and lists of names. Techniques of encrypting important portions of the above-mentioned examples are desired so as to prevent information leakage. 
       SUMMARY 
       [0006]    According to an aspect of the invention, an image encryption device for encrypting image data into an encrypted image, the image encryption device comprising: an encryption field specifying unit to specify a partial field to be encrypted as a specified encryption field in the image data; an encryption field adjusting unit to adjust a size of the specified encryption field under a preset constraint; an image encryption unit to encrypt an image in the specified encryption field using an encryption key; and a pixel value conversion unit to perform pixel value conversion on a predetermined position in the specified encryption field. 
         [0007]    The object and advantages of the invention will be realized and attained by means of the elements and combinations particularly pointed out in the claims. 
         [0008]    It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory and are not restrictive of the invention, as claimed. 
     
    
     
       BRIEF DESCRIPTION OF DRAWINGS 
         [0009]      FIG. 1  is a diagram illustrating encryption process procedures according to the related art (Patent Document 1). 
           [0010]      FIG. 2  is a diagram illustrating an example of how an encryption field is specified according to the related art (Patent Document 1). 
           [0011]      FIG. 3  is a diagram illustrating an example of how an image is encrypted according to the related art (Patent Document 1). 
           [0012]      FIG. 4  is a diagram illustrating an example of how pixel value conversion is performed according to the related art (Patent Document 1). 
           [0013]      FIG. 5  is a diagram illustrating an example of the encrypted image according to the related art (Patent Document 1). 
           [0014]      FIG. 6  is a block diagram illustrating the decrypting procedures according to the related art (Patent Document 1). 
           [0015]      FIG. 7  is a diagram illustrating an example of how an encryption field is detected according to the related art (Patent Document 1). 
           [0016]      FIG. 8  is a diagram illustrating another example of how an encryption field is detected according to the related art (Patent Document 1). 
           [0017]      FIG. 9  is a schematic diagram illustrating the processes of detecting distortion or expansion in an encryption field according to the related art (Patent Document 1). 
           [0018]      FIG. 10  is a diagram illustrating an example of decryption failure according to the related art (Patent Document 1). 
           [0019]      FIG. 11  is a block diagram of encryption process procedures according to the first embodiment. 
           [0020]      FIG. 12  is a schematic diagram illustrating an example of the processes performed by an encryption field adjusting unit. 
           [0021]      FIG. 13  is a schematic diagram illustrating another example of the processes performed by an encryption field adjusting unit. 
           [0022]      FIGS. 14A ,  14 B and  14 C are diagrams illustrating examples of the processes performed by an image encryption unit. 
           [0023]      FIG. 15  is an example of the encrypted image in which the numbers of blocks are restricted. 
           [0024]      FIG. 16  is a block diagram of decryption process procedures according to the first embodiment. 
           [0025]      FIG. 17  is a diagram illustrating examples of detected block boundaries for each number of blocks. 
           [0026]      FIGS. 18A and 18B  are diagrams illustrating the distribution of minimum values of objective functions in the detection of block boundaries. 
           [0027]      FIGS. 19A and 19B  are diagrams illustrating the differences in the detection of block boundaries between the related art (Patent Document 1) and the first embodiment. 
           [0028]      FIG. 20  is an example in which the block positions are correctly detected from a complicated encrypted image. 
           [0029]      FIG. 21  is a block diagram of encryption process procedures according to the second embodiment. 
           [0030]      FIG. 22  is a diagram illustrating an example in which information about an encryption field size is added into an image. 
           [0031]      FIG. 23  is a block diagram of decryption process procedures according to the second embodiment. 
           [0032]      FIG. 24  is a diagram illustrating an example in which the information about the encryption field size is detected, and the block positions are detected by using the detected information. 
           [0033]      FIG. 25  is a block diagram of encryption process procedures according to the third embodiment. 
           [0034]      FIG. 26  is a block diagram of decryption process procedures according to the third embodiment. 
           [0035]      FIG. 27  is a diagram illustrating an example of the hardware configuration of a computer capable of implementing the embodiments. 
       
    
    
     DESCRIPTION OF EMBODIMENTS 
       [0036]    It is an object of the present invention to reduce the above-described errors in detecting block positions in the decryption processes, and to improve the precision in the processes of decrypting an encrypted image. 
         [0037]    It is not yet publicly known when the present application was filed, but there is a prior patent application that also relates to the encryption of printed matter, Japanese Patent Application No. 2007-143301 (hereinafter, referred to as “Patent Document 1”), which was filed by the same applicant as the present application. In Patent Document 1, an image field to be encrypted is divided into a number of blocks, and scramble processing is performed on the divided blocks on the basis of a parameter obtained by an input password; then, an image in which the pixel values of a target field are converted and encrypted in an orderly manner is generated. A unique pattern generated in an orderly conversion of pixel values serves as an index that determines the precise positions in the encrypted image at the time of performing decryption, and even if an encrypted image is distorted due to the printing or scanning, highly precise decryption becomes possible by correcting the positions. 
         [0038]    Moreover, although not yet publicly known, the inventor of the present application has also developed an applied technique of performing the conversion of pixel values according to Patent Document 1 by using a histogram of the surrounding pixel values. According to this applied technique, even more precise and high-quality decryption of an encrypted image on printed matter becomes possible. 
         [0039]    The encryption method and decryption method of Patent Document 1 will be briefly described below. 
         [0040]      FIG. 1  illustrates an encryption process procedure according to Patent Document 1. 
         [0041]    Firstly, the encryption field specifying unit  101  selects a field to be encrypted as illustrated in  FIG. 2 . 
         [0042]    Next, the image encryption unit  102  encrypts the selected image on the basis of an encryption key.  FIG. 3  illustrates an example of such encryption in which reversible image conversion is performed on a selected field, and then the selected field is divided into minute fields. Further, shuffling processes (scrambling) are performed on the minute fields according to an encryption key, and an image of the target field is encrypted. 
         [0043]    The pixel value conversion unit  103  in  FIG. 1  converts the pixel values of the image encrypted by the image encryption unit  102  in an orderly manner.  FIG. 4  illustrates an example in which pixel value conversion is performed on the minute fields of the encrypted image at regular intervals in the height and width dimensions. As the pixel values are converted in an orderly manner, a unique pattern is generated in the pixel value conversion. By detecting this unique pattern, the determination of the precise positions in the encryption field becomes easy when an encrypted image is decrypted. 
         [0044]    Owing to the processes described above, for example, an encrypted image as in  FIG. 5  is obtained. 
         [0045]      FIG. 6  illustrates the procedures of decrypting an image encrypted by the encryption processes of  FIG. 1 . 
         [0046]    Firstly, an encryption field detection unit  601  performs field detection on an encrypted image.  FIG. 7  illustrates an example of a field detection in which the periodicity of dot patterns generated in the pixel value conversion is examined, and a portion at which strong periodicity is detected is specified as an encryption field.  FIG. 8  illustrates another example of a field detection in which markers are added to the four corners of an encryption field at the time of performing encryption as illustrated in  FIG. 8(   a ), and the encryption field is detected from these four markers as illustrated in  FIG. 8(   b ). 
         [0047]    Next, a block position detection unit  602  of  FIG. 6  detects the block positions of the scrambled encrypted image by using a pattern of the pixel value conversion which is arranged in a lattice form in the encryption field. As a pattern of the pixel value conversion used for detecting block positions is two-dimensionally arranged, even if an encrypted image is distorted or expanded due to processes such as printing or scanning as illustrated in  FIG. 9(   a ), the block positions can be precisely detected, and the detected block positions may be corrected as necessary as illustrated in  FIG. 9(   b ). 
         [0048]    Further, a pixel value conversion unit  603  of  FIG. 6  restores the pixel values of the field on which pixel value conversion is performed by the pixel value conversion unit  103  ( FIG. 1 ) in the encryption processes. Finally, an image decryption unit  604  obtains a decrypted image of the decrypted image by performing inverse conversion processing of the conversion processing by the image encryption unit  102  ( FIG. 1 ) on the decrypted image according to a decryption key. 
         [0049]    In the encryption method disclosed in Patent Document 1, there are some cases in which the decryption fails when a printed or scanned encrypted image is complicated or largely distorted. Such a failure is mainly due to the error that the block position detection unit  602  of  FIG. 6  detects a wrong number of blocks. 
         [0050]      FIG. 10  illustrates such a failure of decryption in which an image to be encrypted is so complicated that a pattern of the pixel value conversion does not clearly appear on an encrypted image, and as a result, the block position detection unit  602  detects a wrong number of blocks which is larger than the actual number of blocks by one block. 
         [0051]    Some embodiments of the present invention will be described in detail with reference to the accompanying drawings. 
         [0052]    Firstly, encryption processes according to the first embodiment will be described. 
         [0053]      FIG. 11  is a block diagram of encryption process procedures according to the first embodiment. Hereinafter, the processes will be described in sequence. 
         [0054]    Firstly, an encryption field specifying unit  1101  selects a field to be encrypted in an object image. This process is similar to that of the encryption field specifying unit  101  in  FIG. 1 . 
         [0055]    Next, an encryption field adjusting unit  1102  adjusts the width and the height of the encryption field selected by the encryption field specifying unit  1101  under a preset constraint.  FIG. 12  illustrates an example in which, when the number of blocks for a later-described image encryption unit  1103  to shuffle the pixels (hereinafter, referred to as “block”) are divided by 3, the size of an encryption field is adjusted such that the remainder will be 0 (i.e., the number of divided blocks is multiples of 3). Each interval of the divisions of a scale in the drawing represents one block size. While the encryption field size of  FIG. 12(   a ) has 19 blocks in the width dimension and 10 blocks in the height dimension, the size of an encryption field of  FIG. 12(   b ) which is adjusted by the encryption field adjusting unit  1102  has 18 blocks in the width dimension and 9 blocks in the height dimension. It is seen in 
         [0056]      FIG. 12(   b ) that the number of blocks is restricted to multiples of 3. 
         [0057]    The above example is generalized as follows. 
         [0058]    Supposing that the length, the height, and the block size of the pre-adjusted encryption field are “W”, “H” , and “B”, respectively, and that the number of blocks in an encryption field of the post-adjusted encryption field is a multiple of N, then the width “W′” and the height “H′” of the encryption field that is adjusted by the encryption field adjusting unit  1102  are expressed in the following equations. 
         [0000]        W ′=floor( W /( BN ))* BN   (1)
 
         [0000]        H ′=floor( H/(BN ))* BN   (2)
 
         [0059]    In these equations, “floor (x)” indicates the largest integer that is equal to or smaller than “x” (for example, floor (4.3)=4, floor (7.0)=7). 
         [0060]    The conversion of equations (1) and (2) for the encryption field adjusting unit  1102  are presented by way of example, and other types of size conversion may be applied. 
         [0061]    Moreover, the position of the encryption field whose encryption field size (illustrated in  FIG. 13(   a )) is adjusted may be determined with reference to the top-left of the selected encryption field as illustrated in  FIG. 12(   b ), or may be determined with reference to the center or the bottom-right of the field as illustrated in  FIG. 13(   b ) or  FIG. 13(   c ). 
         [0062]    The image of the encryption field specified by the encryption field adjusting unit  1102  is encrypted by an image encryption unit  1103  that follows according to an encryption key . The processes performed by the image encryption unit  1103  are the same as those of the pixel value conversion unit  103  in  FIG. 1 . These processes are realized by, for example, performing a reversible image conversion process  1401  on a selected field according to an encryption key, and subsequently dividing the converted image into blocks of minute fields and performing scramble processing  1402  of shuffling the minute fields according to the encryption key, as illustrated in  FIG. 14A . As illustrated in  FIG. 14B , the image conversion process  1401  may be performed after the scramble processing  1402 . Alternatively, as illustrated in  FIG. 14C , image conversion processes  1403  and  1404  may be performed before and after the scramble processing. 
         [0063]    The image encrypted in the above-described processing is input to the pixel value conversion unit  1104  of  FIG. 11 . As the processing of the pixel value conversion unit  1104  is the same as that of the pixel value conversion unit  103  of  FIG. 1 , the description is omitted. 
         [0064]    In the series of processing as described above, for example, an encrypted image where the field size is restricted such that the number of blocks is a multiple of 3 is generated from an input image of  FIG. 15(   a ) as illustrated in  FIG. 15(   b ). 
         [0065]    The encryption processes according to the first embodiment have been described in detail in the above. 
         [0066]    Next, the decryption processes according to the first embodiment will be described. 
         [0067]      FIG. 16  is a block diagram of decryption process procedures according to the first embodiment. In these decryption processes, the precision is improved in the block position detection unit  602  of  FIG. 6 , and an encryption field detection unit  1601 , a pixel value inverse conversion unit  1603 , and an image decryption unit  1604  in the decryption processes of  FIG. 16  are similar to the encryption field detection unit  601 , the pixel value conversion unit  603 , and the image decryption unit  604  of  FIG. 6 . Accordingly, the descriptions of the processes of these three units are omitted, and the processes of the block position detection unit  1602  of  FIG. 16  will be described in comparison with those of  FIG. 6 . 
         [0068]      FIG. 17  is a schematic diagram illustrating the results of block boundary detection by the block position detection unit  602  of  FIG. 6  in the vertical direction, with the assumption that the number of blocks are 17, 18, and 19, respectively. An optimization problem is defined in view of the periodicity of a pattern of the pixel value conversion, which is arranged in a lattice form in the encrypted image, or in view of the intervals among adjacent block boundaries, and an objective function of the optimization problem above is calculated. The arrangement of block boundaries is determined such that the calculated objective function becomes the smallest. 
         [0069]    Generally, when the assumed number of blocks is different from the actual number of blocks, the block boundaries cannot be arranged in conformity with each other, and thus the minimum value of an objective function becomes large. On the other hand, when the assumed number of blocks is the same as the actual number of blocks, the block boundaries can be optimally arranged in good conformity with each other, and thus the minimum value of an objective function becomes small. 
         [0070]    Accordingly, the minimum values of objective functions are distributed as illustrated in  FIG. 18A , and if the number of blocks in which a value of an objective function becomes the smallest (“18” in  FIG. 18A ) is selected for the boundary arrangement, the block boundaries can be appropriately detected even if the number of blocks is unknown. 
         [0071]    However, when an encrypted image is complicated, as illustrated in  FIG. 17 , the periodicity of pixel value conversion patterns becomes weak, and thus candidates for the number of blocks and the arrangement may not be appropriately selected. Concerning the detection of block boundaries for each number of blocks in an encrypted image of  FIG. 17 , the distribution of the minimum values of objective functions are illustrated in  FIG. 18B . Although the actual number of blocks is 18 in  FIG. 18B , the value is smaller when the number of blocks is 19. Accordingly, a wrong number of blocks is detected as illustrated in  FIG. 19A , and the processes of detecting block boundaries end in failure. 
         [0072]    On the other hand, the number of blocks that can be encrypted is restricted in the decryption processes of  FIG. 16 , and thus the number of blocks to be detected by the block position detection unit  1602  is reduced. As a result, the failures in the detection of the number of blocks, as caused in the block position detection unit  602  of  FIG. 6 , can be reduced. For example, as the size of the encrypted image of  FIG. 17  which is encrypted by the method according to the first embodiment is determined by the blocks of multiples of 3, the candidates for the number of blocks to be considered will be 15, 18, 21, . . . . Accordingly, while a wrong number of blocks (larger than the actual number of blocks by 1) is detected by the block position detection unit  602  of  FIG. 6  as illustrated in  FIG. 19A , the unnecessary candidates for the number of blocks (e.g. , 17, 19) can be omitted in advance by the block position detection unit  1602  of  FIG. 16  as illustrated in  FIG. 19B , and thereby the correct number of blocks and block boundaries are detected. 
         [0073]    The block boundaries in the horizontal direction may be detected by the same method as that for detecting the block boundaries in the vertical direction. On this occasion, the candidates for the number of blocks to be considered can be reduced as the number of blocks of an encryption field in the height is restricted in advance, and thus the precision of the detection of block boundaries in the decryption processes of  FIG. 16  improves even more than the decryption processes of  FIG. 6 . 
         [0074]    In this case, a complicated encrypted image failed to be decrypted in the processes of  FIG. 6 ; however, the same complicated encrypted image can be correctly decrypted by the above-described processes of the block position detection unit  1602  as illustrated in  FIG. 20 . 
         [0075]    The decryption processes according to the first embodiment have been described in detail in the above. 
         [0076]    Next, the encryption processes according to the second embodiment will be described. 
         [0077]      FIG. 21  is a block diagram of encryption process procedures according to the second embodiment. In these processes, the encryption field specifying unit  1101 , the image encryption unit  1103 , and the pixel value conversion unit  1104  are similar to the encryption processes of the first embodiment in  FIG. 11 . Accordingly, descriptions of the processes of these three units are omitted. Hereinafter, the processes of an encryption field size related information adding unit  2101  will be described. 
         [0078]    The encryption field size related information adding unit  2101  adds the information about the size of an encrypted field to a specific position outside the encryption field or to the entire image. Here, examples of the information about the size of an encryption field which can be added are listed in the following. 
         [0079]    (1) Width and height of an encryption field in pixels 
         [0080]    (2) Numbers of blocks in the height and width dimensions, where an encryption field is divided into blocks in the scramble processing 
         [0081]    (3) Remainder of the calculation in which the numbers of blocks of (2) above in the height and width dimension are divided by a preset positive integer 
         [0082]      FIG. 22  illustrates an example in which the numbers of blocks of (2) above is added as encryption field size related information, and the numbers of blocks in the height and width dimensions are coded and added to a specific position. A code on which the encryption field size related information is embedded may be any code such as a barcode or a two-dimensional code. Apart from the above-described method of coding the information and adding the coded information to a specific position, it is also possible to adopt a method in which the information is embedded onto the entire image by using a watermark, or a method in which the information is added as a human-readable value. 
         [0083]    The encryption processes according to the second embodiment have been described in detail in the above. 
         [0084]    Next, the decryption processes according to the second embodiment will be described. 
         [0085]      FIG. 23  is a block diagram of decryption process procedures according to the second embodiment. In these decryption processes, the processes performed by the encryption field detection unit  1601 , the pixel value inverse conversion unit  1603 , and the image decryption unit  1604  are similar to the decryption processes of the first embodiment in  FIG. 16 . Accordingly, descriptions of the processes of these three units are omitted, and the processes of an encryption field size related information detection unit  2301  and a block position detection unit  2302  will be described below. 
         [0086]    Firstly, the encryption field size related information detection unit  2301  detects the information about the size of an encryption field in the image data.  FIG. 24  is presented by way of example, and the numbers of blocks of an encryption field in the height and width dimension are detected from the code which is added to a specific position outside the encryption field. If the size related information is added as a human-readable value, the read value may be manually input. 
         [0087]    Next, the block position detection unit  2302  detects the block positions of a scrambled encryption image on the basis of the detected information about the encryption field size, and detects a pattern of the pixel value conversion, which is arranged in a lattice form in the encryption field. 
         [0088]    In the decryption processes of  FIG. 6 , the information about the encryption field size (for example, the number of blocks) is unknown, and thus there are various possibilities that need to be considered when the block positions are detected. Accordingly, the possibility of inaccurately detecting the block positions increases. In the present embodiment, on the other hand, the information about the field size which is detected by the encryption field size related information detection unit  2301  may be used as a constraint, and the possibilities that need to be considered can be reduced when the block positions are detected. Accordingly, the precision of the detection of block positions improves. 
         [0089]    In the example of  FIG. 24 , the information about the number of blocks is detected, and thus the numbers of blocks in the encryption field are known to be 18 in the width dimension and 9 in the height dimension. Accordingly, it is not necessary to consider the other possible numbers of blocks when the block positions are detected, and the possibility of inaccurately detecting the block positions can be reduced. 
         [0090]    The decryption processes according to the second embodiment have been described in detail in the above. 
         [0091]    Next, the encryption processes according to the third embodiment will be described. 
         [0092]      FIG. 25  is a block diagram of encryption process procedures according to the third embodiment. In these decryption processes, the processes performed by the encryption field specifying unit  1101 , the image encryption unit  1103 , and the pixel value conversion unit  1104  are similar to those of the first embodiment in  FIG. 16  or the second embodiment in  FIG. 21 . Accordingly, the descriptions of the processes of these three units are omitted, and the processes of an encryption field size related information storage unit  2501  will be described below. 
         [0093]    The encryption field size related information storage unit  2501  transmits the information about the size of an encryption field to a server, and records the transmitted information in a database  2502 . In addition to the information about the size of an encryption field, at the same time, the document number of an image in which the encrypted image is included and the coordinate information of an encryption field are also transmitted to a server, and recorded in the database  2502 . 
         [0094]    In a similar manner as the second embodiment, examples of the information about the size of an encryption field which can be recorded are listed in the following. 
         [0095]    (1) Width and height of an encryption field in pixels 
         [0096]    (2) Number of blocks in the height and width dimensions where an encryption field is divided into blocks in the scramble processing 
         [0097]    (3) Remainder of the calculation in which the numbers of blocks of (2) above in the height and width dimension are divided by a preset positive integer 
         [0098]    The information which is recorded in the database  2502  is used in the later-described decryption processes for detecting the block positions in the encryption field. 
         [0099]    The encryption processes according to the third embodiment have been described in detail in the above. 
         [0100]    Finally, the decryption processes according to the third embodiment will be described. 
         [0101]      FIG. 26  is a block diagram of decryption process procedures according to the third embodiment. In these decryption processes, the processes performed by the encryption field detection unit  1601 , the pixel value inverse conversion unit  1603 , and the image decryption unit  1604  are similar to the decryption processes of the first embodiment in  FIG. 16  or the second embodiment in  FIG. 23 . Moreover, the processes performed by the block position detection unit  2302  are similar to those of the decryption processes in the second embodiment of  FIG. 23 . Accordingly, the descriptions of the processes performed by these units are omitted, and the processes of an encryption field size related information obtaining unit  2601  will be described below. 
         [0102]    The encryption field size related information obtaining unit  2601  firstly transmits the document number of an image including the encrypted image and the information about the positions of the detected encryption field to a server in which the encryption field size related information is stored as a database. By receiving the corresponding encryption field size related information from the database  2502  (same as that of  FIG. 25 ) of a server on the basis of transmitted a document number and the coordinate information of the encryption field, the encryption field size related information of an image to be decrypted can be obtained. 
         [0103]    If the block positions are detected on the basis of the obtained encryption field size related information, it is possible to improve the precision of the detection of block positions in a similar manner as the second embodiment. 
         [0104]    The decryption processes according to the third embodiment have been described in detail in the above. 
         [0105]      FIG. 27  illustrates an embodiment in which the features of encryption process procedures of  FIG. 11 ,  FIG. 21 , or  FIG. 25  or the features of decryption process procedures of  FIG. 16 ,  FIG. 23 , or  FIG. 26  are realized by executing a program in the computer. 
         [0106]    Firstly, if the configuration of  FIG. 27  is a computer for performing encryption processes, a CPU (central processing unit)  2701  performs encryption process procedures. Moreover, the encryption process procedures of  FIG. 11 ,  FIG. 21 , or  FIG. 25  are implemented by software, and the software is stored as encryption software in an external storage device  2705  such as a hard disk storage device. 
         [0107]    When a user starts up the encryption software, a program is loaded into the memory  2702  via a bus  2708 , and the CPU  2701  executes the program that corresponds to each processing unit. The user may scan printed matter by using a scanner which is connected as a part of an input device  2703 , and load the scanned printed matter into the memory  2702  via the bus  2708 . Alternatively, the user may perform the encryption processes by loading the document data stored in the external storage device  2705  into the memory  2702  via the bus  2708 . 
         [0108]    While watching a display that is connected as a part of an output device  2704 , the user performs the encryption process procedures by manipulating a mouse or a keyboard that is connected as a part of the input device  2703  to select a field to be encrypted and input a password. 
         [0109]    The encrypted image may be printed by a printer that is connected as a part of the output device  2704 , or may be stored in the external storage device  2705  or in the portable recording medium  2709  that is connected via the portable recording medium drive unit  2706 . Alternatively, the decrypted image may be sent to a network via the network connection device  2707 . 
         [0110]    The database  2502  of  FIG. 25  is implemented in a server device (not illustrated) that is connected from the network connection device  2707  through a network such as the internet. 
         [0111]    Secondly, if the configuration of  FIG. 27  is a computer for performing decryption processes, the CPU  2701  performs decryption process procedures. Moreover, the decryption process procedures of  FIG. 16 ,  FIG. 23 , or  FIG. 26  are implemented by software, and the software is stored as encryption software in the external storage device  2705  such as a hard disk storage device. 
         [0112]    When a user starts up the decryption software, a program is loaded into the memory  2702  via the bus  2708 , and the CPU  2701  executes the program that corresponds to each processing unit. The user may scan printed matter by using a scanner which is connected as a part of the input device  2703 , and load the scanned printed matter into the memory  2702  via the bus  2708 . Alternatively, the user may perform the decryption processes by loading the document data stored in the external storage device  2705  into the memory  2702  via the bus  2708 . 
         [0113]    When an image to be decrypted is loaded into the memory  2702  while a display that is connected as a part of an output device  2704  is watched, the user decrypts the encryption field by manipulating a mouse or a keyboard that is connected as a part of the input device  2703  to select a field to be decrypted and input a password. 
         [0114]    The decrypted image may be printed by a printer that is connected as a part of the output device  2704 , or may be stored in the external storage device  2705  or in the portable recording medium  2709  that is connected via the portable recording medium drive unit  2706 . Alternatively, the decrypted image may be sent to a network via the network connection device  2707 . 
         [0115]    The database  2502  of  FIG. 26  is implemented in a server device (not illustrated) that is connected from the network connection device  2707  through a network such as the internet. 
         [0116]    All examples and conditional language recited herein are intended for pedagogical purposes to aid the reader in understanding the invention and the concepts contributed by the inventor to furthering the art, and are to be construed as being without limitation to such specifically recited examples and conditions, nor does the organization of such examples in the specification relate to a showing of the superiority and inferiority of the invention. Although the embodiments of the present invention have been described in detail, it should be understood that the various changes, substitutions, and alterations could be made hereto without departing from the spirit and scope of the invention.