Image forming apparatus
By encrypting image data in predetermined units and associating them with preceding data for secure storage, the apparatus addresses the security gap in FAX protocol data reception, ensuring efficient and secure storage and retrieval.
Patent Information
- Application Number
- JP2023190646
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-11-08
- Publication Date
- 2025-05-20
AI Technical Summary
Existing image forming apparatuses that receive and store image data from external devices lack effective security measures for data received via FAX protocol, as highlighted by Patent Document 1.
The apparatus is equipped with a communication interface, non-volatile memory, and a controller that encrypts image data in predetermined units as it is received, associating each unit with preceding data for secure storage in the non-volatile memory, enabling easy retrieval during output processing.
This approach enhances the security of stored image data while allowing for efficient and secure storage and retrieval, ensuring quick access for printing or transfer operations.
Smart Images

Figure 2025078227000001_ABST
Abstract
Description
[Technical field]
[0001] The technical field disclosed in this specification relates to an image forming apparatus that receives and stores image data from an external device. [Background technology]
[0002] Conventionally, image forming apparatuses that receive and store image data from an external device are known. For example, Patent Document 1 discloses a technique for such an image forming apparatus, which has a reading unit that obtains image data by reading an original document and a receiving unit that receives the image data by a FAX protocol, and performs a predetermined process for reducing the use of consumables on the image data obtained by the reading unit, but does not perform the predetermined process on the image data received by the FAX protocol. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] Patent Publication No. 2021-121079 Summary of the Invention [Problem to be solved by the invention]
[0004] In an image forming apparatus that receives and stores image data from an external device, the security of the stored image data becomes an issue. Patent Document 1 does not describe how to improve the security of image data received by a FAX protocol, and there is room for improvement. [Means for solving the problem]
[0005] An image forming device made for the purpose of solving this problem is equipped with a communication interface, a non-volatile memory, and a controller, and is capable of receiving a job containing image data consisting of multiple pages sequentially from the first page via the communication interface, and is configured so that when the controller receives a predetermined unit of image data for the job that it has started receiving, it encrypts the received image data and stores it in the non-volatile memory, and when the controller receives subsequent image data for the job that it has started receiving, which is the predetermined unit of image data that follows preceding image data, which is the image data received earlier, it encrypts the received subsequent image data and stores the encrypted subsequent image data in the non-volatile memory, associating it with the fact that it follows the preceding image data.
[0006] The image forming apparatus disclosed in this specification encrypts the received image data for a job that has started receiving, in a predetermined unit, when storing the image data in a non-volatile memory. This ensures the security of the image data and enables the image data to be saved in a short time. The image forming apparatus also stores each encrypted image data in the non-volatile memory by associating the order of the data. This makes it easy for the image forming apparatus to read each stored image data when performing output processing such as printing or transfer for the job.
[0007] A control method for implementing the functions of the image forming apparatus, a computer program, and a computer-readable storage medium storing the program are also novel and useful. Effect of the Invention
[0008] According to the technology disclosed in this specification, a technology is realized that improves the security of stored image data in an image forming apparatus that receives and stores image data from an external device. [Brief description of the drawings]
[0009] [Figure 1] 2 is a block diagram showing the electrical configuration of the MFP according to the present embodiment. FIG. [Diagram 2] 13 is a flowchart illustrating an example of a procedure for a main process. [Diagram 3] FIG. 11 is an explanatory diagram showing an example of an incoming call history table. [Figure 4] 13 is a flowchart illustrating an example of a procedure for a FAX receiving process. [Diagram 5] FIG. 11 is an explanatory diagram illustrating an example of a FAX management table. [Figure 6] FIG. 11 is an explanatory diagram illustrating an example of a page management table. [Figure 7] 13 is a flowchart showing an example of a procedure for a FAX data output process. [Figure 8] 13 is a flowchart illustrating an example of a procedure for partial reception processing. [Figure 9] FIG. 2 is an explanatory diagram showing an example of the configuration of data stored in a file. [Figure 10] 13 is a flowchart illustrating an example of a procedure for partial output processing. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0010] Hereinafter, a first embodiment of an image forming apparatus will be described in detail with reference to the accompanying drawings. This specification discloses a multifunction peripheral (hereinafter, referred to as "MFP") capable of performing a plurality of functions related to image processing, such as fax reception, printing, scanning, and fax transmission.
[0011] 1, the MFP 1 of the present embodiment includes a controller 10 including a CPU 11 and a memory 12. The MFP 1 is an example of an image forming device. The CPU 11 may be an example of a controller. The MFP 1 also includes a user interface (hereinafter referred to as a "user IF") 13, a communication interface (hereinafter referred to as a "communication IF") 14, a print engine 15, and a scanner 16, which are electrically connected to the controller 10.
[0012] The CPU 11 executes various processes according to the programs read from the memory 12 and based on the user's operations. As shown in Fig. 1, the memory 12 stores various programs including an operating system (hereinafter referred to as "OS") 21, a main program 22, and a FAX receiving program 23, as well as various data. The memory 12 is also used as a work area when various processes are executed. A buffer provided in the CPU 11 is also an example of the memory 12.
[0013] An example of memory 12 is not limited to a ROM, RAM, HDD, etc. built into MFP 1, but may be a storage medium that is readable and writable by CPU 11. A computer-readable storage medium is a non-transitory medium. In addition to the above examples, non-transitory media also include recording media such as CD-ROM and DVD-ROM. A non-transitory medium is also a tangible medium. On the other hand, an electrical signal that carries a program downloaded from a server on the Internet is a computer-readable signal medium, which is a type of computer-readable medium, but is not included in non-transitory computer-readable storage media.
[0014] The memory 12 includes a writable non-volatile memory 30. For example, an incoming call history table 31, a FAX management table 32, a page management table 33, and a FAX data file 34 can be stored in the non-volatile memory 30. When the MFP 1 is shipped from the factory, the non-volatile memory 30 may not store anything. The non-volatile memory 30 may be, for example, a flash memory incorporated in the housing of the MFP 1, or a USB memory detachably attached to the MFP 1. Since the flash memory and the USB memory retain information even when they are removed from the MFP 1, there is a concern about the security of the information. Details of each piece of information will be described later.
[0015] The user IF 13 includes a touch panel 131 having a screen display function and an operation reception function. The user IF 13 may further include hardware keys, LED lamps, speakers, and the like.
[0016] The communication IF 14 includes hardware for communicating with an external device. The communication IF 14 includes a network interface (hereinafter referred to as "network IF") 141 and a telephone line interface (hereinafter referred to as "telephone line IF") 142. The communication standards of the communication IF 14 include Ethernet (registered trademark), Wi-Fi (registered trademark), USB, etc. The telephone line IF 142 includes a handset and modem (not shown). The MFP 1 includes a telephone function using the telephone line IF 142, and a function for receiving and transmitting image data according to a FAX protocol.
[0017] The print engine 15 includes a configuration for printing an image based on image data on a print medium such as a sheet. The image forming method of the print engine 15 is, for example, an electrophotographic method or an inkjet method. The scanner 16 includes a configuration for reading an image of an original document and acquiring image data.
[0018] Next, the operation procedure of the MFP1 will be described with reference to a flowchart. The following process basically indicates the process of the CPU 11 according to the instructions written in the program. That is, the processes such as "judgment", "extraction", "selection", "calculation", "decision", "identification", "acquisition", "reception", and "control" in the following description represent the process of the CPU. The process by the CPU also includes hardware control using the API of the OS. In this specification, the operation of each program will be described with the description of the OS omitted. That is, in the following description, a description to the effect that "program B controls hardware C" may also mean that "program B controls hardware C using the API of the OS". In addition, the process of the CPU according to the instructions written in the program may be described in abbreviated terms. For example, it may be described as "performed by the CPU". In addition, the process of the CPU according to the instructions written in the program may be described in abbreviated terms such as "performed by program A".
[0019] Note that "obtaining" is used as a concept that does not require a request. In other words, the process of receiving data without the CPU requesting it is also included in the concept of "the CPU obtaining data." In addition, "data" in this specification is represented as a bit string that can be read by a computer. Data with the same substantial meaning but different formats will be treated as the same data. The same applies to "information" in this specification. In addition, "requesting" and "instructing" are concepts that indicate outputting information indicating a request or information indicating an instruction to the other party. In addition, information indicating a request or information indicating an instruction will also be simply referred to as "request" and "instruction."
[0020] Furthermore, the process by a CPU to determine whether information A indicates event B is sometimes conceptually described as "determining, from information A, whether event B is present." The process by a CPU to determine whether information A indicates event B or event C is sometimes conceptually described as "determining, from information A, whether event B or event C is present."
[0021] The main processing of the MFP 1 will be described with reference to the flowchart of Fig. 2. The main processing is executed by the CPU 11 of the MFP 1 based on the main program 22 and the FAX receiving program 23 when the power of the MFP 1 is turned on.
[0022] When the power is turned on, the MFP 1 is capable of receiving both a job including image data via the communication IF 14 and an operation on the user IF 13. Jobs including image data include, for example, a print job received from a personal computer or the like via the network IF 141, and a FAX job received via the telephone line IF 142 from a FAX device connected to a public telephone line network. The following describes the process of receiving a FAX job via the telephone line IF 142.
[0023] The CPU 11 judges whether an incoming call to the telephone line IF 142, which indicates either a received FAX or an incoming telephone call, has been received (S101). If it is judged that an incoming call has not been received (S101: NO), the CPU 11 judges whether an operation to the user IF 13 has been received (S102). If it is judged that an operation to the user IF 13 has not been received either (S102: NO), the CPU 11 continues to judge whether an incoming call has been received (S101) or whether an operation has been performed on the user IF 13 (S102).
[0024] When it is determined that the incoming call has been accepted (S101: YES), the CPU 11 writes information about this incoming call in the incoming call history table 31 (S111). In the incoming call history table 31, for example, as shown in FIG. 3, a record in which an incoming call date and time 311, an incoming call number 312, and a FAX control number 313 are associated with each other is stored for each incoming call. In S111, the CPU 11 adds a record corresponding to this incoming call and writes the current date and time in the incoming call date and time 311. Furthermore, if the incoming call information includes number notification information, the CPU 11 writes that number in the incoming call number 312. If the incoming call is an anonymous call, the CPU 11 writes information indicating that the number is anonymous in the incoming call number 312.
[0025] Then, the CPU 11 judges whether the current incoming call is a FAX reception (S112). For example, if the CPU 11 does not accept any operation on the handset during a predetermined number of rings, the CPU 11 closes the line and becomes ready to receive FAX. Then, the CPU 11 judges whether a communication start signal based on the FAX protocol has been accepted.
[0026] If it is determined that the reception is a fax (S112: YES), CPU 11 determines a fax control number for identifying the current fax reception (S113) and writes it to the record added in S111 of the incoming call history table 31. For example, CPU 11 determines a consecutive fax control number for each fax reception. That is, CPU 11 adds 1 to the previous fax control number and sets the current fax control number as the fax control number. The fax control number is an example of job identification information. On the other hand, if it is determined that the reception is not a fax reception (S112: NO), CPU 11 sets the fax control number as information indicating that the reception is not a fax reception, for example, "0" (S114), and writes it to the record added in S111 of the incoming call history table 31.
[0027] If a fax is received at "Date and Time 1", then a phone call is received at "Date and Time 2", and then a fax is received at "Date and Time 3", then the incoming call history table 31 will have three records stored therein, as shown in Fig. 3. If the fax management number 313 of the record for "Date and Time 1" is "1", the fax management number 313 of the record for "Date and Time 3" will be "2". Also, "0" is written into the fax management number 313 of the record for "Date and Time 2" since this is not a fax reception.
[0028] After S113, the CPU 11 executes FAX reception processing (S115). The procedure of the FAX reception processing will be described with reference to the flowchart in Fig. 4. Note that, when the MFP 1 of this embodiment receives image data by the FAX protocol, it is configured to not print immediately, but to temporarily store the received image data in the non-volatile memory 30, which is a non-volatile storage area, and to start printing after receiving a user instruction.
[0029] In the FAX reception process, the CPU 11 first adds a record to the FAX management table 32 (see FIG. 1) (S201) in order to manage the information of the current FAX reception, and stores the FAX management number indicating the current FAX reception. For example, as shown in FIG. 5, the FAX management table 32 stores a record for each FAX reception, in which a FAX management number 321, a total number of pages 322, and a first page management number 323 are associated with each other.
[0030] The FAX management number 321 is determined in S113 of the main process described above, and is information that corresponds one-to-one to the number stored in the FAX management number 313 of the incoming call history table 31, and is, for example, the same number. The total number of pages 322 is the total number of pages of the image data received by the current FAX reception, and is not determined until the current FAX reception is completed. The first page management number 323 is a page management number that indicates the first page of the current FAX reception. The first page management number 323 is an example of leading information. The page management number is a number that manages the received image data by page, and is assigned consecutively to each page in the order of reception, as described later.
[0031] The CPU 11 determines the page management number indicating the first page of the current fax reception and stores it in the first page management number 323 of the fax management table 32 (S202). The first page management number 323 of the current fax reception is, for example, a number obtained by adding 1 to the page management number indicating the last page of the previous fax reception. For example, as shown in FIG. 5A, if the previous fax reception with fax management number "1" has first page management number 323 of "1" and total page number 322 of 1 page, the first page management number 323 of the current fax reception will be "2". The total page number of the current fax reception is unknown before the completion of image data reception, but the CPU 11 may store "0" in the total page number 322 of the fax management table 32, or may leave it blank for the time being.
[0032] The CPU 11 automatically determines a file name for storing one page of image data received according to a predetermined rule, and creates the file in the non-volatile memory 30 (S211). The CPU 11 determines a file name that is associated with the current FAX control number and that can identify the page order as a file name indicating each file. The CPU 11 creates a file name by combining, for example, the FAX control number and the page number in the job, which is expressed as a sequential number.
[0033] For example, the CPU 11 sets the file name for storing the image data of the first page of the FAX control number "1" to "fax01_1" which is a combination of "fax01" indicating the FAX control number "1" and "1" indicating that it is the first page. For example, Fig. 1 shows the non-volatile memory 30 in a state in which a file 341 with the file name "fax01_1" generated by the previous FAX reception is stored, and in S211, a file "fax02_1" for storing the image data of the first page of the current FAX reception is being created.
[0034] Then, CPU 11 receives one page of image data (S212) and acquires the data size of the received one page of image data (S213). CPU 11 further encrypts the received one page of image data using a predetermined encryption method (S215) and stores the encrypted image data in the file created in S211 (S216). One page of image data is an example of a predetermined unit of image data.
[0035] Storing the encrypted image data as a file makes it easier to read the image data when it is output in a later step. Also, by encrypting the image data, the image data cannot be easily confirmed, so the security of the image data is high. When an encryption method using a fixed encryption key is used, the encryption key is stored in a location separate from the non-volatile memory 30. Note that while the CPU 11 encrypts the received image data, the incoming call history table 31, the FAX management table 32, and the page management table 33 are stored in the non-volatile memory 30 without being encrypted.
[0036] Furthermore, CPU 11 adds a record to page management table 33 (see FIG. 1) and stores information about the file that stored one page of image data in S216 (S217). In page management table 33, for example, as shown in FIG. 6, a record in which a page management number 331, a data size 332, and a file name 333 are associated with each other is stored for each page of image data.
[0037] Page management number 331 is information that is incremented each time encrypted image data of each page is stored, and indicates the storage order as a consecutive number. Page management number 331 is an example of ranking information. Data size 332 is information obtained in S213, and is the data size of the image data before encryption. Data size 332 is an example of size information. File name 333 is information that indicates the file in which the encrypted data of the image data of each page is stored. File name 333 is an example of image information.
[0038] 6A, for example, a record relating to the first page of the current fax reception is added to page management table 33. Because the previous fax reception was only one page, the added record has page management number 331 of "2", and first page management number 323 of fax management table 32 is also "2". Also, file name 333 is a name combining the fax management number and the page number, as described above, and is "fax02_1".
[0039] Furthermore, CPU 11 adds 1 to the total number of pages (S218). Then, CPU 11 transmits a response indicating that reception of one page has been completed to the sender of this FAX using the FAX protocol (S219). As a result, the sender transmits image data of the next page if there is a next page, or transmits a transmission completion message if there is no next page.
[0040] The CPU 11 determines whether or not a transmission end has been received (S221). If it is determined that the data of the next page has been received rather than the transmission end (S221: NO), the CPU 11 increments the page management number by 1 (S222) and proceeds to S211 to process the data of the next page. If image data of the second page has been received, the CPU 11 performs the processes of S211 to S219 in the same manner as for the first page. The page management number of the second page becomes "3", which is the consecutive number following the page management number "2" of the first page. The image data of the first page received previously is an example of preceding image data, and the image data of the second page received subsequently is an example of succeeding image data.
[0041] By performing the same process as for the first page, a record for the second page of the current fax reception is stored in the page management table 33, as shown in Fig. 6(B), for example. The page management number 331 of the second page is "3", and the file name 333 is "fax02_2". At this point, the total number of pages is "2".
[0042] Since page management number 331 is a consecutive number, it can be seen based on page management table 33 that "fax02_2" is a file that stores image data following "fax02_1". The file name "fax02_2" of the second page is also information indicating that it is a page following the file name "fax02_1" of the first page. The file name "fax02_1" of the first page is an example of a first file name, and the file name "fax02_2" of the second page is an example of a second file name. Page management table 33 that includes a record that includes the file name "fax02_1" and a record that includes the file name "fax02_2" is an example of first file name information.
[0043] Similarly, CPU 11 encrypts and stores the image data of each received page in order until it receives a transmission end signal. If it determines that it has received a transmission end signal (S221: YES), CPU 11 stores the total number of pages received in the current FAX job in total page number 322 of FAX management table 32 (see FIG. 5) (S231). Total page number 322 is also information indicating the number of encrypted FAX data, and is an example of number information. In the first embodiment, image data is encrypted on a page-by-page basis and stored in a file on a page-by-page basis, making it easy for MFP 1 to manage received image data.
[0044] For example, if the current fax reception includes three pages of image data, three records with page management numbers 331 of "2," "3," and "4" are added to page management table 33, and the data sizes and file names are stored in association with each other, as shown in Fig. 6(C).Fax management table 32 stores, for the current fax reception, fax management number 321 "2" in association with first page management number 323 "2" and total page count 322 "3," as shown in Fig. 5(B).
[0045] After S231, the CPU 11 ends the FAX reception process and returns to the main process of Fig. 2. In the main process of Fig. 2, the CPU 11 proceeds to S101 after the FAX reception process of S115, or after S114 if the process is not FAX reception, and waits until an incoming call or an operation on the user IF 13 is accepted.
[0046] Then, if it is determined that an operation on the user IF 13 has been received rather than an incoming call (S102: YES), the CPU 11 determines whether the received user instruction is an instruction related to received FAX data, i.e., an instruction to print the FAX data (S121) or an instruction to transfer the FAX data (S122).
[0047] When it is determined that an instruction to print the FAX data has been accepted (S121: YES), or when it is determined that an instruction to transfer the FAX data has been accepted (S122: YES), the CPU 11 executes a FAX data output process (S131).
[0048] The procedure of the FAX data output process will be described with reference to the flowchart of Fig. 7. In the FAX data output process, the CPU 11 first accepts the selection of FAX data to be output via an operation on the user IF 13 (S301). The CPU 11 displays, for example, the incoming call date and time 311 and the incoming call number 312 stored in the incoming call history table 31 (see Fig. 3) on the user IF 13 and accepts the user's selection. This enables the CPU 11 to identify the FAX control number of the FAX data to be output.
[0049] Then, CPU 11 refers to FAX management table 32 (see FIG. 5) and acquires total page count 322 and first page management number 323 corresponding to the FAX management number identified in S301 (S302). Furthermore, CPU 11 acquires data size 332 and file name 333 of one file from page management table 33 (see FIG. 6) based on acquired first page management number 323 (S311). Here, CPU 11 first acquires information on a file including image data for one page for the first page of the FAX data to be output.
[0050] Specifically, when a fax reception with fax management number 313 of "2" is specified in S301, CPU 11 can determine, based on fax management table 32, that its first page management number 323 is "2" and its total number of pages 322 is "3". Furthermore, because the page management numbers are consecutive numbers, CPU 11 can determine that the image data for the three pages starting from page management number "2" is the image data for page management numbers "2" to "4". Then, by referring to page management table 33, CPU 11 can obtain the file names of the files in which the encrypted image data for each of the three pages with page management numbers "2" to "4" is stored, and the data sizes before encryption for each of the three pages.
[0051] In other words, since the page management numbers are consecutive numbers, when a FAX management number is specified, the CPU 11 can identify the files in which the image data of each page received by FAX is encrypted and stored in the order of reception, based on the FAX management table 32 and the page management table 33. Therefore, the combination of the FAX management table 32 and the page management table 33 is an example of management information.
[0052] Then, CPU 11 secures a memory area corresponding to the acquired data size (S312). In this case, CPU 11 secures a volatile area, not a nonvolatile area. CPU 11 reads the file with the file name acquired in S311 from nonvolatile memory 30, and decrypts the file using the secured memory area (S313). This results in a state in which the decrypted image data is written in the memory area. By securing the necessary memory area in advance, the risk of decryption failure is reduced. Note that either the reading of data from nonvolatile memory 30 in S313 or the securing of memory area in S312 may be executed first.
[0053] The CPU 11 determines whether the data size of the decrypted image data matches the data size acquired in S311 (S321). If the decryption is successful, the data size of the decrypted image data should match the data size of the image data received by FAX reception. By checking the data size of the decrypted image data against the data size at the time of reception, the risk of outputting image data that is corrupted due to an error during encryption or decryption is reduced.
[0054] If it is determined that they match (S321: YES), the CPU 11 outputs the decrypted image data (S322). Specifically, if the user's instruction is a print instruction, the CPU 11 passes the decrypted image data to the print engine 15 to execute printing. If the user's instruction is a transfer instruction, the CPU 11 transfers the decrypted image data to a designated transfer destination via the communication IF 14. Note that the CPU 11 uses an appropriate communication IF 14 according to the designation of the transfer instruction. For example, if the transfer destination is another FAX device, the CPU 11 transmits the image data one page at a time using the FAX protocol via the telephone line IF 142. Note that if the transfer destination is a personal computer or the like connected to a network line, the CPU 11 may, for example, create a PDF file including all pages and transmit the file via the network IF 141.
[0055] Then, CPU 11 determines whether or not the processing of the number of pages indicated by the total page count acquired in S302 has been completed (S325). If it is determined that the processing has not been completed (S325: NO), CPU 11 proceeds to S311 and processes the next page. Specifically, CPU 11 acquires information corresponding to the page management number obtained by adding 1 to the target page management number of the previous processing in S311 from page management table 33. CPU 11 executes S312 to S322 for that page.
[0056] If the fax data selected to be printed or transferred is data with fax control number "2," CPU 11 processes the file corresponding to page control number "2," followed by the file corresponding to page control number "3," and the file corresponding to page control number "4." Since the page control numbers are consecutive numbers, CPU 11 can read out image data in the appropriate order according to the consecutive numbers.
[0057] When it is determined that the processing of the number of pages indicated by the total page count acquired in S302 has been completed (S325: YES), the CPU 11 ends the FAX data output processing, and returns to the main processing of Fig. 2. Because the total page count 322 is stored in the FAX management table 32, the CPU 11 can grasp the completion of reading of the image data.
[0058] Moreover, if it is determined that the data size of the decoded image data does not match the data size acquired in S311 (S321: NO), the CPU 11 notifies an error (S327), terminates the FAX data output process without printing or transferring that page, and returns to the main process of Fig. 2. Note that, if the processing of the pages of the total number of pages has not been completed, the CPU 11 may skip that page and execute the processing of the next page.
[0059] Returning to the explanation of the main process in Fig. 2, if it is determined that an instruction other than an instruction to print FAX data or an instruction to transfer FAX data has been received (S122: NO), the CPU 11 executes the process corresponding to the received instruction (S132). The CPU 11 can receive various setting instructions, FAX transmission instructions, instructions to delete received data, etc., based on an operation on the user IF 13. After the FAX data output process in S131 or after S132, the CPU 11 proceeds to S101 and waits until an incoming call or an operation on the user IF 13 is received.
[0060] As described above in detail, the MFP1 of the first embodiment encrypts the received image data for each page when it starts receiving the image data using the FAX protocol, and stores the image data in the non-volatile memory 30. Therefore, the MFP1 is highly likely to be able to store the image data in a short time while ensuring the security of the image data, compared to, for example, encrypting all pages at once after receiving all the data. In addition, the MFP1 stores the relative precedence and succession of each encrypted image data as a table in the non-volatile memory 30, so that when printing or transferring based on the image data is performed, each stored image data can be easily read.
[0061] Next, a second embodiment of the image forming apparatus will be described in detail with reference to the attached drawings. The MFP1 of the first embodiment encrypts image data in units of one page, and stores the encrypted data for one page in one file. In contrast, the MFP1 of the second embodiment differs from the first embodiment in that it encrypts image data in units smaller than one page, and stores the encrypted data for one page in one file. In the following, the same configurations and procedures as those of the first embodiment are denoted by the same reference numerals as those of the first embodiment, and description thereof will be omitted.
[0062] When FAX reception is started, the CPU 11 of the MFP 1 in the second embodiment executes FAX reception processing including partial reception processing shown in the flowchart of Fig. 8 instead of S212 to S216 of the FAX reception processing shown in Fig. 4. That is, the partial reception processing is executed following S211 of the FAX reception processing shown in Fig. 4. The procedure of the partial reception processing will be described with reference to the flowchart of Fig. 8. Note that the procedures other than the partial reception processing are the same as those of the FAX reception processing shown in Fig. 4, and therefore description thereof will be omitted.
[0063] After creating a file in S211 and making it writable, CPU 11 starts receiving image data (S401). Note that CPU 11 generates files on a page-by-page basis, as in the first embodiment. For example, when image data of the first page is received with FAX control number "1", CPU 11 generates a file with the file name "fax01_1". The first page is an example of a predetermined page.
[0064] Then, the CPU 11 judges whether the amount of data of the received image data has reached a predetermined size (S402). The predetermined size is a fixed data size determined in advance, and is an example of a predetermined unit. Note that the predetermined size in the second embodiment is a size smaller than one page.
[0065] When it is determined that image data of a predetermined size has not been received (S402: NO), CPU 11 determines whether data indicating the end of a page has been received (S403). When data indicating the end of a page has been received, CPU 11 can determine that one page of image data has been received. When it is determined that data indicating the end of a page has not been received (S403: NO), CPU 11 continues to receive image data until either the amount of received image data reaches a predetermined size or data indicating the end of a page is received.
[0066] When it is determined that image data of a predetermined size has been received (S402: YES), the CPU 11 encrypts the received image data of the predetermined size (S411). Then, the CPU 11 stores the encrypted data size and the encrypted image data in the file created in S211 (S412). For example, as shown in Fig. 9(A), the file "fax01_1" created in S211 of Fig. 4 stores the encrypted data size 411 and the encrypted image data 412. Note that in Fig. 9(A), the broken line indicates that the file is not complete.
[0067] Furthermore, the CPU 11 judges whether the processing of one page of image data is completed (S415). That is, the CPU 11 judges whether the data indicating the end of the page has been received. If it is judged that the processing of one page of image data is not completed (S415: NO), the CPU 11 continues to receive further image data and performs the judgments of S402 and S403.
[0068] Then, if it is determined that further image data of a predetermined size has been received (S402: YES), the CPU 11 encrypts the image data in the same manner (S411) and stores the image data in the same file as the first data (S412) (S412). As a result, in "fax01_1", for example, following the first data (411 and 412), the next encrypted data size 413 and encrypted image data 414 are stored, as shown in Fig. 9(B).
[0069] The image data encrypted in S411 for the first time is an example of preceding image data, and the image data encrypted in S411 for the second time is an example of succeeding image data. As shown in Fig. 9B, the encrypted data size 413 encrypted in S411 for the second time and the encrypted image data 414 are stored in the same file following the first data 411 and 412, so that the CPU 11 stores the second data in association with the first data.
[0070] When it is determined that reception of one page's worth of image data has been completed by receiving further image data (S403: YES), the CPU 11 acquires the data size of one page (S405). When data indicating the end of a page is received, the CPU 11 acquires the data size of one page before encryption, similar to S213 in FIG. 4. Then, the CPU 11 encrypts the image data up to the end of the page (S411). After receiving the previous image data of a predetermined size, if the image data up to the end of the page is received even if it is image data that does not reach the predetermined size, the CPU 11 encrypts the image data up to that point. The image data up to the end of the page is an example of page end image data. That is, in the second embodiment, the CPU 11 processes the image data by dividing it into pieces of a predetermined size, but when the end of the page is received, it processes it as one division even if it does not reach the predetermined size.
[0071] Then, CPU 11 adds and stores the data size after encrypting the image data up to the end of the page and the encrypted data in the same file, and closes the file. As a result, as shown in Fig. 9C, file 341 with the file name "fax01_1" (see Fig. 1) is completed, which is a file in which the first data 411, 412, the second data 413, 414, and the third data 415, 416 up to the end of the page are stored.
[0072] When it is determined that the processing of one page of image data has been completed (S415: YES), the CPU 11 ends the partial reception processing of FIG. 8, and proceeds to S217 of the FAX reception processing shown in FIG. 4. That is, the CPU 11 updates the page management table 33 and the FAX management table 32, and determines whether the FAX reception has been completed. In the second embodiment, one file also stores one page of encrypted data. Then, the file name of the file in which the one page of encrypted data is stored is stored in the page management table 33. The page management table 33, in which a record including the file name of each page is stored, is an example of second file name information.
[0073] Next, a procedure when a print instruction or a transfer instruction for received FAX data is received by an operation on the user IF 13 in the MFP 1 of the second embodiment will be described. When the CPU 11 of the MFP 1 of the second embodiment receives an output instruction for stored FAX data, the CPU 11 executes FAX data output processing including a partial output processing shown in the flowchart of FIG. 10 instead of S313 of the FAX data output processing shown in FIG. 7. That is, the partial output processing is executed following S312 of the FAX data output processing shown in FIG. 7. The procedure of the partial output processing will be described with reference to the flowchart of FIG. 10. Note that the procedures other than the partial output processing are the same as those of the FAX data output processing shown in FIG. 7, and therefore will not be described.
[0074] CPU 11 opens the file with the file name acquired in S311 of Fig. 7 (S501), and reads information stored at the beginning, which indicates the size of the first encrypted data (for example, data size 411 in Fig. 9) (S502). CPU 11 reads only the size of the data following S502 corresponding to the data size acquired in S502 (S503). The data read in S503 is, for example, encrypted image data 412 in Fig. 9, which is the data encrypted in S411 of Fig. 8. CPU 11 then decrypts the data read in S503, and writes it to the memory area secured in S312 of Fig. 7 (S504).
[0075] The CPU 11 judges whether or not all data stored in the file opened in S501 has been read (S511). For example, when the CPU 11 judges that the data size read in S502 is smaller than the data size of the encrypted image data of a predetermined size, or when the CPU 11 judges that the data size after decryption is smaller than the predetermined size in S504, the CPU 11 judges that all the file has been read.
[0076] If it is determined that data still remains (S511: NO), the CPU 11 proceeds to S502, where it further reads the data size, reads the encrypted data of the data size, and decrypts it.Then, the CPU 11 writes the decrypted data continuously in the memory area where the previous data was written in S504 (S504).
[0077] As shown in Fig. 9, each file stored in the second embodiment includes a plurality of encrypted data pieces obtained by dividing one page of image data into pieces of a predetermined size and encrypting each piece. Since each piece of encrypted data is stored consecutively together with its data size, the CPU 11 can obtain each piece of encrypted data in an appropriate order by simply reading the data in order from the beginning of the file. The file stored in the second embodiment includes an example of order information as its storage form.
[0078] If it is determined that all data of the file opened in S501 has been read (S511: YES), the CPU 11 proceeds to S321 in Fig. 7 to check the data size of the decrypted data. If the data sizes match, the CPU 11 performs printing or transfer.
[0079] As described above in detail, even the MFP1 of the second embodiment can store image data in a short time while ensuring the security of the image data when the image data starts to be received using the FAX protocol. In the second embodiment, the unit of image data to be encrypted is made smaller, so that the security is further improved compared to the first embodiment.
[0080] It should be noted that the present embodiment is merely an example and does not limit the present invention in any way. Therefore, the technology disclosed in this specification can be naturally improved and modified in various ways without departing from the scope of the present invention. For example, an example of an image forming device is not limited to an MFP, but can be any device that has at least a function of receiving image data and a function of storing image data, such as a device dedicated to FAX.
[0081] Also, for example, a job in which image data is received sequentially from the first page is not limited to a FAX job received by FAX protocol, but may be a stored print job in which printing is performed based on image data stored in memory 12. Also, for example, after MFP 1 accepts a print instruction or a transfer instruction and ends the process, it may or may not delete the image data that was the subject of printing or transfer. Also, for example, if MFP 1 has a sufficient display, it may be possible to display the decoded image data in addition to printing or transferring it.
[0082] In addition, in the first and second embodiments, examples have been shown in which the FAX management table 32 (see FIG. 5) and the page management table 33 (see FIG. 6) are stored as separate tables, but they may also be stored as a single piece of information that includes both pieces of information.
[0083] In the first and second embodiments, the FAX management number and the page management number are consecutive numbers so that the context of the image data of each page can be easily understood, but these are not limited to consecutive numbers. For example, the FAX management table 32 may include not only information indicating the first page (for example, the first page management number 323) but also information indicating the image data of each page and information indicating the order of the image data. The page management table 33 may include the FAX management number in association with the file name 333 of each page. The page management table 33 may include information indicating the order of each page other than the file name 333, and in that case, the file name 333 does not need to include the page management number. Even in this way, the MFP 1 can store the preceding image data and the following image data in association with each other.
[0084] Furthermore, the amount of data in a predetermined unit to be encrypted is not limited to one page (first embodiment) or a predetermined size smaller than one page (second embodiment), but may be multiple pages.
[0085] In addition, in any sequence diagram disclosed in the embodiments, the execution order of multiple processes in any multiple steps can be changed as desired or the processes can be executed in parallel as long as no contradiction occurs in the process content.
[0086] The processes disclosed in the embodiments may be executed by a single CPU, multiple CPUs, hardware such as ASIC, or a combination of these. The processes disclosed in the embodiments may be realized in various forms, such as a recording medium having a program for executing the processes recorded thereon, or a method. [Explanation of symbols]
[0087] 1 MFP 10 Controller 11 CPU 12. Memory 13 User Interface 14 Communication Interface 15 Printing Engine
Claims
1. A communication interface; A non-volatile memory; A controller; Equipped with a job including image data of multiple pages can be received sequentially from the first page via the communication interface; The controller: When a predetermined unit of the image data is received for the job that has started to be received, the image data is encrypted and stored in the non-volatile memory; When subsequent image data, which is the predetermined unit of image data subsequent to the preceding image data, which is the image data previously received, is received for the job for which reception has started, the received subsequent image data is encrypted, and the encrypted subsequent image data is stored in the non-volatile memory in association with the fact that it is subsequent to the preceding image data. The image forming apparatus is configured as follows.
2. 2. The image forming apparatus according to claim 1, A user interface; A print engine; Equipped with The controller: when a print instruction is received for one of the jobs received via the user interface, the encrypted preceding image data and the subsequent image data corresponding to the job that is the subject of the print instruction are read from the non-volatile memory and decrypted, and the printing engine is caused to perform printing based on the decrypted preceding image data, and following the printing based on the preceding image data, the printing engine is caused to perform printing based on the decrypted subsequent image data. The image forming apparatus is configured as follows.
3. 2. The image forming apparatus according to claim 1, A user interface is provided. The controller: when a transfer instruction is received for one of the jobs received via the user interface, the encrypted preceding image data and the subsequent image data corresponding to the job for which the transfer instruction is received are read from the non-volatile memory and decrypted, the decrypted preceding image data is transferred, and following the transfer of the preceding image data, the decrypted subsequent image data is transferred. The image forming apparatus is configured as follows.
4. 2. The image forming apparatus according to claim 1, The controller: When the image data of the predetermined unit is received for the job that has started receiving data by a FAX protocol, the image data is encrypted and stored in the non-volatile memory; When the subsequent image data following the preceding image data previously received is received for the job that has started receiving by a FAX protocol, the received subsequent image data is encrypted, and the encrypted subsequent image data is stored in the non-volatile memory in association with the fact that the subsequent image data follows the preceding image data. The image forming apparatus is configured as follows.
5. 2. The image forming apparatus according to claim 1, the predetermined unit is one page, The controller: When image data for one page is received as the predetermined unit for the job that has started to be received, the image data for the received one page is encrypted and stored in the non-volatile memory; When the subsequent image data of one page following the preceding image data previously received is received for the job for which reception has started, the received subsequent image data of one page is encrypted, and the encrypted subsequent image data is stored in the non-volatile memory in association with the fact that the subsequent image data follows the preceding image data. The image forming apparatus is configured as follows.
6. 6. The image forming apparatus according to claim 5, The controller: When image data for one page is received for the job for which reception has started, the method encrypts the received image data for one page, generates a file for storing the encrypted image data for one page, gives a file name to the generated file, and stores the file in the non-volatile memory; When the subsequent image data of one page subsequent to the preceding image data previously received is received for the job for which reception has started, the following process encrypts the received subsequent image data of one page, generates a separate file for storing the encrypted subsequent image data, which is a file different from the file for storing the preceding image data, gives a file name to the generated separate file, associates the file with the fact that it follows the preceding image data, and stores the file in the non-volatile memory; The association between the preceding image data and the succeeding image data includes a first file name which is a file name of a file storing the encrypted preceding image data, and a second file name which is a file name of a file storing the encrypted succeeding image data, and first file name information indicating that the second file name follows the first file name is stored in the non-volatile memory; The controller further comprises: When outputting one of the received jobs, the preceding image data is read and decoded using the first file name based on the first file name information, the subsequent image data is read and decoded using the second file name, an output is performed based on the decoded preceding image data, and following the output based on the preceding image data, an output is performed based on the decoded subsequent image data. The image forming apparatus is configured as follows.
7. 2. The image forming apparatus according to claim 1, the predetermined unit is a data amount of a predetermined size, The controller: When image data of a predetermined size is received as the predetermined unit for the job that has started to be received, the image data of the received predetermined size is encrypted and stored in the non-volatile memory; With regard to image data of a specified page of the job that has started to be received, when subsequent image data, which is image data of the specified size subsequent to the previously received preceding image data of the specified size, or page end image data, which is data up to the end of a page that is less than the specified size subsequent to the preceding image data of the specified size, is received, the subsequent image data of the specified size received or the page end image data that is less than the specified size is encrypted, and the encrypted subsequent image data or page end image data is stored in the non-volatile memory as image data of the specified page, associated with the fact that it is subsequent to the preceding image data. The image forming apparatus is configured as follows.
8. 8. The image forming apparatus according to claim 7, The controller: generating a file for each page of the job that has started to be received, giving a file name to each generated file and storing the file in the non-volatile memory, and further storing second file name information including the file name of each page in the non-volatile memory; When image data of the predetermined size of the image data of the predetermined page of the job that has started to be received is received, the image data of the received predetermined size is encrypted, and the encrypted image data is stored in the file corresponding to the predetermined page; With regard to image data of the specified page of the job that has started receiving, when subsequent image data of the specified size that follows the preceding image data of the specified size previously received or page end image data that does not reach the specified size is received, the received subsequent image data or page end image data is encrypted, and the encrypted subsequent image data or page end image data is associated with being subsequent to the preceding image data and stored in the file as image data of the specified page, In the association between the preceding image data and the succeeding image data, the encrypted succeeding image data or the page end image data is stored in the file in which the preceding image data is stored so as to follow the encrypted preceding image data; The controller further comprises: When outputting one of the received jobs, the file corresponding to each page of the job to be output is read using the file name included in the second file name information, and when the file corresponding to the specified page is read, the preceding image data and the succeeding image data or the end-of-page image data included in the read file are read and decoded, and an output is performed based on the decoded preceding image data, and following the output based on the preceding image data, an output is performed based on the decoded succeeding image data or the end-of-page image data. The image forming apparatus is configured as follows.
9. 2. The image forming apparatus according to claim 1, The controller: storing, for each of the jobs that have started to be received, management information that associates job identification information, image information indicating each of the encrypted image data, and order information indicating the order in which each of the encrypted image data is stored, in the non-volatile memory; When outputting one of the received jobs, reading out each image data indicated in the image information associated with the identification information of the job to be output in accordance with the ranking information, and decrypting and outputting the read image data. The image forming apparatus is configured as follows.
10. 10. The image forming apparatus according to claim 9, The controller: storing, for each of the jobs that have started receiving, in the non-volatile memory, the management information that associates the identification information, the image information indicating each of the encrypted image data, the order information indicating the storage order of each of the encrypted image data, and size information indicating the data size of each of the encrypted image data before encryption; When outputting one of the jobs based on the encrypted image data stored in the non-volatile memory, each image data indicated in the image information associated with the identification information of the job to be output is read out in accordance with the ranking information, and after reserving a memory area of the data size indicated in the size information associated with the target image data for each image data, the target image data is decrypted. The image forming apparatus is configured as follows.
11. 11. The image forming apparatus according to claim 10, The controller: After decoding the target image data, a size of the decoded target image data is compared with the data size indicated in the size information associated with the target image data, and if they match, the decoded target image data is output, and if they do not match, the decoded target image data is not output. The image forming apparatus is configured as follows.
12. 10. The image forming apparatus according to claim 9, the ranking information is information indicating a serial number that is incremented every time the encrypted image data is stored in the non-volatile memory; The controller: When outputting one of the received jobs, reading out each image data indicated in the image information associated with the identification information of the job to be output in the order of serial numbers indicated in the ranking information, and decoding and outputting the read image data. The image forming apparatus is configured as follows.
13. 13. The image forming apparatus according to claim 12, The controller: storing, for each of the jobs that have started receiving, in the non-volatile memory, the management information that associates the identification information, the image information indicating each encrypted image data, number information indicating the number of the encrypted image data, leading information indicating the serial number of the leading image data among the encrypted image data, and the order information indicating the serial number of the storage order of each encrypted image data; When outputting one of the received jobs, read out the image data of the number of pieces indicated in the number information from the image information corresponding to the serial number indicated in the leading information associated with the identification information of the job to be output, in the order of the serial numbers indicated in the ranking information, and decode and output the read out image data. The image forming apparatus is configured as follows.
Citation Information
Patent Citations
Image forming apparatus
JP2021121079A