Атака на сеть (Network Attack) XVG / VERGE
В настоящее время происходит атака на сеть XVG.
Прочесть статью можно тут: https://bitcointalk.org/index.php?topic=3276795.msg34160631#msg34160631
Русский перевод. Оригинальная тема находится https://bitcointalk.org/index.php?topic=3256693.0
В настоящее время происходит «атака 51%» на сеть монеты XVG. Атакующие используют ошибку в ретаргетинге в коде XVG.
Код монеты выполнен таким образом, чтоб для успешной работы сети, каждый последующий блок должен использовать отличный от предыдущего алгоритм, например: сначала идет scrypt, затем x17, затем lyra и т. д.
Из-за нескольких ошибок в коде XVG, вы можете использовать эту функцию для майнинга блоков с поддельной меткой времени. Когда вы отправляете блок (как вредоносный майнер или пул) вы просто устанавливаете ложную метку времени для этого блока, отступив на час назад, и XVG затем "подумает", что последний блок, добытый на этом algo, был час назад. Ваш следующий блок, последующий блок тогда будет иметь правильное время. И поскольку это уже час назад (по крайней мере, это то, что думает сеть), и это позволит добавить этот блок в основную цепочку.
Эта ситуация происходит с 06:00 UTC 04.04.2018.
Первый блок, который был (успешно) добыт, это веротятно, 2007365
https://verge-blockchain.info/block/0000000000003ee2332ac70d69d9f6ba2e49ebca25c92435b3f53e53311becbb
Code:
[code]
SetBestChain: new best=00000000049c2d3329a3 height=2009406 trust=2009407 date=04/04/18 13:50:09
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=000000000a307b54dfcf height=2009407 trust=2009408 date=04/04/18 12:16:51
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=00000000196f03f5727e height=2009408 trust=2009409 date=04/04/18 13:50:10
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=0000000010b42973b6ec height=2009409 trust=2009410 date=04/04/18 12:16:52
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=000000000e0655294c73 height=2009410 trust=2009411 date=04/04/18 12:16:53
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=0000000013490372b825 height=2009411 trust=2009412 date=04/04/18 12:16:54
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=0000000017192ea8924b height=2009412 trust=2009413 date=04/04/18 13:50:13
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=0000000007f75f237b3b height=2009413 trust=2009414 date=04/04/18 12:16:55
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=0000000006ecb5753261 height=2009414 trust=2009415 date=04/04/18 13:50:14
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=0000000019eb5bfd2f76 height=2009415 trust=2009416 date=04/04/18 12:16:56
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=0000000018d5b80c0ee9 height=2009416 trust=2009417 date=04/04/18 13:50:15
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=00000000159ca0701894 height=2009417 trust=2009418 date=04/04/18 12:16:57
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=000000000ad1a8cd6b44 height=2009418 trust=2009419 date=04/04/18 13:50:16
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=000000001002986218fc height=2009419 trust=2009420 date=04/04/18 12:16:58
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=000000000b58e4fed470 height=2009420 trust=2009421 date=04/04/18 13:50:17
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=000000000d9f0707d83f height=2009421 trust=2009422 date=04/04/18 12:16:59
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=0000000007283d98dbb0 height=2009422 trust=2009423 date=04/04/18 12:17:00
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=0000000002ec7b8a6e80 height=2009423 trust=2009424 date=04/04/18 12:17:01
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=000000001f359a8f2f4a height=2009424 trust=2009425 date=04/04/18 13:50:20
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=000000000293a6723940 height=2009425 trust=2009426 date=04/04/18 12:17:02
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=000000001397927ec69d height=2009426 trust=2009427 date=04/04/18 13:50:21
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=000000000efb6e062c02 height=2009427 trust=2009428 date=04/04/18 12:17:03
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=000000001e181a0d0f4a height=2009428 trust=2009429 date=04/04/18 13:50:22
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=0000000008ca5848691b height=2009429 trust=2009430 date=04/04/18 12:17:04
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=00000000066a216ac27b height=2009430 trust=2009431 date=04/04/18 13:50:23
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=000000001874a45f28c7 height=2009431 trust=2009432 date=04/04/18 12:17:05
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=0000000005bc0408b8ca height=2009432 trust=2009433 date=04/04/18 13:50:24
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=0000000005feb2b45e5d height=2009433 trust=2009434 date=04/04/18 12:17:06
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=0000000000c211ba04de height=2009434 trust=2009435 date=04/04/18 12:17:07
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=000000001402dc20ae5f height=2009435 trust=2009436 date=04/04/18 12:17:08
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=000000001e73181cf91c height=2009436 trust=2009437 date=04/04/18 13:50:27
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=00000000062720b222ea height=2009437 trust=2009438 date=04/04/18 12:17:09
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=000000000e10aeecf7f1 height=2009438 trust=2009439 date=04/04/18 13:50:28
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=000000000b41ab258a8f height=2009439 trust=2009440 date=04/04/18 12:17:10
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=000000001136b924f67b height=2009440 trust=2009441 date=04/04/18 13:50:29
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=000000000a1c1af529cd height=2009441 trust=2009442 date=04/04/18 12:17:11
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=0000000007f1d1f8d921 height=2009442 trust=2009443 date=04/04/18 13:50:30
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=000000000ca0a1bc6b0e height=2009443 trust=2009444 date=04/04/18 12:17:12
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=00000000003075b7a580 height=2009444 trust=2009445 date=04/04/18 13:50:31
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=000000001c9f43fd7305 height=2009445 trust=2009446 date=04/04/18 12:17:13
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=000000000009129b024a height=2009446 trust=2009447 date=04/04/18 12:17:14
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=0000000008e180f24f15 height=2009447 trust=2009448 date=04/04/18 12:17:15
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=00000000084eb6c59c6d height=2009448 trust=2009449 date=04/04/18 13:50:34
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=000000000d8510f41c9a height=2009449 trust=2009450 date=04/04/18 12:17:16
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=0000000011df91a1ab87 height=2009450 trust=2009451 date=04/04/18 13:50:35
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=000000001ba92e976854 height=2009451 trust=2009452 date=04/04/18 12:17:17
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=000000000364bf981384 height=2009452 trust=2009453 date=04/04/18 13:50:36
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=0000000012d88fa3db27 height=2009453 trust=2009454 date=04/04/18 12:17:18
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=000000000305cd62b1f2 height=2009454 trust=2009455 date=04/04/18 13:50:37
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=0000000011300c4f86cb height=2009455 trust=2009456 date=04/04/18 12:17:19
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=0000000001487b026dd4 height=2009456 trust=2009457 date=04/04/18 13:50:38
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=0000000001c8532ef2df height=2009457 trust=2009458 date=04/04/18 12:17:20
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=000000001c17ae6efeeb height=2009458 trust=2009459 date=04/04/18 12:17:21
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=0000000002bf168f5eab height=2009459 trust=2009460 date=04/04/18 12:17:22
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=000000001a23e2c283bc height=2009460 trust=2009461 date=04/04/18 13:50:41
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=0000000014ecd97066c4 height=2009461 trust=2009462 date=04/04/18 12:17:23
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=000000001643a1c4a3bb height=2009462 trust=2009463 date=04/04/18 13:50:42
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=0000000008ec0214e6c2 height=2009463 trust=2009464 date=04/04/18 12:17:24
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=0000000009b069fcd1cc height=2009464 trust=2009465 date=04/04/18 13:50:43
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=000000001722adbca417 height=2009465 trust=2009466 date=04/04/18 12:17:25
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=000000000a9e8d58c86b height=2009466 trust=2009467 date=04/04/18 13:50:44
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=0000000010f27ab0a452 height=2009467 trust=2009468 date=04/04/18 12:17:26
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=000000000479c982db76 height=2009468 trust=2009469 date=04/04/18 13:50:45
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=000000001f8be1b4066c height=2009469 trust=2009470 date=04/04/18 12:17:27
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=000000000b05233d5ad7 height=2009470 trust=2009471 date=04/04/18 12:17:28
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=0000000007a9c6cdba5d height=2009471 trust=2009472 date=04/04/18 12:17:29
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=000000000622e29e4307 height=2009472 trust=2009473 date=04/04/18 13:50:48
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=000000001a8d80324a57 height=2009473 trust=2009474 date=04/04/18 12:17:30
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=000000001eddc0154526 height=2009474 trust=2009475 date=04/04/18 13:50:49
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=000000000ac0a256f263 height=2009475 trust=2009476 date=04/04/18 12:17:31
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=00000000040f83b5ee2f height=2009476 trust=2009477 date=04/04/18 13:50:50
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=000000001827966aa60b height=2009477 trust=2009478 date=04/04/18 12:17:32
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=0000000012d0d1501121 height=2009478 trust=2009479 date=04/04/18 13:50:51
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=000000000032868a4c74 height=2009479 trust=2009480 date=04/04/18 12:17:33
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=00000000092675395f6e height=2009480 trust=2009481 date=04/04/18 13:50:52
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=000000001f95a9a174d4 height=2009481 trust=2009482 date=04/04/18 12:17:34
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=0000000017503fc3dc13 height=2009482 trust=2009483 date=04/04/18 12:17:35
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=00000000007c61b36c76 height=2009483 trust=2009484 date=04/04/18 12:17:36
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=00000000070810d5a6e5 height=2009484 trust=2009485 date=04/04/18 13:50:55
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=00000000068467683637 height=2009485 trust=2009486 date=04/04/18 12:17:37
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=00000000041dc83f0978 height=2009486 trust=2009487 date=04/04/18 13:50:56
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=00000000011fb17203f4 height=2009487 trust=2009488 date=04/04/18 12:17:38
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=000000000a96b38de1a0 height=2009488 trust=2009489 date=04/04/18 13:50:57
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=00000000121e7a285719 height=2009489 trust=2009490 date=04/04/18 12:17:39
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=000000000348e668204f height=2009490 trust=2009491 date=04/04/18 13:50:58
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=0000000012766d85cab4 height=2009491 trust=2009492 date=04/04/18 12:17:40
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=00000000181a0c1be275 height=2009492 trust=2009493 date=04/04/18 13:50:59
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=0000000015c05593e210 height=2009493 trust=2009494 date=04/04/18 12:17:41
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=000000000719cb24d9c0 height=2009494 trust=2009495 date=04/04/18 12:17:42
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=0000000015d9b853834d height=2009495 trust=2009496 date=04/04/18 12:17:43
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=00000000115e68a6d447 height=2009496 trust=2009497 date=04/04/18 13:51:02
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=0000000004d9233f19c6 height=2009497 trust=2009498 date=04/04/18 12:17:44
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=00000000141ab049fe19 height=2009498 trust=2009499 date=04/04/18 13:51:03
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=000000001b91344fa33c height=2009499 trust=2009500 date=04/04/18 12:17:45
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=0000000001d112440f7b height=2009500 trust=2009501 date=04/04/18 13:51:04
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=000000001bf2c8a073c6 height=2009501 trust=2009502 date=04/04/18 12:17:46
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=00000000116863c0157c height=2009502 trust=2009503 date=04/04/18 13:51:05
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=000000000ec5da17852e height=2009503 trust=2009504 date=04/04/18 12:17:47
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=000000000d7cd87c5e53 height=2009504 trust=2009505 date=04/04/18 13:51:06
ProcessBlock: ACCEPTED (scrypt)
--
SetBestChain: new best=00000000156becbf42cd height=2009505 trust=2009506 date=04/04/18 12:17:48
ProcessBlock: ACCEPTED (scrypt)
[\code]
Как вы можете видеть в тексте выше, эти блоки все последующие, поэтому один майнер получает их все, и вы видите, что разница между всеми блоками составляет 90 минут, это одна и та же ошибка майнера. Вы также видите, что правильное время - это последнее время, таким образом, последний блок закончился 13: 51: 06, а блок до этого был 12: 17: 47 и блок с правильным временем до этого был в 13:51:05. Это означает, что хакер добывает один блок в секунду !
В vergeDEV @ Discord говорится: «все в порядке - нечего исправлять». Он не извинился, не принял других немедленных действий, предпринятых вообще после того, как я опубликовал в discord. Единственное, что я получил в качестве ответа, было "похоже, стабилизируется сейчас", когда закончилась первая атака.
Поскольку около 99% блоков законными пулами отклонены - и команда разработчиков не в состоянии понять эту проблему, я закрываю и удаляю все пулы VERGE из suprnova.
Вот неполный список вредоносных адресов:
https://verge-blockchain.info/address/DKE3tKrXJJ2s7nCPYtE5vntBKBZKGLb2kB
https://verge-blockchain.info/address/DBbZgu2eeZfxdUiqtf1dbG3H5kExDTqzCM
https://verge-blockchain.info/address/DTnxUQ476HWeSqm5hct2astEp2EB8BQBMD
https://verge-blockchain.info/address/DMK8aqjFGUNVQibv7i3qu4pyUyXcnSHHcC
https://verge-blockchain.info/address/DN4rx2gKm7Lepa6kyZx62zJtWVLAxNBc15
https://verge-blockchain.info/address/DFSnNgjEyYkfDVJGR8BG2LdFLYbJgdtFRa
https://verge-blockchain.info/address/DAf5YdtmvTaq2gySAPtfPzv86jC9nGY1RR
https://verge-blockchain.info/address/DUCtin38xfPWvLvkAtWMJoUDefg3mu1rYQ
https://verge-blockchain.info/address/D5Gz63joDNteuMJSMuiD153hQHPN626ryw
Это из очевидного, на самом деле, мошеннических блоков может быть намного больше.
UDP: 5 апреля: хакер снова начал и добыл около 12 тыс. блоков:
Я просмотрел журналы и увидел, что злоумышленник начал новую атаку в районе блока 2014060 и остановился прямо сейчас в блоке 2026196
12k блоков на этот раз позволяет сказать 10k... поэтому дополнительные 10.000 + 1560 = 15.600.000
5.04.2018.
Итак, парни, поскольку дерьмо продолжают набрасывать на вентилятор все сильнее и сильнее, мне нужно сделать несколько шагов, чтобы на самом деле закончить эту историю:
Suprnova не будет открывать какие-либо из своих пулов XVG/Verge для майнинга. Вы можете добывать его свободно на любом другом бассейне, если хотите. Вывод средств возможен, конечно.
Проблема заключается в том, что" исправление", продвигаемое разработчиками, просто не устранит проблему. Это просто сделает таймфрейм меньше, в котором блоки могут быть добыты / подделаны и атака все равно будет продолжаться снова и снова, только немного медленнее.
Кроме того, более 20 миллионов XVG, которые были установлены злоумышленником, не будут занесены в черный список, возвращены, отфильтрованы или выполнен откат в любом случае в соответствии с verge-dev, поэтому, на мой взгляд, вы все (майнеры и инвесторы) были обмануты на примерно 20 миллионов монет. Кто-то недополучит только несколько монет, другой много, очень много...
Поясню несколько моментов:
Исправление не исправит проблему. Проблема не только в drifttime, но и в алго дисперсии. Вы должны убедиться, что не X блоков добывают на одном algo. У Myriad и digibyte были те же проблемы - они исправили это. Вот возможное решение проблемы: https://github.com/digibyte/digibyte/pull/15. Пожалуйста, не добавляйте просто так дополнительный код, как вы видите его в этом коммите, вам нужно найти правильные места в вашем коде и объединить. Это немного другой код, поэтому он не будет работать с помощью просто с помощью копипасты, нужно понять и переписать его, чтобы соответствовать вашим задачам.
Можно включить в черный список определенные адреса в блокчейне. Поэтому, если вы знаете, по каким адресам находятся взломанные средства, вы можете просто "занести" их прямо в исходный код монеты. Например, вы знаете, что злоумышленник использовал адрес "123abc123acb123abc" в качестве корня для своих взломанных средств. Теперь вы можете в любое время обновить код бумажника и просто сказать "отменить все транзакции с корневым адресом "123abc123acb123abc". Таким образом, даже если хакер перемещает средства сейчас или через год, это не произойдет, поскольку вы занесли в черный список исходный адрес. Это было сделано ранее также, не на myriad, а на какой-то другой монете, не могу сейчас вспомнить.
Меня обвиняли в скоропалительном решении и написали об этом публично на bitcointalk. У меня смешанные чувства по этому поводу. Да, я мог бы сначала молча поговорить с разработчиками и сказать им: "Эй, что-то странное происходит на вашем блокчейне", - однако в то же время мои майнеры спрашивали, почему пул не находит блоки, и я уже видел первые твиты о "скимминге" и воровстве. Что мне было делать? Хранить информацию о хакере, не общаться с разработчиками и выждать 3-4 дней, без выплат майнерам, полностью уничтожить репутацию или вообще объявить о закрытии всего пула? Я знаю, это трудное решение, но это мое решение, возможно, оно было неправильным, но это не я разработчик монеты! Также я был немного удивлен, что я был первым, кто сообщил о проблеме.. Я ожидал, что разработчики внимательно следят за своей монетой и придумывают исправления заранее..
На мой взгляд, оптимальное решение этой проблемы, вероятно, такое:
- Биржам и майнинг-пулам следует остановить добычу блоков и торговлю монетой.
1a. Публично сообщить майнерам о проблеме и сказать им, что проблема будет решена, но на это потребуется некоторое количество времени. - Обсудите возможные проблемы и методы смягчения удара по репутации монетыс разработчиками/биржами и пулами. Создать для этого, например, группу в соцсетях или чатах и пригласить туда всех заинтересованных людей.
- Найти разрешение, откатить блокчейн или, по крайней мере, отфильтровать украденные монеты (решение имеет определенные недостатки)
- Решить проблему, объявить об этом сообществу и продолжить майнинг.
Простите, если что не так, но я расстроен и не мог просто промолчать об этой ситуации.
Лог переписки с разработчиком монеты:
Code:
...
[16:08:43] vergeDEV yes i put it in both branches
[16:10:11] ed__ (319465d0@gateway/web/freenode/ip) joined the channel
[16:12:43] ocminer hmm no filtering/rollback of the attackers coins ?
[16:12:55] ocminer thats over 20 mills for him...
[16:13:08] vergeDEV we dont do rollbacks.
[16:13:16] vergeDEV we roll forward
[16:13:17] @Epsylon3 i imagine the mess :p
[16:13:31] @Epsylon3 the only this you can do is tracking the coins
[16:13:38] vergeDEV ocminer, would have been great if you contacted someone from our team. by you putting this on bitcointalk, you invited a ton of other people to attack as well.
[16:13:39] @Epsylon3> talking with exchanges
[16:14:01] vergeDEV also your quote The vergeDEV @ Discord says "everything is okay - there's nothing to fix"..
[16:14:03] vergeDEV thats bullshit.
[16:14:05] vergeDEV i never said that
[16:14:15] vergeDEV why are you quoting me saying something i never said?
[16:14:18] ocminer -.-
[16:14:25] vergeDEV i already talked to bittrex and binance, theyre updated
[16:14:55] ocminer you just don't understand what this is all about
[16:16:02] vergeDEV how so?
[16:16:14] vergeDEV i do understand. we are having blocks injected with spoofed timestamps.
[16:16:20] @Epsylon3 what the amount mined per day ?
[16:16:22] @Epsylon3 is*
[16:16:24] vergeDEV and i never said "everything is okay - there's nothing to fix"
[16:16:46] @Epsylon3 i need to add a script command for that :p
[16:16:54] ocminer also your commit won't fix it
[16:16:57] ocminer but ..
[16:17:12] ocminer go ahead and "move forward"
[16:17:14] vergeDEV ~4mill/day
[16:17:17] @Epsylon> XVG: current block_time set in the db 0mn35 (35 sec)
[16:17:18] @Epsylon3 XVG: avg time for the last 2048 blocks = 0mn13 (13 sec)
[16:17:18] @Epsylon3 XVG: avg time for the last 1024 blocks = 0mn31 (31 sec)
[16:17:35] @Epsylon3 my script dont go so far :p
[16:17:51] ocminer 12000 * 1560 = 18.7 mills already
[16:17:53] @Epsylon3 XVG need 20x that :p
[16:18:30] vergeDEV yeah it wasnt that bad until ocminer posted it on bitcointalk, and then everyone and their mother joined in.
[16:18:51] vergeDEV and also misquoted me completely
[16:19:00] ocminer lol, now you're blaming me for an attack on your blockchain ? srsly ? Smiley
[16:19:07] vergeDEV did i blame you?
[16:19:09] @Epsylon3 2026860 now... 2000000 was 2018-04-01 17:39:37
[16:19:11] vergeDEV i said the attack wasnt as bad
[16:19:14] ocminer [16:18:30] vergeDEV yeah it wasnt that bad until ocminer posted it on bitcointalk, and then everyone and their mother joined in.
[16:19:15] vergeDEV it was worse after
[16:19:20] @Epsylon3 3 days..
[16:19:25] @Epsylon3 4
[16:19:27] vergeDEV yes that is correct. congrats, you got a quote correct
[16:20:03] @Epsylon3 so yep, maybe not 12000 blocks
[16:20:14] @Epsylon3 i may create a script to check :p
[16:20:49] @Epsylon3 Height: 2010000
[16:20:49] @Epsylon3 Time: 2018-04-04 14:22:01
[16:21:03] @Epsylon3 after first hack so
[16:21:31] @Epsylon3 will do the script, i like right numbers
[16:26:22] ocminer listen.. kid... you have a absolutely trashy shitcoin pumped in heaven through that tweet from john mcafee back in that day.. you probably made a lof of money by that idiot tweeting xvg to the moon.. you should have used the chance and invested some of that money and invest it into a decent dev team, as seriously, and everyone knows that, you have not the slightest idea of coding whatsoever... If you've had done that, you could have patched your
[16:26:22] ocminer super-old codebase already to a super-recent codebase like myriad or digibyte and wallets would't have memory leaks all over, wouldn't take >30 mins until they startup and also those two drama's with the earlier tor hardforks wouldn't have happen. I'm not the guy who "keeps bullshit silent" - when I see something is happening, I report it - immediately and from my POV your users/miners have been betrayed by over 20 M coins which were injected
[16:26:22] ocminer maliciously into the blockchain... This is not a kiddo script hack and my post didn't change anyhting but just revealing what is happening at the moment (as you didn't notice yourself until I came into your hostile discord) and it's not a bad thing to post that publicly. You know see me as your enemy or whatever - I don't care, if you want to continue with your coin, go ahead, surely without me, but this should be your utmost last warning - think
[16:26:22] ocmine about yourself, think about how you make decisions and maybe come down a bit from your emperor throne and get help from professionals if you can't handle it alone... You'll see what happens after your HF - nothing, guaranteed, because you don't fix the root cause of this.
[16:26:27] vergeDEV (~sunerok@unaffiliated/sunerok) left IRC (Ping timeout: 240 seconds)
[16:26:50] ocminer And Epsylon3 ... you
[16:27:04] @Epsylon3 i slept
[16:27:09] @Epsylon3 :p
[16:27:22] phm87 Hi, sorry I come back late
[16:27:23] ocminer 're not much better than him.. only looking for the profits here.. .your miners also lost a lof of coins during the network was stalled and the 15k blocks mined...
[16:27:34] phm87 I am running unimining where there is XVG
[16:27:36] @Epsylon3 you are wrong
[16:27:38] phm87 (on blake2s)
[16:27:39] ocminer if you'd be honest, you'd shutdown the pool and let him fix his shit up
[16:27:41] @Epsylon3 i stopped the pool the whole day
[16:28:02] @Epsylon3 and answered everyone why
[16:28:08] ocminer it's up and running already, without any fix for the malicious coins
[16:28:10] @Epsylon3 lot of spam
[16:28:16] @Epsylon3 took the whole day
[16:28:37] @Epsylon3 i pasted the fix i made this morning
[16:28:38] phm87 sorry I will read what you said few minutes ago, I am late but I'll shut the pool if coin dev say so then I can explain to my miners that I follow coin dev orders
[16:28:52] phm87 when a coin explodes randomly and coin dev don't care then I delist it
[16:28:58] @Epsylon3 which is the commit, with proper knowledge and amount of seconds
[16:29:04] phm87 but XVG risk is high for Uni so I may delist it
[16:29:07] ocminer that fix from him is just bullshit, it changes nothing, just the timespan of which they do the attacks.. .they will be slowed down a bit, but that's all
Больше я не будут общаться с разработчиками монеты. Мне не нравится, когда меня обманывают и обвиняют. Как организатор майнинг-пула, я отвечаю за его корректную работу и честные выплаты майнерам.
Не волнуйтесь, есть еще много майнинг-пулов, на которых можно добывать монету.
Также поздравляю хакера - вы выбрали правильную монету для своего хака (который был изобретен в 2014 году Smiley) - не покупайте слишком много Ламбо с вашими 20 млн. монет Verge (около 1 миллиона
Спасибо за внимание.
UDP! Кто знает, как кусок кода спрятать под кат? Уж очень громоздко, понимаю(
It took a few days, but according to the miners, the situation has not changed. Supernova has not changed its position, the coin is not available for production on this pool.
Какие страсти) спасибо за инфу