Alex Waltz's avatar
Alex Waltz
npub1pu5p...pn0a
Making Satoshis Don't Exist Movie.
Alex Waltz's avatar
raw_avocado 1 year ago
image It is an honor and absolute pleasure to announce @niftynei() ๐Ÿ‡บ๐Ÿ‡ธ๐Ÿ’ธ๐Ÿงก in a starring role in the movie.๐Ÿคฉ Lisa is a #Bitcoin hacker, educator, and @Core_LN contributor. She founded base58btc the bitcoin engineering school and btcplusplus an alpha-packed bitcoin dev event series. โœจimage
Alex Waltz's avatar
raw_avocado 2 years ago
Here are some pics I took of people at Bitcoin Atlantis. For some reason not all got uploaded. Upload failed: File size exceeds the limit of 11.00 MB Upload failed: File size exceeds the limit of 11.00 MB Upload failed: File size exceeds the limit of 11.00 MB Upload failed: File size exceeds the limit of 11.00 MB Upload failed: File size exceeds the limit of 11.00 MB Upload failed: File size exceeds the limit of 11.00 MB image
Alex Waltz's avatar
raw_avocado 2 years ago
Did you know the pre-released 2008 version of #Bitcoin had 15-minute block time? Also, the difficulty adjusted every 30 days. Satoshi changed to 10-minute block times & 14 days difficulty adjustment in the version he released on 9 Jan 2009 and that's used today. image
Alex Waltz's avatar
raw_avocado 2 years ago
Did you know 1 #Bitcoin initially was NOT 100,000,000 sats? Before releasing the Bitcoin Client on 9 January 2009, Satoshi shared with some people an earlier 2008 version. In this version, among other things 1 Bitcoin = 1,000,000 (ofc he did not call them Satoshis :p) image
Alex Waltz's avatar
raw_avocado 2 years ago
0.03223686 ~ $1,300 UP FOR GRABS! image In this address bc1q7l0h956r8sqfzjw3278s35p43z0zzmqnfnmfr4 , there is 0.03223686 ~ $1,300 and they are up for grabs. Why? Well because this is a game organized by Wasabi Wallet called #HuntingSats, the scope is to challenge people to learn how to use Bitcoin wallets and be rewarded for their work. More info: image Each of the companies in the picture was given 1 of the 12-word BIP39 seed phrase that unlocks the wallet. They will release the word on their Twitter(I know it sucks and all, but hey do you want the sats or not?) at any time between (today)23 January and 26 January You should follow them and the #HuntingSats hashtag to get the word before anyone else. Each of the companies will release their word whenever they want and no coordination was done between the companies, which means YOU have to figure out the correct order of the 12 words. There are 479,001,600ish ways in wich you can order the 12 words, and only 1 unlocks the Bitcoins. Satoshis Don't Exist(the movie I'm directing) is one of the partners and this is the word we were given. image I'd wish you good luck, but luck has absolutely nothing to do with it! (and yes, I did take all the pictures :p)
Alex Waltz's avatar
raw_avocado 2 years ago
Did you know there were 147 empty #Bitcoin blocks mined in 2023? 11% of all Bitcoin blocks don't have any TX inside them. And there are 2 Mining pools, never mined any empty blocks! Why do miners mine empty blocks? image Miners have 1 job, ordering TXs in Blocks. They hash all the data inside the block until the hash of the block starts with a certain number of zeros. As the block data does not change, there is this field(nonce), where they iterate until the right block is found. image So the only condition for miners to get paid, is they find the right hash. (if block is valid :p) But if they include TXs in this block, they will pocket the fees from them on top of the block reward. So why would any (rational) miner ever refuse to include TXs? image A pool constructs a block and partitions the amount of work/searching each individual miner does. This way, smaller miners can be profitable. But the pool sends the block + the hash of the previous block at the same time. (as it builds on top of it) image Right after a block is found, the miner will send the nonce to the pool, and now he waits to get a new block. Remember miners don't turn off their machines. So while waiting for the next block from the pool, might as well mine mine something. But he has no TXs to include! Mining is a purely satistical game, the more hashrate you have the more lucky you are. Sometimes, in that small time window when waiting for the new block, a miner will find a block. The reason for empty blocks is the latency of communication between pools and miners. These are rational miners acting in their economic interest. That being said, it would be better for them to get more BTC fees + people get their TXs confirmed. One solution for this problem is @StratumV2 Remember how the pools sent the block and previous hash to miners? 8/9 In StratumV2 the 2 are separated. So the mining pool can look in their mempool for TXs that did not make it in the current block and send these block templates ahead of time to the miner. This way if they find a block, they work on these ones straight away with no latency! image Thanks for reading and like & retweet, if you liked it. :D Follow for more #Bitcoin facts like this every day! And the #BitcoinFactOfTheDay was brought to you by BitBox !๐Ÿ‡จ๐Ÿ‡ญ๐Ÿ”‘
Alex Waltz's avatar
raw_avocado 2 years ago
Did you know Laszlo (the 10k pizza guy) was the 1 GPU miner? In 2010 when he emailed Satoshi to tell him about his feat, Satoshi was against using GPU mining too early and wanted to keep difficulty low for as long as possible. image
Alex Waltz's avatar
raw_avocado 2 years ago
Did you know #Bitcoin used DOUBLE hashing everywhere? Why do we use Double-Hashing(SHA256) in Bitcoin? Where is it used? What is the benefit? image SHA256 is designed & patented (released royalty-free), by the NSA. Even though paranoia is a minimal requirement in cryptography, I don't think there are backdoors here. Satoshi may have had his doubts. Whenever hashing is performed in Bitcoin is done 2 times. image The most obvious use of SHA256 is when doing the PoW, but it is used a a LOT of other places. All of the done 2 times. The theory is that Satoshi though it prevents certain( length extension attacks) attacks. But the reality is it does not really add any benefits. image Even though this fact became more obvious, the double-hashing trend continued with future things that were built. It seemed it was easier to subscribe to the "superstition", rather than convenience people that hashing once is safe. image The "modern" changes use single hashing, and in some cases, hashing was dropped altogether. The design choices made by Satoshis are consensus-breaking, which means that changing them would cause a fork, so they will probably stay like this forever. image Thanks for reading and like & repost, if you liked it. :D Follow for more #Bitcoin facts like this every day! And the #BitcoinFactOfTheDay was brought to you by BitBox !๐Ÿ‡จ๐Ÿ‡ญ๐Ÿ”‘
Alex Waltz's avatar
raw_avocado 2 years ago
Dude using iris is such an awful experience.
Alex Waltz's avatar
raw_avocado 2 years ago
This is a mockup for a #Bitcoin wallet made on 28 October 2011. The orange Bitcoin logo was not yet created! Prolly the 1st attempt at creating a wallet for novice non-techie users. image Oddly enough the designer also made a live mockup, which is still working today. LIVE mockup:
Alex Waltz's avatar
raw_avocado 2 years ago
Just got Aaron's new "The Genesis Book" and took some pics. What you guys think?
Alex Waltz's avatar
raw_avocado 2 years ago
I hacked an #ethereum wallet and took all the money! Ran 16 servers for a whole day! How did I do it? What tools did I use? Was it profitable? image 1st of all this was a bounty. I DID NOT STEAL THE ETH :D Check Twitter and I am tagged in an Ethereum post. Only used Ethereum 2 times, initially not interested. The pictures are clues to a BIP39 seed which unlocks 0.1 ETH Ok, let me take another look. image As all the words are from the 2048 known words Dictionary. I took a guess for each picture and checked if it was in the dictionary. Found 11, not sure about the 4th. But it's one of the 2048 words, so I just need to try all of them. Easy job for a computer :p image Enter Seed Savior - Brute forces 1 word. I just pasted the words I know and it showed all the possible valid 4th word. As I know the address, I just have to search for it here. Got 138 valid 4th words ,but my address is not present.. At least 1 of my guesses is wrong. image Now really want to find the seed! I went through each of the 2048 BIP39 words and looked to see if it matched any of the pictures. It took 2 hours, to redo the list .๐Ÿฅฒ Now I have multiple options for each position. I have to hurry, this is public, others may be trying. image 5 million options are not that many. I just need the right tool. Enter BTCRecover A command line tool that I can tell it how to mix the words, and check if they generate the address I'm looking for. My Mac M1 tries 90,000 seeds/second Took 1 min, but NO LUCK! image This means that at least one of the possible words is incorrect. So on one of the positions, I need to try all the 2048 words. I will have 2048 options on that position. Positions 4,6 I'm least sure of. 6 days is too slow, others may also be trying to crack the seed! image What if I use all 3 of my laptops. Together they try 170,000 seeds/second. Nearly a 2x improvement. I cut it down from 6 days to 3 days. Need a bigger improvement, other may be cracking as I am! My laptops are all cracking using their CPU. I need GPUs, a lot of GPUs! There are 2 ways to do more calculations per second: 1) get hardware that can calculate faster 2) get more of the same hardware and run it in parallel. A GPU is basically a LOT of tiny weak processors that run in parallel and that is why some things run faster on GPUs. Luckily there are websites where people allow you to rent their powerful computers and you pay per minute. I used vastAI as seemed to be the cheapest option. Prices range from $0.3 to $1 (for my needs) Pretty much all have strong processors, ones with more GPUs cost more. image Ended up renting 16 servers and I was trying 1,096,000 seeds per second. It would take 11 hours to try all my candidate words, and on the 4th & 12th positions try all 2048 possible words. So pressed start and got some much-needed sleep. image Woke up and Seed not found. Angry and disappointed, I closed all the servers, as it cost me money to keep them up. But then I looked through the list one more time, and wait a minute 8 is not a park, it's Hard Street. Could it be? image Used initial list of candidate words, but hard on the 8th position. 4 minutes later SEED FOUND!1!1 When you take out the server costs and donation to the person who made the tool, I was left with ~$50. Best 50 bucks I ever made in my life. (10 days of continuous work) image Clarifications I left out a LOT of things to keep it short. Everything took multiple tries and 10 days of constant hair-pulling. The 1st pic in the thread was taken right after I found the seed The screenshots of the commands, I re-ran later when I documented the process. Thanks for reading and like & retweet(equivalent of here), if you liked it. :D Usually, I tweet one interesting #Bitcoin fact every day! This is the only Ethereum fact I have(story more than a fact :p) Btw the #BitcoinFactOfTheDay was brought to you by BitBox !๐Ÿ‡จ๐Ÿ‡ญ๐Ÿ”‘
Alex Waltz's avatar
raw_avocado 2 years ago
Did you know in 2014 someone uploaded their #Bitcoin wallet to the internet? The wallet had 10 Bitcoins. This was done to show no one can break the encryption protecting the wallet. image
Alex Waltz's avatar
raw_avocado 2 years ago
This is MultiBit a #Bitcoin wallet launched on 12 September 2011. The tagline was: - Run it from your USB drive/ home computer. - Nice and secure. - Send and receive bitcoin easily image One selling points was that you can open multiple wallets at the same time. This should really put into perspective how primitive things were back then. Btw you could not even import/export the private keys in early versions, no interoperability between wallets. image Even though the total size of the blockchain was 600M, the main selling point of the wallet was that it was a light wallet. The whole directory was only 16M The wallet would only keep parts of the blockchain that had its own transactions. TXs it does not use were erased. image So what? Well, this shows how in the early days the main focus was to make #BitCoin as easy to use as possible! (yes they wrote it like that) Also, think about this. Everything you get by default and do with 1 click, was not even an option back then! Thanks for reading and like & retweet(nostr equivalents), if you liked it. :D Follow for more #Bitcoin facts like this every day! And the #BitcoinFactOfTheDay was brought to you by BitBox !๐Ÿ‡จ๐Ÿ‡ญ๐Ÿ”‘
Alex Waltz's avatar
raw_avocado 2 years ago
Did you know @ElectrumWallet was the 1st #Bitcoin deterministic wallet? Before this people used to backup each individual key, and there was no restore function. Also, the 1st wallet to implement "mnemonic" backups, way before BIP39. image Electrum wallet was announced on 5 November 2011 as a Lightweight Bitcoin Client. It was the 1st modern Bitcoin wallet and brought features that improved the UX by 100x. You did not have that many options back then. image You either use Bitcoin Core(not called Core at the time) or some custodial wallet. Electrum introduced this server model where it's non-custodial, and you just ask the server for information about balances and broadcast TXS. (there is a privacy trade-of) Back then your Bitcoin wallet would generate individual keys for each of your addresses. You may think, it's still doing that now, true. But there was no relation between the keys. And I do mean private keys, there were no English words associated with them. image If you restart your wallet you get new keys every single time! Hence NONdeterministic. The #Bitcoin community was aware of this YUGE pain and solutions were being discussed as early as June 2011 This resulted in the widely used BIP32 created in February 2012. image The 1st version of Electrum mnemonic backups worked similarly to BIP39. - 12 words encoded using a 1626-words-dictionary. - words chosen from poetry list on Wikipedia. - encoding is designed, to avoid conflict with a patent. - words were chosen to be easier to remember. image Meanwhile, in 2013 BIP39 was created and used together with BIP32. Separate BIPs for each type of script/address, and the same seed can be used ever with multiple coins! Deterministic wallets are a thing! But there is there is a catch. There are a LOT of derivation paths for each type, and new types may be introduced. BIP39 encodes the secret in English words, but no information about the paths. image This is problematic, as different wallets use different derivation paths, so to be 100% sure of recovery in the distant future you need to back also derivation paths. Plus you can't upgrade this standard. The authors made this design choice on purpose. A flaw in my opinion. In 2015, with Electrum 2.0 a new and improved seed system was introduced. (still used today) Addressing the shortcomings above: - it had a versioning system - allows updates - not dependent on any particular dictionary However, how many of you are using Electrum seeds? image BIP39 grew more popular and became the de facto standard. Even though most people think "just the words" are a great backup, they could not be more wrong. Not all wallets use the same derivation paths! The fact that this website exists, proves the flaws in BIP39. image Thanks for reading and like & retweet(or what ever its called here), if you liked it. :D Follow for more #Bitcoin facts like this every day! And the #BitcoinFactOfTheDay was brought to you byBitBox !๐Ÿ‡จ๐Ÿ‡ญ๐Ÿ”‘
Alex Waltz's avatar
raw_avocado 2 years ago
Did you know that #Bitcoin Core did NOT initially have a 21M cap limit? Because of a C++ quirk, the original code that enforces the halvings would have restarted the halvings after the last halving, around 2214. This was fixed with BIP42 in 2014. (fix in pic) image
Alex Waltz's avatar
raw_avocado 2 years ago
This is the biggest loss in #Bitcoin history. 2,609 are forever! 23 transactions in Block 150,951 on 28 October 2011. Why are they lost? Who lost them? image ๐ŸงตThread๐Ÿ‘‡ image As the blockchain is public we can see which coins are provably lost. We see coins being burned quite often in small amounts. (prolly new tokens being issued on Bitcoin) But if we look at the biggest losses, we can tell they were not burned on purpouse. It's human error. When you give someone an address you are actually giving them a box, which ONLY you have a key that can unlock it. This is guaranteed by the fact that only the entity that has the private key corresponding to a public key can provide a signature to unlock the box. These locks are called Bitcoin Scripts. They are small programs that sit on top of each Bitcoin. When you move Bitcoins, when you run these programs. If needs to return success, coins move. And the good part is that you can add very various conditions here. Multi-sig is an example of such conditions. But it is up to you to make sure you set the right conditions. One way to make an error would be to add someone's else address. Another way is to add invalid address, or create some conditions that can never be fulfilled. Bitcoin addresses have a checksum at the end to avoid sending Bitcoin wrong address. This safety check is done in the wallet, there is no such check in the Bitcoin script. To get an address Public Keys are hashed RIPE160. The same hash function is also used in the script. image All the TXs above have the same script. The script says: These Bitcoins can be moved by the public key that when hashed with RIPE160 has a 1-byte-output. This is impossible, as the function always outputs 20 bytes. RIPE 160 bits = 20 bytes This condition can never be meet image The TXs were constructed by Mark Karpeles aka MagicalTux CEO of MtGox. We know this as he admitted it on #MtGox IRC channel At the time worth only $10,957 and only a week of profits for Gox. Today they are worth $120,200,000. image Thanks for reading and like & retweet, if you liked it. :D Follow for more #Bitcoin facts like this every day! And the #BitcoinFactOfTheDay was brought to you by @BitBoxSwiss!๐Ÿ‡จ๐Ÿ‡ญ๐Ÿ”‘
Alex Waltz's avatar
raw_avocado 2 years ago
YOO check out the spec the Spec Ad I made for JoinMarket
โ†‘