Skip to content

Commit e673610

Browse files
committed
Update identity rfcs
Signed-off-by: Bishakh Ghosh <[email protected]>
1 parent 55bcafd commit e673610

File tree

10 files changed

+30
-77
lines changed

10 files changed

+30
-77
lines changed

rfcs/formats/identity.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,9 @@
55
-->
66
# Identity Plane Data Formats
77

8-
* Authors: Bishakh Chandra Ghosh, Venkatraman Ramakrishna, Krishnasuri Narayanam
9-
* Status: Draft
10-
* Since: 25-July-2021
8+
* Authors: Bishakh Chandra Ghosh, Venkatraman Ramakrishna, Krishnasuri Narayanam, Ermyas Abebe
9+
* Status: Proposed
10+
* Since: 24-September-2021
1111

1212

1313
## Participant Unit Identity

rfcs/models/identity/decentralized-network-identity-discovery-management.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,8 @@
66
# Decentralized Network-Identity Discovery and Management for Interoperation
77

88
* Authors: Venkatraman Ramakrishna, Krishnasuri Narayanam, Bishakh Chandra Ghosh, Ermyas Abebe
9-
* Status: Draft
10-
* Since: 10-June-2020
9+
* Status: Proposed
10+
* Since: 24-September-2021
1111

1212

1313
# Overview
@@ -127,7 +127,7 @@ The DLT networks and its participant units must create and configure their ident
127127

128128
## Network Identity Discovery
129129

130-
To allow seamless interoperation across two different DLT networks, the identity of the counterparty networks have to be configured. But, even before that, some means of discovering the networks is required through which any identity protofocl can start. Discovery of networks in the identity plane is facilitated by discovery of the Network Identity, which are represented as Network DIDs and registered in the IINs. Each Network thus has a unique Network DID which can be considered equivalent to a domain name in Internet parlance. Thus Network DID facilitate discovery of networks with the help of the IIN infrastructure.
130+
To allow seamless interoperation across two different DLT networks, the identity of the counterparty networks have to be configured. But, even before that, some means of discovering the networks is required through which any identity protocol can start. Discovery of networks in the identity plane is facilitated by discovery of the Network Identities, which are represented as Network DIDs and registered in the IINs. Each Network thus has a unique Network DID which can be considered equivalent to a domain name in Internet parlance. Thus Network DID facilitates discovery of networks with the help of the IIN infrastructure.
131131

132132
The network discovrery protocols specifications are elaborated [here](../../protocols/discovery/readme.md).
133133

rfcs/models/identity/identity-update-policy.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,8 @@
66
# Network Identity Update Policies
77

88
* Authors: Bishakh Chandra Ghosh, Venkatraman Ramakrishna, Krishnasuri Narayanam, Ermyas Abebe
9-
* Status: Draft
10-
* Since: 25-July-2021
9+
* Status: Proposed
10+
* Since: 24-September-2021
1111

1212
## updatePolicy
1313

rfcs/models/identity/iin-agent.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,9 @@
55
-->
66
# IIN Agents in a DLT Network
77

8-
* Authors: Venkatraman Ramakrishna
9-
* Status: Draft
10-
* Since: 15-Oct-2020
8+
* Authors: Venkatraman Ramakrishna, Krishnasuri Narayanam, Bishakh Chandra Ghosh, Ermyas Abebe
9+
* Status: Proposed
10+
* Since: 24-September-2021
1111

1212

1313
# Summary
@@ -34,12 +34,12 @@ This view is illustrated in the figure below (Fig.1), which maps quite naturally
3434

3535
The following artifacts in the data plane are relevant to identity plane protocols:
3636
* _Identity trust store_: this is a set of IINs and Trust anchors `<IIN>,<Trust-Anchor-DID>`. It implies that the network trusts a given trust anchor or all trust anchors in a given IIN to certify the identity/membership credentials of foreign network units.
37-
<!-- * Each network unit can be described directly by the network ID and a DID or the set can be described using a pattern (like a regular expression; e.g., Kleene closure `*`). -->
37+
3838
* The IIN definition can additionally contain peer connectivity information (to access the IIN ledger). This data will be looked up in the identity sharing protocol, while fetching membership information for a foreign network. It can also be used in proof verification (or view validation) in data plane protocols.
3939
* _Foreign network identities and configurations_: these are [security groups](../security.md), containing identities and certificates corresponding to a foreign network's units. (_Each security group is augmented with a DID attribute denoting the identity owned by the IIN Agent associated with this network unit/security group_). The IIN Agent of the network participants together update these configurations from the identity plane information.
4040

