This document provides an architectural overview of the Originator Profile Framework (OPF), a framework designed to provide rich information about the origin of the information (Originator Profile — OP), with content provenance originating from the origin in digital media and advertising ecosystems. This document introduces the key concepts, data models, operational processes, and governance model that enable verifiable profiles for content originators, supported by third-party-validated originator attributes as part of Originator Profile. The overview also includes comparisons to other similar projects, current use cases, and distilled requirements. This document is primarily intended for technical audiences and technically knowledgeable end-users to understand the design of the Originator Profile Framework.

Status of this Document

This document is a description of the current design of the Originator Profile Framework (OPF) developed by the Originator Profile Collaborative Innovation Partnership (OP-CIP). It is in DRAFT status, which means it has no official standing of any kind and does not represent the consensus of the OP-CIP Membership.

Introduction

These days, we need to judge whether the information we receive is legitimate or not. False information and misinformation spread, primarily through fraudulent websites mimicking legitimate organizations. In the advertisement ecosystem, media inadvertently display fraudulent advertisements on their websites, causing damage to their reputation through association with these ads. On the contrary, advertisers unknowingly display their advertisements on fraudulent websites, which causes damage to their brand reputation through association with fraudulent sites. Thus, the situation is causing not only harm to the readers but also affecting all of the stakeholders.

Then, what do the well-behaved stakeholders in the ecosystem expect? From the reader's perspective, the media that provides information is the kind of information the reader is expecting, and the information provided by the media is expected to be reasonably reliable. At the very least, the media must deliver information to the readers accurately, as intended. The user must be able to verify the origin of the information and also understand the origin's nature. Of course, there are differing viewpoints on the accuracy of the information's delivery; still, it should be delivered in a manner intended by the media — accurately and in a timely manner. From the media's perspective, they will expect that information is delivered accurately to readers. They will also expect that appropriate advertisements are displayed on their websites. Advertisers will expect that their advertisements are displayed on appropriate media.

Originator Profile Framework is a set of technology and operational guidelines primarily designed for web media and digital advertisement use cases to answer these expectations. In technical terms, the Originator Profile Framework provides content provenance, alongside verifiable profile information that is the origin of the content, the Originator Profile. The profile information is validated and provided by multiple third parties, composed into an Originator Profile. (Note that operational guidelines are still being developed and will be provided in the future.)

The document you are reading is one of the documents in the Originator Profile Framework documentation series. Currently, the following two sets of documents are being prepared:

The following four documents will be compiled in the future based on the above two documents — some parts of this document may be moved into these four documents, too:

The Originator Profile Blueprints are currently living documents matching the corresponding implementations. Since the OPBs are living documents, this document refers to OPBs for implementation details and relies on their descriptions. In such cases, we provide references to the corresponding OPBs as necessary. The Originator Profile Blueprints may remain after the publication of the above documents to host the future improvement proposals and discussions.
Note on the current primary language: The current primary language for the Originator Profile Blueprints is Japanese, and English translations are done with AI-assisted human work. Due to that, there are some potential inconsistencies between the Japanese and English versions. Both versions are available at the [[Originator Profile Blueprints]] website.

This document consists of the following sections:

This document is primarily intended for technical audiences and technically knowledgeable end-users to understand the design of the Originator Profile Framework.

Terminology

In this section, we describe several key terms and concepts on which [=Originator Profile Framework=] relies, as well as the terms used in the context of [=Originator Profile Framework=].

While some of the terms and concepts are defined in various standards or literature, they are often described differently. To clarify our intentions, we describe these terms and concepts here.

Terms appear in alphabetical order.

