Numbers Loading Icon

Use no-code tools to create and label AI-generated content with C2PA watermark.

Posted in:

Tools

Overview

OpenAI’s recent C2PA and DALL-E 3 integration announcement represents a growing prioritization for content provenance. C2PA (Coalition for Content Provenance and Authenticity) is an open standard that advocates for digital media to have embedded metadata for verifying its origin and other related information. As one of the leading players of the generative AI space, OpenAI's commitment to adopting the latest metadata standards shifts the focus towards responsible AI and can be a catalyst for other AI platforms to follow suit.

Responsible AI is a topic of discussion because of the concerning narratives surrounding generative AI. Since its introduction, many have expressed concerns surrounding the blurring boundaries between human and AI creations. Strong pushback from creator communities stem from their works being used without their consent in AI training models. All of these issues can be managed if there was a robust way of verifying digital content. Enter C2PA’s embedded metadata.

Effectively integrating C2PA into existing systems may present challenges, particularly in terms of technical aspects, resources, and adaptation. Fortunately, Capture powered by Numbers Protocol is an accessible, easy-to-use C2PA toolkits specifically designed to alleviate these technical challenges. By utilizing this solution, generative AI companies can seamlessly integrate C2PA standards into their operations without the need to invest heavily in additional resources or infrastructure. If you are interested, read further.

Contents

  1. No-Code Generative AI Recap
  2. Label AI-Generated Content
  3. Acquiring the C2PA Injected Generative AI Image
  4. Verifying C2PA contents on the C2PA verification site
  5. Creating robust verification in combination with Numbers Protocol

Prerequisites

This “How To” leverages Instill AI’s AI platform and the Capture solution powered by Numbers Protocol to construct the traceable generative AI pipeline. In order to prevent this tutorial from being too long, there will be a small section recapping how this is done as is already a step by step tutorial on how to set up the AI pipeline. Details regarding how to create the necessary accounts and acquire authorization tokens can be found here.

No-Code Generative AI Recap

Instill AI is a no/low code tool that allows us to easily access and create generative AI pipelines using different AI models such as Stable Diffusion or the latest Llama 3 released by Meta. As an added benefit, Numbers Protocol’s Blockchain Provenance solution has been integrated as the sole provenance connector. To construct a traceable text-to-image generative AI pipeline we will navigate to Instill’s pipeline constructor and build the pipeline in the following manner:

Configure your pipeline like shown above. Text-to-Image takes in text input which is fed into Stability AI to output an Image. This Image is stored along with metadata inputs onto the Numbers blockchain. As a final output we are interested in seeing our final image and the metadata stored on-chain.

For a full step-by-step breakdown of how to construct this pipeline, please refer to this earlier tutorial. While this tutorial opted to use the Instill AI Model, we can easily select another AI model from the AI connector list.

Label AI-generated content

Instill AI pipeline builder doubles as an interactive playground allowing us to test the AI pipeline without the need for API requests. Simply fill in the fields in the start operator and click “Run”.

Successful text-to-image creation and image registration to Numbers Protocol blockchain. Registered images with blockchain records are called “Asset”. Output includes final_image (see image) and asset-profile link containing on-chain records.

For a full breakdown of how to navigate the asset profile and view the on-chain records, please refer to this section titled “Viewing Asset Profile” in this earlier tutorial.

Acquiring the C2PA Injected Generative AI Image

Capture Dashboard powered by Numbers Protocol provides a simple way to download the C2PA image. For more detailed information on how this is done, please reference the section titled “Getting C2PA with Capture Dashboard” in this article

Alternatively, if you would like to use Capture API to acquire the C2PA injected image, here are the instructions.

Having successfully registered the generative AI image to Numbers Blockchain, we can acquire the C2PA injected file by using the Capture API, specifically the Download asset with C2PA injection API action. Using your preferred API platform or sending a curl request we can send the following POST request:

