Categories: Bitcoin Business

Computer from NASA’s Apollo program reprogrammed to mine bitcoin

Click here to view original web page at arstechnica.com
DSKY unit of the Apollo Guidance Computer in the National Air and Space Museum. Shirriff used a different unit that belongs to a private collector.

Among the many technological breakthroughs of NASA's Apollo project to land a man on the Moon was the Apollo Guidance Computer that flew onboard Apollo spacecraft. In an era when most computers were refrigerator-sized—if not room-sized—the AGC weighed only about 70 pounds. It was one of the first computers to use integrated circuits.

A team of computer historians got its hands on one of the original AGCs and got it working. A member of the team, Ken Shirriff, then decided to see if the computer could be used for bitcoin mining.

Mining is a key part of the process for maintaining bitcoin's shared transaction ledger, or blockchain. To win the right to add a block to the blockchain, you have to solve a difficult problem: finding a block whose SHA-256 hash starts with a minimum number of zeros. The only known way to accomplish this is by brute force: miners create a block with a random nonce and compute its hash value. If the hash value doesn't have enough leading zeros, the miner changes the nonce and tries again.

The required number of zeros is automatically adjusted so that the network produces a new block once every 10 minutes, on average. Currently, a block's hash needs at least around 18 zeros (in its hexadecimal representation) to be accepted by the network—which translates to around 1022 trials to find a valid block.

Today, most bitcoin mining is done using specialized hardware capable of computing trillions of hashes per second. Shirriff's software for the Apollo Guidance Computer was quite a bit slower than that: each bitcoin hash calculation takes about 10 seconds.

The Apollo Guidance Computer isn’t a very good bitcoin miner

"The computer is so slow that it would take about a billion times the age of the universe to successfully mine a bitcoin block," Shirriff wrote.

This mostly reflects 50 years of progress in computing hardware. Thanks to Moore's law, modern chips have vastly more transistors and can operate at much higher clock rates. Custom mining ASICs can compute a huge number of hashes in parallel.

But Shirriff also had to struggle with idiosyncrasies of the AGC that made it a poor fit for bitcoin mining. For example, the AGC used a 15-bit word, in contrast to modern computers that generally use 32- or 64-bit words. The SHA-256 algorithm performs a lot of 32-bit operations, so Shiriff had to split each 32-bit integer into three pieces—a 4-bit piece and two 14-bit pieces—and perform calculations on them separately.

The AGC also lacked the shift and rotate instructions that are standard on modern computers—and heavily used in a SHA-256 calculation—forcing Shirriff to write subroutines to perform these operations.

The AGC's limited memory was also a handicap:

The AGC, like most computers of the 1960s, used magnetic core memory, storing each bit in a tiny magnetized ferrite ring. Since core memory was fairly bulky, the AGC had just 2K words (approximately 4K bytes) of RAM. The AGC's addressing scheme made things more complicated since you could only access 256 words unless you used an inconvenient bank-switching mechanism. The problem is that the SHA-256 algorithm uses eight (32-bit) hash values, a 64-word message table, and 8 words of intermediate values. These three arrays alone used up 240 AGC words, leaving about 16 words for everything else (temporary values, subroutine return addresses, loop counters, pointers, etc.) I managed to get everything to fit in one bank by reusing these 16 words for multiple purposes, but I spent a lot of time debugging problems when a variable clobbered a location still in use.

This is not the first time Shirriff has implemented bitcoin mining on ancient hardware. A few years back he implemented bitcoin mining on an old IBM 1401 computer from the mid-1960s. This machine was even slower than the AGC, taking 80 seconds to compute a single hash. He also programmed a 1970s Xerox Alto to mine bitcoin—it could compute 1.5 hashes per second.

cinerama

Illuminati, Mason, Anonymous I'll never tell. I can tell you this, global power is shifting and those who have the new intelligence are working to acquire this new force. You matter naught except to yourself, therefore prepare for the least expected and make your place in the new world order.

Disqus Comments Loading...
Share
Published by
cinerama

Recent Posts

  • Bitcoin Business

Robinhood App Encroaches on Banking Turf with High-Yield Money Tool

Popular stock market and crypto trading app Robinhood is going after legacy banks with the relaunch of a cash management… Read More

14 mins ago
  • Bitcoin Business

The blockchain/crypto week in quotes

“The world that Satoshi Nakamoto, author of the Bitcoin whitepaper envisioned, and others are building, is an unstoppable force.” US… Read More

14 mins ago
  • Bitcoin Business

Art and watch collectors: Here’s how blockchain can stamp out fakes

According to an OECD report on counterfeiting, the world trade in fake goods is worth upwards of S$624 billion a… Read More

14 mins ago
  • Bitcoin Business

Litecoin and the Miami Dolphins Join Hands Over Charity

Who would have known American football and cryptocurrency would go so well together? In a press release, The Miami Dolphins… Read More

6 hours ago
  • Bitcoin Business

Crypto News: Grayscale’s Record Inflows, Shell’s New Blockchain Investment

Increasing amounts of capital are flowing into the crypto and blockchain start-up markets. By following the money, investors can uncover… Read More

6 hours ago
  • Bitcoin Business

David Koepsell (YICB 07), Co-founder of Encrypgen, LLC and Blockchain in Healthcare Global

David Koepsell is the co-founder and chief executive officer of Encrypgen, a software company creating next-generation blockchain solutions for genomic… Read More

6 hours ago

This website uses cookies. We use these cookies to collect data about your interaction with our website for the purpose of continuously improving your experience with our site. For more information we encourage you to read our privacy policy.

Read More