Attribute
An [=Attribute=] is a piece of information about the [=Originator=].
Base Model
The [=Base Model=] is a foundational model in [=Originator Profile Framework=] that provides a common framework for representing the essential attributes and relationships of the [=Originator=]. It serves as the starting point for more specialized models, such as the [=Jurisdiction Specific Model=] and the [=Web Media Specific Model=].
Content
A [=Content=] is a piece of information that originates from an [=Originator=].
Content Aggregator
A [=Content Aggregator=] is a type of website that receives [=Content=] from one or more [=Originators=], then aggregates the [=Content=] and provides the aggregated [=Content=] to [=Recipients=].
Content Attestation
A [=Content Attestation=] is a type of [=Signed Data from Originator=] that confirms the [=Content=] originated from the corresponding [=Originator=]. A [=Content Attestation=] can be [=Verified=] by using the [=Verification Key=] contained in the [=Core Profile=], which is part of the [=Originator=]'s [=Originator Profile=].
Content Integrity Descriptor
[=Content Integrity Descriptor=] is a data structure that specifies which [=Content=] is being attested to, and the integrity requirements for that [=Content=].
Core Profile
A [=Core Profile=] is a set of essential [=Validated Attributes=] about the [=Originator=] that create various forms of [=Signed Data from Originator=] in the ecosystem based on [=Originator Profile Framework=]. A [=Core Profile=] includes [=Verification Key=] for [=Verify=]ing a [=Signed Data=]. A [=Core Profile=] is part of an [=Originator Profile=].
Core Profile Issuer
A [=Core Profile Issuer=] is an [=Entity=] that issues a [=Core Profile=] under the [=Core Profile Policy=] for the [=Core Profile Issuer=].
Core Profile Policy
A [=Core Profile Policy=] is a set of policies that govern the issuance and management of [=Core Profiles=].
Entity
An [=Entity=] is a distinct, identifiable actor that performs a specific role.
Jurisdiction Specific Model
[=Jurisdiction Specific Model=] is a set of concrete data models that represent the specific requirements and characteristics of a particular jurisdiction, including but not limited to the region or country.
Key Identifier
[=Key Identifier=] is a unique identifier that identifies one of the [=Originator Verification Key=] from a set of keys, used for the signing process.
Organization Profile
An [=Organization Profile=] is a set of [=Validated Attributes=] about the [=Originator=]'s organizational context, such as name, address, registration information, potentially localized to each of the jurisdictions.
Originator
An [=Originator=] is an [=Entity=] that sends some [=Content=] to [=Recipients=]. Also, in the [=Originator Profile Framework=], an [=Originator=] is an [=Entity=] that creates various forms of [=Signed Data from Originator=], such as [=Content Attestation=].
Originator Profile
An [=Originator Profile=] is a set of [=Validated Attributes=] about the [=Originator=] that create various forms of [=Signed Data from Originator=] in the ecosystem based on [=Originator Profile Framework=]. [=Originator Profile=] includes details such as the [=Originator=]'s [=Verification Key=] used to verify the signature of [=Signed Data from Originator=], such as [=Content Attestation=]. [=Originator Profile=] consists of one [=Core Profile=] and one or more [=Profile Annotations=]; the [=Core Profile=] contains the essential information, such as [=Verification Key=] of the [=Originator=], while the [=Profile Annotations=] provide additional [=Attributes=] about the [=Originator=].
Originator Profile Framework
[=Originator Profile Framework=] is a set of technological designs and governance models that implement [=Originator Profile=] and related models, including data models and related policies.
Originator Profile Issuer
An [=Originator Profile Issuer=] is an [=Entity=] that issues part of an [=Originator Profile=]. These issuers include [=Core Profile Issuer=] and some variant of [=Profile Annotation Issuer=], both of which are responsible for issuing their respective components of the [=Originator Profile=], such as [=Core Profile=] or some variant of [=Profile Annotation=]. These [=Entities=] are also [=Originators=], thus they publish their own [=Originator Profile=] while privately controlling the corresponding [=Signing Key=].
Originator Verification Key
An [=Originator Verification Key=] is a [=Verification Key=] used by the [=Originator=].
Profile Annotation
A [=Profile Annotation=] is a set of [=Validated Attributes=] in the form of [=Signed Data=] that binds [=Validated Attributes=] to [=Core Profile=]. [=Profile Annotation Issuer=] issues [=Profile Annotation=] with respect to a specific [=Profile Annotation Policy=]. [=Profile Annotation=] is tailored to specific purposes, such as [=Web Media Profile=] or a kind of [=Originator Profile=] for the specific jurisdiction.
Profile Annotation Issuer
A [=Profile Annotation Issuer=] is an [=Entity=] that issues a kind of [=Profile Annotations=].
Profile Annotation Policy
A [=Profile Annotation Policy=] is a set of policies that govern the issuance and management of [=Profile Annotations=].
Recipient
A [=Recipient=] is an [=Entity=] that receives the [=Content=].
Signed Data
A [=Signed Data=] consists of three elements — [=Verification Key=] or reference to it, payload, and signature — and provides a way to verify that the signature is created on the payload, with the [=Signing Key=] that is bound to the [=Verification Key=], Thus the integrity of the payload is ensured, and use the [=Verification Key=] to identify the [=Entity=] which signed the data. Please refer to for a detailed discussion.
Signed Data from Originator
[=Signed Data from Originator=] is an essential [=Signed Data=] within [=Originator Profile Framework=]. It is an abstract data model based on [=Signed Data with Policy=], originated from an [=Originator=], assuming that it is signed with a specific intent corresponding to the policy stated by the [=Originator=]. Please refer to for a detailed discussion.
Signed Data with Policy
[=Signed Data with Policy=] is an abstract data model that represents the signed data structure that is created under a specific policy. Please refer to for a detailed discussion.
Signing Key
A Cryptographic [=Signing Key=] — also called Private Key — is half of an asymmetric cryptography key pair used to create the signature of a piece of [=Signed Data=]. The other half of the key is [=Verification Key=]. [=Signing Key=] is privately controlled by a specific [=Entity=] — signer — and is used to generate the signature to be part of [=Signed Data=].
Validate
[=Validate=] is a function that an [=Entity=] assesses the truthiness of a piece of information by directly checking the [=Entity=] itself, or consulting highly reliable sources such as government databases.
Validated Attribute
A [=Validated Attribute=] is an [=Attribute=] that has been [=Validated=] by an [=Entity=]. In [=Originator Profile Framework=], [=Validated Attribute=] is part of the [=Core Profile=] and [=Profile Annotation=], where the corresponding [=Core Profile Issuer=] or [=Profile Annotation Issuer=] validates the [=Attributes=] before the issuance.
Verification Key
A [=Verification Key=], also often called a public key, is used to verify the signature of a piece of [=Signed Data=]. It is associated with a specific signer, which privately controls the [=Signing Key=], and is used to [=Verify=] the integrity of the [=Signed Data=].
Verify
[=Verify=] is a function that merely verifies the integrity of [=Signed Data=] by verifying its payload and the associated signature using the [=Verification Key=] referenced or embedded in the [=Signed Data=].
Web Media Profile
A [=Web Media Profile=] is a kind of [=Profile Annotation=], and is a set of [=Validated Attributes=] about the [=Originator=] who publishes contents via a website. It includes domain-specific [=Validated Attributes=] for the web media, such as editorial policy, contact information, etc.
Web Media Profile Issuer
A [=Web Media Profile Issuer=] is an [=Entity=] that issues a [=Web Media Profile=] for an [=Originator=] under [=Web Media Specific Policy=]. The issuer is responsible for validating the [=Attributes=] included in the profile and ensuring that they accurately represent the [=Originator=].
Web Media Specific Model
A [=Web Media Specific Model=] is a model that extends the [=Base Model=] for Web Media use cases, incorporating domain-specific [=Validated Attributes=] and validation mechanisms.
Web Media Specific Policy
A [=Web Media Specific Policy=] is a set of policies that govern the issuance and management of [=Web Media Profile=] and [=Website Profile=].
Website Profile
A [=Website Profile=] is a set of [=Validated Attributes=] about a website that is necessary for the securing mechanism of the [=Originator Profile Framework=], issued by the [=Originator=] that publishes information via the website identified by the [=Website Profile=]. This profile includes information such as the website's valid domain.

Architecture of the Originator Profile Framework

The architecture of the [=Originator Profile Framework=] is designed to support a wide range of use cases and applications. It is a modular framework that allows for easy integration with existing systems and services.

In the following sections, we introduce high-level concepts and components of the [=Originator Profile Framework=].

A Simple Picture: What Originator Profile Provides

illustrates the capabilities of the [=Originator Profile Framework=] in a simple picture.

What Originator Profile Provides
What Originator Profile provides

Firstly, [=Originator Profile Framework=] provides rich information about the [=Originator=] — [=Originator Profile=] — which the name comes from (①). It includes not only the basic attributes about the organization but also various attributes validated by multiple third parties that are useful for the [=Recipient=] to assess the [=Content=].

Secondly, [=Originator Profile Framework=] provides a way to provide integrity verification of the [=Content=] and also the origin of the [=Content=] as an [=Originator Profile=] (②).

Finally, the [=Recipient=] of the [=Content=] can verify the integrity and authenticity of the [=Content=] using the information provided, and also refer to the [=Originator Profile=] to know about the attributes of the [=Originator=] (③).

The framework is designed to be extensible and adaptable to various use cases; for the [=Originator Profile=], it allows adding [=Validated Attributes=] provided by multiple parties. For [=Content=] integrity, the framework is extensible to accept different types of media in different types of serialization. For example, the Web Media specific models allow for the protection of text fragments and other media within a web page.

Abstract Model: Signed Data with Policy

In this document, we define [=Signed Data=] and [=Signed Data with Policy=] based on "Cryptographically Signed Data" as discussed in detail in the paper [[A Model For Claim Validation]]. We define [=Core Profile=] and [=Profile Annotation=] based on the "Certificate" concepts presented in the same paper. In the following sections, we will elaborate on definitions and their implications.

The terminology used in the paper [[A Model For Claim Validation]], "verify" and "validate," in particular, is different from the terminology used in this document. In the paper, the author dictates that the difference between these two acts is a lack of context in validation. In this document, we use "verify" to mean the act of checking the integrity of [=Signed Data=] using the [=Verification Key=], and "validate" to mean the act of assessing the truthfulness of a piece of information by directly checking the [=Entity=] itself or consulting highly reliable sources, such as government databases. This distinction is essential in the context of [=Originator Profile Framework=], as it helps clarify the roles and responsibilities of different [=Entities=] involved in the ecosystem.

