Reuse of output key P=H(rA)G+B
(which effectively burns fund) could potentially occur if the same random r
was used in multiple transactions to transfer fund to the same recipient (A,B)
, most likely due to the use of bad pseudorandom number generator. Is it feasible to introduce an additional checking step so that the second transfer reusing the same P
simply gets bounced, pretty much like how key images are checked to prevent double-spend? I heard somewhere that output keys are stored in an array instead of a hash table; will this make the situation a lot harder than it is with key images?
P.S. This question arose in the context of the possibility of one-time receiving address, a nice bonus that provides privacy even outside the blockchain and can be easily implemented if this reuse checking is available.