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

multi: Build and doco updates for Go 1.19. #2981

Merged
merged 5 commits into from
Aug 7, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions .github/workflows/go.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,16 +9,16 @@ jobs:
runs-on: ubuntu-latest
strategy:
matrix:
go: [1.17, 1.18]
go: [1.18, 1.19]
steps:
- name: Set up Go
uses: actions/setup-go@f6164bd8c8acb4a71fb2791a8b6c4024ff038dab #v3.0.0
uses: actions/setup-go@84cbf8094393cdc5fe1fe1671ff2647332956b1a #v3.2.1
with:
go-version: ${{ matrix.go }}
- name: Check out source
uses: actions/checkout@a12a3943b4bdde767164f792f33f40b04645d846 #v3.0.0
uses: actions/checkout@2541b1294d2704b0964813337f33b291d3f8596b #v3.0.2
- name: Install Linters
run: "curl -sSfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh | sh -s -- -b $(go env GOPATH)/bin v1.45.2"
run: "curl -sSfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh | sh -s -- -b $(go env GOPATH)/bin v1.48.0"
- name: Build
run: go build ./...
- name: Test
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -127,7 +127,7 @@ https://decred.org/downloads/

<details><summary><b>Install Dependencies</b></summary>

- **Go 1.17 or 1.18**
- **Go 1.18 or 1.19**

Installation instructions can be found here: https://golang.org/doc/install.
Ensure Go was installed properly and is a supported version:
Expand Down
34 changes: 17 additions & 17 deletions dcrec/secp256k1/schnorr/doc.go
Original file line number Diff line number Diff line change
Expand Up @@ -27,23 +27,23 @@ time of this writing.

Some of the advantages over ECDSA include:

* They are linear which makes them easier to aggregate and use in protocols that
build on them such as multi-party signatures, threshold signatures, adaptor
signatures, and blind signatures
* They are provably secure with weaker assumptions than the best known security
proofs for ECDSA
* Specifically Schnorr signatures are provably secure under SUF-CMA (Strong
Existential Unforgeability under Chosen Message Attack) in the ROM (Random
Oracle Model) which guarantees that as long as the hash function behaves
ideally, the only way to break Schnorr signatures is by solving the ECDLP
(Elliptic Curve Discrete Logarithm Problem).
* Their relatively straightforward and efficient aggregation properties make
them excellent for scalability and allow them to provide some nice privacy
characteristics
* They support faster batch verification unlike the standardized version of
ECDSA signatures

Custom Schnorr-based Signature Scheme
- They are linear which makes them easier to aggregate and use in protocols that
build on them such as multi-party signatures, threshold signatures, adaptor
signatures, and blind signatures
- They are provably secure with weaker assumptions than the best known security
proofs for ECDSA
- Specifically Schnorr signatures are provably secure under SUF-CMA (Strong
Existential Unforgeability under Chosen Message Attack) in the ROM (Random
Oracle Model) which guarantees that as long as the hash function behaves
ideally, the only way to break Schnorr signatures is by solving the ECDLP
(Elliptic Curve Discrete Logarithm Problem).
- Their relatively straightforward and efficient aggregation properties make
them excellent for scalability and allow them to provide some nice privacy
characteristics
- They support faster batch verification unlike the standardized version of
ECDSA signatures

# Custom Schnorr-based Signature Scheme

As mentioned in the overview, the primary downside of Schnorr signatures for
elliptic curves is that they are not standardized as well as ECDSA signatures
Expand Down