There are interesting but very confusing aspects in the difference between "verify" and "validate" within Japan. It is regrettable that these two words are often translated into the same Japanese word 「検証」 (pronounced as 'ken-sho') and are used interchangeably, leading to misunderstandings in this digital signature application area. Thus, i.e., AI translation of this document can not reflect the nuances of "verify" and "validate" as outlined in this document.

Signed Data

In [[A Model For Claim Validation]], "Cryptographically Signed Data" is a conceptual model in which an originator signs a payload and bundles three elements: (1) a verification key (or a reference to it), (2) the payload (the subject being attested), and (3) the digital signature over that key and payload. This structure lets a recipient check source authenticity and payload integrity using the corresponding verification key.

Signed Data
Signed Data

Crucially, "Cryptographically Signed Data" alone does not establish the truth of any claim encoded in the payload; it only confirms the authenticity of the source and the integrity of the data. Determining whether a claim is valid requires additional evidence and a validator-specific validation policy (i.e., criteria/intent), which is distinct from mere cryptographic verification.

In this document, A [=Signed Data=] consists of three elements — [=Verification Key=] or reference to it, payload, and signature — and provides a way to verify that the signature is created on the payload, with the [=Signing Key=] that is bound to the [=Verification Key=], Thus the integrity of the payload is ensured, and use the [=Verification Key=] to identify the [=Entity=] which signed the data.

Signed Data with Policy

In [=Originator Profile Framework=], all of the data models are based on [=Signed Data=] under a specific policy. We refer to this as [=Signed Data with Policy=]. A [=Signed Data with Policy=] can provide a way to express the intent and context of a signature based on predefined and shared policies. [=Signed Data with Policy=] is an abstract concept of digital credentials (i.e., [[vc-data-model-2.0]]) and/or digital certificates (i.e., [[X509V3]]).

Signed Data with Policy
Signed Data with Policy

In [[A Model For Claim Validation]], the authors detailed the relationship between signed data with policy and the related processes. A "Certificate" is a form of signed data issued by a certifier that (i) asserts the certifier has validated a specific claim and (ii) attests that validation according to the certifier’s certification policy (its criteria). Concretely, it bundles three elements — (1) the certifier’s verification key (or a reference), (2) a payload stating what has been certified, and (3) the certifier’s digital signature over that key and payload. Its signature intends to show not just who issued it, but that the issuer certifies the claim according to its policy; validators can then accept the claim by verifying the certificate and trusting the certifier under their own validation policy.

We avoid using the term "Certificate" or "Credentials" to describe the signed data within the [=Originator Profile Framework=]. The term "Certificate" in digital contexts typically refers to a public key certificate (i.e., [[X509V3]]), and the term "Credentials" often implies a broader set of claims or attributes. But in a non-digital world, many of the concepts around certification and credentials are more fluid and context-dependent. The confusion is particularly true in relation to the specific non-digital activities regarding "certification." Thus, using these terms could lead to misunderstandings about the nature and scope of the signed data being discussed here.

Limitations of X.509 PKI to Implement Originator Profile Framework

When using a digital signing scheme, there is a need to find the [=Verification Key=] of the signer and ensure that the corresponding [=Signing Key=] belongs to the correct [=Entity=]. To implement this, we typically rely on X.509 [[X509V3]] public key certificate scheme, which is widely used in various applications, and well understood. However, to implement the [=Originator Profile Framework=], the current design of X.509 lacks flexibility. This section discusses the limitations we want to address.

While we discuss the limitations of X.509 here, and the current Originator Profile implementation does not yet support all aspects of it, it is still possible to leverage X.509 technology and its ecosystem within the [=Originator Profile Framework=] to achieve certain goals with limitations. Please refer to for more details.

In [=Originator Profile Framework=], these limitations are addressed by a more flexible and extensible framework.

Architectural Design of Originator Profile Framework

While [=Originator Profile Framework=] aims to provide content provenance, it addresses the limitations of current digital public key certificate schemes by providing a more flexible and extensible framework to provide validated attributes. All of the signed data are [=Signed Data from Originator=], that is a kind of [=Signed Data with Policy=]; thus, it is signed with intent under the corresponding policy of the [=Originator=].

The [=Originator Profile Framework=] architecture currently comprises three groups of models: the [=Base Model=], a domain-agnostic model; the [=Jurisdiction Specific Model=], which extends the [=Base Model=] to support specific jurisdictions; and the [=Web Media Specific Model=], a model that extends the [=Base Model=] for Web Media. We expect to introduce a similar supplemental model in each of the future application domains. Each of the models is detailed in its respective section: , , and .

In the following subsections, we will delve into some details of three key models: the [=Originator Profile=], [=Signed Data from Originator=], and [=Content Attestation=]. The details of these models are described in .

Originator Profile

In the [=Originator Profile Framework=], the information about the [=Originator=] that is to be verifiable is a [=Signed Data from Originator=]; the Originator issues the signed data under a specific policy. The Originator's information is expressed as an [=Originator Profile=]. An [=Originator Profile=] consists of a [=Core Profile=], which contains the [=Originator=]'s [=Verification Key=], and one or more [=Profile Annotations=] that attach [=Validated Attributes=] to the [=Core Profile=].

Issuing and using Originator Profile
Issuing and using Originator Profile

The [=Core Profile=] includes the [=Originator=]'s [=Verification Key=] and is one of [=Signed Data from Originator=], which will be described in the following section. [=Core Profile=] contains essential attributes of [=Originator Profile=]. [=Core Profile Issuers=] issues it under [=Core Profile Policy=].

The [=Profile Annotation=] is a set of additional attributes that are issued by [=Profile Annotation Issuers=] independently of the [=Core Profile Issuer=]. [=Profile Annotation=] is also based on [=Signed Data from Originator=]. A [=Core Profile=] may be bound to one or more [=Profile Annotations=] provided by multiple [=Profile Annotation Issuers=], as specified in the [=Profile Annotation Policy=]. [=Profile Annotation=] is an abstract concept, and various specialized types of [=Profile Annotations=] exist; this is one of the extension points for each application domain.

Signed Data from Originator

[=Signed Data from Originator=] is an essential data model within [=Originator Profile Framework=]. It is an abstract data model based on [=Signed Data with Policy=], originated from an [=Originator=], assuming that it is signed with a specific intent corresponding to the policy stated by the [=Originator=]. The reference to the [=Originator Profile=] is included in the [=Signed Data from Originator=].

Signed Data from Originator
Signed Data from Originator

Content Attestation

A [=Content Attestation=] is a type of [=Signed Data from Originator=] that confirms the [=Content=] originated from the corresponding [=Originator=] and also has not been altered. A [=Content Attestation=] can be [=Verified=] by using the [=Verification Key=] contained in the [=Core Profile=], which is part of the [=Originator Profile=]. The [=Recipient=] can verify the integrity of the [=Content=] alongside the [=Originator Profile=] to know the profile of the [=Originator=], including the [=Originator=]'s policy.

Creating and using Content Attestation
Creating and using Content Attestation

[=Content Attestation=] is provided within or alongside the [=Content=] itself. [=Content Integrity Descriptor=], which is part of the payload of the [=Content Attestation=] provides additional information about the content's integrity. Please refer for [=Content Integrity Descriptor=] discussion for the web media.