POST https://api.numbersprotocol.io/api/v3/assets/{cid}/c2pa/

For this API call we will need to populate our Header with our Authorization Token:

Authorization Token <Capture Token>

Replacing the {cid} parameter with the nid url parameter in the asset profile link from the previous step we get the following:

Navigating to the url we can see the C2PA injected image.

Verifying C2PA contents on the C2PA verification site

The beauty of C2PA is the image itself appears unchanged, but in reality embedded in the media itself is metadata. At the same time it is challenging to tell if the image we just downloaded is a C2PA image. Luckily, C2PA has provided a verification site we can leverage to check our images contents.

By navigating to https://contentcredentials.org/verify we can upload our C2PA image and verify its contents.

The left panel contains a summary of the embedded information. See below for a full view of the embedded C2PA contents:

Creating robust verification in combination with Numbers Protocol

While embedding C2PA metadata into digital media is a great way to make assets verifiable, the information is basic in nature. Numbers Protocol builds on top of C2PA to offer a more comprehensive provenance solution.

Upload C2PA photo onto C2PA verify site. Acquire the Nid from the left hand column.

The goal of Numbers Protocol is to create traceable and verifiable digital media in an open and decentralized manner. It achieves this by indexing media files with a Numbers ID (Nid) and storing associated provenance records on the Numbers Blockchain. With this design, a file that is registered with Numbers Protocol can always be found and its full detailed records are immutable. Let us see how it works:

Numbers Protocol builds on top of C2PA to offer the most comprehensive and reliable provenance solution. The above verification flow takes us from the C2PA verification site, to acquiring Nid, to querying on Numbers Network, to viewing on-chain records via asset profile.

Navigate to Numbers Verify and input in Nid into the search bar. Click Search.

Numbers Verify will display results. The Nid indexes the files registered to Numbers Protocol and ensures we can find associated provenance records. We can click to view its asset profile to view its comprehensive provenance records.

The asset profile contains a comprehensive summary of the registered media file. To view the on-chain records we can navigate to the commit table and click on the Metadata link.

The Metadata file of the content is recorded on the blockchain following ERC-7053 standard. By viewing the Metadata we can see the comprehensive provenance records of this asset. Important fields include digitalSourceType : “trainedAlgorithmicMedia” indicating it is an AI-generated media, generatedBy : “instill_model-stable_diffusion_xl” indicating the AI model used was instill stable diffusion model and generatedThrough: “https://instill.tech” telling us the software application used to create the media.

The amount of detail within the Metadata file can go even further. If we view the instillMetadata field we can see the exact construction of the AI pipeline. In the start operator we know that a prompt, license name, license document and creator was fed into the pipeline.

We can see that the instill model and numbers connector were used and what data was fed into each connector

We can also see that this AI pipeline outputs a final image and an asset profile link.

Verifying C2PA-lost AI content?

As OpenAI stated: “Metadata like C2PA is not a silver bullet to address issues of provenance. It can easily be removed either accidentally or intentionally.” Embedding C2PA metadata into digital media is a great way to make assets verifiable, but the content may be altered, compressed or cropped while sharing on the social media. To address this challenge, Numbers Verify Engine can help match the content to the registered pool. The AI engine behind will find the matched content to proceed the verification. We will cover this in another article.

Final Remarks

C2PA is an attractive content provenance solution for generative AI and digital media that has been adopted by OpenAI. Given the recent changes in AI regulation, which require that all AI-generated images be labeled or watermarked, and considering that technological advancement often outpaces regulation, we aim to assist generative AI companies with the necessary tools suitable for compliance. As demonstrated in this tutorial, Numbers Protocol elevates provenance to the next level by applying the C2PA solution alongside the immutable nature of blockchain technology.

If you would like to consult us further on this topic, or simply want to learn more about our solution, feel free to reach out to us.

Get Notified






You're signed up! Watch you inbox for updates.
Oops! Something went wrong while submitting the form.