sipa changed the topic of #bitcoin-wizards to: This channel is for discussing theoretical ideas with regard to cryptocurrencies, not about short-term Bitcoin development | http://bitcoin.ninja/ | This channel is logged. | For logs and more information, visit http://bitcoin.ninja
fredy1 has quit []
surja795 has joined #bitcoin-wizards
unknown1 has joined #bitcoin-wizards
mdunnio has joined #bitcoin-wizards
Chris_Stewart_5 has quit [Ping timeout: 260 seconds]
Chris_Stewart_5 has joined #bitcoin-wizards
AaronvanW has quit [Remote host closed the connection]
TheoStorm has quit [Remote host closed the connection]
surja795 has quit [Read error: Connection reset by peer]
surja795 has joined #bitcoin-wizards
TurquoiseEvents has joined #bitcoin-wizards
shush has quit [Remote host closed the connection]
TurquoiseEvents has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
proofofkeags has quit [Remote host closed the connection]
shush has joined #bitcoin-wizards
proofofkeags has joined #bitcoin-wizards
Chris_Stewart_5 has quit [Ping timeout: 260 seconds]
x-warrior_ has quit [Quit: ZNC 1.7.x-git-847-5132ea98 - https://znc.in]
x-warrior has joined #bitcoin-wizards
justanotheruser has quit [Ping timeout: 260 seconds]
x-warrior has quit [Client Quit]
x-warrior has joined #bitcoin-wizards
rottensox has quit [Quit: Bye]
justanotheruser has joined #bitcoin-wizards
michaelfolkson has quit [Ping timeout: 272 seconds]
proofofkeags has joined #bitcoin-wizards
laptop has quit [Ping timeout: 272 seconds]
laptop has joined #bitcoin-wizards
TheoStorm has quit [Quit: Leaving]
michaelfolkson has joined #bitcoin-wizards
shush has quit [Remote host closed the connection]
shush has joined #bitcoin-wizards
TheoStorm has joined #bitcoin-wizards
son0p has quit [Quit: leaving]
<nsh>
EmmyNoether!
<EmmyNoether>
nsh!
geek00l has quit [Ping timeout: 264 seconds]
tromp_ has joined #bitcoin-wizards
tromp has quit [Ping timeout: 260 seconds]
dos11 has joined #bitcoin-wizards
AaronvanW has quit []
AaronvanW has joined #bitcoin-wizards
tromp_ has quit [Ping timeout: 256 seconds]
otoburb has joined #bitcoin-wizards
tromp has joined #bitcoin-wizards
michaelfolkson has quit [Ping timeout: 240 seconds]
dgenr8 has quit [Ping timeout: 244 seconds]
Chris_Stewart_5 has quit [Ping timeout: 246 seconds]
harrigan has joined #bitcoin-wizards
Chris_Stewart_5 has joined #bitcoin-wizards
dgenr8 has joined #bitcoin-wizards
yanmaani has quit [Killed (Sigyn (Stay safe off irc))]
yanmaani has joined #bitcoin-wizards
<nothingmuch>
i was surprised to learn that libsecp256k1 has no function for checking equality group elements (except in the tests), but failed come up with a plausible reason (apart from that it hasn't been needed), is there something i'm missing?
<sipa>
you mean why does its API not have that, or why is there no internal code for doing so?
<nothingmuch>
sipa: yes ;-)
<nothingmuch>
mostly the former though
<sipa>
it's not in the API because libsecp256k1 doesn't aim to be a generic EC library, but a high-level protocol implementation that is generally hard to use in an unsafe manner; the supported protocols are ECDSA (+ pubkey recovery) ECDH, and BIP32 derivation - and none of those protocols call for a way to compare two pubkeys
<sipa>
(and, arguably, the BIP32 derivation support is too low level - something we're trying to improve upon)
dos11 has quit []
<nothingmuch>
i also couldn't find much information on why comparing points might be unsafe, all the information i found is generally about addition/multiplication
<sipa>
on itself, it isn't
roconnor has joined #bitcoin-wizards
<sipa>
but if you have a need for doing so, it means you're probably trying to implement some higher-level protocol by hacking together functionality intended for other protocols
<sipa>
which definitely may be unsafe
<sipa>
another reason is performance - needing to convert to secp256k1_pubkey is expensive, and the internal representation (which is not portable) is far more efficient
<roconnor>
nothingmuch: FWIW, if you do have access to the low-level internals, you can compare group elements for equality, by subtracting them, or rather by negating one and adding it to the other, and test to see if you got the (i.e. the point at infinity).
<sipa>
so if you have an actual need for comparing points as part of a protocol, it's better to implement that protocol as an extra module in libsecp256k1 which can make use of the performant versions
<roconnor>
*got the neutral element
<nothingmuch>
fwiw the context/motivation for this is investigating algebraic MACs for possible future use in Wasabi (key-verifiable anonymous credentials)
<sipa>
if you just want to experiment, you can serialize the keys and compare the serialization, which is guaranteed to be identical for identical keys
<sipa>
but if you're aiming for something more production ready, it may be worthwhile to implement the actual protocol as a module
<nothingmuch>
for now it's just experimentation, and it actually isn't my code but i will pass these suggestions on
TurquoiseEvents has joined #bitcoin-wizards
nielsonm has joined #bitcoin-wizards
TurquoiseEvents has quit [Ping timeout: 260 seconds]
davec has quit [Ping timeout: 264 seconds]
Zenton has quit [Ping timeout: 258 seconds]
Zenton has joined #bitcoin-wizards
davec has joined #bitcoin-wizards
go11111111111 has joined #bitcoin-wizards
go1111111 has quit [Ping timeout: 240 seconds]
Emcy has quit [Remote host closed the connection]
Guyver2 has quit [Remote host closed the connection]
Emcy has joined #bitcoin-wizards
Anduck_ is now known as Anduck
justanotheruser has quit [Ping timeout: 264 seconds]
fkinglag has quit [Ping timeout: 260 seconds]
Dean_Guss has quit [Ping timeout: 240 seconds]
justanotheruser has joined #bitcoin-wizards
Dean_Guss has joined #bitcoin-wizards
shush has quit [Remote host closed the connection]
shush has joined #bitcoin-wizards
surja795_ has joined #bitcoin-wizards
shush has quit [Ping timeout: 260 seconds]
surja795 has quit [Ping timeout: 256 seconds]
fkinglag has joined #bitcoin-wizards
aj has quit [Ping timeout: 256 seconds]
aj has joined #bitcoin-wizards
marcoagner has quit [Ping timeout: 272 seconds]
TheoStorm has quit [Remote host closed the connection]
surja795_ has quit [Remote host closed the connection]
surja795 has joined #bitcoin-wizards
mdunnio has quit [Remote host closed the connection]