Base Model

In this section, we describe the [=Base Model=].

Entities

The following are the key [=Entities=] in the Base Model.

Data Models

This section describes four data models for the [=Base Model=]: [=Signed Data from Originator=], [=Core Profile=], [=Profile Annotation=], and [=Content Attestation=].

Signed Data from Originator

[=Signed Data from Originator=] is an abstract data model that represents the [=Signed Data=] used in the [=Originator Profile=]. It includes all the necessary information to [=Verify=] the authenticity and integrity of the [=Signed Data=].

[=Signed Data from Originator=] includes the following property:

  • Originator — a reference to the [=Originator=]'s [=Originator Profile=].
  • Key Identifier — a unique identifier that identifies the [=Originator Verification Key=] used for the signing process.

In addition to the above, various properties are included as payload for each of the concrete data models.

Currently, the [=Originator Verification Key=] is embedded directly in the [=Core Profile=] as part of the payload. Thus, it identifies one [=Verification Key=] directly; thus, [=Key Identifier=] is meaningless for the current implementation. This approach has limitations, particularly in scenarios involving key rotation or when multiple keys are in use. In the future, we plan to explore more flexible key reference/embedding schemes to address these limitations. Please refer to the discussions in .

Core Profile

[=Core Profile=] is one of [=Signed Data from Originator=]. [=Core Profile=] contains essential attributes of [=Originator Profile=]. [=Core Profile Issuers=] issues it under [=Core Profile Policy=].

[=Core Profile=] includes the following properties, in addition to the properties in the [=Signed Data from Originator=]:

  • [=Originator Verification Keys=] — is a set of keys used by the [=Originator=] to sign [=Signed Data from Originator=].

Please refer to Originator Profile Blueprints: Core Profile Data Model for current implementation details.

In the future, we expect to change the embedded key to a more flexible key reference/embedding scheme to allow Key Rollover. Please refer to the discussions in .

Profile Annotation

[=Profile Annotation=] is an abstract model that adds [=Validated Attributes=] to the [=Core Profile=]. [=Profile Annotation=] is based on [=Signed Data from Originator=]. A kind of [=Profile Annotation=] is issued by corresponding [=Profile Annotation Issuers=], typically independently of the [=Core Profile Issuer=]. A [=Core Profile=] may be bound to one or more [=Profile Annotations=] provided by multiple [=Profile Annotation Issuers=], as specified in the [=Profile Annotation Policy=].

[=Profile Annotation=] includes the following properties:

  • Subject — Reference to a [=Core Profile=], which this annotation annotates.
  • Annotation Data — Additional [=Attributes=] or other information describing the annotation, depending on the concrete annotation type.

Please refer to Originator Profile Blueprints: Profile Annotation Data Model for current implementation details. Please refer to for one of the concrete example of [=Profile Annotation=]. Also refer to Originator Profile Blueprints: PA Implementation Guidelines for more information on implementing profile annotations in general.

Content Attestation

[=Content Attestation=] is a specific type of [=Signed Data from Originator=] that focuses on the provenance of [=Content=].

[=Content Attestation=] includes the following properties:

  • Target — is a [=Content Integrity Descriptor=] that describes the target item being attested to and the integrity requirements for that item.

[=Content Integrity Descriptor=] is a structured representation of the integrity requirements for a specific type of content. It includes metadata such as content type, content locator, and content hash. Currently, all of the [=Content Integrity Descriptor=] types are designed for Web Media; thus, all of the details about [=Content Integrity Descriptor=] are described in .

Please refer [[Originator Profile Blueprints]]: Content Attestation Data Model for current implementation details. Also, please refer to [[Originator Profile Blueprints]]: Content Integrity Descriptor for the details on the [=Content Integrity Descriptor=].

Processes

This section describes two processes for the [=Base Model=]: Issuing [=Originator Profile=] and Delivering [=Content=] with [=Content Attestation=].

Issuing Originator Profile

Issuing Originator Profile
Issuing Originator Profile

This process involves the following steps:

  1. The [=Originator=] creates a key pair ([=Signing Key=], [=Verification Key=]).
  2. The [=Originator=] sends a request with an application that includes an adequate amount of information, including the [=Verification Key=] to [=Core Profile Issuer=] to issue a [=Core Profile=]. The application needs to include enough information to satisfy the [=Core Profile Policy=] on issuing [=Core Profile=].
  3. The [=Core Profile Issuer=] [=Validates=] whether the [=Originator=]'s application meets the requirements in the [=Core Profile Policy=] and issues a [=Core Profile=].
  4. The [=Originator=] requests one or more [=Profile Annotations=] from [=Profile Annotation Issuers=].
  5. Each [=Profile Annotation Issuer=] [=Validates=] the relevant attributes and issues [=Profile Annotations=].
  6. The [=Originator=] collects the [=Core Profile=] and [=Profile Annotations=] to form the [=Originator Profile=].

Delivering Content with Content Attestation

Delivering Content with Content Attestation
Delivering Content with Content Attestation

Assuming that the [=Originator=] has already obtained an [=Originator Profile=], this process involves the following steps:

  1. The [=Originator=] prepares the [=Content=] for delivery.
  2. The [=Originator=] sends the attested [=Content=] with [=Content Attestation=], to the [=Recipient=]. The [=Originator=] also sends the [=Originator Profile=] as necessary.
  3. The [=Recipient=] verifies the [=Content Attestation=].
  4. The [=Recipient=] verifies the [=Originator Profile=], which includes [=Core Profile=] and [=Profile Annotations=] as necessary.

Policy

In this section, we discuss high-level policies for [=Base Model=] governing the issuance and management of [=Core Profile=] and [=Profile Annotation=]. These are not concrete policies but rather provide design direction that informs the development of specific policies and procedures. A discussion on the overall governance model is provided in .

Core Profile Policy

On the issuance of [=Core Profile=], the [=Core Profile Issuer=] [=Validates=] the identity and [=Attributes=] of the [=Originator=] as required. The [=Core Profile Issuer=] is responsible for ensuring that the [=Core Profile=] is issued in accordance with the established policies and procedures.

The required steps for the [=Core Profile Issuer=] to issue a [=Core Profile=] include:

  • Validation of the [=Originator=]'s identity and attributes.
  • Assessment of the [=Originator=]'s compliance with the [=Core Profile Policy=].
  • Issuance of the [=Core Profile=] upon successful validation and assessment.

The [=Core Profile Issuer=] must maintain a record of all issued [=Core Profiles=] and their associated [=Originators=]. This record must include details of the validation and assessment processes undertaken, as well as any supporting documentation.

The policy is similar to that of X. 509-based Certificate Authority (CA) policies, and a lot can be learn from the experiences of the ecosystem. However, due to the decomposed nature of the [=Core Profile=] and [=Profile Annotations=], additional considerations may be necessary to address the unique aspects of each component.

OP-CIP is currently developing initial [=Core Profile Policy=] for initial deployment alongside with other policies.

