Hacker News new | ask | show | jobs
by lostmsu 1044 days ago
Note: "Libbitcoin" here is a company name, and not a name of the core bitcoin library.

Only their products and whoever used them as a 3rd party is affected.

3 comments

libbitcoin isn't a company. It's an alternative C++ implementation (https://github.com/libbitcoin) to the Bitcoin Core (https://github.com/bitcoin/bitcoin) implementation. Bitcoin Core is the one originally from Satoshi. Libbitcoin came in like 2011 or so iirc and was led by Amir Taaki. Libbitcoin is a lot less popular than Bitcoin Core, as you can see on the github stats.
Last release 2019, master branch marked as non-functional. Doesn't seem to be very active. Their homepage https://libbitcoin.info/ looks polished, but no signs of recent life. This vulnerability seems unmentioned. Well, they claim it's not a vulnerability but a demo implementation that should not be used to store anything of value. But there is no prominent note about that and some users did exactly that.
Here's a thread on how bitcoin core generates entropy https://twitter.com/raw_avocado/status/1445024873382809604
that thread is a little confused:

Particularly, 'The Dynamic and Static events are mixed in(mostly) by using "<<" Left Shift Bits. Because it's a binary operation, every digit is a power of 2, so shifting the bit n positions ends up multiplying by 2^n. This adds further confusion when multiple numbers are used at once.' --- the tweet appears to be confusing C++ stream usage of "<<" with shifting (and as a result makes it sound like the code is doing something idiotic).

Here is how it works: Lots of potential entropy sources including the essential good ones (as well as junk ones like timestamps and user/host info) are fed into a cryptographic hash then strengthened with iterated hashing. The junk sources are included as a hail mary so the user might have some chance to move their funds if they learn about vulnerabilities in their OS/hardware RNGs before an attacker can brute force out the weak sources.

OMG, i'm a bit star struck seeing you reply to this. Been reading you posts on btctalk for years :D

Sorry about that, my bad, I though i understand how that works, when I was exploring this topic i literally asked everyone i know and no one seemed to have any idea, and then when i felt i got a conclusion i was happy i found some explanation.

Anyway that just an excuse at the end of the day.

I have added to the thread a screenshoot of your reply and link to this conversation.

https://twitter.com/raw_avocado/status/1689317198626422784

Thanks for clarifying that.

No need for excuses. The fact that people didn't already get this stuff well enough to correct you on the spot suggests that there is a need for more explanation!
Exactly what I came here to find out, thank you.