Systems and methods for protecting content when using a general purpose user interface application
09728107 · 2017-08-08
Assignee
Inventors
Cpc classification
G06F21/10
PHYSICS
G07B2017/00064
PHYSICS
International classification
Abstract
Systems and methods which prevent or limit access to protected content (e.g., value bearing indicia (VBI)) by a general purpose user interface application (e.g., web browser) are shown. Embodiments implement techniques to avoid displaying protected content by a general purpose user interface application, or displaying protected content during a time in which a user does not have access to particular functions of the general purpose user interface application, to protect the content from various operations, such as repeated printing, electronic copying, etc. Data presentation formatting control in the form of style sheets may be utilized to control access to content. Additionally or alternatively, executable code or an executable object may be implemented within a page or other content to control access to content. Similarly, separate areas, such as windows or pages, may be utilized to control access to content.
Claims
1. A method comprising: obtaining content at a general purpose user interface application that comprises a web browser application, said content including unprotected content and executable code for accessing protected content that comprises at least one value bearing indicium; outputting said unprotected content to the web browser application; and in response to a print command received via the web browser application: initiating said executable code to obtain said protected content from a remote server; replacing, within the web browser application, said unprotected content with said protected content; outputting, immediately after said replacing, said protected content from the web browser application to a print medium; and immediately after the outputting said protected content to said print medium, replacing, within the web browser application, said protected content with said unprotected content, wherein said web browser application is configured to output said unprotected content to said print medium in response to a subsequent print command received via the web browser application, said subsequent print command corresponding to a command to print the protected content.
2. The method of claim 1, wherein said unprotected content comprises a web page and said executable code comprises a software button operable to obtain and output said protected content.
3. The method of claim 1, wherein said initiating said executable code comprises: replacing a source of at least a portion of said unprotected content with a source of said protected content to thereby obtain said protected content.
4. The method of claim 3, wherein said source of said at least a portion of said unprotected content comprises a uniform resource locator associated with said at least a portion of said unprotected content, and wherein said source of said protected content comprises a uniform resource locator associated with said protected content.
5. The method of claim 1, wherein said protected content is only available within said web browser application until said protected content is output to said print medium, and wherein other functionality of said web browser application is not available during said outputting.
6. The method of claim 5, wherein said protected content is displayed within said web browser application in response to said replacing, within said web browser application, said unprotected content with said protected content, and wherein said unprotected content is displayed within said web browser application in response to said replacing, within said web browser application, said protected content with said unprotected content.
7. The method of claim 6, wherein a duration in which said protected content is displayed within said web browser application corresponds to an amount of time to output said protected content to said print medium.
8. The method of claim 1, wherein said executable code is configured to execute a native print functionality of said web browser application to output said protected content from said web browser application to said print medium.
9. The method of claim 1, further comprising bypassing firewalls and popup blocking applications via said replacing said unprotected content with said protected content and said replacing said protected content with said unprotected content.
10. A computer program product having computer executable code stored on a computer readable storage device, said computer program product comprising: code for providing unprotected content to a general purpose user interface application that comprises a web browser application; code for outputting said unprotected content to the web browser application for presentation on a display device; code for obtaining protected content Mat comprises at least one value bearing indicium from a content server in response to a command received by said general purpose user interface application; code for replacing, within the web browser application, said unprotected content with said protected content; code for outputting said protected content from the web browser application to a printer device immediately after said replacing; and code for replacing, within the web browser application, said protected content with said unprotected content immediately after said outputting said protected content to said printer device, wherein said content server is configured to provide said unprotected content to the web browser application in response to subsequent commands received by said general purpose user interface application.
11. The computer program product of claim 10, wherein said code for obtaining said protected content comprises code for replacing a source of at least a portion of said unprotected content with a source of said protected content to thereby obtain said protected content at said general purpose user interface application, and wherein said code for replacing said protected content with said unprotected content comprises code for replacing said source of said protected content with said source of said at least a portion of said unprotected content.
12. The computer program product of claim 10, wherein said protected content is only available within said web browser application until said protected content is output to said printer device, and wherein other functionality of said web browser application is not available during said outputting.
13. The computer program product of claim 12, wherein said code for replacing said unprotected content, within said web browser application, with said protected content further comprises code fur displaying said protected content, within said web browser application, in response to said replacing, said unprotected content with said protected content, and wherein said code for replacing said protected content, within said web browser application, with said unprotected content further comprises code for displaying said unprotected content, within said web browser application, in response to said replacing, said protected content with said unprotected content.
14. The computer program product of claim 13, wherein a duration in which said protected content is displayed within said web browser application corresponds to an amount of time to output said protected content to said printer device after said protected content is obtained and used to replace said unprotected content within said web browser application.
15. The computer program product of claim 10, wherein said code for outputting said protected content to said printer device is configured to execute a native print functionality of said web browser application to output said protected content from said web browser application to said printer device.
16. The computer program product of claim 10, wherein execution of said code for obtaining said protected content, said code for replacing said unprotected content with said protected content, and said code for outputting said protected content to said printer device is configured to bypass firewalls and popup blocking applications of said web browser application.
17. A method comprising: obtaining content at a general purpose user interface application that comprises a web browser application, said content including unprotected content and executable code for accessing protected content that comprises at least one value bearing indicium; outputting said unprotected content to the web browser application; and in response to a print command received via the web browser application, initiating said executable code to obtain said protected content from a remote server, wherein said initiating said executable code comprises: replacing a source of at least a portion of said unprotected content with a source of said protected content; retrieving said protected content from said remote server using stud source of said protected content; replacing, within said web browser application, said unprotected content with said protected content; outputting, immediately after said replacing, said protected content to a print medium; and immediately after the outputting said protected content to said print medium, replacing, within said web browser application, said protected content with said unprotected content, wherein said executable code is configured to output said unprotected content to said print medium in response to subsequent print commands received via the web browser application, said subsequent print commands corresponding to commands to print said protected content.
18. The method of claim 17, wherein said protected content is only available within said web browser application until said protected content is output to said print medium, and wherein other functionality of said web browser application is not available during said outputting.
19. The method of claim 18, wherein said protected content is displayed within said web browser application in response to said replacing, within said web browser application, said unprotected content with said protected content, and wherein said unprotected content is displayed within said web browser application in response to said replacing, within said web browser application, said protected content with said unprotected content.
20. The method of claim 19, wherein a duration in which said protected content is displayed within said web browser application corresponds to an amount of time to output said protected content to said print medium.
21. The method of claim 17, wherein said executable code is configured to execute a native print functionality of said web browser application to output said protected content from said web browser application to said print medium.
22. The method of claim 17, further comprising bypassing firewalls and popup blocking applications via said replacing said unprotected content with said protected content and said replacing said protected content with said unprotected content.
Description
BRIEF DESCRIPTION OF THE DRAWING
(1) For a more complete understanding of the present invention, reference is now made to the following descriptions taken in conjunction with the accompanying drawing, in which:
(2)
(3)
DETAILED DESCRIPTION OF THE INVENTION
(4) Directing attention to
(5) Network 150 provides information communication between content server 120 and user terminal 110. Network 150 of embodiments may comprise the Internet, an intranet, an extranet, a local area network (LAN), a metropolitan area network (MAN), a wide area network (WAN), the public switched telephone network (PSTN), a wireless network, a cable transmission system, a satellite communication network, and/or the like. According to preferred embodiments multiple users operating respective user terminals may access and obtain content from content server 120.
(6) Content server 120 preferably comprises a processor-based system, such as a computer having a central processing unit (CPU), memory, and appropriate input/output (I/O) devices and interfaces, operable under control of an instruction set defining operation as described herein. For example, content server 120 may comprise server platform 121 having a processor from the PENTIUM family of processors available from Intel Corporation, Santa Clara, Calif. Content server 120 provides storage and controlled access to various content. Accordingly, content server 120 of the illustrated embodiment comprises database 122, and/or is in communication with database 132, storing content therein.
(7) User terminal 110 preferably comprises a processor-based system, such as computers having a CPU, memory, and appropriate I/O devices and interfaces, operable under control of instruction sets defining operation as described herein. For example, user terminal 110 may comprise computer platform 111 having a processor from the PENTIUM family of processors available from Intel Corporation, Santa Clara, Calif. User terminal 110 preferably provides output of content, protected according to embodiments of the invention, in various media under control of a general purpose user interface application (e.g., web browser, network browser, etc.). Accordingly, the illustrated embodiments of user terminal 110 includes display 112 (e.g., a cathode ray tube (CRT), liquid crystal display (LCD), plasma screen, etc.) for outputting content in a transient medium and printer 113 (e.g., an ink jet printer, a laser printer, a thermal transfer printer, a label printer, an envelope printer, etc.) for outputting content in a printed medium.
(8) Embodiments of the present invention will be described herein with reference to protected content in the form of value bearing indicia (VBI), such as may be used with respect to postage metering applications, in order to provide examples for facilitating an understanding of the concepts of the present invention. Accordingly, content server 120 of embodiments described below may comprise a remote postage server wherein a web browser of user terminal 110 interacts with content server 120 for generating and printing postage indicia (e.g., information based indicia (IBI) utilized by the United States Postal Service (USPS)). Of course, other forms of content may be provided protection according to embodiments of the invention. For example, content provided by online reference material sites, such as SAFARI, BOOKS ONLINE, NEW YORK TIMES archives, etc., may be provided protection according to embodiments of the invention, such as to provide a print of a full chapter or article for a fee while making only excerpts available for viewing online. Likewise, different forms of general purpose user interface applications may be used according to embodiments of the present invention. Moreover, although examples are described herein with reference to protecting content for printing operations, protection of content using the concepts of the present invention may be applied to various activities and functions, such as to provide protection with respect to forwarding content from one user terminal to another user terminal.
(9) According to embodiments of the invention, data presentation formatting control in the form of style sheets is utilized with respect to content provided to web browser 210 (
(10) Using style sheet based formatting control, such as is available using cascading style sheet (CSS) formatting, content provided to web browser 210 of embodiments of the invention is marked to apply to various input/output (I/O) devices. For example, using CSS formatting unprotected content 211, including sample VBI 241 and other content not provided protection according to the present invention, is marked to apply only to the display while protected content 212, including actual VBI 242 and other content provided protection according to the present invention, is marked to apply only to the printer. Therefore, although content 211 and 212 may be provided to web browser 210 in a same web page, only unprotected content 211 is displayed on monitor 112 (shown as displayed content 221). Moreover, although a user views sample VBI 241 (which is not a valid VBI for use as a postage meter indicia) on display 112, actual VBI 242 of protected content 212 is printed by printer 113 (shown as printed envelope 231).
(11) According to embodiments, two style sheets may be utilized to provide the foregoing protection to content. A first such style sheet may be applicable with respect to unprotected content 211 to provide for the display of sample VBI 241, wherein actual VBI 242 and other protected content is marked as hidden in this style sheet. A second such style sheet may be applicable with respect to protected content 212 to provide for printing of actual VBI 242, wherein sample VBI 241 and other content not to be printed is marked as hidden in this style sheet. Accordingly, when a user invokes the web browser native print function (e.g., F
(12) It should be appreciated that content in addition to content for which protection according to the present invention is desired may be included with respect to output provided by the aforementioned second style sheet. For example, it may be desired to print unprotected content, such as address information, in association with a VBI. Such unprotected content may therefore be included as content applying to the printer output in the second style sheet. Content included for output by the various style sheets utilized according to the present invention may overlap. For example, the aforementioned address information may be identified for output to monitor 112 in the first style sheet and identified for output to printer 113 in the second style sheet, if desired.
(13) Embodiments of the invention implement executable code or an executable object within a web page provided to web browser 210 to control access to content. According to an embodiment, client-side scripting language, such as JAVASCRIPT available from Sun Microsystems, is used with respect to web page content provided to web browser 210 in order to replace particular content upon printing. For example, a web page (shown as displayed content 221) may be built to contain sample VBI 241, without actual VBI 242. If the user utilizes native web browser print control (e.g., F
(14) According to a preferred embodiment, printing functionality of web browser 210 is invoked immediately upon protected content 212 being provided to web browser 210. For example, executable code 243 of a preferred embodiment invokes native print functionality of web browser 210 immediately after providing the URL identifying actual VBI 242 to web browser 210, thereby causing actual VBI 242 to be printed. After the print operation, executable code 243 preferably deletes or otherwise removes the URL identifying actual VBI 242 to web browser 210, perhaps restoring the URL of sample VBI 241, to thereby once again make actual VBI 242 unavailable to web browser 210.
(15) The foregoing exemplary executable code results in a brief display of protected content in displayed content 221 during the printing operation. However, because other functions of web browser 210 are typically not available during such a print operation, the user is prevented from interacting in any way with actual VBI 242 during the brief period in which it is displayed. Moreover, actual VBI 242 is only provided to web browser 210 during the printing operation, thereby further providing protection with respect to this protected content. Because a source of the content is changed, rather than opening a new area, this embodiment is unlikely to experience issues with respect to firewalls and popup blocking applications.
(16) Separate areas (e.g., windows or pages) are utilized with respect to web browser 210 to control access to content according to embodiments of the invention. A web page may be built to contain unprotected content 211, which includes sample VBI 241 without actual VBI 242, for display as displayed content 221. If the user utilizes native print control functionality of web browser 210 (e.g., the F
(17) The foregoing new area results in a brief display of protected content during the printing operation. However, because other functions of web browser 210 are typically not available during such a print operation, the user is prevented from interacting in any way with actual VBI 242 during the brief period in which it is displayed. In addition to actual VBI 242 only being provided to web browser 210 during the printing operation, client/server interaction for serving up the new area is preferably invoked, thereby facilitating a higher level of monitoring and/or control by content server 120 with respect to the protected content.
(18) It should be appreciated that various techniques for protecting content may be used in combination according to embodiments of the invention. For example, style sheet based formatting control may be used in combination with executable code and/or the use of separate areas (e.g., windows or pages) in an embodiment wherein protected content is provided to the general purpose user interface application only when particular functionality is available (e.g., during a print operation), and even then operating to hide the protected content from particular media (e.g., providing the protected content for printing but not display).
(19) The foregoing embodiments operate to provide protection to content from access, copying, manipulation, etc. by a user of the general purpose user interface application. However, a user may still attempt to perform multiple actions (e.g., printing) with respect to protected content using functionality of the general purpose user interface application and/or executable code or links provided according to embodiments of the invention. Accordingly, control techniques in addition to those associated with the client-side may be implemented in providing protection of content according to embodiments of the invention. For example, a combination of client-side techniques and server-side techniques may be utilized in restricting activity with respect to protected content, such as to limit printing of the protected content to one-time only. According to embodiments of the invention, when a button or link is selected within web browser 210 for printing actual VBI 242 (e.g., executable code 243 is initiated), access to database 122 and/or 132 to either source actual VBI 242 or open a new area including actual VBI 242 will be monitored by content server 120. According to preferred embodiments, subsequent attempts to obtain actual VBI 242 through repeated initiation of the aforementioned button or link will provide sample VBI 241 instead of VBI 242. Embodiments may allow subsequent access to actual VBI 242 in limited circumstances, such as where a misprint has occurred.
(20) Using the foregoing techniques, general purpose user interface applications, such as web browsers in wide use today, may be utilized to access and process content, such as VBI used in postage metering applications, for which protection from unfettered copying, printing, etc. is desired. Although it may still be possible to gain access to content provided to general purpose user interface applications according to embodiments of the present invention, typical users will be prevented from readily accessing such content. Moreover, such users will be prevented from unwittingly or accidentally misusing such content, such as through accidental reprinting or copying the content without realizing that such copying is forbidden. Other mechanisms may be relied upon to prevent users determined to misuse such protected content from such misuse. For example, IBI utilized by the USPS facilitates validation of individual postage indicia, and thus may be used to prevent fraud with respect to VBI. However, such validation is typically done during after mail items have entered the mail processing stream. Although identifying invalid postage indicia, it may not be possible to identify the perpetrator or even the reason for the fraud. Accordingly, protection of content as provided herein, used in conjunction with such other protection mechanisms, provides valuable protection with respect to such content in addition to facilitating the use of general purpose user interface applications with respect to such content.
(21) Embodiments of the present invention, or portions thereof, may be embodied in program or code segments operable upon a processor-based system (e.g., user terminal 110 and/or content server 120) for performing functions and operation as described herein. The program or code segments making up the various embodiments of the present invention may be stored in a computer-readable medium, which may comprise any suitable medium for temporarily or permanently storing such code. Examples of the computer-readable medium include such physical computer-readable media as an electronic memory circuit, a semiconductor memory device, random access memory (RAM), read only memory (ROM), erasable ROM (FROM), flash memory, a magnetic storage device (e.g., floppy diskette), optical storage device (e.g., compact disk (CD), digital versatile disk (DVD), etc.), a hard disk, and the like.
(22) Although the present invention and its advantages have been described in detail, it should be understood that various changes, substitutions and alterations can be made herein without departing from the spirit and scope of the invention as defined by the appended claims. Moreover, the scope of the present application is not intended to be limited to the particular embodiments of the process, machine, manufacture, composition of matter, means, methods and steps described in the specification. As one of ordinary skill in the art will readily appreciate from the disclosure of the present invention, processes, machines, manufacture, compositions of matter, means, methods, or steps, presently existing or later to be developed that perform substantially the same function or achieve substantially the same result as the corresponding embodiments described herein may be utilized according to the present invention. Accordingly, the appended claims are intended to include within their scope such processes, machines, manufacture, compositions of matter, means, methods, or steps.