Currently, issuance of an [=Originator Profile=], the OP-CIP mandates that the [=Originator=]'s commitment to the [[The Originator Profile Charter]]. This requirement is to ensure that all [=Originators=] adhere to a standard set of principles and practices, thereby fostering trust and reliability within the ecosystem. However, it is essential to note that this requirement is specific to the initial deployment phase and may be subject to change in the future as the ecosystem evolves and matures.

Profile Annotation Policy

On the issuance of [=Profile Annotation=], the [=Profile Annotation Issuer=] [=Validate=] the identity, then refers to specific attributes of the [=Originator=], which are part of the [=Profile Annotation=]. The [=Profile Annotation Issuer=] is responsible for ensuring that the [=Profile Annotation=] is issued in accordance with the established policies and procedures.

  • The [=Profile Annotation Issuer=] must [=Validate=] the identity of the [=Originator=] using [=Core Profile=] before issuing the [=Profile Annotation=].
  • The [=Profile Annotation=] includes specific attributes of the [=Originator=] or other information as defined by the established policies and procedures.
  • The [=Profile Annotation=] must be issued upon successful validation and assessment of the [=Originator=]'s identity and the attributes concerned for the [=Profile Annotation=].

The details of the policy depend on the specific use cases and domain requirements. Thus, [=Profile Annotation=] is specialized for these purposes, and the policy for the specialized annotation needs to be prepared.

OP-CIP is currently developing an initial [=Profile Annotation Policy=] for initial deployment alongside other policies.

Jurisdiction Specific Model

This section discusses [=Jurisdiction Specific Model=]. Jurisdiction-specific models address the distinct needs of various jurisdictions. First and foremost, the models need to capture unique aspects of each jurisdiction's entity model differences, such as, but not limited to, differences in definitions of legal entities. Jurisdiction-specific models may define additional attributes or validation mechanisms that are specific to a particular jurisdiction.

While we design the [=Originator Profile Framework=] for global deployment, we are currently focusing on the requirements specific to Japan as we initially deploy the framework within Japan. However, we anticipate introducing similar models for other jurisdictions in the future.

Organization Profile

[=Organization Profile=] is one of the concrete types of [=Profile Annotation=] that provides validated information about the organization behind the [=Originator=].

While we recognize that an abstract data model is necessary to represent the key attributes of organizations across different jurisdictions, the requirements for this model require further analysis among jurisdictions to ensure that all relevant aspects are captured.

The model may include attributes such as:

With consideration for the specific requirements of each jurisdiction, especially regarding registration details, they can vary considerably. It is also essential to note that multilingual support is required for the audience outside of the specific jurisdiction.

Data Model for Japanese Organizations

In Japan, the validation of an organization's existence typically involves verifying the organization's registration status with the relevant government authorities. Such validation may include verifying the organization's registration number, tax identification number, and other official documentation (note: registration number and tax identification number are different). Additionally, organizations will be required to provide proof of their physical presence in Japan, such as a local business address and contact information.

On the other hand, once the company registration number is validated and provided in verifiable manner, it can provide a way to retrieve detailed information from the relevant government authorities relying on the registration number.

Please refer [[Originator Profile Blueprints]]: Existence Certificate in Japan Implementation Guidelines for current implementation details.

Web Media Specific Model

In this section, we describe the [=Web Media Specific Model=].

Entities

In addition to the [=Entities=] discussed in , [=Web Media Specific Model=] introduces the following [=Entity=]:

Data Models

Web Media Specific model defines two data models: [=Web Media Profile=] and [=Website Profile=].

Web Media Profile

[=Web Media Profile=], which extends [=Profile Annotation=] adds additional [=Validated Attributes=] for Web Media. It is issued by one of [=Profile Annotation Issuers=].

[=Web Media Profile=] includes additional information about the [=Originator=], other than organization registration information specific to a web media, such as editorial policy, privacy policy, contact information, logo, and official URL of the organization.

For concrete information on current implementations, please refer to Web Media Profile.

Website Profile

[=Website Profile=] is a set of [=Validated Attributes=] about a website that is necessary for the securing mechanism of the [=Originator Profile Framework=]. [=Website Profile=] is one of the [=Signed Data from Originator=], but this data is issued by the [=Originator=] of the [=Contents=], who has control of the website.

[=Website Profile=] includes the website location, which is legitimate for the delivery of the [=Contents=] from the organization. This information eliminates the possibility of [=Content=] being misplaced in unwanted locations by the media. The location is specified as a string or array of strings that represents the [[RFC6454]] origin (scheme, hostname, port number) in ASCII format to identify the website to be presented. It MUST NOT include a path, query, or fragment. In addition, the default port (e.g. 443 for https:, 80 for http:) is expressed in an abbreviated format based on the [[URL]].

For concrete information on current implementations, please refer to Website Profile

Content Integrity Descriptor for Web Media

The following types of [=Content Integrity Descriptor=] are defined for Web Media:

  • HTML fragment (using outerHTML)
  • Text within DOM (using textContent)
  • Visible Text within DOM (using innerText)
  • External Resource

Please refer to [[Originator Profile Blueprints]]: Content Integrity Descriptor for details.

Processes

This section describes two processes for the Web Media Specific Model: Delivering [=Content=] as a Web Page and Delivering [=Content=] via a [=Content Aggregator=].

Issuing Web Media Profile and Website Profile

[=Web Media Profile=] is supposed to be issued by the [=Originator Profile Issuer=], alongside the [=Core Profile=] to be part of the [=Originator Profile=] for the website the [=Originator=] intends to publish its contents.

Delivering Contents as a Web Page

This section describes the process of delivering [=Content=] as a web page.

Delivering Contents as a Web Page
Delivering Contents as a Web Page

This process involves the following steps:

  1. The [=Originator=] prepares the [=Content=] for delivery
  2. The [=Originator=] creates a [=Content Attestation=] with reference to [=Originator Profile=].
  3. The [=Originator=] publishes the web page including the [=Content=], [=Content Attestation=], and [=Originator Profile=] (if necessary) on its website.
  4. The web server delivers the web page to [=Recipient=].
  5. The [=Recipient=] discovers [=Content=] with [=Content Attestation=]. Then, find or retrieve [=Originator Profile=]
  6. The [=Recipient=] [=Verify=] the [=Originator Profile=].
  7. The [=Recipient=] [=Verify=] the [=Content Attestation=] using the [=Verification Key=] in the [=Core Profile=], and [=Verify=] any [=Profile Annotations=].

Policy

Web Media Specific Policy

On the issuance of the [=Web Media Profile=], the corresponding [=Web Media Specific Policy=] is consulted. In addition to the [=Organization Profile=], the [=Web Media Specific Policy=] also takes into account the specific requirements to validate the attributes specific to the [=Web Media Profile=].

OP-CIP is currently developing an initial [=Web Media Specific Policy=] alongside other policies.

Presentation

In this section, we provide the current status of the presentation aspects of the Originator Profile for Web Media, including currently implemented browser extensions and potential modifications to browsers.

Browser Extension Implementation

The browser extension, which provides a user interface to present various data within the [=Originator Profile Framework=], is implemented and provided. The extension is the user interface we demonstrated in various places on past occasions.

We will provide the extension to multiple browsers in the near future.

