< kallewoof>
Signet PR https://github.com/bitcoin/bitcoin/pull/18267 latest commit now has 1 approach ACK, 1 utACK, 2 test ACKs; more if you count older commits. Feels like more is needed for a merge, but good progress. Please review!
< vasild>
MarcoFalke: it is used in constructing TORv3 addresses
< MarcoFalke>
I'd say it should be a module in our own source code (like src/crypto/sha1.h)
< vasild>
MarcoFalke: so, copy-paste (steal) some of the implementations and put it in src/crypto/sha3-256.{h,cpp}?
< MarcoFalke>
Yes. Though, I am not sure where to steal from. You might want to ask the libsecp ppl ;)
< vasild>
Preferred over linking to an external library? I guess its source will rarely change, if ever.
< vasild>
libsecp ppl: ^ ;-)
< fanquake>
I can't see a reason why we'd need to link an external library for something like that
< vasild_>
fanquake: a reason could be to avoid copy-pasting a pile of obscure code into src/ (that will be like a black box) and if upstream applies changes - we will likely forget to pick them. But I guess that will not be often.
< vasild>
wumpus: because we only (plan to) send the 32 byte public key, getting the address from that requires calculating a checksum
< vasild>
"H" is "SHA3-256"
< jamesob>
argh. so I'm curious about how people want to handle circular deps. The latest assumeutxo PR (#19806) has introduced one (coinstats -> validation -> coinstats).
< bitcoin-git>
bitcoin/master 102abff Russell Yanofsky: gui: Replace interface::Node references with pointers
< jamesob>
wow, timing
< jamesob>
anyway the two options I see are (i) call it what it is and just fold coinstats into validation, or (ii) mangle the coinstats interface so that the validation dependencies are injected via function parameters (which in this case requires the introduction of a single new parameter)