-
m-relay
-
m-relay
-
m-relay
-
m-relay
<oieieio1:matrix.org> I recently watched a Monero podcast where kaya shared some insightful thoughts about Monero's potential future. It got me thinking about quantum resistance and how it might need to be addressed sooner than we expect.
-
m-relay
<oieieio1:matrix.org> I have some experience working with quantum circuits and testing. In the past, I've written some code for brute-force methods before exploring Shor's algorithm. As we move closer to the era of practical quantum computing, it might be worthwhile to set up a basic framework to start testing quantum resistance for cryptocurrencies like Monero.
-
m-relay
<oieieio1:matrix.org> What are your thoughts on this? Has anyone else explored quantum-resistant algorithms or started experimenting in this space?
-
m-relay
<rucknium:monero.social> OIEIEIO: Have you read
monero-project/research-lab #131 ?
-
m-relay
<rucknium:monero.social> Post-quantum issues will be on the next MRL agenda, which is in almost exactly 24 hours (January 1, 17:00 UTC). You are free to join and participate. You can also discuss now, of course :)
-
m-relay
<oieieio1:matrix.org> some sample testing code for brute force elliptic curve cryptography
-
m-relay
<oieieio1:matrix.org> ```import concurrent.futures
-
m-relay
<oieieio1:matrix.org> import random
-
m-relay
<oieieio1:matrix.org> from time import time
-
m-relay
<oieieio1:matrix.org> # Define elliptic curve parameters
-
m-relay
<oieieio1:matrix.org> P = 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFC2F # Large prime modulus
-
m-relay
<oieieio1:matrix.org> A = 0
-
m-relay
<oieieio1:matrix.org> B = 7
-
m-relay
<oieieio1:matrix.org> BASE_POINT = (55066263022277343669578718895168534326250603453777594175500187360389116729240,
-
m-relay
<oieieio1:matrix.org> 32670510020758816978083085130507043184471273380659243275938904335757337423221) # Secp256k1 base point
-
m-relay
<oieieio1:matrix.org> # Modular addition
-
m-relay
<oieieio1:matrix.org> def modular_add(a, b, p):
-
m-relay
<oieieio1:matrix.org> ```
-
m-relay
<oieieio1:matrix.org> import random
-
m-relay
<oieieio1:matrix.org> from time import time
-
m-relay
<oieieio1:matrix.org> # Define elliptic curve parameters
-
m-relay
<oieieio1:matrix.org> P = 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFC2F # Large prime modulus
-
m-relay
<oieieio1:matrix.org> A = 0
-
m-relay
<oieieio1:matrix.org> B = 7
-
m-relay
<oieieio1:matrix.org> BASE_POINT = (55066263022277343669578718895168534326250603453777594175500187360389116729240,
-
m-relay
<oieieio1:matrix.org> 32670510020758816978083085130507043184471273380659243275938904335757337423221) # Secp256k1 base point
-
m-relay
<oieieio1:matrix.org> # Modular addition
-
m-relay
<oieieio1:matrix.org> def modular_add(a, b, p):
-
m-relay
<oieieio1:matrix.org> ```
-
m-relay
<oieieio1:matrix.org> import concurrent.futures
-
m-relay
<oieieio1:matrix.org> import random
-
m-relay
<oieieio1:matrix.org> from time import time
-
m-relay
<oieieio1:matrix.org> # Define elliptic curve parameters
-
m-relay
<oieieio1:matrix.org> P = 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFC2F # Large prime modulus
-
m-relay
<oieieio1:matrix.org> A = 0
-
m-relay
<oieieio1:matrix.org> B = 7
-
m-relay
<oieieio1:matrix.org> BASE_POINT = (55066263022277343669578718895168534326250603453777594175500187360389116729240,
-
m-relay
<oieieio1:matrix.org> 32670510020758816978083085130507043184471273380659243275938904335757337423221) # Secp256k1 base point
-
m-relay
<oieieio1:matrix.org> # Modular addition
-
m-relay
<kayabanerve:matrix.org> OIEIEIO: We're not really going to benefit from writing programs from Quantum Computers
-
m-relay
<kayabanerve:matrix.org> The plan isn't to move Monero to a QC, and it's already decently understood how a QC will impact Monero. The only reason to actually write programs for a QC would be for real-world benchmarks of attacks but we don't have access to top of the line QCs, so we can't actually get those benchmarks.
-
m-relay
<kayabanerve:matrix.org> We really can keep everything on paper.
-
m-relay
<oieieio1:matrix.org> understood
-
m-relay
<oieieio1:matrix.org> just thinking...possible proposed Seraphis exploit 1
-
m-relay
<oieieio1:matrix.org> ```# ElGamal encryption
-
m-relay
<oieieio1:matrix.org> def elgamal_encrypt(P, private_key, random_value, p):
-
m-relay
<oieieio1:matrix.org> C1 = scalar_multiply(P, random_value, p) # Commitment to random value
-
m-relay
<oieieio1:matrix.org> C2 = point_add(scalar_multiply(P, private_key, p), scalar_multiply(P, random_value, p), p) # Public key + randomness
-
m-relay
<oieieio1:matrix.org> return (C1, C2)
-
m-relay
<oieieio1:matrix.org> # ElGamal decryption (for testing purposes)
-
m-relay
<oieieio1:matrix.org> def elgamal_decrypt(C1, C2, private_key, p):
-
m-relay
<oieieio1:matrix.org> return point_add(C2, scalar_multiply(C1, -private_key, p), p)
-
m-relay
<oieieio1:matrix.org> ```
-
m-relay
<kayabanerve:matrix.org> OIEIEIO: That is nonsensical. There's no exploit there, solely an invalid implementation of ElGamal, which Seraphis doesn't use, and even if it did use, there's no exploit unless that was the code deployed (as it's invalid)
-
m-relay
<kayabanerve:matrix.org> Oops, sorry, I repeated my point about there not actually being an exploit posited twice
-
m-relay
<oieieio1:matrix.org> hang on let me clear things up. I'm not suggesting any any exploits exist nor any QC use for monero. It was just an example of some research, just thoughtful share
-
m-relay
<kayabanerve:matrix.org> "possible proposed Seraphis exploit 1"
-
m-relay
<kayabanerve:matrix.org> Saying that, then inlining an invalid implementation of irrelevant cryptography, is why I responded as bluntly as I did.
-
m-relay
<oieieio1:matrix.org> apologies for any other interpretation . Pre lude said "just thinking" I was just thinking.
-
m-relay
<kayabanerve:matrix.org> I'm not trying to say you shouldn't discuss research here. I'm saying that isn't research.
-
m-relay
<kayabanerve:matrix.org> If you actually want to discuss research, you need a new approach, such as never listening to LLMs about cryptography.
-
m-relay
<kayabanerve:matrix.org> They can't even do something as basic as ElGamal correctly.
-
m-relay
<oieieio1:matrix.org> ok kaya, I'll keep things to myself, did not mean to cause any interruptions
-
m-relay
<kayabanerve:matrix.org> *oh, sorry, I'm unsure if you used an LLM. I thought that was prior stated but I don't see that upon double checking. That's my assumption but I don't want to state it as fact.
-
m-relay
<kayabanerve:matrix.org> OIEIEIO: I'm not asking you not to participate.
-
m-relay
<kayabanerve:matrix.org> Let's put it this way. What are you trying to do/how are you trying to participate?
-
m-relay
<oieieio1:matrix.org> I have 10+ years in cryptography before the 1990, you can do the math, thought that might be helpful, but with that said I am quite busy so thank you for your time.
-
m-relay
<syntheticbird:monero.social> bro was in cryo-stasis between between 90 and 24 somehow
-
m-relay
<oieieio1:matrix.org> kinda when you can't talk about
-
m-relay
<oieieio1:matrix.org> good day fellas Happy New Year, all the best