Table of Contents

Class LightningReceiveRequestProfile

Namespace
NArk.ArkadeIntents.Rfq.Profiles.Lightning
Assembly
NArk.ArkadeIntents.dll

Request fields of the Lightning receive profile.

public sealed class LightningReceiveRequestProfile
Inheritance
LightningReceiveRequestProfile
Inherited Members

Remarks

The client picks the preimage here and never sends it to the solver — only its hash, plus a sealed copy the solver cannot open (ClaimPacket). That is what keeps the solver from settling the Lightning side before the client has been paid on Arkade.

Properties

ClaimPacket

The preimage, ECIES-sealed to covclaimd (ephPub(33) || nonce(12) || ciphertext, base64), so the claim can be pushed while the client is offline.

public string? ClaimPacket { get; init; }

Property Value

string

Remarks

Opaque to the solver, which never holds the key that opens it and validates only its shape. Omit when the client performs its own online claim.

PaymentHash

SHA-256 of the client's own preimage (32 bytes, hex). The solver mints its hold invoice against this hash, so the client — not the solver — decides when the swap settles.

public required string PaymentHash { get; init; }

Property Value

string

PayoutAddress

The client's Arkade address, where the swap pays out.

public required string PayoutAddress { get; init; }

Property Value

string

PayoutPubkey

The client's x-only key (32 bytes, hex) for the covenant. On this leg the roles are inverted from the send leg: the client is the receiver, so this is the key that claims.

public required string PayoutPubkey { get; init; }

Property Value

string