/ src / secp256k1 / src / scalar_4x64.h
scalar_4x64.h
 1  /***********************************************************************
 2   * Copyright (c) 2014 Pieter Wuille                                    *
 3   * Distributed under the MIT software license, see the accompanying    *
 4   * file COPYING or https://www.opensource.org/licenses/mit-license.php.*
 5   ***********************************************************************/
 6  
 7  #ifndef SECP256K1_SCALAR_REPR_H
 8  #define SECP256K1_SCALAR_REPR_H
 9  
10  #include <stdint.h>
11  
12  /** A scalar modulo the group order of the secp256k1 curve. */
13  typedef struct {
14      uint64_t d[4];
15  } secp256k1_scalar;
16  
17  #define SECP256K1_SCALAR_CONST(d7, d6, d5, d4, d3, d2, d1, d0) {{((uint64_t)(d1)) << 32 | (d0), ((uint64_t)(d3)) << 32 | (d2), ((uint64_t)(d5)) << 32 | (d4), ((uint64_t)(d7)) << 32 | (d6)}}
18  
19  #endif /* SECP256K1_SCALAR_REPR_H */