ethereum-oasis-op / baseline-blips

Baseline Protocol Improvement Proposals (BLIPs) play a key role in properly proposing, developing, and implementing changes to the Baseline Protocol. This repo contains all BLIPs.
Creative Commons Zero v1.0 Universal
10 stars 5 forks source link

[BLIP-13] SRI/BRI-3 Overview #32

Open Ybittan opened 2 years ago

Ybittan commented 2 years ago

[BLIP-13] SRI/BRI-3 Overview

Author(s)

List of contributor(s) name(s) and/or git username(s), email(s), e.g. @Ybittan @Kasshern @biscuitdey @skosito @Manik-Jain @ognjenkurtic


Description

BRI-3, dubbed the Simple Reference Implementation, is intended to be the most basic implementation of the Baseline Protocol, while still being fully compliant. Please note: fully compliant in this context means that all the relevant requirements of the standard will be implemented, however, there will be several requirements that are out of the scope of this project, and will not be necessary.

The purpose of this BLIP issue is to give an overview of the effort and provide a central location to track resources and updates. This will serve as a living document, to be updated once new issues or resources are created.


Motivation

This reference implementation could be used by future developers or interested parties to understand the scope of a basic implementation, and what it means to be fully compliant. Aside from this important use, it was decided by the TSC for this to be the main focus of 2022's roadmap.


Resources

GitHub Issues Approved Grant Request

[SRI] Workgroup Setup Functionality [SRI] ZKP Component: Generate Content Addressable Hash [SRI] Merkle Tree CRUD [SRI] ZKP Component: Zero knowledge circuit verifier [SRI] ZKP Component: Implement DocumentObject [SRI] ZKP Component: Add additional verification methods [SRI] ZKP Component: Add BPI Account to Anchor Hash [SRI] ZKP component: Implement signature [SRI] enable cors setting [SRI] authentication unit test case changes [SRI] login with Metamask minimalistic UI [SRI] expose authentication API [SRI] implement NestJS style authentication [SRI] Prepare proposal to record history of state changes [SRI] Add missing mapper to modules [SRI] Fix transaction from and to fields [SRI] Consistent prisma association cases [SRI] Prepare proposal on workgroup set up [SRI] Prepare proposal on privacy policy [SRI] Prepare proposal on workgroup invitations [SRI] Prepare proposal on messaging [SRI] Prepare proposal on authz [SRI] Prepare proposal on authn [SRI] Add missing fields to Bpi Account [SRI] Add missing fields to Bpi Subject Account SRI Zero-Knowledge Component: Proof API SRI Zero-Knowledge Component: Shield Contract SRI Zero-Knowledge Component: Connect to blockchain BPISubject publicKey as an object for BRI-3 [SRI] Add missing mapper to modules [SRI] Fix transaction from and to fields [SRI] Consistent prisma association cases change response DTO interfaces to classes [SRI] (PoC) investigate nestjs mapper [SRI] modify mapper to invoke class constructor dynamically [SRI] Refactor transaction API with mapper SRI Messaging Component- Interfaces, Classes and API SRI Subject Account Component- Interfaces, Classes and API SRI - Fix Jest build configuration with ttsc SRI Transactions - Model and CRUD Api Introduce a readme for the BRI-3 project Decide on logging strategy and library for BRI-3 (SRI) Introduce validation for incoming DTOs for BRI-3 Write generic mappers for BRI-3 Prepare a proposal for the Messaging component as part of the SRI Prepare a proposal for the Transactions component as part of the SRI SRI folder structure SRI Zero-Knowledge Component: Integration SRI Zero-Knowledge Component: Zero-Knowledge Circuit Provider SRI Zero-Knowledge Component: Sparse Merkle Tree SRI Zero-Knowledge Component: IPFS preparation tasks Introduce basic CI\CD for SRI Introduce a linter and formatting style for the SRI project SRI Accounts Component- Interfaces, Classes and API SRI Subjects Component- Interfaces, Classes and API SRI Workstep Component- Interfaces, Classes and API SRI Workflow Component- Interfaces, Classes and API SRI Workgroup Component- Interfaces, Classes and API SRI Zero-Knowledge Component: Off-chain Merkle Tree SRI Storage Component - SQL Calls to DB SRI Storage Component - Database Preparation Tasks

Google Docs SRI Docs Folder


Grant Work

Members of this project have submitted a grant request, which has been approved by the TSC.


Copyright and related rights waived via CC0-Universal.