Hash – Bitcoin’in tapıntısı


Əvvəlki yazıda Bitcoin sisteminin arxasındakı fikirləri izah etdik, lakin bir məsələ izah olunmamış qaldı: Bitcoin madencilerinin daim həll etməyə çalışdığı bu qanlı sərt tapıntı nədir??

Xatırladaq ki, Bitcoin sistemində madenciler davamlı rəqabətdədirlər: Kim əvvəlcə tapmacanı həll etsə blok zəncirinə yeni bir blok əlavə etmək şərəfini qazanacaq və biraz da pul qazanacaq. Beləliklə, madenciler tapmacanı həll edən ilk olmağa çalışırlar. Növbəti hissədə aşağıdakı suallara müraciət edəcəyik:

  • Bu tapmacanın nədir?
  • Bitcoin sistemində necə birləşdirilmişdir?

Şaşdırmaq – Kriptoqrafik hash Puzzle

‘Kriptoqrafiya’ sözündən qorxmayın, məzmunumuzda ‘hash’ tapmacasının kriptoqrafiya dünyası ilə əlaqəli olduğu, yəni sarsılmaz sistemlər qurması deməkdir..

Bəlkə bir hash tapmaca üçün ən yaxşı real dünya bənzəri barmaq izidir.

Mavi fonda barmaq izi

Təsəvvür edin ki, sizə barmaq izi nümunəsi verilir və sizdən bu barmaq izinin mənsub olduğu şəxsin boyu, çəkisi və ümumi görünüşünü kəşf etməyiniz xahiş olunur. Siz nə edərdiniz?

Biraz daha çətinləşdirmək üçün, barmaq izləri ilə digər insan xüsusiyyətləri (saç rəngi kimi) arasında heç bir əlaqə olmadığını düşünün, buna görə də bu barmaq izinin ən yaxşı dostunuzdan gəldiyini sınamağın yeganə yolu barmaq izini götürmək və digəri ilə müqayisə etməkdir.

Ən yaxşı seçiminiz, yerdəki hər bir insanın barmaq izlərini götürməsi və bir matç tapıb dayanmadan bu barmaq izi ilə müqayisə edilməsidir. Əgər uğursuz olsanız, doğru adam yoxladığınız sonuncu olacaq, yəni dəqiqədə bir adamı yoxlamağı düşündüyünüz təqdirdə onu 13,555 il ərzində axtarmağa davam edəcəksiniz (və Yer kürəsinin əhalisi təxminən 7.125 milyarddır) Xalq). Şanslı olsanız, həmin vaxtın yalnız yarısını axtarmağınız gözlənilir, hooray! Pis xəbər ah?

Hash tapmacamıza qayıdaq. Bir hash tapmacasında sizə verilmiş barmaq izi, “köpək” kimi simvolların siyahısıdır (gəlin bunu bir söz deyək), bundan sonra vəzifəniz düzgün insan tapmaqdır (bizim vəziyyətimizdə bu da sözdür) barmaq izini çıxaran. Bu məqsədlə edə biləcəyiniz yeganə şey bütün mümkün birləşmələri (bəzi uzunluqlarda) bir-bir sınamaqdır.

kriptovalyutası

(Şəkil mənbəyi: https://blog.varonis.com/the-definitive-guide-to-cryptographic-hash-functions-part-1/)

Konkret olaraq, bir maşın var ki, içərisində bir neçə rəqəm qoyanda hər hansı digər rəqəm birləşməsindən bir nəticə çıxarır. Bu maşın haqqında tamamilə heç bir şey bilmirsiniz və sehr kimi işləyir – qoyduğunuz personajlarla onun yaratdığı simvol arasında heç bir əlaqə görmürsən. Müşahidə etdiyiniz tək qayda, maşına nə qədər simvol qoymağınızdan asılı olmayaraq, istehsal olunan məhsulun eyni uzunluğa malik olmasıdır.

Bir az texniki: Maşın tərəfindən istifadə olunan simvol (həm girişiniz, həm də çıxışınız) yalnız 0-9 rəqəmlərindən və a-f altı hərfdən ibarətdir. Bu o deməkdir ki, giriş və çıxışın hər bir xarakteri 16 simvoldan biri ola bilər.

Bulmacanın əslində bir sözdür (simvolların siyahısı), onu maşının çıxışını təmsil edən A adlandırın, onu həll etmək üçün tapşırığınız düzgün girişi (başqa bir söz) tapmaq, iti B çağırın ki, qoyduğunuz zaman B çıxışı kimi A alacaqsınız.

Sadə bir davadan başlayaraq, maşının tək bir xarakterli məhsul çıxardığını düşünün. Bu, yalnız 16 fərqli mümkün çıxışın olması deməkdir. Nümunə olaraq, ‘d’ (tapmacan kimi) xarakter aldığınıza və maşın daxil edilmiş hər bir xarakterin fərqli bir xarakterə səbəb olacağı şəkildə işlədiyini düşünün. Beləliklə, bütün mümkün simvolları sındırsanız, 0-9 və a-f işarələri taparsan, yəni maşın içərisinə daxil edildikdə ‘d’ hərfini bir nəticə olaraq meydana gətirən simvol. Olmaq üçün ən azı 16 müqayisə tələb olunur tamamilə əminəm bir matç tapılacağını.

Bunu bir az daha çətinləşdirmək üçün, əvvəlki nümunədəki kimi, maşının tək bir əvəzinə 2 işarədən bir məhsul çıxardığını düşünün. Bu 16X16 = 256 fərqli mümkün nəticələrin olduğunu göstərir. Buna görə məsələn, ‘4c’ şəklində bir tapmaca verildikdə, zəmanət vermək üçün 2 simvoldan (yəni ’00’, ’01’ … ‘fd’, ‘fe’, ‘ff’) mümkün olan bütün girişləri sınamalı olacaqsınız. bir uğur.

Diqqət yetirin ki, maşının çıxış uzunluğunu bir işarə ilə artırmaq bir ölçülü sifarişlə (misalımızda 16 amil ilə) etməli olduğunuz sınaq sayını artırır. Beləliklə, bir simvolun çıxışı 16 sınaq, 2 simvolun çıxışı 256 sınaq, 3 simvolun çıxışı 4096 sınaq nəticəsinə səbəb olur və s..

Beləliklə, ‘böyük iş nədir?’ Deyə soruşa bilərsiniz. Bu gün kompüterlər o qədər sürətlidirlər ki, bütün sınaqları saniyə ərzində hesablayacaq bir proqram qura bilərsiniz!

Yaxşı, sınaqların sayının artdığını gördünüz eksponensial yol! Bu o deməkdir ki, x simvolların çıxışı üçün x16triallar etməlisən! 40 işarədən bir nəticə çıxarmaq üçün 1461501637330902918203684832716283019655932542976 sınaq etmək lazımdır! Bu say o qədər böyükdür ki, heç bir müasir kompüter günəş sisteminin çökməsinə qədər daim işləsə belə bu sayda sınaq edə bilməz..

Hash bulmacasının çətin bir olduğuna hələ də əmin deyilsinizsə, sınamaq və aşağıdakı tapmacanın həllini tapmaq istəyə bilərsiniz: SHA1 maşını ilə işə saldıqda hamısından nəticə çıxaran simvolların siyahısını tapın. sıfır simvol (yəni ‘000000 …’). Maşın sha1-online.com saytında mövcuddur. Uğurlar ��

Bitcoin ilə əlaqə

Xatırladaq (əvvəlki yazıdan), hər qısa müddətdə (adətən 10 dəqiqə) ” blok-zəncir ” yeganə ‘miner’ (dövrənin qalibi) tərəfindən əlavə olunur. Həmin bloku əlavə edən bu mədənçi, hash tapmacasına bir həll tapan ilk adamdır. Bu tapmacanı başa düşmək üçün bir blokun necə göründüyünü bilməliyik. Ətraflı izləyin.

Qısaca olaraq, blok zəncirindəki bir blok bəzi məlumat quruluşudur:

  1. Bu, həllin nüvəsidir, blokçunun əməliyyat haqqını təmin edən hissəsidir..
  2. Əvvəlki bloka istinad – bu bütün əməliyyatın tarixini izləyə bilmək üçün tələb olunur, hər blok öz sələfini göstərir, bu yolla ilk bloka qədər tarixə qayıda bilərsiniz (Siz blockchain-də əməliyyatlar tarixini izləyə bilərsiniz) .info)
  3. Bu blok blok zəncirinə əlavə edilərsə, emal ediləcək bütün əməliyyatların siyahısı.

Aşağıdakı şəkildəki bu 3 xassəni görə bilərsiniz: nonce (son sarı rəngli cərgədə), arayış (‘əvvəlki blok hash’) və greyed satırlardakı əməliyyatlar siyahısı (rəqəmin vurğulanan sağ tərəfi izah olunur tezliklə).

blok-diaqram-qəşəng

(şəkil mənbəyi: http://www.righto.com/2014/09/mining-bitcoin-with-pencil-and-paper.html)

Qeyd edildiyi kimi, madenciler, tapmacanı həll edəcək düzgün boşluq axtarırlar. Əvvəlki sualda izah edilən hash tapmacası a idi spesifik maşının çıxışı olaraq istehsal etdiyi simvolların siyahısı, onu həll etmək üçün bunu istehsal edən bir giriş tapmaq lazımdır spesifik çıxış.

Lakin, bitcoin sistemində hash tapmacası bir qədər asandır: konkret bir çıxışı təqib etmək əvəzinə, madencer, icazə verilən nəticələrin böyük bir dəstindən bir məhsul çıxaran bir giriş tapmalıdır. Yəni, bir tapmacanın simvolların siyahısı ola bilər ki, ilk 16 simvol ‘0’ dir, qalan simvollarda heç bir məhdudiyyət yoxdur, onlar bir şey ola bilər. Bu tapmacanı çox asanlaşdırsa da, həll etmək üçün vaxt və enerji tələb edən bir problemdir. Yuxarıdakı şəkildəki madencer, tapmacanı həll etmək üçün bir çox sınaq keçirir, hər sınaqda dəyişdirilməsinə icazə verilən yeganə sahə nonce. Hər sınaqda, miner yalnız seçdiyi boşluğu, blok zəncirinə əlavə etmək istədiyi əməliyyat siyahısını və hamısını əvvəlki bloka istinad edərək birləşdirir, sonra onu SHA1 maşınına daxil edir. SHA1 maşınının çıxışı 16 ‘0’ işarəsi ilə başlayırsa, onda tapmacanı həll etdi və oyunu qazandı.

Oxumaqdan zövq aldığınıza ümid edirəm, növbəti yazıda görərsiniz!

Kim Martin Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map