1
0
mirror of https://github.com/bumi/lnrpc synced 2025-06-18 22:05:34 +00:00
lnrpc/lib/grpc_services/signrpc/signer_services_pb.rb
Michael Bumann 404ed3b99e Add support for v0.11 GRPC services
This also refactors the client GRPC wrapper to dynamically load the
request objects.
All GRPC generated client files now live under lib/grpc_services
2020-08-28 14:14:50 +02:00

69 lines
3.0 KiB
Ruby

# Generated by the protocol buffer compiler. DO NOT EDIT!
# Source: signrpc/signer.proto for package 'signrpc'
require 'grpc'
require 'signrpc/signer_pb'
module Signrpc
module Signer
# Signer is a service that gives access to the signing functionality of the
# daemon's wallet.
class Service
include GRPC::GenericService
self.marshal_class_method = :encode
self.unmarshal_class_method = :decode
self.service_name = 'signrpc.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, 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, 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, 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, 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, SharedKeyResponse
end
Stub = Service.rpc_stub_class
end
end