Class AbstractDelegatedTransactionSigner
java.lang.Object
org.xrpl.xrpl4j.crypto.core.signing.AbstractDelegatedTransactionSigner
- All Implemented Interfaces:
DelegatedPublicKeyProvider
,DelegatedTransactionSigner
public abstract class AbstractDelegatedTransactionSigner
extends Object
implements DelegatedTransactionSigner
An abstract implementation of
DelegatedTransactionSigner
with common functionality that sub-classes can
utilize.-
Constructor Summary
ConstructorDescriptionAbstractDelegatedTransactionSigner
(SignatureUtils signatureUtils, AddressUtils addressService) Required-args Constructor. -
Method Summary
Modifier and TypeMethodDescriptionprotected abstract Signature
ecDsaSign
(KeyMetadata privateKeyMetadata, UnsignedByteArray signableTransactionBytes) Does the actual work of computing a signature using a secp256k1 private-key, as locatable usingprivateKeyMetadata
.protected abstract Signature
edDsaSign
(KeyMetadata privateKeyMetadata, UnsignedByteArray signableTransactionBytes) Does the actual work of computing a signature using a ed25519 private-key, as locatable usingprivateKeyMetadata
.<T extends Transaction>
SignaturemultiSign
(KeyMetadata keyMetadata, T transaction) Obtain a multi-sig signature for the supplied transaction usingkeyMetadata
.sign
(KeyMetadata keyMetadata, UnsignedClaim unsignedClaim) Obtain a signature for the supplied unsigned payment channel claim using the private-key that corresponds tokeyMetadata
.<T extends Transaction>
SingleSingedTransaction<T>sign
(KeyMetadata keyMetadata, T transaction) Obtain a signature for the supplied transaction using the private-key that corresponds tokeyMetadata
.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.xrpl.xrpl4j.crypto.core.signing.DelegatedPublicKeyProvider
getPublicKey
-
Constructor Details
-
AbstractDelegatedTransactionSigner
public AbstractDelegatedTransactionSigner(SignatureUtils signatureUtils, AddressUtils addressService) Required-args Constructor.- Parameters:
signatureUtils
- AnSignatureUtils
for help with signing.addressService
- AnAddressUtils
.
-
-
Method Details
-
sign
public <T extends Transaction> SingleSingedTransaction<T> sign(KeyMetadata keyMetadata, T transaction) Description copied from interface:DelegatedTransactionSigner
Obtain a signature for the supplied transaction using the private-key that corresponds tokeyMetadata
.- Specified by:
sign
in interfaceDelegatedTransactionSigner
- Type Parameters:
T
- The type of the transaction to be signed.- Parameters:
keyMetadata
- AKeyMetadata
that describes the public/private Keypair to use for signing operations.transaction
- TheTransaction
to sign.- Returns:
- A
SingleSingedTransaction
containing binary data that can be submitted to the XRP Ledger in order to effect a transaction.
-
sign
Description copied from interface:DelegatedTransactionSigner
Obtain a signature for the supplied unsigned payment channel claim using the private-key that corresponds tokeyMetadata
.- Specified by:
sign
in interfaceDelegatedTransactionSigner
- Parameters:
keyMetadata
- AKeyMetadata
that describes the public/private Keypair to use for signing operations.unsignedClaim
- TheUnsignedClaim
to sign.- Returns:
- A
SingleSingedTransaction
containing binary data that can be submitted to the XRP Ledger in order to effect a transaction.
-
multiSign
Description copied from interface:DelegatedTransactionSigner
Obtain a multi-sig signature for the supplied transaction usingkeyMetadata
.- Specified by:
multiSign
in interfaceDelegatedTransactionSigner
- Type Parameters:
T
- The typeTransaction
to be signed.- Parameters:
keyMetadata
- AKeyMetadata
that refers to a private key that can be used to signtransaction
.transaction
- TheTransaction
to sign.- Returns:
- A
SingleSingedTransaction
of typeDelegatedTransactionSigner
containing everything related to a signed transaction.
-
edDsaSign
protected abstract Signature edDsaSign(KeyMetadata privateKeyMetadata, UnsignedByteArray signableTransactionBytes) Does the actual work of computing a signature using a ed25519 private-key, as locatable usingprivateKeyMetadata
.- Parameters:
privateKeyMetadata
- AKeyMetadata
to describe the private-key to use for signing.signableTransactionBytes
- AUnsignedByteArray
to sign.- Returns:
- A
Signature
with data that can be used to submit a transaction to the XRP Ledger.
-
ecDsaSign
protected abstract Signature ecDsaSign(KeyMetadata privateKeyMetadata, UnsignedByteArray signableTransactionBytes) Does the actual work of computing a signature using a secp256k1 private-key, as locatable usingprivateKeyMetadata
.- Parameters:
privateKeyMetadata
- AKeyMetadata
to describe the private-key to use for signing.signableTransactionBytes
- AUnsignedByteArray
to sign.- Returns:
- A
Signature
with data that can be used to submit a transaction to the XRP Ledger.
-