# MyID Credentials

MyID에서 정의해서 사용하고 있는 credential에 대해 설명 합니다. Credential의 구성요소 및 표현형식에 대한 자세한 설명은 Verifiable Credential Data Model을 참고하십시오.

# MobileAuthenticationKorCredential - 휴대폰 본인인증 크레덴셜

# Credential

{
   "version": "2.0",
   "type": "CREDENTIAL",
   "iss": "did:icon:03:c3bb75caef41476db6c8bab94a38df530d225e840bf5448c",
   "sub": "did:icon:03:a4b1234fsweqwexdb6c8bab94a38df530d225e840b1211d",
   "iat": 1578445403,
   "exp": 1578531803,
   "vc": {
       "@context": [
           "http://vc.zzeung.kr/credentials/v1.json",
           "http://vc.zzeung.kr/credentials/mobile_authentication/kor/v1.json"
       ],
       "id": "https://myid.id/credential/example/phone/vc/0000001",
       "type": ["VerifiableCredential","MobileAuthenticationKorCredential"],
       "cryptoType": "hash",
       "cryptoAlgorithm": "SHA-256",
       "credentialSubject": {
           "id": "did:icon:03:a4b1234fsweqwexdb6c8bab94a38df530d225e840b1211d",
           "name": "a3445c2236841af6bf25d0c3b9196f968082de2ba7e1657001e1dd4dbf8d894",
           "birthDate": "cc183c2236841af6bf25d0c3b9196f968082de2ba7e1657001e1dd4dbf8",
           "gender": "5583c2236841af6bf25d0c3b9196f968082de2ba7e1657001e1dd4dbf8d894",
           "telco": "108a3c2236841af6bf25d0c3b9196f968082de2ba7e1657001e1dd4dbf8d894",
           "phoneNumber": "123383c2236841af6bf25d0c3b9196f968082de2ba7e1657001e1dd4d",
           "connectingInformation": "ff383c2236841af6bf25d0c3b9196f968082de2ba7e165700",
           "citizenship": "ff383c2236841af6bf25d0c3b9196f968082de2ba7e1657001e1dd4"
       }
   },
   "jti": "885c592008a5b95a8e348e56b92a2361",
   "nonce": "b0f184df3f4e92ea9496d9a0aad259ae"
}
  • iss : Issuer DID입니다.
  • sub : Holder DID입니다.
  • iat : 이 credential을 발급한 시간입니다.
  • exp : Credential이 유효한 기간입니다.

# Parameter

{
   "@context": [
       "http://vc.zzeung.kr/credentials/v1.json",
       "http://vc.zzeung.kr/credentials/mobile_authentication/kor/v1.json"
   ],
   "type": ["CredentialParam", "MobileAuthenticationKorCredential"],
   "credentialParam": {
       "claim": {
           "name": {
               "claimValue": "홍길순",
               "salt": "a1341c4b0cbff6bee9118da10d6e85a5"
           },
           "birthDate": {
               "claimValue": "2000-01-01",
               "salt": "65341c4b0cbff6bee9118da10d6e85a5"
           },
           "gender": {
               "claimValue": "female",
               "salt": "12341c4b0cbff6bee9118da10d6e85a5",
               "displayValue": "여성"
           },
           "telco": {
               "claimValue": "SKT",
               "salt": "91341c4b0cbff6bee9118da10d6e85a5"
           },
           "phoneNumber": {
               "claimValue": "01031142962",
               "salt": "e2341c4b0cbff6bee9118da10d6e85a5"
               "displayValue": "010-3114-2962"
           },
           "connectingInformation": {
               "claimValue": "0000000000000000000000000000000000000000",
               "salt": "ff341c4b0cbff6bee9118da10d6e85a5"
           },
           "citizenship": {
               "claimValue": true,
               "salt": "f2341c4b0cbff6bee9118da10d6e85a5",
               "displayValue": "내국인"
           }
       },

       "displayLayout": ["name", "birthDate", "gender", "telco", "phoneNumber", "citizenship"],
       "proofType": "hash",
       "hashAlgorithm": "SHA-256"
   }
}
  • name : 휴대폰 사용자의 이름
  • birthDate : 휴대폰 사용자의 생년월일 입니다. [생년]-[월]-[일]로 표시됩니다.
  • gender : 성별 정보
    • 남자일 경우 'male', 여지일 경우 'female'입니다.
  • telco : 통신사 ID입니다. 각각 통신사별로 아래와 같은 값을 가집니다.
    • SKT : SKT
    • KT: KT
    • LG : LGT
    • SKT 알뜰폰 : SKT_MVNO
    • KT 알뜰폰 : KT_MVNO
    • LG 알뜰폰 : LGT_MVNO
  • phoneNumber : 휴대폰 번호로 구분자 '-'가 없습니다. 다만 쯩 앱의 화면에서는 '-'를 포함해서 표시됩니다.
  • connectingInformation : CI 정보입니다.
  • citizenship : 내/외국인 정보로 내국인인 경우 true, 외국인일 경우 false입니다. 쯩 앱에서는 '내국인' 혹은 '외국인'으로 표시가 됩니다.

# 운전자격 확인을 위한 운전면허증 Credential

운전면허증 Credential 입니다.

# Credential

{
   "version": "2.0",
   "type": "CREDENTIAL",
   "iss": "did:icon:03:c3bb75caef41476db6c8bab94a38df530d225e840bf5448c",
   "sub": "did:icon:03:a4b1234fsweqwexdb6c8bab94a38df530d225e840b1211d",
   "iat": 1578445403,
   "exp": 1578531803,
   "vc": {
       "@context": [
           "http://vc.zzeung.kr/credentials/v1.json",
           "http://vc.zzeung.kr/credentials/il/driver_license/kor/v1.json"
       ],
       "id": "https://iconloop.id/credential/example/driver_license/vc/0000001",
       "type": ["VerifiableCredential","IlDriverLicenseKorCredential"],
       "cryptoType": "hash",
       "cryptoAlgorithm": "SHA-256",
       "credentialSubject": {
           "id": "did:icon:03:a4b1234fsweqwexdb6c8bab94a38df530d225e840b1211d",
           "name": "a3445c2236841af6bf25d0c3b9196f968082de2ba7e1657001e1dd4dbf8d894",
           "birthDate": "cc183c2236841af6bf25d0c3b9196f968082de2ba7e1657001e1dd4dbf8",
           "driverLicenseNumber": "5583c2236841af6bf25d0c3b9196f968082de2ba7e1657001e1dd4dbf8d894",
           "serialNumber": "108a3c2236841af6bf25d0c3b9196f968082de2ba7e1657001e1dd4dbf8d894",
           "driverLicenseImage": "f0183c2236841af6bf25d0c3b9196f968082de2ba7e1657001e1dd4dbf8",
           "driverLicenseType": "a01844223684fff6bf25a0c3b9196f968082de2ba7e1657001e1dd4ab23"
       }
   },
   "jti": "885c592008a5b95a8e348e56b92a2361",
   "nonce": "b0f184df3f4e92ea9496d9a0aad259ae"
}
  • iss : Issuer DID입니다.
  • sub : Holder DID입니다.
  • iat : 이 credential을 발급한 시간입니다.
  • exp : Credential이 유효한 기간입니다.

# Parameter

{
   "@context": [
       "http://vc.zzeung.kr/credentials/v1.json",
       "http://vc.zzeung.kr/credentials/il/driver_license/kor/v1.json"
   ],
   "type": ["CredentialParam", "IlDriverLicenseKorCredential"],
   "credentialParam": {
       "claim": {
           "name": {
               "claimValue": "홍길순",
               "salt": "a1341c4b0cbff6bee9118da10d6e85a5"
           },
           "birthDate": {
               "claimValue": "2000-01-01",
               "salt": "65341c4b0cbff6bee9118da10d6e85a5"
           },
           "driverLicenseNumber": {
               "claimValue": "139912345600",  
               "salt": "12341c4b0cbff6bee9118da10d6e85a5",
               "displayValue": "경기 99-123456-00"
           },
           "serialNumber": {
               "claimValue": "IVV002",
               "salt": "91341c4b0cbff6bee9118da10d6e85a5"
           },
           "driverLicenseImage": {
               "claimValue": "data:image/png;base64,iVBORw0KGgoAAAANSUE........",
               "salt": "fff41c4b0cbff6bee9118da10d6e85a5"
           },
           "driverLicenseType": {
              "claimValue": "1종보통",
              "salt": "fff41c4b0cbff6bee9118da10d6e85a5"
           }          
       },

       "displayLayout": ["name", "birthDate", "driverLicenseNumber", "serialNumber", "driverLicenseType"],
       "proofType": "hash",
       "hashAlgorithm": "SHA-256"
   }
}

# driverLicenseNumber

운전면허증은 신형과 구형이 있습니다.

  • 신형일 경우 아래와 같이 사용합니다.
"driverLicenseNumber": {
   "claimValue": "139912345600",   
   "salt": "12341c4b0cbff6bee9118da10d6e85a5",
   "displayValue": "13-99-123456-00" 
}
  • 구형인 경우 아래와 같이 사용합니다.
"driverLicenseNumber": {
   "claimValue": "139912345600",   
   "salt": "12341c4b0cbff6bee9118da10d6e85a5",
   "displayValue": "경기 99-123456-00" 
}

claimValue에서는 지역명을 지역코드로 변경 합니다.
displayValue에서는 지역명 이후에 공백이 아닌 다른 특수문자가 오는 경우에도 여기에서는 모두 공백으로 처리 합니다.

# driverLicenseType

면허증 종류를 나타내며, 아래와 같은 값을 가집니다.

  • 1종보통
  • 1종소형
  • 1종대형
  • 1종특수
  • 2종보통
  • 2종소형