# Wallet VC Storage
## `CredentialResponse` DWeb Message
```json=
{
"descriptor": {
"target": "did:key:z6MkpBmJNwPU7vubZWa9YBZU3EjW5SVnGhhjCJQFMYBW4V2E",
"recipient": "did:key:z6MkpWqpHZdJavfxmvY1rTZD87uxYeMhXWLRWUKmyEycSkP6",
"method": "CollectionsWrite",
"protocol": "https://identity.foundation/decentralized-web-node/protocols/credential-issuance",
"contextId": "ee2c39ef-bd4e-43a1-86ee-233ba6468dfc",
"schema": "https://identity.foundation/credential-manifest/schemas/credential-response",
"recordId": "cd8beacb-9bcc-405d-9d6d-b36c4f5b7333",
"parentId": "59af0ca5-aa32-4a30-8f37-f25aef7c7f7b",
"dataCid": "bafybeieryaey3yclgoselp26q6s4mqgkm7kuybdoeq5qsew5wikaimogmq",
"dateCreated": 1666387234799,
"dataFormat": "application/json"
},
"authorization": {
"payload": "eyJkZXNjcmlwdG9yQ2lkIjoiYmFmeXJlaWR1YWM1dzQ1bWM0aXFoNGQ2amxjb2lxNWRiZmJ5Z2RzeHNkZTNlZ2lrdHRlcmI3M3luc2EifQ",
"signatures": [
{
"protected": "eyJhbGciOiJFZERTQSIsImtpZCI6ImRpZDprZXk6ejZNa3BCbUpOd1BVN3Z1YlpXYTlZQlpVM0VqVzVTVm5HaGhqQ0pRRk1ZQlc0VjJFI3o2TWtwQm1KTndQVTd2dWJaV2E5WUJaVTNFalc1U1ZuR2hoakNKUUZNWUJXNFYyRSJ9",
"signature": "4wkSkZCpvm6KYFYqYftnmypxD2aAC6jRfgRSdhZOKYSzfYkFq17t7Un1_573LVZQ7w9TpGQ3rL3XE_RpLwDeDQ"
}
]
},
"encodedData": "eyJjcmVkZW50aWFsX3Jlc3BvbnNlIjp7ImlkIjoiOTE0ZTliZGMtMDJhMS00MTNhLTk1ZTItYjU5Zjc3MTc2ZTJlIiwic3BlY192ZXJzaW9uIjoiaHR0cHM6Ly9pZGVudGl0eS5mb3VuZGF0aW9uL2NyZWRlbnRpYWwtbWFuaWZlc3Qvc3BlYy92MS4wLjAvIiwibWFuaWZlc3RfaWQiOiJiY2MzNTg5NC0wZDMwLTQxMTgtOWY4Yi1lYzI3NzhmOTg4NjAiLCJhcHBsaWNhdGlvbl9pZCI6ImlkMTIzIiwiZnVsZmlsbG1lbnQiOnsiZGVzY3JpcHRvcl9tYXAiOlt7ImlkIjoiYzdlNGNiMTMtMzc3OC00NGEwLWE1ZGMtMjY5MzE3ZDkwZWJhIiwiZm9ybWF0Ijoiand0X3ZjIiwicGF0aCI6IiQudmVyaWZpYWJsZUNyZWRlbnRpYWxzWzBdIn1dfX0sInZlcmlmaWFibGVDcmVkZW50aWFscyI6WyJleUpoYkdjaU9pSkZaRVJUUVNJc0ltdHBaQ0k2SW1ScFpEcHJaWGs2ZWpaTmEzZE1VMmwwTkhWVE9IVlRSMFJDT1RGdE5tTmliMkpqWkV4RU5HbHRibVU0YmtadmFWQnBWVFJ1ZW10eElpd2lkSGx3SWpvaVNsZFVJbjAuZXlKcGMzTWlPaUprYVdRNmEyVjVPbm8yVFd0M1RGTnBkRFIxVXpoMVUwZEVRamt4YlRaalltOWlZMlJNUkRScGJXNWxPRzVHYjJsUWFWVTBibnByY1NJc0ltcDBhU0k2SW1NM1pUUmpZakV6TFRNM056Z3RORFJoTUMxaE5XUmpMVEkyT1RNeE4yUTVNR1ZpWVNJc0ltNWlaaUk2TVRZMk5qTTROekl6TkN3aWMzVmlJam9pWkdsa09tdGxlVHA2TmsxcmRUZzNZMVZTVWxaVE5HUnhiamh5WlhaQ04yUk5ka1pOWkdaTWEzaDZjVkV5T1dobVkxRjZPV1J1T0ZjaUxDSjJZeUk2ZXlKQVkyOXVkR1Y0ZENJNld5Sm9kSFJ3Y3pvdkwzZDNkeTUzTXk1dmNtY3ZNakF4T0M5amNtVmtaVzUwYVdGc2N5OTJNU0pkTENKcFpDSTZJbU0zWlRSallqRXpMVE0zTnpndE5EUmhNQzFoTldSakxUSTJPVE14TjJRNU1HVmlZU0lzSW5SNWNHVWlPbHNpVm1WeWFXWnBZV0pzWlVOeVpXUmxiblJwWVd3aVhTd2lhWE56ZFdWeUlqb2laR2xrT210bGVUcDZOazFyZDB4VGFYUTBkVk00ZFZOSFJFSTVNVzAyWTJKdlltTmtURVEwYVcxdVpUaHVSbTlwVUdsVk5HNTZhM0VpTENKcGMzTjFZVzVqWlVSaGRHVWlPaUl5TURJeUxURXdMVEl4VkRJeE9qSXdPak0wV2lJc0ltTnlaV1JsYm5ScFlXeFRkV0pxWldOMElqcDdJbWxrSWpvaVpHbGtPbXRsZVRwNk5rMXJkVGczWTFWU1VsWlROR1J4YmpoeVpYWkNOMlJOZGtaTlpHWk1hM2g2Y1ZFeU9XaG1ZMUY2T1dSdU9GY2lmU3dpWTNKbFpHVnVkR2xoYkZOamFHVnRZU0k2ZXlKcFpDSTZJamxqTnpJek1EQXdMVGN3T0RrdE5EaGpZUzA0TkdRMExUSXlZV1pqWmpRd09XRmlNQ0lzSW5SNWNHVWlPaUpLYzI5dVUyTm9aVzFoVm1Gc2FXUmhkRzl5TWpBeE9DSjlmWDAuWkVqb19KSnZyNmotUU9fSjB1NEJWT2VGV0gxSmJhSmpGVVJRQmJ1Wll1b3R2OU8xVTFsWG5lcDNnNktNbVVPT1RFUzZuSElEeVotZC1PdVBTaFZWQ2ciXSwicmVzcG9uc2VKd3QiOiJleUpoYkdjaU9pSkZaRVJUUVNJc0ltdHBaQ0k2SW1ScFpEcHJaWGs2ZWpaTmEzZE1VMmwwTkhWVE9IVlRSMFJDT1RGdE5tTmliMkpqWkV4RU5HbHRibVU0YmtadmFWQnBWVFJ1ZW10eElpd2lkSGx3SWpvaVNsZFVJbjAuZXlKaGJHY2lPaUpGWkVSVFFTSXNJbU55WldSbGJuUnBZV3hmY21WemNHOXVjMlVpT25zaVlYQndiR2xqWVhScGIyNWZhV1FpT2lKcFpERXlNeUlzSW1aMWJHWnBiR3h0Wlc1MElqcDdJbVJsYzJOeWFYQjBiM0pmYldGd0lqcGJleUptYjNKdFlYUWlPaUpxZDNSZmRtTWlMQ0pwWkNJNkltTTNaVFJqWWpFekxUTTNOemd0TkRSaE1DMWhOV1JqTFRJMk9UTXhOMlE1TUdWaVlTSXNJbkJoZEdnaU9pSWtMblpsY21sbWFXRmliR1ZEY21Wa1pXNTBhV0ZzYzFzd1hTSjlYWDBzSW1sa0lqb2lPVEUwWlRsaVpHTXRNREpoTVMwME1UTmhMVGsxWlRJdFlqVTVaamMzTVRjMlpUSmxJaXdpYldGdWFXWmxjM1JmYVdRaU9pSmlZMk16TlRnNU5DMHdaRE13TFRReE1UZ3RPV1k0WWkxbFl6STNOemhtT1RnNE5qQWlMQ0p6Y0dWalgzWmxjbk5wYjI0aU9pSm9kSFJ3Y3pvdkwybGtaVzUwYVhSNUxtWnZkVzVrWVhScGIyNHZZM0psWkdWdWRHbGhiQzF0WVc1cFptVnpkQzl6Y0dWakwzWXhMakF1TUM4aWZTd2lhV0YwSWpveE5qWTJNemczTWpNMExDSnBjM01pT2lKa2FXUTZhMlY1T25vMlRXdDNURk5wZERSMVV6aDFVMGRFUWpreGJUWmpZbTlpWTJSTVJEUnBiVzVsT0c1R2IybFFhVlUwYm5wcmNTSXNJbXRwWkNJNkltUnBaRHByWlhrNmVqWk5hM2RNVTJsME5IVlRPSFZUUjBSQ09URnRObU5pYjJKalpFeEVOR2x0Ym1VNGJrWnZhVkJwVlRSdWVtdHhJaXdpZG1WeWFXWnBZV0pzWlVOeVpXUmxiblJwWVd4eklqcGJJbVY1U21oaVIyTnBUMmxLUmxwRlVsUlJVMGx6U1cxMGNGcERTVFpKYlZKd1drUndjbHBZYXpabGFscE9ZVE5rVFZVeWJEQk9TRlpVVDBoV1ZGSXdVa05QVkVaMFRtMU9hV0l5U21wYVJYaEZUa2RzZEdKdFZUUmlhMXAyWVZaQ2NGWlVVblZsYlhSNFNXbDNhV1JJYkhkSmFtOXBVMnhrVlVsdU1DNWxlVXB3WXpOTmFVOXBTbXRoVjFFMllUSldOVTl1YnpKVVYzUXpWRVpPY0dSRVVqRlZlbWd4VlRCa1JWRnFhM2hpVkZwcVdXMDVhVmt5VWsxU1JGSndZbGMxYkU5SE5VZGlNbXhSWVZaVk1HSnVjSEpqVTBselNXMXdNR0ZUU1RaSmJVMHpXbFJTYWxscVJYcE1WRTB6VG5wbmRFNUVVbWhOUXpGb1RsZFNha3hVU1RKUFZFMTRUakpSTlUxSFZtbFpVMGx6U1cwMWFWcHBTVFpOVkZreVRtcE5ORTU2U1hwT1EzZHBZek5XYVVscWIybGFSMnhyVDIxMGJHVlVjRFpPYXpGeVpGUm5NMWt4VmxOVmJGcFVUa2RTZUdKcWFIbGFXRnBEVGpKU1RtUnJXazVhUjFwTllUTm9ObU5XUlhsUFYyaHRXVEZHTms5WFVuVlBSbU5wVEVOS01sbDVTVFpsZVVwQldUSTVkV1JIVmpSa1EwazJWM2xLYjJSSVVuZGplbTkyVEROa00yUjVOVE5OZVRWMlkyMWpkazFxUVhoUFF6bHFZMjFXYTFwWE5UQmhWMFp6WTNrNU1rMVRTbVJNUTBwd1drTkpOa2x0VFROYVZGSnFXV3BGZWt4VVRUTk9lbWQwVGtSU2FFMURNV2hPVjFKcVRGUkpNazlVVFhoT01sRTFUVWRXYVZsVFNYTkpibEkxWTBkVmFVOXNjMmxXYlZaNVlWZGFjRmxYU25OYVZVNTVXbGRTYkdKdVVuQlpWM2RwV0ZOM2FXRllUbnBrVjFaNVNXcHZhVnBIYkd0UGJYUnNaVlJ3Tms1ck1YSmtNSGhVWVZoUk1HUldUVFJrVms1SVVrVkpOVTFYTURKWk1rcDJXVzFPYTFSRlVUQmhWekYxV2xSb2RWSnRPWEJWUjJ4V1RrYzFObUV6UldsTVEwcHdZek5PTVZsWE5XcGFWVkpvWkVkVmFVOXBTWGxOUkVsNVRGUkZkMHhVU1hoV1JFbDRUMnBKZDA5cVRUQlhhVWx6U1cxT2VWcFhVbXhpYmxKd1dWZDRWR1JYU25GYVYwNHdTV3B3TjBsdGJHdEphbTlwV2tkc2EwOXRkR3hsVkhBMlRtc3hjbVJVWnpOWk1WWlRWV3hhVkU1SFVuaGlhbWg1V2xoYVEwNHlVazVrYTFwT1drZGFUV0V6YURaalZrVjVUMWRvYlZreFJqWlBWMUoxVDBaamFXWlRkMmxaTTBwc1drZFdkV1JIYkdoaVJrNXFZVWRXZEZsVFNUWmxlVXB3V2tOSk5rbHFiR3BPZWtsNlRVUkJkMHhVWTNkUFJHdDBUa1JvYWxsVE1EUk9SMUV3VEZSSmVWbFhXbXBhYWxGM1QxZEdhVTFEU1hOSmJsSTFZMGRWYVU5cFNrdGpNamwxVlRKT2IxcFhNV2hXYlVaellWZFNhR1JIT1hsTmFrRjRUME5LT1daWU1DNWFSV3B2WDBwS2RuSTJhaTFSVDE5S01IVTBRbFpQWlVaWFNERktZbUZLYWtaVlVsRkNZblZhV1hWdmRIWTVUekZWTVd4WWJtVndNMmMyUzAxdFZVOVBWRVZUTm01SVNVUjVXaTFrTFU5MVVGTm9WbFpEWnlKZGZRLlgzdXFmbms1MW51S2oxRW9kWURyUEJMdl8xbXpNanlLUC16VkdYejlLU3JENzFkdmwtX1dDWjZEa0I3R1laVWtvdHN2UkRvNVprMjY0LTA2em9HUUFnIn0"
}
```
## Decoded Data
```json=
{
"credential_response": {
"id": "914e9bdc-02a1-413a-95e2-b59f77176e2e",
"spec_version": "https://identity.foundation/credential-manifest/spec/v1.0.0/",
"manifest_id": "bcc35894-0d30-4118-9f8b-ec2778f98860",
"application_id": "id123",
"fulfillment": {
"descriptor_map": [
{
"id": "c7e4cb13-3778-44a0-a5dc-269317d90eba",
"format": "jwt_vc",
"path": "$.verifiableCredentials[0]"
}
]
}
},
"verifiableCredentials": [
"eyJhbGciOiJFZERTQSIsImtpZCI6ImRpZDprZXk6ejZNa3dMU2l0NHVTOHVTR0RCOTFtNmNib2JjZExENGltbmU4bkZvaVBpVTRuemtxIiwidHlwIjoiSldUIn0.eyJpc3MiOiJkaWQ6a2V5Ono2TWt3TFNpdDR1Uzh1U0dEQjkxbTZjYm9iY2RMRDRpbW5lOG5Gb2lQaVU0bnprcSIsImp0aSI6ImM3ZTRjYjEzLTM3NzgtNDRhMC1hNWRjLTI2OTMxN2Q5MGViYSIsIm5iZiI6MTY2NjM4NzIzNCwic3ViIjoiZGlkOmtleTp6Nk1rdTg3Y1VSUlZTNGRxbjhyZXZCN2RNdkZNZGZMa3h6cVEyOWhmY1F6OWRuOFciLCJ2YyI6eyJAY29udGV4dCI6WyJodHRwczovL3d3dy53My5vcmcvMjAxOC9jcmVkZW50aWFscy92MSJdLCJpZCI6ImM3ZTRjYjEzLTM3NzgtNDRhMC1hNWRjLTI2OTMxN2Q5MGViYSIsInR5cGUiOlsiVmVyaWZpYWJsZUNyZWRlbnRpYWwiXSwiaXNzdWVyIjoiZGlkOmtleTp6Nk1rd0xTaXQ0dVM4dVNHREI5MW02Y2JvYmNkTEQ0aW1uZThuRm9pUGlVNG56a3EiLCJpc3N1YW5jZURhdGUiOiIyMDIyLTEwLTIxVDIxOjIwOjM0WiIsImNyZWRlbnRpYWxTdWJqZWN0Ijp7ImlkIjoiZGlkOmtleTp6Nk1rdTg3Y1VSUlZTNGRxbjhyZXZCN2RNdkZNZGZMa3h6cVEyOWhmY1F6OWRuOFcifSwiY3JlZGVudGlhbFNjaGVtYSI6eyJpZCI6IjljNzIzMDAwLTcwODktNDhjYS04NGQ0LTIyYWZjZjQwOWFiMCIsInR5cGUiOiJKc29uU2NoZW1hVmFsaWRhdG9yMjAxOCJ9fX0.ZEjo_JJvr6j-QO_J0u4BVOeFWH1JbaJjFURQBbuZYuotv9O1U1lXnep3g6KMmUOOTES6nHIDyZ-d-OuPShVVCg"
],
"responseJwt": "eyJhbGciOiJFZERTQSIsImtpZCI6ImRpZDprZXk6ejZNa3dMU2l0NHVTOHVTR0RCOTFtNmNib2JjZExENGltbmU4bkZvaVBpVTRuemtxIiwidHlwIjoiSldUIn0.eyJhbGciOiJFZERTQSIsImNyZWRlbnRpYWxfcmVzcG9uc2UiOnsiYXBwbGljYXRpb25faWQiOiJpZDEyMyIsImZ1bGZpbGxtZW50Ijp7ImRlc2NyaXB0b3JfbWFwIjpbeyJmb3JtYXQiOiJqd3RfdmMiLCJpZCI6ImM3ZTRjYjEzLTM3NzgtNDRhMC1hNWRjLTI2OTMxN2Q5MGViYSIsInBhdGgiOiIkLnZlcmlmaWFibGVDcmVkZW50aWFsc1swXSJ9XX0sImlkIjoiOTE0ZTliZGMtMDJhMS00MTNhLTk1ZTItYjU5Zjc3MTc2ZTJlIiwibWFuaWZlc3RfaWQiOiJiY2MzNTg5NC0wZDMwLTQxMTgtOWY4Yi1lYzI3NzhmOTg4NjAiLCJzcGVjX3ZlcnNpb24iOiJodHRwczovL2lkZW50aXR5LmZvdW5kYXRpb24vY3JlZGVudGlhbC1tYW5pZmVzdC9zcGVjL3YxLjAuMC8ifSwiaWF0IjoxNjY2Mzg3MjM0LCJpc3MiOiJkaWQ6a2V5Ono2TWt3TFNpdDR1Uzh1U0dEQjkxbTZjYm9iY2RMRDRpbW5lOG5Gb2lQaVU0bnprcSIsImtpZCI6ImRpZDprZXk6ejZNa3dMU2l0NHVTOHVTR0RCOTFtNmNib2JjZExENGltbmU4bkZvaVBpVTRuemtxIiwidmVyaWZpYWJsZUNyZWRlbnRpYWxzIjpbImV5SmhiR2NpT2lKRlpFUlRRU0lzSW10cFpDSTZJbVJwWkRwclpYazZlalpOYTNkTVUybDBOSFZUT0hWVFIwUkNPVEZ0Tm1OaWIySmpaRXhFTkdsdGJtVTRia1p2YVZCcFZUUnVlbXR4SWl3aWRIbHdJam9pU2xkVUluMC5leUpwYzNNaU9pSmthV1E2YTJWNU9ubzJUV3QzVEZOcGREUjFVemgxVTBkRVFqa3hiVFpqWW05aVkyUk1SRFJwYlc1bE9HNUdiMmxRYVZVMGJucHJjU0lzSW1wMGFTSTZJbU0zWlRSallqRXpMVE0zTnpndE5EUmhNQzFoTldSakxUSTJPVE14TjJRNU1HVmlZU0lzSW01aVppSTZNVFkyTmpNNE56SXpOQ3dpYzNWaUlqb2laR2xrT210bGVUcDZOazFyZFRnM1kxVlNVbFpUTkdSeGJqaHlaWFpDTjJSTmRrWk5aR1pNYTNoNmNWRXlPV2htWTFGNk9XUnVPRmNpTENKMll5STZleUpBWTI5dWRHVjRkQ0k2V3lKb2RIUndjem92TDNkM2R5NTNNeTV2Y21jdk1qQXhPQzlqY21Wa1pXNTBhV0ZzY3k5Mk1TSmRMQ0pwWkNJNkltTTNaVFJqWWpFekxUTTNOemd0TkRSaE1DMWhOV1JqTFRJMk9UTXhOMlE1TUdWaVlTSXNJblI1Y0dVaU9sc2lWbVZ5YVdacFlXSnNaVU55WldSbGJuUnBZV3dpWFN3aWFYTnpkV1Z5SWpvaVpHbGtPbXRsZVRwNk5rMXJkMHhUYVhRMGRWTTRkVk5IUkVJNU1XMDJZMkp2WW1Oa1RFUTBhVzF1WlRodVJtOXBVR2xWTkc1NmEzRWlMQ0pwYzNOMVlXNWpaVVJoZEdVaU9pSXlNREl5TFRFd0xUSXhWREl4T2pJd09qTTBXaUlzSW1OeVpXUmxiblJwWVd4VGRXSnFaV04wSWpwN0ltbGtJam9pWkdsa09tdGxlVHA2TmsxcmRUZzNZMVZTVWxaVE5HUnhiamh5WlhaQ04yUk5ka1pOWkdaTWEzaDZjVkV5T1dobVkxRjZPV1J1T0ZjaWZTd2lZM0psWkdWdWRHbGhiRk5qYUdWdFlTSTZleUpwWkNJNklqbGpOekl6TURBd0xUY3dPRGt0TkRoallTMDROR1EwTFRJeVlXWmpaalF3T1dGaU1DSXNJblI1Y0dVaU9pSktjMjl1VTJOb1pXMWhWbUZzYVdSaGRHOXlNakF4T0NKOWZYMC5aRWpvX0pKdnI2ai1RT19KMHU0QlZPZUZXSDFKYmFKakZVUlFCYnVaWXVvdHY5TzFVMWxYbmVwM2c2S01tVU9PVEVTNm5ISUR5Wi1kLU91UFNoVlZDZyJdfQ.X3uqfnk51nuKj1EodYDrPBLv_1mzMjyKP-zVGXz9KSrD71dvl-_WCZ6DkB7GYZUkotsvRDo5Zk264-06zoGQAg"
}
```
## Decoded Verifiable Credential
### Header
```json=
{
"alg": "EdDSA",
"kid": "did:key:z6MkwLSit4uS8uSGDB91m6cbobcdLD4imne8nFoiPiU4nzkq",
"typ": "JWT"
}
```
### Payload
```json=
{
"iss": "did:key:z6MkwLSit4uS8uSGDB91m6cbobcdLD4imne8nFoiPiU4nzkq",
"jti": "c7e4cb13-3778-44a0-a5dc-269317d90eba",
"nbf": 1666387234,
"sub": "did:key:z6Mku87cURRVS4dqn8revB7dMvFMdfLkxzqQ29hfcQz9dn8W",
"vc": {
"@context": [
"https://www.w3.org/2018/credentials/v1"
],
"id": "c7e4cb13-3778-44a0-a5dc-269317d90eba",
"type": [
"VerifiableCredential"
],
"issuer": "did:key:z6MkwLSit4uS8uSGDB91m6cbobcdLD4imne8nFoiPiU4nzkq",
"issuanceDate": "2022-10-21T21:20:34Z",
"credentialSubject": {
"id": "did:key:z6Mku87cURRVS4dqn8revB7dMvFMdfLkxzqQ29hfcQz9dn8W"
},
"credentialSchema": {
"id": "9c723000-7089-48ca-84d4-22afcf409ab0",
"type": "JsonSchemaValidator2018"
}
}
}
```
## DWN Storage Context
```mermaid
stateDiagram-v2
state "Credential Application" as CA
state "Credential Response" as CR
state "Verifiable Credential" as VC1
state "Verifiable Credential" as VC2
state "Verifiable Credential" as VC3
CA --> CR
CR --> VC1
CR --> VC2
CR --> VC3
```
## TODO
* Add DWN SDK to Janky Wallet
* figure out
* add method to query for all creds
* add metho
## `window.web5.vc.apply`
- webpage calls `window.web5.vc.renderApplication(url || credManifest)`
- (BG) if URL, fetch cred manifest
- return exception if cred manifest could not be fetched
- (BG) parse/validate cred manifest
- return exception if cred manifest is invalid
- (BG) query DWN for all creds
- (BG) trigger popup window
- (POPUP) render options
- (POPUP) await human verification
- (?) prepare credential application
- (BG) store credential application
- (?) send credential application to Issuer DWN
- (?) wait for response
- (?) parse `CredentialResponse`
- (?) store `CredentialResponse`
- (?) for each VC in `CredentialResponse`
- `DWM'ify` VC and store
Author and recipient are **not** bound to the signer and target of the authorization