A secure document printing system is provided. A policy server is used to define access rules for a document, and select individual users and/or groups that will have access to the document. The policy server stores the access rules along with a document decryption key. The policy server's name and address are packed in the document, and then encrypted and sent to a print server which stores it for later access. A recipient is notified that the document resides on a particular print server. The print server retrieves the specified document, contacts the policy server named in the document, and requests the document decryption key and access rules for the user, print server, and document from the policy server which replies with the related decryption key and access rules. The print server decrypts the document and prints the document based on the access rules.

Patent
   7367060
Priority
Dec 11 2002
Filed
Dec 11 2002
Issued
Apr 29 2008
Expiry
Nov 21 2024
Extension
711 days
Assg.orig
Entity
Large
21
14
all paid
1. A method comprising:
providing a policy server adapted to receive access rules for a document from a sending user, and to store the access rules and a decryption key for the document, wherein the access rules specify users or groups that may access and print all or part of the document;
providing document encryption means for encrypting the document, wherein the encryption means attaches the policy server's name, IP address, or URL address to the document;
receiving from the sending user a selection of a print server for receiving the encrypted document;
sending the encrypted document without the access rules to the selected print server, wherein the print server stores the document locally; and
providing notification means for notifying a receiving user of the existence of the document on the print server.
12. A system comprising:
a policy server adapted to receive access rules for a document from a sending user, and to store the access rules and a decryption key for the document, wherein the access rules specify users or groups that may access and print all or part of the document;
document encryption means for encrypting the document, wherein the encryption means attaches the policy server's name, IP address, or URL address to the document;
means for receiving from the sending user a selection of a print server for receiving the encrypted document;
means for sending the encrypted document without the access rules to the selected print server, wherein the selected print server stores the document locally; and
notification means for notifying a receiving user of the existence of the document on the selected print server.
2. The method of claim 1, wherein the receiving user logs onto the selected print server to print the document.
3. The method of claim 1, further comprising:
providing display means on the selected print server for displaying the documents accessible to the receiving user; and
wherein the receiving user has the option to name the specific document to be printed or to select the specific document to be printed from the documents displayed by the display means.
4. The method of claim 3, wherein the selected print server requests the access rules and the decryption key for the document from the policy server named in the document in response to the receiving user's print request.
5. The method of claim 4, wherein the policy server retrieves the document's access rules and the document's decryption key from local storage and sends them to the selected print server.
6. The method of claim 5, further comprising:
providing document decryption means on the selected print server for decrypting the document using the document's decryption key from the policy server;
providing access rule evaluation means on the selected print server for evaluating the access rules for the document in relation to the receiving user and the selected print server; and
wherein the access rule evaluation means sends the pages of the document that are printable by the receiving user from the selected print server to a printer for printing.
7. The method of claim 6, further comprising providing notification means for notifying the receiving user if the document is not printable.
8. The method of claim 1, wherein the access rules apply to any of: an individual user and a group of users.
9. The method of claim 1, wherein the access rules specify which print servers are allowed to print the document.
10. The method of claim 1, wherein the access rules define any of: an expiration date and a maximum number of prints.
11. The method of claim 1, wherein the access rules for the document are modifiable by the sending user through the life of the document.
13. The system of claim 12, wherein the receiving user logs onto the selected print server to print the document.
14. The system of claim 12, further comprising:
display means on the selected print server for displaying the documents accessible to the receiving user; and
wherein the receiving user has the option to name the specific document to be printed or to select the specific document to be printed from the documents displayed by the display means.
15. The system of claim 14, wherein the selected print server requests the access rules and the decryption key for the document from the policy server named in the document in response to the receiving the receiving user's print request.
16. The system of claim 15, wherein the policy server retrieves the document's access rules and the document's decryption key from local storage and sends them to the selected print server.
17. The system of claim 16, further comprising:
document decryption means on the selected print server for decrypting the document using the document's decryption key from the policy server;
access rule evaluation means on the selected print server for evaluating the access rules for the document in relation to the receiving user and the selected print server; and
wherein the access rule evaluation means sends the pages of the document that are printable by the receiving user from the selected print server to a printer for printing.
18. The system of claim 17, further comprising notification means for notifying the receiving user if the document is not printable.
19. The system of claim 12, wherein the access rules apply to any of: an individual user and a group of users.
20. The system of claim 12, wherein the access rules specify which print servers are allowed to print the document.
21. The system of claim 12, wherein the access rules define any of: an expiration date and a maximum number of prints.
22. The system of claim 12, wherein the access rules for the document are modifiable by the sending user through the life of the document.

1. Technical Field

The invention relates to the printing of documents in a computer environment. More particularly, the invention relates to the secure printing of documents in a networked printer environment.

2. Description of the Prior Art

Referring to FIG. 1, the way users print documents has remained fairly standard among the years. Not much has changed in the procedure of the user obtaining a document at a computer 101 and sending the document across a network or other type of connection 102 to a printer 103 for printing. The printer 103 prints the document which the user eventually retrieves.

With respect to FIG. 2, the user 201 also prints documents through a server 202, such as a document server or print server. When a document server 202 is used, the user 201 selects a document resident on the server 202 for printing. The server 202 connects to the printer 203 and sends the document to be printed to the printer 203 which prints the document.

A print server 202 acts as an intermediary between the user 201 and the printer 203. The print server 202 receives a document from the user 201, processes or rasterizes the document, and sends it to the printer 203. The printer 203 receives the processed or rasterized document and prints the document.

Printing documents in a secure environment has typically been performed using the document server approach. A user accesses a document on the document server and attempts to print it. The document server checks to see if the user has permission to print the document and, if the user does have permission, sends the document to the appropriate printer.

The document permission parameters used by the document server are set by the document creator or system administrator.

However, this approach requires that the document server send documents to a printer over an open network, leaving the server/printer connection insecure. Further, the document permission parameters are set for the entire document without any further granularity, e.g., on a per page basis.

It would be advantageous to provide a secure document printing system that provides for the secure transportation of documents throughout a network. It would further be advantageous to provide a secure document printing system that allows document creators to define access rules for a document on a per page basis.

The invention provides a secure document printing system. The system provides a secure document transport and storage mechanism in a computer network. In addition, the invention provides a system that allows document creators to define access rules for a document on a per page basis.

A preferred embodiment of the invention provides a secure transport and printing environment. A user creates a document using any application program. The invention provides a policy server that the user logs onto to define access rules for the document. The user selects individual users and/or groups that may have access to the document, defines access rules for each user or group, and specifies printing restrictions for the entire document or certain pages. Access rules that have been defined for the document are assembled by the policy server which stores them locally along with a document decryption key. The policy server is network accessible to allow the user to change the access rules for a document throughout the lifetime of the document.

The user's computer packages the policy server's name and address into the document and encrypts the document. The user selects a print server provided by the invention and sends the encrypted document to the print server which stores the encrypted document on its local storage for later access.

A receiving user is notified that the document resides on a particular print server via email, for example. When the receiving user wants to print the document, the receiving user logs onto the print server. The print server retrieves the specified document, contacts the policy server named in the document, and requests the document decryption key and access rules for the user, print server, and document from the policy server. The policy server sends the related decryption key and access rules to the print server.

The print server decrypts the document using the decryption key and then prints the document based on the document or page-level access rules by sending the printable pages to the printer. If the user or print server does not have the proper access rights to print the document, then the user will be notified that the document is not printable.

Another preferred embodiment of the invention provides the print server functionality in a user's networked computer.

Yet another preferred embodiment of the invention allows users to receive encrypted documents from other users. The receiving user sends a print request to one of the invention's print servers. The print server retrieves the encrypted document from the receiving user's computer and performs the functions described above.

FIG. 1 is a block schematic diagram showing a prior art approach of printing a document across a network according to the invention;

FIG. 2 is a block schematic diagram showing a prior art approach of printing a document through a print server according to the invention;

FIG. 3 is a block schematic diagram of a preferred embodiment of the invention using a policy server and a print server to perform secure document printing according to the invention;

FIG. 4 is a block schematic diagram of a preferred embodiment of the invention using a receiving user's computer and a policy server to perform secure document printing according to the invention;

