OLD PoC Docs

Overview

Development Environment

The OBADA development environment in AWS includes the OBADA "TestChain" blockchain simulator, API's for decentralized permissioning of users, and APIs for asset management and data storage, currently being maintained by OBADA staff.

Founding Stakeholders: Requirements & Funding

The Pilot Program requires a shared ecosystem to be tested. Founding Stakeholders will each need:

  • A hosted development environment to test the APIS

  • A technical resource capable of connecting predefined APIs with their internal systems. Phase 1 does not require any specific "blockchain knowledge". It is simply to connect APIs using standard web interfaces. Future phases may (or may not) require more complex technical capabilities.

  • Total implementation time 4-8 hours + test & debug.

  • To share in paying for OBADA costs associated with developing and maintaining the APIS and development infrastructure.

Pilot Program Phases

Phase 1 of the Pilot Program is a "horizontal approach" to "connect" registrars and users using these APIS to create the foundational permissions layer needed for future phases. Phase 2 will be to add the "asset layer" to manage the devices, and in Phase 3 an "events layer" will connect the organizations servicing of these devices. Proceeding with this horizontal approach is far more efficient than the previous approach of developing disconnected "Vertical pilots" on different steps and timelines.

Second Pilot Program (2020)

Once the environment for the ecosystem is established, a new pilot will extend the functionality to include the use of Digital Assets to enable Sustainability Initiatives such as an "e-waste offset", and to enable service providers to charge transaction fees, a small portion of which can be collected to run the ecosystem.

Intellectual Property

All OBADA work is open-sourced and standards based. Nothing is confidential. If any Pilot Participant has actual knowledge of a confidential information or a patent claim which the individual believes is related, they must disclose the information or recuse themselves from the group.

Primary Use Case for Phase 1

The main "use case" for the first pilot is to implement API's compliant with the "Proof of Concept" (PoC) project of US Customer and Border Protection.

Founding Stakeholders ASCDI and World Data Products (WDPI) are long standing members of the Commercial Customs Operations Advisory Committee (COAC), a stakeholders group advising US Customs Border Protection (CBP). The CBP PoC is a pilot program to verify an importer rights at the border using blockchain.

The current phase of the CBP PoC implements APIs using emerging standards to allow entities to verify and supply credentials to one another, which aligns with OBADAs Pilot Program. Although the CBP plan is confidential and under NDA with lead pilot participants, this foundational layer is based on standards so the framework developed for this phase of the PoC can use the same code as the OBADA Protocol, and can be shared with all OBADA participants.

Pilot Roadmap

Phase 1: Identity Management (people & organizations)

  • July 2019

    • Development Environment Established (done)

    • API's created and documented (in process)

    • Initial participants meeting the above requirements are identified and given information and credentials to access the dev environment. (in process)

  • August 2019

    • Pilot Participants install code and test APIs against OBADA TestChain

    • Phase 2 plans developed

Phase 2: Asset Management (physical things)

  • September/October 2019

    • Similar to Phase 1 (tbd)

Phase 3: Tracking Events (what happens to these things)

  • Q4 2019

    • Similar to Phase 1 (tbd)

Phase 4: Compliance & Reporting

  • 2020

    • tbd

FUTURE: Sustainability Initiatives, Fungible Device Handling, Smart Contracts, etc..

  • 2020-2025

Roles & Participants

Three roles are needed for the permissions layer; the Registrar who maintains a "list of their users". Their users which form the second role, the Owner of a device. The Owner needs to obtain an OBADA Compliance Credential from the registrar in order to use the OBADA Blockchain. The final role is the Verifier, any person or utility that needs to verify the Owner's identity and/or OBADA Compliance Credential. The Validator could be an individual, an outside blockchain (such as CBP or BiTA), or the OBADA Blockchain itself.

The above terminology comes from OBADA. The proposed standards and CBP each use different terminology as shown:

