Skip to main content

MuSig2Cleanup

MuSig2Cleanup (experimental!) allows a caller to clean up a session early in cases where it's obvious that the signing session won't succeed and the resources can be released.

NOTE: The MuSig2 BIP is not final yet and therefore this API must be considered to be HIGHLY EXPERIMENTAL and subject to change in upcoming releases. Backward compatibility is not guaranteed!

Source: signrpc/signer.proto

gRPC

rpc MuSig2Cleanup (MuSig2CleanupRequest) returns (MuSig2CleanupResponse);

REST

HTTP MethodPath
POST /v2/signer/musig2/cleanup

Code Samples

const fs = require('fs');
const grpc = require('@grpc/grpc-js');
const protoLoader = require('@grpc/proto-loader');

const GRPC_HOST = 'localhost:10009'
const MACAROON_PATH = 'LND_DIR/data/chain/bitcoin/regtest/admin.macaroon'
const TLS_PATH = 'LND_DIR/tls.cert'

const loaderOptions = {
keepCase: true,
longs: String,
enums: String,
defaults: true,
oneofs: true,
};
const packageDefinition = protoLoader.loadSync(['lightning.proto', 'signrpc/signer.proto'], loaderOptions);
const signrpc = grpc.loadPackageDefinition(packageDefinition).signrpc;
process.env.GRPC_SSL_CIPHER_SUITES = 'HIGH+ECDSA';
const tlsCert = fs.readFileSync(TLS_PATH);
const sslCreds = grpc.credentials.createSsl(tlsCert);
const macaroon = fs.readFileSync(MACAROON_PATH).toString('hex');
const macaroonCreds = grpc.credentials.createFromMetadataGenerator(function(args, callback) {
let metadata = new grpc.Metadata();
metadata.add('macaroon', macaroon);
callback(null, metadata);
});
let creds = grpc.credentials.combineChannelCredentials(sslCreds, macaroonCreds);
let client = new signrpc.Signer(GRPC_HOST, creds);
let request = {
session_id: <bytes>,
};
client.muSig2Cleanup(request, function(err, response) {
console.log(response);
});
// Console output:
// {
// }

Messages

signrpc.MuSig2CleanupRequest

Source: signrpc/signer.proto

FieldgRPC TypeREST TypeREST Placement
session_id
bytesstringbody

signrpc.MuSig2CleanupResponse

Source: signrpc/signer.proto

note

This response has no parameters.