FIG. 5 is a block schematic diagram of a preferred embodiment of the invention using a receiving user's computer, a policy server, and a print server to perform secure document printing according to the invention;

FIG. 6 is a block schematic diagram of a task viewpoint of a preferred embodiment of the invention showing the policy server and print server/receiving user's computer interactions according to the invention; and

FIG. 7 is a block schematic diagram of a task viewpoint of a preferred embodiment of the invention showing the interactions between a policy server, print server, and receiving user's computer according to the invention.

The invention is embodied in secure document printing system in a computer environment. A system according to the invention provides a secure document transport and storage mechanism in a computer network. In addition, the invention provides a system that allows document creators to define access rules for a document on a per page basis.

The invention provides a system that allows users to securely transmit documents to a printer and have full control over who can access and print the document at the printer. The document creator is given full control over the printing accessibility of each page in the document for groups and individual users.

Other approaches allow users to encrypt documents and send the encrypted documents to a printer. The printer decrypts the documents and prints the entire document. The invention offers a distinct advantage over the prior art by providing an encryption key and access rights external from the printer and independent from the transmission path of the actual encrypted file. This offers a more secure environment where a different encryption key can be used for each individual document. Additionally, the document creator has the ability to define access rights for the entire document as well as at the page level.

Referring to FIG. 3, a preferred embodiment of the invention is shown. A user produces a document on a computer 301. The document can be created using any application program. The user then logs onto the policy server 302 and designates the document to be a secure document. The user then selects individual users and/or groups that may have access to the document. Access rules are defined for each user or group that is given access to the document. The user specifies if there are printing restrictions to the entire document or certain pages. For example, if the user has a document that is 100 pages, he can give access to certain pages to certain users.

The policy server 302 assembles the access rules 306 that have been defined for the document and stores them on a local storage device along with a document decryption key. Access rules contain information such as: the user list (groups, individuals); the access rules for each entry in the user list, e.g., cannot print after Dec. 2, 2010, can only print two times, unlimited printing, etc.; and the scope of each rule, e.g., all of the document, specific page of document, range of pages of document. For example, document X has 100 pages, only page five is printable before Dec. 2, 2010 by user A and can only be printed two times. The policy server 302 is network accessible to allow the user to change the access rules for a document once it leaves the computer 301. The user logs onto the policy server 302 and changes the access rules for the document. The invention thereby allows the user to have control over the print access rules of the document for the lifetime of the document.

The user's computer 301 packages the policy server's name and address into the document and encrypts the document. The user selects the desired print server 303 and sends the encrypted document 307 to the print server 303. Print server 303 stores the encrypted document on its local storage for later access. The document can also be sent to the print server 303 on a one-time basis for printing.

A receiving user is notified that the document resides on a particular print server 303 via email, for example. When the receiving user wants to print the document, the receiving user logs onto the print server 303 through the print server's user interface 304. The print server 303 either lists the files that are resident on its local storage and allows the receiving user to select the desired document or has the receiving user type in the name of the document. If the print server does not have the document that the user is interested in, then it may be resident in another print server in the network.

The print server 303 retrieves the specified document and contacts the policy server 302 named in the document. The print server 303 requests the document decryption key and access rules for the user and document, e.g. using a document ID, from the policy server 302. The policy server 302 references the document, user, and print server 303 IDs to retrieve the decryption key and access rules for the document, and sends the related decryption key and access rules 308 to the print server 303.

The print server 303 receives the decryption key and access rules from the policy server 302. The document is decrypted by the print server 303 using the decryption key. It then prints the document based on the document or page-level access rules by sending the printable pages to the printer 305. If the user or print server 303 does not have the proper access rights to print the document, then the user is notified that the document is not printable.

With respect to FIG. 4, another embodiment of the invention provides a computer 403 that sits in front of a printer 405. The computer 403 accepts all encrypted documents 407 from document creators 401 destined for the printer 405. Printing software 404 stores the encrypted document on the computer's 403 local storage for later access.

A receiving user is notified that the document resides on a particular computer 403 via email, for example. When the receiving user wants to print the document, the receiving user logs onto the computer 403, accessing the printing software 404. The printing software 404 either lists the files that are resident on its local storage and allows the receiving user to select the desired document or has the receiving user type in the name of the document.