Terminology: OBADA / "W3C" / "CBP"

OBADA Development

  • Contact: Rohi Sukhia, Developer: Andrii Tarykin

Registrar / "Issuer" / "Rights Holder" Role

  • Primary Stakeholder

    • ASCDI , Del Rey Beach, FLA (contact: Joe Marion, developer: Dennis Hurst)

    • Other Stakeholders

    • e-Reuse.org, Barcelona, Catalonia, Spain

    • TechBroker, Saratoga Springs, NY

    • The Broker Site, Breda, Netherlands

    • Tradeloop, Boston, MA

    • Reverse Logistics Association

    • SERI

  • Potential Stakeholders

    • Backmarket (NYC)

    • BrokerBin (MN)

    • Electronics REcyling.org (Jason Linnel) ?

    • ERN (Electronics Reuse Network) (Chicago)?

    • Free ICT Europe (Netherlands)?

    • ITAD Coalition (Washington, DC)?

    • Repair.org (NY)?

    • SDD Africa (Sustainable Digital Development) ?

Owner* / "Holder" / "Importer" Role *"e.g. device owner" - is there a better name?

  • Primary Stakeholders

    • WDPI (contact: Neil Vill, developer: Nevin Lee )

  • Other Stakeholders

    • Good Point Recycling (Vermont)

    • VIG Computers (Canada)

  • Potential Stakeholders

    • Any other OBADA "user" can participate as an owner. (ITADs,Recyclers, etc)

Validator (general function)

  • Main Partipant

    • OBADA TestChain endpoint

    • CBP PoC endpoint (ASCDI/WDPI only)

  • Founding Stakeholder

    • Brennick endpoint

Phase 1 Architecture Diagram

Business Logic - Functional Steps for Verifying a Credential (in order)

1. Establish DID Identifiers for all parties

  • OBADA establishes an 'Issuer DID on "some blockchain"

  • Owner establishes a DID on "some blockchain"

  • Registrar establishes an 'Issuer DID on "some blockchain"

1b. All parties store their Link Secrets in a Wallet

2. OBADA authorizes Registrar

  • OBADA issues a Verified Credential to Registrar

  • Registrar accepts and stores Verified Credential in Wallet

  • Notes:

    • This step is likely a "one time" job to set up each Registrar.

    • It will be possible to later implement a method so OBADA can revoke the Registrar's Verified Credential

3. Registrar authorizes Owner

  • Registrar issues a Verified Credential to Owner using process above.

  • Owner needs to store Link Secret in Wallet

  • Credential simple indicates is_approved

    • Later, additional information can be added by defining different "statuses"

4. Verifier approves Owner

  • Owner signs Verified Credential (with Link Secret) and supplies Signed Verified Credential to Verifier

  • Verifier checks DID's/Signatures and approves or denies

  • Implications

    • Owner does not need to reveal their identity to Verifier. They can be verified as "complaint" while still remaining anonymous.

    • Owner could prove their contact info via optional information supplied by the Registrar.

Technical Details

Standards and Languages

Phase 1 APIs will adhere to the emerging W3C standards for Decentralized Identifiers (DiDs) and the Verified Credentials Data Model.

Specs

Specs and software will be made available shortly for test, either here or in Github, linked from here.

The only libraries and practical examples available for the these standards are written in javascript, so the first OBADA SDK is in javascript. Data will be transferred according to the standard JSON-LD data format.

Use of a SSI Network (Self-Sovereign Identity Network)

DiD's typically rely on a blockchain known as a "SSI Network" to store the DiD and return a proof document and several public utilities have been formed for this purpose. For the Pilot Program, we will define a simple namespace in the OBADA TestChain as the "OBADA DiD Network"

Eventually, the OBADA Technical Working Group and OBADA Governance will need to decide if OBADA should enable our own DiD Network, should utilize a public utility, or should institute a best practice to require entities to choose their own complaint DID Network.

Last updated