From 8605183db74d8de5e1e4dfbc6de574f58dbd0151 Mon Sep 17 00:00:00 2001 From: stefano galassi Date: Tue, 27 Aug 2019 11:00:17 +0800 Subject: [PATCH 1/5] recompiled schema after merging develop --- documentation.swagger.json | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/documentation.swagger.json b/documentation.swagger.json index d60905e..7c5e918 100644 --- a/documentation.swagger.json +++ b/documentation.swagger.json @@ -1392,5 +1392,19 @@ } } } + }, + "x-stream-definitions": { + "modelGetNodeHardwareResponse": { + "properties": { + "error": { + "$ref": "#/definitions/runtimeStreamError" + }, + "result": { + "$ref": "#/definitions/modelGetNodeHardwareResponse" + } + }, + "title": "Stream result of modelGetNodeHardwareResponse", + "type": "object" + } } } From 8c299be4cfb8dbf6af7397d55b6f627188463cf9 Mon Sep 17 00:00:00 2001 From: stefano galassi Date: Tue, 27 Aug 2019 11:06:46 +0800 Subject: [PATCH 2/5] added NodeKey message to node.proto --- model/node.proto | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/model/node.proto b/model/node.proto index d545419..5e944f0 100644 --- a/model/node.proto +++ b/model/node.proto @@ -10,3 +10,9 @@ message Node { string Address = 2; uint32 Port = 3; } + +message NodeKey { + int64 ID = 1; + string PublicKey = 2; + string Seed = 3; +} From 383403cc6bc10423a9219ff056601809f040a6d3 Mon Sep 17 00:00:00 2001 From: stefano galassi Date: Tue, 27 Aug 2019 16:01:49 +0800 Subject: [PATCH 3/5] renamed proofOfOwnership.proto to nodeAdmin.proto added request response messages for GenerateNodeKey api added grpc service api endpoint --- documentation.swagger.json | 45 +++++++++++++++++++ model/node.proto | 11 +++++ ...proofOfOwnership.proto => nodeAdmin.proto} | 6 +++ 3 files changed, 62 insertions(+) rename service/{proofOfOwnership.proto => nodeAdmin.proto} (66%) diff --git a/documentation.swagger.json b/documentation.swagger.json index 7c5e918..f0bad11 100644 --- a/documentation.swagger.json +++ b/documentation.swagger.json @@ -366,6 +366,42 @@ } } }, + "/v1/nodeadmin/generateNodeKey": { + "get": { + "tags": [ + "NodeAdminService" + ], + "operationId": "GenerateNodeKey", + "parameters": [ + { + "type": "string", + "description": "Account Address.", + "name": "AccountAddress", + "in": "query" + }, + { + "type": "string", + "format": "int64", + "name": "Timestamp", + "in": "query" + }, + { + "type": "string", + "format": "byte", + "name": "Signature", + "in": "query" + } + ], + "responses": { + "200": { + "description": "A successful response.", + "schema": { + "$ref": "#/definitions/modelGenerateNodeKeyResponse" + } + } + } + } + }, "/v1/nodeadmin/getProofOfOwnership": { "get": { "tags": [ @@ -682,6 +718,15 @@ "modelEmptyTransactionBody": { "type": "object" }, + "modelGenerateNodeKeyResponse": { + "type": "object", + "properties": { + "NodePublicKey": { + "type": "string", + "format": "byte" + } + } + }, "modelGetAccountBalanceResponse": { "type": "object", "properties": { diff --git a/model/node.proto b/model/node.proto index 5e944f0..8f68cf4 100644 --- a/model/node.proto +++ b/model/node.proto @@ -16,3 +16,14 @@ message NodeKey { string PublicKey = 2; string Seed = 3; } + +message GenerateNodeKeyRequest { + // Account Address + string AccountAddress = 1; + int64 Timestamp = 2; + bytes Signature = 3; +} + +message GenerateNodeKeyResponse { + bytes NodePublicKey = 1; +} diff --git a/service/proofOfOwnership.proto b/service/nodeAdmin.proto similarity index 66% rename from service/proofOfOwnership.proto rename to service/nodeAdmin.proto index e5b1145..31eb141 100644 --- a/service/proofOfOwnership.proto +++ b/service/nodeAdmin.proto @@ -5,6 +5,7 @@ package service; option go_package = "github.com/zoobc/zoobc-core/common/service"; import "model/proofOfOwnership.proto"; +import "model/node.proto"; import "google/api/annotations.proto"; // Generate ProofOfOwnership @@ -14,4 +15,9 @@ service NodeAdminService { get: "/v1/nodeadmin/getProofOfOwnership" }; } + rpc GenerateNodeKey(model.GenerateNodeKeyRequest) returns (model.GenerateNodeKeyResponse) { + option (google.api.http) = { + get: "/v1/nodeadmin/generateNodeKey" + }; + } } From 56efe4b28768936bac4418e5eb331d4a6cae49cd Mon Sep 17 00:00:00 2001 From: stefano galassi Date: Wed, 28 Aug 2019 07:55:04 +0800 Subject: [PATCH 4/5] changed NodePublicKey to bytes in NodeKey message model --- model/node.proto | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/model/node.proto b/model/node.proto index 8f68cf4..42f3fc3 100644 --- a/model/node.proto +++ b/model/node.proto @@ -13,7 +13,7 @@ message Node { message NodeKey { int64 ID = 1; - string PublicKey = 2; + bytes PublicKey = 2; string Seed = 3; } From 0ca30555cde3df15f13da4bb0cb0edd193afafc3 Mon Sep 17 00:00:00 2001 From: stefano galassi Date: Wed, 28 Aug 2019 14:13:00 +0800 Subject: [PATCH 5/5] added auth RequestTypes removed fields from GenerateNodeKeyRequest and GetProofOfOwnershipRequest --- documentation.swagger.json | 40 ------------------------------------ model/auth.proto | 2 ++ model/node.proto | 7 +------ model/proofOfOwnership.proto | 7 +------ 4 files changed, 4 insertions(+), 52 deletions(-) diff --git a/documentation.swagger.json b/documentation.swagger.json index f0bad11..6bcc0ac 100644 --- a/documentation.swagger.json +++ b/documentation.swagger.json @@ -372,26 +372,6 @@ "NodeAdminService" ], "operationId": "GenerateNodeKey", - "parameters": [ - { - "type": "string", - "description": "Account Address.", - "name": "AccountAddress", - "in": "query" - }, - { - "type": "string", - "format": "int64", - "name": "Timestamp", - "in": "query" - }, - { - "type": "string", - "format": "byte", - "name": "Signature", - "in": "query" - } - ], "responses": { "200": { "description": "A successful response.", @@ -408,26 +388,6 @@ "NodeAdminService" ], "operationId": "GetProofOfOwnership", - "parameters": [ - { - "type": "string", - "description": "Account Address.", - "name": "AccountAddress", - "in": "query" - }, - { - "type": "string", - "format": "int64", - "name": "Timestamp", - "in": "query" - }, - { - "type": "string", - "format": "byte", - "name": "Signature", - "in": "query" - } - ], "responses": { "200": { "description": "A successful response.", diff --git a/model/auth.proto b/model/auth.proto index bd81645..f571c17 100644 --- a/model/auth.proto +++ b/model/auth.proto @@ -7,4 +7,6 @@ option go_package = "github.com/zoobc/zoobc-core/common/model"; // RequestType used to sign a node administration request enum RequestType { GetNodeHardware = 0; + GetProofOfOwnership = 1; + GeneratetNodeKey = 2; } diff --git a/model/node.proto b/model/node.proto index 42f3fc3..f7b9989 100644 --- a/model/node.proto +++ b/model/node.proto @@ -17,12 +17,7 @@ message NodeKey { string Seed = 3; } -message GenerateNodeKeyRequest { - // Account Address - string AccountAddress = 1; - int64 Timestamp = 2; - bytes Signature = 3; -} +message GenerateNodeKeyRequest {} message GenerateNodeKeyResponse { bytes NodePublicKey = 1; diff --git a/model/proofOfOwnership.proto b/model/proofOfOwnership.proto index 188a346..421d504 100644 --- a/model/proofOfOwnership.proto +++ b/model/proofOfOwnership.proto @@ -15,9 +15,4 @@ message ProofOfOwnershipMessage { uint32 BlockHeight = 3; } -message GetProofOfOwnershipRequest { - // Account Address - string AccountAddress = 1; - int64 Timestamp = 2; - bytes Signature = 3; -} +message GetProofOfOwnershipRequest {}