4141

42-
# Indy implementation of IIN Agent
42+
# Hyperledger Indy implementation of IIN Agent
4343

4444
An IIN Agent represents a network unit that is also a self-certified identity provider for some subset of the network, as stated earlier in the summary. It is simultaneously an IIN (Indy) client and a network (Fabric, Corda, etc.) client. Therefore, there are different ways in which it can be implemented, but its core feature is that it lies within the trust boundary of a root identity provider of a network.
4545

rfcs/models/identity/iin.md

Lines changed: 3 additions & 50 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,9 @@
55
-->
66
# Interoperation Identity Network
77

8-
* Authors: Venkatraman Ramakrishna, Bishakh Chandra Ghosh, Krishnasuri Narayanam
9-
* Status: Draft
10-
* Since: 15-Oct-2020
8+
* Authors: Venkatraman Ramakrishna, Bishakh Chandra Ghosh, Krishnasuri Narayanam, Ermyas Abebe
9+
* Status: Proposed
10+
* Since: 24-September-2021
1111

1212

1313
# Summary
@@ -58,22 +58,6 @@ For each verifiable credential, the IIN must store the corresponding [schema](ht
5858

5959

6060

61-
62-
<!--
63-
An IIN contains the following:
64-
* Identity record: `<DID>,<Service-Endpoint>` for each of the following:
65-
* Every steward
66-
* (If applicable) every trust anchor created by a steward of this IIN
67-
* Every network unit certified by a steward or a trust anchor of this IIN
68-
* Credential schemas corresponding to the following:
69-
* Membership list for a network, with the following attributes: `<Network-ID>`, `[<DID1>,<DID2>,......]`
70-
* Membership info for a network unit, with the following attributes: `<Network-ID>` (_Currently, this is the only attribute relevant for identify information sharing, but we can add more for other kinds of information sharing_)
71-
* Credential definitions corresponding to the following:
72-
* Membership list for a network: signing (issuing) key owned by a steward or trust anchor of this IIN
73-
* Membership information for a network unit: signing (issuing) key owned by a steward or trust anchor of this IIN
74-
*
75-
* -->
76-
7761
# IIN DID Method
7862

7963
An IIN can have any distributed DID registry based on any platform, provided it supports the DID method operations stated as follows:
@@ -108,34 +92,3 @@ These trust anchors are entities that the participants trust and whose identity
10892
## IIN Agents
10993

11094
DLT networks interact with the IINs through a components called IIN Agent. Each participant unit in a DLT network has have atleast one IIN Agent using which it exposes its identity as well as discovers and verifies foreign network identities. The IIN Agents are detailed [here](./iin-agent.md).
111-
112-
113-
<!--
114-
# IIN Structure and Bootstrap
115-
116-
This is a Hyperledger Indy network that is collectively managed by a set of _stewards_. For an IIN to facilitate bilateral interoperation between networks N1 and N2, the following constraint must hold: _for every unit in N1 and N2, there exists at least one steward that is trusted, directly or transitively, by that network unit_.
117-
118-
In the limiting, or trivial, case, an IIN can contain just one steward that is trusted by every unit in N1 and N2. For the purpose of our protocol, such a network would be functionally indistinguishable from, though less trustworthy than, a truly distributed IIN that contains multiple stewards representing trusted authorities that have agreed to join that IIN and are bound by a shared ledger.
119-
120-
_Proposal for initial implementation_: Build an IIN that contains four Indy nodes (as per the reference Indy implementation) and two stewards. This implementation will be non-trivial and will have one steward corresponding to each interoperating network (i.e., consortium) in at least some demo scenarios. _Example_: for interoperation between TradeLens and We.Trade, we build an IIN containing two stewards by default: one representing Maersk (to certify TradeLens units) and another representing IBM (to certify We.Trade units). -->
121-
122-
<!--
123-
## Bootstrap procedure:
124-
1. Create network artifacts:
125-
* Configuration file with network name (`NETWORK_NAME`) set to `IIN`(or something unique, if there is more than one IIN)
126-
* Keys for each Indy node: ed25519 transport/communication keys, BLS keys for multisig and state proofs
127-
* Genesis transactions: pool transactions genesis file, domain transactions genesis file with specification for stewards (each with a unique name assigned a priori)
128-
2. Launch the 4-node Indy pool network by starting each node in a separate Docker container.
129-
3. Start an IIN steward agent for each steward in a separate Docker container. A steward agent is built on a Hyperledger Aries instance.
130-
131-
## Reference:
132-
* Hyperledger Indy Node: Create a Network and Start a 4-Node Indy Pool [link](https://hyperledger-indy.readthedocs.io/projects/node/en/latest/start-nodes.html)
133-
* Implementation of single-node/single-steward Indy pool in Docker containers [link](https://github.com/identity-interop/iin_deployment)
134-
135-
136-
137-
138-
# Interfaces
139-
Standard Indy SDK API will be used for communication between identity owners' agents and between agents and Indy pool nodes.
140-
Standard Indy SDK API will be used for creating and maintaining wallets (for DIDs, keys, secrets, and credentials) at the agents.
141-
-->

rfcs/protocols/discovery/readme.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,8 @@
44
SPDX-License-Identifier: CC-BY-4.0
55
-->
66
# Discovery Protocol
7-
* Authors: Bishakh Chandra Ghosh, Venkatraman Ramakrishna, Krishnasuri Narayanam
8-
* Status: Draft
7+
* Authors: Bishakh Chandra Ghosh, Venkatraman Ramakrishna, Krishnasuri Narayanam, Ermyas Abebe
8+
* Status: Proposed
99
* Since: 25-July-2021
1010

1111

rfcs/protocols/identity/data-plane-identity-configuration.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
# Data Plane Identity Configuration
22

3-
* Authors: Venkatraman Ramakrishna, Krishnasuri Narayanam, Bishakh Chandra Ghosh
4-
* Status: Draft
5-
* Since: 20-August-2021
3+
* Authors: Venkatraman Ramakrishna, Krishnasuri Narayanam, Bishakh Chandra Ghosh, Ermyas Abebe
4+
* Status: Proposed
5+
* Since: 24-September-2021
66

77
### Overview
88

rfcs/protocols/identity/identity-change-updates.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
# Credentials update with changes in identity plane
22

3-
* Authors: Venkatraman Ramakrishna, Krishnasuri Narayanam, Bishakh Chandra Ghosh
4-
* Status: Draft
5-
* Since: 10-June-2020
3+
* Authors: Venkatraman Ramakrishna, Krishnasuri Narayanam, Bishakh Chandra Ghosh, Ermyas Abebe
4+
* Status: Proposed
5+
* Since: 24-September-2021
66

77

88
# Overview

rfcs/protocols/identity/network-identity-validation.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11

22
## Network Identity Validation
33

4-
* Authors: Venkatraman Ramakrishna, Krishnasuri Narayanam, Bishakh Chandra Ghosh
5-
* Status: Draft
6-
* Since: 10-June-2020
4+
* Authors: Venkatraman Ramakrishna, Krishnasuri Narayanam, Bishakh Chandra Ghosh, Ermyas Abebe
5+
* Status: Proposed
6+
* Since: 24-September-2021
77

88
### Summary
99
When a network ("local network" from here on) tries to configure the idetntity of another network ("foreign network" from here on) for interoperation, the broad steps involved are (i) Network Discovery (ii) Network Identity Validation. Both these steps are carried out by the IIN agent of the participants of the local network.

rfcs/protocols/identity/readme.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,9 @@
55
-->
66
# Protocols for Decentralized Network-Identity Configuration, Exchannge and Validation, for Interoperation
77

8-
* Authors: Venkatraman Ramakrishna, Krishnasuri Narayanam, Bishakh Chandra Ghosh
9-
* Status: Draft
10-
* Since: 10-June-2020
8+
* Authors: Venkatraman Ramakrishna, Krishnasuri Narayanam, Bishakh Chandra Ghosh, Ermyas Abebe
9+
* Status: Proposed
10+
* Since: 24-September-2021
1111

1212

1313
## Summary

0 commit comments

Comments
 (0)