The printing software 404 retrieves the specified document and contacts the policy server 402 across the network, such as the Internet, using the IP address or URL contained in the document. The printing software 404 requests the decryption key and access rules for user and document, e.g. using a document ID, from the policy server 402. The policy server 402 references the document, user, and computer 403 IDs to retrieve the decryption key and access rules for the document, and sends the related decryption key and access rules 409 across the network 408 to the printing software 404.

The printing software 404 receives the decryption key and access rules from the policy server 402. The document is decrypted by the printing software 404 using the decryption key. The printing software 404 then prints the document based on the document or page-level access rule by sending the printable pages to the printer 405. If the user or computer 403 does not have the proper access rights to print the document, then the user is that the document is not printable.

This allows any printer to be used. The policy server 402 can keep track of which computers can print the document and it can also track which printer that the computer is connected to can print the document.

For example, an email with a document attached is sent to a user. The user accesses the email on his PC. The user clicks on the email attachment and indicates that he wants to print the document. The PC performs the print server functionality. All of the PC's print operations are changed to perform the decryption and access rule checks for any document.

Referring to FIG. 5, yet another preferred embodiment allows the originating user 501 to download an encrypted document 507 to a computer 504. The receiving user 504 then logs onto the print server 503 and tells the print server 503 that he wants to print a specific document. The print server 503 retrieves the encrypted document 509 from the computer 504 and contacts the policy server 502 named in the document. The print server 503 requests the decryption key and access rules for the user and document, e.g. using a document ID, from the policy server 502. The policy server 502 references the document, user, and print server 503 IDs to retrieve the decryption key and access rules for the document, and sends the related decryption key and access rules 508 to the print server 503.

The print server 503 receives the decryption key and access rules from the policy server 502. The document is decrypted by the print server 503 using the decryption key. It then prints the document based on the document or page-level access rule by sending the printable pages to the printer 505. If the user or print server 503 does not have the proper access rights to print the document, then the user is notified that the document is not printable.

This allows the invention to work in computer and printing systems anywhere in the world.

With respect to FIG. 6, a task viewpoint of a preferred embodiment the invention is shown. The user defines the access rules for a document through the Define Access Rules module 604. The Define Access Rules module 604 communicates with the Create Access Rules module 601 to create the access rules for the document. The user selects individual users and/or groups that may have access to the document. He defines access rules for each user or group that is given access to the document. The user also specifies if there are printing restrictions to the entire document or certain pages and, if desired, the print servers and/or computers that are allowed to perform the print process. The Create Access Rules module 601 stores the document's access rules in its local storage 602. The access rules for the document can always be modified by the user through the Define Access Rules module 604 and the Create Access Rules module 601 during the lifetime of the document.

When the user is ready to send the document to another computer or print server, the Deliver Document module 605 encrypts the document, inserts the policy server's name, IP address, or URL address into the document, and sends the package to the destination.

The Receive Encrypted Document module 606 receives encrypted documents and places them in local storage 607 for later access and printing. The receiving user accesses the documents stored on the computer or print server through the User Interface module 608. The receiving user logs into the User Interface module 608 which either displays all of the documents that are available to that user, allowing the user to select the desired document, or has the user enter the desired document's name. The Get Document Access Rules module 609 gathers the document ID from the local storage 607, print server or computer name or ID, and user name or ID and requests the access rules for the document from the Retrieve Access Rules module 603.

Access rules and the decryption key for the document are retrieved from local storage 602 by the Retrieve Access Rules module 603. The Retrieve Access Rules module 603 extracts the access rules for the receiving user and the print server or computer, e.g. a print server may not be in the group of print servers that are allowed to print the document, and sends the access rules and decryption key to the Get Document Access Rules module 609.

The access rules, decryption key, and document (from the local storage 607) are sent to the Print Document Pages module 610 by the Get Document Access Rules module 609. The Print Document Pages module 610 prints the document based on the document or page-level access rule by sending the printable pages to a printer. If the user or print server or computer does not have the proper access rights to print the document, then the user is notified that the document is not printable by the Print Document Pages module 610 through the User Interface module 608.

