Skip to content

DO NOT MERGE: internal/field fiat-crypto playground#80

Draft
Yawning wants to merge 3 commits into
masterfrom
feature/fiat-crypto
Draft

DO NOT MERGE: internal/field fiat-crypto playground#80
Yawning wants to merge 3 commits into
masterfrom
feature/fiat-crypto

Conversation

@Yawning

@Yawning Yawning commented Jul 28, 2021

Copy link
Copy Markdown
Contributor

fiat-crypto experimental sandbox (See: #78)

  • fiat-crypto based u64 backend
  • fiat-crypto base u32 backend
  • Investigate performance
    • CarryMul
    • CarrySquare
    • Add/Sub/Opp + Carry(Upstream integrated this).
    • CarrySquare -> CarryPow2k
    • Add/Sub + CarryMul
    • Add/Sub + CarrySquare (Not really worth it)
    • ToBytes
    • Selectznz (with the parameter fix), reduces signing and key generation performance by 25%.
    • X25519 needs to be fiat-specific.
  • Add the fiat-crypto copyright to the dinky wrappers.

@Yawning Yawning force-pushed the feature/fiat-crypto branch 18 times, most recently from 67c21f2 to cf3af58 Compare August 2, 2021 14:14
@Yawning Yawning force-pushed the feature/fiat-crypto branch 6 times, most recently from f07c83a to 885b596 Compare August 13, 2021 06:11
This is a series of wrappers around fiat-crypto's curve25519 code, along
with working around braindamage caused by the lack of `//go:inline`.

Upstream commit: f1951b3d80f1d0e402a832682875667ae52e8028
Upstream got rid of the assembly.  This is marginally slower, but it
will use fiat, and it's only a few percent.
@Yawning Yawning force-pushed the feature/fiat-crypto branch from 885b596 to 09a34d4 Compare August 13, 2021 08:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant