moneromooo-monero
a4d4d6194b
integrate simple rct api
8 years ago
Shen Noether
dbb5f2d6a3
ringct: optimization/cleanup of hash functions
8 years ago
Shen Noether
4fd01f2bee
ringct: "simple" ringct variant
...
Allows the fake outs to be in different positions for each ring.
For rct inputs only.
8 years ago
moneromooo-monero
35dce5c70c
ringct: fix size unit mismatch calling keccak
8 years ago
moneromooo-monero
20e50ec7f7
ringct: do not serialize what can be reconstructed
...
The mixRing (output keys and commitments) and II fields (key images)
can be reconstructed from vin data.
This saves some modest amount of space in the tx.
8 years ago
moneromooo-monero
73d59f17e1
ringct: catch errors from ge_frombytes_vartime
8 years ago
moneromooo-monero
359f46901e
ringct: add missing size check for ecdhInfo
8 years ago
moneromooo-monero
229968eafc
ringct: change asserts to return false for boolean functions
8 years ago
moneromooo-monero
dc4aad7eb5
add rct to the protocol
...
It is not yet constrained to a fork, so don't use on the real network
or you'll be orphaned or rejected.
8 years ago
moneromooo-monero
dee42d6dac
ringct: add functions to commit to an amount
...
One to commit to an amount with zero key (for use with fake
commitments for pre-rct outputs), and one with an arbitrary
key (for rct outputs).
8 years ago
moneromooo-monero
cc7f449d57
make rct tx serialization work
...
It may be suboptimal, but it's a pain to have to rebuild everything
when some of this changes.
Also, no clue why there seems to be two different code paths for
serializing a tx...
8 years ago
moneromooo-monero
54f7429cf6
ringct: allow no outputs, and add tests for this and fees
8 years ago
moneromooo-monero
e99904ac31
ringct: make fee optional
8 years ago
Shen Noether
f8c04ad94f
ringct: txn fee stuff
8 years ago
moneromooo-monero
66f96260b2
ringct: new {gen,decode}Rct APIs for convenience
...
A new version of genRct takes the mixRing as parameter, instead
of the inPk. inPk are part of the mixRing, and it is cleaner to
pass the mixRing data than to fetch it from the RingCT code.
A new version of decodeRct also returns the mask.
Also, failure to decode throws, so errors are properly detected.
8 years ago
moneromooo-monero
789b2e21f6
ringct: add more convenience functions
8 years ago
moneromooo-monero
c3a2e1450a
ringct: add convenience functions to bridge ringct and cryptonote
8 years ago
moneromooo-monero
82072e701a
ringct: restore verRange check in debug mode
8 years ago
moneromooo-monero
63856cad29
ringct: add check for destinations/amount size being equal
8 years ago
moneromooo-monero
e816a09292
ringct: fix off by 1 in mixin usage
8 years ago
moneromooo-monero
09c5ea43a2
ringct: simplify random key generation
8 years ago
Shen Noether
56f6549962
ringct: cosmetic fixes
...
Ported from Shen's RingCT repo
8 years ago
Shen Noether
55ff136e12
ringct: changes to hashToPointSimple to calcualte H2 values
...
Ported from Shen's RingCT repo
8 years ago
Shen Noether
63733b1785
ringct: compare keys with bitwise equality, not crypto ops
...
Ported from Shen's RingCT repo
8 years ago
Shen Noether
98f4c6f7eb
ringct: fix size argument to cn_fast_hash
...
Ported from Shen's RingCT repo
8 years ago
Shen Noether
09fb9f4b75
Fix sc_0 to skGen in ProveRange
8 years ago
moneromooo-monero
d37c1db032
ringct: add a few consts where appropriate
8 years ago
moneromooo-monero
700248f59e
tests: more ringct range proof tests
8 years ago
moneromooo-monero
d02f9995a8
rct: add serialization machinery to rct types
8 years ago
moneromooo-monero
0ff8305426
serialization: declare do_serialize specializations before use
...
This lets my gcc picks those instead of the generic template
where appropriate (and then fail since std::vector<something>
does not have a serialize method.
8 years ago
Shen Noether
8b135e7aa3
Added note on generating H2
8 years ago
Shen Noether
4d639d90ca
Fixed missing last index H2
8 years ago
moneromooo-monero
86b4426191
ringct: lock access to the PRNG
8 years ago
moneromooo-monero
4d7f073491
ringct: add simple input validation
...
Throw when inputs aren't the expected size.
8 years ago
moneromooo-monero
b656001030
ringct: add convenience operators to key
8 years ago
moneromooo-monero
9b1afe5f2d
ringct: import of Shen Noether's ring confidential transactions
8 years ago