Referring to FIG. 7, a task viewpoint of another preferred embodiment of the invention with a remote computer as the encrypted document receiver is shown. The user defines the access rules for a document through the Define Access Rules module 704. The Define Access Rules module 704 communicates with the Create Access Rules module 701 to create the access rules for the document. The Create Access Rules module 701 stores the document's access rules in its local storage 702. As described above, the access rules for the document can always be modified by the user through the Define Access Rules module 704 and the Create Access Rules module 701 for the life of the document.

When the user is ready to send the document to another user, the Deliver Document module 705 encrypts the document, inserts the policy server's name, IP address, or URL address into the document, and sends the package to the destination.

The Receive Encrypted Document module 706 or the email program on the receiving user's computer receives encrypted documents and places them in local storage 707 for later access and printing. The receiving user accesses the documents stored on his computer and requests the printing of the document through the Print Request module 708. The Print Request module 708 may be accessible through the receiving user's email program. The Print Request module 708 sends the print request to the Get Document Access Rules module 709 on a print server.

The Get Document Access Rules module 709 retrieves the encrypted document and user name or ID from the Print Request module 708 and stores the encrypted document on local storage 711. It then gathers the document ID, print server name or ID, and user name or ID and requests the access rules for the document from the Retrieve Access Rules module 703.

Access rules and the decryption key for the document are retrieved from local storage 702 by the Retrieve Access Rules module 703. The Retrieve Access Rules module 703 extracts the access rules for the receiving user and the print server, e.g. a print server may not be in the group of print servers that are allowed to print the document, and sends the access rules and decryption key to the Get Document Access Rules module 709.

The access rules, decryption key, and document (from the local storage 711) are sent to the Print Document Pages module 710 by the Get Document Access Rules module 709. The Print Document Pages module 710 prints the document based on the document or page-level access rule by sending the printable pages to a printer. If the user or print server does not have the proper access rights to print the document, then the user is notified that the document is not printable by the Print Document Pages module 710 through the Print Request module 708.

Although the invention is described herein with reference to the preferred embodiment, one skilled in the art will readily appreciate that other applications may be substituted for those set forth herein without departing from the spirit and scope of the present invention. Accordingly, the invention should only be limited by the Claims included below.

Someshwar, Ravi

