Abstract:
This invention relates to the storage and search retrieval of all types of digital media files, whether allowing the user to create index keys, metatags within each media file(s), provides search and indexing capability. The search terms and index keys are based on contextual elements within the media, including meta data such as time, date and location, but including as well elements within the media itself, such as people or elements (car, animals, street, events, historical location and other) within a picture or a video, audio, voice, spoke word, instruments used in a musical work, or scenes in a movie. An authorized client can then retrieve the media from the remote location. Specific works can then be referenced by means of the generated search terms and index keys. When the user transmits these media files via e-mail, FTP, public server, or copies to a digital media or other distribution method, these index keys are contained within the media files, therefore allowing the third party to search and retrieve the media files based on metatags.

Description:
CROSS-REFERENCE TO RELATED APPLICATIONS  
       [0001]     This application is a Continuation-in-Part of pending U.S. application Ser. No. 11/325,373, filed Jan. 4, 2006, entitled APPARATUS FOR CAPTURING INFORMATION AS A FILE AND ENHANCING THE FILE WITH EMBEDDED INFORMATION (Atty. Dkt. No. MPOR-27,243), which is a continuation of U.S. Pat. No. 6,996,251, issued Feb. 7, 2006, entitled FORENSIC COMMUNICATION APPARATUS AND METHOD (Atty. Dkt. No. MPOR-26,491), which claims the benefit of expired U.S. Provisional Application No. 60/414,449, filed Sep. 30, 2002, entitled FORENSIC COMMUNICATION APPARATUS AND METHOD, the specification of which is incorporated in its entirety herein by reference. This application also claims the benefit of priority from Provisional Patent Application No. 60/757,075, filed on Jan. 6, 2006. 
     
    
     TECHNICAL FIELD OF THE INVENTION  
       [0002]     This invention relates to the storage and search retrieval of all types of digital media files, whether music or other audio, still photographs, videos, movies or other types of media.  
       BACKGROUND OF THE INVENTION  
       [0003]     The popularity of digital media devices such as digital cameras, video cameras, mobile phones with audio and video recording capability and portable music devices that have recording capability has exploded in recent years. Instead of recording pictures, video and sound on physical media, modern devices record to rewritable memory devices. This means that the cost to create a new image, movie or audio recording has fallen to near zero, making the number of these recordings available in any given individual&#39;s library skyrocket.  
         [0004]     But this new ability to store virtually unlimited numbers of media files introduces new problems. First, the sheer number makes it nearly impossible to manually describe and index every media file in one&#39;s possession. This means that, for many, photographs, movies and audio recordings are kept in poorly organized computer files and finding any particular picture, movie or recording is a difficult and time-consuming process.  
         [0005]     The second problem is the fact that people typically trade up to a new computer every three years or so. This means that hours of video, thousands of pictures or hundreds of audio files must be transferred from the old system to the new—a sometimes daunting task.  
         [0006]     A third problem is one can typically access locally stored media files only on the computer on which they reside. If one wishes to share the file with another one must typically employ some file-transfer method ahead of time (email, FTP, public server, etc.)  
         [0007]     A fourth problem relates to e-mailing or sending your media files to another party, whereas the receiving party is not able to search the media files for the specific key indexes that the original owner had intended. While there are programs to allow the originator to type in key index words (tags) for searching and retrieving these media files from their personal computer, when these media files are e-mailed or sent to another party, these tags are removed from the media file, therefore the receiving party does not have an ability to search, sort, display, play or print these media files based on the original owners key indexes.  
         [0008]     Finally, those who make a living providing content need some method for proving that a given work belongs to them, and that they are the original creator of the work.  
       SUMMARY OF THE INVENTION  
       [0009]     The present invention consists of three subsystems: a Capture Device  100  (for example, a digital camera, a video camera, an audio recorder, or a vehicle “black box” that receives and stores information from sensors and other visual, audio and electronic input devices located throughout the vehicle), a Storage Facility  128 , and an Access Point  152  for the remote client. All of the subsystems communicate with one another by means of some communications infrastructure (such as the Internet, mobile telephone networks or the public switch telephone network.  
         [0010]     In typical usage, the capture device will, when activated, capture a stream of data from its primary interface (for a digital camera, this would be an image sensor; for an audio recorder, a microphone). In addition, the capture device will record certain meta data (such as time, date, location and identity of the capture device) and optionally a stream of data from a secondary interface. For example, the secondary stream may include audio data for operators&#39; comments, or a secondary video channel to assist in providing context for the information received from the primary interface.  
         [0011]     This information is combined, compressed and encrypted. Then, the resulting data set (called the “composite element” in this document) is hashed, and the hash and the meta data are transmitted to the storage facility.  
         [0012]     The storage facility uses the device ID in the meta data to determine the identity of the owner of the device, and prepares a certificate that identifies the owner. The certificate contains information that could only come from the storage facility, making the storage facility witness to the accuracy of the time stamp data in the meta data. Once created, the certificate is returned to the capture device.  
         [0013]     The capture device now combines the certificate with the encrypted composite element and encrypts the result under the public key of the storage facility. An opponent that received this transmission packet would have to break both the asymmetrical encryption envelope and the inner symmetrical cryptosystem to reveal the actual data element.  
         [0014]     The storage facility now decrypts the transmission packet and verifies the certificate. It decrypts the composite element and recovers the original captured data, the meta data and the secondary data. Using this information, it creates a set of “tags” and indexes the information for quick subsequent retrieval. All of this information is stored.  
         [0015]     The third subsystem is an access point. A client wishing to retrieve information from the storage facility must first provide some type of authentication token. Generally, the token will consist of a username/password combination, a challenge/response pair, or a physical hardware device. Once authenticated, the client can request media files and update or remove tags. The client can also mark a media file public, and can request additional tokens to provide to others who may wish to access the media files.  
     
    
     BRIEF DESCRIPTION OF THE DRAWINGS  
       [0016]     For a more complete understanding of the present invention and the advantages thereof, reference is now made to the following description taken in conjunction with the accompanying Drawings in which:  
         [0017]      FIG. 1  illustrates a block diagram of the overall operation of the system in accordance with the present disclosure.  
         [0018]      FIG. 2  illustrates a block diagram of one embodiment of the overall operation of the system in accordance with the present disclosure.  
         [0019]      FIG. 3  illustrates a block diagram of another embodiment of the overall operation of the system in accordance with the present disclosure.  
         [0020]      FIG. 4  illustrates a block diagram of the file management of the system in accordance with the present disclosure.  
     
    
     DETAILED DESCRIPTION OF THE INVENTION  
       [0021]     Referring now to  FIG. 1 , there is illustrated a block diagram of the overall operation of the system in accordance with the present disclosure. The invention is best described by beginning with the capture device  100 .  
         [0022]     Still pictures, moving pictures, audio, telemetry or other information (hereafter called simply, “information”) is gathered by the data converter  102  and organized into one “data element”  104  consisting of a single picture, a movie/video clip, an audio clip, a sample of telemetry data or other logical grouping of related information. The data converter  102  can be any type of data capture information. For pictures, a digital camera can be utilized and, for movie/video clips, the data converter can be a digital video recorder (DVR). In general, the data converter is any type of device that will capture the information and place it in some type of digitized format. As will be understood and discussed herein below, this digitized format is typically native to the data converter and the manufacturer. Some manufacturers have a particular file format in which they generate the information. This file format may have a designator as to the user, a sequence number or time stamp.  
         [0023]     At the same time the data element is created by the capture device  100 , certain other data (“meta data”)  106  is captured as well. This meta data may include time and date  158 , location  160 , operator identification  162 , or other information deemed relevant to establish the context of the data element. The time, date and location may be taken from a GPS unit, or may be derived by time-domain analysis of certain types of mobile phone signals or wireless network domains.  
         [0024]     In some embodiments of this invention, it may be desirable to use a technique known as steganography to permanently and indelibly embed the meta data directly into the data element. By using one of several well-known steganographic techniques, the data element can be subtly altered such that 1) it is difficult to determine that hidden information is stored in the data element, and 2 even if it is known that hidden information is stored in the data element, retrieval without some secret information (a “key”) is difficult. In this way, the data element can be guaranteed authentic even if stripped from external meta data.  
         [0025]     Also, at the time of information capture, the capture device may gather additional information from the operator by means of a secondary data converter  108  that relates to defining the context of the data element. For example, after a camera/video recorder takes a picture/video, a microphone (the secondary data converter) might capture the audio describing the image or the audio from the video just captured. This “context description element”  110  is stored along with the data element and the meta data.  
         [0026]     At this point, the capture device  100  has in its internal temporary storage the data element, the meta data and optionally the context description element. It now creates a composite data set using one of a number of well-known algorithms for combining multiple data sets into a single data set. For example, the well-known ZIP compression algorithm routinely performs statistical compression on a number of input files and creates a single output file such that, with the proper decompression algorithm, the original set of files can be recovered without data loss. This “combine and compress” function  112  creates a data set called the “composite element.”  114 .  
         [0027]     The capture device now encrypts the composite element using any of a number of well-known encryption algorithms. In the preferred embodiment, the composite element is first encrypted using a symmetrical cryptosystem  116  using a key  118  shared by the capture device and the storage facility. The resulting “singly-encrypted element”  120  is then hashed. “Hashing”  122  is a technique that generates a digital “signature” for a data set, such that any party wishing to verify the correctness of the data set can easily recalculate the hash and compares it with the previously calculated hash. Hash algorithms have the further property that it is computationally difficult to find multiple data sets that have the same hash value. This calculated hash value (“element hash”)  124  becomes part of the meta data set that is to be associated with the data element.  
         [0028]     It is now necessary for the capture device to contact the storage facility over some communications medium. This communications medium  126  can be any mechanism that permits near real-time, two-way communication. The specifics of the communication medium are not disclosed here, but could comprise a wireless telephone network, the public switched telephone network, or the Internet. The capture device sends the meta data  106  (now consisting of the time, date, operator identification, image, video, audio, “context description element”  110 , hash  122  and possibly other data) to the storage facility  128 .  
         [0029]     The storage facility validates the meta data received from the capture device and, if authorized, combines and hashes  130  the received meta data and a secret number  132  known only to the storage facility. This hash is appended to the original meta data set and is then returned to the capture device as a “certificate.”  134  At a later time, the certificate can be presented to the storage facility to determine if a data element is authentic.  
         [0030]     The singly encrypted element  120  is now combined with the certificate  134  and then is further encrypted using an asymmetrical cryptosystem  136  under the public encryption key  164  of the storage facility  128 , designated K SU . This new packet (the “transport packet”)  138  is now ready to transmit to the storage facility  128 .  
         [0031]     When it receives the transport packet  138 , the storage facility  128  first decrypts  140  the packet  138  using its private decryption key  166  designated as K SR . This gives the storage facility  128  access to the certificate  134  (which contains the meta data  106 ). The certificate can be validated  142  by rehashing the meta data  106  and the secret number  132 . Unpacking the certificate  134 , the storage facility  128  now knows the identity of the capture device  100 , and can use this to retrieve the secret, symmetrical key  118  under which the singly encrypted element  120  is encrypted. The storage facility  128  now decrypts  149 ) the singly encrypted element  120  to retrieve the composite element  114 ; then expands and recovers  150  the composite element to retrieve the data element  104 , the meta data  106 , and the context description element  110 , if present.  
         [0032]     Now, the storage facility  128  can store the data element  104  under the owner&#39;s account in its mass storage  144 . The storage facility knows the owner&#39;s identity because it was disclosed in the meta data  106 . The storage facility also adds “context tags”  146  by methods dependent on the type of data that is being stored.  
         [0033]     Context tags  146  are searchable elements derived from either the data element  104  itself or from the context description element  1   10 . For example, if the data element  104  is a still photograph or video, the storage facility may create context tags that describe elements of the scene or image(s), such as “animal,” or “dog,” or “Spot,” depending on the mechanism that converts the information in the data element or the context description element into a tag.  
         [0034]     It is equipment analyze the data elements (photograph, movie, audio recording, etc.) and create  148  a set of appropriate tags. For audio files, this may include a speech-to-text algorithm; for still or moving images, it may include image recognition and identification. Whatever the method used, at the end of the process the set of data to store includes the data element  102 , the context element  110 , and meta data  106  that now includes a set of searchable tags specific to that image, video, audio or other media.  146 , presumed that, as image and voice recognition improve; this task can be fully automated. Therefore, the preferred embodiment of this invention is to have the task automated.  
         [0035]     Retrieval of the data elements is performed from some access point  152  remote from the storage facility  128 . To retrieve data elements, a client must prove to the storage facility that the client is authorized to access the desired data element. This can be done in any number of ways, but in the preferred embodiment of the invention, it is a password challenge. The access point  152  creates an authentication request  154  and transmits the request via the communications medium  126  to the storage facility  128 . At the storage facility, the request is authenticated  156 . Once the challenge has been successfully met, the client can access the data elements belonging to it. Details of the authentication process may include password authentication, a challenge/response protocol, or may employ a hardware authentication device.  
         [0036]     Once the request for information has been authenticated, the storage facility  128  reads the requested information from the bulk storage device  144  and encrypts  169 ) under the public key of the requester  168 , designated as K CU . The encrypted data is then transmitted to the client over the communications medium  126 . Upon arrival, the message is decrypted  172  under the client&#39;s private key  170  designated as K CR  and the data  174  is recovered.  
         [0037]     Once the data has been retrieved, the tags may be edited or removed and new tags added. Other meta data; particularly location and time and date cannot be changed.  
         [0038]     Variations of the system include placing the ability to enter tags on the data capture device itself. This could be in the form of a keypad, a touch screen or voice recognition software. If this option were taken, the data packet from the image capture device would include the tags in the meta data rather than a context description element.  
         [0039]     Another variation applies to highly secure applications in which it is desirable to keep the data element  104  encrypted even while at the storage facility. In this variation, the data element  104  is encrypted under a symmetrical cryptosystem prior to combination with the meta data  106  and the context description element  11   0 . This variation precludes the automatic extraction of tags from the data element itself, but still permits tagging based on the context description element.  
         [0040]     Referring now to  FIG. 2 , there is illustrated a diagrammatic view of the overall operation of the system. In this system, the capture device  100  is disclosed wherein the actual device that captured it, the device  102 , is illustrated as being a digital camera. This has a lens  202  associated therewith, with the output of the camera being a digitized image  204 . This is basically the data element  104  of  FIG. 1 . It can be seen that the element  204  is in a digitized format that is typically native to the camera. This can be any type of video capture element for capturing an image  206 .  
         [0041]     Once the image is captured, it is stored in a data base  208 . In addition to this information, various associated information such as audio, timestamp, GPS, location, etc. can be collected. One method for collecting the audio information, for example, is to utilize a microphone  210  that will capture the information and then digitize it in a digitizing block  212  utilizing an analog-to-digital converter, for example. This not only converts it to a digital value but, further, will convert it to a particular audio format such as a *.WAV file format. This particular file format is stored in the database  208 . Of course, any other type of digital format could be utilized that is consistent with an audio format. The GPS information for location can be collected with an external GPS system  218  and timestamp information can internally be generated.  
         [0042]     After all the information regarding the video information and the audio information, for example, is collected, it is stored in the database  208  and then must be output therefrom. In this embodiment, there are two types of attached information that are to be embedded within the image at a later time. The first set of information is the GPS information, the timestamp information, etc., that is collected automatically with any image. This information is created in a temporal relationship with respect to that particular image at the time of the capture of the image information. This location information, timestamp information, etc., is information that is unique to the photograph and defines that image. Further, user information can be provided which defines the user information that is associated with the capture device, i.e., the camera. The additional information, the audio information, is provided in the form of comments and the such which can be stored. Therefore, when the data in the form of the image information is to be transmitted to the remote site, it is combined with the additional GPS, location, timestamp, etc., information and the audio input information.  
         [0043]     There is typically provided a unique file format that defines the digital image and this unique file name can be utilized to define all of the secondary information such that there is a unique association of that information with the image. Thereafter, a compress module  220  is provided for compressing the information in a compressed file format such as a *.ZIP file format. This is just a manner to transmit a number of files together. However, at the reception point, when the files are extracted from this *.ZIP file, there must be some way to distinguish the files and again associate them. This is done, for example, with a unique file naming structure. However, there could be other techniques utilized to uniquely identify the association between these different files.  
         [0044]     Once this compressed file format is transmitted to the storage facility  128 , it is stored in a database  226 . At this time there will be, for example, a video clip or a video image (such as a still image) stored in association with the various information that is associated therewith. This, in effect, is a relational database that provides data storage in close association with each other. The first thing that must be done is to extract the information from the data. This is done in a block  228  wherein the associated information is extracted from the database, this being the associated information, and then processed. Typically, the associated information will be the audio information in the audio file format. This must be converted. One conversion that is provided for is to convert the audio formatted data to text data. Therefore, one type of audio-to-text converter can be a voice translation system. There are many of these that are provided such as the Dragon Naturally Speaking systems.  
         [0045]     Once the text format has been provided, this is a converted to intermediate formatted data, i.e., text data, that can then be processed in a format that can be embedded within a video file or an image file. This can then be converted into HTML data or other data. This will typically be formatted such that it can be defined as a meta tag for association with the video image. This meta tag is then combined with the image in a block  230 . Once combined, this will then be stored in the database in association with the original raw video and raw audio files. Thereafter, there is an access and retrieval block  152  that can allow one to access the particular modified or “tagged” image via a search. There can be provided a search algorithm that searches all of the tagged images. This searching can be performed based upon the GPS location information, the timestamp information, the added audio comment information, etc. Any information that can be provided over and above the video information that was provided in all of the associated information at the camera can then be searched, as this is the information that is contained in the appended information to the image.  
         [0046]     Referring now to  FIG. 3 , there is illustrated an alternate embodiment wherein substantially all of the combining operation is contained within the capture device  100  or the camera. Again, there is provided the capture device  102  in the form of the camera that captures the image  206 . This is converted and stored in a database  306 . The database  306  is basically the combination of database  208  and the database  226 . Initially, all of the information from the digital video image  204  and the audio information and all other associated information such as the GPS information, timestamp, etc., are all stored in the database  306 . There will be a corresponding process  308  for taking the associated information and converting it into different information, i.e., a meta tag, which is substantially the same as the process  228 . Once the associated process is combined it is converted into that format, then it can be combined with the image in a process block  310 , similar to the process block  230 . Once this occurs, then there is provided a combined video/image with meta data that can be transmitted. This is illustrated as the augmented image  316  which has meta data associated therewith. This is transmitted for storage at the storage facility in a database  318 . This is searchable through the access/retrieval process  152 , as described herein above.  
         [0047]     Referring now to  FIG. 4 , there is illustrated one exemplary embodiment of the file structure. The image  204  is a digitized image that constitutes a particular file folder that will have a particular video or image format. This could be a JPEG format, an MPEG format or any other type of video format. This is referred to as one having the extension *.VID (for generic purposes). The file format in this embodiment will have a user ID section  402 , a time/date stamp section  404 , a sequence number  406  and a device number  408 . This will have the format of XXX.AAAA.XXX.XXX.VID. The user ID section  402  will define the user of the capture device, this typically being configuration information that is input to the system. The time/date stamp is time and date information that can be taken from an internal clock or it can be derived from some external accurate time source. The sequence number  406  is typically internally generated with a counter that represents an internal sequence that is unique to a particular capture device. However, among different capture devices, the sequence could be the same. The device section  408  is a unique device number given to a particular device. Therefore, with the user ID information, the time/date stamp, the sequence number and the device number, a very unique file number will be generated. Further, the sequence and the time/date information will be different for each file. Thereafter, the information retrieved from the GPS  218  will be disposed in a folder with an extension of, for example, *.GPS. This will be stored in the file folder  208 . The file numbering will be identical to the file nomenclature other than the extension will be identical to that of the digitized video file. Similarly, the audio information will be stored in a file folder with an extension of, for example, *.WAV with the body of the file name being identical to that of the digitized video file. This will all be stored in the database  208  and then combined in a compressed folder of the *.ZIP type. The actual file name for this can be any type of file name and it does not have to be identical or unique with respect to the name. However, there should be some type of unique file name in that, a random filename could be duplicated by other capture devices. Thus, in the preferred embodiment of this disclosure, the unique body of the *.ZIP file will be identical to that associated with the files contained therein such that this will have a filename of “XXX.AAAA.XXX.XXX.ZIP.” This is the file that is transmitted.  
         [0048]     As a summary, the system of the present disclosure provides a system for capturing, storing, indexing and retrieving data objects, which can include a capture device, a storage facility and an access point. The system consists of a primary data converter, a secondary data converter, a meta data source, a data combiner and compressor, a symmetrical encryptor, a one-way hash function, an asymmetric encryptor, and a communications port. The primary data converter captures some physical phenomenon such as, but not limited to a still image, a moving image, a sound, or some other factor, into a primary data set. The secondary data converter is capable of capturing some phenomenon into a secondary data set, related to but separate from the information captured by the primary data converter. The meta data source produces a device identifier, time, date, location, and other data related to the information captured by the primary data converter into a meta data set. The source of the time, date and location information is a GPS receiver, a wireless receiver or another receiver. The source of the device identifier is a read-only memory device. The data combiner and compressor is capable of combining the output of the multiple sources of data (the primary data converter, the secondary data converter, and the meta data source) into a single data stream, and then compressing said data stream into a compressed data set such that the compressed data set requires fewer transmission or storage resources than the uncompressed stream, but remains recoverable such that the original data from the primary data converter, the secondary data converter and the meta data source can be recovered without error. The symmetrical encryptor is capable of using a key shared with another party to convert the data stream from the data combiner and compressor into a singly encrypted data set that is unusable by any party other than the party that has knowledge of the key. The one-way hash function is capable of calculating for the encrypted data stream from the symmetric encryptor a number associated with said data stream such that (a) the number represents the data stream, but the data stream is not recoverable from the number, and (b) that it is computationally infeasible to created a second data stream that, when presented to the one-way hash function, produces an identical number. The communications port is capable of sending the meta data and the hash to a second party. The communications port is further capable of receiving from a second party a certificate that has the property of (a) being uniquely and verifiably identified with the meta data and hash of claim  12 , and (b) being verifiably identified as originating with the second party. The asymmetric encryptor is capable of converting the output of the symmetric encryptor and other data into an encrypted information packet that can be read only by a specific second party by means of a pair of related but non-identical keys, the encryption key and the decryption key. The communications port is further capable of conveying the encrypted information packet to a second party. The storage facility consists of a communications port, a device authenticator, an asymmetric decryptor, a validator, a symmetric decryptor, a data expander and recovery device, a tag generator, a mass storage mechanism, an asymmetric encryptor, and a user authenticator. The communications port is capable of receiving a request from validation from the capture device. The device authenticator is capable of verifying that the capture device is authorized to use the storage facility and to create an authentication certificate such that (a) it is computationally infeasible to create a second meta data set or hash that creates an identical authentication record, and (b) the authentication record is uniquely identified with the storage facility. The asymmetric encryptor is capable of using the decryption key to recover the authentication certificate and the singly encrypted data set. The validator is capable of determining if the recovered authentication certificate (a) was generated by the storage facility, and (b) is valid for the presented hash and meta data. The symmetric decryptor is capable of converting the singly encrypted data set into the compressed data set. The data expander and recovery device is capable of converting the compressed data set into the original primary data set, the secondary data set, and the meta data set. The tag generator is capable of taking the primary data set, the secondary data set and the meta data set and producing a set of index tags that describe the primary data set. The tag generator in which the tag generation is performed by a human operator. The tag generation is performed by a speech-to-text function or by an image recognizer. The mass storage mechanism is capable of storing the primary data set, the secondary data set and the meta data set in a way that the information can be retrieved based on the index tags. The user authenticator is capable of receiving requests from access points and verifying their authority to perform retrieval operations at the storage facility.  
         [0049]     The system can, at its most condensed version, comprise an asymmetric encryptor capable of converting data read from the mass storage mechanism using a public encryption key into a form usable only by a party with knowledge of a secret key that corresponds to the said public encryption key. The access point consists of an asymmetric decryptor, a communications port and an authentication requester. The authentication requester is capable of identifying the access point and the data element or elements to be recovered from the storage facility in a manner that proves its authority to access said data element or elements.