Skip to content
Merged
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
2 changes: 1 addition & 1 deletion docs/community.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ All the open-source CAI code is hosted in GitHub in the [CAI GitHub organization
- **JavaScript library**: [c2pa-web](https://github.com/contentauth/c2pa-web)
- **Python library**: [c2pa-python](https://github.com/contentauth/c2pa-python)
- **Node.js library**: [c2pa-node-v2](https://github.com/contentauth/c2pa-node-v2)
- **C++ library**: [c2pa-c](https://github.com/contentauth/c2pa-c)
- **C++ library**: [c2pa-cpp](https://github.com/contentauth/c2pa-cpp)

If you think you've found a bug or want to request a feature, please open an issue in the appropriate repository.

Expand Down
2 changes: 1 addition & 1 deletion docs/getting-started/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -99,7 +99,7 @@ The _C2PA trust list_ is a curated list of certification authorities (CAs) that

Conforming validator products such as the [Inspect tool on Adobe Content Authenticity (Beta)](https://inspect.cr) use the C2PA trust list to determine whether a Content Credential was issued using a certificate that can be traced back to a CA on the C2PA trust list.

The [Verify tool](https://verify.contentauthenticity.org) uses [the interim trust list](../conformance/trust-lists.mdx#interim-trust-list) to determine which certificates are considered valid. Verify will be updated to use the official [C2PA trust list](conformance/index.mdx#c2pa-trust-lists).
The [Verify tool](https://verify.contentauthenticity.org) uses both the [the interim trust list](../conformance/trust-lists.mdx#interim-trust-list) and the official [C2PA trust list](conformance/trust-lists.mdx#c2pa-trust-list) to determine which certificates are considered valid and indicates which trust list was used.

## Identity

Expand Down
2 changes: 1 addition & 1 deletion docs/introduction.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ The CAI open-source SDK consist of:
- Attach a manifest data to an asset.
- Add a manifest to to the associated manifest store if the asset already has an associated manifest data.
- [**JavaScript library**](c2pa-js/readme.md) that enables web pages to to read, validate, create, and sign manifest data, and embed it in supported asset files using client JavaScript. Use it to add user interface elements to your website that display manifest data while following the [C2PA user experience recommendations](https://c2pa.org/specifications/specifications/1.0/ux/UX_Recommendations.html).
- **[C/C++](c2pa-cpp/readme.md), [Python](c2pa-python/readme.md), [Node.js](c2pa-node/readme.md) libraries** that enable applications to read and validate manifest data, create and sign manifest data, and embed it supported asset files.
- **[C/C++](c2pa-cpp/readme.md), [Python](c2pa-python/readme.md), [Node.js](c2pa-node-v2/readme.md) libraries** that enable applications to read and validate manifest data, create and sign manifest data, and embed it supported asset files.
- [**Mobile libraries**](mobile.md) that enable mobile applications for iOS and Android to to read and generate manifest data.
- [**The Rust library**](rust-sdk/readme.md) that generates the other language bindings and can also be used directly to read and generate manifest data. The Rust library is the fundamental system underlying everything else.

Expand Down
2 changes: 1 addition & 1 deletion docs/manifest/writing/assertions-actions.md
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,7 @@ Content bindings are standard assertions such as `c2pa.hash.boxes` and `c2pa.has
The CAI SDK writes content bindings assertions, so normally you don't need to write them, just read them.
:::

For example, the `c2pa.hash.data` assertion shown in the [detailed manifest example](../examples.mdx#detailed-manifest) specifies an exclusion hash:
For example, the `c2pa.hash.data` assertion shown in the example below specifies an exclusion hash:

```json
"assertions": [
Expand Down
2 changes: 1 addition & 1 deletion docs/nodejs.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ custom_edit_path: c2pa-node-v2/edit/main/README.md
import Readme from './c2pa-node-v2/readme.md';

:::note
[The old c2pa-node library](c2pa-node/readme.md) is still available, but it's deprecated and will no longer be updated or supported. Move to the new `c2pa-node-v2` library as soon as possible!
The old [c2pa-node library](c2pa-node/readme.md) is still available, but it's deprecated and will no longer be updated or supported. Move to the new `c2pa-node-v2` library as soon as possible!
:::

<Readme components={{ h1: () => null }} />
34 changes: 0 additions & 34 deletions docs/roadmap.mdx

This file was deleted.

2 changes: 1 addition & 1 deletion docs/signing/local-signing.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ Trust lists connect the end-entity certificate that signed a manifest back to th

The simplest way to add a C2PA manifest to an asset file and sign it is by using C2PA Tool (`c2patool`). You can run C2PA Tool manually from the command line (for example, during development) and more generally from any executable program that can call out to the shell.

Similarly, using the Rust SDK, you can [add a manifest to an asset file](https://docs.rs/c2pa/latest/c2pa/#example-adding-a-manifest-to-a-file), referencing the certificate and private key file. The [Node.js](../c2pa-node), [Python](../c2pa-python), and [C++/C](../c2pa-c) libraries can also add and sign a manifest.
Similarly, using the Rust SDK, you can [add a manifest to an asset file](https://docs.rs/c2pa/latest/c2pa/#example-adding-a-manifest-to-a-file), referencing the certificate and private key file. The [Node.js](../c2pa-node), [Python](../c2pa-python), and [C++](../c2pa-cpp) libraries can also add and sign a manifest.

:::warning Warning
Accessing a private key and certificate directly from the file system is fine during development, but doing so in production is not secure. Instead use a Key Management Service (KMS) or a hardware security module (HSM) to access the certificate and key; For more information, see [Using a certificate in production](prod-cert.mdx).
Expand Down
4 changes: 2 additions & 2 deletions docs/signing/test-certs.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,14 +7,14 @@ The CAI SDK does not allow you to use a self-signed certificate to sign a manife

For initial development and testing, the SDK provides example *test certificates* and private keys:
- The [Rust library `sdk/tests/fixtures/certs/` folder](https://github.com/contentauth/c2pa-rs/tree/main/sdk/tests/fixtures/certs) contains certificates and signing keys for many of the supported [signature types](get-cert.md#signature-types).
- The Node.js, Python, and C++ libraries provide a subset of test certificates in each repository's `tests/fixtures` folder. The Node.js library even provides a [`CreateTestSigner()`](https://github.com/contentauth/c2pa-node/blob/main/docs/README.md#createtestsigner) convenience function to create a local signer instance using the test certificate.
- The Node.js, Python, and C++ libraries provide a subset of test certificates in each repository's `tests/fixtures` folder.

:::warning Warning
While these test credentials are useful during development, you must [get your own certificate](get-cert.md) and use your own private key for production deployment.
:::

Although not recommended due to complexity and difficulty, you can create your own certificates for development and testing. Follow the requirements in the C2PA Technical Specification [X.509 Certificates](https://c2pa.org/specifications/specifications/2.1/specs/C2PA_Specification.html#x509_certificates) and [Digital Signatures](https://c2pa.org/specifications/specifications/2.1/specs/C2PA_Specification.html#_digital_signatures) sections.

For manifest claims signed with one of the test certificates, the [Inspect tool on Adobe Content Authenticity (Beta)](https://inspect.cr) will display the message "The Content Credential issuer couldn't be recognized." See [Using ACA Inspect](../getting-started/aca-inspect.mdx#signing-information) for more information.
For manifest claims signed with one of the test certificates, the [Inspect tool on Adobe Content Authenticity (Beta)](https://inspect.cr) will display the message "The Content Credential issuer couldn't be recognized." See [Using ACA Inspect](../getting-started/aca-inspect.mdx#title-and-signing-information) for more information.


3 changes: 3 additions & 0 deletions docusaurus.config.js
Original file line number Diff line number Diff line change
Expand Up @@ -124,6 +124,9 @@ async function createConfig() {
baseUrl: '/',
staticDirectories: ['static'],
onBrokenLinks: 'warn',
// Schema reference pages (docs/manifest/json-ref/*-ref.mdx) render headings and
// ids inside SchemaReference from JSON Schema at runtime, so build-time anchor
// extraction cannot see those hashes. Links to #fragments on those pages are valid.
onBrokenAnchors: 'log',
markdown: {
mermaid: true,
Expand Down
5 changes: 0 additions & 5 deletions remote-docs.json
Original file line number Diff line number Diff line change
Expand Up @@ -405,11 +405,6 @@
},

{ "_comment": "Node.js library" },
{
"repo": "contentauth/c2pa-node",
"path": "README.md",
"dest": "docs/c2pa-node/readme.md"
},
{
"repo": "contentauth/c2pa-node-v2",
"path": "README.md",
Expand Down
Loading