This article has been translated from English to Tagalog.

Bago tayo sumabak sa usapan tungkol sa Bitcoin mining, kailangan muna nating mag-side trip para matutunan ang isang konsepto na pundasyon ng cryptocurrencies.

Para talagang maintindihan kung paano gumagana ang Bitcoin at iba pang cryptocurrencies, mahalagang maintindihan muna ang konsepto ng “hashing“.

Kapag narinig mo ang salitang “hash”, baka ang iba ay maisip ang hash browns, isang sikat na American breakfast food, habang ang iba naman, gaya ni Snoop Dogg, baka maisip ang cannabis concentrate product. 🌿

Maling uri ng hash

Sa lesson na ito, pag-uusapan ko ang ibang klase ng hash!

Medyo technical ito, pero gagawin kong madali para sa'yo.

Kailangan mo ring maging pamilyar sa konsepto ng hashing para maintindihan kung paano gumagana ang Bitcoin mining (na siya namang susunod na guide) kaya huwag palampasin ang mga lessons na ito. 👁️

Ano ang hashing?

Hashing ay isang method ng cryptography na nagko-convert ng anumang uri ng data sa isang unique string of text na may fixed length.

Cryptography ay ang practice at pag-aaral ng mga technique para sa secure communication mula sa mga outside observers. Sa internet era, ginagamit ang cryptography para protektahan ang computer information o “data”.

Kung hindi pa ito obvious, ang “crypto” sa cryptocurrencies ay nangangahulugang cryptography.

Hashing ay isang pundamental na bahagi ng cryptography. At may malaking papel sa likod ng “crypto” sa cryptocurrencies.

Sa simpleng salita, ang hashing ay nangangahulugang pagpasok ng text na kahit anong haba sa pamamagitan ng isang hash function na nagbibigay ng output na may FIXED length.

Hash Function

Ang anumang piraso ng data ay puwedeng i-“hash”, kahit ano pa ang laki, uri, o haba nito.

Ang hash na nabubuo ay laging may parehong haba.

Sa mga halimbawa sa ibaba, gamit ang SHA-1 hash function, kahit gaano pa kahaba ang “input”, ang “output” ay laging 40 characters long.

Hashing Example - Hello

Hashing Example - BabyPips.com

Hashing Example - i

Narito ang mabilis na comparison ng tatlong halimbawa:

Input Hash
Hello f7ff9e8b7bb2e09b70935a5d785e0cc5d9d0abf0
BabyPips.com 8c8780d0b70c5ef42a534846cc042629cf07a440
I ca73ab65568cd125c2d27a22bbd9e863c10b675d

Mapapansin na kahit iba-iba ang “inputs”, lahat ng tatlong hash ay 40 characters long pa rin.

Sa specific na halimbawang ito, ang fixed length ay 40 characters long, na ito ay tinutukoy ng specific na hash function na ginamit (“SHA-1”), na ipapaliwanag mamaya.

Sa ngayon, tandaan lang na ang ibang hash functions ay pwedeng magproduce ng iba pang fixed lengths. Karamihan ay may fixed lengths na mas mahaba sa 40 characters.

Ang hash ay parang digital fingerprint.

Ang unique na piraso ng data ay laging magproduce ng parehong hash.

Halimbawa, kung ilang beses mong patakbuhin ang “Hello” sa isang hash function, ang hash sa itaas ang lilitaw ng napakaraming beses.

Para sa salitang “Hello”, ang SHA-1 hash nito ay laging:

f7ff9e8b7bb2e09b70935a5d785e0cc5d9d0abf0

At tanging “Hello” lang ang magpo-produce ng hash na iyon.

Kahit anong pagbabago sa “Hello” kahit pa maliit lang, gaya ng pagpalit nito sa “hello”, magreresulta ito sa isang ibang-iba na hash value.

Kaya't ang hashes ay kilala bilang digital na “fingerprints“.

Tulad ng fingerprint mo na unique sa'yo, ang hash ay unique sa specific na input ng data.

Ang hash ay parang fingerprint

Ang hash ay hindi maibabalik.

Ang INPUT sa isang hash function ay tinatawag na “preimage” Pero para gawing simple, tawagin na lang natin itong “input”.

Ang OUTPUT ng hash function ay tinatawag na “hash value” o “digest” o simpleng “hash”.

Ang hash function ay dinisenyo para gumana sa isang one-way manner.

Hash Function is One-Way

Dahil ang hash function ay isang one-way function, ang output, ang “hash”, ay hindi magagamit para isiwalat ang input, ang “preimage”.

Ibig sabihin nito na kung ang nakikita mo lang ay ang hash, hindi mo makaka-decipher ang original na data (ang “preimage”) na nire-represent ng hash.

Ang hash functions ay nagpo-produce ng irreversible hashes.

Irreversible ay nangangahulugang kung ang hawak mo lang ay ang hash, hindi mo ito magagamit para malaman kung ano ang original na piraso ng data. Ito ay nagpapahintulot sa original na data na manatiling secure at hindi alam.

Ano ang isang hash function?

Ang isang hash function ay isang mathematical operation na nagko-convert ng input data ng arbitrary length sa isang output ng fixed length na isinasagawa gamit ang isang tiyak na algorithm.

Ang isang algorithm ay isang step-by-step na set ng instructions para sa pag-perform ng calculations na ginagawa ng isang software program.

Hindi mahalaga kung ang input ay isang letra, isang salita, isang buong pangungusap, isang pahina mula sa libro, o isang buong libro, Iyan ang arbitrary na bahagi.

Ang bawat input ay magpo-produce ng unique na output na ipinapahayag bilang isang alphanumeric string ng fixed length.

Ang ibig sabihin lang ng Alphanumeric ay ang isang bagay ay binubuo ng parehong letters at numbers.

Ang isang useful hash function ay tinatago ang anumang clue tungkol sa kung ano ang itsura ng input.

Halimbawa, ito ay kailangang imposibleng matukoy kung ang input ay mahaba o maikli o naglalaman ng numbers o letters. Gayundin, ang pagbabago ng kahit isang character sa input ay dapat magresulta sa isang radikal na magkaibang output.

Mga Sikat na Hash Functions

Lahat ng hash functions ay gumagana sa parehong paraan. Nag-iinput ka ng data, at ang hash function ay “nagsi-scramble” ng data at nagbibigay ng hash.

Ang mga karaniwang hash functions ay:

  • MD-5: Message Digest 5 (MD5) ay isang karaniwang hash function. Noong una, ito ay itinuturing na secure pero sa kasalukuyan, natuklasan ng mga hackers kung paano i-decode ang algorithm at kaya nila itong gawin sa loob ng ilang segundo.
  • SHA: Secure Hash Algorithm (SHA) ay isa pang uri ng hash function. May ilang bersyon ng SHA na naka-group sa apat na pamilya: SHA-0, SHA-1, SHA-2, at SHA-3: Sa pangkalahatan, mas mataas ang numero, mas bago ang release at mas secure ang algorithm.

Para sa ating layunin, ang tanging hash function na kailangan mong malaman ngayon ay ang Secure Hash Algorithm (SHA). Mas partikular, ang SHA-2 family dahil naglalaman ito ng isang special member ng pamilya na tinatawag na SHA-256.

Ang SHA-256 ay isang hash function na nagko-convert ng isang string ng text sa isa pang string na laging pareho ang haba: 64 alphanumeric characters long. Ito ay katumbas ng 256 bits, kung saan nagmula ang “256” sa pangalan nito.

Special ito dahil ito ang hash function na ginagamit sa ilang bahagi ng Bitcoin system, na matututunan mo sa mga susunod na lessons. Sa ngayon, mahalagang malaman lang na ang SHA-256 ay isang uri ng hash function at ito ang ginagamit ng Bitcoin.

Kahit ang input ay isang pahina mula sa libro ng Harry Potter o ang buong serye ng mga libro ng Harry Potter. ang output ng SHA-256 hash function ay laging may PAREHONG haba na ipinapakita bilang 64 alphanumeric characters.

Tignan natin ngayon kung paano gumagana ang hashing sa crypto.