Abstract:
A processor with encryption function includes: an input unit that inputs a user ID; an embedding unit that embeds the user ID in an authentication password for access to a first external device, the authentication password being contained in processing directive data; an input/output unit that inputs and outputs the processing directive data; an encryption/decryption unit that encrypts the authentication password when outputting the processing directive data, and that decrypts the authentication password when inputting the processing directive data; a processing unit that executes a processing based on processing content which are described in the processing directive data; a collating unit that collates the inputted user ID with the embedded user ID to verify whether or not the inputted user ID and the embedded user ID coincide with each other; and an access unit that controls access to the first external device based on a result of the collating.

Description:
CROSS-REFERENCE TO RELATED APPLICATIONS 
       [0001]    This application is based on and claims priority under 35 U.S.C. 119 from Japanese Patent Application No. 2006-276025 filed Oct. 10, 2006. 
       BACKGROUND 
       [0002]    1. Technical Field 
         [0003]    The present invention relates to a processor with encryption function, an encryption device, an encryption processing method, and a computer readable medium. 
         [0004]    2. Related Art 
         [0005]    There is an art such as an information processor which includes a storage unit for storing security process information on which a security process procedure is described which corresponds to data which contains a structured language handled by application and a security processing unit for performing a security process which includes execution of an encryption process and signing process for the data handled by the application by referring to the security process information from the storage unit for safety communication of the application with an external application using a predetermined communication medium. 
       SUMMARY 
       [0006]    With a view to attaining the object, according to a mode for carrying out the invention, there are provided a processor with encryption function, an encryption device and a processing program with encryption function which will be described below. 
         [0007]    According to an aspect of the present invention, a processor with encryption function includes: an input unit that inputs a user ID; an embedding unit that embeds the user ID in an authentication password for access to a first external device, the authentication password being contained in processing directive data in which a processing content including access to the first external device is described; an input/output unit that inputs and outputs the processing directive data to a second external device in response to a request from the second external device; an encryption/decryption unit that encrypts the authentication password in which the user ID is embedded in a case where the input/output unit outputs the processing directive data, and that decrypts the authentication password in which the user ID is embedded in a case where the input/output unit inputs the processing directive data; a processing unit that executes a processing based on the processing content described in the processing directive data; a collating unit that collates the user ID inputted from the input unit with the user ID embedded in the authentication password in the processing directive data, in a case where the processing is executed, to verify whether or not the inputted user ID and the embedded user ID coincide with each other; and an access unit that accesses the first external device in a case where the user ID inputted from the input unit and the user ID embedded in the authentication password in the processing directive data are determined to coincide with each other. 
     
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0008]    Exemplary embodiment of the present invention will be described in detail based on the following figures, wherein: 
           [0009]      FIG. 1  is a conceptual diagram showing an example of a network to which an example of a processor with data encryption function according to an embodiment of the invention; 
           [0010]      FIG. 2  is a block diagram showing the configuration of the example of the processor with data encryption function according to the embodiment of the invention; 
           [0011]      FIG. 3  is an exemplary diagram showing part of an example of processing directive data which results before a device user ID is embedded according to the embodiment of the invention; 
           [0012]      FIG. 4  is an exemplary diagram showing part of processing directive data which results after the device user ID has been embedded according to the embodiment of the invention; 
           [0013]      FIG. 5  is an exemplary diagram showing part of an example of processing directive data which is encrypted by a processing directive data encryption and decryption device according to the embodiment of the invention; 
           [0014]      FIG. 6  is a flowchart illustrating an example of a flow of creating processing directive data according to the embodiment of the invention; 
           [0015]      FIG. 7  is a flowchart illustrating an example of a flow of executing the processing directive data according to the embodiment of the invention; 
           [0016]      FIGS. 8A to 8F  are conceptual diagrams showing, as a comparison example, an example of a conventional processor with data encryption function and an example of a flow of an illegal operation performed on an administrative external device by an administrative user; and 
           [0017]      FIGS. 9A to 9F  are conceptual diagrams showing an example of a processor with data encryption function according to the embodiment of the invention and an example of a flow of an illegal operation performed on an administrative external device by an administrative user. 
       
    
    
     DETAILED DESCRIPTION 
     (Configuration of Processor with Data Encryption Function) 
       [0018]      FIG. 1  is a conceptual diagram showing an example of a network to which an example of a processor with data encryption function is connected. As is shown in the figure, a processor with data encryption function  1 , an external device  2  and an administrative external device  3  are connected via a network  4 . The administrative external device  3  is used by a user who has an administrator authorization (hereinafter, referred to as an administrative user) to perform maintenance and backup operations of data and the like in the processor with data encryption function  1 . 
         [0019]      FIG. 2  is a block diagram showing the example of the processor with data encryption function according to the embodiment of the invention. This processor with data encryption function  1  has a CPU  10 , a storage which is made up of an HDD or the like which stores various types of program data, an input section  12  including a keyboard, a touch panel and the like, a processing section  13  for performing processes such as printing, scanning, data transmission and the like, and a communication interface (I/F)  14  for establishing a connection with a network. The processor with data encryption function  1  is, for example, multifunction equipment having data encryption function. 
         [0020]    The storage  11  stores a device control program  110 , a device user ID database  111  and processing directive data  112 . In addition, the storage  11  may not be provided within the processor with data encryption function  1  but may be connected to the processor with data encryption function  1  as an external device. 
         [0021]    The CPU  10  operates based on the device control program  110  stored in the storage  11  so as to function as a device user ID authentication device  100  for authenticating an inputted device user ID  201 , a processing directive data generation device for generating processing directive data  112 , an encryption and decryption device  102  for encrypting and decrypting processing directive data  112 , a processing directive data executing user authentication device  103  for authenticating a user when the user executes the processing directive data  112 , a processing directive data input/output device  104  for inputting/outputting the processing directive data  112  to the administrative external device  3  in response to a request from the administrative external device  3 , an access device  105  for accessing the external device  2  based on the process contents described in the processing directive data  112  and the like. 
         [0022]    The device user ID authentication device  100  examines whether or not the device user ID  201  inputted from the input section  12  is registered in the device user ID database  111  for authentication. 
         [0023]    When a directive to generate processing directive data  112  is given by the user from the input section  12 , the processing directive data generation device  101  generates processing directive data  112  and stores it in the storage  11 . In addition, the storage  11  can store several pieces of processing directive data  112 . 
         [0024]    The processing directive data  112  is data specific to each user which describes process contents which include predetermined processes including a process of access to the external device  2  and has information for access to the external device such as the address of the external device, external device user IDs  202  for individual users, external device authentication passwords  203  for individual users, and the like. In addition, the processing directive data  112  is data which is described in a structured language such as XML (Extensible Markup Language), HTML (Hyper Text Markup Language), XHTML (Extensible Hyper Text Markup Language), SGML (Standard Generalized Markup Language) and the like. As the processing directive data  112 , for example, a directive statement is raised which describes the process contents of the processor with data encryption function  1 . 
         [0025]    The process contents described in the processing directive data  112  include, for example, a process of transmitting scanned image data or text data or processing results to an external server of a PC (Personal Computer) for retention, a process of transmitting scanned image data or text data or processing results to a mail server for transmission by electronic mail, a process of transmitting scanned image data or text data or processing results to an FTP (File Transfer Protocol) for transmission and reception through internet, and the like. 
         [0026]    The processing directive data generation device  101  embeds an element which contains the device user ID  201  in a password element which contains the external device authentication password  203  as a child element. In addition, the process of embedding the element containing the device user ID  201  in the password element containing the external device authentication password  203  as the child element may be performed by an embedding device which is independent of the processing directive data generation device  101 . 
         [0027]      FIG. 3  represents part of an example of processing directive data which results before a device user ID is embedded therein, and  FIG. 4  represents part of the processing directive data which results after the device user ID has been embedded therein. As is shown in  FIGS. 3 and 4 , a Password element which contains “12345” which is the device user ID  201  is embedded in a Password element which contains “sesame” which is the external device authentication password  203 . In addition, although it is natural, the “sesame” as the external device authentication password  203 , the “12345” as the device user ID and a “Fujitaro” as the external device user ID  202  are only examples, and the password and IDs are not limited thereto. 
         [0028]    The processing directive data encryption and decryption device  102  encrypts part of the processing directive data  112  which contains information for access to the external device  2  when the processing directive data  112  is fetched to the administrative external device  2  for maintenance by the administrative user and decrypts the encrypted part when the processing directive data  112  is returned to the processor with data encryption function  1  from the administrative external device  3 . The processing directive data  112  is not encrypted in such a state that the data is stored in the storage  11  of the processor with data encryption function  1 . 
         [0029]      FIG. 5  shows part of processing directive data that has been encrypted by the processing directive data encryption and decryption device. As is shown in  FIG. 5 , the external device authentication password  203  and the contents of the Password element which contains the device user ID  201  are encrypted into an encrypted part  204 . Even in the event that the administrative user reads the processing directive data  112  using reading software or the like in the administrative external device  3  in this state, the administrative user cannot know the external device authentication password  203  and the device user ID  201 . 
         [0030]    When the user attempts to execute the processing directive data  112 , the processing directive data executing user authentication device  103  verifies whether or not a device user ID  201  inputted by the user to use the processor with data encryption function  1  coincides with the device user ID  201  embedded in the processing directive data  112  and authenticates the execution of the processing directive data  112  when both the user IDs  201  are determined to coincide with each other. 
         [0031]    The processing directive data input/output device  104  inputs/outputs the processing directive data  112  from the processor with data encryption function  1  relative to the administrative external device  3  when the administrative user performs maintenance or the like. 
       (Operation of Processor with Data Encryption Function) 
       [0032]    Here, the processor with data encryption function  1  will be described as multifunction equipment. In addition, the processing directive data  112  is regarded as a directive statement which describes a process of “transmitting scanned data to the external device  2  through a network, when a scan is performed by the processor with data encryption function  1 .” 
         [0033]      FIG. 6  is a flowchart illustrating an example of a flow of creating processing directive data which is a directive statement. The user creates processing directive data  112  using the processor with data encryption function  1 . 
         [0034]    Firstly, the user inputs the device user ID  201  from the input section  12  of the processor with data encryption function  1  for use of the processor with data encryption function  1  (step S 1  in  FIG. 6 ). 
         [0035]    When the device user ID  201  is so inputted, the device user ID authentication device  100  examines whether or not the inputted device user ID  201  has been registered in the device user ID database  111  (step S 2  in  FIG. 6 ). 
         [0036]    If the device user ID  201  is registered in the device user ID database  111 , the use of the process with data encryption function  1  is authenticated, and then the user proceed to create processing directive data  112  which is a directive statement (step S 3  in  FIG. 6 ). The user designates a directive content of “sending scanned data to the external device  2  through a network, when scanning is performed by the processor with data encryption function  1 ” and then inputs the address of the external device  2 , the external device user ID  202  which is a user ID for the external device  2  and the external device authentication password  203  which is an authentication password for the external device  2 . 
         [0037]    On the contrary, if the device user ID  201  is not registered in the device user ID database and hence, the use of the processor with data encryption function  1  is not authenticated, the input is determined as error, and the user is not allowed to proceed with further operations (step S 4  in  FIG. 6 ). 
         [0038]    Having passed step S 3  in  FIG. 6 , an element which contains the device user ID  201  is embedded in an element which contains the external device authentication password  203  by the processing directive data generation device  101 , and the processing directive data  112  shown in  FIG. 3  is created (step S 5  in  FIG. 6 ). 
         [0039]    Next, the processing directive data  112  so created as a directive statement is then executed, and the process content described in the processing directive data  112  is executed. 
         [0040]      FIG. 7  is a flowchart illustrating an example of a flow of execution of processing directive data by the user. The user inputs the processing directive data  112  using the processor with data encryption function  1 . 
         [0041]    Firstly, the user inputs the device user ID  201  from the input section  12  of the processor with data encryption function  1  for use of the processor with data encryption function  1  (step S 11  in  FIG. 7 ). 
         [0042]    When the device user ID  201  is so inputted, the device user ID authentication device  100  examines whether or not the inputted device user ID  201  has been registered in the device user ID database  111  (step S 12  in  FIG. 7 ). 
         [0043]    If the device user ID  201  is registered in the device user ID database  111 , the use of the process with data encryption function  1  is authenticated, and then the user proceed to create processing directive data  112  which is a directive statement (step S 13  in  FIG. 7 ). 
         [0044]    On the contrary, if the device user ID  201  is not registered in the device user ID database and hence, the use of the processor with data encryption function  1  is not authenticated, the input is determined as error, and the user is not allowed to proceed with further operations (step S 14  in  FIG. 7 ). 
         [0045]    In step S 12  in  FIG. 7 , when the user operates the input section  12  to execute the processing directive data  112 , the processing directive data executing user authentication device  103  verifies whether or not the device user ID  201  inputted by the user in step S 11  in  FIG. 7  coincides with the device user ID  201  embedded in the processing directive data  112  (step S 15  in  FIG. 7 ). 
         [0046]    If the inputted device user ID  201  and the device user ID  201  embedded in the processing directive data  112  are determined to coincide with each other, the execution of the processing directive data  112  is authenticated (step S 16  in  FIG. 7 ). In this case, a scan of a paper medium is performed by the processing section  13  which has a scanning function of the processor with data encryption function  1 , and scanned data is transmitted by the access device  105  to the external device  2  via the communication interface  14  and the network  4 . In addition, data sent to the external device  2  is encrypted by an encryption protocol such as SSL (Secure Socket Layer) for transmission. 
         [0047]    The scanned data is delivered to the external device  2  based on the address of the external device  2 , the external device user ID  202  and the external device authentication password  203  which are described in the processing directive data  112 . To be specific, for example, the scanned data is meta data, contains the address of the external device  2 , the external device user ID  202  and the external device authentication password  203  and is authenticated by the external device  2 . 
         [0048]    On the contrary, in step S 15  in  FIG. 7 , if the input device user ID  201  and the device user ID  201  embedded in the processing directive data  112  do not coincide with each other, the execution of the processing directive data  112  is not authenticated, and the input is determined as error (step S 17  in  FIG. 7 ). 
         [0049]    Next, a flow of performing an unauthorized or illegal operation using processing directive data  112  of another user by making use of the administrator authorization will be described. 
         [0050]      FIGS. 8A to 8F  are conceptual diagrams showing, as a comparison example, an example of a conventional processor with data encryption function and a flow of unauthorized or illegal operation on an administrative external device by an administrative user. The administrative user is assumed to perform an authorized or illegal operation using an administrative external device  3  which is connected to a conventional processor with data encryption function  15  via a network  4 . Here, the administrative external device  3  is, for example, a PC. 
         [0051]    Firstly, as is shown in  FIG. 8A , a user A 5   a  inputs a device user ID  201   a “ 12345” of the user A 5   b  to log in to the processor with data encryption function  15  and then creates processing directive data  112   a  by inputting the address (not shown) of the external device  2 , an external device user ID (not shown) of the user A 5   a  and an external device authentication password  203   a  “sesami” of the user A 5   a . The information inputted in this way is contained in the processing directive data  12 . The processing directive data  112   a  can be handled only by the user  5 Aa in the processor with data encryption function  15 . 
         [0052]    Next, as is shown in  FIG. 8B , a user  5 Bb who is an administrative user inputs a device user ID  201   b “ 56789” of the user B 5   a  to log in the processor with data encryption function  15  and creates processing directive data  112   b  by inputting the address (not shown) of the external device  2 , an external device user ID (not shown) of the user B 5   b  and an external device authentication password  203   b  “xyz” of the user B 5   b . The information inputted in this way is contained in the processing directive data  112   b . The processing directive data  112   b  can be handled only by the user B 5   b  in the processor with data encryption function  15 . 
         [0053]    Next, as is shown in  FIG. 8C , the user B 5   b , who is the administrative user, fetches the processing directive data  112   a  of the user A 5   a  and the processing directive data  112   b  of the user B 5   b  into the administrative external device  3  from the processor with data encryption function  15 . The processing directive data  112   a  and the processing directive data  112   b  are encrypted by the processing directive data encryption and decryption device  102  at the point in time at which they are outputted from the processor with data encryption function  15 , and as is shown in  FIG. 4 , parts thereof which contain the external device authentication passwords  203   a ,  203   b  constitute encrypted parts  204   a ,  204   b , respectively. 
         [0054]    Note that the fetching operation of the processing directive data  112   a ,  112   b  into the administrative external device  3  is approved to be carried out by the administrative user for necessity of maintenance and backup of those pieces of data, and hence, this operation itself is not such as to constitute an unauthorized or illegal operation. 
         [0055]    Next, as is shown in  FIG. 8D , the user B 5   b  copies the encrypted part  204   a  of the processing directive data  112   a  to replace the encrypted part  204   b  of the processing directive data  112   b  with the copy of the encrypted part  204   a . Namely, although the user B 5   b  cannot know the contents (the external device authentication password  203   a  “sesami” of the user A 5   a ) of the encrypted part  204   a , he or she can make use it by pasting it to the processing directive data  112   b  of the user B 5   b . In addition, the external device user ID (not shown) of the user B 5   b  can also be replaced by the external user ID (not shown) of the user A 5   b.    
         [0056]    This operation of replacing the encrypted part  205   b  by the encrypted part  204   a  and the operation of replacing the external device user ID of the user B 5   b  by the external device user ID of the user A 5   a  are illegal operations intended to execute the processing directive data  112   b  under the name of the user A 5   a.    
         [0057]    Next, as is shown in  FIG. 8E , the user B 5   b  returns the processing directive data  112   a  and the processing directive data  112   b  of which the encrypted part  204   b  is replaced by the encrypted part  204   a  to the processor with data encryption function  15 . The processing directive data  112   a ,  112   b  are decrypted by the processing directive data encryption and decryption device  102  at the point in time at which they are inputted into the processor with data encryption function  15 . However, as done on the administrative external device  3 , the contents of the processing directive data  112   a ,  112   b  cannot be read on the processor with data encryption function  15 . 
         [0058]    Next, as is shown in  FIG. 8F , the user B 5   b  attempts execute the processing directive data  112   b  using the processor with data encryption function  15 , whereby the process based on the process contents described in the processing directive data  112   b  is executed, and meta data (image data, text data or the like) which contains, for example, the address (not shown) of the external device  2 , the external device user ID (not shown) of the user A 5   a , and the external device authentication password  203   a  “sesami” of the user A 5   a  is sent to the external device  2 . Since the external device authentication password  203   a  “sesami” is the right password, the password is authenticated by the external device  2 , and processing of the processing directive data  112   b  disguised as the data of the user A 5   a  is executed under the name of the user A 5   a.    
         [0059]    Next, a case will be described where the user B 5   b , who is the administrative user, attempts to perform the same illegal operations on the processor with data encryption function  1  according to the embodiment of the invention. 
         [0060]      FIGS. 9A to 9F  are conceptual diagrams showing an example of a processor with data encryption function according to the embodiment of the invention and an example of illegal operations performed on the administrative external device by the administrative user. 
         [0061]    Firstly, as is shown in  FIG. 9A , the user A 5   a  inputs the device user ID  201   a “ 12345” of the user A 5   b  to log in to the processor with data encryption function  1  and then creates processing directive data  112   a  by inputting the address (not shown) of the external device  2 , the external device user ID (not shown) of the user A 5   a  and the external device authentication password  203   a  “sesami” of the user A 5   a . The information inputted in this way is contained in the processing directive data  12 , and furthermore, as is shown in  FIG. 3 , an element containing a device user ID  201   a  is embedded in an element containing an external device authentication password  203   a  as a child element. The processing directive data  112   a  can be handled only by the user  5 Aa in the processor with data encryption function  1 . 
         [0062]    Next, as is shown in  FIG. 9B , the user  5 Bb, who is the administrative user, inputs the device user ID  201   b “ 56789” of the user B 5   a  to log in the processor with data encryption function  1  and creates processing directive data  112   b  by inputting the address (not shown) of the external device  2 , the external device user ID (not shown) of the user B 5   b  and the external device authentication password  203   b  “xyz” of the user B 5   b . The information inputted in this way is contained in the processing directive data  112   b , and furthermore, as is shown in  FIG. 3 , an element containing a device user ID  201   b  is embedded in an element containing an external device authentication password  203   b  as a child element. The processing directive data  112   b  can be handled only by the user B 5   b  in the processor with data encryption function  1 . 
         [0063]    Next, as is shown in  FIG. 9C , the user B 5   b , who is the administrative user, fetches the processing directive data  112   b  of the user A 5   a  and the processing directive data  112   b  of the user B 5   b  into the administrative external device  3  from the processor with data encryption function  1 . The processing directive data  112   a  and the processing directive data  112   b  are encrypted by the processing directive data encryption and decryption device  102  at the point in time at which they are outputted from the processor with data encryption function  1 , and as is shown in  FIG. 4 , parts thereof which contain the external device authentication passwords  203   a ,  203   b  constitute encrypted parts  204   a ,  204   b , respectively. 
         [0064]    Next, as is shown in  FIG. 9D , the user B 5   b  copies the encrypted part  204   a  of the processing directive data  112   a  to replace the encrypted part  204   b  of the processing directive data  112   b  with the copy of the encrypted part  204   a . In addition, the external device user ID (not shown) of the user B 5   b  is also replaced by the external device user ID (not shown) by the user A 5   a.    
         [0065]    Next, as is shown in  FIG. 9E , the user B 5   b  returns the processing directive data  112   a  and the processing directive data  112   b  of which the encrypted part  204   b  is replaced by the encrypted part  204   a  to the processor with data encryption function  1 . The processing directive data  112   a ,  112   b  are decrypted by the processing directive data encryption and decryption device  102  at the point in time at which they are inputted into the processor with data encryption function  1 . However, as done on the administrative external device  3 , the contents of the processing directive data  112   a ,  112   b  cannot be read on the processor with data encryption function  1 . 
         [0066]    Next, as is shown in  FIG. 9F , the user B 5   b  attempts execute the processing directive data  112   b  using the processor with data encryption function  1  by following the flow shown in  FIG. 7 . However, since the device user ID  201   b “ 56789” inputted by the user B 5   b  in step S 11  in  FIG. 7  does not coincide with the device user ID  201   a “ 12345” which is embedded in the processing directive data  112 , no authentication by the processing directive data executing user authentication device  103  is performed, whereby the processing directive data  112  is not executed (step S 17  in  FIG. 7 ). 
       Other Embodiments 
       [0067]    Note that the invention is not limited to the embodiment that has been described heretofore, and hence, the invention can be modified variously without departing from the spirit and scope of the invention. For example, the processor with data encryption function is not limited to the multifunction equipment but may be applied to any equipment which can deal with networking. 
         [0068]    In addition, the encrypted part of the processing directive data is not limited to what is described in the embodiment above. 
         [0069]    Additionally, the program that is used in the embodiment may be read into the storage of the processor from a storage medium such as a CD-ROM or may be downloaded into the storage of the processor from a server or the like which is connected to a network such as the internet. 
         [0070]    In addition, while in the respective embodiments, the device user ID authentication device, the processing directive data generation device, the processing directive data encryption and decryption device and the processing directive data input/output device are realized by the CPU and the program, part of or all the devices may be realized by hardware such as an application specific integrated circuit (ASIC). 
         [0071]    Additionally, the constituent elements of the respective embodiments can be combined in any way without departing from the spirit and scope of the invention.