Skip to content
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

fix(crypto): error if incorrect ledger public key #19691

Merged
merged 6 commits into from
Mar 13, 2024

Conversation

rootulp
Copy link
Contributor

@rootulp rootulp commented Mar 7, 2024

Closes #19690

Summary by CodeRabbit

  • Bug Fixes
    • Enhanced security by ensuring the public key used for signing transactions matches the public key on the ledger device. Now throws an error if there's a mismatch.
  • Refactor
    • Improved organization and efficiency by moving functions and interfaces to more appropriate packages within the types module and removing deprecated functions.
  • Chores
    • Implemented various updates and fixes across different modules to enhance configuration, server context, and calculation methods.

Copy link
Contributor

coderabbitai bot commented Mar 7, 2024

Walkthrough

Walkthrough

The update enhances the SignWithLedger function in keyring.go by adding a validation check to ensure the public key used for signing transactions aligns with the public key stored on the Ledger device. This improvement directly tackles the issue where transactions could be signed with an incorrect Ledger without alerting the user, thereby bolstering security and user experience by preventing mismatches and potential errors in the multi-signature process.

Changes

File Path Change Summary
crypto/keyring/keyring.go Added a validation check to ensure the public key used for signing matches the public key on the Ledger device.
types/types.go Moved functions and interfaces to different packages and removed deprecated functions.
config/config.go
server/context.go
calculation/methods.go
Various updates and fixes related to configuration, server context, and calculation methods.

Assessment against linked issues

