The present invention relates generally to electronic documents and a system and method to maintain their confidentiality.
Modern businesses use electronic documents and email to efficiently conduct business. The problem this that electronic documents are easily sent anywhere in the world and once sent, the owner cannot track where the document goes or to whom it is sent. The document(s) could contain trade secrets or proprietary data and be sent to a competitor. Or, electronic documents can be taken from a business, person, government entity or other without their knowledge and identifying the theft would be very difficult to discover. By using the Electronic Document Tracking System, an owner of an electronic document can have a good probability of knowing where the document is in the virtual world of computers, who is accessing it and when.
Electronic documents can contain sensitive information including trade secrets, client lists, etc. This kind of information is imperative to the profitability and functioning of companies, governments, etc. To date, there is no way to automatically track when and where (a/k/a by whom) your documents were accessed. The Electronic Document Tracking System is a system that overcomes that void in modern technology.
While most word processors, and other programs, have a mechanism to password protect the document, and encryption software does exist, these implementations are cumbersome and sometimes require third-party software. The “electronic document tracking system” incorporates an encryption mechanism to provide a secure document and ensure that the document is tracked. Furthermore, the encryption mechanism will not require third-party software or passwords that are easily lost. Instead, the encryption mechanism will work off a list of IP addresses (or other hardware addresses that is computer specific) that are considered “secure” to the document owner.
The method and system include embedding, in the electronic document, an electronic program, script or macro that encrypts the document and contacts the document owner's company, or a third party entity, upon accessing the electronic document.
Upon opening the electronic document, the embedded program, script or macro will contact the owner via electronic messaging. The contact may be via the Internet whereby the embedded program, script or macro containing a specific encrypted document tracking number (i.e. placement of a VBA script in Microsoft documents) can do an HTML call via a “get” statement to the owners web site where the “get” statement requests the IP address (or other unique address specific to the computer) of the machine on which the electronic document currently exists and the unencrypted unique document number (this would result in an error in the web servers web logs leaving behind the IP address of the computer accessing the document and the unique unencrypted document tracking number.). This method will provide a web log with the details of when and where the electronic document lies in cyberspace and who is accessing it.
Another method is to setup a server and assign it a specific port (socket server or SOAP server) that accepts data via the Internet. Once the program, script or macro verifies the IP address of the computer accessing the electronic document against the “approved IP address list,” the program will send a message to the sever including the IP address (or other hardware addresses that is computer specific) of the computer where the document is located in Cyberspace and the electronic document tracking number.
Once the encrypted electronic document has contacted the “server” the server will verify the data passed against its database and pass back a number that is associated with the document number to be utilized with the “one page encryption” software [as a matter of background, one page encryption was used by the Russians after WW2. While the One-Page encryption algorithm is noted here, any encryption algorithm may be used]. Once the electronic document has received the One Page encryption number, the document will self-decrypt and be accessible to the end-user. Utilization of this method will be transformative as it will change the file from an unusable file to a file that may be used and manipulated.
The point of incorporating encryption software with a tracking system is to ensure the tracking. That is, if a person simply opened the document on a machine that is not connected to the Internet, they could simple bypass the Internet Tracking Feature. By having the One-Page encryption number given by the server, the device has built-in a guarantee that the electronic document must contact the Tracking Server otherwise the document will not decrypt. The encryption also acts as additional layer of document security.
Another implementation of this methodology is for the company that develops the software to develop its own database that is accessible via the Internet. Then, the software company would contract, for a fee, with the clients and all of the documents would contact the software company's database and the software company would be responsible for tracking access to the documents and providing access information to the electronic document owner. The implementation of the software company's database would simply be a scalable version of the web site or unique port implementation used by the owner's of the electronic documents.
To embed the tracking program/script/macro, and the electronic document tracking number, into the electronic document the user would use a program that allows the user to navigate his or her computer to select the document they want protected. Once identified, the program would insert the embedded program/script/macro and unique encrypted document-tracking number into the electronic document; by doing this the document is transformed into a smart document. An example of such an implementation would be embedding a VBA script into Microsoft Documents. The program, script or macro could be configured to contact the owner's web site or the server (Socket or SOAP server) that the owner implemented at their entity (i.e. business, government, etc.).
Prior to the “navigating program” inserting the program/script/macro into the electronic document, the “navigation program” would create an entry in the owner's database that links the documents name and where it was to be used/sent, with a unique identifier number and a One-Page encryption number that is associated with the document or owner. Additionally, the document owner will be prompted for “activation” and “deactivations” dates. These dates are the dates when the document will begin to send data back to the owner or stop sending data back to the owner. After all, the electronic document might be time sensitive and the owner may not want the reporting, or access of the document, after one (1) year.
Another possible implementation of inserting the code into the document is by manipulating the “templates” used by the various software programs. Microsoft, WordPerfect and others use templates when starting new documents. By inserting the encryption and tracking code needed into these templates, the system has automated the process of inserting the code into the document.
This same methodology and apparatus may be used in conjunction with marketing. As electronic marketing grows, this system may be used to track how many people read a particular piece of electronic marketing literature. Based on the number of readers, the advertiser will know how effective the marketing campaign is. Also, royalties and other incentive marketing reimbursement mechanisms may be based on the “number of hits” produced by any one electronic marketing piece much like current reimbursement schemes for the Internet's “pay per click” web page referral agreements.
If the implementation of the tracking system uses the socket or SOAP server method of tracking, the interaction with the document may be extended. Because the electronic document can pass a message over the Internet, it can either expect or not expect a reply message. Such an implementation may be used to approve or deny access to the document being viewed; or the document may be given privileges via the server (socket or SOAP server) to disallow printing of the document or other the document may be instructed to self-delete. While the document may not delete or copies, the implementation will cause a greater level of security for the document.
Programs like Microsoft Word and WordPerfect have password protection but passwords can be shared and there are programs that break password protection. To add an additional layer of protection and ensure tracking, The Electronic Document Tracking System will encrypt the electronic document. Upon accessing the document, the program, script or macro (i.e. a Microsoft Word VBA script) would check the IP addresses in the “allowed to access list” and compare them to the IP address (or other hardware addresses that is computer specific) of the computer accessing the document. If they match, the program, script or macro would contact the server (SOAP or socket server) for the One-Page encryption number and decrypt the document.
The people with whom electronic documents are most commonly shared will know the end user's IP address (or other hardware addresses that is computer specific). In the event they do not, a small program, or a program executed from an Internet web page, is given to the end user. The purpose of this program is to determine the IP address of the computer that will be receiving the document. This ensures that the IP address being used in the embedded code is correct.
A document will be set with a document deletion date. When the date occurs, the document will delete itself rendering it non-usable.
Although not required, the invention can be implemented via an application programming interface (API), for use by a developer or tester, and/or included within the network browsing software which will be described in the general context of computer-executable instructions, such as program modules, being executed by one or more computers (e.g., client workstations, servers, or other devices). Generally, program modules include routines, programs, objects, components, data structures and the like that perform particular tasks or implement particular abstract data types. Typically, the functionality of the program modules may be combined or distributed as desired in various embodiments. Moreover, those skilled in the art will appreciate that the invention may be practiced with other computer system configurations. Other well known computing systems, environments, and/or configurations that may be suitable for use with the invention include, but are not limited to, personal computers (PCs), server computers, hand-held or laptop devices, multi-processor systems, microprocessor-based systems, programmable consumer electronics, network PCs, minicomputers, mainframe computers, and the like. An embodiment of the invention may also be practiced in distributed computing environments where tasks are performed by remote processing devices that are linked through a communications network or other data transmission medium. In a distributed computing environment, program modules may be located in both local and remote computer storage media including memory storage devices.
With reference to
The computer 110 typically includes a variety of computer readable media. Computer readable media can be any available media that can be accessed by the computer 110 and includes volatile and nonvolatile, removable and non-removable media. By way of example, and not limitation, computer readable media may comprise computer storage media and communication media. Computer storage media includes volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data. Computer storage media includes, but is not limited to, random access memory (RAM), read-only memory (ROM), Electrically-Erasable Programmable Read-Only Memory (EEPROM), flash memory or other memory technology, compact disc read-only memory (CDROM), digital versatile disks (DVD) or other optical disk storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the desired information and which can be accessed by the computer 110. Communication media typically embodies computer readable instructions, data structures, program modules or other data in a modulated data signal such as a carrier wave or other transport mechanism and includes any information delivery media. The term “modulated data signal” means a signal that has one or more of its characteristics set or changed in such a manner as to encode information in the signal. By way of example, and not limitation, communication media includes wired media such as a wired network or direct-wired connection, and wireless media such as acoustic, radio frequency (RF), infrared, and other wireless media. Combinations of any of the above should also be included within the scope of computer readable media.
The system memory 130 includes computer storage media in the form of volatile and/or nonvolatile memory such as ROM 131 and RAM 132. A basic input/output system 133 (BIOS), containing the basic routines that help to transfer information between elements within computer 110, such as during start-up, is typically stored in ROM 131. RAM 132 typically contains data and/or program modules that are immediately accessible to and/or presently being operated on by the processing unit 120. By way of example, and not limitation,
The computer 110 may also include other removable/non-removable, volatile/nonvolatile computer storage media. By way of example only,
The drives and their associated computer storage media discussed above and illustrated in
A monitor 191 or other type of display device is also connected to the system bus 121 via an interface, such as a video interface 190. In addition to monitor 191, computers may also include other peripheral output devices such as speakers and a printer (not shown), which may be connected through an output peripheral interface 195.
The computer 110 may operate in a networked environment using logical connections to one or more remote computers, such as a remote computer 180. The remote computer 180 may be a personal computer, a server, a router, a network PC, a peer device or other common network node, and typically includes many or all of the elements described above relative to the computer 110, although only a memory storage device 181 has been illustrated in
When used in a LAN networking environment, the computer 110 is connected to the LAN 171 through a network interface or adapter 170. When used in a WAN networking environment, the computer 110 typically includes means for establishing communications over the WAN 173, such as the Internet. In a networked environment, program modules depicted relative to the computer 110, or portions thereof, may be stored in the remote memory storage device. By way of example, and not limitation,
One of ordinary skill in the art can appreciate that a computer 110 or other client devices can be deployed as part of a computer network. In this regard, the present invention pertains to any computer system having any number of memory or storage units, and any number of applications and processes occurring across any number of storage units or volumes. An embodiment of the present invention may apply to an environment with server computers and client computers deployed in a network environment, having remote or local storage. The present invention may also apply to a standalone computing device, having programming language functionality, interpretation and execution capabilities.
These and other advantages of the present invention will be apparent to those skilled in the art from the foregoing specification. Accordingly, it will be recognized by those skilled in the art that changes or modifications may be made to the above-described embodiments without departing from the broad inventive concepts of the invention. It should therefore be understood that this invention is not limited to the particular embodiments described herein, but is rather intended to include all changes and modifications that are within the scope and spirit of the invention.
This application is a continuation of patent application Ser. No. 12/378,606 that was filed on Feb. 17, 2009. The original patent application was application Ser. No. 10/919,031 that was filed on Aug. 14, 2004. This application claims priority under 35 USC sec. 119(e) to U.S. Provisional Application Ser. No. 60/495,041, filed Aug. 14, 2003, entitled “Electronic Document Tracking System.” This application also claims priority under 35 USC sec. 119(e) to U.S. Provisional Application Ser. No. 60/511,595, Filed Oct. 16, 2003, entitled “Electronic document tracking system.” This application also claims priority under 35 USC sec. 119(e) to U.S. application Ser. No. 10/919,031 Filed Aug. 14, 2004, entitled “Electronic Document Tracking System.” This application also claims priority under 35 USC sec. 119(e) to U.S. application Ser. No. 12/378,606 that was filed on Feb. 17, 2009, “Electronic Document Confidentiality Tracking System.”. The four (4) above-referenced applications are incorporated herein in their entirety by this reference.
Number | Date | Country | |
---|---|---|---|
Parent | 12378606 | Feb 2009 | US |
Child | 12791525 | US |