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

chore: use decred secp256k1 directly #4294

Merged
merged 7 commits into from
Oct 24, 2024

Conversation

gartnera
Copy link
Contributor

@gartnera gartnera commented Oct 14, 2024

Use github.com/decred/dcrd/dcrec/secp256k1/v4 directly rather than github.com/btcsuite/btcd/btcec/v2 which is just a wrapper around the underlying decred library. Inspired by cosmos/cosmos-sdk#15018

github.com/btcsuite/btcd/btcec/v2 has a very annoying breaking change when upgrading from v2.3.3 to v2.3.4. The easiest way to workaround this is to just remove the wrapper.

Would be very nice if you could backport this to v0.37.x and v0.38.x.

References:


PR checklist

  • Tests written/updated
  • Changelog entry added in .changelog (we use unclog to manage our changelog)
  • Updated relevant documentation (docs/ or spec/) and code comments

Copy link
Contributor

@melekes melekes left a comment

Choose a reason for hiding this comment

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

Thanks @gartnera ❤️

@melekes melekes added crypto Cryptography-related backport-to-v0.37.x Tell Mergify to backport the PR to v0.37.x backport-to-v0.38.x Tell Mergify to backport the PR to v0.38.x backport-to-v1.x Tell Mergify to backport the PR to v1.x labels Oct 15, 2024
@melekes
Copy link
Contributor

melekes commented Oct 15, 2024

@gartnera do you mind adding a changelog entry (.changelog/unreleased/improvements/4294-remove-secp256k1-wrapper.md)?

karalabe pushed a commit to ethereum/go-ethereum that referenced this pull request Oct 15, 2024
Use `github.com/decred/dcrd/dcrec/secp256k1/v4` directly rather than
`github.com/btcsuite/btcd/btcec/v2` which is just a wrapper around the
underlying decred library. Inspired by
cosmos/cosmos-sdk#15018

`github.com/btcsuite/btcd/btcec/v2` has a very annoying breaking change
when upgrading from `v2.3.3` to `v2.3.4`. The easiest way to workaround
this is to just remove the wrapper.

Would be very nice if you could backport this to the release branches.

References:
- btcsuite/btcd#2221
- cometbft/cometbft#4294
- cometbft/cometbft#3728
- zeta-chain/node#2934
@gartnera gartnera requested a review from melekes October 15, 2024 16:18
@gartnera gartnera force-pushed the use-decred-secp-directly branch from a910a5b to 2b7736e Compare October 15, 2024 16:30
Copy link
Contributor

@melekes melekes left a comment

Choose a reason for hiding this comment

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

👍

@gartnera gartnera requested a review from melekes October 23, 2024 18:16
@melekes
Copy link
Contributor

melekes commented Oct 24, 2024

amazing ❤️ thanks @gartnera

@melekes melekes added this pull request to the merge queue Oct 24, 2024
Merged via the queue into cometbft:main with commit 9b8eafa Oct 24, 2024
34 checks passed
mergify bot pushed a commit that referenced this pull request Oct 24, 2024
Use `github.com/decred/dcrd/dcrec/secp256k1/v4` directly rather than
`github.com/btcsuite/btcd/btcec/v2` which is just a wrapper around the
underlying decred library. Inspired by
cosmos/cosmos-sdk#15018

`github.com/btcsuite/btcd/btcec/v2` has a very annoying breaking change
when upgrading from `v2.3.3` to `v2.3.4`. The easiest way to workaround
this is to just remove the wrapper.

Would be very nice if you could backport this to v0.37.x and v0.38.x.

References:
- btcsuite/btcd#2221
- #3728
- zeta-chain/node#2934

---

#### PR checklist

