cloudflare / circl

CIRCL: Cloudflare Interoperable Reusable Cryptographic Library
http://blog.cloudflare.com/introducing-circl
Other
1.27k stars 142 forks source link

Add X25519Kyber768Draft00 experimental HPKE KEM #421

Closed chris-wood closed 1 year ago

chris-wood commented 1 year ago

See the draft. Some tasks still left to do:

bwesterb commented 1 year ago

Thanks @chris-wood !

bwesterb commented 1 year ago

For your convenience:

  Running [/home/runner/golangci-lint-1.51.2-linux-amd64/golangci-lint run --out-format=github-actions --config=./.etc/golangci.yml ./...] in [] ...
  Error: File is not `gofmt`-ed with `-s` (gofmt)
  Error: File is not `gofmt`-ed with `-s` (gofmt)
  Error: File is not `gofmt`-ed with `-s` (gofmt)
  Error: File is not `gofumpt`-ed (gofumpt)
  Error: File is not `gofumpt`-ed (gofumpt)
  Error: `(kemBase).labeledExtract` - `salt` always receives `nil` (unparam)
chris-wood commented 1 year ago

For your convenience:

  Running [/home/runner/golangci-lint-1.51.2-linux-amd64/golangci-lint run --out-format=github-actions --config=./.etc/golangci.yml ./...] in [] ...
  Error: File is not `gofmt`-ed with `-s` (gofmt)
  Error: File is not `gofmt`-ed with `-s` (gofmt)
  Error: File is not `gofmt`-ed with `-s` (gofmt)
  Error: File is not `gofumpt`-ed (gofumpt)
  Error: File is not `gofumpt`-ed (gofumpt)
  Error: `(kemBase).labeledExtract` - `salt` always receives `nil` (unparam)

What incantation do I need to invoke to make these changes locally? Can we get that set up in a make target?

bwesterb commented 1 year ago

What incantation do I need to invoke to make these changes locally? Can we get that set up in a make target?

make lint

chris-wood commented 1 year ago

What incantation do I need to invoke to make these changes locally? Can we get that set up in a make target?

make lint

This is sort of unhelpful in that it just runs the linter without actually applying changes. I'll send a PR to update the Makefile so that there's a target for actually doing the formatting.

chris-wood commented 1 year ago

@bwesterb I pushed some preliminary test vector generation code.

chris-wood commented 1 year ago

Marking as ready for review now. I updated when keys are validated (only when we receive them over the wire through deserialization functions). Fail early and fail often!

gitguardian[bot] commented 1 year ago

️✅ There are no secrets present in this pull request anymore.

If these secrets were true positive and are still valid, we highly recommend you to revoke them. Once a secret has been leaked into a git repository, you should consider it compromised, even if it was deleted immediately. Find here more information about risks.


🦉 GitGuardian detects secrets in your source code to help developers and security teams secure the modern development process. You are seeing this because you or someone else with access to this repository has authorized GitGuardian to scan your pull request.

Our GitHub checks need improvements? Share your feedbacks!

bwesterb commented 1 year ago

@armfazh @cjpatton Please check whether this makes sense to you.

chris-wood commented 1 year ago

@armfazh can you please re-review? I'd like to merge this and address KEM-specific validation steps in a separate PR, if possible.

chris-wood commented 1 year ago

@armfazh squashed and ready to go!

bwesterb commented 1 year ago

Cool 😎