Media provenance authentication by fragile watermarking

By embedding fragile watermarks in digital media and utilizing key generation and detection mechanisms, the problem of authenticating media origins in existing technologies is solved, enabling the authentication of the accuracy and credibility of media files and reducing the negative impact of fake media.

CN114127775BActive Publication Date: 2026-03-24MICROSOFT TECHNOLOGY LICENSING LLC
View PDF 5 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2020-06-09
Publication Date
2026-03-24

AI Technical Summary

Technical Problem

Existing technologies struggle to effectively authenticate the origin of digital media, especially after media files have undergone minor editing, as metadata is easily tampered with, making it impossible to ensure the accuracy and credibility of media files.

Method used

By employing fragile watermarking technology, a fragile watermark is embedded in the media file. Using key generation and detection mechanisms, the watermark can still be detected even with minor editing, thereby authenticating the source of the media file.

Benefits of technology

It enables effective authentication of media files even after minor editing, ensuring that users can identify whether a media file is an accurate representation generated by a trusted entity, thus reducing the negative impact of fake media.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114127775B_ABST
    Figure CN114127775B_ABST
Patent Text Reader

Abstract

Systems and methods for determining when media is a high-fidelity reproduction of original media from a trusted entity are disclosed. In certain aspects, systems and methods for generating a fragile watermark are disclosed. The fragile watermark can be inserted into digital media in such a way that if the media content is significantly altered, the watermark cannot be identified. The media content can then be analyzed to determine the presence of the fragile watermark. When the fragile watermark is present, the provenance of the media content can be verified, and an indication of the provenance is provided to a user.
Need to check novelty before this filing date? Find Prior Art

Description

BACKGROUND

[0001] Tools that generate manipulated videos that can be used for new forms of propaganda and disinformation are becoming increasingly prevalent. These tools enable individuals, government actors, and non-government entities to easily synthesize and publish false or modified depictions of events. As a result, there are many challenges in attempting to verify the authenticity of news reports, the falsity of which poses a threat to the rule of law and democracy worldwide.

[0002] The description of embodiments is made with reference to these and other general considerations. Moreover, although reference is made to relatively specific problems, it is understood that the embodiments should not be limited to solving the specific problems identified in the background. SUMMARY

[0003] Aspects of the present disclosure relate to systems and methods that can be employed to determine when media is a high-fidelity reproduction of original media from a trusted entity. In certain aspects, systems and methods for generating fragile watermarks are disclosed. Fragile watermarks can be inserted into digital media in such a way that if the media content is significantly altered, the watermark cannot be identified. However, if the media is modified slightly, the fragile watermark will remain detectable. In this way, originally created media can be distributed such that if the media is significantly altered, a user can be informed that the media does indeed represent original media produced by a trusted source.

[0004] In another aspect, systems and methods are provided that determine whether requested media content is from a trusted media source. In such aspects, when a user wishes to access a media file, a unique identifier for the media file can be generated and sent to a provenance service. If the particular media has not previously been analyzed by the provenance service, the media itself can be transmitted to the provenance service for provenance analysis. If the provenance service is able to identify a fragile watermark associated with a trusted source, the provenance of the media is determined and provided to the user.

[0005] This summary is provided to introduce a selection of concepts that are further described below in the detailed description. This summary is not intended to identify key or essential features of the claimed subject matter, nor is it intended to be used to limit the scope of the claimed subject matter. Additional aspects, features, and / or advantages of various examples will be apparent from the description that follows, and from the embodiments described therein, which are presented as examples. Embodiments presented are intended to be representative and do not serve to limit the scope of what can be claimed. BRIEF DESCRIPTION OF DRAWINGS

[0006] Non-limiting and non-exhaustive examples are described with reference to the following figures.

[0007] Figure 1 is an example high-level architecture 100 to create media for provenance verification.

[0008] Figure 2 is an example high level architecture 200 for provenance verification of existing media.

[0009] Figure 3 is an example method 300 for providing a fragile watermark key to a requesting device.

[0010] Figure 4 is an example method 400 for generating a fragile watermark on media.

[0011] Figure 5 is an example 500 for determining provenance of a media file accessed by a device.

[0012] Figure 6 is an example method 600 for analyzing a media file to determine provenance of media.

[0013] Figure 7 is yet another example method 700 for determining provenance of media content or a media file.

[0014] Figure 8 is an example method 800 performed by a client device for determining provenance of media.

[0015] Figure 9 is a block diagram illustrating example physical components of a computing device with which aspects of the disclosure can be practiced.

[0016] Figure 10A and Figure 10B is a simplified block diagram of a mobile computing device with which aspects of the disclosure can be practiced.

[0017] Figure 11 is a simplified block diagram of a distributed computing system in which aspects of the disclosure can be practiced.

[0018] Figure 12 a tablet computing device for performing one or more aspects of the disclosure is shown. DETAILED DESCRIPTION

[0019] In the following detailed description, references are made to the accompanying drawings that form a part hereof, and in which are shown by way of illustration specific embodiments or examples. These aspects can be combined, other aspects can be utilized, and structural changes can be made without departing from the spirit or scope of the present disclosure. Embodiments can be practiced as a method, system, or device. Accordingly, the embodiments can take the form of a hardware implementation, a software implementation, or an implementation combining software and hardware aspects. The following detailed description is therefore not to be taken in a limiting sense in view of the scope of the present disclosure being defined by the appended claims and their equivalents.

[0020] Aspects of the present disclosure relate to determining provenance of media using fragile watermarks. Recently, there has been an increase in the number of fake media published via the Internet. As discussed herein, fake media involves media that is either fabricated to appear authentic or original media that is tampered with to present the media in a misleading way. Many factors have contributed to the increase in fake media publication. Artificial intelligence (AI) technology for media creation has advanced to the point where it is able to produce synthetic videos and audio with a convincing fidelity. This problem is particularly true for synthetic voices that can not be distinguishable from real voices even to a forensic audio expert. On the other hand, tools to identify fake, synthetic, or tampered media have not developed at the same pace as the tools to create misleading or inaccurate media.

[0021] The advent of tools that generate manipulated media (e.g., videos, audio, pictures) has further contributed to the publication of new forms of propaganda and fake information through traditional media channels and, in particular, social media networks. Such tools enable individuals, government actors, and non-government entities to easily synthesize and publish fake or modified depictions of events. The misuse of fake media results in significant negative impacts on individuals and society, such as damage to reputation, influence on elections, destabilization of governments and / or organizations, etc.

