|
|
@ -1387,7 +1387,7 @@ public:
|
|
|
|
|
|
|
|
|
|
|
|
string out_pub_key_str = pod_to_hex(output_data.pubkey);
|
|
|
|
string out_pub_key_str = pod_to_hex(output_data.pubkey);
|
|
|
|
|
|
|
|
|
|
|
|
cout << "out_pub_key_str: " << out_pub_key_str << endl;
|
|
|
|
//cout << "out_pub_key_str: " << out_pub_key_str << endl;
|
|
|
|
|
|
|
|
|
|
|
|
// this will be txs where the outputs come from
|
|
|
|
// this will be txs where the outputs come from
|
|
|
|
vector<string> found_tx_hashes;
|
|
|
|
vector<string> found_tx_hashes;
|
|
|
@ -1401,7 +1401,7 @@ public:
|
|
|
|
mixins.push_back(mstch::map{
|
|
|
|
mixins.push_back(mstch::map{
|
|
|
|
{"mixin_pub_key" , out_pub_key_str},
|
|
|
|
{"mixin_pub_key" , out_pub_key_str},
|
|
|
|
{"mixin_outputs" , mstch::array{}},
|
|
|
|
{"mixin_outputs" , mstch::array{}},
|
|
|
|
{"has_mixin_outputs", false}
|
|
|
|
{"has_mixin_outputs" , false}
|
|
|
|
});
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
|
|
mstch::array& mixin_outputs = boost::get<mstch::array>(
|
|
|
|
mstch::array& mixin_outputs = boost::get<mstch::array>(
|
|
|
@ -1431,10 +1431,11 @@ public:
|
|
|
|
continue;
|
|
|
|
continue;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public_key mixin_tx_pub_key
|
|
|
|
public_key mixin_tx_pub_key
|
|
|
|
= xmreg::get_tx_pub_key_from_received_outs(mixin_tx);
|
|
|
|
= xmreg::get_tx_pub_key_from_received_outs(mixin_tx);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
string mixin_tx_pub_key_str = pod_to_hex(mixin_tx_pub_key);
|
|
|
|
|
|
|
|
|
|
|
|
// public transaction key is combined with our viewkey
|
|
|
|
// public transaction key is combined with our viewkey
|
|
|
|
// to create, so called, derived key.
|
|
|
|
// to create, so called, derived key.
|
|
|
|
key_derivation derivation;
|
|
|
|
key_derivation derivation;
|
|
|
@ -1455,6 +1456,7 @@ public:
|
|
|
|
|
|
|
|
|
|
|
|
mixin_outputs.push_back(mstch::map{
|
|
|
|
mixin_outputs.push_back(mstch::map{
|
|
|
|
{"mix_tx_hash" , tx_hash_str},
|
|
|
|
{"mix_tx_hash" , tx_hash_str},
|
|
|
|
|
|
|
|
{"mix_tx_pub_key" , mixin_tx_pub_key_str},
|
|
|
|
{"found_outputs" , mstch::array{}},
|
|
|
|
{"found_outputs" , mstch::array{}},
|
|
|
|
{"has_found_outputs", false}
|
|
|
|
{"has_found_outputs", false}
|
|
|
|
});
|
|
|
|
});
|
|
|
@ -1475,10 +1477,7 @@ public:
|
|
|
|
uint64_t amount = std::get<1>(mix_out);
|
|
|
|
uint64_t amount = std::get<1>(mix_out);
|
|
|
|
uint64_t output_idx_in_tx = std::get<2>(mix_out);
|
|
|
|
uint64_t output_idx_in_tx = std::get<2>(mix_out);
|
|
|
|
|
|
|
|
|
|
|
|
cout << " - " << pod_to_hex(txout_k.key) << endl;
|
|
|
|
//cout << " - " << pod_to_hex(txout_k.key) << endl;
|
|
|
|
|
|
|
|
|
|
|
|
// //@todo fix this for loop
|
|
|
|
|
|
|
|
// continue;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// // analyze only those output keys
|
|
|
|
// // analyze only those output keys
|
|
|
|
// // that were used in mixins
|
|
|
|
// // that were used in mixins
|
|
|
@ -1547,7 +1546,7 @@ public:
|
|
|
|
// << endl;
|
|
|
|
// << endl;
|
|
|
|
|
|
|
|
|
|
|
|
found_something = true;
|
|
|
|
found_something = true;
|
|
|
|
|
|
|
|
show_key_images = true;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
} // for (const pair<txout_to_key, uint64_t>& mix_out: txd.output_pub_keys)
|
|
|
|
} // for (const pair<txout_to_key, uint64_t>& mix_out: txd.output_pub_keys)
|
|
|
@ -1560,7 +1559,7 @@ public:
|
|
|
|
|
|
|
|
|
|
|
|
} // for (const cryptonote::output_data_t& output_data: mixin_outputs)
|
|
|
|
} // for (const cryptonote::output_data_t& output_data: mixin_outputs)
|
|
|
|
|
|
|
|
|
|
|
|
show_key_images = true;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
} // for (const txin_to_key& in_key: input_key_imgs)
|
|
|
|
} // for (const txin_to_key& in_key: input_key_imgs)
|
|
|
|
|
|
|
|
|
|
|
|