Komputer AGC Diprogram Ulang untuk Tambang Bitcoin
NewYork,Cyberthreat.id - Sebuah unit komputer yang dipakai untuk pemograman proyek Apollo NASA untuk mendaratkan manusia di bulan untuk pertama kalinya, yang disebut Appolo Guidance Computer (AGC), kini dibuat pemograman ulang untuk menambang bitcoin.
Sayangnya, meski diprogram ulang, AGC memiliki kecepatan yang lambat, yaitu 10 detik untuk menghitung nilai senyawa (hash) tunggal dari Bitcoin.
Padahal, saat ini sebagian besar penambangan bitcoin dilakukan menggunakan perangkat keras khusus yang mampu menghitung trilyunan hash per detik.
Dikutip dari Arstechnica.com, Kamis, (11 Juli 2019), sebuah tim sejarawan komputer, disebut telah mendapatkan salah satu AGC asli dan membuatnya berfungsi.
Ken Shirriff, salah seorang anggota tim tersebut, kemudian memutuskan untuk melihat apakah komputer dapat digunakan untuk penambangan bitcoin.
"Komputer ini sangat lambat, sehingga butuh sekitar satu miliar kali usia alam semesta untuk berhasil menambang blok bitcoin," tulis Shirriff.
Penambangan adalah bagian penting dari proses untuk mempertahankan buku besar transaksi bersama bitcoin, atau blockchain. Untuk memenangkan hak untuk menambahkan blok ke blockchain, seseorang harus menyelesaikan masalah yang sulit, yaitu menemukan blok yang hash SHA-256 dimulai dengan jumlah nol minimum.
“Satu-satunya cara yang diketahui untuk mencapai ini adalah dengan kekerasan. Penambang membuat blok dengan angka acak dan menghitung nilai hash-nya. Jika nilai hash tidak memiliki angka nol di depan, penambang mengubah angka dan mencoba lagi,” jelas Shirriff.
Jumlah nol yang diperlukan secara otomatis disesuaikan sehingga jaringan menghasilkan blok baru rata-rata setiap 10 menit. Saat ini, hash blok membutuhkan setidaknya sekitar 18 nol (dalam representasi heksadesimalnya) untuk dapat diterima oleh jaringan, yang diterjemahkan menjadi sekitar 1022 percobaan untuk menemukan blok yang valid.
Namun, Shirriff juga harus berjuang dengan kekhasan AGC, sehingga membuatnya cocok untuk penambangan bitcoin. Misalnya, AGC menggunakan kata 15-bit, berbeda dengan komputer modern yang umumnya menggunakan kata 32- atau 64-bit.
Algoritma SHA-256 melakukan banyak operasi 32-bit, jadi Shiriff harus membagi setiap integer 32-bit menjadi tiga bagian, bagian 4-bit dan dua bagian 14-bit, dan melakukan perhitungan secara terpisah.
AGC juga tidak memiliki instruksi shift dan rotate yang standar pada komputer modern, dan banyak digunakan dalam perhitungan SHA-256. Hal ini memaksa Shirriff untuk menulis subrutin untuk melakukan operasi ini.
“AGC, seperti kebanyakan komputer tahun 1960-an, menggunakan memori inti magnetik, menyimpan setiap bit dalam cincin ferit kecil magnet. Karena memori inti cukup besar, AGC hanya memiliki 2K kata (sekitar 4Kbyte) RAM. Skema AGC membuat segalanya lebih rumit, karena Anda hanya dapat mengakses 256 kata. Kecuali jika Anda menggunakan mekanisme pengalihan bank yang tidak nyaman,” ungkap Shirriff.
Masalahnya, lanjut Shirrif, bahwa algoritma SHA-256 menggunakan delapan (32-bit) nilai hash, tabel pesan 64 kata, dan 8 kata nilai menengah. Tiga array ini sendiri menggunakan 240 kata AGC, menyisakan sekitar 16 kata untuk yang lainnya.
“Saya berhasil mendapatkan semuanya sesuai di satu bank dengan menggunakan kembali 16 kata ini untuk banyak tujuan, tapi saya menghabiskan banyak waktu, ketika variabel memukul lokasi yang masih digunakan,” jelas Shirriff.
Menurut Shirriff, ini bukan pertama kalinya, Ia menerapkan penambangan bitcoin pada perangkat keras kuno. Beberapa tahun yang lalu ia menerapkan penambangan bitcoin pada komputer IBM 1401 lama dari pertengahan 1960-an.
Mesin ini, kata dia, bahkan lebih lambat dari AGC, membutuhkan 80 detik untuk menghitung hash tunggal. Dia juga memprogram Xerox Alto tahun 1970-an untuk menambang bitcoin. Itu bisa menghitung 1,5 hash per detik.