[0022] The detection of fake media is a technically difficult problem. Attempts to develop systems to automatically detect fake media have only been moderately successful compared to the rapid advances in AI and machine learning technology in creating fake media in text or multimedia forms (e.g., audio, video, pictures). In fact, the most advanced tools for determining whether a media file is fake have not provided a reliable countermeasure against the tools used to create the fake media. Moreover, media channels, particularly in social media networks, have not shown a strong interest in actually identifying and policing fake media because the publication of such media results in higher revenue for the media channels. In view of these considerations, aspects of the present disclosure relate to authenticating the provenance or authenticity of accurate media rather than identifying fake media.

[0023] Aspects of the present disclosure relate to systems and methods that can be used to determine when media is a high-fidelity reproduction of original media from a trusted entity. As used herein, a trusted entity can be an individual, an organization (e.g., a news agency, a cable and / or local news organization, a newspaper, etc.), or a trusted device (e.g., a camera or a recorder that captured the original media). The ability to explicitly attribute using the systems and methods disclosed herein can have a significant impact on reducing the dissemination and / or impact of fake media. For example, when a user is browsing a website, if the browser overlays a "seal of authenticity" on a particular media segment (picture, video clip, audio clip, and voice recording), the user can be more confident that the media they are viewing is accurate and has not been modified. On a larger scale, society can begin to only trust media with this authentication seal, which can significantly reduce the negative social impact of fake media.

[0024] However, the authentication of the provenance of a particular segment of media is more difficult than prior art techniques for providing assurances to users accessing content via the Internet, such as website authentication users. Media files (e.g., JPEG pictures, MPEG videos, MP3 audio, etc.) contain metadata that, among other functions, can be used to identify the source of the media file. However, the authentication of the provenance of a media file cannot rely on the metadata because the metadata is easily modified. As such, there is no way to ensure that the metadata is preserved through the production path from the creation of the media using a device (e.g., a camera, a recorder, etc.) to the presentation of the media using a web browser or other application.

[0025] The process of determining the provenance of media is further complicated by the fact that there is no way to confirm that a particular media is identical to the original form of the source material. Media files are inevitably edited before the final version of the media is published to a website. Regardless, if the edits are "minor" (e.g., some cropping, re-compression, and re-sampling to reduce file size, etc. with good fidelity such that the final picture or video appears identical to the original picture or video to the human eye), the media file should be authenticated as an accurate representation of the source material. As such, despite the changes to the media file itself, the authentication of the characteristics of the media file and the accuracy of the media precludes the direct use of metadata fields or any form of binary file hash in order to authenticate the provenance of a particular media segment.

[0026] The aspects disclosed herein overcome the aforementioned challenges by using fragile watermarking. A variety of different techniques can be used to generate fragile watermarks. Those skilled in the art will understand that any such technique can be used in the systems and methods disclosed herein, provided that the fragile watermark provides the following characteristics. First, the techniques used to generate the fragile watermark enable verification of its existence by a detector operable to check for its presence and / or recover the key associated with it. Second, attackers should not be able to generate a valid fragile watermark because they have no access to the key and / or device used to generate it. Finally, parameters controlling the characteristics of the fragile watermark signal can be set such that any significant editing of the media will destroy the watermark. Minor editing, such as cropping, recompression, or high-fidelity resampling, should preserve the fragile watermark. Therefore, the aspects disclosed herein utilize fragile watermarking because media data typically undergoes several levels of editing during production. As long as the editing is mild, i.e., does not significantly alter the media content, the fragile watermark will be preserved. Thus, the aspects disclosed herein allow the editing entity to be published without being authenticated as a trusted source network. Instead, only the original source of a media file needs to be certified as trustworthy in order to determine the origin of any particular media file.

[0027] As an example, an exemplary fragile watermarking process for audio signals is provided. A fragile watermark can be created by inserting a low-level, noise-like signal into the audio data. This signal appears random but is actually controlled by a key. When using techniques such as spread spectrum watermarking, the resulting watermarked audio is indistinguishable to the human ear from the original audio. The presence of the watermark can be verified by a detector that checks for the presence of the fragile watermark. If the audio signal has been mildly edited, the detector should be able to verify the presence of the fragile watermark and thus provide an indication that the audio file is an accurate representation of the source material. However, if the detector cannot verify the presence of the fragile watermark, an indication can be generated that the audio file cannot be verified as an accurate representation of the original audio. Similar concepts can be applied to other media types such as images and videos.

[0028] Figure 1This is an exemplary high-level architecture 100 used to create media for source verification. A media capture device 102 is employed to capture original source media. Exemplary capture devices include cameras, recorders, smartphones, etc. Those skilled in the art will understand that aspects of this disclosure can be practiced using any type of device used to capture or create original content. In some aspects, the media capture device 102 may be associated with an entity 103. Entity 103 may be an individual, an organization, or, in some examples, the media capture device itself. Entity 103 may be a trusted entity. That is, entity 103 has been identified by the source service 106 as a trusted source of legitimate media. In the examples, entity 103 may be an individual (such as a journalist), an organization (such as a newsroom), or a trusted device (such as a security camera). The trusted entity 103 performs an entity verification process 104 to authenticate entity 103 using the source service 106. The entity verification process 104 verifies that entity 103 is a known entity and, in response, provides an entity identifier to the source service 106. Entity verification process 104 can verify entity 103 using a login / password interface, biometrics, or any other type of process known in the art for authenticating entities. In this example, entity verification process 104 can be performed by a trusted third-party server or the origin service 106 itself.

[0029] Source service 106 is operable to generate and detect fragile watermarks associated with media. In the example, source service 106 may be performed by a server, a distributed network (e.g., a cloud service network), or a local computing device. Source service 106 is operable to receive an entity identifier associated with entity 103 and, in response, provide a key associated with entity 103. In the example, a trusted entity may have one or more associated keys. The associated keys can be used to generate fragile watermarks for the trusted entity. Source service 106 identifies one or more keys associated with the entity based on the received entity identifier.

[0030] In one example, source service 106 is operable to provide one or more keys to watermark insertion process 110. In one example, watermark insertion process 110 may be performed by source service 106. However, in other respects, watermark insertion process 110 may be performed by a device associated with entity 103. Allowing a device associated with the entity to perform watermark insertion process 110 guarantees faster processing and less bandwidth consumption because the media content is not necessarily provided to source service 106. In yet another example, in addition to the watermark keys, source service 106 may also provide auxiliary data. In this example, auxiliary data may be data associated with entity 103, a device associated with that entity, or data associated with the media content. For example, auxiliary data may identify a specific entity, such as the location or department of the requesting entity (e.g., The New York Times London bureau). In some respects, auxiliary data may identify information about the device used to capture the original content, such as the device identifier, device location, etc. In yet another example, auxiliary data may be about the media content itself, such as the text, content description, etc. In yet another example, auxiliary data may include, among other things, the media's GUID, information about the entity, metadata about the media's characteristics, and so on.

[0031] The watermark insertion process 110 generates a fragile watermark for content received via the media capture device 102. In this example, the watermark insertion process may be performed by the media capture device 102 or by another device. The fragile watermark generation can be performed using one or more keys. The one or more keys used to generate the fragile watermark for the content may generally not prevent attacks by fake media vendors or attackers. Furthermore, fake media vendors or attackers can use the keys to watermark fake content. In some aspects, key generation is associated with a specific entity, creating a strong link between the entity's identity and the one or more watermark keys. The watermark insertion process 110 uses the keys received from the source service 106 to generate a fragile watermark for the media. In yet another example, auxiliary data received from the source service can also be embedded into the media via the watermark insertion process in a manner that allows the watermark detector to retrieve the embedded auxiliary data.

[0032] Figure 2This is an exemplary high-level architecture 200 for source verification of existing media. In some cases, such as web browsing, many users will access the same content on the same website, and therefore their browsers will receive the same media files associated with the media. This provides efficiency, allowing the source service to determine whether the source of a particular media file is known, without having to process the media file every time a user accesses it. In this case, the source service 204 can identify media content that has already been processed and provide the processing result to the requester without having to process the media again. For example, the source service 204 can create a cache of unique identifiers for media content previously processed by the source service 204, along with the processing result (e.g., source known, source unknown, indication of relevant ancillary data, etc.). For example, a table of verification for media files previously processed by the source service can be maintained to efficiently identify previously processed media files.

[0033] When a media file is received for verification, in some respects, the first step is to process the media using a pre-analysis process 202 to determine whether the source service 204 has previously verified the media. The pre-analysis process 202 can be executed on a client device, such as a web browser or media player, to request source determination of the media file. The pre-analysis process may include processing the media file to generate an identifier for the media. The processing performed during the pre-analysis process 202 can be the same process used by the source service 204 to generate a unique identifier for the media content file. For example, the pre-analysis process 202 may include generating a checksum, hash, or other type of unique identifier based on the media to be verified. The media identifier generated by the pre-analysis process 202 is provided to the source service 204. The source service 204 checks the watermark detection cache 206 to see if the media associated with the media identifier has been previously processed by the source service 204. If the media has been previously processed by the source service 204, the result of the previous processing, along with any relevant ancillary data, is returned to the requesting device. Otherwise, the source service returns an indication to the requesting device that the media file has not been previously processed.

[0034] If the media file has not been previously processed, the media to be verified is provided to the source service 204. As previously stated, the source service 204 may be executed by a remote server or on a local computing device. In some respects, the source service 204 may be executed as a cloud service on a distributed network to ensure that it is not easily vulnerable to attacks targeting a single device. Once the media is received, the source service 204 may perform a watermark detection process 208 to determine whether the media contains a watermark. As previously stated, aspects of this disclosure provide for inserting a fragile watermark into the media. That is, a severe editing process can destroy a fragile watermark. Thus, the detection of a fragile watermark by the source service 204 indicates that the media is an accurate representation of media generated by a trusted source or trusted entity. The watermark detection process 208 can also be used to identify any auxiliary data embedded in the media file.

[0035] As described above, once the media is processed, the source service 204 can generate a unique identifier for the media (e.g., a media checksum or hash). This identifier, along with the results of the watermark detection process (e.g., detected weak watermarks, undetected watermarks, found auxiliary data, etc.), can be stored in the watermark detection cache 206. The source service can also be operated to provide the results of the watermark detection process 208 to the requesting device. The requesting device can then perform a decision-making process based on the results returned by the source service to determine the action to be taken. Exemplary actions include notifying the user that the media originated from a known / unknown entity, providing an indicator to the user that the media source is known or unknown, processing and / or providing auxiliary data, etc.

[0036] Figure 3 This is an exemplary method 300 for providing a fragile watermark key to a requesting device. In one example, method 300 may be performed by an originating service, such as... Figure 1 The source service is 106. The process begins at operation 302, where a request to generate a fragile watermark for a media file is received. In this example, the request may be received from a user device (such as a device that captures media content, a device that edits media content, etc.). At operation 304, an entity identifier associated with the request is received. Those skilled in the art will understand that the entity identifier may be received along with the request to generate the fragile watermark, or it may be received in a separate communication. The entity identifier may identify an individual, organization, device, or any other known trusted source associated with the media.

[0037] In operation 306, the received entity identifier is verified to ensure that the entity is indeed the identity it claims. Those skilled in the art will understand that any type of authentication can be performed in operation 306. Furthermore, it can be determined whether the device sending the request to the originating service is associated with the entity indicated by the received entity identifier information. In other examples, the entity identifier may be received from a trusted source, such as a trusted third party capable of independently performing entity verification. In such cases, verifying the entity in operation 306 may not be necessary.

[0038] Once identity is verified (if necessary), the process proceeds to operation 308. In operation 308, one or more keys used to generate the fragile watermark are identified. As mentioned above, the fragile watermark key is associated with the requesting entity, such as the requesting individual or organization. This allows for the creation of a unique fragile watermark for each trusted entity registered in the system performing method 300, along with other benefits. Furthermore, more than one fragile watermark key can be associated with an entity. Thus, different entity keys can be used for different purposes. For example, an entity may have different keys associated with different projects, departments, locations, devices, etc. In this case, additional information received along with the request can be used, along with the received entity identity, to select the appropriate fragile watermark key(s). In operation 310, one or more selected fragile watermark keys are provided to the requesting device. The provided fragile watermark keys can then be used by the requesting device to generate a fragile watermark for the media. In some respects, auxiliary data can also be provided in operation 312, if feasible. Any provided auxiliary data can be embedded in the fragile watermark or embedded in the media file itself.

[0039] Figure 4 This is an exemplary method 400 for generating fragile watermarks for media content or media files. The process begins at operation 402, where media content or media files are received. Method 400 can be performed by a device that is creating or editing media for publication. For example, method 400 can be used by a device that captures media (e.g., a camera, smartphone, recorder) or by a device used to edit the original captured media. The type of media content received at operation 402 can be any type of digital media, including but not limited to images, videos, audio, electronic documents, etc. Those skilled in the art will understand that the aspects disclosed herein can be practiced with any type of content received, regardless of the type or format of the content.

[0040] At operation 404, the entity identifier is received. As described above, aspects of this disclosure provide the ability to associate content with any type of entity, such as an individual, organization, and / or device. This allows the origin to be associated with the content creator, a specific device, or both. At operation 406, the entity identifier is provided to the origin server along with a request for a fragile watermark key. In some examples, the request for the fragile watermark key may include additional information about the entity, about the media itself, about the device used to capture the media, etc. This additional information may be part of the ancillary information discussed earlier. In some aspects, the entity identifier may be provided along with additional verification information such as a password or biometrics to verify that the requester is indeed the entity it claims to be.

[0041] Alternatively, requests for the fragile watermark key and entity identifier can be provided in a separate message. In another approach, requests for the watermark and entity identifier can be provided to different parties. For example, the entity identifier can be provided to a trusted third-party service to verify the entity's identity. This verification can then be provided by the trusted third party as an originating service.

[0042] In response to the request sent in operation 406, the process continues to decision operation 408. In decision operation 408, in response to the request sent in operation 406, it is determined whether the fragile watermark key has been received. In some cases, the fragile watermark key may not be received, for example, if the key does not exist, the entity is not registered, or verification cannot be performed correctly due to a loss of network connection. If the key is not received, the process branch "No" to operation 410, where a notification that a fragile watermark cannot be added to the media is provided. This notification may include additional information for the user that identifies the steps required by the user to receive the fragile watermark key from the originating service. Such actions may include creating a trusted account and registering with the originating service, providing additional verification data, etc. Since no key has been provided to create the fragile watermark, method 400 may terminate in operation 410.

[0043] Returning to operation 408, if a fragile watermarking key is received, the process branch "Yes" proceeds to operation 412. In operation 412, it is determined whether any additional auxiliary data has been received along with the fragile watermarking key. As mentioned above, auxiliary data can be data associated with an entity, device, media, source service, etc. In some examples, auxiliary data may be generated by the source service and received at the requesting device. In other aspects not shown, auxiliary data may be generated by the requesting device performing method 400. If no auxiliary data is provided, the process branch "No" proceeds to operation 414. In operation 414, the received fragile watermarking key is used to process the media content or media file to generate a fragile watermark for the content or file. Depending on the type of key, the type of content, etc., different processing methods can be used to generate the fragile watermark. Those skilled in the art will understand that in operation 414, any type of operable process for generating a fragile watermark can be employed without departing from the scope of this disclosure.

[0044] The process then continues to operation 418, where media with a fragile watermark is provided. Providing media with a fragile watermark can include storing the media with a fragile watermark on a device, sending the media with a fragile watermark to different devices, publishing the media with a fragile watermark on a website or social network, sending the media with a fragile watermark to a broadcast service, etc.

[0045] Returning to operation 412, if the auxiliary data exists, the process branch "Yes" proceeds to operation 416. In operation 416, the media content is processed using the key with the fragile watermark and the auxiliary data. As mentioned above, any type of process can be used to generate a fragile watermark for the content using the fragile watermark key, as long as the requirements described above are met. Processing the media content with auxiliary data can include embedding the auxiliary data in the fragile watermark, or otherwise embedding or associating the auxiliary data with the media content. The process then continues to operation 418, where the media with the fragile watermark is provided along with the auxiliary data.

[0046] Figure 5This is an exemplary method 500 for determining the origin of a media file accessed by a device. The method begins at operation 502, where media to be verified is received. The media can be received via a web browser accessing media stored on a remote computer, via a media player, via a streaming service, via email, or via any other means of receiving media content. Once the content is received, the process continues to operation 504, where the content is pre-analyzed. Pre-analysis of the content may include generating a unique identifier based on the content. For example, a hash function may be applied to the media to generate a hash value that can identify the media. The content identifier generated in operation 504 is provided to the origin service in operation 506. As previously mentioned, multiple users can access the same media file. In this case, sending the media file to the origin service for analysis may be unnecessary if previous analysis has already been performed. By utilizing past analysis performed by the origin service, the generation and transmission of the content identifier can lead to a rapid and efficient determination of the origin of the media content or media file. Furthermore, sending the content identifier requires less transmission bandwidth than sending the actual media content or media file itself for analysis.

[0047] In decision operation 506, a check is performed to determine whether the provenance of the media file can be determined. In one aspect, this determination may be based on a message received from a provenance service in response to the provision of a content identifier. For example, if the provenance is known or unknown based on prior analysis by the provenance server, an indication of provenance determination may be received. Otherwise, a request for media content may be received. If the provenance is determined, the process branch "yes" to operation 510, and the provenance determination is provided to the user. In one aspect, providing the provenance determination may include generating or displaying (or causing to display) a message to the user indicating whether the provenance of the media is known or unknown. In one example, a graphical representation may be used to indicate the provenance determination. For example, a web browser may display the indication as part of a provenance-related interface (e.g., displaying a green check mark if known, a red X if unknown, an authentication stamp, etc.). In yet another example, if auxiliary data for the media content or media file is available, said auxiliary data may also be provided in operation 510.

[0048] Returning to operation 508, if the media file has not been previously analyzed by the source service, the process branch "No" to operation 512, and the media is sent to the source service for analysis. Sending media to the source service may include sending the entire media file, or in some cases, sending a portion of the media file. In response to sending the media file, the process continues to operation 514, where the analysis results are received, and then returns to operation 510, where the results determined by the source service are provided.

[0049] Figure 6This is an exemplary method 600 for analyzing media files to determine media origin. In this example, method 600 may be performed by an origination service, such as origination service 204. More specifically, one or more servers that are part of an origination service may perform method 600. The process begins at operation 602, where a content identifier is received. In some aspects, the content identifier may be a checksum, hash, or any other type of unique identifier based on the media content or media file to be verified. The process continues to operation 604, where it is determined whether the origin of the media content or media file identified by the content identifier is previously determined. This determination may be made by using the identifier to search for previous analysis results stored in a data storage device. If the media has been previously analyzed, the process branches to operation 606, where the results from the previous analysis are retrieved from the data storage device. Retrieving the results may include retrieving a determination about whether the origin of the media file is known or unknown. In operation 606, auxiliary data associated with the media may also be retrieved. The process continues to operation 608, where the source determination and auxiliary data (if any) are returned to the requesting device. Method 600 can then terminate, as no further analysis of the media content is required.

[0050] Returning to decision operation 604, if the media has not been previously analyzed, the process branch "No" to operation 610. In operation 610, a request for the media is sent to the device from which the content identifier was received. The process continues to operation 612, where the media is processed to determine whether a fragile watermark is present in the media. In one example, one or more candidate keys are identified to determine whether a fragile watermark associated with said key is present in the received media. One or more keys can be selected based on the claimed provenance to select a key associated with the claimed entity. That is, one or more keys associated with an entity that claims to have created the content can be selected. Those skilled in the art will understand that any number of processes for determining whether media includes a fragile watermark can be employed without departing from the scope of this disclosure.

[0051] In decision operation 614, the result of operation 612 is analyzed to determine whether a fragile watermark exists in the received media. If a fragile watermark exists, it is determined that the received media is an accurate representation of the media originally provided by a trusted source. The process branch "Yes" to operation 616, where verification is sent to the requesting device. Operation 616 may also include sending any auxiliary data associated with the fragile watermark or the media. The process then continues to operation 618, where a unique identifier is created for the media. As described above, the unique identifier can be created by applying a hash to the media content of the analyzed file, or generated using any other type of determination process or function on the media, which can be replicated by other devices using the same process on the media content or media file. This unique identifier is then used to store the results of the media analysis in a cache for future retrieval.

[0052] Returning to operation 614, if the fragile watermark is not identified, the process branch "No" to operation 620, where a message indicating that the origin of the media file cannot be determined is sent to the requesting device. The process then returns to operation 618, where the result of the origin determination is cached as previously stated.

[0053] Figure 7 This is yet another exemplary method 700 for determining the origin of media content or media files. Method 700 can be performed remotely by an origination service or locally on a device consuming the media content, provided that the device has access to a candidate key used to create a fragile watermark. The process begins at operation 702, where media content or media files are received. As previously mentioned, any type of media content or media file can be received at operation 702. At operation 704, the claimed origin of the media content or media file is determined. In one example, the claimed origin can be determined by analyzing the media content or media file. For example, metadata associated with the media can be analyzed to determine the claimed origin. Alternatively, at operation 702, an indication of the claimed origin can be received using the media itself.

[0054] In operation 706, one or more candidate keys are selected. These candidate keys can be selected based on the claimed media source. As previously stated, a trusted entity can be associated with one or more candidate keys. If the received media is claimed to originate from a specific trusted entity, in operation 706, one or more candidate keys associated with the claimed entity can be selected. The process then proceeds to operation 708, where the one or more selected candidate keys are used to process the media content to identify the fragile watermark. As previously stated, any type of process known in the art for creating fragile watermarks for digital media can be used for the aspects disclosed herein. Similarly, in operation 708, any type of process known in the art for detecting fragile watermarks can be used. One or more keys can be used with the selected process to verify the presence of the fragile watermark. If the fragile watermark is present, the origin of the media can be verified.

[0055] Once the provenance has been verified, the process proceeds to option 710. As previously mentioned, during the creation of the fragile watermark, auxiliary data may be associated with the fragile watermark or the media file itself. Once provenance is determined, in operation 710, any auxiliary data associated with the fragile watermark or media file is detected or extracted. Proceeding to operation 712, a content identifier is created. The content identifier is a unique identifier that can be created by applying a hash to the media content of the analyzed file or by generating a unique identifier using any other type of determination process or function on the media, which can be replicated by other devices using the same process on the media content or media file. Once the unique identifier is created, the process proceeds to operation 714, where the result of provenance verification in operation 714, along with any associated auxiliary data, is stored. As previously mentioned, associating the result with the fragile watermark detection process allows for efficient provenance determination when the same media is subsequently received. Instead of processing the media to identify the fragile watermark, the media's unique identifier can be used to look up previous processing results. The process proceeds to operation 716, where the provenance determination result and / or any auxiliary data associated with the media are returned.

[0056] Figure 8This is an exemplary method 800 for determining the origin of media. Method 800 can be performed by a client device such as a smartphone, tablet, personal computer, television, or any other type of device capable of requesting and / or playing media content. In the example, method 800 can be performed by a media application residing on the client device, such as a browser, streaming media application, media player, etc. In operation 802, a request to access and / or present media content is received. This request can be a user request to play a media file, navigate to media via a network, etc. Upon accessing the media, the process continues to operation 804, where a unique identifier is generated for the requested media content or media file. As previously described, the unique identifier can be created by applying a hash to the media content of the analyzed file, or generated by using any other type of determination process or function on the media, which can be replicated by other devices using the same process on the media content or media file.

[0057] The process continues to Operation 806, where a unique identifier is provided to the media origin service. In some respects, the media origin service may be a trusted third party that manages the keys used to create fragile watermarks for trusted entities. While origin services are typically described as being performed by a remote third party, those skilled in the art will understand that a media origin service may also reside and be performed locally on the device requesting access to the content. In response to providing the unique identifier to the media origin service, a response is received at Operation 808.

[0058] In operation 810, it is determined whether the source of the requested media content has been previously determined by the source service. In operation 808, this determination is made based on the response received from the source service. If a previous source determination has been made, the process branch "Yes" to operation 812, where an indication of the source determination is provided to the user. This indication can be used to notify the user whether the requested media is a true and accurate representation of media provided by a trusted entity. In the example, an application playing the media on the device can provide this indication to the user. This indication can be in the form of a graphical indication associated with the content, such as a stamp of authenticity, a green check mark indicating that the requested media is an accurate representation of media produced by a trusted entity, a red X indicating that the media is not an accurate representation of the original media or is not from the claimed media source, or is not from a trusted source, etc. The type of indicator can vary depending on the type of media application playing the requested content, the type of media, or both. Alternatively, the process of executing method 800 can prevent the media content from playing on the local device, instead of providing an indication that the source of the media content cannot be verified.

[0059] If the source of the requested media has not been determined previously, the process branches from operation 810 to "No" and proceeds to operation 814. In operation 814, the requested content is provided to the source service. In one example, in operation 814, the entire media content or the media file may be provided. Alternatively, in operation 814, only a portion of the media file may be provided to the source service. The process then continues to operation 816, where, in response to sending the requested media content to the source service, a response indicating the result of the source determination is received. The process then proceeds to operation 812, where the result of the source determination is provided to the user.

[0060] Figure 9 to Figure 1 The 0 and related descriptions provide a discussion of various operating environments in which the various aspects of this disclosure can be practiced. However, regarding Figure 7 to Figure 1 The devices and systems shown and discussed are for illustrative purposes and not as a limitation on the vast array of computing device configurations that can be used to practice the aspects of this disclosure described herein.

[0061] Figure 9 This is a block diagram illustrating the physical components (e.g., hardware) of a computing device 900, by which various aspects of this disclosure can be practiced. The computing device components described below may be applicable to the computing device described above. In a basic configuration, the computing device 900 may include at least one processing unit 902 and system memory 904. Depending on the configuration and type of the computing device, the system memory 904 may include, but is not limited to, volatile memory (e.g., random access memory), non-volatile memory (e.g., read-only memory), flash memory, or any combination of these memories.

[0062] System memory 904 may include operating system 905 and one or more program modules 906 adapted to run software application 920, such as one or more components supported by the system described herein.

[0063] Furthermore, embodiments of this disclosure can be practiced in conjunction with graphics libraries, other operating systems, or any other applications, and embodiments of this disclosure are not limited to any particular application or system. This basic configuration is... Figure 9 The components within the dashed line 908 are shown. The computing device 900 may have additional features or functions. For example, the computing device 900 may also include additional data storage devices (removable and / or non-removable), such as disks, optical discs, or magnetic tapes. Such additional storage devices... Figure 9 The image shows a removable storage device 909 and a non-removable storage device 910.

