Data encryption is often utilized to protect electronic files (e.g., documents and images) from viewing by unauthorized users. Such encryption, however, fails to make such files recognizable to users even subsequent to a file being viewed. When the file is a document (for instance, a WORD document), the file name is sometimes, but not always, sufficient to jog a user's memory as to the contents of the item. However, when the file is, for instance, an image, the file name is often void of any meaning to the user. In fact, image file names are often generated by an image capturing device as a series of random or otherwise seemingly meaningless characters that are not changed by users. Thus, even if a user has viewed a particular image previously, s/he is not able to jog his/her memory simply by reading the file name of an encrypted image.
This Summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This Summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used as an aid in determining the scope of the claimed subject matter.
In various embodiments, systems, methods, and computer-readable storage media are provided for recognizably protecting electronic files. Users are able to protect electronic files (e.g., documents and images) through association with permissions that permit authorized users to perform or not perform specifically delineated actions, including unobstructed viewing, with respect to such files. Upon receiving a request to view a protected file, a low-fidelity artifact of the requested file is provided that is obfuscated to a degree sufficient to jog the memory of a user that has viewed the requested file previously but yet remains sufficiently unrecognizable to a user that has not previously viewed the file. Upon determining that at least one permission associated with the file is satisfied (e.g., upon receiving user credentials and thereby determining that the requesting user is an authorized user), a high-fidelity artifact of the file is provided that is void of obfuscation. Depending on the nature of the permissions associated with the file, the authorized user may take additional actions (e.g., copying, forwarding, saving, etc.) with respect to the electronic file as well.
The present invention is illustrated by way of example and not limitation in the accompanying figures in which like reference numerals indicate similar elements and in which:
The subject matter of the present invention is described with specificity herein to meet statutory requirements. However, the description itself is not intended to limit the scope of this patent. Rather, the inventor has contemplated that the claimed subject matter might also be embodied in other ways, to include different steps or combinations of steps similar to the ones described in this document, in conjunction with other present or future technologies. Moreover, although the terms “step” and/or “block” may be used herein to connote different elements of methods employed, the terms should not be interpreted as implying any particular order among or between various steps herein disclosed unless and except when the order of individual steps is explicitly described.
Various aspects of the technology described herein are generally directed to systems, methods, and computer-readable storage media for recognizably protecting electronic files. Users are able to protect files through association with permissions that permit authorized users to perform or not perform specifically delineated actions with respect to such files. Upon receiving a request to view a protected electronic file, a low-fidelity artifact of the requested file is provided that is obfuscated to a degree sufficient to jog the memory of a user that has viewed the requested file previously but yet remains sufficiently unrecognizable to a user that has not previously viewed the file. Such obfuscation may be achieved, by way of example, by one or more of blurring, pixilation, or masking (that is, removing or covering one or more portions of the file). Upon determining that at least one permission associated with the file is satisfied (e.g., upon determining that the requesting user is an authorized user), a high-fidelity artifact of the file is provided that is void of intentionally added obfuscation. Depending on the nature of the permissions associated with the file, an authorized user may take additional actions (e.g., copying, forwarding, saving, etc.) with respect thereto as well.
Accordingly, one embodiment of the present invention is directed to one or more computer-readable storage media storing computer-useable instructions that, when used by one or more computing devices, cause the one or more computing devices to perform a method for recognizably protecting electronic files. The method includes presenting a low-fidelity artifact associated with an electronic file, the electronic file having at least one permission associated therewith; verifying that the at least one permission has been satisfied; and presenting a high-fidelity artifact associated with the electronic file upon verification.
In another embodiment, the present invention is directed to a method being performed by one or more computing devices including at least one processor, the method for recognizably protecting electronic files. The method includes receiving a high-fidelity artifact associated with an electronic file; receiving an indication to obfuscate at least a portion of the received high-fidelity artifact; obfuscating the indicated portion of the received high-fidelity artifact to create a low-fidelity artifact associated with the electronic file; receiving at least one permission associated with the electronic file, the at least one permission, upon satisfaction thereof, permitting access to the high-fidelity artifact; and storing the high-fidelity artifact, the low-fidelity artifact, and the at least one permission in association with one another.
In yet another embodiment, the present invention is directed to a system including a file protection engine having one or more processors and one or more computer-readable storage media, and a data store coupled with the file protection engine. The file protection engine is configured to receive at least one high-fidelity artifact associated with an electronic file; receive an indication to obfuscate at least a portion of the received high-fidelity artifact; obfuscate the indicated portion of the received high-fidelity artifact to create a low-fidelity artifact associated with the electronic file; and receive at least one permission associated with the electronic file, the at least one permission, upon satisfaction thereof, permitting access to the high-fidelity artifact. The file protection engine further is configured to store the high-fidelity artifact, the low-fidelity artifact, and the at least one permission in association with one another; receive a request to view the electronic file; present the low-fidelity artifact associated with the electronic file; verify that the at least one permission has been satisfied; and present the high-fidelity artifact associated with the electronic file upon verification.
Having briefly described an overview of embodiments of the present invention, an exemplary operating environment in which embodiments of the present invention may be implemented is described below in order to provide a general context for various aspects of the present invention. Referring to the figures in general and initially to
Embodiments of the invention may be described in the general context of computer code or machine-useable instructions, including computer-useable or computer-executable instructions such as program modules, being executed by a computer or other machine, such as a personal data assistant or other handheld device. Generally, program modules including routines, programs, objects, components, data structures, and the like, and/or refer to code that performs particular tasks or implements particular abstract data types. Embodiments of the invention may be practiced in a variety of system configurations, including hand-held devices, consumer electronics, general-purpose computers, more specialty computing devices, and the like. Embodiments 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.
With continued reference to
The computing device 100 typically includes a variety of computer-readable media. Computer-readable media may be any available media that is accessible by the computing device 100 and includes both volatile and nonvolatile media, removable and non-removable media. Computer-readable media comprises computer storage media and communication media; computer storage media excluding signals per se. 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, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, 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 computing device 100. Communication media, on the other hand, 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, RF, infrared and other wireless media. Combinations of any of the above should also be included within the scope of computer-readable media.
The memory 112 includes computer-storage media in the form of volatile and/or nonvolatile memory. The memory may be removable, non-removable, or a combination thereof. Exemplary hardware devices include solid-state memory, hard drives, optical-disc drives, and the like. The computing device 100 includes one or more processors that read data from various entities such as the memory 112 or the I/O components 120. The presentation component(s) 116 present data indications to a user or other device. Exemplary presentation components include a display device, speaker, printing component, vibrating component, and the like.
The I/O ports 118 allow the computing device 100 to be logically coupled to other devices including the I/O components 120, some of which may be built in. Illustrative components include a microphone, joystick, game pad, satellite dish, scanner, printer, wireless device, and the like. Aspects of the subject matter described herein may be described in the general context of computer-executable instructions, such as program modules, being executed by a mobile device. Generally, program modules include routines, programs, objects, components, data structures, and so forth, which perform particular tasks or implement particular abstract data types. Aspects of the subject matter described herein may also be practiced in distributed computing environments where tasks are performed by remote processing devices that are linked through a communications network. In a distributed computing environment, program modules may be located in both local and remote computer storage media including memory storage devices.
Furthermore, although the term “file protection engine” is used herein, it will be recognized that this term may also encompass a server, a Web browser, a set of one or more processes distributed on one or more computers, one or more stand-alone storage devices, a set of one or more other computing or storage devices, a combination of one or more of the above, and the like.
As previously mentioned, embodiments of the present invention are generally directed to systems, methods, and computer-readable storage media for recognizably protecting electronic files. Users are able to protect electronic files through association with permissions that permit authorized users (such authorization itself being a permission) to perform or not perform specifically delineated actions with respect to such files. Upon receiving a request to view a protected file, a low-fidelity artifact of the requested file is provided that is obfuscated (e.g., blurred, pixelated, and/or masked) to a degree sufficient to jog the memory of a user that has viewed the requested file previously but yet remains sufficiently unrecognizable to a user that has not previously viewed the file. Upon determining that at least one permission associated with the file is satisfied (e.g., upon determining that the requesting user is an authorized user), a high-fidelity artifact of the file is provided that is void of obfuscation intended to render the file unrecognizable to those that have not previously viewed the file. Depending on the nature of the permissions associated with the file, the authorized user may take additional actions (e.g., copying, forwarding, saving, etc.) with respect to the electronic file as well.
Referring now to
It should be understood that any number of user computing devices 210 and/or file protection engines 212 may be employed in the computing system 200 within the scope of embodiments of the present invention. Each may comprise a single device/interface or multiple devices/interfaces cooperating in a distributed environment. For instance, the file protection engine 212 may comprise multiple devices and/or modules arranged in a distributed environment that collectively provide the functionality of the file protection engine 212 described herein. Additionally, other components or modules not shown also may be included within the computing system 200.
In some embodiments, one or more of the illustrated components/modules may be implemented as stand-alone applications. In other embodiments, one or more of the illustrated components/modules may be implemented via the user computing device 210, the file protection engine 212, or as an Internet-based service. It will be understood by those of ordinary skill in the art that the components/modules illustrated in
It should be understood that this and other arrangements described herein are set forth only as examples. Other arrangements and elements (e.g., machines, interfaces, functions, orders, and groupings of functions, etc.) can be used in addition to or instead of those shown, and some elements may be omitted altogether. Further, many of the elements described herein are functional entities that may be implemented as discrete or distributed components or in conjunction with other components, and in any suitable combination and location. Various functions described herein as being performed by one or more entities may be carried out by hardware, firmware, and/or software. For instance, various functions may be carried out by a processor executing instructions stored in memory.
The user computing device 210 may include any type of computing device, such as the computing device 100 described with reference to
The viewing application 220 of the user computing device 216 is an application configured to permit viewing of low-fidelity artifacts and high-fidelity artifacts associated with electronic files in association with the display 218 of the user computing device 220, depending upon permissions associated with a given file. The viewing application 220 further may be configured to permit and/or constrain actions of certain users and/or with respect to certain files based upon the permissions associated with various files. A schematic diagram showing an exemplary screen display 600 associated with an application for recognizably protecting image files for viewing in association with the viewing application 220, in accordance with an embodiment of the present invention, is more fully described below with reference to
The file protection engine 212 of
The file receiving component 222 of the file protection engine 212 is configured to receive a high-fidelity artifact associated with an electronic file. A received high-fidelity artifact typically is an electronic file or file portion void of any intentional obfuscation added by a user with the intent to render the file unrecognizable to persons that have not previously viewed the file. In embodiments, a high-fidelity artifact associated with an electronic file is received via an application for recognizably protecting electronic files. A schematic diagram showing an exemplary screen display 600 associated with an application for recognizably protecting image files, in accordance with an embodiment of the present invention, is illustrated with reference to
Returning to
With reference back to
The obfuscation component 228 of the file protection engine 212 is configured to apply obfuscation as indicated to high-fidelity artifacts associated with electronic files to create low-fidelity artifacts associated with the files. Such obfuscation may be, by way of example only, by virtue of blurring, masking (e.g., removing or covering), pixelating, or the like, one or more portions of the high-fidelity artifact. With reference to
With reference back to
The file request receiving component 232 is configured to receive requests for viewing of electronic files. Upon receipt of a request to view an electronic file, the low-fidelity artifact (or obfuscated file) may be transmitted, e.g., via the presenting component 236, for viewing in association with the viewing application 220 of the user computing device 210. In embodiments, only after presentation of the low-fidelity artifact, the permission verification component 234 may be configured to verify whether or not a user requesting to view the file is authorized to view the high-fidelity artifact. In other words, the permission verification component 234 may be configured to verify whether there is a permission associated with the electronic file that identifies the user requesting to view the file as an authorized user. In such embodiments, if it is determined by the permission verification component 234 that the user requesting to view the file is authorized to view the high-fidelity artifact (that is, that there is a permission associated with the electronic file that identifies the user requesting to view the file as an authorized user), the low-fidelity artifact may be replaced with the high-fidelity or non-obfuscated file for presentation (e.g., via the presenting component 236). If, however, it is determined by the permission verification component 234 that the user requesting to view the electronic file is not authorized to view the high-fidelity artifact (that is, that there is not a permission associated with the file that identifies the user requesting to view the file as an authorized user), the low-fidelity or obfuscated artifact may remain.
In embodiments, the permission verification component 234 may determine whether the user requesting to view the electronic file is an authorized user prior to the presenting component 236 transmitting any artifact of the file at all for presentation in association with the viewing application 220. In such embodiments, if the user is determined by the permission verification component 234 to be an authorized user (that is, if it determined by the permission verification component 234 that there is a permission associated with the electronic file that identifies the user requesting to view the file as an authorized user), the presenting component 236 may be configured to transmit the high-fidelity artifact for viewing in association with the viewing application 220. If, however, the user is determined by the permission verification component 234 to not be an authorized user (that is, if it is determined by the permission verification component 234 that there is not a permission associated with the electronic file that identifies the user requesting to view the file as an authorized user), the presenting component 236 may be configured to transmit the low-fidelity artifact for viewing in association with the viewing application 220. In embodiments, the permission verification component 234 further is configured to receive indications of additional actions (e.g., copying, forwarding, saving, etc.) that an authorized individual may perform, either as a collective group (that is, actions that may be performed by all authorized individuals) or on an individual authorized user basis.
Turning now to
As indicated at block 712, the method 700 further includes verifying (e.g., utilizing the permission verification component 234 of the file protection engine 212 of
With reference now to
Turning to
With continued reference to
As can be understood, embodiments of the present invention provide systems, methods, and computer-readable storage media for, among other things, recognizably protecting electronic files. Users are able to protect files through association with permissions that permit authorized users to perform or not perform specifically delineated actions with respect thereto. Upon receiving a request to view a protected file, a low-fidelity artifact of the requested file is provided that is obfuscated to a degree sufficient to jog the memory of a user that has viewed the requested file previously but yet remains sufficiently unrecognizable to a user that has not previously viewed the file. Upon determining that at least one permission associated with the file is satisfied (e.g., upon determining that the requesting user is an authorized user), a high-fidelity artifact of the file is provided that is void of obfuscation. Depending on the nature of the permissions associated with the file, the authorized user may take additional actions (e.g., copying, forwarding, saving, etc.) with respect to the electronic file as well.
The present invention has been described in relation to particular embodiments, which are intended in all respects to be illustrative rather than restrictive. Alternative embodiments will become apparent to those of ordinary skill in the art to which the present invention pertains without departing from its scope.
While the invention is susceptible to various modifications and alternative constructions, certain illustrated embodiments thereof are shown in the drawings and have been described above in detail. It should be understood, however, that there is no intention to limit the invention to the specific forms disclosed, but on the contrary, the intention is to cover all modifications, alternative constructions, and equivalents falling within the spirit and scope of the invention.
It will be understood by those of ordinary skill in the art that the order of steps shown in the methods 700 of