0

Is it possible to send an unsigned tx from subxt similar to TxClient::sign_and_submit(...)?

I have a bizarre use case where the transaction authenticity is to be verified on a foreign chain via an RPC and the signer is unknown to the Substrate-based chain.

2 Answers 2

1

you can create it via subxt using this, than maybe try this

just keep in mind to implement validate_unsigned to include it onchain

we did a similar work to what you are describing, we take a a set of hashes(ids in your usecase) via grpc server, verify that 2/3 of validators witnesses the the same hashes and if so include the hashes onchain.

2
  • 1
    @dadzerlade Thank you for the link. I wish I knew about Validated Streams some months ago. It looks like I'm trying to develop something similar to that, kind of a "proof of external event" system but I took a PoW model as a basis. The event is submitted by a tightly-coupled daemon for block proposal and the consensus is achieved when the rest of the nodes verify the proposal. Anyway it's a highly experimental thing for the moment. Commented Aug 11, 2023 at 17:46
  • @YuryYukhananov it looks very similar indeed, here is a short blog post explaning VS comrade.coop/… in case you find validated streams suitable for your project, we would be very happy to offer support.
    – dadzerlaze
    Commented Aug 12, 2023 at 8:13
0

I guess what you are trying to achieve is a Layer2 solution, as this done in Layer2 solutions where the authenticity of transactions are verified on Layer1.

Is it possible to send an unsigned tx from subxt similar to TxClient::sign_and_submit(...)?

To answer your question blockchain doesn't trust any unverified source to change its current state unless it is done via its client, which is already part of the chain. One such example is the proof of election is submitted via off chain workers for this you can refer https://github.com/paritytech/substrate/blob/HEAD/frame/election-provider-multi-phase/src/unsigned.rs#L407

I hope this helps with your query.

2
  • Thank you. My use case implies that a Substrate-based chain receives an opaque id and sends it via Offchain-worker to a Chainlink-based oracle for verification. In this case Substrate-based chain doesn't manage account-specific data, rather a foreign blockchain is responsible for doing that. (There is a non-PoS block production mechanism involved here, there is nothing at stake, the economy is managed on a foreign chain, so no fees can be charged on Substrate and no accounts are stored on-chain so verifying tx signature wouldn't add information). Commented Aug 9, 2023 at 13:16
  • Than I think you don't need a blockchain for that what you need is a system that is doing transactions and than verify it on Chainlink. Commented Aug 10, 2023 at 4:52

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.