Browser Modification Concepts

In addition to the browser extension, we are also exploring potential modifications to the browser itself to provide better key visual information, which might be helpful to [=Recipients=].

We will provide the conceptual design in the near future.

Governance

This section describes the governance and policy aspects of the Originator Profile Framework.

The architectural design of the data models enables [=Originator Profile Framework=] to provide a flexible governance model that accommodates various use cases and stakeholder requirements; In other words, [=Originator Profile Framework=] is designed to support the diverse needs of various stakeholders involved in the content ecosystem and beyond.

In the framework, [=Originator=]'s identity — including [=Verification Key=] and [=Validated Attributes=] — is unbundled into [=Core Profile=] and multiple [=Profile Annotations=], to allow later flexible composition. Each of the [=Validated Attributes=] may be bound to specific policies. These policies and the issuance operation are governed by the governance body appropriately.

In the following sections, we first introduce a generic governance model, then show the X.509 PKI-based system as an example of the governance model. Then, we provide examples of governance models for various use cases, including the minimal governance model for the [=Originator Profile Framework=] planned in Japan. We extend the discussion to governance models for other jurisdictions and, finally, for the global community. Each of the extensions requires increasing stakeholder involvement to govern the system effectively.

A Generic Governance Model

The figure below shows a highly simplified generic governance model distilled from the discussion in the [[Trusted Web White Paper 3.0]]. (Note: the governance model discussed in the white paper is based on the discussion by one of the authors, in the paper [[A Study on Governance funded by JFSA]], which includes an analysis of [[ICANN]] multistakeholder model)

Generic Governance Model based on the Trusted Web discussion
Generic Governance Model based on the Trusted Web discussion

The governance in the digital ecosystem usually revolves around "Data Under Governance." The "Governing Body" is controlling the "Operator." The "Operator" manages the "Data Under Governance." The "Operator" is responsible for overseeing the management and protection of this data under the "Policy," which includes operational policy. The "Operator" operates under the policy faithfully, and the "Governance Body" is able to control "Data Under Governance" through the "Policy."

X.509 PKI based system with the Generic Governance Model

Following is an simplified representation of the governance model for an X.509 PKI system, based on the Generic model discussed in the previous section.

Example of Governance of X.509 PKI
Simplified Governance model of X.509 PKI

This figure presents a simplified governance structure of the X.509 Public Key Infrastructure (PKI) system. At the top of the hierarchy is the governing body, which establishes the overarching policies and trust framework for the PKI ecosystem. The Trust List, alongside with the governing body are the root of trust of the community which shared the same root of trust.

Under the governing body, Certificate Authorities (CAs) are responsible for issuing and managing digital certificates in accordance with these policies. The CAs act as trusted third parties, validating the identities of entities requesting certificates and ensuring compliance with governance requirements. Relying parties, such as users, applications, or organizations, depend on the trustworthiness of the CAs and the integrity of the certificates they issue to authenticate identities and secure communications. The figure illustrates the flow of trust, policy enforcement, and operational responsibilities among these entities, clarifying how governance is maintained and how trust is propagated within the X.509 PKI environment.

The verifying entity in the figure refers to the "Trust List" via the operating system or application, which includes the list of trusted root CAs. The operating system or application vendor typically manages the trust list, and it is updated through a software update mechanism.

Thus, from the verifying entity's perspective, which occurs through the operating library or application, the trust list is usually invisible; therefore, the operating system or application automatically trusts the root CAs in the trust list. Also, since the governing mechanism is hardbound to the entire trust tree, the only policy it can refer to and rely on is the policies defined by the governing bodies, which are maintaining the trust list, and each of the CAs.

Governance model for Web Media while in the bootstrap phase in Japan

The following is a simplified representation of the Originator Profile Governance Model planned for Japanese Media, within Japan, during the Bootstrap phase.

Governance model of Originator Profile for the bootstrap phase in Japan (Planned)
Governance model of Originator Profile for the bootstrap phase in Japan (Planned)

Firstly, in the Web Media ecosystem, [=Originator Profile=] is composed of four sets of [=Validated Attributes=] — [=Core Profile=], [=Organization Profile=], [=Web Media Profile=], and potentially, at least one "Media Association's Membership."

For the bootstrap phase in Japan, [=Core Profile=], [=Organization Profile=], and [=Web Media Profile=] are issued by the OP-CIP.

For the "Media Association's Membership," we plan to have it issued by one of the media associations in Japan. The actual issuance of a "Media Association's Membership" is potentially operated by OP-CIP on behalf of the media association, while the media association controls and is responsible for the validation of the membership.

The [=Originator=] (Media) requests the [=Core Profile=] and [=Web Media Profile=] from OP-CIP by providing the necessary information to satisfy the [=Core Profile Policy=] and [=Web Media Specific Policy=]. OP-CIP validates the information and issues the profiles to the [=Originator=]. OP-CIP also issues the [=Organization Profile=] by validating the organization's existence in Japan.

The [=Recipient=] will verify the [=Originator Profile=] of the [=Originator=] by referring to the [=Verification Key=] included in the [=Core Profile=] of the OP-CIP. Then, the [=Recipient=] verifies the [=Content Attestation=] using the [=Verification Key=] in the [=Core Profile=] of the [=Originator=].

The current implementation of the browser extension embeds the [=Verification Key=] of OP-CIP within the extension itself. Thus, the extension can verify the [=Originator Profile=] issued by OP-CIP without referring to any external trust list. Current implementation merely embeds and refers to the [=Verification Key=] of OP-CIP.

In the figures in the following sections, for brevity, we only show the issuing part of the governance models, which is marked "(A)" in .

Currently, issuance of an [=Originator Profile=], the OP-CIP mandates that the [=Originator=]'s commitment to the [[The Originator Profile Charter]]. This requirement is to ensure that all [=Originators=] adhere to a standard set of principles and practices, thereby fostering trust and reliability within the ecosystem. However, it is essential to note that this requirement is specific to the initial deployment phase and may be subject to change in the future as the ecosystem evolves and matures.

Governance Model for other Jurisdictions

The following is a simplified representation of the Originator Profile Governance Model, which is planned for use in other jurisdictions.

Governance Model for other jurisdictions (Planned)
Governance Model for other jurisdictions (Planned)

In this model, the [=Core Profile=] and [=Organization Profile=] are issued by OP-CIP, similar to the model for Japan. However, the [=Organization Profile=] (localized for jurisdiction XX) is issued by an [=Originator Profile Issuer=] in jurisdiction XX, which OP-CIP recognizes. The local [=Originator Profile Issuer=] is responsible for validating the attributes specific to the organization's existence in that jurisdiction, ensuring compliance with local regulations and standards.

We need to establish a mechanism to recognize the local [=Originator Profile Issuer=] by OP-CIP. This may involve a formal recognition process, where OP-CIP evaluates the local issuer's policies, procedures, and trustworthiness before granting them the authority to issue [=Organization Profiles=] localized for the jurisdiction. OP-CIP may issue a special kind of [=Profile Annotation=] to the local [=Originator Profile Issuer=] to indicate its recognition.

Governance Model for Global Community

The following is a simplified representation of the Originator Profile Governance Model planned for Global Community.

