Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 12 additions & 0 deletions docs/getting-started/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -62,6 +62,10 @@ The CAI uses _cryptographic asset hashing_ to provide verifiable, tamper-evident

## Introduction to public key infrastructure

:::tip
For a video introduction to certificates and key management in the C2PA ecosystem, see [A closer look at private keys and certificates](https://learn.contentauthenticity.org/private-keys-and-certificates) from the Content Credentials Foundations course.
:::

For authentication, C2PA uses _public key infrastructure_ (PKI) technology, a widely used international standard: The same technology used to secure websites using HTTPS, to secure email using S/MIME, and for many other digital security purposes. C2PA uses the international [X.509](https://en.wikipedia.org/wiki/X.509) standard, the most common format for public key certificates.

A signed digital certificate verifies the authenticity of an entity, such as a server, a client, or an application. You typically purchase a certificate from a third-party certificate authority. A certificate can contain the following information to verify the identity of an entity:
Expand Down Expand Up @@ -128,6 +132,14 @@ Currently, Adobe Content Credentials Cloud (ACCC) is only available to Adobe too

## Displaying manifest data

:::tip
For video walkthroughs on displaying Content Credentials, see the following from the Content Credentials Foundations course:

- [Progressive disclosure of Content Credentials](https://learn.contentauthenticity.org/progressive-disclosure-of-content-credentials)
- [Reading and validating C2PA data with Javascript in the browser](https://learn.contentauthenticity.org/reading-and-validating-content-credentials)
- [Formatting C2PA data for L1 - L3 disclosures](https://learn.contentauthenticity.org/formatting-c2pa-data-for-display)
:::

The manifest is only useful to end users if it can be displayed meaningfully in a user interface. How a UI does that is of course up to the designer, but because the full set of manifest data for an asset can be very complex, there are four recommended _levels of disclosure_:

- **Level 1**: Indicates that manifest data is present and whether it has been validated.
Expand Down
7 changes: 7 additions & 0 deletions docs/js-sdk/js-landing.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,13 @@ id: js-landing
title: JavaScript library
---

:::tip
For video walkthroughs on using the JavaScript SDK, see the following from the Content Credentials Foundations course:

- [Reading and validating C2PA data with Javascript in the browser](https://learn.contentauthenticity.org/reading-and-validating-content-credentials)
- [Formatting C2PA data for L1 - L3 disclosures](https://learn.contentauthenticity.org/formatting-c2pa-data-for-display)
:::

import Readme from '../c2pa-js/readme.md';

<Readme components={{ h1: () => null }} />
4 changes: 4 additions & 0 deletions docs/manifest/reading/reading-cawg-id.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,10 @@ id: reading-cawg-id
title: Reading CAWG identity assertions
---

:::tip
For a video walkthrough of adding a CAWG identity assertion when publishing an image, see [Signing an image at publish with a CAWG identity assertion](https://learn.contentauthenticity.org/publish-with-a-cawg-identity-assertion) from the Content Credentials Foundations course.
:::

The [Creator Assertions Working Group (CAWG)](https://cawg.io/) identity assertion enables a credential holder to prove control over a digital identity and to use that identity to document a content creator’s role(s) in a C2PA asset’s lifecycle.

The SDK can read and validate CAWG identity assertions provided:
Expand Down
4 changes: 4 additions & 0 deletions docs/manifest/reading/reading.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,10 @@ id: reading-index
title: Reading and validating manifest data
---

:::tip
For a video walkthrough of reading and validating Content Credentials in a web browser, see [Reading and validating C2PA data with Javascript in the browser](https://learn.contentauthenticity.org/reading-and-validating-content-credentials) from the Content Credentials Foundations course.
:::

Use a [Reader](manifest/json-ref/reader-ref.mdx) structure to read and validate manifest data. The Rust library and other language libraries provide methods and objects for working with this structure.

- [Reading ingredients](ingredients-reading.md)
Expand Down
4 changes: 4 additions & 0 deletions docs/manifest/writing/assertions-actions.md
Original file line number Diff line number Diff line change
Expand Up @@ -293,6 +293,10 @@ For the complete list of standard actions, see the [C2PA Technical Specification

### Digital source type

:::tip
For a video walkthrough of signing an asset at creation with a digital source type, see [Signing an image at creation indicating its origin type](https://learn.contentauthenticity.org/signing-an-image-at-creation) from the Content Credentials Foundations course.
:::

Use the `digitalSourceType` property to specify how an asset was created or modified, for example "digital capture", "digitized from negative," or "trained algorithmic media."

The value of `digitalSourceType` is one of the URLs specified by the International Press Telecommunications Council (IPTC) [NewsCodes Digital Source Type scheme](https://cv.iptc.org/newscodes/digitalsourcetype/) of the form `http://cv.iptc.org/newscodes/digitalsourcetype/<CODE>`, where `<CODE>` is one of the codes shown in the following table.
Expand Down
4 changes: 4 additions & 0 deletions docs/manifest/writing/ingredients.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,10 @@ title: Writing ingredients

## Overview

:::tip
For a video walkthrough of signing an edited image and preserving its provenance chain, see [Signing an edited image and maintaining its provenance](https://learn.contentauthenticity.org/signing-an-edited-image) from the Content Credentials Foundations course.
:::

Digital assets are often not created entirely from scratch, but instead created from one or more existing assets, for example placing an image into a layer in Photoshop. Such constituent assets are called _ingredients_.

[Old manifests](../reading/legacy.md) may contain deprecated v1 and v2 ingredients, but applications should only write v3 ingredients.
Expand Down
4 changes: 3 additions & 1 deletion docs/signing/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,9 @@ title: Signing and certificates
---

:::tip
Be sure to read [Getting started](getting-started/index.mdx#signing-and-certificates) for some basic background on public-key infrastructure (PKI) technology, certificates, and signing manifests.
Be sure to read [Getting started](getting-started/index.mdx#signing-and-certificates) for some basic background on public-key infrastructure (PKI) technology, certificates, and signing manifests.

For a video walkthrough, see [A closer look at private keys and certificates](https://learn.contentauthenticity.org/private-keys-and-certificates) from the Content Credentials Foundations course.
:::

As you're developing an application that uses the CAI SDK, there are three ways to sign manifest claims, depending on where you are in your development process:
Expand Down
Loading