-
yyx
are there any reasonably sane estimates how much of the Monero hashrate is centralized/commercial/industrial vs. residential?
-
yyx
or at least some upper/lower bounds?
-
yyx
-
yyx
stats like this establish some bounds but again we don't know who's in these pools
-
yyx
I'm sure someone has done thinking on this?
-
Rucknium[m]
y: This belongs more in #monero-research-lounge:monero.social
-
rbrunner
Elijah[m], hyc: Thanks for the tips. I could have sworn I had seen other, previous instances of `time_t` in the RPC interface, but you are right, it uses uint64_t
-
rbrunner
I will switch to that as well
-
Elijah[m]
It took me hours to find that btw...
-
Elijah[m]
s/It took me hours to find that btw.../It took me hours to figure it that out btw.../
-
rbrunner
Hmmm. I hope you were rewarded by learning some things? :)
-
rbrunner
I am thankful you did find it out, I was so convinced that `time_t` is the way to do it in the RPC interface, that could have taken a long time for myself to find out.
-
Halver[m]
<Rucknium[m]> "Those big guys should write a..." <- We see this pattern quite regularly.
-
Halver[m]
There are some features which have truly **nothing** to do at the protocol level and can and should be implemented at the application level.
-
Halver[m]
But yet peoples from the application level often ask, sometimes successfully, to have the feature done at the protocol level.
-
Halver[m]
It's understandable (better another than me coding the thing) but in the long run putting too much application specific things in the protocol level does not really help the project.
-
ErCiccione
I try again: i've been working on stopping most of my volunteers contributions to the Monero project. This includes managing weblate's backend (translate.getmonero.org). I already asked the core team to find somebody else for the job, but i haven't received any answer. Now i ask them again to find somebody willing to take care of it (translations repositories management - like pushing strings-, management of weblate, management of the box, etc).
-
ErCiccione
I'm still taking care of it, but i will not do it indefinitely. At one point i'll just stop. Note that the result would be the entire translations process to be stuck until somebody else takes over. I once again ask core to consider the issue and to contact me so we can find a replacement.
-
ErCiccione
luigi1111 binaryfate fluffypony ^
-
spirobel[m]
There is currently no way to sign something against subaddresses, am I right?
getmonero.org/resources/developer-guides/wallet-rpc.html#sign so using this feature and not linking accounts would mean that you would need to have multiple addresses?
-
spirobel[m]
s/addresses/wallets/
-
spirobel[m]
*wallets
-
moneromoooo
I think I added this not too long ago.
-
moneromoooo
Vague recollection...
-
spirobel[m]
<moneromoooo> "I think I added this not too..." <-
github.com/monero-project/monero/bl…python-rpc/framework/wallet.py#L709 github.com/monero-project/monero/bl…ts/functional_tests/sign_message.py I found these tests. It seems like subaddresses are mentioned in there. Seems like its possible but not documented in the user guide.
-
spirobel[m]
Although I am still confused what ``` 'account_index': account_index,
-
spirobel[m]
'address_index': address_index, ``` is and how it relates to subaddresses. Guess I have to read more about subaddresses haha
-
moneromoooo
A subaddress is a 64 bit number, with 32 interpreted as "account" and 32 as "alias within this account".
-
moneromoooo
And a special case override for 0,0 using the standard address instead, for backward compatibility.
-
moneromoooo
s/alias/address alias/
-
moneromoooo
So default is 0,0. If you run "address new", you'll get 0,1, then 0,2, etc.
-
moneromoooo
Creating a new account in the same wallet will get you 1,0.
-
spirobel[m]
moneromoooo: ahh okay. And account is something similar to how people use bank accounts atm? Like having a checking account, a savings account, etc? Its just like a convenience for user, right?
-
spirobel[m]
* convenience for the user, right?
-
moneromoooo
I think so.
-
moneromoooo
You can also use it to assign an account per customer, if you're a merchant.
-
spirobel[m]
moneromoooo: but wallets dont need to implement this feature necessarily, right? they could just hide the concept under the hood and just use 0,X all the time.
-
moneromoooo
Yes.
-
spirobel[m]
I am still a bit confused by the api. In most cases the other side would ask for signing a message that only has the subaddress. So there is a need to go from subaddress -> to account index and address index. Is there an easy way to do this?
-
moneromoooo
Yes, you get that info in the RPC reply when you receive monero.
-
selsta
rbrunner: did you solve your issue?
-
binaryFate
ErCiccione: I thought netrik182 was moving to that role? Anyway why not put that call to the community at large, I don't see it as being core team role to go out there and find/hire someone for various roles.
-
spirobel[m]
<moneromoooo> "Yes, you get that info in the..." <- hm...but what if I never receive monero? I want to use monero addresses to sign into websites by signing these messages. I have an idea but I dont know if its good. I would be glad to hear your take.
-
-
spirobel[m]
in the current monero gui wallet it seems like its not possible to sign with subaddresses. only with with the primary account.
-
moneromoooo
Well, you already know those in that case, no ?
-
moneromoooo
Or if you mean:
-
rbrunner
selsta: Thanks, yes, thanks to Elijah[m] it compiles now also for MacOS, after avoiding `time_t` in the RPC interface.
-
moneromoooo
Alice makes a website where people can register addresses and later on login by signing, then.. hmm, not sure, let me have a look :)
-
moneromoooo
Ah, verify doesn't take these as input. So I'm not sure what you think you're missing.
-
ErCiccione
<binaryFate> "ErCiccione: I thought netrik182..." <- binaryfate: You are misunderstanding. Netrik182 is taking care of the translations and things on weblate, but doesn't have access to the backend. The backend is managed by core and access to that box is sensitive, especially because the maintainer needs admin permissions, like i have. I assumed core want to choose who has critical access to their infrastructure. If that's not a concern, i'll
-
ErCiccione
just ask pigeons to give access to netrik if he is willing to also take care of that side of things
-
ErCiccione
I also don't think that's a role that makes sense from random people "from the community as large" as you suggest
-
spirobel[m]
<moneromoooo> "Ah, verify doesn't take these as..." <- I mean verify takes a public address. I think it would be more straightforward if verify and sign had the same function signature. Its a bit of extra work to turn the address into account + index to do the signing.
-
Elijah[m]
<spirobel[m]> "I mean verify takes a public..." <- I'm just curious, what happens when you supply verify a subaddress? Does it fail? I'd try first before asserting that a public address definition does not include subaddress.
-
spirobel[m]
Elijah[m]: I was talking about the signing function not the verify
-
spirobel[m]
but you are right. I should be investigated if it works with subaddresses. I just assumed it does.
-
Elijah[m]
Well signing would be down with the private key I'd assume
-
spirobel[m]
s/I/It/
-
Elijah[m]
s/down/done/
-
binaryFate
ErCiccione: ok thanks for clarification. Let's take that to translation channel, probably offtopic here
-
Elijah[m]
Btw for anyone wondering, the message can only be signed be linked to the original public address. I tried it myself on the Gui.
-
Elijah[m]
spirobel I think what you could try to do is create wallets based on the original seed and using the domain as an offset for the seed.
-
moneromoooo
I would not use the GUI to determine what can and cannot be done, it doesn't update as soon as new stuff gets added.
-
selsta
moneromoooo: not sure how available you are, but is this expected behaviour with ringdb?
monero-project/monero-gui #3733
-
moneromoooo
Yes.
-
moneromoooo
That's the whole point of the ringdb.
-
moneromoooo
Whether the tx is sent to the txpool or not is not relevant, unless I'm shown why it is.
-
moneromoooo
If it were to select new fake outs if the tx was not sent to the txpool, it'd open a trivial attack if the dameon is not yours: fail once, but not twice. Then you know which outputs are the real ones.
-
moneromoooo
The ringdb could be disabled with --trusted-daemon though.
-
moneromoooo
Though I'm sure some poeple would add --trusted-daemon with untrusted dameons so...
-
selsta
thanks, posted your reply on the issue
-
hitomifujiko[m]
hey parrrtaaayy people
-
hitomifujiko[m]
i have some questions about block verification, more so of the function handle_block_to_main_chain in blockchain.cpp
-
hitomifujiko[m]
from my digging this function essentially checks all the crap of a given block, like its weight, reward etc and thats all fine and dandy
-
hitomifujiko[m]
what im having issue with is, im trying to find where it verifies the merkle root thats in the block hashing blob
-
hitomifujiko[m]
now theres this function, get_block_hashing_blob in cryptonote_format_utils.cpp that basically smacks the merkle root + the tx length at the end of the block hashing blob and thats been pretty helpful for me to understand how all of these objects are constructed (get_block_hashing_blob is also called in a variety of functions like get_object_hash, etc)
-
hitomifujiko[m]
but ive yet to find, or at least maybe im just stupid and overlooked it, anywhere that verifies the blob block hash info and the merkle root by extension
-
hitomifujiko[m]
i was looking for something neat and clean like check_merkle_root_from_block_blob (if only ahahahahah) but it doesnt seem like theres anything like that, which leads me to believe that im misunderstanding how its verified in the first place
-
hitomifujiko[m]
anyway, thats whats been in my pot and if anyone can help me with this it would be greatly appreciated!!!
-
sech1
Check get_tx_tree_hash() in src/cryptonote_basic/cryptonote_format_utils.cpp and tree_hash() in src/crypto/tree-hash.c
-
hitomifujiko[m]
Merci merci, i will look at that now
-
hitomifujiko[m]
sech1: Isnt that function just used essentially once in get_block_hashing_blob to calculate the merkle root?
-
hitomifujiko[m]
If im understanding this correctly, does that mean that get_block_hashing_blob is the function used to verify the merkle root on a given incoming block?
-
hitomifujiko[m]
I think I may be misunderstanding the syncing process, when a node recieves a block does it also get the completed block hash blob or is that all done client side when verifying the incoming block?
-
hitomifujiko[m]
If the latter, that would make much more sense as im trying to understand how all this works step by step
-
-
Siren[m]
Is this normal? It seems like wallet rpc starts all over after it's done syncing.
-
Siren[m]
It has been going on for hours now
-
hitomifujiko[m]
thats odd...does it have the latest height of the chain or does it just hang on there? are the other rpc functions of the wallet accessible?
-
Siren[m]
json rpc is completely unreachable
-
hitomifujiko[m]
thats certainly strange, your using the latest release right?
-
Siren[m]
I am not sure if that's the latest height of chain
-
hitomifujiko[m]
personally i havent used the rpc wallet in a while or looked at its code to help you out too much
-
hitomifujiko[m]
-
Siren[m]
hitomifujiko[m]: its version is `Monero 'Oxygen Orion' (v0.17.2.3-unknown)`
-
hitomifujiko[m]
Ya it seems like your at the highest height...have you tried re-syncing and completely deleting your blockchain folder?
-
hitomifujiko[m]
Siren[m]: thats also the latest, hmmmm
-
hitomifujiko[m]
if you havent already i would try resyncing, sometimes things just get fucky wucky and a restart can help
-
Siren[m]
hitomifujiko[m]: where is the foler?
-
Siren[m]
s/foler/folder/
-
hitomifujiko[m]
Im guessing your on a linux system, iirc its usually /home/.bitmonero
-
hitomifujiko[m]
or /home/.monero
-
Siren[m]
ah that
-
hitomifujiko[m]
its a hidden folder its either in home or the directory you started wallet-rpc/monerod (usually home folder tho)
-
hitomifujiko[m]
On windows its somewhere in %appdata% iirc if anyone needs that
-
Siren[m]
I don't think it is persistent for me in the first place as it's running within docker without a volume or anything
-
hitomifujiko[m]
ah i see, ive never used docker personally so i cant speak to that
-
hitomifujiko[m]
but if its not persistent and you resync each time you reset the instance or whatever, does it still do this?
-
Siren[m]
unfortunately it seems like it does
-
hitomifujiko[m]
hmmm well like i said i dont have a whole lot of experience with wallet-rpc and its code, but it would be good to set your wallet-rpc instance to the highest log level and grab a log file of the whole process, im sure someone here would be interested in taking a look at it since that would be the smoking gun
-
hitomifujiko[m]
if you do send it here ill take a look at it but im kinda dumb as you can see from my merkle root woes earlier ahahaha
-
hitomifujiko[m]
when i get some time, i might investigate that Pulling blocks, start_height line you have there, im sure theres something relevant in the codebase around there to your issue
-
-
Siren[m]
Here are the logs
-
Siren[m]
<hitomifujiko[m]> "if you do send it here ill..." <- Now it's going to be pretty funny if I missed something very obvious in the logs after you've said this
-
Siren[m]
It was running perfectly fine weeks ago : (
-
selsta
Siren[m]: some docker misconfiguration maybe? if it can't save the wallet cache it would probably restart to sync the next time you open the wallet
-
Siren[m]
Yes, but it has been going on for a few days. Can you confirm that the log output in the image is normal?
-
Siren[m]
* few days. After my restart earlier today, it's still the same. Can you
-
Siren[m]
* or anything (only the wallet file and its keys are in a volume).
-
Siren[m]
Is there such thing as a bad wallet file? I tried opening the same wallet using monero-wallet-gui and got 100% load. I had to kill the processes.
-
selsta
it should not happen but possible
-
selsta
but I didn't hear about this issue before