lnrpc: unify proto style by moving services to top of file
This commit is contained in:
7 files changed
+315
-300
No files matched your search
+59
-57
@@ -4,6 +4,65 @@ package signrpc;
|
||||
|
||||
option go_package = "github.com/lightningnetwork/lnd/lnrpc/signrpc";
|
||||
|
||||
// Signer is a service that gives access to the signing functionality of the
|
||||
// daemon's wallet.
|
||||
service Signer {
|
||||
/**
|
||||
SignOutputRaw is a method that can be used to generated a signature for a
|
||||
set of inputs/outputs to a transaction. Each request specifies details
|
||||
concerning how the outputs should be signed, which keys they should be
|
||||
signed with, and also any optional tweaks. The return value is a fixed
|
||||
64-byte signature (the same format as we use on the wire in Lightning).
|
||||
|
||||
If we are unable to sign using the specified keys, then an error will be
|
||||
returned.
|
||||
*/
|
||||
rpc SignOutputRaw (SignReq) returns (SignResp);
|
||||
|
||||
/**
|
||||
ComputeInputScript generates a complete InputIndex for the passed
|
||||
transaction with the signature as defined within the passed SignDescriptor.
|
||||
This method should be capable of generating the proper input script for
|
||||
both regular p2wkh output and p2wkh outputs nested within a regular p2sh
|
||||
output.
|
||||
|
||||
Note that when using this method to sign inputs belonging to the wallet,
|
||||
the only items of the SignDescriptor that need to be populated are pkScript
|
||||
in the TxOut field, the value in that same field, and finally the input
|
||||
index.
|
||||
*/
|
||||
rpc ComputeInputScript (SignReq) returns (InputScriptResp);
|
||||
|
||||
/**
|
||||
SignMessage signs a message with the key specified in the key locator. The
|
||||
returned signature is fixed-size LN wire format encoded.
|
||||
|
||||
The main difference to SignMessage in the main RPC is that a specific key is
|
||||
used to sign the message instead of the node identity private key.
|
||||
*/
|
||||
rpc SignMessage (SignMessageReq) returns (SignMessageResp);
|
||||
|
||||
/**
|
||||
VerifyMessage verifies a signature over a message using the public key
|
||||
provided. The signature must be fixed-size LN wire format encoded.
|
||||
|
||||
The main difference to VerifyMessage in the main RPC is that the public key
|
||||
used to sign the message does not have to be a node known to the network.
|
||||
*/
|
||||
rpc VerifyMessage (VerifyMessageReq) returns (VerifyMessageResp);
|
||||
|
||||
/*
|
||||
DeriveSharedKey returns a shared secret key by performing Diffie-Hellman key
|
||||
derivation between the ephemeral public key in the request and the node's
|
||||
key specified in the key_loc parameter (or the node's identity private key
|
||||
if no key locator is specified):
|
||||
P_shared = privKeyNode * ephemeralPubkey
|
||||
The resulting shared public key is serialized in the compressed format and
|
||||
hashed with sha256, resulting in the final key length of 256bit.
|
||||
*/
|
||||
rpc DeriveSharedKey (SharedKeyRequest) returns (SharedKeyResponse);
|
||||
}
|
||||
|
||||
message KeyLocator {
|
||||
/// The family of key being identified.
|
||||
int32 key_family = 1;
|
||||
@@ -167,60 +226,3 @@ message SharedKeyResponse {
|
||||
// The shared public key, hashed with sha256.
|
||||
bytes shared_key = 1;
|
||||
}
|
||||
|
||||
service Signer {
|
||||
/**
|
||||
SignOutputRaw is a method that can be used to generated a signature for a
|
||||
set of inputs/outputs to a transaction. Each request specifies details
|
||||
concerning how the outputs should be signed, which keys they should be
|
||||
signed with, and also any optional tweaks. The return value is a fixed
|
||||
64-byte signature (the same format as we use on the wire in Lightning).
|
||||
|
||||
If we are unable to sign using the specified keys, then an error will be
|
||||
returned.
|
||||
*/
|
||||
rpc SignOutputRaw (SignReq) returns (SignResp);
|
||||
|
||||
/**
|
||||
ComputeInputScript generates a complete InputIndex for the passed
|
||||
transaction with the signature as defined within the passed SignDescriptor.
|
||||
This method should be capable of generating the proper input script for
|
||||
both regular p2wkh output and p2wkh outputs nested within a regular p2sh
|
||||
output.
|
||||
|
||||
Note that when using this method to sign inputs belonging to the wallet,
|
||||
the only items of the SignDescriptor that need to be populated are pkScript
|
||||
in the TxOut field, the value in that same field, and finally the input
|
||||
index.
|
||||
*/
|
||||
rpc ComputeInputScript (SignReq) returns (InputScriptResp);
|
||||
|
||||
/**
|
||||
SignMessage signs a message with the key specified in the key locator. The
|
||||
returned signature is fixed-size LN wire format encoded.
|
||||
|
||||
The main difference to SignMessage in the main RPC is that a specific key is
|
||||
used to sign the message instead of the node identity private key.
|
||||
*/
|
||||
rpc SignMessage (SignMessageReq) returns (SignMessageResp);
|
||||
|
||||
/**
|
||||
VerifyMessage verifies a signature over a message using the public key
|
||||
provided. The signature must be fixed-size LN wire format encoded.
|
||||
|
||||
The main difference to VerifyMessage in the main RPC is that the public key
|
||||
used to sign the message does not have to be a node known to the network.
|
||||
*/
|
||||
rpc VerifyMessage (VerifyMessageReq) returns (VerifyMessageResp);
|
||||
|
||||
/*
|
||||
DeriveSharedKey returns a shared secret key by performing Diffie-Hellman key
|
||||
derivation between the ephemeral public key in the request and the node's
|
||||
key specified in the key_loc parameter (or the node's identity private key
|
||||
if no key locator is specified):
|
||||
P_shared = privKeyNode * ephemeralPubkey
|
||||
The resulting shared public key is serialized in the compressed format and
|
||||
hashed with sha256, resulting in the final key length of 256bit.
|
||||
*/
|
||||
rpc DeriveSharedKey (SharedKeyRequest) returns (SharedKeyResponse);
|
||||
}
|
||||
Reference in new issue
Block a user