desprout
This commit is contained in:
@@ -92,57 +92,6 @@ boost::optional<uint256> SaplingNote::nullifier(const SaplingFullViewingKey& vk,
|
||||
return result;
|
||||
}
|
||||
|
||||
SproutNotePlaintext::SproutNotePlaintext(
|
||||
const SproutNote& note,
|
||||
std::array<unsigned char, ZC_MEMO_SIZE> memo) : BaseNotePlaintext(note, memo)
|
||||
{
|
||||
rho = note.rho;
|
||||
r = note.r;
|
||||
}
|
||||
|
||||
SproutNote SproutNotePlaintext::note(const SproutPaymentAddress& addr) const
|
||||
{
|
||||
return SproutNote(addr.a_pk, value_, rho, r);
|
||||
}
|
||||
|
||||
SproutNotePlaintext SproutNotePlaintext::decrypt(const ZCNoteDecryption& decryptor,
|
||||
const ZCNoteDecryption::Ciphertext& ciphertext,
|
||||
const uint256& ephemeralKey,
|
||||
const uint256& h_sig,
|
||||
unsigned char nonce
|
||||
)
|
||||
{
|
||||
auto plaintext = decryptor.decrypt(ciphertext, ephemeralKey, h_sig, nonce);
|
||||
|
||||
CDataStream ss(SER_NETWORK, PROTOCOL_VERSION);
|
||||
ss << plaintext;
|
||||
|
||||
SproutNotePlaintext ret;
|
||||
ss >> ret;
|
||||
|
||||
assert(ss.size() == 0);
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
ZCNoteEncryption::Ciphertext SproutNotePlaintext::encrypt(ZCNoteEncryption& encryptor,
|
||||
const uint256& pk_enc
|
||||
) const
|
||||
{
|
||||
CDataStream ss(SER_NETWORK, PROTOCOL_VERSION);
|
||||
ss << (*this);
|
||||
|
||||
ZCNoteEncryption::Plaintext pt;
|
||||
|
||||
assert(pt.size() == ss.size());
|
||||
|
||||
memcpy(&pt[0], &ss[0], pt.size());
|
||||
|
||||
return encryptor.encrypt(pk_enc, pt);
|
||||
}
|
||||
|
||||
|
||||
|
||||
// Construct and populate SaplingNotePlaintext for a given note and memo.
|
||||
SaplingNotePlaintext::SaplingNotePlaintext(
|
||||
const SaplingNote& note,
|
||||
|
||||
Reference in New Issue
Block a user