67 static const key Z = { {0x00, 0x00, 0x00,0x00 , 0x00, 0x00, 0x00,0x00 , 0x00, 0x00, 0x00,0x00 , 0x00, 0x00, 0x00,0x00 , 0x00, 0x00, 0x00,0x00 , 0x00, 0x00, 0x00,0x00 , 0x00, 0x00, 0x00,0x00 , 0x00, 0x00, 0x00,0x00 } };
68 static const key I = { {0x01, 0x00, 0x00,0x00 , 0x00, 0x00, 0x00,0x00 , 0x00, 0x00, 0x00,0x00 , 0x00, 0x00, 0x00,0x00 , 0x00, 0x00, 0x00,0x00 , 0x00, 0x00, 0x00,0x00 , 0x00, 0x00, 0x00,0x00 , 0x00, 0x00, 0x00,0x00 } };
69 static const key L = { {0xed, 0xd3, 0xf5, 0x5c, 0x1a, 0x63, 0x12, 0x58, 0xd6, 0x9c, 0xf7, 0xa2, 0xde, 0xf9, 0xde, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10 } };
73 inline void zero(
key &z) { memset(&z, 0, 32); }
81 inline void copy(
key &AA,
const key &A) { memcpy(&AA, &A, 32); }
82 inline key copy(
const key & A) {
key AA; memcpy(&AA, &A, 32);
return AA; }
101 void skpkGen(key &sk, key &pk);
108 tuple<ctkey, ctkey>
ctskpkGen(
const key &bH);
130 void addKeys(key &AB,
const key &A,
const key &
B);
132 void addKeys1(key &aGB,
const key &
a,
const key &
B);
134 void addKeys2(key &aGbB,
const key &
a,
const key &
b,
const key &
B);
142 void subKeys(key &AB,
const key &A,
const key &
B);
175 void sumKeys(key & Csum,
const key &Cis);
179 void ecdhEncode(ecdhTuple & unmasked,
const key & sharedSec);
180 void ecdhDecode(ecdhTuple & masked,
const key & sharedSec);
void genC(key &C, const key &a, xmr_amount amount)
Definition: rctOps.cpp:108
keyV skvGen(size_t rows)
Definition: rctOps.cpp:77
void precomp(ge_dsmp rv, const key &B)
Definition: rctOps.cpp:243
void addKeys1(key &aGB, const key &a, const key &B)
Definition: rctOps.cpp:226
void identity(key &Id)
Definition: rctOps.h:76
key pkGen()
Definition: rctOps.cpp:88
void curveOrder(key &l)
Definition: rctOps.h:79
key commit(xmr_amount amount, const key &mask)
Definition: rctOps.cpp:143
list B
Definition: base.py:26
uint64_t xmr_amount
Definition: rctTypes.h:126
void addKeys3(key &aAbB, const key &a, const key &A, const key &b, const ge_dsmp B)
Definition: rctOps.cpp:252
void scalarmultKey(key &aP, const key &P, const key &a)
Definition: rctOps.cpp:177
vector< ctkey > ctkeyV
Definition: rctTypes.h:104
void ecdhEncode(ecdhTuple &unmasked, const key &sharedSec)
Definition: rctOps.cpp:429
tuple< ctkey, ctkey > ctskpkGen(xmr_amount amount)
Definition: rctOps.cpp:114
crypto namespace.
Definition: crypto.cpp:47
key hash_to_scalar128(const void *in)
Definition: rctOps.cpp:329
Definition: block_queue.cpp:41
Definition: rctOps.cpp:41
key cn_fast_hash128(const void *in)
Definition: rctOps.cpp:323
key zeroCommit(xmr_amount amount)
Definition: rctOps.cpp:134
void sumKeys(key &Csum, const key &Cis)
keyM keyMInit(size_t rows, size_t cols)
Definition: rctOps.cpp:48
void zero(key &z)
Definition: rctOps.h:73
static const key I
Definition: rctOps.h:68
key key64[64]
Definition: rctTypes.h:128
void cn_fast_hash(key &hash, const void *data, const size_t l)
Definition: rctTypes.h:82
int b
Definition: base.py:1
xmr_amount randXmrAmount(xmr_amount upperlimit)
Definition: rctOps.cpp:152
key scalarmultH(const key &a)
Definition: rctOps.cpp:198
#define L(m0, m1, m2, m3, m4, m5, m6, m7)
Definition: jh.c:116
int l
Definition: base.py:3
vector< keyV > keyM
Definition: rctTypes.h:93
void skGen(key &sk)
Definition: rctOps.cpp:63
void scalarmultBase(key &aG, const key &a)
Definition: rctOps.cpp:159
ge_cached ge_dsmp[8]
Definition: crypto-ops.h:79
key copy(const key &A)
Definition: rctOps.h:82
static const key Z
Definition: rctOps.h:67
void ecdhDecode(ecdhTuple &masked, const key &sharedSec)
Definition: rctOps.cpp:436
string a
Definition: MakeCryptoOps.py:15
void subKeys(key &AB, const key &A, const key &B)
Definition: rctOps.cpp:263
void hash_to_scalar(key &hash, const void *data, const size_t l)
void addKeys2(key &aGbB, const key &a, const key &b, const key &B)
Definition: rctOps.cpp:233
void skpkGen(key &sk, key &pk)
Definition: rctOps.cpp:95
vector< key > keyV
Definition: rctTypes.h:92
key hashToPoint(const key &hh)
Definition: rctOps.cpp:394
POD_CLASS hash
Definition: hash.h:46
void addKeys(key &AB, const key &A, const key &B)
Definition: rctOps.cpp:211
bool equalKeys(const key &a, const key &b)
Definition: rctOps.cpp:277
key hashToPointSimple(const key &hh)
Definition: rctOps.cpp:380
int rows
Definition: crypto.h:77