-
UkoeHB
sgp_: yes, it is just recording/displaying more information related to txs you construct
-
dangerousfreedom
Is it possible to construct a pre-RingCT transaction using the v0.17 software?
-
moneromooo
Yes.
-
moneromooo
Well... kinda depends how you define pre-ringct...
-
dangerousfreedom
But should I have the key of that transaction? How could I do it?
-
dangerousfreedom
If I want to run my private testnet
-
dangerousfreedom
Is it possible still to create these pre-RingCT transactions?
-
moneromooo
Define "pre-ringct" first.
-
dangerousfreedom
I want to create a similar transaction as in block 110
-
moneromooo
You can definitely use pre-ringct inputs (ie, amount is known).
-
moneromooo
But I think the outputs have to rct. So in that case, the answer is no.
-
moneromooo
I'm just not 100% sure. Though my certainty is growing as I think of it.
-
dangerousfreedom
So to do that I would need the v0.9 software, right? Could I use the testnet back then?
-
moneromooo
Sure. It'll stop syncing when it starts being confused by newer txes. At this point, just mine yourself.
-
moneromooo
(and then pop those txes once you're done and want to continue syncing with a newer version)
-
moneromooo
s/txes/blocks/
-
dangerousfreedom
Ok. Thank you moneromooo! Im trying to compile but I'm getting a lot of errors in the libraries
-
jberman[m]
moneromooo: sweep_unmixable will construct pre-rct outputs that pass today I'm like 95% sure
-
jberman[m]
-
jberman[m]
-
jberman[m]
I haven't looked deep enough to see if it's their "unmixability" that lets them pass
-
dangerousfreedom
I think I'm giving up for today. I'm too stupid to correct the compilation errors on v0.9. I believe I am using my shared libraries and there may be some incompatibilities with the software back then. Is there a good README or a command that would help me create the necessary static libraries to use only for the monero v0.9?
-
jberman[m]
my advice would be to use the latest version instead, and adjust hard fork versions based on what you're trying to test here:
github.com/monero-project/monero/bl…src/hardforks/hardforks.cpp#L77-L97
-
jberman[m]
that's what I do
-
jberman[m]
these instructions for setting up a local testnet also valuable:
github.com/moneroexamples/private-testnet
-
dangerousfreedom
Ok. But do you think that I could create a private testnet and still construct a pre-RingCT transaction with it? I know that the code for constructing those transactions are still there. I dont know if there are used though.
-
jberman[m]
yep, if you start a local private testnet from scratch and start using the wallet normally, you have until block 624634 until the next hard fork. I forgot which version introduced ringct as default
-
dangerousfreedom
Ok. Yeah, that might be the best solution! Thank you jberman!
-
jberman[m]
i.e. the wallet will automatically create pre-rct tx's to start
-
jberman[m]
np :)
-
dangerousfreedom
<jberman[m]> "np :)" <- I am able to debug now. I have started my testnet as suggested in the tutorial and I am able to enter in the check_ring_signatures using gdb :)
-
dangerousfreedom
I have found some really weird things though
-
moneromooo
Ah yes, that was it, thanks jberman[m].
-
dangerousfreedom
Two points:
-
dangerousfreedom
1) On the real blockchain, the first transactions that I found were always using the same amount in the rings. But the transactions I created with my wallet, they had members with different amounts. (I dont know if the code changed from v0.9 to 0.17 so to allow different amounts in the ring). It is strange because the wallet doesnt create a possible transaction at first. I had to try several times so the algorithm would
-
dangerousfreedom
find an appropriate ring to build my transaction. Like here:
-
dangerousfreedom
[wallet 9wviCe]: transfer 4 A2rgGdM78JEQcxEUsi761WbnJWsFRCwh1PkiGtGnUUcJTGenfCr5WEtdoXezutmPiQMsaM4zJbpdH5PMjkCt7QrXAhV8wDB 10... (full message at
libera.ems.host/_matrix/media/r0/do…3f224e24426c3130e46a8371493029359dd)
-
dangerousfreedom
2) I made a transaction where the amounts dont match. The outputs are different from the inputs. My miner with difficulty 1 accepted.
-
dangerousfreedom
-
moneromooo
Rings members must have the same amount. Ringct outputs are deemed to all have the same amount for this purpose. If this isn't hte case, it's a bug. If such a tx verifies fine, it's a wtf bug.
-
dangerousfreedom
Ooops sorry
-
dangerousfreedom
I take back statement 2. I dint consider the fees
-
dangerousfreedom
But statement 1 is clear. I made at least 5 times now.
-
dangerousfreedom
The ring members dont have the same amount
-
moneromooo
Does it verify fine ?
-
dangerousfreedom
Yes. I think so.
-
dangerousfreedom
Looks like the transaction above
-
moneromooo
Did you make changes to the verification code ?
-
dangerousfreedom
Can you see it? I dont know if my paste is working
-
dangerousfreedom
moneromooo: I dont think so. I have just inserted a line to print some text.
-
moneromooo
I can see your pastes. Just to make sure (sorry if this is obvious): different rings in a tx can have different amounts. You're sure you're not confusing these things ?
-
moneromooo
ie, for the first ring in your paste:
-
dangerousfreedom
Hahaha yeah, I'm stupid. My bad. They are not different member but they are different rings :p
-
dangerousfreedom
Sorry for that. Everything is working fine haha
-
moneromooo
It has amount 7000000000000, and ring members 2, 2+34, 2+34+3, 2+34+3+16.
-
dangerousfreedom
Ok. Thank you. And sorry for my stupidity. I am pretty confident now that I can debug the code and better understand whats happening to create my python tools. I believe that playing on the testnet will be the closest thing I will have to verify these transactions as I will never be able to go to the past and run v0.9 again :p So, I will be pretty satisfied if I can check in the testnet and then just apply my code in the
-
dangerousfreedom
mainnet :)