Hasil analisis partisipasi challenge #5 - Reviews confirmed.
Pertanyaan #1: Bitcoin menggunakan algoritma enkripsi SHA256 untuk melakukan hash pada tiap bagian blockchain, dengan tiap block dilakukan fungsi hash sebanyak 2 kali. Mengapa demikian?
Untuk menjawab pertanyaan ini, setidaknya ada satu poin penting yang perlu dijelaskan oleh partisipan, yaitu mengapa satu kali hash tidak cukup dan sebabnya apa. Alasan generik biar lebih aman dan sejenisnya kurang cukup karena itu tidak menjelaskan memangnya satu kali apa masih kurang aman. Setidak-tidaknya agan-agan harus bisa menjelaskan kelemahan SHA-256 (dalam hal ini adalah adanya length-extension attacks) sehingga diperlukan adanya hashing sebanyak dua kali (atau SHA-256D) untuk memperkuat agar hash tidak mudah dijebol. Akan sangat lebih baik apabila sampai menjelaskan analisis praktikal mengenai perbandingan probabilitas waktu dan sumber daya yang diperlukan untuk melakukan length-extension attacks apabila hanya dilakukan hashing sebanyak satu kali dengan dua kali.
Ya supaya aman, tidak terjadi duplikasi transaksi. Ini sudah rancangan dari pak satoshinya. Kalau tidak salah sebenarnya sha256 itu adalah algorithma umum di dunia komputer. Sedangkan untuk bitcoin itu sendiri harusnya disebut SHA256D, D itu berarti Double. Di forum luar saya biasa nemuin istilah double sha256
Jawaban kurang tepat. Tidak menjawab masalah intinya dan terkesan normatif.
1. Dengan adanya fungsi hash sebanyak dua kali, membuat Sha256 lebih kuat untuk menahan Force brute attack (metode peretasan password). Karena dengan adanya 2x hash, peretasan yang masuk akan lebih susah untuk memecahkan kombinasi dari Sha256 itu sendiri.
2. Untuk hash yang kedua mempunyai ukuran yang lebih pendek (nilai yg lebih kecil), sehingga input yang diterima dapat diproses dengan cepat. Sehingga secara keseluruhan proses implementasi mudah dilakukan jika dibandingkan dengan algoritma single hash.
1. Walaupun menyebutkan salah satu jenis serangan kriptografi, akan tetapi tidak menyebutkan jawaban yang tepat (atau mendekati). Brute-force dengan length-extension attack itu berbeda.
2. Sepertinya agan keliru. Karena ada dua lapis hash, maka implementasi dua-kali hash ini justru secara praktik lebih memperlama/mempersulit karena data yang masuk harus dienkripsi sebanyak dua kali. Dengan demikian kalau masalah utamanya adalah kemudahan dalam melakukan hashing maka seharusnya yang dipilih adalah hash sebanyak satu kali saja tanpa pengulangan.
Karena pada saat satoshi menciptakan bitcoin, encrypt type sha256 lah saat itu yang paling aman maka beliau memlih itu dan kenapa di enkripsi 2 kali, alasan pertama adalah security/keamanan, jika hanya di hash sekali kemudian mampu di decrypt maka ini akan membahayakan pengguna namun jika dihash 2 kali fungsi hash tidak akan mudah di decrypt atau fungsi hash tidak akan tertutup maka pengguna akan lebih aman. Yang kedua adalah alamat bitcoin yg dihasilkan akan lebih pendek jika pada umumnya alamat yg dihasilkan akan memiliki panjang 256 bit namun pada bitcoin alamat yg dihasilkan dari hash tsbt akan lebih pendek menjadi 160 bit ini akan membuat pengguna lebih nyaman tentunya karena alamat yg dihasilkan lebih pendek.
Jawaban pertama generik dan kurang menjelakan lebih dalam lagi. Masih belum bisa menjawab kenapa tidak 3, atau 4, atau 5 sekalian? Selain itu jawaban yang kedua sepertinya agak miss dari poin pertanyaan ini yang menanyakan hashing pada tiap block. (CMIIW)
Pengertian SHA256 adalah suatu script / kode alogaritma untuk mengelola suatu data ( Block ) yang masuk dengan cara membandingkan & memperhitungkan suatu data dengan rumus alogaritma, sehingga data ( Block ) yang keluar dapat di tentukan & di ketahui. SHA256 di ciptakan oleh NSA ( National Security Agency ) yang mana SHA256 juga memiliki keamanan data & privasi. SHA256 dalam BITCOIN berperan berbeda-beda. SHA256 juga berperan untuk menciptakan suatu BITCOIN ADDRESS. Berbeda dalam MINING, SHA256 berfungsi untuk mengelola suatu MINING untuk mendapatkan Hasil / yang biasa di kenal dengan SHARES. Analogi dalam kehidupan SHA256 adalah, SELANG AIR. SHA256 katakanlah selang berdiameter 10cm. Di sebuah tampungan air tersebut ada bermacam - macam bola warna warni dan berdiameter berbeda - beda. Hanya warna merah & hijau yg berdiameter 10cm. Sedangkan kuning berdiameter 8cm. Tampungan air tersebut di alirkan ke sebuah ember menggunakan SELANG ( SHA256), maka bola yang akan melewati selang tersebut dan masuk ke ember adalah Merah, Hijau & Kuning.
Tidak menjawab pertanyaan yang ditanyakan. Kami tidak menanyakan apa itu SHA256.
Pertanyaan #2: Mengapa kita memerlukan adanya konfirmasi (atau banyak konfirmasi) sebelum kita bisa mengirimkan Bitcoin yang kita terima?
Untuk pertanyaan ini saya rasa jawabannya relatif mudah, agan hanya perlu menunjukkan kenapa harus ada konfirmasi, apa yang terjadi bila tidak ada konfirmasi sehingga mau tidak mau diperlukan konfirmasi sebelum Bitcoin bisa kita gunakan.
Ya karena sistem crypto (bitcoin) ini kan decentralisasi, konfirmasi dibutuhkan untuk memvalidasi transaksi atau biasa disebut konsensus,ada PoW dan PoS untuk menentukan block yang valid. Kalau bitcoin kan protokolnya PoW, melalui miner seperti ethereum juga, miner ini memecahkan algorithma, lalu dikonfirmasi, dan untuk bitcoin dibutuhkan 6 konfirmasi bahwa transaksi itu benar-benar valid dan dapat dimasukkan ke blockchain.
Jawabannya kurang detail dan terkesan normatif. Agan bisa memperdalam jawaban seperti ini ke depannya dengan menjelaskan mengapa angka 6 itu bisa menjadi ukuran misalnya, dan seterusnya. Akan tetapi masih nyambung dengan pertanyaan yang diajukan.
Agar terbukti bahwa Bitcoin yang terkirim adalah asli dan bukan hasil penipuan atau SCAM. Selain itu hal tersebut mencegah terjadinya salah pengiriman sehingga orang yang dikirim tidak dapat menggunakan Coin itu.
Jawabannya masih cenderung normatif, saya rasa agan perlu memperdalamnya.
Untuk memastikan bahwa anda ( pemilik akun ) benar - benar melakukan transaksi. Biasanya konfirmasi akan masuk di Email anda, ada juga yang menggunakan Kode unik, dan masih banyak lagi konfirmasi - konfirmasi setiap Exchange / Wallet. Selain itu, manfaat yang kita dapat adalah kita bisa memastikan kembali apakah Alamat Penerima yang kita isi sudah benar / belum.
Err, wait. Sepertinya salah memahami maksud pertanyaan di atas.
Nice answer.
Pertanyaan #3: Bagaimana solusi yang memungkinkan untuk mengatasi masalah biaya transfer yang tinggi dan konfirmasi transaksi yang lambat?
Pertanyaan ini bersifat terbuka. Agan bisa menjawab dengan menyampaikan bagaimana penerapan penyelesaian masalah biaya transfer dan konfirmasi yang lama yang telah diterapkan sampai saat ini, ataupun memberikan alternatif gagasan mengenai bagaimana solusi yang memungkinkan untuk mengatasi masalah tersebut ke depannya di luar dari solusi alternatif yang sudah ada dan diterapkan.
Waduh kalau ini cukup kompleks jawabannya haha. Kalau menurut saya sebenarnya terciptanya bitcoin cash, bitcoin diamond, dan lain sebagainya yang tercipta dari HardForknya bitcoin ini sudah menjadi "jawaban" dari solusi kelemahan bitcoin itu, yaitu masalah lelet dan mahalnya fee transaksi, tapi sepertinya "gagal". Ini juga menunjukkan kelemahan BTC yang sangat fatal pada desainnya yang cuman punya blok sebesar 1MB saja. Sedangkan untuk segwit, segwit 2x, lightning apalah itu saya jujur jg belum paham mendetail, cuman intinya sepertinya ingin mempercepat atau mengimprove block btc.
Jawaban agan tidak menjelaskan mengapa itu menjadi solusi atas masalah yang sudah ada. Walaupun menyinggung LN pun juga tidak menjelaskan secara mendetail, walaupun agan seharusnya bisa mempelajarinya dulu sebelum menjawab pertanyaan ini.
Pertanyaan #3 Untuk membuat biaya transfer menjadi lebih rendah, tidak ada cara lain lagi selain memperkecil jumlah transfer. Semakin besar jumlah transfer maka akan semakin tinggi pula biaya transfernya. Hal itu pula menyebabkan kecepatan transfer semakin lambat dan jika ingin mempercepat waktu transfer dapat menambah biaya transfer. Saat ini ada yang disebut dengan Bitcoin Lightning Network yang akan mempercepat transaksi Bitcoin dengan sistem Multi Signature Address. Sumber Bitcoin Lightning Network
https://bitcointalksearch.org/topic/edukasi-apa-itu-lightning-network-penjelasan-singkat-3395352Menurut saya jawaban ini relatif berhubungan, walaupun pemaparannya kurang mendetail. Berkaitan dengan memperkecil jumlah transfer untuk mengurangi biaya tersebut, saya rasa nantinya akan percuma karena akhirnya kita juga perlu mengirimkan berulang-ulang dengan tingkat fee yang berbeda-beda, bahkan bisa jadi bertambah mahal karena kondisi network. Tapi lumayan juga dibandingkan jawaban yang lain.
untuk transfer ke indodax saya akan menggunakan XLM atau XRP tapi tidak terjebak untuk menggunakan doge jika transaksinya besar, untuk lainnya yang mempunyai fee rendah dan kecepatan transaksi dalam hitungan detik adalah EOS, Steem, XSPEC, NEO, BTS
Emm, sepertinya agan salah paham dengan pertanyaan di atas.
Jika biaya transaksi penghitungannya menggunakan %, hindari transaksi transaksi jumlah besar & jangan melakukan transaksi berkali - kali. Jika penghitungan transaksinya menggunakan nilai ( contoh : 0,000045 ), disarankan untuk transaksi dengan jumlah besar & berkali - kali ( Menerima & Mengirim ). Jika waktu konfirmasi lama segera hubungi CS/HELP SUPPORT via E-Mail / Chat, kirim NOMER LAPORAN yang belum terkonfirmasi.
Emm, sepertinya agan salah paham dengan pertanyaan di atas.
Pertanyaan #4: Mengapa Bitcoin menggunakan fungsi hash sebagai syarat bagi miner untuk menuliskan transaksi-transaksi baru pada blockchain melalui proses mining?
Untuk menjawab pertanyaan ini, pada dasarnya setidak-tidaknya harus terjelaskan mengenai 2 hal, yaitu apa itu fungsi hash dan mengapa dalam penulisan transaksi diperlukan hashing sebagai syaratnya. Apa saja yang menjadi dasar pertimbangan dalam penulisan pada blockchain membutuhkan hashing, kenapa tidak tanpa hashing saja, dan seterusnya.
Jawabannya saya rasa ya karena seperti pada pertanyaan sebelumnya tadi, nomor 2 apa ya kalau tidak salah. Karena desentralisasi, jadi butuh konfirmasi untuk memvalidasi. Misalkan saya ibaratkan ada suatu surat, yang membutuhkn 6 tanda tangan agar bisa dibilang resmi dan dapat di sahkan. Hampir sama seperti hash ini dimana hash adalah tanda tangan dari miner itu sendiri.
Ralat untuk nomor 4 ini, hash ini maksud saya adalah sebagai kecocokan atau keasliannya. Bagaimana ya, saya gak susah menjelaskannya. Lebih enak menggunakan perumpamaan. Misal ada 6 orang pemimpin perusahaan, dan ada suatu kebijakan yang harus ditandatangani suratnya oleh ke 6 pemimpin perusahaan tersebut, dari mana kira-kira kita tau bahwa draft surat kebijakan tadi adalah asli dari perusahaan? bukan dari pihak lain? Nah disinilah hash itu diperlukan. Dalam analogi tanda tangan yang saya sebutkan pada jawaban sebelumnya tadi yang ingin saya ralat, hash ini misal sebuah surat ada ciri-cirinya,seperti kop surat, logo, cap perusahaan, atau ciri tertentu yang menandakan bahwa surat itu asli dan otentik sebelum ditandatangani oleh ke 6 pemimpin perusahaan tadi. Jadi miner bitcoin dalam menyelesaikan block akan melihat/ berdasarkan hash,siapa yang hashnya cocok dengan block tersebut maka itulah block yang valid. Jadi kesimpulannya dari pertanyaan ke 4 ini kenapa bitcoin menggunakan fungsi hash xxx... adalah biar aman. Sekali lagi itu adalah proteksi, kalau duit fisik ada proteksinya seperti benang pengaman,serial number dll, nah kalau bitcoin ya pake hash."
Jawaban ini menurut saya relatif baik, sayangnya tidak menjawab pertanyaan ini secara utuh. Kenapa demikian? Karena yang ditanyakan bukanlah mengapa dalam sistem Bitcoin mengharuskan adanya hashing ketika pembuatan blok, akan tetapi lebih kepada segi mengapa miner dibebani beban itu ketika ingin menuliskan data yang dia dapat dari network. Jawaban agan evilsign lebih mengarah pada asumsi bahwa fungsi hash ada sebagai alat untuk melakukan validasi transaksi, akan tetapi tidak menyentuh aspek bahwa fungsi hash tersebut juga berperan sebagai alat untuk menjaga agar value Bitcoin tetap atau bahkan meningkat karena miner akan senantiasa diharuskan untuk memperoleh hash yang tepat dengan kesulitan yang semakin meningkat.
Untuk membuat BLOK baru yang berisi transaksi - transaksi baru. Sebagai imbalannya seorang MINER akan mendapatkan beberapa BITCOIN karena telah menciptakan BLOK baru tersebut. Selain itu seorang MINER sangat berperan di jaringan BITCOIN.
Tidak menjawab pertanyaannya. Atau menjawab tapi jawabannya tidak seperti yang diharapkan. Agan harus menjelaskan mengapa pembuatan blok itu harus dilalui dengan melakukan hashing.
Pertanyaan #5: Saat ini kita tidak memiliki fitur untuk menarik coin yang telah kita kirimkan pada sebuah address (baik sudah dikonfirmasi atau tidak). Menurut agan apakah hal ini merupakan suatu fitur yang perlu ditambahkan pada Bitcoin? Mengapa demikian?
Untuk menjawab pertanyaan ini, setidaknya agan-agan bisa menunjukkan dampak baik dan negatifnya ketika tidak ada dan ada fitur penarikan uang. Pertanyaan ini bersifat terbuka, alias tidak ada jawaban tunggal yang saat ini dipegang oleh saya. Kreativitas menjawab pertanyaan ini yang lebih ditekankan untuk menjawab pertanyaan tersebut.
Hmm, saya rasa ini belum perlu deh. Buat apa bisa dibalikin? nanti malah bikin repot lagi. Lagian selama ini bila kita transfer duit ke rekening bisa dibalikin alias dibatalin ? kan nggak ya? Maaf kalau salah mohon dikoreksi. Soalnya ini kan alat pembayaran, ya searah dong. Kecuali ada perjanjian antara buyer dan seller, bukannya dibalikin atau dibatalin bahasa sistemnya, melainkan di kirim lagi dari arah yang berbeda. Misal tadinya A ngirim ke B. Ya udah itu 1 transaksi. Kalau ada something misalkan pembatalan proses pembelian, ya si B melakukan transaksi lagi dengan mengirim sejumlah dana ke A. tetep saja terjadi 2 kali proses transaksi kan, tanpa membatalkan transaksi pertama tadi. Kalau misal ada transaksi reversible nanti bakalan muncul masalah baru lagi.
Jawabannya tidak perlu dibalikin. Dasarnya:
1. Yang namanya alat pembayaran harusnya searah, tidak bisa dua arah. (Dasarnya apa belum dijelaskan. Analogi dengan transfer duit ke rekening agak kurang match menurut saya, atau mungkin harusnya lebih dieksplisitkan lagi.)
2. Lebih prefer ada sistem dikirim ulang dari arah yang berbeda. Artinya, transaksinya bukan pembatalan atau penarikan, melainkan kirim balik oleh si pihak kedua. Hal ini dinilai lebih baik karena bisa menghindari masalah baru yang muncul karena ada fitur penarikan uang. (Yaitu repot?)
Diperlukan sebuah fitur untuk menarik coin yang telah kita kirimkan pada sebuah address, tapi dengan kondisi fitur ini hanya berfungsi pada transaksi yang belum dikonfirmasi (unconfirm transaction). Karena pada kenyataannya banyak kasus Unconfirm transaction memakan waktu yg sangat lama, dah bahkan sampai expired. Dengan adanya fitur ini, kita tidak perlu cemas lagi manakala BTC kita terkatung-katung didalam blockchain tanpa ada satupun konfirmasi. Sehingga kita bisa merubah nilai fee, supaya transaksi lebih cepat untuk dikonfirmasi.
Dari jawaban ini disampaikan bahwa fitur menarik kembali transaksi ini diperlukan akan tetapi hanya pada kasus transaksi yang belum terkonfirmasi, dengan dasar karena koinnya stuck relatif lama sehingga bisa ditarik kembali lah supaya bisa lebih bermanfaat. Poin perubahan nilai fee tersebut sebenarnya tidak berhubungan secara langsung dengan masalah penarikan koin kembali, karena kita bisa mengubah jumlah fee atau mengakali transaksi yang stuck di blockchain dengan CPFP.
Boleh saja ditambahkan fitur tersebut, karena akan berguna apabila kita salah memberikan koin pada alamat orang lain. Dengan catatan pihak yang ditransfer coin menyetujui penarikan coin tersebut. Akan tetapi mungkin saja pihak tersebut tidak mau menyetujuinya karena mereka ingin mendapatkan coin. Tetapi fitur tersebut akan tetap berguna jika penarikan tersebut tidak mendapat biaya tambahan atau pajak.
Pendapat ini didasarkan pada asumsi bahwa hal tersebut secara praktis berguna apabila kita salah memberikan alamat pada orang lain, selama orang lain tersebut menyetujui penarikan koin tersebut. Analisis berikutnya memaparkan konsekuensi negatif atau potensi tidak bergunanya sistem ini ketika diterapkan yaitu bahwa penerima bisa saja menolak memberikan koinnya. Untuk masalah pajak atau biaya tambahan mungkin ini hubungannya lebih dekat dengan fee.
Menurut saya fitur tersebut tidak perlu di tambahkan. Akan lebih riskan jika kita bertransaksi P2P. Contohnya, saat kita membeli BITCOIN dengan UANG RUPIAH dengan metode P2P pemilik BITCOIN yang kita beli akan lebih mudah menarik kembali BITCOIN tersebut. Jikalau ada fitur MENARIK BOITCOIN kembali, akan lebih aman jika menambahkan fitur memasukkan KODE VERIFIKASI yang harus sesuai / sama antara pengirim & penerima sebelum nilainya masuk ke WALLET.
Sejujurnya saya kurang memahami bagian awalnya. Maksudnya apakah kalau fitur menarik kembali koin itu ditambahkan, hal ini akan lebih berbahaya ketika kita bertransaksi dua orang secara tertutup? Kalau iya, maka saya rasa kekhawatirannya lumayan masuk akal karena apabila sistem ini ditambahkan maka bisa saja pemilik awal bitcoin itu menarik kembali bitcoinnnya secara tiba-tiba setelah kita memberikan uang untuknya.
Untuk poin penambahan kode verifikasi itu menurut saya relatif menarik. Akan tetapi jawaban agan sebenarnya masih belum menyentuh aspek fundamentalnya, karena dasar dari penjelasan agan berkutat pada asumsi sistem penarikan Bitcoin tertentu yang bisa jadi berbeda. Dalam arti, jawaban tidak perlu ditambahkan tersebut berasumsi tidak adanya fitur verifikasi antara penerima dan pengirim dari Bitcoin, sementara jawaban yang menerima itu berasumsi pada adanya model verifikasi antara pengirim dan penerima dalam sistem tersebut. Akan tetapi pertanyaan fundamentalnya belum terjawab, mengapa fitur ini tidak perlu / perlu dan apakah bisa ditambahkan / tidak?