- [ ] Tests written/updated
- [x] Changelog entry added in `.changelog` (we use
[unclog](https://github.com/informalsystems/unclog) to manage our
changelog)
- [ ] Updated relevant documentation (`docs/` or `spec/`) and code
comments

---------

Co-authored-by: Andy Nogueira <me@andynogueira.dev>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
(cherry picked from commit 9b8eafa)

# Conflicts:
#	crypto/secp256k1/secp256k1.go
#	go.mod
mergify bot pushed a commit that referenced this pull request Oct 24, 2024
Use `github.com/decred/dcrd/dcrec/secp256k1/v4` directly rather than
`github.com/btcsuite/btcd/btcec/v2` which is just a wrapper around the
underlying decred library. Inspired by
cosmos/cosmos-sdk#15018

`github.com/btcsuite/btcd/btcec/v2` has a very annoying breaking change
when upgrading from `v2.3.3` to `v2.3.4`. The easiest way to workaround
this is to just remove the wrapper.

Would be very nice if you could backport this to v0.37.x and v0.38.x.

References:
- btcsuite/btcd#2221
- #3728
- zeta-chain/node#2934

---

#### PR checklist

- [ ] Tests written/updated
- [x] Changelog entry added in `.changelog` (we use
[unclog](https://github.com/informalsystems/unclog) to manage our
changelog)
- [ ] Updated relevant documentation (`docs/` or `spec/`) and code
comments

---------

Co-authored-by: Andy Nogueira <me@andynogueira.dev>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
(cherry picked from commit 9b8eafa)

# Conflicts:
#	.golangci.yml
#	crypto/secp256k1/secp256k1.go
#	crypto/secp256k1/secp256k1_internal_test.go
#	crypto/secp256k1/secp256k1_test.go
#	go.mod
mergify bot pushed a commit that referenced this pull request Oct 24, 2024
Use `github.com/decred/dcrd/dcrec/secp256k1/v4` directly rather than
`github.com/btcsuite/btcd/btcec/v2` which is just a wrapper around the
underlying decred library. Inspired by
cosmos/cosmos-sdk#15018

`github.com/btcsuite/btcd/btcec/v2` has a very annoying breaking change
when upgrading from `v2.3.3` to `v2.3.4`. The easiest way to workaround
this is to just remove the wrapper.

Would be very nice if you could backport this to v0.37.x and v0.38.x.

References:
- btcsuite/btcd#2221
- #3728
- zeta-chain/node#2934

---

#### PR checklist

- [ ] Tests written/updated
- [x] Changelog entry added in `.changelog` (we use
[unclog](https://github.com/informalsystems/unclog) to manage our
changelog)
- [ ] Updated relevant documentation (`docs/` or `spec/`) and code
comments

---------

Co-authored-by: Andy Nogueira <me@andynogueira.dev>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
(cherry picked from commit 9b8eafa)

# Conflicts:
#	.changelog/v0.37.3/features/4294-remove-secp256k1-wrapper.md
#	.golangci.yml
#	crypto/secp256k1/secp256k1.go
#	crypto/secp256k1/secp256k1_internal_test.go
#	crypto/secp256k1/secp256k1_test.go
#	go.mod
#	go.sum
mergify bot added a commit that referenced this pull request Oct 24, 2024
Use `github.com/decred/dcrd/dcrec/secp256k1/v4` directly rather than
`github.com/btcsuite/btcd/btcec/v2` which is just a wrapper around the
underlying decred library. Inspired by
cosmos/cosmos-sdk#15018

`github.com/btcsuite/btcd/btcec/v2` has a very annoying breaking change
when upgrading from `v2.3.3` to `v2.3.4`. The easiest way to workaround
this is to just remove the wrapper.

Would be very nice if you could backport this to v0.37.x and v0.38.x.

References:
- btcsuite/btcd#2221
- #3728
- zeta-chain/node#2934

---

#### PR checklist

- [ ] Tests written/updated
- [x] Changelog entry added in `.changelog` (we use
[unclog](https://github.com/informalsystems/unclog) to manage our
changelog)
- [ ] Updated relevant documentation (`docs/` or `spec/`) and code
comments
<hr>This is an automatic backport of pull request #4294 done by
[Mergify](https://mergify.com).

---------

Co-authored-by: Alex Gartner <github@agartner.com>
Co-authored-by: Anton Kaliaev <anton.kalyaev@gmail.com>
mergify bot added a commit that referenced this pull request Oct 24, 2024
Use `github.com/decred/dcrd/dcrec/secp256k1/v4` directly rather than
`github.com/btcsuite/btcd/btcec/v2` which is just a wrapper around the
underlying decred library. Inspired by
cosmos/cosmos-sdk#15018

`github.com/btcsuite/btcd/btcec/v2` has a very annoying breaking change
when upgrading from `v2.3.3` to `v2.3.4`. The easiest way to workaround
this is to just remove the wrapper.

Would be very nice if you could backport this to v0.37.x and v0.38.x.

References:
- btcsuite/btcd#2221
- #3728
- zeta-chain/node#2934

---

#### PR checklist

- [ ] Tests written/updated
- [x] Changelog entry added in `.changelog` (we use
[unclog](https://github.com/informalsystems/unclog) to manage our
changelog)
- [ ] Updated relevant documentation (`docs/` or `spec/`) and code
comments
<hr>This is an automatic backport of pull request #4294 done by
[Mergify](https://mergify.com).

---------

Co-authored-by: Alex Gartner <github@agartner.com>
Co-authored-by: Anton Kaliaev <anton.kalyaev@gmail.com>
mergify bot added a commit that referenced this pull request Oct 24, 2024
Use `github.com/decred/dcrd/dcrec/secp256k1/v4` directly rather than
`github.com/btcsuite/btcd/btcec/v2` which is just a wrapper around the
underlying decred library. Inspired by
cosmos/cosmos-sdk#15018

`github.com/btcsuite/btcd/btcec/v2` has a very annoying breaking change
when upgrading from `v2.3.3` to `v2.3.4`. The easiest way to workaround
this is to just remove the wrapper.

Would be very nice if you could backport this to v0.37.x and v0.38.x.

References:
- btcsuite/btcd#2221
- #3728
- zeta-chain/node#2934

---

#### PR checklist

- [ ] Tests written/updated
- [x] Changelog entry added in `.changelog` (we use
[unclog](https://github.com/informalsystems/unclog) to manage our
changelog)
- [ ] Updated relevant documentation (`docs/` or `spec/`) and code
comments
<hr>This is an automatic backport of pull request #4294 done by
[Mergify](https://mergify.com).

---------

Co-authored-by: Alex Gartner <github@agartner.com>
Co-authored-by: Anton Kaliaev <anton.kalyaev@gmail.com>
(cherry picked from commit 048bb7a)

# Conflicts:
#	go.mod
#	go.sum
mergify bot added a commit that referenced this pull request Oct 24, 2024
#4330)

Use `github.com/decred/dcrd/dcrec/secp256k1/v4` directly rather than
`github.com/btcsuite/btcd/btcec/v2` which is just a wrapper around the
underlying decred library. Inspired by
cosmos/cosmos-sdk#15018

`github.com/btcsuite/btcd/btcec/v2` has a very annoying breaking change
when upgrading from `v2.3.3` to `v2.3.4`. The easiest way to workaround
this is to just remove the wrapper.

Would be very nice if you could backport this to v0.37.x and v0.38.x.

References:
- btcsuite/btcd#2221
- #3728
- zeta-chain/node#2934

---

#### PR checklist

- [ ] Tests written/updated
- [x] Changelog entry added in `.changelog` (we use
[unclog](https://github.com/informalsystems/unclog) to manage our
changelog)
- [ ] Updated relevant documentation (`docs/` or `spec/`) and code
comments
<hr>This is an automatic backport of pull request #4294 done by
[Mergify](https://mergify.com).<hr>This is an automatic backport of pull
request #4328 done by [Mergify](https://mergify.com).

---------

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
Co-authored-by: Anton Kaliaev <anton.kalyaev@gmail.com>
mergify bot added a commit that referenced this pull request Oct 24, 2024
Use `github.com/decred/dcrd/dcrec/secp256k1/v4` directly rather than
`github.com/btcsuite/btcd/btcec/v2` which is just a wrapper around the
underlying decred library. Inspired by
cosmos/cosmos-sdk#15018

`github.com/btcsuite/btcd/btcec/v2` has a very annoying breaking change
when upgrading from `v2.3.3` to `v2.3.4`. The easiest way to workaround
this is to just remove the wrapper.

Would be very nice if you could backport this to v0.37.x and v0.38.x.

References:
- btcsuite/btcd#2221
- #3728
- zeta-chain/node#2934

---

#### PR checklist

- [ ] Tests written/updated
- [x] Changelog entry added in `.changelog` (we use
[unclog](https://github.com/informalsystems/unclog) to manage our
changelog)
- [ ] Updated relevant documentation (`docs/` or `spec/`) and code
comments
<hr>This is an automatic backport of pull request #4294 done by
[Mergify](https://mergify.com).

---------

Co-authored-by: Alex Gartner <github@agartner.com>
Co-authored-by: Anton Kaliaev <anton.kalyaev@gmail.com>
holiman pushed a commit to ethereum/go-ethereum that referenced this pull request Nov 19, 2024
Use `github.com/decred/dcrd/dcrec/secp256k1/v4` directly rather than
`github.com/btcsuite/btcd/btcec/v2` which is just a wrapper around the
underlying decred library. Inspired by
cosmos/cosmos-sdk#15018

`github.com/btcsuite/btcd/btcec/v2` has a very annoying breaking change
when upgrading from `v2.3.3` to `v2.3.4`. The easiest way to workaround
this is to just remove the wrapper.

Would be very nice if you could backport this to the release branches.

References:
- btcsuite/btcd#2221
- cometbft/cometbft#4294
- cometbft/cometbft#3728
- zeta-chain/node#2934
zfy0701 pushed a commit to sentioxyz/go-ethereum that referenced this pull request Dec 3, 2024
Use `github.com/decred/dcrd/dcrec/secp256k1/v4` directly rather than
`github.com/btcsuite/btcd/btcec/v2` which is just a wrapper around the
underlying decred library. Inspired by
cosmos/cosmos-sdk#15018

`github.com/btcsuite/btcd/btcec/v2` has a very annoying breaking change
when upgrading from `v2.3.3` to `v2.3.4`. The easiest way to workaround
this is to just remove the wrapper.

Would be very nice if you could backport this to the release branches.

References:
- btcsuite/btcd#2221
- cometbft/cometbft#4294
- cometbft/cometbft#3728
- zeta-chain/node#2934
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backport-to-v0.37.x Tell Mergify to backport the PR to v0.37.x backport-to-v0.38.x Tell Mergify to backport the PR to v0.38.x backport-to-v1.x Tell Mergify to backport the PR to v1.x crypto Cryptography-related
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants