분산 ID: Difference between revisions
From CS Wiki
(새 문서: ;Decentralized IDs, DIDs 분산원장을 이용해 중앙등록기관 없이 시장 자율로 운영되는 확장성 있는 신원 증명 체계) |
No edit summary |
||
Line 2: | Line 2: | ||
분산원장을 이용해 중앙등록기관 없이 시장 자율로 운영되는 확장성 있는 신원 증명 체계 | 분산원장을 이용해 중앙등록기관 없이 시장 자율로 운영되는 확장성 있는 신원 증명 체계 | ||
== DID 문서 == | |||
;did documents | |||
<pre> | |||
{ | |||
"@context": "https://w3id.org/did/v1", | |||
"id": "did:example:123456789abcdefghi", | |||
"authentication": [{ | |||
// used to authenticate as did:...fghi | |||
"id": "did:example:123456789abcdefghi#keys-1", | |||
"type": "RsaVerificationKey2018", | |||
"controller": "did:example:123456789abcdefghi", | |||
"publicKeyPem": "-----BEGIN PUBLIC KEY...END PUBLIC KEY-----\r\n" | |||
}], | |||
"service": [{ | |||
// used to retrieve Verifiable Credentials associated with the DID | |||
"type": "VerifiableCredentialService", | |||
"serviceEndpoint": "https://example.com/vc/" | |||
}] | |||
} | |||
</pre> | |||
== 자격 증명 == | |||
;Verifiable Claims에서 Verifiable Credentials로 변경 | |||
* 증명하고자 하는 자격이 담겨있는 '''텍스트 기반의 인증서'''이다. | |||
* 암호학적인 방법으로 증명 가능하게 되어 있다. | |||
** 이슈어를 명시하고, 이슈어의 개인키로 서명한 값을 포함한다. | |||
** 블록체인 등 신뢰되는 저장소에서 공개키를 조회 해 검증할 수 있다. | |||
* 표준은 [[JSON-LD]]로 표현되어 있으나 포맷엔 제한이 없다. | |||
* 예시는 아래와 같다. | |||
<pre> | |||
{ | |||
"@context": [ | |||
"https://www.w3.org/2018/credentials/v1", | |||
"https://www.w3.org/2018/credentials/examples/v1" | |||
], | |||
"id": "http://example.gov/credentials/3732", | |||
"type": ["VerifiableCredential", "UniversityDegreeCredential"], | |||
"issuer": "https://example.edu", | |||
"issuanceDate": "2010-01-01T19:73:24Z", | |||
"credentialSubject": { | |||
"id": "did:example:ebfeb1f712ebc6f1c276e12ec21", | |||
"degree": { | |||
"type": "BachelorDegree", | |||
"name": "<span lang='fr-CA'>Baccalauréat en musiques numériques</span>" | |||
} | |||
}, | |||
"proof": { | |||
"type": "RsaSignature2018", | |||
"created": "2018-06-18T21:19:10Z", | |||
"verificationMethod": "https://example.com/jdoe/keys/1", | |||
"signatureValue": "BavEll0/I1zpYw8XNi1bgVg/sCneO4Jugez8RwDg/+ | |||
MCRVpjOboDoe4SxxKjkCOvKiCHGDvc4krqi6Z1n0UfqzxGfmatCuFibcC1wps | |||
PRdW+gGsutPTLzvueMWmFhwYmfIFpbBu95t501+rSLHIEuujM/+PXr9Cky6Ed | |||
+W3JT24=" | |||
} | |||
} | |||
</pre> | |||
== 관련 표준 == | |||
;W3C에서 표준화를 진행중 | |||
* [https://w3c-ccg.github.io/did-spec/ Decentralized Identifiers (DIDs)] | |||
* [https://www.w3.org/TR/verifiable-claims-data-model/ Verifiable Credentials Data Model] | |||
* [https://www.w3.org/TR/verifiable-claims-use-cases/ Verifiable Claims Use Cases] |
Revision as of 20:05, 4 June 2019
- Decentralized IDs, DIDs
분산원장을 이용해 중앙등록기관 없이 시장 자율로 운영되는 확장성 있는 신원 증명 체계
DID 문서
- did documents
{ "@context": "https://w3id.org/did/v1", "id": "did:example:123456789abcdefghi", "authentication": [{ // used to authenticate as did:...fghi "id": "did:example:123456789abcdefghi#keys-1", "type": "RsaVerificationKey2018", "controller": "did:example:123456789abcdefghi", "publicKeyPem": "-----BEGIN PUBLIC KEY...END PUBLIC KEY-----\r\n" }], "service": [{ // used to retrieve Verifiable Credentials associated with the DID "type": "VerifiableCredentialService", "serviceEndpoint": "https://example.com/vc/" }] }
자격 증명
- Verifiable Claims에서 Verifiable Credentials로 변경
- 증명하고자 하는 자격이 담겨있는 텍스트 기반의 인증서이다.
- 암호학적인 방법으로 증명 가능하게 되어 있다.
- 이슈어를 명시하고, 이슈어의 개인키로 서명한 값을 포함한다.
- 블록체인 등 신뢰되는 저장소에서 공개키를 조회 해 검증할 수 있다.
- 표준은 JSON-LD로 표현되어 있으나 포맷엔 제한이 없다.
- 예시는 아래와 같다.
{ "@context": [ "https://www.w3.org/2018/credentials/v1", "https://www.w3.org/2018/credentials/examples/v1" ], "id": "http://example.gov/credentials/3732", "type": ["VerifiableCredential", "UniversityDegreeCredential"], "issuer": "https://example.edu", "issuanceDate": "2010-01-01T19:73:24Z", "credentialSubject": { "id": "did:example:ebfeb1f712ebc6f1c276e12ec21", "degree": { "type": "BachelorDegree", "name": "<span lang='fr-CA'>Baccalauréat en musiques numériques</span>" } }, "proof": { "type": "RsaSignature2018", "created": "2018-06-18T21:19:10Z", "verificationMethod": "https://example.com/jdoe/keys/1", "signatureValue": "BavEll0/I1zpYw8XNi1bgVg/sCneO4Jugez8RwDg/+ MCRVpjOboDoe4SxxKjkCOvKiCHGDvc4krqi6Z1n0UfqzxGfmatCuFibcC1wps PRdW+gGsutPTLzvueMWmFhwYmfIFpbBu95t501+rSLHIEuujM/+PXr9Cky6Ed +W3JT24=" } }
관련 표준
- W3C에서 표준화를 진행중