net.i2p.crypto.eddsa

## Class EdDSABlinding

- java.lang.Object
- - net.i2p.crypto.eddsa.EdDSABlinding

-     public final class EdDSABlinding
      extends Object

  Utilities for EdDSA key blinding operations. Provides methods to blind and unblind EdDSA keys for privacy protection.

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static BigInteger` | `ORDER`

  - ### Method Summary

    All Methods Static Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `static EdDSAPrivateKey` | `blind(EdDSAPrivateKey key, EdDSAPrivateKey alpha)` Only for SigType EdDSA_SHA512_Ed25519.
    `static EdDSAPublicKey` | `blind(EdDSAPublicKey key, EdDSAPrivateKey alpha)` Only for SigType EdDSA_SHA512_Ed25519.
    `static byte[]` | `reduce(byte[] b)` Use to generate alpha
    `static EdDSAPrivateKey` | `unblind(EdDSAPrivateKey key, EdDSAPrivateKey alpha)` Unimplemented, probably not needed except for testing.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### ORDER

          public static final BigInteger ORDER

  - ### Method Detail

    - #### blind

          public static EdDSAPrivateKey blind(EdDSAPrivateKey key,
                                              EdDSAPrivateKey alpha)

      Only for SigType EdDSA_SHA512_Ed25519.
      Parameters:
        `key` - must be SigType EdDSA_SHA512_Ed25519
        `alpha` - generated from hash of secret data
      Throws:
        `UnsupportedOperationException` - unless supported

    - #### blind

          public static EdDSAPublicKey blind(EdDSAPublicKey key,
                                             EdDSAPrivateKey alpha)

      Only for SigType EdDSA_SHA512_Ed25519.
      Parameters:
        `key` - must be SigType EdDSA_SHA512_Ed25519
        `alpha` - generated from hash of secret data
      Throws:
        `UnsupportedOperationException` - unless supported

    - #### reduce

          public static byte[] reduce(byte[] b)

      Use to generate alpha
      Parameters:
        `b` - 64 bytes little endian of random
      Returns:
        32 bytes little endian mod l

    - #### unblind

          public static EdDSAPrivateKey unblind(EdDSAPrivateKey key,
                                                EdDSAPrivateKey alpha)

      Unimplemented, probably not needed except for testing.
      Parameters:
        `key` - must be SigType EdDSA_SHA512_Ed25519
        `alpha` - generated from hash of secret data
      Throws:
        `UnsupportedOperationException` - unless supported