Skip to content

Feature wishlist tracking ticket #1

Open
@tarcieri

Description

This is a ticket for tracking desired new features for crypto-bigint and which algorithms should be used in order to implement particular features.

Unless otherwise stated, these features are implied to be for the UInt type.

  • signed integers (#700)
  • addition/subtraction
  • multiplication algorithms
    • "schoolbook"
    • Karatsuba
  • sqrt
  • modular arithmetic
    • add
    • subtract
    • multiply
    • negate
    • modulus
    • pow
    • sqrt
    • inversions
  • bitwise operations (request other ops in comments)
    • shift
    • rotate
    • XOR
  • fields mod n (i.e. wrapper newtypes for UInt)
  • constant-time division
    • by 2 (useful for elliptic-curve crates)
    • arbitrary
  • subtle comparisons
    • ConstantTimeEq
    • ConstantTimeGreater
    • ConstantTimeLess
  • CRT (algorithms listed below)
  • LCM
  • GCD (algorithms listed below)
  • RNG
  • Hardware acceleration / assembly (see also #572)
    • x86/x86_64
    • ARM
      • NEON

NOTE: for prime number support, see the crypto-primes crate

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions