-
Notifications
You must be signed in to change notification settings - Fork 5
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[BLIP-1] Finding measurements for worksteps requiring and not requiring CCSM or ZKP #1
Comments
Meeting setup for 11/9/2021 to discuss path forward for this. Mehran Shakeri finalizing use case prior to discussion. |
11/12/2021: TSC discussing updates and next steps on BLIP-1. |
11/17/2021: Follow up meeting. Next Steps:
Notes: |
Here is the first draft of an end-to-end supply chain business process. It a simplified version of what you can find in OASIS UBL 2.3 Supply Chain Business Processes As next steps we can
|
I want to suggest
We can discuss this in the BLIP-call, I volunteer for taking responsibility for these tasks and am happy if we find someone to co-work / pair-contribute. |
Certificate of Origin should be proven to shipper that exists and is valid |
We track our changes here |
In the swimlane diagram
Identified ZKP relations [incomplete]
User Story - [Draft] Supplier (Exporter) and Buyer (Importer) have mutually signed a Master Agreement. Buyer sets a new Order based on agreed upon Master Agreement. This Order includes ordered Line Items and quantity per each item. It carries both signatures of Supplier and Buyer and implies an agreement where the Supplier provides those Line Items to the Buyer and in return receives the total value of the Order. (i.e. Sum of Line item values time the ordered quantity). For the sake of simplicity, any discounts is ignored. To provide a verifiable timestamp, Order or its workstep will be anchored in CCSM. Supplier and Carrier sign a Transportation Order which is either the full Order quantity or a subset of that to be picked up by Carrier at the Supplier location and be delivered to the Buyer. Upon pick up, Dispatch Advice will be issued mutually signed by Supplier and Carrier and a copy is sent to Buyer. Carrier also issues a Bill of Lading titled to Buyer. The history of ownership of Bill of Lading will be anchored in CCSM. Supplier requests Certificate of Origin for picked up goods based on Bill of Lading from OriginAuthority. As a result, Certificate of Origin will be issued which carries both signatures of Supplier and OriginAuthority. Relevant participants will receive a copy of this document. Supplier prepares signed Export and Transit Customs Declaration documents and seeks signatures from corresponding Customs Authorities. Export Customs Declaration will be anchored in CCSM to have a verifiable timestamp. Buyer prepares signed Import Customs Declaration and gets signature of Import Customs authority as a clearance. Upon arrival of the goods in the Buyer’s side, the Receipt Advice will be created and signed by Carrier and Buyer. Receipt Advice must be anchored in CCSM for future tax purposes. Later on, Buyer releases a Payment related to the Receipt Advice which will be processed by our Payment Provider. |
The "presence of documents in the CCSM lane implying the required anchoring of that document on CCSM as a must", could be extended by a rating/weight indicator, for example:
This way, we would be able to compare different reference implementations on the described user stories, by having some basic metrics that can be interpreted differently in different reference implementations. In the same way, we could rate/weigh the need/benefit for identified ZKP relations, for example if ZKP is helpful or needed (e.g. if 3rd parties MUST NOT see specific details of the process up to that point). Again, this would be a good help to get some metrics to compare reference implementations. |
Given all that - I'd propose to rework the BLIP title to "Adding support for worksteps not requiring CCSM or ZKP" |
Approved proposal by work group in 1/18/22 session to update BLIP name to 'Finding measurements for worksteps requiring and not requiring CCSM or ZKP' |
Jan 10, 2021 - Slack Discussion on BLIP-1
|
Core Dev Update 6/13:
|
Unfortunately we didn't have capacity to continue with this topic from our side and I've not received any updates from others yet. I will ping slack again. |
6/27/22 Core Devs:
|
7/11/22 Core Devs:
|
7/25/22 Core Devs:
|
8/25/22
|
9/19/22 Core Devs:
|
10/31/22 Core Devs:
|
12/12/22 Core Devs:
|
1/9/23 Core Devs:
|
2/6/23:
|
2/20/23:
|
[BLIP-1] Adding Support for workflows Not Requiring CCSM
Abstract
Current Baseline core specification – v1.0 – requires commitment of zero-knowledge proof of worksteps on a CCSM [R234]. However, there are business processes and workflows which can be implemented without CCSM interactions. We argue using a CCSM is a MUST when we deal with assets life cycle (DeFi) or necessity of a censorship resistance registry (SSI) but in the absence of any of those two mentioned criteria, we can implement a workflow without using any CCSM.
Motivation
CCSM is a fully replicated peer-to-peer network. Any transaction to a CCSM (e.g., Ethereum mainnet) costs 100s - if not 1000s - of nodes to verify (process), transition to and persist a new state (storage) and exchange their new state with other nodes (network bandwidth). Additionally, the finality of a transaction is highly dependent on the size of the network and/or the consensus algorithm in use. Thus, any alternatives which avoids a CCSM transaction and still holds the correctness and completeness of a business process is more favorable and scalable.
Contributors and Stakeholders
TBD
Specification
As a real-world example, we use customs clearance in Europe. As it’s depicted in Figure 1, the process includes several documents issued by different parties which all must be consistent. We’ve reduced the list of documents to just a few for the sake of simplicity. Other documents follow very similar process of verification. One exception is “Bill of Lading” that “conveys title to the goods, meaning that the bearer of the Bill of Lading is the owner of the goods.” Therefore, its digital form MUST be treated as an asset tracked (through the Zero Knowledge Proof (ZKP) of its ownership when privacy is required) on a CCSM.
Consistency
Other documents when digitized, MUST be issued, and signed by defined issuer and can be linked as nested verifiable credentials (VCs) by including the hash or the full parent document in the child document. Combining nested VC and digital signature ensures the consistency of each digital document. Consistency here means that any change in any document will invalidate the digital signature verification and thus detectable.
Figure 1 - Few simplified documents required for customs clearance in Europe
Versioning
When a new version of a document has been issued, it MUST be signed by all the involved parties. e.g., if a change must be approved by Exporter, Importer and Customs authorities of the exporting country, all three signatures are required on the new version. Please note that there is no double spending problem here and the agreement of few involved parties is sufficient for issuing a new version.
Collusion
When all signatures of the stakeholders are requires, and all the documents are tightly linked using nested VCs, there is no room for collusion.
Verifiable Timestamp
Each document will have an issuance timestamp. If signatories disagree on the timestamp, they won’t sign it. The signatures can also have their own timestamps. A decentralized timestamp (like CCSM) is irrelevant here. Changing one timestamp leads to a new version of the document and inconsistency in its children. Meaning either all the involved parties must sign the new version and agree on the changes, or the new version will be identified and discarded by others. Either way, having it (or its ZKP) on a CCSM doesn’t change the course.
Assuming the ZKP of agreement on a document as an output of a workstep in BPI has been submitted on a CCSM. If all the parties agree, they can discard that ZKP and agree on a new ZKP, even if it means restarting the whole BPI worksteps till now. Therefore, CCSM has no functionality as a verifiable timestamp.
Simple fact: users of BPI are companies who want to trade and if BPI is preventing them to facilitate their trades, they will reject it.
On the other hand, if only one party wants to change the timestamp of a document, no matter if it’s written on any CCSM or not, if other parties disagree, they won’t sign. Again, CCSM has no functionality as a verifiable timestamp.
The text was updated successfully, but these errors were encountered: