Hasil Review Challenge #1 Batch #1
Nama akun:
antonio88sChallenge yang diikuti: Kontribusi di Thread Edukasi Bitcoin
We have thus found a general but impractical algorithm to find a collision for any hash function. A more difficult question is: Is there some other method that could be used on a particular hash function to find a collision? In other words, although the generic collision detection algorithm is not feasible to use, there may be some other algorithm that can efficiently find a collision for a specific hash function.
Kita telah menemukan algoritma untuk mendeteksi bentrokan atau collision dalam sebuah fungsi hash namun sangat sulit untuk penerapannya. Tantangan untuk sekarang adalah apakah ada cara yang lain untuk menemukan bentrokan atau collision dalam suatu fungsi hash tersebut ? Dengan kata lain, meskipun algoritma yang ada sekarang untuk menemukan bentrokan atau collision tidak memadai untuk digunakan, namun mungkin ada sebuah algoritma yang dapat digunakan se-efisein mungkin untuk menemukan bentrokan atau collision dalam suatu fungsi hash.
Agan antonio menerjemahkan
a more difficult question sebagai tantangan untuk sekarang. Menurut saya terjemahan ini kurang tepat. Lebih tepatnya adalah pertanyaan sulit berikutnya adalah, sesuai dengan penggunaan diksi dalam teks yang asli.
Penerjemahan kalimat mulai dari
in other words sampai dengan
for a specific hash function juga agak kurang tepat. Ada penambahan kata/makna algoritma yang ada sekarang, akan tetapi dari diksi bahasa Inggris yang digunakan, lebih tepat apabila diterjemahkan dengan algoritma untuk mendeteksi tubrukan/collision secara umum tersebut, karena frasa generic collision detection algorithm itu mengacu pada algoritma teoretis yang telah dibahas sebelumnya.
Consider, for example, the following hash function:
H(x)= x mod 2256
This function meets our requirements of a hash function as it accepts inputs of any length, returns a fixed-sized output (256 bits), and is efficiently computable. But this function also has an efficient method for finding a collision. Notice that this function just returns the last 256 bits of the input. One collision, then, would be the values 3 and 3 + 2256. This simple example illustrates that even though our generic collision detection method is not usable in practice, there are at least some hash functions for which an efficient collision detection method does exist.
Perhatikan contoh fungsi berikut ini:
H(x) = x mod 2256
Fungsi tersebut telah memenuhi kriteria sebuah fungsi yang dapat diterapkan untuk berapapun jumlah inputan, menghasilkan output yang tepat (256 bits), dan sangat mudah untuk dieksekusi oleh komputer. Fungsi ini memiliki cara yang efisien untuk menemukan bentrokan atau collision dalam fungsi hash. Fungsi ini hanya akan menghasilkan 256 bits dari inputan awal. Satu bentrokan atau collision akan memiliki nilai 3 dan 3 + 2256. Berikut adalah contoh yang menggambarkan bahwa fungsi yang telah ada tidak mudah di terapkan untuk menemukan bentrokan atau collision ini dan seharusnya ada sebuah fungsi yang sangat efisien untuk menemukan bentrokan atau collision.
Penerjemahan bagian paragraf ini mengandung beberapa kesalahan penerjemahan. Pertama, dalam kalimat pertama seharusnya dijelaskan bahwa fungsi tersebut adalah sebuah fungsi yang memenuhi kriteria sebagai fungsi hash, yang disebabkan karena alasan bisa menerima semua jenis input dan seterusnya. Kedua, penerjemahan pada kalimat kedua tidak mencantumkan kata hubung tetapi sebagai penanda bahwa fungsi tersebut sekalipun memiliki sifat dasar yang sesuai dengan fungsi hash, akan tetapi memiliki perilaku atau atribut khusus. Ketiga, beberapa kata hubung yang seharusnya menghubungkan kalimat ketiga dan berikutnya menjadi kurang terhubung (kalimat kedua dan seterusnya pun sama) dan seolah-olah berdiri sendiri, misalnya pada kalimat ketiga seharusnya terdapat kata hubung perhatikanlah, ilustrasi sederhana ini menunjukkan bahwa dan seterusnya.
Yet for other hash functions, we don’t know whether such methods exist. We suspect that they are collision resistant. However, no hash functions have been proven to be collision resistant. The cryptographic hash functions that we rely on in practice are just functions for which people have tried really, really hard to find collisions and haven’t yet succeeded. And so we choose to believe that those are collision resistant. (In some cases, such as the hash function known as MD5, collisions were eventually found after years of work, resulting in the function being deprecated and phased out of practical use.)
Kita tidak tahu bahwa akan ada fungsi hash seperti itu. Yang kita duga adalah bentrokan atau collision tersebut akan selalu ada. Tidak ada fungsi hash sampai saat ini yang tidak memiliki bentrokan atau collision. Fungsi yang ada sekarang merupakan hasil dari coba-coba yang dilakukan sejumlah orang dan tidak ada yang berhasil untuk menghindari ataupun menghentikan bentrokan atau collision tersebut. Dan pada akhirnya kita meyakini bahwa bentrokan atau collision tersebut akan selalu ada dalam suatu fungsi hash. (Dalam kasus tertentu, misalkan sebuah fungsi MD5, permasalahan akan ditemukan setelah beberapa lama, dan pada akhirnya fungsi tersebut akan ditinggalkan dan tidak dipakai lagi).
Ada beberapa kesalahan dalam penerjemahan paragraf di atas. Pertama, kata hubung akan tetapi sebagai penghubung antara paragraf ini dengan paragraf sebelumnya menjadi tidak ada. Kedua, ada kesalahan dalam menerjemahkan kalimat kedua dalam paragraf ini, yang seharusnya diterjemahkan kurang lebih: kita menduga bahwa fungsi-fungsi yang lain kebal terhadap tubrukan atau collision. Ketiga, ada kata hubung yang hilang antara kalimat pertama dan kedua sebagai penghubung antar kalimat tersebut yang memiliki maksud atau keterangan pengecualian, bahwa sekalipun ada asumsi bahwa fungsi-fungsi hash tersebut kebal terhadap suatu tubrukan, akan tetapi pada kenyataannya tidak ada fungsi hash yang secara praktis memenuhi asumsi tersebut. Keempat, ada kesalahan penerjemahan dalam kalimat empat, seharusnya diterjemahkan kurang lebih: fungsi-fungsi hash kriptografi yang saat ini digunakan dalam aplikasinya hanyalah fungsi-fungsi yang sejauh ini telah berusaha untuk ditemukan tubrukannya oleh berbagai macam orang dengan usaha yang luar biasa akan tetapi belum berhasil.
APPLICATION: MESSAGE DIGESTS
Now that we know what collision resistance is, the logical question is: What is it useful for? Here’s one application: If we know that two inputs x and y to a collision-resistant hash function H are different, then it’s safe to assume that their hashes H(x) and H(y) are different—if someone knew an x and y that were different but had the same hash, that would violate our assumption that H is collision resistant.
APLIKASI : MESSAGE DIGESTS
Sekarang kita tahu bahwa bentrokan atau collision tersebut akan selalu ada, dan pertanyaannya adalah: Apakah program ini akan berguna ? Berikut penjelasannya: Jika kita tahu bahwa input x dan y untuk sebuah fungsi hash H adalah berbeda, maka kita dapat menyimpulkan bahwa H(x) dan H(y) berbeda – jika seseorang tahu bahwa x dan y berbeda namun tetap dalam satu fungsi hash yang sama, maka itu akan menggugurkan pernyataan bahwa transaksi H akan selalu tetap ada dan tidak bisa dicegah.
Ada kesalahan penerjemahan pada kalimat pertama, yaitu menambahkan asumsi keterangan bahwa collision akan selalu ada, padahal dalam kalimat aslinya yang dijelaskan hanyalah bahwa saat pembaca bagian tersebut, maka telah sama-sama mengetahui asumsi dasar atau pengertian mengenai apa itu collision itu. Kesalahan berikutnya adalah menerjemahkan kata it pada kalimat kedua sebagai program, padahal yang diacu sebenarnya merupakan collision resistance itu sendiri, yang lebih tepat apabila disebut sebagai sebuah sifat atau property dari suatu fungsi algoritma tertentu. Pada kalimat terakhir ada kesalahan penerjemahan dalam frasa violate our assumption that H is collision resistant, yang seharusnya diterjemahkan kurang lebih melanggar asumsi kita bahwa fungsi H memilik sifat tahan terhadap collision, dan bukan transaksi H akan selalu tetap ada dan tidak bisa dicegah.
This argument allows us to use hash outputs as a message digest. Consider SecureBox, an authenticated online file storage system that allows users to upload files and to ensure their integrity when they download them. Suppose that Alice uploads really large files, and she wants to be able to verify later that the file she downloads is the same as the one she uploaded. One way to do that would be to save the whole big file locally, and directly compare it to the file she downloads. While this works, it largely defeats the purpose of uploading it in the first place; if Alice needs to have access to a local copy of the file to ensure its integrity, she can just use the local copy directly.
Pernyataan ini membuat kita dapat menggunakan hasil dari hash sebagai message digest. Menurut SecureBox, sebuah perusahaan yang memiliki penyimpanan file online dan mengijinkan pengguna untuk mengunggah dan memastikan keamanan ketika user akan mengunduh file mereka. Seandainya Alice mengunggah file yang besar, dan dia ingin memastikan bahwa kelak file yang akan dia unduh adalah file yang dia unggah sebelumnya. Satu-satunya cara adalah menyimpan file tersebut secara keseluruhan dan membandingkan file ketika dia unduh apakah sama atau tidak. Meskipun hal ini bisa digunakan, namun ini bukan cara yang tepat. Yang benar adalah ketika Alice ingin mengambil filenya dan memastikan file tersebut aman dan sama, dia hanya perlu untuk mengcopynya saja.
Ada kesalahan penerjemahan pada kalimat kedua, yaitu menerjemahkan frase consider SecureBox dengan menurut SecureBox, padahal dalam konteks tersebut maksudnya adalah mengangkat SecureBox sebagai contoh dari bagaimana masalah praktik yang mungkin muncul dalam masalah online file storage sehingga memicu munculnya teknik penggunaan hasil hash sebagai dasar untuk mengecek otentitas suatu file yang diupload di internet.
Collision-resistant hashes provide an elegant and efficient solution to this problem. Alice just needs to remember the hash of the original file. When she later downloads the file from SecureBox, she computes the hash of the downloaded file and compares it to the one she stored. If the hashes are the same, then she can conclude that the file is indeed the same one she uploaded, but if they are different, then Alice can conclude that the file has been tampered with. Remembering the hash thus allows her to detect not only accidental corruption of the file during transmission or on SecureBox’s servers but also intentional modification of the file by the server. Such guarantees in the face of potentially malicious behavior by other entities are at the core of what cryptography gives us.
Fungsi hash seperti ini merupakan fungsi yang tepat dan efisien untuk mengatasi permasalahan ini. Alice hanya perlu untuk mengingat hash dari file yang asli. Ketika dia akan mengunduh file dari SecureBox, dia hanya cukup membandingkan hash dari file yang dia unduh dengan hash yang dia simpan sebelumnya. Apabila hash tersebut sama, dia dapat memastikan bahwa file yang dia unduh adalah file yang sama dengan yang telah dia unggah, namun apabila berbeda, maka pasti ada kesalahan dalam file tersebut. Dengan mengingat hash, maka Alice dapat mendeteksi kesalahan apa yang terjadi dalam server selama proses atau server SecureBox telah memodifikasi file yang dia miliki. Ini akan menjamin bahwa tidak akan ada perilaku yang menyimpang dari sebuah sistem.
Ada kesalahan penerjemahan, beberapa di antaranya adalah menghilangkan asumsi/pengertian bahwa fungsi yang dimaksud pada kalimat pertama adalah fungsi hash yang memiliki sifat collision-resistant. Kalimat terakhir diterjemahkan dengan menghilangkan beberapa maksud yang penting, salah satunya adalah menekankan mengenai nilai penting kriptografi untuk mengamankan file yang diupload dari serangan pihak-pihak tertentu.
The hash serves as a fixed-length digest, or unambiguous summary, of a message. This gives us a very efficient way to remember things we’ve seen before and to recognize them again. Whereas the entire file might have been gigabytes long, the hash is of fixed length—256 bits for the hash function in our example. This greatly reduces our storage requirement. Later in this chapter and throughout the book, we’ll see applications for which it’s useful to use a hash as a message digest.
Fungsi ini menghasilkan kesimpulan yang terukur dan sangat jelas. Fungsi ini memberikan cara yang efisien untuk mengingat sesuatu yang kita alami dan mengenali setelah sesuatu tersebut terjadi di waktu yang akan datang. Meskipun file memiliki ukuran yang besar namun untuk ukuran fungsi ini sangat kecil yaitu 256 bits sehingga akan menghemat tempat penyimpanan file. Setelah bagian ini kita akan melihat aplikasi yang menggunakan fungsi ini sebagai message digest.
Ada kesalahan penerjemahan, salah satu di antaranya dalam kalimat pertama seharusnya menjelaskan bahwa hasil fungsi hash, atau hash itu sendiri, memiliki peran yang penting dalam membuat sebuah pesan inti atau digest yang bersifat pasti. Pada kalimat terakhir juga memiliki kesalahan yang sama.
Property 2: Hiding
The second property that we want from our hash functions is that it is hiding. The hiding property asserts that if we’re given the output of the hash function y = H(x), there’s no feasible way to figure out what the input, x, was. The problem is that this property can’t be true in the form stated. Consider the following simple example: we’re going to do an experiment where we flip a coin. If the result of the coin flip was heads, we’re going to announce the hash of the string “heads.” If the result was tails, we’re going to announce the hash of the string “tails.”
Property 2: Hiding
Manfaat kedua yang ingin didapat dari fungsi hash ini adalah hiding. Hal ini menegaskan bahwa apabila kita memberikan output dari fungsi hash tersebut y = H(x), kita tidak akan pernah tahu apa inputan dari x. Sebagai contoh yang mudah: kita akan melakukan percobaan melempar koin. Apabila setelah melempar dan menghasilkan gambar kepala, kita memastikan bahwa string pada hash adalah “kepala”. Apabila hasilnya ekor, kita memastikan bahwa string pada hash adalah “ekor”.
Ada kesalahan penerjemahan dalam menyampaikan maksud penjelasan mengenai sifat hiding dari suatu fungsi hash. Seharusnya dalam kalimat 2 dijelaskan bahwa sifat hiding adalah suatu jenis sifat fungsi hash tertentu yang memastikan bahwa apabila kita memiliki hasil output dari suatu fungsi hash tertentu, maka tidak ada cara yang mudah untuk menemukan apa input yang mengeluarkan output tersebut.
We then ask someone, an adversary, who didn’t see the coin flip, but only saw this hash output, to figure out what the string was that was hashed (we’ll soon see why we might want to play games like this). In response, they would simply compute both the hash of the string “heads” and the hash of the string “tails,” and they could see which one they were given. And so, in just a couple steps, they can figure out what the input was.
Kemudian kita bertanya kepada seseorang yang tidak setuju terhadap hal ini, siapa yang tidak melihat koin ini dilempar, namun hanya melihat hasilnya saja, untuk melihat string apa yang dihasilkan pada hash (kita akan melihat kenapa kita menggunakan analogi seperti ini). Hasilnya, mereka akan mudah menyimpulkan bahwa kedua string pada hash adalah “kepala” dan “ekor”, dan mereka dapat melihat apa yang mereka berikan. Dan dalam beberapa langkah, mereka akan dengan mudah mengenali apa inputan sebelumnya.
Saya lebih prefer menerjemahkan adversary sebagai lawan di dalam game yang sedang dimainkan (dalam analogi tersebut) daripada diterjemahkan sebagai orang yang tidak menyetujui sesuatu. Lagi pula belum clear apa yang dimaksudkan dengan tidak setuju terhadap hal ini dalam terjemahan tersebut, sehingga justru menyulitkan pemaknaan dari segi pembaca.
The adversary was able to guess what the string was because only two values of x were possible, and it was easy for the adversary to just try both of them. To be able to achieve the hiding property, there must be no value of x that is particularly likely. That is, x has to be chosen from a set that is, in some sense, very spread out. If x is chosen from such a set, this method of trying a few values of x that are especially likely will not work.
Seseorang mampu untuk menebak apakah string yang akan dihasilkan karena hanya ada dua kemungkinan, dan itu membuat mereka mudah untuk mencoba dua kemungkinan tersebut. Untuk mampu mencapai manfaat dari hiding, haruslah tidak ada nilai dari x yang hampir sama. Inilah kenapa nilai dari x tidak bisa diambil dari sumber yang sama karena manfaat ini tidak akan tercapai dan cara ini tidak akan bekerja.
Ada banyak makna yang bergeser dalam penerjemahan kalimat keempat dan ketiga. Sebagai contohnya, dalam kalimat ketiga seharusnya dijelaskan atau disampaikan bahwa mengingat apabila suatu rentang input yang terbatas membuat lawan mudah menebak apa input dari suatu fungsi hash, maka seharusnya nilai dari input (dan sekaligus output) haruslah bersifat meluas atau tersebar dalam cakupan yang relatif besar.
The big question is: Can we achieve the hiding property when the values that we want do not come from a spread-out set as in our “heads” and “tails” experiment? Fortunately, the answer is yes! We can hide even an input that’s not spread out by concatenating it with another input that is spread out. We can now be slightly more precise about what we mean by hiding (the double vertical bar ‖ denotes concatenation).
Pertanyaan penting adalah: Apakah kita dapat mencapai manfaat hiding ini ketika nilai yang kita inginkan tidak diambil dari sumber yang acak seperti pada percobaan “kepala” dan “ekor” ? Tentu saja bisa! Kita dapat memodifikasi inputan yang tidak diambil dari sumber yang acak dengan cara menggabungkan inputan lain yang diambil secara acak. Kita sekarang dapat memahami arti dari hiding tersebut (garis ganda || berarti menggabungkan).
Dalam kalimat pertama, pertanyaan yang diajukan dalam teks bahasa Inggrisnya sebenarnya adalah mengenai apakah mungkin bisa sifat hiding itu dicapai apabila kita memiliki sumber input yang bersifat terbatas, bukan mengenai manfaatnya.
Hiding. A hash function H is said to be hiding if when a secret value r is chosen from a probability distribution that has high min-entropy, then, given H(r ‖ x), it is infeasible to find x.
In information theory, min-entropy is a measure of how predictable an outcome is, and high min-entropy captures the intuitive idea that the distribution (i.e., of a random variable) is very spread out. What that means specifically is that when we sample from the distribution, there’s no particular value that’s likely to occur. So, for a concrete example, if r is chosen uniformly from among all strings that are 256 bits long, then any particular string is chosen with probability 1/2256, which is an infinitesimally small value.
Hiding. Fungsi hash H akan hiding apabila suatu nilai rahasia r dipilih dari beberapa kemungkinan yang memiliki min-entropy yang tinggi, yang menghasilkan H(r || x), hal ini akan membuat nilai x susah untuk dikenali. Dalam sebuah teori, min-entropy mengukur bagaimana nilai yang dihasilkan dapat diprediksi, dan high min-entropy merekam ide yang pendistribusiannya tersebar (contohnya: random variable). Pengertian yang spesifik dari hal tersebut adalah, apabila ketika kita mengambil nilai dari sebuah distribusi, maka tidak ada nilai mirip yang akan didapat. Jadi, untuk contoh yang nyata, jika nilai r diambil serentak dari semua string yang memiliki panjang 256 bits, maka string khusus akan dipilih dengan kemungkinan 1/2256, yang berarti nilai kecil yang tidak terbatas.
Ada kesalahan penerjemahan, salah satunya dalam menjelaskan min-entropy. Kalimat kedua, in information theory dst seharusnya diterjemahkan sebagai Dalam teori informasi, min-entropy adalah sebuah ukuran dari dan seterusnya.
TL;DR: Penerjemahan agan antonio88s masih memiliki banyak kesalahan yang membuat arti/maksud dari teks asli bahasa Inggris yang dijadikan bahan dalam challenge #1 - batch #1 kurang tersampaikan dengan baik. Akan tetapi, ada beberapa isi penerjemahan yang relatif masih bisa dipahami dan juga ada
effort yang relatif terlihat dalam menerjemahkan text tersebut. Oleh karena itu, untuk submit partisipasi translasi ini dihadiah
3 merit yang disponsori oleh dbshck.