04:26:31 Hi 04:31:24 Hello 04:33:59 What's uo 05:06:22 Good you? 11:29:43 Hello, I would like to know what is the min amount of time for monero mining in a web browser? 11:30:32 johny_: Browser mining died half a decade ago, your are too late 11:31:03 it is not possible to mine monero with web browser? 11:32:28 johny_: You maybe able to mine with 1-2h/s, so no you can’t mine in web browser 11:32:45 what is that https://github.com/NajmAjmal/monero-webminer ??? 11:34:10 That may be the webminer that works. With an expected income of maybe 5 cents per year through browser mining. Does that sound interesting to you? :) 11:34:12 johny_: A toy to mine, but it’s ineffective 11:34:28 @rbrunner7: Maybe less than that 11:35:12 actually I want to use monero PoW for something else but maybe I should use another crypto currency 11:35:16 It was fun for web developers while it lasted 11:35:19 Randomx killed it 11:36:00 johny_: You can use randomx pow for verification, but not mining income 11:36:30 I want mining income + PoW to kill 2 birds with one stone 11:37:06 Maybe look at some other coins, but those ain’t going to make you much mullah as most of those coins are dead 11:37:53 johny_: mining income LOOOOL 11:38:04 from browser? 11:38:11 Cindy: Botnets work 11:38:26 not browser users though 11:38:58 johny_: Making money through mining for normal people with normal hardware is basically dead for a few years already. For all coins. The times where you could mine Ethereum with your GPU for maybe USD 1 per day are gone for good. 11:38:59 Cindy yeah I want to use the browser to mine crypto 11:39:23 I have a nagging feeling that dear Johny does not believe us ... 11:39:54 exactly I am not talking about a single user 11:40:06 RandomX is very inefficient on browsers 11:40:17 due to the fact that WASM doesn't have custom floating point rounding modes yet 11:40:59 Oh, you have a website with a million visitors per day, and you want to let them all mine for you? Good luck. Google will declare your website dangerous in 5 minutes or so and block it. 11:41:04 the RandomX WASM implementation you see around here uses a custom-made library that emulates the floating point rounding modes, which leads to less hashrate 11:41:33 rbrunner7: that is if the browser even lets you allocate enough memory for the dataset 11:41:41 Google does not also website that mine but it is ok for them to catch all personal data? 11:41:48 browsers cap memory allocation, and will kill your tab if you go over it 11:41:55 and the cap is not even a gigabyte 11:42:22 johny_: The world is a bad place, it's so unjust. 11:43:19 rbrunner7: ETH nowadays can only be staked by rich people 11:43:58 You should start an AI coin and then do a rugpull. Could net you millions if you are lucky. You also will be a criminal afterwards, but isn't there always a problem? 11:44:13 Role model: Trump family 11:46:26 though i will have to say, RandomX.js has improved beyond any other ports of RandomX 11:46:45 including having a WASM JIT, rather than just blindly using the very slow interpreter 11:48:33 rbrunner7 actually extranet does not need to be indexed on google 11:50:37 I mean member area stuff like that 11:53:08 I need to find out the most profitable coin to mine in a web browser 11:53:49 none 11:54:51 the algorithms that are easier for browsers (like hashcash, equihash, cryptonight) are dominated by ASICs 11:55:15 and will net you next to nothing due to the extremely high difficulty 11:56:40 is it good idea to create new crypto designed for web browser mining? I have to invent new algorithm? 11:57:10 you can modify RandomX to get rid of the floating point rounding mode operations 11:57:11 If you want coins - maybe try selling your skills/possessions for some? 11:57:44 but the problem is, your crypto will be worthless unless you sell it to exchanges or something 11:58:35 BlueyHealer you are out of topic, PoW is useful for many things but wasting cpu for nothing is a shame 11:58:49 better yet, how about you pester the WASM board to implement floating point rounding modes 11:59:09 that's the one thing that's massively slowing down RandomX in browsers 11:59:33 TBH I never even considered mining not in a dedicated application... 11:59:51 https://github.com/WebAssembly/rounding-mode-control 12:00:01 still a proposal 12:01:49 ok I will have to look at it, I don't have lots of knowledge about mining 12:02:40 if this proposal becomes apart of webassembly (and implemented by major browsers) 12:02:52 it would speed up RandomX.. a lot 12:03:09 but unfortunately as of now, you'll have to deal with like 1-2H/s 12:34:33 btw, how much do you think the guy at banmonero.com earns from his "burn address" 12:47:30 wtf is that for a page 12:48:52 After swapping on cake wallet Xmr account shows zero why ? 12:50:17 milas900: probably wait until tx confirms or something 12:50:17 it needs some confs maybe 12:50:20 yea 12:50:38 anyone know of some ACTUAL burn addresses for monero 12:50:52 It generated some new addresses when you swap . I’m afraid money goes to other addresses 12:51:24 its a sub adress maybe 12:51:31 It’s really a bug it says synchronized and shows ur litecoin as zero.. 12:51:46 klick the TX and check how many confirmations are there 12:51:54 sync is ONLY blocks SYNCED 12:51:59 it has nothing to do with confs 12:52:35 i might modify moneropy to generate an address with the public keys being 0 or something 12:53:10 Where to find the Tx 12:53:21 you swapping things and dont have a clue about things 12:53:23 milas900: monero or litecoin?? 12:53:30 next time you should read more into it maybe milas900 :P 12:53:46 Swap from ltc to xmr 12:53:59 did it give you a TXID? 12:54:03 or something to identify? 12:54:03 there is something like a "history" buttin you can click 12:54:14 button :P 12:54:23 again, cakewallet might be filtering transactions based on the number of confirms 12:54:29 just wait like 20 minutes and get back to us 12:54:35 true, i agree 12:54:41 if not, show us your TXID 12:54:49 so we can check it on our own at the blockexplorer 12:55:08 that would be super useless 12:55:08 my first swap on cake was crazy too 12:55:12 but sure :P 12:55:20 just to verify everything is ok 12:55:21 :P 12:55:31 How many confirmations are needed ? 12:55:37 10/10 maybe 12:55:46 most wallets use 10 confs 12:56:27 Ok got it thanks 12:56:32 The GUI is not friendly at all 12:57:46 i agree on that 12:57:51 are you using desktop version? 12:58:21 btcdwed: Are u developer there ? 12:58:37 no, just wondering ;D 12:58:43 Any version should be a user journey and experience where you track your money like human being 12:58:57 i dont like it too 12:59:05 Not like ur balance becomes zero and no pending or anything 12:59:23 the official monero wallet shows all transactions 12:59:28 pending, partially confirmed and confirmed 12:59:34 yea 12:59:41 cakewallet is weird 12:59:46 Cake wallet also shows 12:59:47 But slow 12:59:47 cake is just showing unblanced amount when you do something 12:59:51 its kinda confusing 13:00:04 Ur heart first stops 13:00:06 first time i thought my money is gone :P 13:00:12 Then u panic 13:00:17 true 13:00:23 Then you get a shock 13:00:25 we are here to help you 13:00:28 no shock at all 13:00:31 Then you say thanks god 13:00:36 hehe 13:01:04 Yes but in order price to shoot up developers should improve that cake wallet 13:01:15 Is it open source or what ? An issue should be opened 13:01:32 youre free to comment an issue on github etc 13:07:58 Is there a limit by the way to swap ? 13:08:14 what limit 13:15:51 the only limit is time, just relax and msg us if you still unsure in 30mins 13:15:52 :P 13:16:55 Amount I mean 13:17:10 you meant ltc to xmr? 13:17:31 Yes 13:20:10 https://docs.cakewallet.com/bugs-service-status/why_are_my_funds_not_appearing/ 13:20:53 i cant see any swapping limits @ cake 13:21:02 https://bpa.st/4JFQ 13:21:40 i made a burn address by using the public view key derived from zero, and zero as the public spend key 13:21:46 is this valid? 13:22:47 maybe i should try generating the stagenet version of this and sending some stagenet XMR 13:22:59 to test if the network doesn't freak out 13:24:54 i heard that like in some ed25519 implementations, zero causes an error in validating a signature 13:29:56 Cindy the real killer for wasm is using 2 GiB there are recent projects that do workable things for the float part 13:30:05 So you are limited to light mode 13:31:13 Use HashToPoint tbh Cindy that will get you a random point element within the curve that you don't know the discrete log 13:32:05 HashToPoint(Burn Spend Key), HashToPoint(Burn View Key) 13:32:27 hashtopoint? 13:32:31 alright alright 13:32:38 Though you might want to make a proper valid view key 13:32:45 So you can monitor burns 13:32:57 But not spend them 13:33:05 but the view key must be something that you can easily know 13:33:11 like uhh FF 13:33:17 255 as the private view key 13:33:29 or maybe all FF's 13:33:33 You can use this 13:33:40 Hash(spend key) 13:33:41 https://replaceyourboss.ai/ 13:33:45 Spend pub key* 13:34:09 It cannot be all FF 13:34:19 true i thought so too 13:34:27 It must be an element of the scalar field for ed25519 13:34:33 i could have swore i saw something like that in a ed25519 page 13:34:40 that's why i hesitated 13:35:07 Monero generates points as generators like that, for example 13:35:26 Used in all new stuff 13:41:39 https://mrelay.p2pool.observer/p/orHhys0KUlNJNTlF/1.txt (code snippet, 11 lines) 13:41:39 Result: 13:41:39 https://mrelay.p2pool.observer/p/orHhys0KUlNJNTlF/2.txt (code snippet, 4 lines) 13:42:32 Actually, right result: 13:42:32 https://mrelay.p2pool.observer/p/287kys0KRE9fTWFY/1.txt (code snippet, 4 lines) 13:43:27 that can load up a view wallet you don't know spend private key for, but can be monitored and even used to generate subaddresses 13:44:42 DataHoarder: https://bpa.st/GSKA 13:44:43 this better? 13:45:17 also wtf is that A prefix of the address you generated 13:45:27 you can't just use hash 13:45:29 Cindy: testnet 13:45:36 ah 13:45:58 you need to do mod l, where l is the scalar element modulo 13:46:08 monero already has defined methods to do this in code, I used the same on mine 13:46:22 oh so that's sc_reduce 13:46:28 it also ties spend + viewkey together 13:46:48 sc_reduce in moneropy does intToHexStr(_hexStrToInt(key) % l) 13:46:56 biased hash to point = hash_to_ec / hash_to_p3 / biased_hash_to_ec 13:46:57 which is what get_view_key calls internally 13:47:26 ScalarDeriveLegacy = sc_reduce(keccak(data)) 13:47:29 so i just call sc_reduce on the spend key? 13:47:32 you also want the domain separator 13:47:34 instead of just the view key? 13:47:43 to ensure that these keys are only generated for this context 13:47:59 which is why I made obvious the purpose of them 13:48:05 "Monero Burn Spend Key" and "Monero Burn View Key" 13:48:27 this way you only need these two strings to generate anything 13:48:40 14:47:29 so i just call sc_reduce on the spend key? 13:48:41 no 13:48:47 that means you are generating a private key lol 13:49:01 you are generating a POINT 13:49:12 that must be handled properly or learning the dlog of it allows spend 13:49:20 oh i see 13:49:31 see https://git.gammaspectra.live/P2Pool/consensus/src/branch/master/monero/crypto/generators.go 13:49:46 this is how monero generates points when it must be infeasible to learn dlog 13:50:02 "HopefulHashToPoint" is keccak(point 13:50:05 but this fails 7/8th of the time :D 13:50:13 wtf is unbiased 13:50:17 is it usually biased 13:50:30 BiasedHashToPoint is what is used in monero key images 13:50:33 ah 13:50:34 unbiased is new one for carrot/FCMP++ 13:50:59 i'm talking about the original cryptonote 13:51:02 not really carrot yet 13:51:08 that's HopefulHashToPoint 13:51:13 and BiasedHashToPoint 13:51:14 oh 13:51:33 BiasedHashToPoint uses elligator2 13:51:38 which is the ge_fromfe_frombytes_vartime 13:51:48 just uncommented, unexplainded 13:52:04 kayabanerve went through the effort of reverse engineering it and making a proper impl of it 13:52:43 https://monero.stackexchange.com/questions/10780/how-does-one-burn-and-provide-a-proof-of-burn-in-monero 13:52:48 nvm, someone else did it 13:53:01 unless this is too old 13:53:11 because it says something about the generator being different nowadays 13:54:04 that's the hopeful one 13:54:12 for GeneratorH 13:54:29 key images did use BiasedHashToPoint which is what you want 13:55:07 new ones like Bulletproof / Bulletproof+ used BiasedHashToPoint https://git.gammaspectra.live/P2Pool/consensus/src/branch/master/monero/crypto/ringct/bulletproofs/generators.go 13:55:18 (yes, I have implemented them!) 13:55:33 moneropy is lacking 13:55:42 though bulletproof uses BiasedHashToPoint(Keccak(data)) lol 13:55:42 i can't find any hash to point generators 13:55:48 which ends up with double keccak 13:55:59 https://github.com/bigreddmachine/MoneroPy ? 13:56:07 yes 13:56:13 8 years old lol 13:56:16 lol 13:56:17 i know 13:56:24 probably before RingCT and bulletproof and shit 13:56:56 the other monero python library is just a glorified RPC library 13:56:58 key images? 13:56:59 and not useful 13:57:01 does it handle that? 13:57:15 well, you can make C code that uses Monero's function to generate keys 13:57:15 no 13:57:30 then just import keys in hex to moneropy 13:57:48 moneropy and not https://github.com/monero-ecosystem/monero-python ? 13:57:57 monero-python is the RPC library i'm talking about 13:58:21 moneropy implements the stuff behind monero.. at least the monero of 8 years ago 13:58:27 lol yeah 13:58:29 they hardcoded H 13:58:57 just use my consensus library :') 13:59:14 well unfortunately i can't use go in a interpreter :P 13:59:17 finding stuff half implemented or old is why I ended up just doing it in-house 13:59:26 it doesn't make it easy to mess around with monero crypto stuff 13:59:27 actually you can! 13:59:32 btw I support TinyGo as well 13:59:58 Cindy: just generate elsewhere, small C program linking to monero (or mine) 14:00:00 then import keys 14:00:58 why not mininero? 14:01:16 https://github.com/monero-project/mininero/blob/master/mininero.py#L238 14:01:29 that has hashToPointCN :D 14:01:40 which is biased hash to point 14:01:46 y'know 14:01:47 9 years old ofc :P 14:01:48 why not that 14:03:22 can i like borrow your code :P 14:06:59 feel free :D 14:07:29 you'll need to make all the cryptographic base if your libraries don't have that, ofc 14:07:59 https://git.gammaspectra.live/P2Pool/consensus/src/branch/master/monero/crypto/curve25519/elligator.go 14:08:04 ^ this needs field Elements to work with 14:08:15 isn't elligator a FCMP++ thing? 14:08:28 nope 14:08:32 it was always what it was running hash_to_point 14:08:34 shit i'm dumb 14:08:49 https://github.com/monero-oxide/monero-oxide/pull/33 14:09:09 https://github.com/monero-project/research-lab/issues/142 14:09:49 what Carrot / FCMP++ do is define an unbiased hash to point 14:10:00 which runs elligator2 twice 14:10:02 and merges them 14:10:31 see https://git.gammaspectra.live/P2Pool/consensus/src/branch/master/monero/crypto/hash.go#L108-L156 14:10:33 likes 108 to 156 14:10:57 y'know i feel like i understood SOME of this :P 14:11:14 definitely will read more about the point generators 14:11:36 well this is hash (blob of data, uniformly sampled) to point 14:11:41 generator is a different term 14:12:02 point.. converters? 16:54:38 Wow my last txn got 10 confirms in <5mins never seen that speed before 16:58:27 Havent been spending enough 17:00:47 Wdym 17:22:30 see recent blocks :) https://blocks.p2pool.observer/ 17:51:01 DataHoarder: don't forget bp+ uses biasedhashtopoint for its domain-separation-tag for God knows what reason 17:51:20 oh right 17:51:22 I complained about that 17:51:24 double keccak and that domain tag 17:52:21 not only that but it also does Keccak(Keccak( 17:52:51 Also the transcript does Keccak -> sc_reduce32 -> Keccak -> sc_reduce32 17:52:53 Also, DataHoarder, sqrt can be implemented with inverse for Ed25519 for a minor performance benefit. I don't think the theoretical optimization is realizable, but if you are going through the weeds, you may want to try. 17:52:54 such a waste 17:53:05 I did that already 17:53:21 It's on my fork :) 17:53:47 Yes, I wrote the function as accepting 32-bytes because every call site did and it was the simplest way to invoke at-time-of-use as points are so literally defined, but that inadvertently introduces the requirement the value is hashed before it's hashed even moving forward... 17:54:23 While that requirement isn't currently in consensus, my work on it post-dates the decision of our last hard fork, it do be a quirk 17:55:29 Have a link/any insight into the practical performance benefit? 17:57:00 hmm, actually, on Ed25519 FE Sqrt is implemented as pow 2^252-1 with an addchain 17:57:21 err 17:57:56 not exactly, and I noticed a typo on the function naming on original as well 17:58:37 https://git.gammaspectra.live/P2Pool/edwards25519/src/branch/main/field/fe.go#L354 Line 354 is how Sqrt is implemented 17:59:29 Invert is implemented similarly 18:01:20 most of the performances I went for on my libraries was explicitly adding precomputation of point in ScalarMult, and then also adding vartime alternatives for verification 18:01:27 (I have done the same on helioselene one now) 18:02:21 Do you have paper/information on implementing Sqrt from Inverse? As otherwise it's addchains that I have 18:04:52 note most of my edwards25519 implementation comes from https://github.com/FiloSottile/edwards25519 which is what the Go cryptographer maintained in std (though extracted here with a bunch more things)