Browse Source

sync ltc_math_descriptor from doc

Steffen Jaeckel 8 years ago
parent
commit
0cf7c49045
1 changed files with 56 additions and 27 deletions
  1. 56 27
      src/headers/tomcrypt_math.h

+ 56 - 27
src/headers/tomcrypt_math.h

@@ -65,13 +65,14 @@ typedef struct {
    /** set small constant
    /** set small constant
       @param a    Number to write to
       @param a    Number to write to
       @param n    Source upto bits_per_digit (actually meant for very small constants)
       @param n    Source upto bits_per_digit (actually meant for very small constants)
-      @return CRYPT_OK on succcess
+      @return CRYPT_OK on success
    */
    */
    int (*set_int)(void *a, unsigned long n);
    int (*set_int)(void *a, unsigned long n);
 
 
    /** get small constant
    /** get small constant
-      @param a    Number to read, only fetches upto bits_per_digit from the number
-      @return  The lower bits_per_digit of the integer (unsigned)
+      @param a  Small number to read,
+                only fetches up to bits_per_digit from the number
+      @return   The lower bits_per_digit of the integer (unsigned)
    */
    */
    unsigned long (*get_int)(void *a);
    unsigned long (*get_int)(void *a);
 
 
@@ -91,14 +92,18 @@ typedef struct {
    /** compare two integers
    /** compare two integers
      @param a   The left side integer
      @param a   The left side integer
      @param b   The right side integer
      @param b   The right side integer
-     @return LTC_MP_LT if a < b, LTC_MP_GT if a > b and LTC_MP_EQ otherwise.  (signed comparison)
+     @return LTC_MP_LT if a < b,
+             LTC_MP_GT if a > b and
+             LTC_MP_EQ otherwise.  (signed comparison)
    */
    */
    int (*compare)(void *a, void *b);
    int (*compare)(void *a, void *b);
 
 
    /** compare against int
    /** compare against int
      @param a   The left side integer
      @param a   The left side integer
      @param b   The right side integer (upto bits_per_digit)
      @param b   The right side integer (upto bits_per_digit)
-     @return LTC_MP_LT if a < b, LTC_MP_GT if a > b and LTC_MP_EQ otherwise.  (signed comparison)
+     @return LTC_MP_LT if a < b,
+             LTC_MP_GT if a > b and
+             LTC_MP_EQ otherwise.  (signed comparison)
    */
    */
    int (*compare_d)(void *a, unsigned long n);
    int (*compare_d)(void *a, unsigned long n);
 
 
@@ -140,8 +145,8 @@ typedef struct {
    int (*write_radix)(void *a, char *str, int radix);
    int (*write_radix)(void *a, char *str, int radix);
 
 
    /** get size as unsigned char string
    /** get size as unsigned char string
-     @param a     The integer to get the size (when stored in array of octets)
-     @return The length of the integer
+     @param a  The integer to get the size (when stored in array of octets)
+     @return   The length of the integer in octets
    */
    */
    unsigned long (*unsigned_size)(void *a);
    unsigned long (*unsigned_size)(void *a);
 
 
@@ -158,7 +163,9 @@ typedef struct {
      @param len   The number of octets
      @param len   The number of octets
      @return CRYPT_OK on success
      @return CRYPT_OK on success
    */
    */
-   int (*unsigned_read)(void *dst, unsigned char *src, unsigned long len);
+   int (*unsigned_read)(         void *dst,
+                        unsigned char *src,
+                        unsigned long  len);
 
 
 /* ---- basic math ---- */
 /* ---- basic math ---- */
 
 
@@ -170,10 +177,10 @@ typedef struct {
    */
    */
    int (*add)(void *a, void *b, void *c);
    int (*add)(void *a, void *b, void *c);
 
 
-
    /** add two integers
    /** add two integers
      @param a   The first source integer
      @param a   The first source integer
-     @param b   The second source integer (single digit of upto bits_per_digit in length)
+     @param b   The second source integer
+                (single digit of upto bits_per_digit in length)
      @param c   The destination of "a + b"
      @param c   The destination of "a + b"
      @return CRYPT_OK on success
      @return CRYPT_OK on success
    */
    */
@@ -189,7 +196,8 @@ typedef struct {
 
 
    /** subtract two integers
    /** subtract two integers
      @param a   The first source integer
      @param a   The first source integer
-     @param b   The second source integer (single digit of upto bits_per_digit in length)
+     @param b   The second source integer
+                (single digit of upto bits_per_digit in length)
      @param c   The destination of "a - b"
      @param c   The destination of "a - b"
      @return CRYPT_OK on success
      @return CRYPT_OK on success
    */
    */
@@ -197,7 +205,8 @@ typedef struct {
 
 
    /** multiply two integers
    /** multiply two integers
      @param a   The first source integer
      @param a   The first source integer
-     @param b   The second source integer (single digit of upto bits_per_digit in length)
+     @param b   The second source integer
+                (single digit of upto bits_per_digit in length)
      @param c   The destination of "a * b"
      @param c   The destination of "a * b"
      @return CRYPT_OK on success
      @return CRYPT_OK on success
    */
    */
@@ -205,7 +214,8 @@ typedef struct {
 
 
    /** multiply two integers
    /** multiply two integers
      @param a   The first source integer
      @param a   The first source integer
-     @param b   The second source integer (single digit of upto bits_per_digit in length)
+     @param b   The second source integer
+                (single digit of upto bits_per_digit in length)
      @param c   The destination of "a * b"
      @param c   The destination of "a * b"
      @return CRYPT_OK on success
      @return CRYPT_OK on success
    */
    */
@@ -285,7 +295,7 @@ typedef struct {
 
 
 /* ---- reduction ---- */
 /* ---- reduction ---- */
 
 
-   /** setup montgomery
+   /** setup Montgomery
        @param a  The modulus
        @param a  The modulus
        @param b  The destination for the reduction digit
        @param b  The destination for the reduction digit
        @return CRYPT_OK on success
        @return CRYPT_OK on success
@@ -339,10 +349,15 @@ typedef struct {
        @param G   The point to multiply
        @param G   The point to multiply
        @param R   The destination for kG
        @param R   The destination for kG
        @param modulus  The modulus for the field
        @param modulus  The modulus for the field
-       @param map Boolean indicated whether to map back to affine or not (can be ignored if you work in affine only)
+       @param map Boolean indicated whether to map back to affine or not
+                  (can be ignored if you work in affine only)
        @return CRYPT_OK on success
        @return CRYPT_OK on success
    */
    */
-   int (*ecc_ptmul)(void *k, ecc_point *G, ecc_point *R, void *modulus, int map);
+   int (*ecc_ptmul)(     void *k,
+                    ecc_point *G,
+                    ecc_point *R,
+                         void *modulus,
+                          int  map);
 
 
    /** ECC GF(p) point addition
    /** ECC GF(p) point addition
        @param P    The first point
        @param P    The first point
@@ -352,7 +367,11 @@ typedef struct {
        @param mp   The "b" value from montgomery_setup()
        @param mp   The "b" value from montgomery_setup()
        @return CRYPT_OK on success
        @return CRYPT_OK on success
    */
    */
-   int (*ecc_ptadd)(ecc_point *P, ecc_point *Q, ecc_point *R, void *modulus, void *mp);
+   int (*ecc_ptadd)(ecc_point *P,
+                    ecc_point *Q,
+                    ecc_point *R,
+                         void *modulus,
+                         void *mp);
 
 
    /** ECC GF(p) point double
    /** ECC GF(p) point double
        @param P    The first point
        @param P    The first point
@@ -361,15 +380,20 @@ typedef struct {
        @param mp   The "b" value from montgomery_setup()
        @param mp   The "b" value from montgomery_setup()
        @return CRYPT_OK on success
        @return CRYPT_OK on success
    */
    */
-   int (*ecc_ptdbl)(ecc_point *P, ecc_point *R, void *modulus, void *mp);
+   int (*ecc_ptdbl)(ecc_point *P,
+                    ecc_point *R,
+                         void *modulus,
+                         void *mp);
 
 
-   /** ECC mapping from projective to affine, currently uses (x,y,z) => (x/z^2, y/z^3, 1)
+   /** ECC mapping from projective to affine,
+       currently uses (x,y,z) => (x/z^2, y/z^3, 1)
        @param P     The point to map
        @param P     The point to map
        @param modulus The modulus
        @param modulus The modulus
        @param mp    The "b" value from montgomery_setup()
        @param mp    The "b" value from montgomery_setup()
        @return CRYPT_OK on success
        @return CRYPT_OK on success
-       @remark  The mapping can be different but keep in mind a ecc_point only has three
-                integers (x,y,z) so if you use a different mapping you have to make it fit.
+       @remark The mapping can be different but keep in mind a
+               ecc_point only has three integers (x,y,z) so if
+               you use a different mapping you have to make it fit.
    */
    */
    int (*ecc_map)(ecc_point *P, void *modulus, void *mp);
    int (*ecc_map)(ecc_point *P, void *modulus, void *mp);
 
 
@@ -378,7 +402,7 @@ typedef struct {
        @param kA       What to multiple A by
        @param kA       What to multiple A by
        @param B        Second point to multiply
        @param B        Second point to multiply
        @param kB       What to multiple B by
        @param kB       What to multiple B by
-       @param C        [out] Destination point (can overlap with A or B
+       @param C        [out] Destination point (can overlap with A or B)
        @param modulus  Modulus for curve
        @param modulus  Modulus for curve
        @return CRYPT_OK on success
        @return CRYPT_OK on success
    */
    */
@@ -392,19 +416,24 @@ typedef struct {
    /** RSA Key Generation
    /** RSA Key Generation
        @param prng     An active PRNG state
        @param prng     An active PRNG state
        @param wprng    The index of the PRNG desired
        @param wprng    The index of the PRNG desired
-       @param size     The size of the modulus (key size) desired (octets)
-       @param e        The "e" value (public key).  e==65537 is a good choice
+       @param size     The size of the key in octets
+       @param e        The "e" value (public key).
+                       e==65537 is a good choice
        @param key      [out] Destination of a newly created private key pair
        @param key      [out] Destination of a newly created private key pair
        @return CRYPT_OK if successful, upon error all allocated ram is freed
        @return CRYPT_OK if successful, upon error all allocated ram is freed
     */
     */
-    int (*rsa_keygen)(prng_state *prng, int wprng, int size, long e, rsa_key *key);
-
+    int (*rsa_keygen)(prng_state *prng,
+                             int  wprng,
+                             int  size,
+                            long  e,
+                         rsa_key *key);
 
 
    /** RSA exponentiation
    /** RSA exponentiation
       @param in       The octet array representing the base
       @param in       The octet array representing the base
       @param inlen    The length of the input
       @param inlen    The length of the input
       @param out      The destination (to be stored in an octet array format)
       @param out      The destination (to be stored in an octet array format)
-      @param outlen   The length of the output buffer and the resulting size (zero padded to the size of the modulus)
+      @param outlen   The length of the output buffer and the resulting size
+                      (zero padded to the size of the modulus)
       @param which    PK_PUBLIC for public RSA and PK_PRIVATE for private RSA
       @param which    PK_PUBLIC for public RSA and PK_PRIVATE for private RSA
       @param key      The RSA key to use
       @param key      The RSA key to use
       @return CRYPT_OK on success
       @return CRYPT_OK on success