How to directly sign a Cardano transaction?

Hi,

First and foremost: if I understand correctly, currently when sending transactions a Cardano Node just takes a spending password, and then creates a transaction, decrypts a private key with a spending password, signs a transaction and submits it to blockchain. All of that is done undercover and cannot be affected by an application developer in a current form of Cardano. Please correct me if I’m wrong, though API method: https://cardanodocs.com/technical/wallet/api/v1/?v=1.6.0#section/Getting-Started/Sending-ADA would suggest that I’m not.

In an app that I’m integrating Cardano with, it is crucial to modify a process of signing a transaction - so I would like to get my hands on an actual unsigned transaction object, sign it myself and then submit it to blockchain. Is it possible to do in current Cardano form? If not - what do I need to do to achieve that? Would I need to write a custom Cardano node or is there an easier way?

Kind regards,
KSS

1 Like

Bumping the topic, hoping that some Cardano dev will see it :pray: . Sorry for that, but I really hope to get some eyes on the issue before deciding to write a custom node.

@SebastienGllmt @vantuz-subhuman

You could use WASM or CLI instead of cardano-sl endpoint - which btw - only supports one (HD Random) of the two common wallet types in Cardano.
FYI: CLI/Cardano-SL API usage is OK for the current (Byron) mainnet, you will probably have to switch to shelley wallets after a while (atleast a few months away). I believe using WASM might suit you better in that case.

3 Likes

This should also be doable with Tangata-Manu: https://github.com/Emurgo/tangata-manu

3 Likes

Thanks, I will try to look at WASM and post here again regardless of the result :wink:

2 Likes