Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
56 changes: 56 additions & 0 deletions documentation.swagger.json
Original file line number Diff line number Diff line change
Expand Up @@ -1521,6 +1521,43 @@
}
}
},
"modelMultiSignatureInfo": {
"type": "object",
"properties": {
"Addresses": {
"type": "array",
"items": {
"type": "string"
}
},
"MinimumSignatures": {
"type": "integer",
"format": "int64"
},
"Nonce": {
"type": "string",
"format": "int64"
}
}
},
"modelMultiSignatureTransactionBody": {
"type": "object",
"properties": {
"MultiSignatureInfo": {
"title": "MultiSignatureInfo represent the information of the multisig-address",
"$ref": "#/definitions/modelMultiSignatureInfo"
},
"SignatureInfo": {
"title": "List of participantAddress-participantSignature with its tx hash",
"$ref": "#/definitions/modelSignatureInfo"
},
"UnsignedTransactionBytes": {
"type": "string",
"format": "byte",
"title": "Unsigned transaction bytes that will be executed once the transaction is valid"
}
}
},
"modelNode": {
"type": "object",
"title": "NodeInfo represent the node information data structure",
Expand Down Expand Up @@ -1836,6 +1873,22 @@
}
}
},
"modelSignatureInfo": {
"type": "object",
"properties": {
"Signatures": {
"type": "object",
"additionalProperties": {
"type": "string",
"format": "byte"
}
},
"TransactionHash": {
"type": "string",
"format": "byte"
}
}
},
"modelSkippedBlocksmith": {
"type": "object",
"properties": {
Expand Down Expand Up @@ -2034,6 +2087,9 @@
"emptyTransactionBody": {
"$ref": "#/definitions/modelEmptyTransactionBody"
},
"multiSignatureTransactionBody": {
"$ref": "#/definitions/modelMultiSignatureTransactionBody"
},
"nodeRegistrationTransactionBody": {
"$ref": "#/definitions/modelNodeRegistrationTransactionBody"
},
Expand Down
15 changes: 15 additions & 0 deletions model/multiSignature.proto
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
syntax = "proto3";

package model;
option go_package = "github.com/zoobc/zoobc-core/common/model";

message MultiSignatureInfo {
uint32 MinimumSignatures = 1;
int64 Nonce = 2 [ jstype = JS_STRING ];
repeated string Addresses = 3;
}

message SignatureInfo {
bytes TransactionHash = 1;
map<string, bytes> Signatures = 2;
}
17 changes: 15 additions & 2 deletions model/transaction.proto
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ import "model/pagination.proto";
import "model/batchReceipt.proto";
import "model/nodeRegistration.proto";
import "model/escrow.proto";
import "model/multiSignature.proto";

// Transaction represent the transaction data structure stored in the database
message Transaction {
Expand Down Expand Up @@ -35,10 +36,11 @@ message Transaction {
SetupAccountDatasetTransactionBody setupAccountDatasetTransactionBody = 20;
RemoveAccountDatasetTransactionBody removeAccountDatasetTransactionBody = 21;
ApprovalEscrowTransactionBody approvalEscrowTransactionBody = 22;
MultiSignatureTransactionBody multiSignatureTransactionBody = 23;
}
bytes Signature = 23;
bytes Signature = 24;
// nullable
Escrow Escrow = 24;
Escrow Escrow = 25;
}

enum TransactionType {
Expand All @@ -60,6 +62,8 @@ enum TransactionType {
RemoveAccountDatasetTransaction = 259;
// in bytes: []byte{4,0,0,0}
ApprovalEscrowTransaction = 4;
// in bytes: []byte{5,0,0,0}
MultiSignatureTransaction = 5;
}


Expand Down Expand Up @@ -125,6 +129,15 @@ message ApprovalEscrowTransactionBody {
int64 TransactionID = 2 [ jstype = JS_STRING ];
}

message MultiSignatureTransactionBody {
// MultiSignatureInfo represent the information of the multisig-address
MultiSignatureInfo MultiSignatureInfo = 1;
// Unsigned transaction bytes that will be executed once the transaction is valid
bytes UnsignedTransactionBytes = 2;
// List of participantAddress-participantSignature with its tx hash
SignatureInfo SignatureInfo = 3;
}

//------------
// P2P Content
//------------
Expand Down