-
Notifications
You must be signed in to change notification settings - Fork 22
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
"hedera_signTransaction" method broke prev signed transactions #94
Comments
I attached an open issue in the |
As far as I know, this is the expected behaviour for Either the dApp needs to keep hold of the original signature maps and merge the signature map from wallet connect before calling the line above, or wallet connect needs to support an alternative (toBytes, fromBytes). I'm aware of prior concerns with Note: this issue only concerns use cases where a transaction that was previously signed by other parties requires an additional signature from wallet connect. Note: in testing the merging of sigMaps idea, the |
|
It's crucial we find a solution, especially because we all approve this implementation. I tag all the people who request to be a reviewer. @rajesuwerps @bugbytesinc @justynspooner @hgraphql @teacoat @valeraOlexienko |
Unfortunately, the nature of the underlying official SDKs tear apart the protobuf regularly and re-constitutes it. Even rebuilding it multiple times depending on the context. The WC implementation needs to be careful and guard the "fist version" of the protobuf serialization as the source of truth. The nature of the design of the underlying hedera sdks indeed makes this difficult. |
Circling back @franfernandez20 is this still a present issue? |
Describe the bug A clear and concise description of what the bug is.
The example demonstrating how to sign and return a transaction is preventing the correct use of a previously signed transaction.
The transaction signers publicKeys and sigMaps are loosed when converting the incoming transaction with
_makeTransactionBody
. If you send a signed transaction to be signed when you receive it has been changed.To Reproduce Steps to reproduce the behaviour:
Here starts the actual flow of
hedera_signTransaction
in the examples:https://github.com/hashgraph/hedera-wallet-connect/blob/1cbfef6e647e6a26f3d298acbfedf19286eab964/src/examples/typescript/dapp/main.ts#L235C7-L235C35
The returned signatureMap cannot recreate the original transaction with the original signatures plus the new one.
This is a summary of the code involved to reproduce the problem:
Expected behavior A clear and concise description of what you expected to happen.
I expected the wallet to keep the previous signs
Desktop (please complete the following information):
The text was updated successfully, but these errors were encountered: