ინფლაციური ბაგი, ანუ კინაღამ როგორ დაიღუპა ბიტკოინი

ფოტო - ინფლაციური ბაგი, ანუ კინაღამ როგორ დაიღუპა ბიტკოინი
Bitcoin Core-ის დეველოპერების მიერ აღმოჩენილი ბაგი ათობით მილიონი ბიტკოინის უფასოდ მაინინგის საშუალებას იძლეოდა.
2018 წლის სექტემბერში დეველოპერებმა ფარულად გამოასწორეს პროგრამული უზრუნველყოფის მოწყვლადობა, რომელსაც, ცნობილი კრიპტომეწარმე სამსონ მოუს აზრით, ბიტკოინის განადგურება შეეძლო.

როგორ გამოასწეს შეცდომა CVE-2018-17144

ინფლაციური ბაგი იმდენად ფატალური იყო, რომ Bitcoin Core-ის დეველოპერებმა მისი საიდუმლოდ შენახვა გადაწყვიტეს. კრიპტოსაზოგადოებას თავდაპირველად სიმართლის მხოლოდ ნაწილი გაუმხილეს და განუცხადეს, რომ აღმოჩენილი მოწყვლადობა მომსახურების დაბლოკვას იწვევს. მისი დახმარებით ჰაკერები შეძლებდნენ ნოდების გამორთვასა და ქსელის მნიშვნელოვანი სეგმენტის დროებითი დაზიანებასაც კი. დეველოპერებმა განმარტეს, რომ ბაგს შეიცავდა Bitcoin Core-ის ვერსია, რომელიც ერთი წლის წინ გამოვიდა. შესწორებული ვერსია ინციდენტიდან 24 საათში გაუშვეს.
სწრაფი განახლებების სტიმულირების მიზნით, მიღებულ იქნა გადაწყვეტილება, დაუყოვნებლივ გამოსწორდეს და გამჟღავნდეს ნაკლებად სერიოზული მოწყვლადობა, ამავდროულად მოხდეს მაინერების, საწარმოებისა და სხვა მოწყვლადი სისტემების ინფორმირება და სრული ვერსიის გამოქვეყნების გადადება, რათა სისტემებს მიეცეს დრო განახლებისთვის
, – აღნიშნულია Bitcoin Core-ის ანგარიშში.
გეგმამ გაამართლა - ბიტკოინის მაინინგის ჰეშრეიტის 50%-ზე მეტი რამდენიმე დღეში განახლდა. მრავალი კრიპტელისთვის  ფორმულირება „მომსახურების შეჩერება“ ისედაც საკმაოდ საგანგაშოდ ჟღერდა. მოგვიანებით მათ აუწყეს, რომ ბაგის გამოყენების შედეგად, სულ მცირე, 21 მილიონი BTC-ის უფასოდ მიღება იქნებოდა შესაძლებელი.

ინფლაციური ბაგის მიზეზები

მომსახურების დაბლოკვის თაობაზე პირველი ანგარიში Bitcoin Core-ს ანონიმურმა მომხმარებელმა გაუგზავნა. ორი საათის შემდეგ, დეველოპერმა, მეტ კორალომ გააცნობიერა, რომ შეცდომა რეალურად ინფლაციური იყო. ის წარმოიშვა დეველოპერების წარუმატებელი მცდელობების შედეგად, გაეზარდათ ბიტკოინის მდგრადობა ორმაგი ხარჯვის შეტევის მიმართ. პროგრამისტებმა იპოვეს მოწყვლადობა, რომელიც პოტენციურად იწვევდა ნოდების მასშტაბურ ხარვეზს, როდესაც ბოროტმოქმედი ერთსა და იმავე UTXO-ს (Unspent Transaction Output) ერთი ტრანზაქციის ფარგლებში ორჯერ ხარჯავდა. პრობლემური განახლება ამ ხარვეზს ძალიან წარუმატებელი გზით აღმოფხვრიდა. ნოდის მწყობრიდან გამოყვანის ნაცვლად, ახალი შეცდომა აიძულებდა ძველი პროგრამული უზრუნველყოფის კლიენტებს, ორმაგი ხარჯვის ტრანზაქციები ძალის მქონედ აღექვა.
ბაგები ხდება. ეს ცხოვრებისეული ჭეშმარიტებაა. მე არ ვაკრიტიკებ მათ შეცდომის გამო. მე ვაკრიტიკებ მინიმალისტ იდიოტებს, რომლებიც ამტკიცებენ, რომ Core-ის დეველოპერები ღმერთის მსგავსი პიროვნებები და მსოფლიოში საუკეთესო დეველოპერები არიან™
, – დატვიტა OpenBazaar-ის პროტოკოლის წამყვანმა დეველოპერტმა, კრის პაჩიამ.