On-chain Metadata - Anchoring of OE service credentials
Specific metadata of the catalogue entries is saved (anchored) on the blockchain to ensure the reliability and integrity of the data. On-chain storage is immutable and cannot be deleted. Therefore, only selected metadata is allowed to be stored on the blockchain.
As an additional layer of protection, the data is also encrypted to ensure extra privacy and access control for data spaces.
On-chain remote object
Example remote objects before encryption:
export const remoteDDOTypeURL = {
remote: {
type: 'url',
url: 'path.to/encrypted/oe-verifiable-presentation',
method: 'GET'
fileHash: "xyz"
encryptedBy: '16Uiu2HAmN211yBiE6dF5xu8GFXV1jqZQzK5MbzBuQDspfa6qNgXF',
encryptedMethod: 'ECIES'
}
}
export const remoteDDOTypeIPFS = {
remote: {
type: 'ipfs',
hash: 'QmaD5S7TakPs3a4fijatbfqhmhhrEbCvbqGTTAp7VrZ91T',
fileHash: "xyz"
encryptedBy: '16Uiu2HAmN211yBiE6dF5xu8GFXV1jqZQzK5MbzBuQDspfa6qNgXF',
encryptedMethod: 'ECIES'
}
}
Attribute | Type | Description | Required |
---|---|---|---|
type | sring (ipfs , url ) | specifies the type of remote location | ✅ |
hash | string | CID of the IPFS resource | ☑️ (For ipfs type only) |
method | string (GET , POST ) | HTTP method | ☑️ (For url type only) |
url | string | URL pointing to encrypted OE Verifiable Presentation | ☑️ (For url type only) |
fileHash | string | sha256 hash of the data object | ✅ |
encryptedBy | string | ocean-node id (derived from private key) | ✅ |
encryptedMethod | string (ecies , aes ) | Encryption method used | ✅ |