Objective Addressed Explanation
Bug Identification and Expected Behavior (#19690)
Detailed Reproduction Steps (#19690) The PR focuses on code changes rather than including reproduction steps.

Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media?

Share

Tips

Chat

There are 3 ways to chat with CodeRabbit:

  • Review comments: Directly reply to a review comment made by CodeRabbit. Example:
    • I pushed a fix in commit <commit_id>.
    • Generate unit-tests for this file.
    • Open a follow-up GitHub issue for this discussion.
  • Files and specific lines of code (under the "Files changed" tab): Tag @coderabbitai in a new review comment at the desired location with your query. Examples:
    • @coderabbitai generate unit tests for this file.
    • @coderabbitai modularize this function.
  • PR comments: Tag @coderabbitai in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
    • @coderabbitai generate interesting stats about this repository and render them as a table.
    • @coderabbitai show all the console.log statements in this repository.
    • @coderabbitai read src/utils.ts and generate unit tests.
    • @coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.

Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments.

CodeRabbit Commands (invoked as PR comments)

  • @coderabbitai pause to pause the reviews on a PR.
  • @coderabbitai resume to resume the paused reviews.
  • @coderabbitai review to trigger a review. This is useful when automatic reviews are disabled for the repository.
  • @coderabbitai resolve resolve all the CodeRabbit review comments.
  • @coderabbitai help to get help.

Additionally, you can add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.

CodeRabbit Configration File (.coderabbit.yaml)

  • You can programmatically configure CodeRabbit by adding a .coderabbit.yaml file to the root of your repository.
  • The JSON schema for the configuration file is available here.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/coderabbit-overrides.v2.json

CodeRabbit Discord Community

Join our Discord Community to get help, request features, and share feedback.

@rootulp rootulp marked this pull request as ready for review March 8, 2024 14:31
@rootulp rootulp requested a review from a team as a code owner March 8, 2024 14:31
Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review Status

Actionable comments generated: 1

Configuration used: .coderabbit.yml

Commits Files that changed from the base of the PR and between a1e3a85 and b607615.
Files selected for processing (1)
  • crypto/keyring/keyring.go (1 hunks)

Comment on lines 637 to 644
ledgerPubKey := priv.PubKey()
pubKey, err := k.GetPubKey()
if err != nil {
return nil, nil, err
}
if !pubKey.Equals(ledgerPubKey) {
return nil, nil, fmt.Errorf("the public key that the user attempted to sign with %v does not match the public key on the ledger device %v", pubKey.String(), ledgerPubKey.String())
}
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The added check in the SignWithLedger function correctly addresses the issue of mismatched public keys during the signing process with a Ledger device. This change enhances security and user experience by providing immediate feedback on the mismatch. However, consider the following improvements for clarity and maintainability:

  • Extract the public key comparison logic into a separate, well-named function to improve readability and testability.
  • Use sdkerrors.Wrapf for error handling to maintain consistency with the rest of the Cosmos SDK error handling practices.
  • Include more detailed error messages that guide users on how to resolve the mismatch issue.
- return nil, nil, fmt.Errorf("the public key that the user attempted to sign with %v does not match the public key on the ledger device %v", pubKey.String(), ledgerPubKey.String())
+ return nil, nil, sdkerrors.Wrapf(sdkerrors.ErrInvalidPubKey, "Public key mismatch: attempted to sign with %s, but Ledger device contains %s. Please ensure the correct Ledger device is used or the --from flag is set correctly.", pubKey.String(), ledgerPubKey.String())

Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation.

Suggested change
ledgerPubKey := priv.PubKey()
pubKey, err := k.GetPubKey()
if err != nil {
return nil, nil, err
}
if !pubKey.Equals(ledgerPubKey) {
return nil, nil, fmt.Errorf("the public key that the user attempted to sign with %v does not match the public key on the ledger device %v", pubKey.String(), ledgerPubKey.String())
}
ledgerPubKey := priv.PubKey()
pubKey, err := k.GetPubKey()
if err != nil {
return nil, nil, err
}
if !pubKey.Equals(ledgerPubKey) {
return nil, nil, sdkerrors.Wrapf(sdkerrors.ErrInvalidPubKey, "Public key mismatch: attempted to sign with %s, but Ledger device contains %s. Please ensure the correct Ledger device is used or the --from flag is set correctly.", pubKey.String(), ledgerPubKey.String())
}

@sontrinh16
Copy link
Member

side question, in #14460, why aren't we verifying the signature against the pubkey getting from Record

@julienrbrt julienrbrt changed the title fix: error if incorrect ledger public key fix(crypto): error if incorrect ledger public key Mar 9, 2024
Copy link
Member

@julienrbrt julienrbrt left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we get a changelog?

@rootulp
Copy link
Contributor Author

rootulp commented Mar 10, 2024

side question, in #14460, why aren't we verifying the signature against the pubkey getting from Record

Great question! I have no idea why that doesn't use the pubkey from Record. I think it should. I haven't manually tested Zaki's PR but after re-reading it I expect it wouldn't catch the scenario where a user attempts to sign with a pub key that doesn't belong to the plugged in Ledger.

Note for reviewers: I have manually tested this PR and confirmed it catches the scenario where a user attempts to sign with a pub key that doesn't belong to the plugged in Ledger. IMO we shouldn't merge this until we have a unit test.

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review Status

Actionable comments generated: 0

Configuration used: .coderabbit.yml

Commits Files that changed from the base of the PR and between b607615 and c7ccfba.
Files selected for processing (2)
  • crypto/keyring/keyring.go (1 hunks)
  • crypto/keyring/keyring_ledger_test.go (2 hunks)
Files skipped from review as they are similar to previous changes (1)
  • crypto/keyring/keyring.go
Additional comments: 2
crypto/keyring/keyring_ledger_test.go (2)
  • 11-17: The addition of imports for testify/assert, cosmos-sdk/crypto/keys/secp256k1, cosmos-sdk/crypto/ledger, and cosmos-sdk/crypto/types is appropriate for the new test function TestSignWithLedger. These imports are necessary for assertions, handling cryptographic keys, and interacting with Ledger devices within the test.
  • 142-202: The TestSignWithLedger function introduces comprehensive test cases to validate the signing process with Ledger devices. It correctly sets up two distinct Ledger records (recordA and recordB) to simulate different scenarios, including a successful signing operation and an error case where the public key does not match the Ledger device's public key.

Suggestions for Improvement:

  1. Error Message Verification: While the test case for expecting an error when the public key does not match is well-implemented, it's crucial to ensure that the error message is precise and user-friendly. The current error message, "the public key that the user attempted to sign with does not match the public key on the ledger device," is clear, but always consider if there's room for making it more informative or actionable for the user.

  2. Test Coverage: Ensure that all possible error paths and edge cases are covered by the tests. This includes scenarios where the Ledger device might be unavailable, the signing process is interrupted, or other exceptional conditions that could arise during interaction with Ledger devices.

  3. Mocking Ledger Devices: The tests appear to rely on the actual implementation of ledger.NewPrivKeySecp256k1 and NewLedgerRecord. For unit tests, consider mocking these dependencies to isolate the test environment from external factors and make the tests more deterministic. This approach also allows for testing error conditions more thoroughly.

  4. Code Documentation: Adding comments to the test cases and critical sections of the test code can enhance readability and maintainability. While the test function names and structure are clear, brief comments explaining the purpose of each test case and the significance of the setup steps can be beneficial for future maintainers or contributors.

Overall, the test implementation is solid and addresses the key functionality introduced in the PR. These suggestions aim to refine the tests further and ensure they are as robust and maintainable as possible.

@rootulp
Copy link
Contributor Author

rootulp commented Mar 11, 2024

I just tried to manually verify #14460 but it didn't throw an error after signing a transaction with the incorrect Ledger so IMO it doesn't work as expected.

@rootulp
Copy link
Contributor Author

rootulp commented Mar 11, 2024

I'm going to ignore this CI failure b/c it seems unrelated to this PR.

@sontrinh16
Copy link
Member

sontrinh16 commented Mar 11, 2024

I just tried to manually verify #14460 but it didn't throw an error after signing a transaction with the incorrect Ledger so I think it doesn't work as expected.

yeah i think we would use this and remove the old check and back port to older releases ? wdyt @julienrbrt

@julienrbrt julienrbrt added backport/v0.47.x PR scheduled for inclusion in the v0.47's next stable release backport/v0.50.x PR scheduled for inclusion in the v0.50's next stable release labels Mar 11, 2024
Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review Status

Actionable comments generated: 0

Configuration used: .coderabbit.yml

Commits Files that changed from the base of the PR and between c7ccfba and 9592b02.
Files selected for processing (1)
  • crypto/keyring/keyring_ledger_test.go (2 hunks)
Files skipped from review as they are similar to previous changes (1)
  • crypto/keyring/keyring_ledger_test.go

@rootulp rootulp requested a review from julienrbrt March 11, 2024 20:12
Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review Status

Actionable comments generated: 1

Configuration used: .coderabbit.yml

Commits Files that changed from the base of the PR and between 9592b02 and 23e2364.
Files selected for processing (1)
  • CHANGELOG.md (2 hunks)
Additional comments: 1
CHANGELOG.md (1)
  • 147-147: The changes listed under the types module are significant and could impact developers relying on the previous structure. Ensure that the release notes or documentation clearly communicate these changes as potentially breaking.

@@ -96,6 +96,7 @@ Every module contains its own CHANGELOG.md. Please refer to the module you are i
* (simulation) [#18196](https://github.com/cosmos/cosmos-sdk/pull/18196) Fix the problem of `validator set is empty after InitGenesis` in simulation test.
* (baseapp) [#18551](https://github.com/cosmos/cosmos-sdk/pull/18551) Fix SelectTxForProposal the calculation method of tx bytes size is inconsistent with CometBFT
* (server) [#18994](https://github.com/cosmos/cosmos-sdk/pull/18994) Update server context directly rather than a reference to a sub-object
* (crypto) [#19691](https://github.com/cosmos/cosmos-sdk/pull/19691) Fix tx sign doesn't throw an error when incorrect Ledger is used.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The entry for PR #19691 could be more descriptive to highlight the key improvement. Consider rephrasing to:
"Fix in the crypto module to throw an error for key mismatches when an incorrect Ledger device is used for signing transactions, enhancing security and user experience."

@tac0turtle tac0turtle added this pull request to the merge queue Mar 13, 2024
Merged via the queue into cosmos:main with commit 5424b55 Mar 13, 2024
57 of 59 checks passed
mergify bot pushed a commit that referenced this pull request Mar 13, 2024
Co-authored-by: Marko <marbar3778@yahoo.com>
(cherry picked from commit 5424b55)

# Conflicts:
#	CHANGELOG.md
#	crypto/keyring/keyring_ledger_test.go
mergify bot pushed a commit that referenced this pull request Mar 13, 2024
Co-authored-by: Marko <marbar3778@yahoo.com>
(cherry picked from commit 5424b55)

# Conflicts:
#	CHANGELOG.md
sontrinh16 added a commit that referenced this pull request Mar 13, 2024
…19745)

Co-authored-by: Rootul P <rootulp@gmail.com>
Co-authored-by: sontrinh16 <trinhleson2000@gmail.com>
sontrinh16 added a commit that referenced this pull request Mar 13, 2024
…19746)

Co-authored-by: Rootul P <rootulp@gmail.com>
Co-authored-by: sontrinh16 <trinhleson2000@gmail.com>
@rootulp rootulp deleted the rp/19690 branch March 13, 2024 20:10
@faddat faddat mentioned this pull request Mar 20, 2024
12 tasks
yihuang added a commit to crypto-org-chain/cosmos-sdk that referenced this pull request May 16, 2024
* fix(server): consensus failure while restart node with wrong `chainId` in genesis (cosmos#18920)

* test: add NodeURI for clientCtx (backport cosmos#18930) (cosmos#18988)

Co-authored-by: mmsqe <tqd0800210105@gmail.com>
Co-authored-by: Julien Robert <julien@rbrt.fr>

* chore: clean-up buf workspace (backport cosmos#18993) (cosmos#18998)

* build(deps): Bump cosmossdk.io/log from 1.2.1 to 1.3.0 (cosmos#19024)

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>

* build(deps): Bump cosmossdk.io/errors from 1.0.0 to 1.0.1 (cosmos#19025)

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>

* fix: allow empty public keys when setting signatures (backport cosmos#19106) (cosmos#19108)

Co-authored-by: Callum Waters <cmwaters19@gmail.com>
Co-authored-by: Julien Robert <julien@rbrt.fr>

* chore: prepare v0.47.8 (cosmos#19162)

* docs: fix typo in 06-grpc_rest.md (backport cosmos#19192) (cosmos#19194)

Co-authored-by: Yoksirod <103229163+taramakage@users.noreply.github.com>
Co-authored-by: Julien Robert <julien@rbrt.fr>

* fix: skip same-sender non-sequential sequence and then add others txs new solution (backport cosmos#19177) (cosmos#19250)

Co-authored-by: Brann Bronzebeard <90186866+ZiHengLee@users.noreply.github.com>
Co-authored-by: Facundo <facundomedica@gmail.com>
Co-authored-by: Facundo Medica <14063057+facundomedica@users.noreply.github.com>
Co-authored-by: Aleksandr Bezobchuk <alexanderbez@users.noreply.github.com>

* test(baseapp): Refactor tx selector tests + better comments  (backport cosmos#19284) (cosmos#19288)

Co-authored-by: Facundo Medica <14063057+facundomedica@users.noreply.github.com>
Co-authored-by: Facundo <facundomedica@gmail.com>

* build(deps): Bump cosmossdk.io/log from 1.3.0 to 1.3.1 (cosmos#19359)

* chore: prepare v0.47.9 (cosmos#19451)

* build(deps): Bump github.com/cosmos/cosmos-proto from 1.0.0-beta.2 to 1.0.0-beta.4 (cosmos#19472)

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Julien Robert <julien@rbrt.fr>

* Merge pull request from GHSA-4j93-fm92-rp4m

* fix(x/auth/vesting): Add `BlockedAddr` check in `CreatePeriodicVestingAccount`

* updates

* build(deps): Bump cosmossdk.io/math from 1.2.0 to 1.3.0 (cosmos#19564)

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Julien Robert <julien@rbrt.fr>

* fix: use proper `db_backend` type when reading chain-id (cosmos#19573)

* Merge pull request from GHSA-86h5-xcpx-cfqc

* fix slashing logic

* add test

* changelog + release notes

* word

---------

Co-authored-by: Julien Robert <julien@rbrt.fr>

* build(deps): Bump deps (backport cosmos#19655) (cosmos#19712)

Co-authored-by: Julien Robert <julien@rbrt.fr>

* fix(x/gov): grpc query tally for failed proposal (backport cosmos#19725) (cosmos#19728)

Co-authored-by: David Tumcharoen <david@alleslabs.com>
Co-authored-by: Julien Robert <julien@rbrt.fr>

* fix(crypto): error if incorrect ledger public key (backport cosmos#19691) (cosmos#19746)

Co-authored-by: Rootul P <rootulp@gmail.com>
Co-authored-by: sontrinh16 <trinhleson2000@gmail.com>

* build(deps): Bump github.com/cometbft/cometbft from 0.37.4 to 0.37.5 (cosmos#19752)

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Julien Robert <julien@rbrt.fr>

* fix: Implement gogoproto customtype to secp256r1 keys (backport cosmos#20027) (cosmos#20032)

Co-authored-by: Facundo Medica <14063057+facundomedica@users.noreply.github.com>
Co-authored-by: marbar3778 <marbar3778@yahoo.com>
Co-authored-by: Marko <marko@baricevic.me>

* fix: secp256r1 json missing quotes (backport cosmos#20060) (cosmos#20070)

Co-authored-by: Facundo Medica <14063057+facundomedica@users.noreply.github.com>

* build(deps): Bump github.com/cosmos/cosmos-proto from 1.0.0-beta.4 to 1.0.0-beta.5 (cosmos#20094)

* chore: prepare v0.47.11 (cosmos#20088)

* fix: use timestamp for sim log file name (backport cosmos#20108) (cosmos#20112)

Co-authored-by: mmsqe <mavis@crypto.com>

* fix(x/authz,x/feegrant): check blocked address (backport cosmos#20102) (cosmos#20114)

Co-authored-by: Julien Robert <julien@rbrt.fr>

* fix(testsuite/sims): set all signatures (backport cosmos#20151) (cosmos#20186)

Co-authored-by: Leon <156270887+leonz789@users.noreply.github.com>

* build(deps): Bump github.com/cometbft/cometbft from 0.37.5 to 0.37.6 (cosmos#20205)

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>

* go mod tidy

* chore: downgrade to go 1.19 (cosmos#20211)

* chore: tidy with go 1.19 (cosmos#20220)

* chore: revert comet 0.37.6 upgrade due to go version bump (cosmos#20247)

* fix: remove txs from mempool when antehandler fails in recheck (backport cosmos#20144) (cosmos#20252)

Co-authored-by: Marko <marko@baricevic.me>
Co-authored-by: marbar3778 <marbar3778@yahoo.com>

* Revert "chore: downgrade to go 1.19 (cosmos#20211)"

This reverts commit aba4e40.

* Revert "chore: revert comet 0.37.6 upgrade due to go version bump (cosmos#20247)"

This reverts commit 00e4273.

* bump go in ci

* update docker file

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: atheeshp <59333759+atheeshp@users.noreply.github.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
Co-authored-by: mmsqe <tqd0800210105@gmail.com>
Co-authored-by: Julien Robert <julien@rbrt.fr>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Callum Waters <cmwaters19@gmail.com>
Co-authored-by: Yoksirod <103229163+taramakage@users.noreply.github.com>
Co-authored-by: Brann Bronzebeard <90186866+ZiHengLee@users.noreply.github.com>
Co-authored-by: Facundo <facundomedica@gmail.com>
Co-authored-by: Facundo Medica <14063057+facundomedica@users.noreply.github.com>
Co-authored-by: Aleksandr Bezobchuk <alexanderbez@users.noreply.github.com>
Co-authored-by: Kevin Yang <5478483+k-yang@users.noreply.github.com>
Co-authored-by: khanh <50263489+catShaark@users.noreply.github.com>
Co-authored-by: David Tumcharoen <david@alleslabs.com>
Co-authored-by: Rootul P <rootulp@gmail.com>
Co-authored-by: sontrinh16 <trinhleson2000@gmail.com>
Co-authored-by: marbar3778 <marbar3778@yahoo.com>
Co-authored-by: Marko <marko@baricevic.me>
Co-authored-by: mmsqe <mavis@crypto.com>
Co-authored-by: Leon <156270887+leonz789@users.noreply.github.com>
GAtom22 pushed a commit to evmos/cosmos-sdk that referenced this pull request May 29, 2024
) (cosmos#19746)

Co-authored-by: Rootul P <rootulp@gmail.com>
Co-authored-by: sontrinh16 <trinhleson2000@gmail.com>
SpicyLemon added a commit to provenance-io/cosmos-sdk that referenced this pull request Jun 10, 2024
* fix(crypto): error if incorrect ledger public key (backport cosmos#19691) (cosmos#19745)

Co-authored-by: Rootul P <rootulp@gmail.com>
Co-authored-by: sontrinh16 <trinhleson2000@gmail.com>

* build(deps): Bump github.com/cometbft/cometbft from 0.38.5 to 0.38.6 (cosmos#19751)

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>

* fix: align signer extraction adapter for mempool remove (backport cosmos#19759) (cosmos#19773)

Co-authored-by: mmsqe <mavis@crypto.com>
Co-authored-by: marbar3778 <marbar3778@yahoo.com>

* fix(x/upgrade): Stop treating inline JSON as a URL (backport cosmos#19706) (cosmos#19767)

Co-authored-by: Richard Gibson <richard.gibson@gmail.com>
Co-authored-by: marbar3778 <marbar3778@yahoo.com>

* fix(client/v2): fix comment parsing (backport cosmos#19377) (cosmos#19777)

Co-authored-by: Julien Robert <julien@rbrt.fr>

* build(deps): Bump github.com/cosmos/iavl from 1.0.1 to 1.1.1 in store (cosmos#19770)

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Cool Developer <cool199966@outlook.com>
Co-authored-by: marbar3778 <marbar3778@yahoo.com>
Co-authored-by: Julien Robert <julien@rbrt.fr>

* chore(store): add release date (cosmos#19797)

* build(deps): Bump github.com/cosmos/gogoproto from 1.4.11 to 1.4.12 (cosmos#19811)

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>

* feat(x/gov): emit proposer address in submit proposal event (backport cosmos#19842) (cosmos#19844)

Co-authored-by: Aryan Tikarya <akaladarshi@gmail.com>
Co-authored-by: marbar3778 <marbar3778@yahoo.com>
Co-authored-by: Julien Robert <julien@rbrt.fr>

* feat(x/gov): emit depositor in `proposal_deposit` event (backport cosmos#19853) (cosmos#19859)

Co-authored-by: Kien <kien@notional.ventures>
Co-authored-by: Julien Robert <julien@rbrt.fr>

* reuse fromAddrString (minor cleanup) (cosmos#19881)

* feat(client): replace `event-query-tx-for` with `wait-tx` (backport cosmos#19870) (cosmos#19887)

* feat(server): add custom start handler (backport cosmos#19854) (cosmos#19884)

Co-authored-by: Julien Robert <julien@rbrt.fr>

* build(deps): Bump cosmossdk.io/store from 1.0.2 to 1.1.0 (cosmos#19810)

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: marbar3778 <marbar3778@yahoo.com>
Co-authored-by: Julien Robert <julien@rbrt.fr>

* docs(x/mint): Fix inconsistency in mint docs  (backport cosmos#19915) (cosmos#19925)

* build(deps): Bump github.com/cosmos/iavl from 1.1.1 to 1.1.2 (cosmos#19985)

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Julien Robert <julien@rbrt.fr>

* fix(client/v2): add encoder for `cosmos.base.v1beta1.DecCoin` (backport cosmos#19976) (cosmos#20001)

Co-authored-by: Julien Robert <julien@rbrt.fr>

* fix(mempool): use no-op mempool as default (backport cosmos#19970) (cosmos#20008)

Co-authored-by: Tom <54514587+GAtom22@users.noreply.github.com>
Co-authored-by: marbar3778 <marbar3778@yahoo.com>
Co-authored-by: Julien Robert <julien@rbrt.fr>

* feat: Conditionally emit metrics based on enablement (backport cosmos#19903) (cosmos#20017)

Co-authored-by: Lucas Francisco López <lucaslopezf@gmail.com>
Co-authored-by: Julien Robert <julien@rbrt.fr>

* fix(x/bank): align query with multi denoms for send-enabled (backport cosmos#20028) (cosmos#20029)

Co-authored-by: mmsqe <mavis@crypto.com>

* fix: Implement gogoproto customtype to secp256r1 keys (backport cosmos#20027) (cosmos#20031)

Co-authored-by: Facundo Medica <14063057+facundomedica@users.noreply.github.com>

* fix(client/v2): respect output format from client ctx (backport cosmos#20033) (cosmos#20046)

Co-authored-by: mmsqe <mavis@crypto.com>

* build(deps): Bump cosmossdk.io/x/tx from 0.13.1 to 0.13.2 (cosmos#20042)

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Julien Robert <julien@rbrt.fr>

* feat(x/bank): support depinject for send restrictions (backport cosmos#20014) (cosmos#20024)

* fix(baseapp): don't share global gas meter in tx execution (backport cosmos#19616) (cosmos#20050)

* fix: secp256r1 json missing quotes (backport cosmos#20060) (cosmos#20069)

Co-authored-by: Facundo Medica <14063057+facundomedica@users.noreply.github.com>

* build(deps): Bump github.com/cosmos/cosmos-proto from 1.0.0-beta.4 to 1.0.0-beta.5 (cosmos#20095)

* feat(client/v2): implement version filtering using annotation (backport cosmos#20083) (cosmos#20099)

Co-authored-by: Julien Robert <julien@rbrt.fr>

* chore: prepare v0.50.6 (cosmos#19998)

* fix: use timestamp for sim log file name (backport cosmos#20108) (cosmos#20111)

Co-authored-by: mmsqe <mavis@crypto.com>

* fix(x/authz,x/feegrant): check blocked address (cosmos#20102)

* chore: update v0.50.6 release notes (cosmos#20124)

* build(deps): bump sdk in modules (cosmos#20126)

* docs(gas/fees): Update block gas documentation (backport cosmos#20128) (cosmos#20131)

Co-authored-by: samricotta <37125168+samricotta@users.noreply.github.com>

* fix(baseapp): avoid header height overwrite block height (backport cosmos#20107) (cosmos#20129)

Co-authored-by: mmsqe <mavis@crypto.com>
Co-authored-by: Julien Robert <julien@rbrt.fr>

* docs: fix broken link (backport cosmos#20133) (cosmos#20138)

* build(deps): bump modules in simapp (cosmos#20137)

* build(deps): Bump cosmossdk.io/x/tx from 0.13.2 to 0.13.3 (cosmos#20152)

* docs: add authz reference info in the circuit antehandler (backport cosmos#20146) (cosmos#20155)

Co-authored-by: Reece Williams <31943163+Reecepbcups@users.noreply.github.com>

* fix(testsuite/sims): set all signatures (backport cosmos#20151) (cosmos#20185)

Co-authored-by: Leon <156270887+leonz789@users.noreply.github.com>

* build(deps): Bump github.com/cometbft/cometbft from 0.38.6 to 0.38.7 (cosmos#20206)

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>

* fix(server): bootstrap-state command can't parse latest genesis format (backport cosmos#20020) (cosmos#20045)

Co-authored-by: yihuang <huang@crypto.com>
Co-authored-by: Julien Robert <julien@rbrt.fr>
Co-authored-by: sontrinh16 <trinhleson2000@gmail.com>
Co-authored-by: marbar3778 <marbar3778@yahoo.com>

* fix: remove txs from mempool when antehandler fails in recheck (backport cosmos#20144) (cosmos#20251)

Co-authored-by: Marko <marko@baricevic.me>

* feat(baseapp): expose grpc query router via depinject. (cosmos#20264)

* feat(client/v2): override short description in generated command (backport cosmos#20266) (cosmos#20269)

Co-authored-by: John Letey <j@letey.de>
Co-authored-by: Julien Robert <julien@rbrt.fr>

* feat(runtime): Add missing NewTransientStoreService (backport cosmos#20261) (cosmos#20327)

Co-authored-by: beer-1 <147697694+beer-1@users.noreply.github.com>

* fix: allow tx decoding to fail in GetBlockWithTxs (backport cosmos#20323) (cosmos#20329)

Co-authored-by: Facundo Medica <14063057+facundomedica@users.noreply.github.com>
Co-authored-by: marbar3778 <marbar3778@yahoo.com>

* fix(client/v2): correctly check subcommand short descriptions (backport cosmos#20330) (cosmos#20340)

* build(deps): Bump cosmossdk.io/api from 0.7.4 to 0.7.5 (cosmos#20338)

* style: Fix gov query proposals examples syntax (backport cosmos#20353) (cosmos#20357)

* feat(client): add consensus address for debug cmd (backport cosmos#20328) (cosmos#20366)

Co-authored-by: mmsqe <mavis@crypto.com>
Co-authored-by: Julien Robert <julien@rbrt.fr>

* feat(client): overwrite client context instead of setting new one (backport cosmos#20356) (cosmos#20383)

Co-authored-by: Shude Li <islishude@gmail.com>
Co-authored-by: Julien Robert <julien@rbrt.fr>

* fix: correctly assign `execModeSimulate` to context for `simulateTx` (backport cosmos#20342) (cosmos#20346)

Co-authored-by: Damian Nolan <damiannolan@gmail.com>
Co-authored-by: Julien Robert <julien@rbrt.fr>
Co-authored-by: marbar3778 <marbar3778@yahoo.com>

* docs: update diagram to be shown properly (backport cosmos#20454) (cosmos#20460)

Co-authored-by: tianyeyouyou <150894831+tianyeyouyou@users.noreply.github.com>
Co-authored-by: marbar3778 <marbar3778@yahoo.com>

* docs: fix note blocks display failure (backport cosmos#20457) (cosmos#20459)

Co-authored-by: cocoyeal <150209682+cocoyeal@users.noreply.github.com>

* docs: update link contents (backport cosmos#20437) (cosmos#20462)

Co-authored-by: PolyMa <151764357+polymaer@users.noreply.github.com>

* fix(x/consensus): harden consensus params proposal (cosmos#20381)

Co-authored-by: Sergio Mena <sergio@informal.systems>
Co-authored-by: sontrinh16 <trinhleson2000@gmail.com>

* docs: add docs on permissions (backport cosmos#20526) (cosmos#20527)

Co-authored-by: Marko <marko@baricevic.me>

* chore(x/upgrade): bump vulnerable `go-getter` library (cosmos#20530)

* chore: prepare v0.50.7 (cosmos#20475)

* Add changelog entry and mark v0.50.7-pio-1 in the changelog.

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
Co-authored-by: Rootul P <rootulp@gmail.com>
Co-authored-by: sontrinh16 <trinhleson2000@gmail.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: mmsqe <mavis@crypto.com>
Co-authored-by: marbar3778 <marbar3778@yahoo.com>
Co-authored-by: Richard Gibson <richard.gibson@gmail.com>
Co-authored-by: Julien Robert <julien@rbrt.fr>
Co-authored-by: Cool Developer <cool199966@outlook.com>
Co-authored-by: Aryan Tikarya <akaladarshi@gmail.com>
Co-authored-by: Kien <kien@notional.ventures>
Co-authored-by: yihuang <huang@crypto.com>
Co-authored-by: Tom <54514587+GAtom22@users.noreply.github.com>
Co-authored-by: Lucas Francisco López <lucaslopezf@gmail.com>
Co-authored-by: Facundo Medica <14063057+facundomedica@users.noreply.github.com>
Co-authored-by: samricotta <37125168+samricotta@users.noreply.github.com>
Co-authored-by: Reece Williams <31943163+Reecepbcups@users.noreply.github.com>
Co-authored-by: Leon <156270887+leonz789@users.noreply.github.com>
Co-authored-by: Marko <marko@baricevic.me>
Co-authored-by: John Letey <j@letey.de>
Co-authored-by: beer-1 <147697694+beer-1@users.noreply.github.com>
Co-authored-by: Shude Li <islishude@gmail.com>
Co-authored-by: Damian Nolan <damiannolan@gmail.com>
Co-authored-by: tianyeyouyou <150894831+tianyeyouyou@users.noreply.github.com>
Co-authored-by: cocoyeal <150209682+cocoyeal@users.noreply.github.com>
Co-authored-by: PolyMa <151764357+polymaer@users.noreply.github.com>
Co-authored-by: Sergio Mena <sergio@informal.systems>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backport/v0.47.x PR scheduled for inclusion in the v0.47's next stable release backport/v0.50.x PR scheduled for inclusion in the v0.50's next stable release
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[Bug]: tx sign doesn't throw an error when incorrect Ledger is used
4 participants