Seeing this when creating a Tile: “Error: HTTP request to ‘…/api/v0/streams’ failed with status ‘Internal Server Error’: {“error”:“Unsupported CACAO signature type”}”
Versions:
$ cat node_modules/@glazed/did-session/package.json | grep version
“version”: “0.1.1”,
$ cat node_modules/ceramic-cacao/package.json | grep version
“version”: “1.1.1”,
Cacao object:
{
h: { t: ‘caip122’ },
p: {
aud: ‘did:key:z6MkfVTdR7BACyFHcNGifRcUCFPATvVW47xF8qKq4UrTrenJ’,
exp: ‘2022-08-06T13:35:33.300Z’,
iat: ‘2022-08-05T13:35:33.300Z’,
iss: ‘did:pkh:eip155:1:0x661f52D8D111ECcF62872bDDb2E70C12d8b4b860’,
nonce: ‘PukHbqkrQg’,
domain: ‘krebit.id’,
version: ‘1’,
resources: [ ‘ceramic://*’ ],
statement: ‘Give this application access to some of your data on Ceramic’
},
s: {
s: ‘0xb5321b1cb5f0f261feb1b2b7ff0a9038e9be2f5d131aa8a6263ba81dcb9f536740b9653543e90118a27814276dbfefa4a187a01001aa0944da0c77b250d28e101b’,
t: ‘eip191’
}
}
For reference, this is how I’m establishing the session:
const authProvider = new EthereumAuthProvider(ethProvider, address);
const session = await DIDSession.authorize(authProvider, {
resources: [`ceramic://*`],
domain: DOMAIN
});
const did = session.did;
await client.setDID(did);
// Creating model and store
const model = new DataModel({ ceramic: client, aliases: datamodel });
const store = new DIDDataStore({ ceramic: client, model });
if (store.authenticated) {
console.log('DID session authenticated: ', did.id);
console.log('did: ', store.id);
return store;
}
This outputs:
DID session authenticated: did:key:z6Mkv1G86TcFcFc4w92HaFxB9Pvzx1gC7PmFKbfcS5GtaWte
did: did:pkh:eip155:4:0xd9d96fb150136798861363d8ad9fe4033cfc32b3