| // Copyright 2026 Google LLC |
| // |
| // Licensed under the Apache License, Version 2.0 (the "License"); |
| // you may not use this file except in compliance with the License. |
| // You may obtain a copy of the License at |
| // |
| // https://www.apache.org/licenses/LICENSE-2.0 |
| // |
| // Unless required by applicable law or agreed to in writing, software |
| // distributed under the License is distributed on an "AS IS" BASIS, |
| // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| // See the License for the specific language governing permissions and |
| // limitations under the License. |
| // |
| |
| edition = "2024"; |
| |
| package credentio; |
| |
| import "proto/actions_assertion.proto"; |
| import "proto/ai_disclosure_assertion.proto"; |
| import "proto/bmff_based_hash_assertion.proto"; |
| import "proto/boxes_hash_assertion.proto"; |
| import "proto/collection_data_hash_assertion.proto"; |
| import "proto/data_hash_assertion.proto"; |
| import "proto/environmental_sustainability_assertion.proto"; |
| import "proto/ingredient_assertion.proto"; |
| import "proto/metadata_assertion.proto"; |
| import "proto/multi_asset_hash_assertion.proto"; |
| import "proto/redacted_assertion.proto"; |
| import "proto/repository_receipt_assertion.proto"; |
| import "proto/soft_binding_assertion.proto"; |
| import "proto/thumbnail_assertion.proto"; |
| |
| // A standard assertion used by C2PA implementations about when, where and how |
| // an asset or an ingredient of a composed asset was originated or transformed. |
| // |
| // See |
| // https://spec.c2pa.org/specifications/specifications/2.4/specs/C2PA_Specification.html#_c2pa_standard_assertions |
| // for more details. |
| message Assertion { |
| // A label defined by the C2PA specification. The list of publicly known |
| // labels can be found at |
| // https://spec.c2pa.org/specifications/specifications/2.4/specs/C2PA_Specification.html#_c2pa_standard_assertions. |
| string label = 1; |
| reserved 2, 3, 8; |
| oneof assertion { |
| ActionsAssertion actions = 4; |
| ActionsAssertionV1 actions_v1 = 13; |
| // No longer produced by the assertion parser. |
| IngredientAssertionV1 ingredient_v1 = 12 [deprecated = true]; |
| // No longer produced by the assertion parser. |
| IngredientAssertionV2 ingredient_v2 = 5 [deprecated = true]; |
| IngredientAssertionV3 ingredient_v3 = 14; |
| BmffBasedHashAssertion bmff_based_hash = 6; |
| DataHashAssertion data_hash = 7; |
| BoxesHashAssertion boxes_hash = 9; |
| ThumbnailAssertion claim_thumbnail = 10; |
| ThumbnailAssertion ingredient_thumbnail = 11; |
| MetadataAssertion metadata = 15; |
| RedactedCustomAssertion redacted_custom = 16; |
| RedactedGatheredAssertion redacted_gathered = 17; |
| RedactedDeprecatedAssertion redacted_deprecated = 18; |
| RedactedByGeneratorAssertion redacted_by_generator = 20; |
| MultiAssetHashAssertion multi_asset_hash = 19; |
| CollectionDataHashAssertion collection_data_hash = 21; |
| AiDisclosureAssertion ai_disclosure = 22; |
| EnvironmentalSustainabilityAssertion environmental_sustainability = 23; |
| RepositoryReceiptAssertion repository_receipt = 24; |
| SoftBindingAssertion soft_binding = 25; |
| } |
| } |