-
isthmusHah that's a very good question @tevador
-
isthmusI haven't thought about that
-
isthmusHow was it handled when RingCT was rolled out?
-
gingeropolousa seraphis enote can use ringct outputs as inputs, right? just as it can use seraphis enotes as inputs. for a time, could there be a blend of inputs allowed?
-
gingeropoloussorry, i think the proper phraseology would be "a seraphis tx can use ringct outputs as inputs"
-
UkoeHBYes
-
moneromoooThere was no such issue with rct. A pre-rct output can be used as a rct output with a known mask.
-
moneromoooAnd it looks like the same applies for seraphis, given hte few lines above ?
-
moneromoooCan it also use pre-rct outputs the same way ?
-
UkoeHBmoneromooo: that’s the plan
-
tevadorUkoeHB: CMIIW, but the Seraphis composition proof cannot be constructed for RingCT outputs due to a different key format, so you cannot have RingCT decoys when spending a Seraphis output
-
tevadorwell, technically you can have RingCT decoys, but it's clear they are just decoys, so they are useless
-
dEBRUYNEtevador: I don't think we ever applied such an approach (e.g. the output pool was reset for RingCT)
-
dEBRUYNEAnd I think for Bulletproofs as well
-
tevadorYes, a post-Seraphis TX input can be either CLSAG with all RingCT ring members or Seraphis with all Seraphis ring members. Outputs are always Seraphis outputs.
-
tevadorThe point was that you cannot mix the decoys, so we need a new DSA for RingCT outputs that will be spent post-Seraphis.
-
dEBRUYNERight
-
moneromoooI *think* that is implicit for pre-rct. The pick is based on output index, so if there are very few new pre-rct outs, the picking automatically "skews" into the past.
-
tevadorI checked the code. We use a triangular distribution for pre-RCT outputs placed at the last existing output of the given value.
-
tevadorOne option would be to use an approximate gamma tail distribution: johndcook.com/blog/2021/11/06/gamma-tail-estimate