Port keep-network/keep-core/pkg/crypto/ephemeral #15
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The source code of
keep-network/keep-core/pkg/crypto/ephemeral
has beenported to this repository. The ultimate goal is to port the entire GJKR
algorithm from
keep-core
repository and parameterize it to work with anyciphersuite. The ephemeral package is a dependency of
gjkr
package so ithad to be ported first.
To port the
ephemeral
package, I also had to port the box implementationfrom
keep-network/keep-common/pkg/encryption
package. The box was onlyused by
ephemeral
so I decided to simplify the code organization and placethe box implementation in the
ephemeral
package. This is the only changecompared to the original
ephemeral
implementation.In a separate PR, I want to explore if we can use secp256k1 implementation
from
btcsuite/btcd/btcec
instead the one fromethereum/go-ethereum
sothat we can avoid importing
ethereum/go-ethereum
into this repository.