Class OnchainReceiveRequestProfile
- Namespace
- NArk.ArkadeIntents.Rfq.Profiles.Onchain
- Assembly
- NArk.ArkadeIntents.dll
Request fields of the onchain receive profile.
public sealed class OnchainReceiveRequestProfile
- Inheritance
-
OnchainReceiveRequestProfile
- Inherited Members
Remarks
Roles reverse from OnchainSendRequestProfile, and the field names follow the roles
rather than the direction. There the client's payout_pubkey was its L1 claim key;
here the client holds the L1 HTLC's refund role, so the same contribution is
RefundPubkey.
There is no Arkade refund address, and its absence is the corridor rather than an omission: on this leg the client never funds the Arkade side at all, so it has nothing to be refunded from there. Its recourse is the L1 HTLC's own refund leaf.
Properties
ClaimPacket
The preimage, ECIES-sealed to covclaimd (ephPub(33) || nonce(12) || ciphertext,
base64), so the Arkade claim can be pushed while the client is offline.
public string? ClaimPacket { get; init; }
Property Value
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 secret both rails turn on.
public required string PaymentHash { get; init; }
Property Value
Remarks
The client chooses it for the same reason it does on the Lightning receive leg: the solver funds Arkade before it has been paid on L1, and it collects only once the client's Arkade claim publishes the secret. A solver holding that secret would be paid for a swap it never delivered.
PayoutAddress
The client's Arkade address, where the solver's lockup must pay.
public required string PayoutAddress { get; init; }
Property Value
PayoutPubkey
The client's x-only Arkade key (32 bytes, hex) — the covenant's receiver role, and so
the key that claims.
public required string PayoutPubkey { get; init; }
Property Value
Remarks
Sent even though covclaimd can push the claim on the client's behalf, and deliberately: a covenant the client cannot spend itself makes covclaimd a hard dependency of the corridor, and a covclaimd that accepts a reveal and then never claims would leave the swap with no working claim path at all.
RefundPubkey
The client's x-only key (32 bytes, hex) on the L1 HTLC's refund leaf — the only way back if the solver never funds the Arkade side.
public required string RefundPubkey { get; init; }