secret-network-ccl
Version:
Secret Network's Confidential Comutation Layer
86 lines (85 loc) • 2.17 kB
JSON
{
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "HandleMsg",
"anyOf": [
{
"type": "object",
"required": [
"input"
],
"properties": {
"input": {
"type": "object",
"required": [
"message"
],
"properties": {
"message": {
"$ref": "#/definitions/PrivContractHandleMsg"
}
}
}
}
}
],
"definitions": {
"Binary": {
"description": "Binary is a wrapper around Vec<u8> to add base64 de/serialization with serde. It also adds some helper methods to help encode inline.\n\nThis is only needed as serde-json-{core,wasm} has a horrible encoding for Vec<u8>",
"type": "string"
},
"HumanAddr": {
"type": "string"
},
"PrivContractHandleMsg": {
"type": "object",
"required": [
"handle",
"input_hash",
"input_values",
"signature",
"task_id",
"user_address"
],
"properties": {
"handle": {
"description": "Handle function to be called in the destination contract.",
"type": "string"
},
"input_hash": {
"description": "SHA256 hash of `input_values`.",
"allOf": [
{
"$ref": "#/definitions/Binary"
}
]
},
"input_values": {
"description": "JSON string of decrypted user inputs.",
"type": "string"
},
"signature": {
"description": "Signature of `input_hash`, signed by the private gateway.",
"allOf": [
{
"$ref": "#/definitions/Binary"
}
]
},
"task_id": {
"description": "Task ID passed along for later verification.",
"type": "integer",
"format": "uint64",
"minimum": 0.0
},
"user_address": {
"description": "Public network user address.",
"allOf": [
{
"$ref": "#/definitions/HumanAddr"
}
]
}
}
}
}
}