Git 3.0 akan jadikan SHA-256 default: Sebuah kesalahan mahal
Judul asli: Git 3.0's upcoming SHA-256 default will be a costly mistake
Mengapa Ini Penting
Perubahan default di Git menyentuh ratusan juta repositori dan seluruh rantai tooling global.
Git 3.0 berencana menjadikan SHA-256 sebagai algoritma hashing default, menggantikan SHA-1. Scott Chacon dari GitButler memperingatkan perubahan ini akan sangat mahal dan minim manfaat nyata.
Scott Chacon, salah satu pendiri GitButler dan tokoh di balik Git, menulis panjang lebar soal keputusan yang ia sebut 'bencana kereta api global yang mahal' — rencana Git 3.0 mengganti SHA-1 dengan SHA-256 sebagai algoritma hashing default.
Git menggunakan hash sebagai kunci dalam database key-value berbasis konten. SHA-1 dipilih Linus Torvalds sejak 2005 dan telah bekerja selama 20 tahun tanpa satu pun tabrakan hash yang terjadi secara kebetulan di miliaran repositori. Secara matematis, probabilitas tabrakan acak memerlukan sekitar 1,4 septillion file dalam satu proyek.
Alasan perubahan ini adalah SHA-1 kini dianggap 'rusak' secara kriptografis — serangan tabrakan seperti SHAttered (2017) dan SHA-1 is a Shambles (2020) membuktikan tabrakan bisa diciptakan secara sengaja dengan cukup GPU dan biaya. Namun Chacon menegaskan, 'rusak' di sini bukan berarti sistem gagal — hanya berarti tabrakan bukan lagi hal yang mustahil secara teori, bukan dalam praktik nyata sehari-hari.
Chacon khawatir migrasi massal dari SHA-1 ke SHA-256 akan memaksa seluruh ekosistem tooling, hosting platform, dan jutaan repositori untuk melakukan konversi besar-besaran — dengan biaya waktu dan sumber daya yang sangat besar — sementara ancaman keamanan praktis yang ditanganinya hampir tidak ada.