Governance Model for Global Community (Planned)
Governance Model for Global Community (Planned)

In this model, multiple [=Core Profile Issuers=] exist, each responsible for issuing [=Core Profiles=] to [=Originators=] and operating under its own governance. All [=Core Profile Issuers=] are recognized by "OP Root," which is represented by a special type of [=Originator Profile=], "Core OP Root," as shown in the figure. The [=Core Profile Issuers=] may also issue other types of [=Profile Annotations=], such as the [=Web Media Profile=], based on their governance and policies.

By establishing this model, centralization of the governance is avoidable, and diversity of the governance is achievable. Governance of "OP Root" should be designed to be inclusive, allowing for the participation of various stakeholders and the incorporation of diverse perspectives — similar to the multistakeholder governance model of [[ICANN]].

Establishing and operating such a multistakeholder governance model requires careful planning, ongoing collaboration, and a commitment to transparency and accountability from all participants. It is essential to create a shared understanding of roles, responsibilities, and decision-making processes to ensure the effective functioning of the governance framework. A lot can be learned from the experience of [[ICANN]]. One of the author's papers, [[A Study on Governance funded by JFSA]], may provide some insights into the challenges and opportunities associated with multistakeholder governance models and is helpful for starters who are interested in the context.

Known Issues and Future Changes

This section will be updated as we get feedback.

This document is not integrity protected and is not accompanied by an Originator Profile

This issue SHOULD be fixed appropriately.

Terminology Challenges

When working in standardization, there are always terminology challenges.

We understand that some terms are used differently or may be counterintuitive to specific stakeholders. The following terms require special attention:

We attempted to be cautious when introducing concepts in , and provided additional notes. Please provide feedback not only on these terms but also on the overall document.

Also, note that some inconsistencies still exist in the terminology used within the currently available documents. The [[Originator Profile Blueprints]] are mostly consistent within the document series, but some of the terminology is used slightly differently from this Architectural Overview document. We will address these inconsistencies while incorporating the [[Originator Profile Blueprints]] into the [=Originator Profile Framework=] documentation series.

Internationalization and Multilingual Support

There are some internationalization and multilingual challenges in the use of [[vc-data-model-2.0]]. The current version of the data model suggests using a single language for each of the signed data objects. This decision is due to the fact that the current JSON-LD-based multilingual structure is complex to decode on the verifier side, which, in our case, is within a browser. The cost is not negligible; thus, we currently apply one language to the entire [=Profile Annotation=] model, which potentially contains multilingual strings. While it is possible to provide multiple PAs of the same type with different languages, the current extension does not yet support this.

Also note that, while the contents of the Web Media use case usually do not require extensive multilingual support since the contents are typically in one language per page, the information within the [=Originator Profile=] requires multilingual support regardless of the contents.

The other challenge is selecting the languages to be included. For Japanese, inclusion of both Japanese and English is necessary, but it is not clear for other languages.

We are exploring various options to address this issue and may propose a different scheme that is more suitable for our use case.

Key delivery and discovery

The current version of the data model directly embeds a verification key in the format of JWKS [[RFC7517]]. Effectively, the current model does not allow key rollover. Also, there is no key discovery mechanism yet, since keys are usually not difficult to retrieve for the Web Media use cases. At the same time, we assume the website is operated by the [=Originator=] itself, and is reliable enough.

Without a doubt, this is not always the case. Especially, if we extend the use of the [=Originator Profile Framework=] to other use cases, including the Web Advertisement, we need to have a better mechanism.

We are designing a key discovery and rollover scheme using DNS/DNSSEC. DNSSEC provides benefits, including but not limited to the following:

  1. Allowing multiple keys for an identifier (such as DNS, Full Qualified Domain Name — FQDN) to coexist, with each key having different parameters, including validity period and algorithm selection.
  2. Multiple signatures can be associated with a set of resource records, each of which can be linked to one of the currently published keys alongside its corresponding signature. This scheme allows for the simultaneous publication of both old keys and new keys for a specified period, facilitating a smooth key rollover.
  3. Revoking a key is possible by just removing expired resource records.
These benefits also allow us to provide a reliable key discovery mechanism. Also, since DNS is highly scalable, it can accommodate a large number of keys without significant overhead.

While the current design of the [=Originator Profile Framework=] scheme does not rely on X.509[[X509V3]]-based certificates, it is possible to embed an X.509 certificate within the [=Core Profile=], then annotate it with multiple [=Profile Annotations=]. Unfortunately, if an X.509 certificate is used, it not only complicates the key rollover process, but also misses the benefits of DNSSEC, especially the low-overhead revocation. Note that the latest trend in operating X.509 certificates to address revocation checks is reducing the validity period, which is not ideal for our use case.

Profile Delivery/Retrieval

Currently, [=Originator Profile=] consists of [=Core Profile=], [=Profile Annotation=], [=Web Media Profile=], [=Website Profile=], and the [=Originator Profile=] is delivered via a well-known URL of the website. Each component of the [=Originator Profile=] may be distributed via different channels, then combined to be used at the [=Recipient=] side.

[=Core Profile=] is designed to be compact and deliverable via DNS, which relates to the aforementioned key rollover design. [=Profile Annotations=] may be delivered via different channels.

Extension of Profile Annotation

One of the key features of the [=Originator Profile Framework=] is its extensibility, which is achieved through the use of [=Profile Annotations=]. Each [=Profile Annotation=] can be defined to accommodate specific use cases and requirements, allowing for a flexible and adaptable framework. The following are some potential uses of the [=Profile Annotation=].

Profile Annotation Issuer Recognition

A kind of membership annotation is an example of [=Profile Annotation=] extensibility.

Interestingly, the existence of a [=Profile Annotation=] issued by the specific [=Profile Annotation Issuer=] itself, without additional [=Validated Attributes=] under the [=Profile Annotation Policy=], is useful enough to show the [=Profile Annotation Issuer=]'s intent. For example, if a media association issues a membership [=Profile Annotation=] to a media company, the existence of the membership [=Profile Annotation=] itself is sufficient to indicate that the media company is a member of the association, even if the [=Profile Annotation=] does not include additional [=Validated Attributes=].

This approach allows for a lightweight and efficient way to recognize the affiliation or membership of an [=Originator=] without the need for extensive data within the [=Profile Annotation=].

This concept can be applied to various use cases that require creating a kind of list of [=Originators=] who meet specific criteria, without creating and managing a list as a database.

Vocabularies and Profile Annotations

Vocabularies will play a crucial role in defining the semantics of [=Profile Annotations=]. They provide a standardized way to represent and communicate specific concepts, making it easier for different systems to understand and process the information contained within a [=Profile Annotation=]. By leveraging existing vocabularies or creating new ones, we can enhance the expressiveness and interoperability of [=Profile Annotations=].

Multiple existing vocabularies and schemas exist and can be utilized for [=Profile Annotations=]. These vocabularies provide a rich set of terms and definitions that can be used to describe various aspects of an [=Originator=] or its attributes.

Use Cases

In this section, we introduce some of the use cases we are currently trying to address. A list of requirements for that use case follows each use case narrative. This section loosely follows W3C’s Verifiable Credentials Use Cases style.