Patent Priority Assignee Title
11079991, Jun 25 2019 KYOCERA Document Solutions, Inc. Policy-based printing system and methods using a proxy device
11237777, Jun 25 2019 KYOCERA Document Solutions, Inc. Management of policy-based printing system using a proxy device
11403055, Jun 25 2019 KYOCERA Document Solutions, Inc. Policy-based printing system and methods using a proxy device
11544020, Jun 25 2019 KYOCERA Document Solutions, Inc. Management of policy-based printing system using a proxy device
7508939, Nov 19 2003 Canon Kabushiki Kaisha Image processing system and method for processing image data using the system
7660803, Sep 20 2004 S-PRINTING SOLUTION CO , LTD Policy-based management method and system for printing of extensible markup language (XML) documents
7716240, Dec 29 2005 NextLabs, Inc. Techniques and system to deploy policies intelligently
7930757, Oct 31 2003 Adobe Inc Offline access in a document control system
7995758, Nov 30 2004 Adobe Inc Family of encryption keys
8054482, Jun 28 2005 HEWLETT-PACKARD DEVELOPMENT COMPANY, L P Locality permission based printing
8108672, Oct 31 2003 Adobe Inc Transparent authentication process integration
8185548, Dec 29 2005 NextLabs, Inc. Techniques and system to deploy policies intelligently
8341755, Mar 02 2007 Oki Data Corporation Image forming apparatus
8456653, Dec 12 2005 Canon Kabushiki Kaisha Data processing apparatus for producing print job data whose authority is managed by external server, and image processing apparatus for printing a print job whose authority is managed by external server
8479301, Oct 31 2003 Adobe Inc Offline access in a document control system
8627077, Oct 31 2003 Adobe Inc Transparent authentication process integration
8627489, Oct 31 2003 Adobe Inc Distributed document version control
8832047, Jul 27 2005 Adobe Inc Distributed document version control
8988713, Jun 28 2012 GOOGLE LLC Secure printing in a cloud-based print system
9007616, Dec 12 2005 Canon Kabushiki Kaisha Printing apparatus which restricts printing of print job data
9531595, Dec 29 2005 NextLabs, Inc. Intelligent policy deployment
Patent Priority Assignee Title
6314521, Nov 26 1997 International Business Machines Corporation Secure configuration of a digital certificate for a printer or other network device
6378070, Jan 09 1998 HEWLETT-PACKARD DEVELOPMENT COMPANY, L P Secure printing
6675212, Jun 12 2000 Gateway, Inc. Method and apparatus for efficient data browsing
6886028, Jul 31 1998 Canon Kabushiki Kaisha Information processing apparatus, information processing method, and computer-readable program storage medium
6934693, Nov 23 1994 ContentGuard Holdings, Inc. System for controlling the distribution and use of digital works
7180621, Feb 13 2002 HEWLETT-PACKARD DEVELOPMENT COMPANY, L P Method and apparatus for authorizing printing
20020007456,
20020042884,
20020154558,
20020169002,
20020186398,
20030009672,
20030079134,
20050273852,
/////////
Executed onAssignorAssigneeConveyanceFrameReelDoc
Dec 11 2002SOMESHWAR, RAVIElectronics for Imaging, IncASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS 0135790490 pdf
Jul 18 2003SOMESHWAR, RAVIElectronics for Imaging, IncASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS 0145070051 pdf
Jan 02 2019Electronics for Imaging, IncCITIBANK, N A , AS ADMINISTRATIVE AGENTGRANT OF SECURITY INTEREST IN PATENTS0480020135 pdf
Jul 23 2019Electronics for Imaging, IncROYAL BANK OF CANADASECURITY INTEREST SEE DOCUMENT FOR DETAILS 0498400799 pdf
Jul 23 2019Electronics for Imaging, IncDEUTSCHE BANK TRUST COMPANY AMERICASSECOND LIEN SECURITY INTEREST IN PATENT RIGHTS0498410115 pdf
Jul 23 2019CITIBANK, N A , AS ADMINISTRATIVE AGENTElectronics for Imaging, IncRELEASE OF SECURITY INTEREST IN PATENTS0498400316 pdf
Mar 07 2024DEUTSCHE BANK TRUST COMPANY AMERICAS, AS AGENTElectronics for Imaging, IncRELEASE BY SECURED PARTY SEE DOCUMENT FOR DETAILS 0667930001 pdf
Mar 12 2024Electronics for Imaging, IncCERBERUS BUSINESS FINANCE AGENCY, LLCSECURITY INTEREST SEE DOCUMENT FOR DETAILS 0667940315 pdf
Mar 12 2024FIERY, LLCCERBERUS BUSINESS FINANCE AGENCY, LLCSECURITY INTEREST SEE DOCUMENT FOR DETAILS 0667940315 pdf
Date Maintenance Fee Events
Jun 02 2008ASPN: Payor Number Assigned.
Jun 02 2008RMPN: Payer Number De-assigned.
Sep 14 2011M1551: Payment of Maintenance Fee, 4th Year, Large Entity.
Oct 14 2015M1552: Payment of Maintenance Fee, 8th Year, Large Entity.
Oct 17 2019M1553: Payment of Maintenance Fee, 12th Year, Large Entity.


Date Maintenance Schedule
Apr 29 20114 years fee payment window open
Oct 29 20116 months grace period start (w surcharge)
Apr 29 2012patent expiry (for year 4)
Apr 29 20142 years to revive unintentionally abandoned end. (for year 4)
Apr 29 20158 years fee payment window open
Oct 29 20156 months grace period start (w surcharge)
Apr 29 2016patent expiry (for year 8)
Apr 29 20182 years to revive unintentionally abandoned end. (for year 8)
Apr 29 201912 years fee payment window open
Oct 29 20196 months grace period start (w surcharge)
Apr 29 2020patent expiry (for year 12)
Apr 29 20222 years to revive unintentionally abandoned end. (for year 12)