Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Schema Definitions and Overlays for Self-Sovereign Identity (SSI) - Paul Knowles

121 views

Published on

http://ssimeetup.org/overlays-1o1-establishing-schema-definitions-self-sovereign-identity-ssi-ecosystem-paul-knowles-webinar-17/

Paul Knowles, Innovation & Emerging Technology at Dativa and chair of the Schemas and Overlays Working Group at Sovrin Foundation, will be our next guest presenting a new data capture model to the global SSI (Self-Sovereign Identity) community.

This talk introduces Overlays, data structures that provide extra layers of contextual and/or conditional information to Schemas. Paul will show how Overlays ensure that Schema definitions can remain in their simplest form thus providing a standard base from which to decentralise data. The extra context provided by Overlays can be used by an Agent to transform how information is displayed to a viewer or to guide the Agent in how to apply a custom process to Schema data. All components within this flexible data capture architecture contain DIDs (Decentralised Identifiers) for linked association and search purposes.

The presentation will also include a live demonstration from *Robert Mitwicki from Lab10 Collective* to show how a set of Overlays can be added to a plain Schema to provide richer complexity to the base structure.

Published in: Internet
  • Be the first to comment

  • Be the first to like this

Schema Definitions and Overlays for Self-Sovereign Identity (SSI) - Paul Knowles

  1. 1. Establishing Schema Definitions within the Self-Sovereign Identity (SSI) Ecosystem Paul Knowles - Innovation & Emerging Technology, Dativa - Chair of the Schemas and Overlays WG, Sovrin Foundation Overlays 1O1: SSIMeetup.orghttps://creativecommons.org/licenses/by-sa/4.0/ Robert Mitwicki - Co-Founder & Software Engineering, Lab10 Collective - Member of the Schemas and Overlays WG, Sovrin Foundation
  2. 2. 1. Empower global SSI communities 2. Open to everyone interested in SSI 3. All content is shared with CC BY SA SSIMeetup.org Alex Preukschat @SSIMeetup @AlexPreukschat Coordinating Node SSIMeetup.org https://creativecommons.org/licenses/by-sa/4.0/ SSIMeetup objectives
  3. 3. What is a Schema? Schema. A machine-readable definition of the semantics of a data structure. Schemas are used to define the Attributes used in one or more Credential Definitions. - Sovrin Glossary (version 2) SSIMeetup.orghttps://creativecommons.org/licenses/by-sa/4.0/
  4. 4. What is an Overlay? Overlay. A data structure that provides an extra layer of contextual and/or conditional information to a Schema. This extra context can be used by an Agent to transform how information is displayed to a viewer or to guide the Agent in how to apply a custom process to Schema data. - Sovrin Glossary (version 2) SSIMeetup.orghttps://creativecommons.org/licenses/by-sa/4.0/
  5. 5. Why are Overlays useful? • Overlays allow an Agent to add extra layers of conditional or contextual information to a Schema; • Overlays allow an Agent to update contextual information without having to reissue a new Schema; • Overlays ensure that Schema can remain generic thus allowing diverse use cases per Schema; • Overlays ensure that Schema definitions can remain in their simplest form thus providing a standard base from which to decentralise data; • The Overlay design has very little impact on the existing Hyperledger Indy* solution. * Although early phase development will take place on Hyperledger Indy, the aim is to develop the code to be platform agnostic. SSIMeetup.orghttps://creativecommons.org/licenses/by-sa/4.0/
  6. 6. Initial Implementation International non-profit global public utility for self-sovereign identity Open source code for SSI contributed by Sovrin to Linux Foundation SSIMeetup.orghttps://creativecommons.org/licenses/by-sa/4.0/
  7. 7. Types of Overlay • Entry Overlay -> to add predefined field values to Schema attributes; • Conditional Overlay -> to add conditional programming to a Schema; • Label Overlay -> to add category and attribute labels to Schema attributes (incl. language translations); • Informational Overlay -> to add descriptions and contextual information to a Schema (incl. service hints and informational text); • Sensitive Overlay (Holder only) -> to enable a Holder to flag user-defined sensitive attributes; • Subset Overlay -> to create a Schema subset SSIMeetup.orghttps://creativecommons.org/licenses/by-sa/4.0/
  8. 8. Deficiencies from a tech implementation perspective GDPR : • Introducing the … Blinding Identity Taxonomy (BIT) • The need for a common standard to help protect the privacy of personally identifiable information (PII) about people, organizations, or things SSIMeetup.orghttps://creativecommons.org/licenses/by-sa/4.0/
  9. 9. • Names (incl. First Names, Last Names, Full Names, Entity Names) • Physical Addresses • E-mail Addresses • Telephone Numbers • Postal Codes • Personal Software Application Handles (e.g. Skype, Slack, Hyperledger Chat, etc.) • Profile Pages • Passport Numbers • Social Security Numbers • National Insurance Numbers • Driving License Numbers • Vehicle Registration Numbers • Bank Account Numbers • Credit (or Debit) Card Numbers • Personal Identification Numbers (PIN) • Self-sovereign Key Identifiers • Decentralised Identifiers (DIDs) • Employee Identifiers • Account Identifiers • Governmental Identifiers • Membership Identifiers (e.g. Trade Union Membership, etc.) • Institutional Identifiers (e.g. Private Health Care Identifiers, etc.) • Case Identifiers (e.g. Case ID Numbers, Benefit Plan Participation Identifiers, etc.) • User Identifiers (e.g. User IDs, Logins, etc.) • Passwords • Signatures • Digital Certificates • Photos • Videos • Images • Vocal Sound Bites • Dates (e.g. Date of Birth, etc.)* • Genetic Identifiers (incl. chromosomal, deoxyribonucleic acid (DNA) and ribonucleic acid (RNA) data) • Biometric Identifiers (incl. voiceprints, iris scans, facial imaging and dactyloscopic (fingerprint) data) • Internet Protocol (IP) Addresses • Media Access Control (MAC) Addresses • GPS Locational Information • Cookie Browser Identifiers • Radio Frequency Identifiers • IoT Identifiers (incl. smart meter data) • International Mobile Equipment Identity (IMEI) • International Mobile Subscriber Identity (IMSI) • Social media interactive elements, posts and comments (incl. likes, emojis and polling results) • Free-Form Text Fields / Unstructured Data** Blinding Identity Taxonomy(BIT) https://creativecommons.org/licenses/by-sa/4.0/ * Not all captured dates will reveal identity but some will so, if in doubt, encrypt. ** Defn.: Text which does not have a given structure, nor which is entered in any specific format. Note: All free-form text fields should be encrypted.
  10. 10. BIT Schema Object • To flag personally identifiable information (PII) attributes that could unblind the identity of a person, an organization or a thing with reference to the Blinding Identity Taxonomy (BIT). SSIMeetup.orghttps://creativecommons.org/licenses/by-sa/4.0/
  11. 11. Creating a Schema with linked Overlays SSIMeetup.orghttps://creativecommons.org/licenses/by-sa/4.0/
  12. 12. { "attributes": { "birthDate": "Date", "age": "Integer", "ageUnit": "String", "gender": "String", "ethnicGroup": "String", "race1": "TrueClass", "race2": "TrueClass", "race2Specific": "String", "race3": "TrueClass", "race4": "TrueClass", "race5": "TrueClass", "race6": "TrueClass" }, "bit_attributes": [ { "birthDate": "sensitive" } ], "did": "did:sov:3214abcd", "name": "Demographics", "description": "Created by MEDIDATA", "version": "1.0", "formSource": "DEM" } “Demographics” Schema Schema metadata attributenames& types BIT Schema Object : The Schema attribute “birthDate” has been flagged by the Issuer as “Dates (e.g. Date of Birth, etc.)” is one of the 44 listed elements in the Blinding Identity Taxonomy (BIT) Schema SSIMeetup.orghttps://creativecommons.org/licenses/by-sa/4.0/
  13. 13. Entry Overlay { "did": "did:sov:1234abcd", "type": "spec/overlay/1.0/entry", "name": "Demographics Entry", "schemaDID": "did:sov:3214abcd", "schemaVersion": "1.0", "schemaName": "Demographics", "predefined_values": { "ageUnit": [ "YEAR" ], "gender": [ "MALE", "FEMALE" ], "ethnicGroup": [ "HISPANIC OR LATINO", "NOT HISPANIC OR LATINO", "NOT REPORTED", "UNKNOWN" ], "race2Specific": [ "CHINESE", "TAIWANESE", "ASIAN INDIAN", "KOREAN", "MALAYSIAN", "VIETNAMESE", "OTHER ASIAN" ] } } ENTRY_OVERLAY Overlay metadata predefinedfield values Schema reference
  14. 14. Conditional Overlay { "did": "did:sov:9837hdv74ef", "type": "spec/overlay/1.0/conditional", "name": "Demographics Conditional", "schemaDID": "did:sov:3214abcd", "schemaVersion": "1.0", "schemaName": "Demographics", "conditional": { "hidden_attributes": [ { "race2Specific": ":race2 == false" } ], "required_attributes": [ { "birthDate": true, "gender": true, "ageUnit": ":age != null" } ] } } CONDITIONAL_OVERLAY Overlay metadata conditional programming Schema reference SSIMeetup.orghttps://creativecommons.org/licenses/by-sa/4.0/
  15. 15. Label Overlay { "did": "did:sov:59248239", "type": "spec/overlay/1.0/label", "name": "Demographics Label English", "schemaDID": "did:sov:3214abcd", "schemaVersion": "1.0", "schemaName": "Demographics", "language": "en_US", "attribute_labels": { "birthDate": "Date of Birth", "age": "Age", "ageUnit": "Age unit", "gender": "Sex", "ethnicGroup": "Ethnicity", "race1": "American Indian or Alaska Native", "race2": "Asian", "race2Specific": "If race is Asian, specify origin", "race3": "Black or African American", "race4": "Native Hawaiian or Other Pacific Islander", "race5": "White", “race6": "Race Unknown" }, "attribute_categories": { "race": [ "race1", "race2", "race2Specific", "race3", “race4", "race5", "race6" ] }, "category_labels": { "race": "Race" } } LABEL_OVERLAY Schema reference Overlay metadata attribute labels definingand labelling categories Language definition SSIMeetup.orghttps://creativecommons.org/licenses/by-sa/4.0/
  16. 16. Informational Overlay { "did": "did:sov:58kosf0239", "type": "spec/overlay/1.0/informational", "name": "Demographics Informational", "schemaDID": "did:sov:3214abcd", "schemaVersion": "1.0", "schemaName": "Demographics", "language": "en_US", "attribute_instructions": { "birthDate": "Fill in your Date of Birth", "age": "Fill in your Age", "gender": "Choose your Sex", "ethnicGroup": "Choose your Ethnicity", "race1": "Select if you are American Indian or Alaska Native", "race2": "Select if you are Asian", "race2Specific": "If race is Asian, select Specific Origin", "race3": "Select if you are Black or African American", "race4": "Select if you are Native Hawaiian or Other Pacific Islander", “race5": "Select if you are White", "race6": "Select if if race is Unknown" }, "category_instructions": { "race": "Select all that apply" } } INFORMATIONAL_OVERLAY Overlay metadata informational text Schema reference
  17. 17. Sensitive Overlay (Holder only) { "did": "did:sov:12idksjabcd", "type": "spec/overlay/1.0/sensitive", "name": “Sensitive", "attributes": [ "gender" ] } SENSITIVE_OVERLAY Overlay metadata user-defined sensitive attributes No Schema reference SSIMeetup.orghttps://creativecommons.org/licenses/by-sa/4.0/
  18. 18. Subset Overlay { "did": "did:sov:1123414abcd", "type": "spec/overlay/1.0/subset", "name": "Demographics Subset", "schemaDID": "did:sov:3214abcd", "schemaVersion": "1.0", "schemaName": "Demographics", "attributes": [ "birthDate", "age", "ageUnit", "gender" ] } SUBSET_OVERLAY Overlay metadata defining attributes for a schema subset Schema reference SSIMeetup.orghttps://creativecommons.org/licenses/by-sa/4.0/
  19. 19. Overlays: Demo Robert Mitwicki - Co-Founder & Software Engineering, Lab10 Collective - Member of the Schemas and Overlays WG, Sovrin Foundation SSIMeetup.orghttps://creativecommons.org/licenses/by-sa/4.0/
  20. 20. Establishing Schema Definitions within the Self-Sovereign Identity (SSI) Ecosystem Paul Knowles - Innovation & Emerging Technology, Dativa - Chair of the Schemas and Overlays WG, Sovrin Foundation Overlays 1O1: SSIMeetup.orghttps://creativecommons.org/licenses/by-sa/4.0/ Robert Mitwicki - Co-Founder & Software Engineering, Lab10 Collective - Member of the Schemas and Overlays WG, Sovrin Foundation

×