--- Log opened Tue Mar 31 00:00:38 2020 02:14 < real_or_random> here's a naive question: do the tests work on windows? 02:15 < real_or_random> we try to access /dev/urandom but fall back if we're unable to https://github.com/bitcoin-core/secp256k1/blob/master/src/tests.c#L5216 02:22 < sipa> pretty sure that won't work 02:33 -!- ddustin [~ddustin@unaffiliated/ddustin] has joined #secp256k1 02:37 -!- ddustin [~ddustin@unaffiliated/ddustin] has quit [Ping timeout: 246 seconds] 03:08 < elichai2> real_or_random: should I write an appveyor config for secp? and for rand, we can easily add support for `CryptGenRandom` or even fallback to `rand(3)` 03:10 -!- jtimon [~quassel@206.160.134.37.dynamic.jazztel.es] has joined #secp256k1 03:40 -!- ncantu [~ncantu@88.121.76.179] has quit [Ping timeout: 260 seconds] 03:40 -!- ncantu [~ncantu@2a01:e0a:453:2ce0:8c42:91f:970f:54e5] has joined #secp256k1 03:57 < real_or_random> we I think we should first figure out if we can compile the tests for windows (can someone try?) and then replace /dev/urandom 03:58 < real_or_random> appveyor would certainly be helpful but I'm somewhat hesitant given the "general CI revamp" issue. but yeah, if it's not a lot of work, why not 03:58 < real_or_random> it's certainly tangible progress :) 04:00 < real_or_random> a related question is whether we should provide a function for secret key generation that works across a few platform. it's weird that we have one but I guess the reason is that we want so be super portable? 04:43 < elichai2> I already have one ready for rust-secp, don't think it will be much effort 04:44 < elichai2> what secret key generation function? 04:44 -!- ddustin [~ddustin@unaffiliated/ddustin] has joined #secp256k1 04:49 < elichai2> I can also try and still hebasto's work on bitcoin core for windows github actions instead of appveyor if that's preferable 05:17 < real_or_random> we currently don't have a function to generate to secret key 05:18 < real_or_random> we just tell the user that a secret key is random byte string of length 32 05:19 < real_or_random> don't know, if I remember correctly the conclusion was the permission management of github action is not suitable for core? 05:39 < elichai2> oh right forgot about the whole permissions thing 06:02 < elichai2> real_or_random: do we even have a compile path for windows? 06:02 < elichai2> I assume autotools doesn't work on windows hehe 06:05 < real_or_random> well. the core repo has a MSVC config for example, which sets -Ds manually 06:06 < real_or_random> but by default they use mingw-64. I have no clue when it comes to developing on windows, so no idea 06:07 < elichai2> I can probably execute MSVC directly. in rust the `cc` crate makes this so much easier lol 06:12 < real_or_random> I opened https://github.com/bitcoin-core/secp256k1/pull/731 and https://github.com/bitcoin-core/secp256k1/pull/732 which both should be very quick to review 06:13 < real_or_random> I think ideally we want both in the end 06:13 < real_or_random> MSVC is preferable because we test gcc on other platforms at least 06:13 < real_or_random> both = MSVC and mingw 06:14 < elichai2> I think cmake works on windows too, so another option(people probably will be against hehe) is to move to cmake, but I know that core already bypasses leveldb's CMake 06:14 < elichai2> I think we can get mingw within travis 06:16 < elichai2> let's see how it works out :) https://travis-ci.org/github/elichai/secp256k1/builds/669237200 06:17 < real_or_random> cool 07:14 -!- ncantu [~ncantu@2a01:e0a:453:2ce0:8c42:91f:970f:54e5] has quit [Ping timeout: 272 seconds] 07:24 -!- ncantu [~ncantu@88.121.76.179] has joined #secp256k1 07:57 -!- Chris_Stewart_5 [~Chris_Ste@unaffiliated/chris-stewart-5/x-3612383] has joined #secp256k1 08:01 -!- nkohen [~nkohen@2601:282:4100:d070:10fa:6882:6a73:c034] has joined #secp256k1 08:02 < Chris_Stewart_5> waxwing: I pinged elichai2 about what it would take to implement podle stuff in secp256k1, nkohen has been talking internally at Suredbits aobut what it is useful for for our stuff 08:02 < Chris_Stewart_5> elichai2: You think it might be possible to implement with the public api? 08:03 < elichai2> I think so, yes. but a lot more with the ecdh API and less with the tweaking functions, as the tweaking functions on pubkeys aren't CT 08:03 < waxwing> i recall gmaxwell had some comments on a thread in libsecp repo about this, have you seen it? 08:04 < elichai2> at least the variant waxwing talks about (haven't read the other paper yet) 08:04 < Chris_Stewart_5> waxwing: I have not, do you have a link handy? 08:04 < waxwing> i'll find it. 08:04 < waxwing> https://github.com/bitcoin-core/secp256k1/issues/706#issuecomment-570868655 08:06 < waxwing> he's right in saying we used the e- version to save space. (in other words, the commitment opening is (s, e, P, P2) rather than (s, R1, R2, P, P2) (although P could be implicit depending on circs) 08:06 < waxwing> and the commitment we use is just H(P2) 08:06 < elichai2> yeah that was obvious, it's a tradeoff between space and CPU 08:07 < elichai2> but he didn't talk about the idea of implementing this into libsecp 08:08 < elichai2> Chris_Stewart_5: another problem with implementing outside of libsecp, is the overhead, not sure how big it is though. 08:09 < waxwing> i remember the slight problem i had was this: although secp binding gave me additive and multiplicative tweak, i still needed to do s = k + ex externally, i.e. i couldn't use an inbuilt schnorr (actually it was so long ago maybe a schnorr api was not exposed, i forget) 08:10 < elichai2> well technically you can use the `secp256k1_ec_privkey_tweak_add/mul`, not that it's pretty 08:11 < elichai2> my problem was mostly with your usage of `secp256k1_ec_pubkey_tweak_mul` which isn't CT with regards to the tweak 08:12 < Chris_Stewart_5> CT = constant time right? 08:12 < elichai2> yes 08:13 < waxwing> was the above comment to me? if it was, then i guess i understand and agree. not sure why i couldn't/didn't do that. 08:14 < elichai2> yeah 08:15 < Chris_Stewart_5> Just for some context for the rest of the channel, this the mailing list post nkohen was looking at for payment points https://lists.linuxfoundation.org/pipermail/lightning-dev/2019-November/002316.html 08:16 < waxwing> yes i've been musing about that quite a bit. i keep forgetting the DLEQ component. it's all pretty interesting. 08:31 < real_or_random> I haven't looked at this but I don't think it makes sense to implement it using the public API 08:31 < real_or_random> if you need an implementation, let's talk about where we can implement this using the public API 08:32 < real_or_random> s/public/internal in my previous message 08:33 < real_or_random> I mean it's unclear at the moment if this can end up in secp256k1 here but even if not, it could end up in a fork like secp256k1-zkp or a new fork 08:53 < nickler> Until secp256k1-zkp is rebased I'd suggest to base it on libsecp, but in general it would be better suited for -zkp. Fwiw I wrote down some notes how an implementation could differ from podle.py (https://github.com/niftynei/lightning-rfc/pull/1#pullrequestreview-361460805) 09:01 < elichai2> nickler: sounds like hell to keep rebase it. I'd give up and just merge updates at this point lol 09:11 < nickler> afaik -zkp is mostly just additional files, there's few changes in existing files 09:13 < real_or_random> it's *mostly* this. we had the plan to change it to really be only additional files, and we should really do this 09:13 < real_or_random> except for maybe the build system stuff 09:14 < real_or_random> that will make rebasing much simpler 09:14 < real_or_random> it's not exactly hell, it's annoying but doable 09:16 -!- ncantu [~ncantu@88.121.76.179] has quit [Ping timeout: 265 seconds] 09:17 -!- ncantu [~ncantu@2a01:e0a:453:2ce0:8c42:91f:970f:54e5] has joined #secp256k1 10:02 -!- ddustin_ [~ddustin@unaffiliated/ddustin] has joined #secp256k1 10:05 -!- ddustin [~ddustin@unaffiliated/ddustin] has quit [Ping timeout: 240 seconds] 10:18 -!- ncantu [~ncantu@2a01:e0a:453:2ce0:8c42:91f:970f:54e5] has quit [Remote host closed the connection] 10:18 -!- ncantu [~ncantu@2a01:e0a:453:2ce0:8c42:91f:970f:54e5] has joined #secp256k1 10:20 -!- ncantu [~ncantu@2a01:e0a:453:2ce0:8c42:91f:970f:54e5] has quit [Remote host closed the connection] 10:21 -!- ncantu [~ncantu@2a01:e0a:453:2ce0:8c42:91f:970f:54e5] has joined #secp256k1 11:46 -!- ncantu [~ncantu@2a01:e0a:453:2ce0:8c42:91f:970f:54e5] has quit [Ping timeout: 272 seconds] 11:46 -!- ncantu [~ncantu@37.166.10.136] has joined #secp256k1 13:47 -!- ncantu [~ncantu@37.166.10.136] has quit [Ping timeout: 240 seconds] 13:48 -!- ncantu [~ncantu@2a01:e0a:453:2ce0:8c42:91f:970f:54e5] has joined #secp256k1 14:21 -!- ddustin_ [~ddustin@unaffiliated/ddustin] has quit [Remote host closed the connection] 14:21 -!- ddustin [~ddustin@unaffiliated/ddustin] has joined #secp256k1 14:26 -!- ddustin [~ddustin@unaffiliated/ddustin] has quit [Ping timeout: 252 seconds] 14:55 -!- ddustin [~ddustin@unaffiliated/ddustin] has joined #secp256k1 15:19 -!- ncantu [~ncantu@2a01:e0a:453:2ce0:8c42:91f:970f:54e5] has quit [Read error: Connection reset by peer] 15:19 -!- ncantu [~ncantu@2a01:e0a:453:2ce0:8c42:91f:970f:54e5] has joined #secp256k1 15:38 -!- nkohen [~nkohen@2601:282:4100:d070:10fa:6882:6a73:c034] has quit [Ping timeout: 240 seconds] 15:50 -!- ncantu [~ncantu@2a01:e0a:453:2ce0:8c42:91f:970f:54e5] has quit [Read error: Connection reset by peer] 15:51 -!- ncantu [~ncantu@2a01:e0a:453:2ce0:8c42:91f:970f:54e5] has joined #secp256k1 16:15 -!- ddustin [~ddustin@unaffiliated/ddustin] has quit [Ping timeout: 246 seconds] 16:21 -!- ncantu [~ncantu@2a01:e0a:453:2ce0:8c42:91f:970f:54e5] has quit [Read error: Connection reset by peer] 16:22 -!- ncantu [~ncantu@2a01:e0a:453:2ce0:8c42:91f:970f:54e5] has joined #secp256k1 16:32 -!- ddustin [~ddustin@unaffiliated/ddustin] has joined #secp256k1 16:49 -!- ncantu [~ncantu@2a01:e0a:453:2ce0:8c42:91f:970f:54e5] has quit [Read error: Connection reset by peer] 16:50 -!- ncantu [~ncantu@2a01:e0a:453:2ce0:8c42:91f:970f:54e5] has joined #secp256k1 17:09 -!- ddustin [~ddustin@unaffiliated/ddustin] has quit [Read error: Connection reset by peer] 17:12 -!- ddustin [~ddustin@unaffiliated/ddustin] has joined #secp256k1 17:20 -!- ncantu [~ncantu@2a01:e0a:453:2ce0:8c42:91f:970f:54e5] has quit [Read error: Connection reset by peer] 17:20 -!- ncantu [~ncantu@2a01:e0a:453:2ce0:8c42:91f:970f:54e5] has joined #secp256k1 17:49 -!- ncantu [~ncantu@2a01:e0a:453:2ce0:8c42:91f:970f:54e5] has quit [Read error: Connection reset by peer] 17:49 -!- ncantu [~ncantu@2a01:e0a:453:2ce0:8c42:91f:970f:54e5] has joined #secp256k1 18:10 -!- Chris_Stewart_5 [~Chris_Ste@unaffiliated/chris-stewart-5/x-3612383] has quit [Ping timeout: 260 seconds] 18:20 -!- ncantu [~ncantu@2a01:e0a:453:2ce0:8c42:91f:970f:54e5] has quit [Read error: Connection reset by peer] 18:20 -!- ncantu [~ncantu@2a01:e0a:453:2ce0:8c42:91f:970f:54e5] has joined #secp256k1 18:49 -!- ncantu [~ncantu@2a01:e0a:453:2ce0:8c42:91f:970f:54e5] has quit [Read error: Connection reset by peer] 18:50 -!- ncantu [~ncantu@2a01:e0a:453:2ce0:8c42:91f:970f:54e5] has joined #secp256k1 19:18 -!- jtimon [~quassel@206.160.134.37.dynamic.jazztel.es] has quit [Ping timeout: 258 seconds] 19:21 -!- ncantu [~ncantu@2a01:e0a:453:2ce0:8c42:91f:970f:54e5] has quit [Read error: Connection reset by peer] 19:22 -!- ncantu [~ncantu@2a01:e0a:453:2ce0:8c42:91f:970f:54e5] has joined #secp256k1 19:49 -!- ncantu [~ncantu@2a01:e0a:453:2ce0:8c42:91f:970f:54e5] has quit [Read error: Connection reset by peer] 19:50 -!- ncantu [~ncantu@2a01:e0a:453:2ce0:8c42:91f:970f:54e5] has joined #secp256k1 20:21 -!- ncantu [~ncantu@2a01:e0a:453:2ce0:8c42:91f:970f:54e5] has quit [Read error: Connection reset by peer] 20:22 -!- ncantu [~ncantu@2a01:e0a:453:2ce0:8c42:91f:970f:54e5] has joined #secp256k1 20:50 -!- ncantu [~ncantu@2a01:e0a:453:2ce0:8c42:91f:970f:54e5] has quit [Read error: Connection reset by peer] 20:50 -!- ncantu [~ncantu@2a01:e0a:453:2ce0:8c42:91f:970f:54e5] has joined #secp256k1 21:21 -!- ncantu [~ncantu@2a01:e0a:453:2ce0:8c42:91f:970f:54e5] has quit [Read error: Connection reset by peer] 21:22 -!- ncantu [~ncantu@2a01:e0a:453:2ce0:8c42:91f:970f:54e5] has joined #secp256k1 21:51 -!- ncantu [~ncantu@2a01:e0a:453:2ce0:8c42:91f:970f:54e5] has quit [Read error: Connection reset by peer] 21:51 -!- ncantu [~ncantu@2a01:e0a:453:2ce0:8c42:91f:970f:54e5] has joined #secp256k1 22:34 -!- ncantu [~ncantu@2a01:e0a:453:2ce0:8c42:91f:970f:54e5] has quit [Read error: Connection reset by peer] 22:35 -!- ncantu [~ncantu@2a01:e0a:453:2ce0:8c42:91f:970f:54e5] has joined #secp256k1 22:53 -!- ncantu [~ncantu@2a01:e0a:453:2ce0:8c42:91f:970f:54e5] has quit [Ping timeout: 272 seconds] 22:56 -!- ncantu [~ncantu@37.171.37.61] has joined #secp256k1 23:51 -!- nsh [~lol@wikipedia/nsh] has quit [Remote host closed the connection] --- Log closed Wed Apr 01 00:00:40 2020