If I enter a transaction no. (not trx id) in a site like blox.supportXMR.com I see first of all 2 outputs with amounts of 0. Then below I see 2 inputs that are broken down into groups of "stealth" addresses. Each of the 2 groups have an amount indicated. I am trying to figure out what input and output actually mean and why input has amounts and output does not (I thought amounts would not show anywhere now). Also, it seems that mixin level cannot be determined on a blockexplorer. It seems that whatever mixin I use, it shows 2 outputs. Thanks.
1 Answer
I'm not sure if you understand the CryptoNote protocol sufficiently. If not, the whitepaper should probably be the first resource for you to consult with.
RingCT was first published in MRL-0005, but some of the details are different in the current implementation.
I have made several posts trying to understand (and explain) how RingCT works:
I hope these posts are helpful to you. Anyway, I try to answer your questions below. Let's take the following transaction as an example:
I see first of all 2 outputs with amounts of 0.
These are 2 new outputs created in this transaction. Their amounts are 0 because they are in the RingCT format.
Then below I see 2 inputs that are broken down into groups of "stealth" addresses. Each of the 2 groups have an amount incidated.
This example transaction has 4 inputs, and their amounts are indicated (0.7, 0.02, 0.005, 30.0) since they are in the pre-RingCT format.
I am trying to figure out what input and output actually mean and why input has amounts and output does not (I thought amounts would not show anywhere now).
The reason why the inputs have nonzero amounts and the outputs have zero amounts is because this transaction is converting pre-RingCT outputs to RingCT outputs. Another example below is a RingCT-to-RingCT transaction, so all the amounts are zero on both inputs and outputs:
Also, it seems that mixin level cannot be determined on a blockexplorer. It seems that whatever mixin I use, it shows 2 outputs.
The mixin level is indicated by the number of keys in each of the groups. In the above two examples, the mixin are 3 and 2, respectively. Typical RingCT transactions have two outputs, one going to the payment destination and the other going to yourself as the change.
-
Thank you. Very good answer. I understand the amounts now, but I'm still unsure what "inputs" and "outputs" actually are. Is the answer in the links you posted?– pl55Commented Jan 13, 2017 at 13:12
-
Inputs and outputs are just like inputs and outputs in Bitcoin (I hope you're familiar with it). One key difference is that each input is not just one public key like in Bitcoin but a set of public keys of which only a single key is actually being spent (called ring signature). I'd strongly recommend reading the CryptoNote whitepaper more thoroughly, in particular Sections 4.2, 4.3, 4.4, because truly understanding the protocol is essential for proper use of the currency.– kenshi84Commented Jan 13, 2017 at 14:46
-