ryanatdistrust
Re:Milk Sad: Weak Entropy in libbitcoin (bc) seed generation
on Thursday August 10, 2023 @09:15AM (#37075755)
jokes on them that's a punishment to everyone else
Re:Milk Sad: Weak Entropy in libbitcoin (bc) seed generation
on Wednesday August 09, 2023 @08:25AM (#37061595)
Nanoseconds since epoch, which means eventually it does loop around, so at the very least it's not possible to generate a specific wallet by knowing when it was first used.
Re:Milk Sad: Weak Entropy in libbitcoin (bc) seed generation
on Wednesday August 09, 2023 @08:20AM (#37061544)
That is correct, time is the only entropy for the command, and the function they use to generate random numbers is also flawed in that it can only produce 2^32 possible outputs.
Re:Milk Sad: Weak Entropy in libbitcoin (bc) seed generation
on Tuesday August 08, 2023 @09:46PM (#37057804)
As discussed elsethread, it used the lower bits of the time value, so while there is is a fraction of the 2^32 space due to precision loss in the OS time calculations, it is not as simple as "between when this software was released and now, in seconds".
Re:Milk Sad: Weak Entropy in libbitcoin (bc) seed generation
on Tuesday August 08, 2023 @07:02PM (#37056603)
2^32 is still incredibly small for crypto and is inexcusable.
Re:Milk Sad: Weak Entropy in libbitcoin (bc) seed generation
on Tuesday August 08, 2023 @06:57PM (#37056573)
As long as people can write code, bugs will exist.
Re:Milk Sad: Weak Entropy in libbitcoin (bc) seed generation
on Tuesday August 08, 2023 @06:46PM (#37056497)
My numbers are very rough estimates and not good enough to do work on. More accurate information may be made public later.
Re:Milk Sad: Weak Entropy in libbitcoin (bc) seed generation
on Tuesday August 08, 2023 @06:35PM (#37056397)
I was not involved in that specific aspect, but on an 80 core machine, I believe we generated 3 sets of mnemonics (128, 192, 256 bits) in 2 days?
Re:Milk Sad: Weak Entropy in libbitcoin (bc) seed generation
on Tuesday August 08, 2023 @06:30PM (#37056344)
It looks neat, I'll pass this along to the team and take a deeper look at it later.
Re:Milk Sad: Weak Entropy in libbitcoin (bc) seed generation
on Tuesday August 08, 2023 @06:00PM (#37056028)
That is correct, you still have 2^32 permutations of possible values.
Re:Milk Sad: Weak Entropy in libbitcoin (bc) seed generation
on Tuesday August 08, 2023 @05:59PM (#37056016)
We used the broken algorithm from `bx` in a custom Rust program to brute force this.
Re:Milk Sad: Weak Entropy in libbitcoin (bc) seed generation
on Tuesday August 08, 2023 @05:45PM (#37055868)
we had so much fun trying to figure out the icon!
Re:Milk Sad: Weak Entropy in libbitcoin (bc) seed generation
on Tuesday August 08, 2023 @05:43PM (#37055844)
It actually uses the most precise 32 bits of the date, so it's any, like, nanosecond between 0 and some other small amount of seconds. You can't brute force a wallet by knowing approximately when it was made, but you can brute force every mnemonic if you have the time or a bit of cash to throw at a server.
EDIT: It loops around to 0 every 4.something seconds, so it's not like everything after 4 is the same key. It's just a more random distribution than what you may be thinking.
Re:Milk Sad: Weak Entropy in libbitcoin (bc) seed generation
on Tuesday August 08, 2023 @05:13PM (#37055540)
The difference between 32 bits and 64 bits is the amount of people on Earth compared to (EDIT) the amount of grains of sand on Earth. 32 bits is nothing when it comes to entropy, and it can take a security researcher (like us) only $100 to rent a machine to completely brute force it. Nowadays, only values less than 128 or 256 bits (which are exponentially bigger) are seen as appropriate.
Re:Milk Sad: Weak Entropy in libbitcoin (bc) seed generation
on Tuesday August 08, 2023 @05:06PM (#37055456)
To verify, this is something anyone can attack, as was proven by our brute force lookup service: https://lookup.milksad.info.