Біткойн повторні транзакції: цікава, але з дуже низьким ризиком вразливість
Біткойн-транзакції зазвичай здійснюються шляхом посилання на ID попередньої транзакції для використання невитрачених виходів. Ці виходи можуть бути використані лише один раз, інакше виникне проблема з подвійною витратою. Проте, в історії Біткойна дійсно траплялися дві групи абсолютно однакових транзакцій. Це могло статися, оскільки coinbase-транзакції не мають входів, а генерують нові монети. Таким чином, дві різні coinbase-транзакції можуть надіслати однакову кількість на одну й ту ж адресу, будучи побудованими абсолютно однаково, що призводить до появи одного й того ж ID транзакції.
Ці дві групи повторних угод відбулися між 14 і 15 листопада 2010 року, тривалість близько 16 годин. Перша група повторних угод була вставлена між другою групою. Ми класифікуємо d5d2....8599 як першу повторну угоду, хоча вона вперше з'явилася в блокчейні пізніше, ніж інша повторна угода e3bf....b468.
Блокчейн-оглядачі по-різному обробляють ці повторювані транзакції. Деякі оглядачі за замовчуванням показують більш ранні блоки, тоді як інші завжди показують найновішу версію. Серед чотирьох залучених блоків лише один блок містить інші транзакції, об'єднуючи 1 Біт і 19 Біт в 20 Біт.
Загальна сума, що стосується повторних транзакцій, становить 200 BTC, або може бути зрозумілою як 100 BTC. На даний момент ці Біткойни не були використані. Теоретично, особа, що має відповідний приватний ключ, може витратити ці Біткойни, але як тільки вони будуть використані, повторні 50 BTC не можуть бути використані знову.
Повторні транзакції можуть спричинити плутанину в гаманцях і блокчейн-оглядачах, а також викликати деякі потенційні атаки та уразливості. Наприклад, зловмисники можуть використовувати повторні транзакції для атак на біржі, намагаючись викликати проблеми з їхніми фондами.
Щоб вирішити цю проблему, у лютому 2012 року було запропоновано м'який форк BIP30, який забороняє використання повторюваних ідентифікаторів транзакцій. Після цього BIP34 вимагав, щоб транзакції coinbase містили висоту блоку, що ще більше вирішило цю проблему. Однак у деяких блоках, створених до активації BIP34, все ще існувала потенційна загроза повторних транзакцій.
Наступний блок, в якому можуть виникнути повторні транзакції, – це 1,983,702, який, як очікується, буде згенеровано приблизно в січні 2046 року. Однак витрати на використання цього вразливості є дуже високими, і потрібні витрати понад 170 BTC, що за поточною ціною становить близько 15 мільйонів доларів США. З огляду на витрати та складність, ця вразливість не становить основної загрози безпеці Біткойна.
Хоча це питання технічно все ще існує, але через високу складність використання та великі витрати фактичний ризик є дуже малим. Тим не менш, розробники все ще розглядають можливі рішення на майбутнє, такі як примусове виконання обіцянок SegWit тощо. Загалом, цей вразливість повторної транзакції більше є цікавим історичним питанням, ніж серйозною загрозою безпеці.
Ця сторінка може містити контент третіх осіб, який надається виключно в інформаційних цілях (не в якості запевнень/гарантій) і не повинен розглядатися як схвалення його поглядів компанією Gate, а також як фінансова або професійна консультація. Див. Застереження для отримання детальної інформації.
13 лайків
Нагородити
13
5
Поділіться
Прокоментувати
0/400
BoredWatcher
· 18год тому
Цей баг виглядає трохи лякаюче
Переглянути оригіналвідповісти на0
GasBankrupter
· 18год тому
Цей баг не ж просто бійка, а потрібно ще й за порядком? Не дотримуючись бойових принципів.
Переглянути оригіналвідповісти на0
GraphGuru
· 18год тому
Хто розуміє, це просто стара помилка.
Переглянути оригіналвідповісти на0
GateUser-a5fa8bd0
· 18год тому
Що тут дивного, я вже давно це знаю.
Переглянути оригіналвідповісти на0
SatoshiLegend
· 19год тому
З точки зору функції hash160 з вихідного коду BTC, цей баг — це приречена доля.
Вразливість повторної транзакції Біткойн: історична проблема чи потенційна загроза безпеці
Біткойн повторні транзакції: цікава, але з дуже низьким ризиком вразливість
Біткойн-транзакції зазвичай здійснюються шляхом посилання на ID попередньої транзакції для використання невитрачених виходів. Ці виходи можуть бути використані лише один раз, інакше виникне проблема з подвійною витратою. Проте, в історії Біткойна дійсно траплялися дві групи абсолютно однакових транзакцій. Це могло статися, оскільки coinbase-транзакції не мають входів, а генерують нові монети. Таким чином, дві різні coinbase-транзакції можуть надіслати однакову кількість на одну й ту ж адресу, будучи побудованими абсолютно однаково, що призводить до появи одного й того ж ID транзакції.
Ці дві групи повторних угод відбулися між 14 і 15 листопада 2010 року, тривалість близько 16 годин. Перша група повторних угод була вставлена між другою групою. Ми класифікуємо d5d2....8599 як першу повторну угоду, хоча вона вперше з'явилася в блокчейні пізніше, ніж інша повторна угода e3bf....b468.
Блокчейн-оглядачі по-різному обробляють ці повторювані транзакції. Деякі оглядачі за замовчуванням показують більш ранні блоки, тоді як інші завжди показують найновішу версію. Серед чотирьох залучених блоків лише один блок містить інші транзакції, об'єднуючи 1 Біт і 19 Біт в 20 Біт.
Загальна сума, що стосується повторних транзакцій, становить 200 BTC, або може бути зрозумілою як 100 BTC. На даний момент ці Біткойни не були використані. Теоретично, особа, що має відповідний приватний ключ, може витратити ці Біткойни, але як тільки вони будуть використані, повторні 50 BTC не можуть бути використані знову.
Повторні транзакції можуть спричинити плутанину в гаманцях і блокчейн-оглядачах, а також викликати деякі потенційні атаки та уразливості. Наприклад, зловмисники можуть використовувати повторні транзакції для атак на біржі, намагаючись викликати проблеми з їхніми фондами.
Щоб вирішити цю проблему, у лютому 2012 року було запропоновано м'який форк BIP30, який забороняє використання повторюваних ідентифікаторів транзакцій. Після цього BIP34 вимагав, щоб транзакції coinbase містили висоту блоку, що ще більше вирішило цю проблему. Однак у деяких блоках, створених до активації BIP34, все ще існувала потенційна загроза повторних транзакцій.
Наступний блок, в якому можуть виникнути повторні транзакції, – це 1,983,702, який, як очікується, буде згенеровано приблизно в січні 2046 року. Однак витрати на використання цього вразливості є дуже високими, і потрібні витрати понад 170 BTC, що за поточною ціною становить близько 15 мільйонів доларів США. З огляду на витрати та складність, ця вразливість не становить основної загрози безпеці Біткойна.
Хоча це питання технічно все ще існує, але через високу складність використання та великі витрати фактичний ризик є дуже малим. Тим не менш, розробники все ще розглядають можливі рішення на майбутнє, такі як примусове виконання обіцянок SegWit тощо. Загалом, цей вразливість повторної транзакції більше є цікавим історичним питанням, ніж серйозною загрозою безпеці.