Go to the documentation of this file.
33 #include <boost/serialization/vector.hpp>
34 #include <boost/serialization/utility.hpp>
35 #include <boost/serialization/variant.hpp>
36 #include <boost/serialization/set.hpp>
37 #include <boost/serialization/map.hpp>
38 #include <boost/serialization/is_bitwise_serializable.hpp>
39 #include <boost/archive/portable_binary_iarchive.hpp>
40 #include <boost/archive/portable_binary_oarchive.hpp>
54 template <
class Archive>
59 template <
class Archive>
64 template <
class Archive>
69 template <
class Archive>
75 template <
class Archive>
80 template <
class Archive>
85 template <
class Archive>
91 template <
class Archive>
99 template <
class Archive>
105 template <
class Archive>
111 template <
class Archive>
117 template <
class Archive>
125 template <
class Archive>
134 template <
class Archive>
142 template <
class Archive>
150 template <
class Archive>
160 template <
class Archive>
180 template <
class Archive>
193 template <
class Archive>
196 a &
reinterpret_cast<char (&)[sizeof(
rct::key)]
>(x);
199 template <
class Archive>
206 template <
class Archive>
213 template <
class Archive>
230 template <
class Archive>
238 template <
class Archive>
246 template <
class Archive>
255 template <
class Archive>
262 template <
class Archive>
271 template <
class Archive>
280 template <
class Archive>
281 inline typename std::enable_if<Archive::is_loading::value, void>::type
serializeOutPk(Archive &
a,
rct::ctkeyV &outPk_,
const boost::serialization::version_type ver)
285 outPk_.resize(outPk.size());
286 for (
size_t n = 0; n < outPk_.size(); ++n)
289 outPk_[n].mask = outPk[n];
293 template <
class Archive>
294 inline typename std::enable_if<Archive::is_saving::value, void>::type
serializeOutPk(Archive &
a,
rct::ctkeyV &outPk_,
const boost::serialization::version_type ver)
297 for (
size_t n = 0; n < outPk_.size(); ++n)
298 outPk[n] = outPk_[n].mask;
302 template <
class Archive>
309 throw boost::archive::archive_exception(boost::archive::archive_exception::other_exception,
"Unsupported rct type");
319 template <
class Archive>
332 template <
class Archive>
339 throw boost::archive::archive_exception(boost::archive::archive_exception::other_exception,
"Unsupported rct type");
358 template <
class Archive>
365 template <
class Archive>
368 if (Archive::is_loading::value)
383 uint64_t v = x_.convert_to<uint64_t>();
386 x_ = x & 0xffffffffffffffff;
387 v = x_.convert_to<uint64_t>();
Definition: rctTypes.h:114
std::vector< tx_out > vout
Definition: cryptonote_basic.h:168
key ki
Definition: rctTypes.h:109
boroSig asig
Definition: rctTypes.h:195
crypto::hash prev
Definition: cryptonote_basic.h:97
rctSigPrunable p
Definition: rctTypes.h:537
uint64_t unlock_time
Definition: cryptonote_basic.h:165
rct::keyV L
Definition: rctTypes.h:209
Definition: rctTypes.h:272
key cc
Definition: rctTypes.h:162
rct::key T2
Definition: rctTypes.h:207
crypto::hash hash
Definition: cryptonote_basic.h:73
txout_target_v target
Definition: cryptonote_basic.h:145
std::vector< crypto::public_key > keys
Definition: cryptonote_basic.h:62
keyV pseudoOuts
Definition: rctTypes.h:277
Definition: rctTypes.h:132
key c1
Definition: rctTypes.h:175
ctkeyV outPk
Definition: rctTypes.h:279
Definition: rctTypes.h:79
Definition: cryptonote_basic.h:143
BOOST_CLASS_VERSION(nodetool::peerlist_types, nodetool::CURRENT_PEERLIST_STORAGE_ARCHIVE_VER)
Definition: cryptonote_basic.h:109
Definition: rctTypes.h:97
size_t prevout
Definition: cryptonote_basic.h:111
key mask
Definition: rctTypes.h:133
key amount
Definition: rctTypes.h:134
size_t height
Definition: cryptonote_basic.h:88
boost::multiprecision::uint128_t difficulty_type
Definition: difficulty.h:41
Definition: rctTypes.h:173
std::vector< uint64_t > key_offsets
Definition: cryptonote_basic.h:126
Definition: unordered_containers_boost_serialization.h:38
std::vector< key > mu_p
Definition: rctTypes.h:116
epee::mlocked< tools::scrubbed< ec_scalar > > secret_key
Definition: crypto.h:67
POD_CLASS key_derivation
Definition: crypto.h:83
rct::key t
Definition: rctTypes.h:210
Definition: rctTypes.h:160
std::vector< txin_v > vin
Definition: cryptonote_basic.h:167
key k
Definition: rctTypes.h:106
std::vector< uint8_t > extra
Definition: cryptonote_basic.h:170
Definition: rctTypes.h:360
uint64_t amount
Definition: cryptonote_basic.h:125
std::vector< Bulletproof > bulletproofs
Definition: rctTypes.h:362
Definition: rctTypes.h:205
key64 Ci
Definition: rctTypes.h:196
if(APPLE) if(DEPENDS) list(APPEND EXTRA_LIBRARIES "-framework Foundation -framework ApplicationServices -framework AppKit -framework IOKit") else() find_library(IOKIT_LIBRARY IOKit) mark_as_advanced(IOKIT_LIBRARY) list(APPEND EXTRA_LIBRARIES $
Definition: CMakeLists.txt:29
int b
Definition: base.py:1
crypto::key_image k_image
Definition: cryptonote_basic.h:127
@ RCTTypeNull
Definition: rctTypes.h:254
@ RCTTypeBulletproof
Definition: rctTypes.h:257
rct::key mu
Definition: rctTypes.h:208
int bp_version
Definition: rctTypes.h:264
Definition: cryptonote_basic.h:160
std::vector< key > keyV
Definition: rctTypes.h:89
key64 s0
Definition: rctTypes.h:148
rct::key taux
Definition: rctTypes.h:208
std::vector< uint8_t > script
Definition: cryptonote_basic.h:63
Definition: cryptonote_basic.h:96
@ RCTTypeSimple
Definition: rctTypes.h:256
Definition: cryptonote_basic.h:464
keyV pseudoOuts
Definition: rctTypes.h:365
std::vector< ecdhTuple > ecdhInfo
Definition: rctTypes.h:278
Definition: cryptonote_basic.h:124
size_t prevout
Definition: cryptonote_basic.h:98
Definition: rctTypes.h:147
rct::keyV R
Definition: rctTypes.h:209
void serialize(Archive &a, std::unordered_map< h_key, hval > &x, const boost::serialization::version_type ver)
Definition: unordered_containers_boost_serialization.h:126
rct::keyV V
Definition: rctTypes.h:206
rct::key S
Definition: rctTypes.h:207
rct::key A
Definition: rctTypes.h:207
RangeProofType range_proof_type
Definition: rctTypes.h:263
key ee
Definition: rctTypes.h:150
std::vector< ctkey > ctkeyV
Definition: rctTypes.h:101
POD_CLASS signature
Definition: crypto.h:93
std::enable_if< Archive::is_loading::value, void >::type serializeOutPk(Archive &a, rct::ctkeyV &outPk_, const boost::serialization::version_type ver)
Definition: cryptonote_boost_serialization.h:281
key dest
Definition: rctTypes.h:98
size_t version
Definition: cryptonote_basic.h:164
Definition: rctTypes.h:536
txout_to_script script
Definition: cryptonote_basic.h:112
Definition: cryptonote_basic.h:87
crypto::hash prev
Definition: cryptonote_basic.h:110
key R
Definition: rctTypes.h:108
POD_CLASS public_key
Definition: crypto.h:61
rct::key a
Definition: rctTypes.h:210
Definition: cryptonote_basic.h:77
Definition: rctTypes.h:105
crypto::public_key key
Definition: cryptonote_basic.h:80
std::vector< clsag > CLSAGs
Definition: rctTypes.h:364
keyV s
Definition: rctTypes.h:174
uint8_t type
Definition: rctTypes.h:273
Definition: bulletproofs.cc:64
POD_CLASS hash8
Definition: hash.h:51
std::vector< uint8_t > sigset
Definition: cryptonote_basic.h:113
Definition: binary_utils.h:36
string a
Definition: MakeCryptoOps.py:15
rct::rctSig rct_signatures
Definition: cryptonote_basic.h:203
key identity()
Definition: rctOps.h:73
key L
Definition: rctTypes.h:107
Definition: cryptonote_basic.h:194
Definition: rctTypes.h:194
Definition: cryptonote_basic.h:61
std::vector< rangeSig > rangeSigs
Definition: rctTypes.h:361
@ RCTTypeCLSAG
Definition: rctTypes.h:259
POD_CLASS key_image
Definition: crypto.h:87
std::vector< key > c
Definition: rctTypes.h:115
rct::key b
Definition: rctTypes.h:210
key64 s1
Definition: rctTypes.h:149
@ RCTTypeFull
Definition: rctTypes.h:255
keyM ss
Definition: rctTypes.h:161
key mask
Definition: rctTypes.h:99
key D
Definition: rctTypes.h:178
xmr_amount txnFee
Definition: rctTypes.h:280
Definition: rctTypes.h:262
std::vector< uint8_t > sigset
Definition: cryptonote_basic.h:99
uint64_t amount
Definition: cryptonote_basic.h:144
rct::key T1
Definition: rctTypes.h:207
std::vector< mgSig > MGs
Definition: rctTypes.h:363
std::vector< std::vector< crypto::signature > > signatures
Definition: cryptonote_basic.h:202
Definition: cryptonote_basic.h:72
@ RCTTypeBulletproof2
Definition: rctTypes.h:258
POD_CLASS hash
Definition: hash.h:48