[0064] As described above, multiple program modules and data files can be stored in system memory 904. When executed on processing unit 902, program module 906 (e.g., application 920) can perform processes such as, but not limited to, those described herein, such as fragile watermark creation or detection 924 or source service 926. Other program modules that can be used according to aspects of this disclosure may include email and contact applications, word processing applications, spreadsheet applications, database applications, slideshow applications, drawing or computer-aided applications, etc.

[0065] Furthermore, embodiments of this disclosure can be implemented in circuits including discrete electronic components, in packages or integrated electronic chips containing logic gates, in circuits utilizing microprocessors, or on a single chip containing electronic components or a microprocessor. For example, embodiments of this disclosure can be practiced via a system-on-a-chip (SoC), wherein... Figure 9 Each or many of the components illustrated in the diagram can be integrated onto a single integrated circuit. Such a SoC device may include one or more processing units, graphics units, communication units, system virtualization units, and various application functions, all integrated (or “burned”) onto a chip substrate as a single integrated circuit. When operating via the SoC, the functionality described herein regarding the client switching protocol capability can be operated via dedicated logic on which other components of the computing device 900 are integrated onto a single integrated circuit (chip). Embodiments of this disclosure can also be practiced using other techniques capable of performing logical operations such as “AND,” “OR,” and “NOT,” including but not limited to mechanical, optical, fluid, and quantum technologies. Furthermore, embodiments of this disclosure can be implemented in a general-purpose computer or any other circuit or system.

[0066] The computing device 900 may also have one or more input devices 912, such as a keyboard, mouse, pen, voice or speech input device, touch or swipe input device, etc. It may also include output devices 914, such as a display, speaker, printer, etc. The devices mentioned above are examples, and other devices may be used. The computing device 900 may include one or more communication connections 916 that allow communication with other computing devices 950. Examples of suitable communication connections 916 include, but are not limited to, radio frequency (RF) transmitters, receivers, and / or transceiver circuitry; universal serial buses (USB), parallel and / or serial ports.

[0067] As used herein, the term computer-readable medium may include computer storage media. Computer storage media may include volatile and non-volatile, removable and non-removable media implemented using any method or technology for storing information, such as computer-readable instructions, data structures, or program modules. System memory 904, removable storage device 909, and non-removable storage device 910 are all examples of computer storage media (e.g., memory storage). Computer storage media may include random access memory (RAM), read-only memory (ROM), electrically erasable read-only memory (EEPROM), flash memory or other storage technologies, optical disc (CD-ROM), digital versatile disc (DVD) or other optical storage devices, magnetic tape cassettes, magnetic tape, disk storage devices or other magnetic storage devices, or any other article of art that can be used to store information and is accessible by computing device 900. Any such computer storage medium may be part of computing device 900. Computer storage media does not include carrier waves or other propagated or modulated data signals.

[0068] Communication media can be implemented from computer-readable instructions, data structures, program modules, or other data in modulated data signals (such as carrier waves or other transmission mechanisms), and include any information delivery medium. The term "modulated data signal" can describe a signal whose characteristics are set or altered in a manner that encodes information within it. By way of example and not limitation, communication media can include wired media such as wired networks or direct wired connections, and wireless media such as acoustic, radio frequency (RF), infrared, and other wireless media.

[0069] Figure 6 A and Figure 10B A mobile computing device 1000, such as a mobile phone, smartphone, wearable computer (e.g., smartwatch), tablet computer, laptop computer, etc., is shown that can be used to practice embodiments of the present disclosure. References Figure 10A This illustrates one aspect of a mobile computing device 1000 used to implement various aspects. In a basic configuration, the mobile computing device 1000 is a handheld computer with both input and output elements. The mobile computing device 1000 typically includes a display 1005 and one or more input buttons 1010 that allow users to input information into the mobile computing device 1000. The display 1005 of the mobile computing device 1000 can also be used as an input device (e.g., a touchscreen display).

[0070] If included, the optional side input element 1015 allows for more user input. The side input element 1015 can be a rotary switch, a button, or any other type of manual input element. Alternatively, the mobile computing device 1000 may include more or fewer input elements. For example, in some embodiments, the display 1005 may not be a touchscreen.

[0071] In yet another alternative embodiment, the mobile computing device 1000 is a portable telephone system such as a cellular phone. The mobile computing device 1000 may also include an optional keypad 1035. The optional keypad 1035 may be a physical keypad or a “soft” keypad generated on a touchscreen display.

[0072] In various embodiments, the output elements include a display 1005 for displaying a graphical user interface (GUI), a visual indicator 1020 (e.g., a light-emitting diode), and / or an audio transducer 1025 (e.g., a speaker). In some aspects, the mobile computing device 1000 incorporates a vibration transducer for providing haptic feedback to a user. In another aspect, the mobile computing device 1000 includes input and / or output ports such as audio input (e.g., a microphone jack), audio output (e.g., a headphone jack), and video output (e.g., an HDMI port) for sending signals to or receiving signals from external devices.

[0073] Figure 10B This is a block diagram illustrating the architecture of one aspect of a mobile computing device. Specifically, the mobile computing device 1000 can be combined with a system (e.g., architecture) 1002 to implement several aspects. In one embodiment, the system 1002 is implemented as a "smartphone" capable of running one or more applications (e.g., browser, email, calendar, contact manager, messaging client, game, and media client / player). In some aspects, the system 1002 is integrated as a computing device, such as an integrated personal digital assistant (PDA) and wireless phone.

[0074] One or more applications 1066 may be loaded into memory 1062 and run on or associated with operating system 1064. Examples of applications include telephone dialer programs, email programs, personal information management (PIM) programs, word processing programs, spreadsheet programs, internet browser programs, messaging programs, etc. System 1002 also includes a non-volatile storage area 1068 within memory 1062. The non-volatile storage area 1068 can be used to store persistent information that will not be lost if system 1002 is powered off. Applications 1066 may use information (such as emails or other messages used by email applications) and store it in the non-volatile storage area 1068. A synchronization application (not shown) also resides on system 1002 and is programmed to interact with a corresponding synchronization application residing on the host computer to keep the information stored in the non-volatile storage area 1068 synchronized with the corresponding information stored on the host computer. It should be understood that other applications can be loaded into memory 1062 and run on the mobile computing device 1000 described herein (e.g., search engine, extractor module, relevance ranking module, answer scoring module, etc.).

[0075] System 1002 has a power source 1070 that can be implemented as one or more batteries. Power source 1070 may also include an external power source, such as an AC adapter or power supply bracket for supplementing or recharging batteries.

[0076] System 1002 may also include a radio interface layer 1072 that performs communication functions such as transmitting and receiving radio frequencies. Radio interface layer 1072 facilitates wireless connectivity between system 1002 and the "external world" via a communications operator or service provider. Transmissions to and from radio interface layer 1072 are conducted under the control of operating system 1064. In other words, communications received by radio interface layer 1072 can be published to application 1066 via operating system 1064, and vice versa.

[0077] A visual indicator 1020 may be used to provide visual notifications, and / or an audio interface 1074 may be used to generate audible notifications via an audio transducer 1025. In the illustrated embodiment, the visual indicator 1020 is a light-emitting diode (LED), and the audio transducer 1025 is a speaker. These devices may be directly coupled to a power supply 1070 such that they remain on for a duration specified by the notification mechanism when activated, even if the processor 1060 and other components may be turned off to conserve battery power. The LED may be programmed to remain on indefinitely until the user takes action to indicate the device's power-on status. The audio interface 1074 is used to provide and receive audible signals from the user. For example, in addition to being coupled to the audio transducer 1025, the audio interface 1074 may also be coupled to a microphone to receive audible input, such as that which facilitates telephone conversations. According to embodiments of this disclosure, the microphone may also be used as an audio sensor to facilitate control of notifications, as described below. System 1002 may also include a video interface 1076, which enables the vehicle-mounted camera 1030 to record still images, video streams, etc.

[0078] The mobile computing device 1000 implementing system 1002 may have additional features or functions. For example, the mobile computing device 1000 may also include additional data storage devices (removable and / or non-removable), such as disks, optical discs, or magnetic tapes. Such additional storage devices... Figure 10B The non-volatile storage region 1068 is shown in the middle.

[0079] As described above, data / information generated or captured by mobile computing device 1000 and stored via system 1002 can be locally stored on mobile computing device 1000, or the data can be stored on any number of storage media accessible by the device via radio interface layer 1072 or via a wired connection between mobile computing device 1000 and a separate computing device associated with mobile computing device 1000 (e.g., a server computer in a distributed computing network such as the Internet). It should be understood that such data / information can be accessed via mobile computing device 1000, via radio interface layer 1072, or via a distributed computing network. Similarly, such data / information can be easily transferred between computing devices for storage and use using known data / information transfer and storage methods, including email and collaborative data / information sharing systems.

[0080] Figure 11One aspect of the architecture of a system for processing data received at a computing system from a remote source, such as a personal computer 1104, a tablet computing device 1106, or a mobile computing device 1108, as described above. A fragile watermarking application and / or media player (not shown) may reside on the personal computer 1104, tablet computing device 1106, or mobile computing device 1108. Content displayed on the server device 1102 may be stored in different communication channels or other storage types. For example, various documents may be stored using a directory service 1122, a portal website 1124, an email service 1126, an instant messaging storage 1128, or a social networking site 1130.

[0081] Server device 1102 can provide data to and from client computing devices such as personal computer 1104, tablet computing device 1106, and / or mobile computing device 1108 (e.g., smartphone) via network 1115. As an example, the aforementioned computer system can be embodied in personal computer 1104, tablet computing device 1106, and / or mobile computing device 1108 (e.g., smartphone). Origin service 1121 can reside on server device 1102. In addition to receiving graphics data that can be preprocessed at the graphics originating system or post-processed at the receiving computing system, any of these aspects of the computing device can obtain content from storage 1116.

[0082] Figure 12 An exemplary tablet computing device 1200 is shown that can perform one or more aspects disclosed herein. Furthermore, the aspects and functions described herein can operate on a distributed system (e.g., a cloud-based computing system), where application functions, memory, data storage and retrieval, and various processing functions can operate remotely to each other via a distributed computing network (such as the Internet or an intranet). Various types of user interfaces and information can be displayed via an in-vehicle computing device display or via a remote display unit associated with one or more computing devices. For example, various types of user interfaces and information can be displayed and interacted with on a wall, where various types of user interfaces and information are projected. Interaction with multiple computing systems on which embodiments of the invention can be practiced includes keystroke input, touchscreen input, voice or other audio input, gesture input, wherein the associated computing device is equipped with detection (e.g., camera) functions for capturing and interpreting user gestures to control the functions of the computing device, and so on.

[0083] As can be understood from the foregoing disclosure, one aspect of this technology relates to a method for providing a fragile watermark key. The method includes: receiving a request for a fragile watermark key, wherein the fragile watermark key is used to generate a fragile watermark on digital media content, the fragile watermark providing an indication of the source of the digital media content; identifying an entity associated with the request for the fragile watermark key, wherein the entity is a media content producer; identifying the fragile watermark key associated with the entity; and providing the fragile watermark key to the requesting device. In one example, the method further includes: receiving an entity identifier accompanying the request for the fragile watermark, wherein the entity associated with the request is identified using the entity identifier. In another example, the request identifies a claimed entity, and the method further includes: verifying the claimed entity; if the claimed entity is verified to be a trusted entity, receiving an entity identifier of the trusted entity. In another example, the entity identifier is used to identify the fragile watermark key. In yet another example, the entity is one of: a trusted individual; a trusted organization; or a trusted device. In yet another example, multiple fragile watermark keys are associated with the entity, and the method further includes: receiving additional information related to a specific entity that generated the content; and selecting one or more fragile watermark keys from the multiple fragile watermark keys based on the additional information.

[0084] On the other hand, the technology relates to a method for requesting the provenance of media content. The method includes: receiving a request for access to the media content at a media application; generating a content identifier for the media content; sending the content identifier to a provenance service; receiving a response indicating that the provenance of the media content has been determined in response to sending the request to the provenance service; and providing an indication of a known provenance of the media content if the provenance determination indicates that the media content originates from a trusted entity. In one example, the method further includes: sending the media content to the provenance service if the response indicates that the media content has not previously been analyzed by the provenance service. In another example, sending the media content involves sending a portion of the media content to the provenance service. In yet another example, the method further includes: receiving a response indicating the result of the provenance determination in response to sending the media content to the provenance service. In yet another example, the method further includes: providing a first indication that the media content originates from a trusted source if the provenance result of the media content is determined; and providing a second indication that the media content originates from an untrusted source if the provenance of the media content is not determined. In yet another example, the method further includes: blocking playback of the media content if the origin of the media content is not determined. In one example, generating a content identifier includes processing the media content using a deterministic function to generate the content identifier. In another example, the media content includes one of the following: a video file; an audio file; an image file; an electronic document; or streaming media content. In yet another example, the trusted entity includes one or more of the following: a trusted individual; a trusted organization; or a trusted device.

[0085] In another aspect, the technology relates to a method for determining the origin of media content. The method includes: receiving a unique identifier associated with the media content from a requester; determining whether the media content has been previously analyzed to determine its origin; if the media content has been previously analyzed, providing the requester with the results of the previous analysis; and if the media content has not been previously analyzed: sending a request for the media content to the requester; receiving the media content; processing the media content to determine whether it includes a fragile watermark associated with a trusted source; if the media content includes the fragile watermark, providing the requester with origin verification; and if the media content does not include the fragile watermark, providing the requester with an indication that the origin of the media file cannot be determined. In one example, providing the origin verification to the requester further includes: providing the requester with auxiliary data associated with the fragile watermark. In another example, the auxiliary data includes at least one of the following: information about a trusted source; a device identifier for a device used to capture the media content; a globally unique identifier for the media content; or the text of the media content. In another example, the method further includes: generating a unique identifier for the media content upon completion of processing of the media content; and caching the result of the processing using the unique identifier. In yet another example, providing the result of the previous analysis further includes: providing auxiliary data previously identified as associated with the fragile watermark.

[0086] The foregoing references to block diagrams and / or operational illustrations of methods, systems, and computer program products according to various aspects of this disclosure have described aspects of this disclosure. The functions / actions mentioned in the various blocks may occur in a sequence not shown in any flowchart. For example, two blocks shown successively may be executed substantially concurrently, or the blocks may sometimes be executed in reverse order depending on the functions / actions involved.

[0087] The descriptions and illustrations of one or more aspects provided in this application are not intended to limit or restrict the scope of the invention in any way. The aspects, examples, and details provided in this application are considered sufficient to convey ownership and enable others to make and use the best mode of the claimed disclosure. The claimed disclosure should not be construed as limited to any aspect, example, or detail provided in this application. Whether shown and described in combination or individually, various features (structures and methods) are intended to be selectively included or omitted to produce embodiments having a particular set of features. Given the descriptions and illustrations provided in this application, those skilled in the art will envision variations, modifications, and alternatives falling within the spirit of the broader aspects of the general inventive concept embodied in this application without departing from the broader scope of the claimed disclosure.

Claims

1. A method for providing a fragile watermark key, the method comprising: Receive a request for multiple fragile watermarking keys, wherein the multiple fragile watermarking keys are used to generate a fragile watermark on digital media content, the fragile watermark providing an indication of the source of the digital media content; Identify the entity associated with the request for the plurality of fragile watermark keys, wherein the entity is a media content producer and has an associated entity identifier, such that the associated entity identifier is provided to the originating server. Based on the entity identifier, identify multiple fragile watermark keys and auxiliary data associated with the entity; as well as Provide the requesting device with the multiple fragile watermark keys.

2. The method according to claim 1, further comprising: Receive the entity identifier accompanying the request for the fragile watermark, wherein the entity associated with the request is identified using the entity identifier.

3. The method of claim 1, wherein the request identifier claims an entity, the method further comprising: Verify the entity claimed; If the claimed entity is verified and determined to be a trusted entity, the method further includes: receiving the entity identifier for the trusted entity.

4. The method of claim 1, wherein the entity is one of the following: Trustworthy individuals; Trusted organization; or Trusted device.

5. The method of claim 1, wherein a plurality of fragile watermark keys are associated with the entity, the method further comprising: Receive additional information related to the specific entity that generated the content; as well as Based on the additional information, one or more fragile watermark keys are selected from the plurality of fragile watermark keys.

6. A method for requesting the source of media content, the method comprising: Receive a request to access the media content at the media application; Generate a content identifier for the media content, wherein the content identifier is a unique identifier generated based on the media content; Send the content identifier to the source service; In response to sending the request to the source service, receive a response indicating the source determination for the media content; as well as If the provenance determination indicates that the media content originates from a trusted entity, an indication of a known provenance for the media content is provided, wherein the trusted entity has multiple associated keys, and The associated keys and auxiliary data are used to generate a fragile watermark for the trusted entity.

7. The method according to claim 6, further comprising: If the response indicates that the media content has not been previously analyzed by the source service, the media content is sent to the source service.

8. The method of claim 7, wherein sending the media content specifies sending a portion of the media content to the source service.

9. The method according to claim 8, further comprising: In response to sending the media content to the source service, a response indicating the result of source determination is received.

10. The method of claim 9, further comprising: If the source of the media content is determined, a first indication is provided that the media content originates from a trusted source; as well as If the source of the media is not determined, a second indication is provided that the media comes from an unreliable source.

11. The method of claim 9, further comprising: If the source of the media is not determined, the playback of the media content shall be blocked.

12. The method of claim 6, wherein generating the content identifier comprises: The media content is processed using a deterministic function to generate the content identifier.

13. The method of claim 6, wherein the media content comprises one of the following: Video file; Audio files; Image files; Electronic documents; or Streaming content.

14. The method of claim 6, wherein the trusted entity comprises one or more of the following: Trustworthy individuals; Trusted organization; Or a trusted device.

15. A method for determining the source of media content, the method comprising: Receive a unique identifier associated with the media content from the requester, wherein the unique identifier is generated based on the media content; Determine whether the media content has been previously analyzed to determine its source; If the media content has been previously analyzed, provide the requester with the results of the previous analysis; as well as If the media content has not been previously analyzed: Send a request for the media content to the requester; Receive the media content; The media content is processed to determine whether the media content includes a fragile watermark associated with a trusted source, wherein the trusted source has one or more associated keys and the one or more associated keys are used to generate a fragile watermark for the trusted entity; If the media content includes the fragile watermark, provide the requester with source verification; as well as If the media content does not include the fragile watermark, provide the requester with an indication that the source of the media content cannot be determined.

16. The method of claim 15, wherein providing the source verification to the requester further comprises: Provide the requester with auxiliary data associated with the fragile watermark.

17. The method of claim 16, wherein the auxiliary data comprises at least one of the following: Information regarding the aforementioned trusted source; A device identifier for the device used to capture the media content; The globally unique identifier of the media content; or The text of the media content.

18. The method of claim 15, further comprising: When the processing of the media content is completed, a unique identifier for the media content is generated; as well as The result of the processing is cached using the unique identifier.

19. The method of claim 15, wherein providing the result of the prior analysis further comprises: Provide auxiliary data previously identified as being associated with the fragile watermark.

Citation Information

Patent Citations

  • Outsourced database enquiry and verification method based on fragile watermark

    CN101236587A

  • Non-repudiation watermarking protection based on public and private keys

    US20030204729A1

  • License-based cryptographic technique, particularly suited for use in a digital rights management system, for controlling access and use of bore resistant software objects in a client computer

    US20050039022A1

  • Secure and efficient content screening in a networked environment

    US20120072731A1

  • Increased security using dynamic watermarking

    US20170053105A1