The use cases are divided into three categories: Web Media Use Cases, Local Government Use Cases, and Web Service Site Use Cases.

Web Media Use Cases

The Web Media Use Cases focus on scenarios where users accessing with media outlets, such as newspaper sites or broadcasting sites.

Paul: A user who reads news articles on a media site

Paul is an avid reader of news articles, usually reading articles from his favorite newspapers on their websites. Newspaper websites are curated as a whole, not just individual articles, making it easy to access articles Paul wants to read at any given time. If the site utilizes OP, it is easy to confirm that Paul is accessing the correct site he always visits, reducing the risk of accidentally connecting to fake sites, which is appreciated. Recently, a change in the editorial policy of a broadcasting company was announced. Paul noticed this and wanted to check the editorial policy of the newspaper company in question. Still, OP allows him to easily and reliably access information about the newspaper company's code of conduct. Media operational guidelines provided through OP are available through the same interface regardless of the site, making it easy to access the information and contact the relevant parties if necessary.

Requirements:

  • Finding OPs bound to a web page
  • Verifying an OP
  • Finding secured content in a web page
  • Showing the basic information in the OPs
  • Showing the originator’s policy in the OPs
  • Showing the originator’s contact in the OPs

Nancy: A user who reads news articles via a portal site

Nancy is a user who wants to spend as little time as possible using a computer. She thinks it is enough to get the bare minimum of news, so she mainly skims through news articles provided on the portal site she is familiar with. Today, she stumbled upon an article on the portal site that caught her attention, but she was skeptical because it seemed too well-written, so she wanted to know where the article came from. The article had an OP attached, so the source of the article was clear. Furthermore, since the article was a summary, she visited the source site to read the full text. Since the summary includes the link to the original article, which is secured via OP framework, she can safely click and follow the link to access the article. She can confirm the relationship between the original article and the summary, who is responsible for the summary, and whether the original article includes a link that has been altered without permission.

Requirements:

  • Finding secured content in a web page
  • Finding OPs bound to a secured content
  • Showing information about an attested content
  • Showing basic information in the OPs
  • Finding the original article location in the content
  • Verifying a content
  • Verifying an OP

John: A user who receives the latest news from social networks

John is an internet user who makes active use of social networks. He subscribes to online newspapers and occasionally visits their websites, but he primarily relies on news from social networks because it’s easy. Some of the articles shared on social networks catch his interest, and he occasionally clicks on them to learn more. However, he often finds that the headlines and photos on social networks that entice clicks do not match the actual articles, which has caused him frustration on multiple occasions. Additionally, there is a possibility that the linked articles may be related to criminal content, leading him to feel a strong sense of risk. If the relationship between the headlines on social networks and the actual articles were more reliable, it is anticipated that concerns about risks could be reduced, thereby minimizing specific issues

Requirements:

  • Finding secured content in a web page
  • Finding OPs bound to a secured content
  • Showing basic information in the OPs
  • Finding the original article location in the content
  • Verifying a content
  • Verifying an OP

Robert: A PC expert who visits news websites directly

Robert is a highly skilled PC expert who has been using the internet since before search engines were introduced. He finds it more comfortable to operate the computer using only the keyboard rather than relying on the mouse. When browsing websites, he directly inputs the URL into the URL bar to specify the site he wants to visit. Since he frequently visits most sites, the browser automatically completes the URL, allowing him to reach the desired website. However, he occasionally makes mistakes when typing. Criminals sometimes use website names that resemble well-known sites but are prone to typos. One day, Robert accidentally visited such a site. Fortunately, Robert had installed OP's web extension in his browser, so he noticed that the site did not have OP attached. Since the websites Robert usually uses have OP, he noticed the anomaly and avoided any issues.

Requirements:

  • Finding OPs bound to a web page
  • Verifying an OP

Emma: A user who views an ad on social media

Emma is an individual investor and a reader of business articles on her favorite social media. One day, she noticed an ad for a seminar conducted by Z Securities Company displayed alongside an article that caught her attention. She clicked the ad to open the website and checked the site's OP just to be sure, but could not find any valid attested OP on it. Then she returned to the ad image and found that there was no valid OP either. Emma knew that Z Securities usually advertises on TV and the Internet, and it uses OP on its website. As a result, she identified that both the ad and the website were fraudulent imitations of Z Securities, and she was able to avoid falling for an investment scam.

Requirements:

  • Finding secured content in a web page
  • Finding OPs bound to a secured content
  • Finding a signal that there is verified OP on the ad

Ichiro: A user who determines candidates' policies on social media ahead of an election

While researching for the upcoming election, Ichiro came across a post on social media from a well-known media outlet. It included a link to a video of a candidate's speech. He thought there was a problem with the content of the speech and considered sharing the post to inform more people about it. Before doing so, he checked the OP. The official website of the media outlet usually has a valid OP, but the linked site, which appeared to be the media outlet's website, did not. Ichiro quickly identified the website as mimicking and avoided spreading potentially deceptive content.

Requirements:

  • Finding secured content in a web page
  • Finding OPs bound to a secured content
  • Finding OPs that shows the content is created by AI
  • Verifying an OP

Local Government Use Cases

This section describes various use cases for local government sites utilizing OP framework.

Ken: A public relations officer at a local government office on the day of a major earthquake

A major earthquake hit the village where Ken works. Immediately after the quake, videos began to be spread on social media claiming that a tsunami had struck the village. But these videos were actually taken in a different location on a different day. And in reality, no tsunami had hit Ken's village.

Nevertheless, the office received numerous inquiries from people who had seen the social media posts about the tsunami. A claim such as "Social media reports that a tsunami has struck location A and residents are stranded. Please dispatch a rescue team" causes disruptions to many kinds of operations during the time of emergency.

Ken posted the following message on the office's website: "If you see footage of a disaster in the village on social media, first check the OP of the content. If there is an OP, it means that the information was posted responsibly by the originator." As a result, the confusion gradually subsided.

Requirements:

  • Finding OPs bound to a web page
  • Finding secured content in a web page
  • Finding OPs bound to a secured content
  • Verifying an OP

Web Service Site Use Cases

This section describes various use cases for web service sites utilizing OP framework.

Rodney: A user accesses a credit card service website

The credit card company Rodney is using, Japan Express, provides online services. He usually uses a smartphone app to access his account information securely. Rodney accesses the Japan Express website once a month to download billing information. Japan Express fully adopts the [=Originator Profile=]. When accessing the Japan Express website, Rodney can confirm both an icon indicating that the site is operated by a Japanese company and an icon indicating that it provides credit card services, ensuring that Rodney is not being redirected to a phishing site and enabling him to conduct transactions with peace of mind.

Requirements:

  • Finding OPs bound to a web page
  • Verifying an OP
  • Refer to a verifiable attribute in the OP
  • Showing the attributes in OP via Icons in the URL Bar

Requirements

In this section, we describe the requirements for the [=Originator Profile Framework=], distilled from the use cases. Please Refer to Appendix for the details.

Entities of OP

The following [=Entities=] are identified from the use cases:

Requirements from the Use Cases

The following requirements are identified from the use cases: