Skip to content

Commit

Permalink
Fix various aspects of privacy.html.
Browse files Browse the repository at this point in the history
  • Loading branch information
TallTed authored Sep 26, 2023
1 parent 0850394 commit 77f95bc
Showing 1 changed file with 27 additions and 27 deletions.
54 changes: 27 additions & 27 deletions privacy.html
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<!DOCTYPE html>
<html>
<head>
<title>Verifiable Claims Data Model 1.0: Privacy Analysis</title>
<title>Verifiable Credentials Data Model 1.0: Privacy Analysis</title>
<meta http-equiv='Content-Type' content='text/html;charset=utf-8'/>
<!--
=== NOTA BENE ===
Expand All @@ -16,10 +16,10 @@
specStatus: "ED",

// the specification's short name, as in http://www.w3.org/TR/short-name/
shortName: "verifiable-claims-privacy-analysis",
shortName: "verifiable-credentials-privacy-analysis",

// subtitle for the spec
subtitle: "A privacy analysis of the Verifiable Claims data model",
subtitle: "A privacy analysis of the Verifiable Credentials data model",

// if you wish the publication date to be other than today, set this
//publishDate: "2017-08-03",
Expand Down Expand Up @@ -62,7 +62,7 @@
],

// name of the WG
wg: "Verifiable Claims Working Group",
wg: "Verifiable Credentials Working Group",

// URI of the public WG page
wgURI: "https://www.w3.org/2017/vc/",
Expand All @@ -73,7 +73,7 @@
// URI of the patent status for this WG, for Rec-track documents
// !!!! IMPORTANT !!!!
// This is important for Rec-track documents, do not copy a patent URI from a random
// document unless you know what you're doing. If in doubt ask your friendly neighbourhood
// document unless you know what you're doing. If in doubt ask your friendly neighborhood
// Team Contact.
wgPatentURI: "https://www.w3.org/2004/01/pp-impl/98922/status",
maxTocLevel: 4,
Expand Down Expand Up @@ -102,7 +102,7 @@
<body>
<section id='abstract'>
<p>
This document is a privacy analysis of the Verifiable Claims Data Model.
This document is a privacy analysis of the Verifiable Credentials Data Model.
</p>
</section>

Expand All @@ -121,59 +121,59 @@
<h1>Privacy Analysis</h1>

<section>
<h2>Does this specification deal with personally-identifiable information?</h2>
<h2>Does this specification deal with personally identifiable information?</h2>
<p>
Yes. The properties inside Verifiable Claims are Personally Identifiable Information (PII).
Yes. The properties inside Verifiable Credentials include Personally Identifiable Information (PII).
</p>
<p>
Recommendation: None as the specification makes this clear.
Recommendation: None, as the specification makes this clear.
</p>
</section>

<section>
<h2>Does this specification deal with high-value data?</h2>
<p>
Potentially yes. The specification places no restrictions on what data can be placed in a Verifiable Claim, but it could be highly sensitive personal data.
Potentially yes. The specification places no restrictions on what data can be placed in a Verifiable Credential, so it could include highly sensitive personal data.
</p>
<p>
Recommendation: Protocols that carry Verifiable Claims should always encrypt the Verifiable Claim payload. In addition, Verifiable Claims that contain highly sensitive personal data should have that data encrypted inside the Verifiable Claim, so that any entity that captures the Verifiable Claim is not able to see the sensitive information.
Recommendation: Protocols that carry Verifiable Credentials should always encrypt the Verifiable Credential payload. In addition, Verifiable Credentials that contain highly sensitive personal data should have that data encrypted inside the Verifiable Credential, so that any entity that captures the Verifiable Credential is not able to see the sensitive information.
</p>
</section>

<section>
<h2>Does this specification introduce new state for an origin that persists across browsing sessions</h2>
<p>
Not of itself no, as the specification only specifies a data structure. However, protocols that use this specification may introduce new state.
Not in itself, no, as the specification only specifies a data structure. However, protocols that use this specification may introduce new state.
</p>
<p>
Recommendation: None
</p>
</section>

<section>
<h2>Does this specification expose persistent, cross-origin state to the web?</h2>
<h2>Does this specification expose a persistent, cross-origin state to the web?</h2>
<p>
Yes. Verifiable Claims contain a random though potentially persistent identifier (PId) of the subject. This is passed between the issuer and the inspector. Consequently collusion between them could identify the subject to the inspector, even though the Verifiable Claim itself does not. This is because in many cases the issuer will know the complete identity of the subject, even if the Verifiable Claim only contains a small proportion of it (such as age).
Yes. Verifiable Credentials contain a random though potentially persistent identifier of the subject. This is passed between the issuer and the verifier. Consequently, collusion between them could identify the subject to the verifier, even though the Verifiable Credential itself does not. This is because in many cases the issuer will know the complete identity of the subject, even if the Verifiable Credential only contains a small proportion of it (such as age).
</p>
<p>
Recommendation: The subject should limit the distribution of Verifiable Claims containing the same PId to a minimal number of origins. The subject should obtain Verifiable Claims with different PId to send to different origins wherever possible.
Recommendation: The holder should limit the distribution of Verifiable Credentials containing the same PId to a minimal number of origins. The holder should obtain Verifiable Credentials with different PId to send to different origins wherever possible.
</p>
</section>

<section>
<h2>Does this specification expose any other data to an origin that it doesn’t currently have access to?</h2>
<p>
Yes. It is the purpose of Verifiable Claims to present identity attributes of the subject to the inspector. Note however that this is always with the full consent of the subject, except in the special case where the holder is not the subject. In this latter case the holder must be authorized to present this information to the inspector, otherwise the inspector should reject it.
Yes. It is the purpose of Verifiable Credentials to present identity attributes of the subject to the verifier. Note, however, that this is always with the full consent of the subject, except in cases where the holder is not the subject. In this latter case, the holder must be authorized to present this information to the verifier; otherwise, the verifier should reject it.
</p>
<p>
Recommendation: Inspectors should only accept Verifiable Claims from subjects or from holders who are authorized to present them to the inspector.
Recommendation: Verifier should only accept Verifiable Credentials from subjects or holders who are authorized to present them to the verifier.
</p>
</section>

<section>
<h2>Does this specification enable new script execution/loading mechanisms?</h2>
<p>
Not of itself no, as the specification only specifies a data structure. However, protocols that use this specification may enable script loading.
Not in itself, no, as the specification only specifies a data structure. However, protocols that use this specification may enable script loading.
</p>
<p>
Recommendation: None
Expand All @@ -183,7 +183,7 @@ <h2>Does this specification enable new script execution/loading mechanisms?</h2>
<section>
<h2>Does this specification allow an origin access to a user’s location?</h2>
<p>
Yes. Verifiable Claims may contain location information such as a subject’s home address, phone number, or current postal address.
Yes. Verifiable Credentials may contain location information such as a subject’s home address, phone number, or current postal address.
</p>
<p>
Recommendation: None.
Expand All @@ -193,7 +193,7 @@ <h2>Does this specification allow an origin access to a user’s location?</h2>
<section>
<h2>Does this specification allow an origin access to sensors on a user’s device?</h2>
<p>
Not of itself no, as the specification only specifies a data structure. However, protocols that use this specification may enable access to sensors on a user’s device.
Not in itself, no, as the specification only specifies a data structure. However, protocols that use this specification may enable access to sensors on a user’s device.
</p>
<p>
Recommendation: None.
Expand All @@ -203,7 +203,7 @@ <h2>Does this specification allow an origin access to sensors on a user’s devi
<section>
<h2>Does this specification allow an origin access to aspects of a user’s local computing environment?</h2>
<p>
Not of itself no, as the specification only specifies a data structure. However, protocols that use this specification may enable an origin to access aspects of a user’s local computing environment.
Not in itself, no, as the specification only specifies a data structure. However, protocols that use this specification may enable an origin to access aspects of a user’s local computing environment.
</p>
<p>
Recommendation: None.
Expand All @@ -213,7 +213,7 @@ <h2>Does this specification allow an origin access to aspects of a user’s loca
<section>
<h2>Does this specification allow an origin access to other devices?</h2>
<p>
Not of itself no, as the specification only specifies a data structure. However, protocols that use this specification may enable an origin to access other devices e.g. to move a Verifiable Claim from one device to another.
Not in itself, no, as the specification only specifies a data structure. However, protocols that use this specification may enable an origin to access other devices, e.g., to move a Verifiable Credential from one device to another.
</p>
<p>
Recommendation: None.
Expand All @@ -223,7 +223,7 @@ <h2>Does this specification allow an origin access to other devices?</h2>
<section>
<h2>Does this specification allow an origin some measure of control over a user agent’s native UI?</h2>
<p>
Not of itself no, as the specification only specifies a data structure. However, protocols that use this specification may enable an origin some measure of control over a user agent’s native UI.
Not in itself, no, as the specification only specifies a data structure. However, protocols that use this specification may enable an origin some measure of control over a user agent’s native UI.
</p>
<p>
Recommendation: None.
Expand All @@ -233,10 +233,10 @@ <h2>Does this specification allow an origin some measure of control over a user
<section>
<h2>Does this specification expose temporary identifiers to the web?</h2>
<p>
Potentially yes. The subject’s ID in a Verifiable Claim could be a temporary identifier that is not stored permanently anywhere.
Potentially, yes. The subject’s ID in a Verifiable Credential could be a temporary identifier that is not stored permanently anywhere.
</p>
<p>
Recommendation: Verifiable Claims should be encrypted during transfer to avoid their contents being snooped.
Recommendation: Verifiable Credentials should be encrypted during transfer to avoid their contents being snooped.
</p>
</section>

Expand All @@ -260,10 +260,10 @@ <h2>How should this specification work in the context of a user agent’s "incog
<section>
<h2>Does this specification persist data to a user’s local device?</h2>
<p>
The overall life cycle of Verifiable Claims envisages that they are stored persistently on the user’s local device or on a remote device under the user’s control. However, Verifiable Claims on their own, if captured by a hostile entity, should not be of any value to it, except in so far as the Verifiable Claim may potentially reveal a small amount of Personally Identifiable Information (PII) about the subject.
The overall life cycle of Verifiable Credentials envisages that they may be stored persistently on the user’s local device or on a remote device under the user’s control. However, Verifiable Credentials on their own, if captured by a hostile entity, should not be of any value to it, except in so far as the Verifiable Credential may potentially reveal a small amount of Personally Identifiable Information (PII) about the subject.
</p>
<p>
Recommendation: Verifiable Claims should be encrypted during storage to prevent them being stolen by an attacker
Recommendation: Verifiable Credentials should be encrypted during storage to prevent them being stolen by an attacker
</p>
</section>

Expand Down

0 comments on commit 77f95bc

Please sign in to comment.