Jump to content

Recommended Posts

Posted (edited)

Конкурс завершен, победитель @Old Miner , правильный ответ здесь и сообщением ниже.

 

--------

 

Было бы нечестным просто забрать вознаграждение, никакой радости от этого выигрыша я не испытываю, ну и это некоторым образом непрофессионально, участвовать в одно лицо без соперников, хотя я тут не причем. 

 

Все полученные монеты + еще немного сверху находятся здесь 16iM6uyFe63v2YHj8APrRu4Qrm7z5Giygu

Сейчас не лотерея.   Нужно просто взять и забрать 0.0165 BTC.

 

Есть ограничение по времени, чуть более 100 блоков на подумать, на блоке 569000 вот эта транзакция отправится в сеть, она уже заряжена на автоматическую отправку.

Цитата

0100000001dc736275ffc4a3fa4c1d52436ef1634c98a2e16c4cb4a9c84717f6baf8657791000000006a47304402204d88bdda8a3690c5bcb6d0961a2351e840e7bebb5f9b4df0624387629b60e9c8022019496044af562d58f67710191bd4fd78f07db3eb95d50d019a4b13fd2fe316b902210364a90a818e35c4d02911a814c5bad971d8c33c8c8aada696f55d5df464782a18fdffffff0168291900000000001600143d76efc99be4b7d8640267e577d066806f5f5ee6a8ae0800

 

Но есть вот такая транзакция которая, может помочь.

Цитата

0100000001dc736275ffc4a3fa4c1d52436ef1634c98a2e16c4cb4a9c84717f6baf8657791000000006b483045022100daced7306c5a8f44c0dce5b6288f96fecba378e6dad4831eef4ec92b1cc1225f02205bc734d027680eee42d10005837f64ec1edc9c7354b696060aff6f92d0468a5302210364a90a818e35c4d02911a814c5bad971d8c33c8c8aada696f55d5df464782a18fdffffff0168291900000000001600143d76efc99be4b7d8640267e577d066806f5f5ee600000000

 

Различие в этих двух транзакциях только в Lock time, в первом случае он есть и отправить транзакцию в сеть ранее блока 569000 невозможно.  Во второй транзакции Lock time отсутствует.

 

Не советую наугад отправлять эти транзакции в сеть, потому что в таком случае конкурс сразу закончится без победителя.

Перезапускать конкурс бесконечное количество раз я не хочу.

 

Победитель не обязан ничего рассказывать, но если захочет может рассказать, может быть кому то будет интересно.

Никаких дополнительных условий нет. Есть подсказка - задачу можно решить за 2 минуты используя https://txid.io/

 

Конкурс не подходит для новичков, но и не является сверхсложным.

 

Ах да, чуть не забыл. Есть еще вот такие строчки, вдруг понадобятся.

L4SEmtWxNC4MmLgDzgGPRju6J4PiG4nNdd1G35FpsdcDMku1spqB
KzCXCudPjPEXM43bX4T7BDyBekraa1T8BpRcug2GGhgcaH6499QK
KzmwtUYba7bEPFvrc4SX5NEZQ7S1bjwKwET7RHTFZNBB7df7US4f

 

Edited by e46btc
Posted

ebfdc0ca95e8e7b32cc7913714ac6c45b35f77a6e7aa3fada65648be270b30aa

Поздравляю! 

 

Если победитель не пожелает написать, то напишу завтра решение.

 

И после того как транзакция подтвердится, так как у других людей еще есть шансы побороться за приз ?

Но возможно это уже новый конкурс от победителя данного конкурса ?

 

 

Posted

@Old Miner все так. Тем не менее, конкурс был не про RBF, человек сообразил и сделал что просили. 

Возможно RBF это элемент интриги и кому-то показалось слишком просто.

Posted
1 минуту назад, e46btc сказал:

человек сообразил

 

Человек до сих пор не может сообразить, к чему был этот список:

L4SEmtWxNC4MmLgDzgGPRju6J4PiG4nNdd1G35FpsdcDMku1spqB
KzCXCudPjPEXM43bX4T7BDyBekraa1T8BpRcug2GGhgcaH6499QK
KzmwtUYba7bEPFvrc4SX5NEZQ7S1bjwKwET7RHTFZNBB7df7US4f

 

Posted
4 минуты назад, e46btc сказал:

элемент интриги и кому-то показалось слишком просто

 

Posted

@e46btc ,  скажи, ты каким образом пихаешь в мемпулы дабл транзакции ? На своих собственных нодах ? Но тогда, как они распространяются на другие ? Или как-то на левые, но почему они их включают? Сорри если глупый вопрос.

Posted

Итак, транзакции подтвердились и можно написать решение.

 

Из исходных данных требуется только транзакция, та у которой Locktime = 0.

0100000001dc736275ffc4a3fa4c1d52436ef1634c98a2e16c4cb4a9c84717f6baf8657791000000006b483045022100daced7306c5a8f44c0dce5b6288f96fecba378e6dad4831eef4ec92b1cc1225f02205bc734d027680eee42d10005837f64ec1edc9c7354b696060aff6f92d0468a5302210364a90a818e35c4d02911a814c5bad971d8c33c8c8aada696f55d5df464782a18fdffffff0168291900000000001600143d76efc99be4b7d8640267e577d066806f5f5ee600000000

Выполнив над ней команду decoderawtransaction из Bitcoin Core, я получил её представление на человеческом языке JSON:

{
  "txid": "e146e4b6993ca64c2f21b0fbf6f618b4e90f984ba1bb6f22b97d96aaa7c70710",
  "hash": "e146e4b6993ca64c2f21b0fbf6f618b4e90f984ba1bb6f22b97d96aaa7c70710",
  "version": 1,
  "size": 189,
  "vsize": 189,
  "weight": 756,
  "locktime": 0,
  "vin": [
    {
      "txid": "917765f8baf61747c8a9b44c6ce1a2984c63f16e43521d4cfaa3c4ff756273dc",
      "vout": 0,
      "scriptSig": {
        "asm": "3045022100daced7306c5a8f44c0dce5b6288f96fecba378e6dad4831eef4ec92b1cc1225f02205bc734d027680eee42d10005837f64ec1edc9c7354b696060aff6f92d0468a53[NONE] 0364a90a818e35c4d02911a814c5bad971d8c33c8c8aada696f55d5df464782a18",
        "hex": "483045022100daced7306c5a8f44c0dce5b6288f96fecba378e6dad4831eef4ec92b1cc1225f02205bc734d027680eee42d10005837f64ec1edc9c7354b696060aff6f92d0468a5302210364a90a818e35c4d02911a814c5bad971d8c33c8c8aada696f55d5df464782a18"
      },
      "sequence": 4294967293
    }
  ],
  "vout": [
    {
      "value": 0.01649000,
      "n": 0,
      "scriptPubKey": {
        "asm": "0 3d76efc99be4b7d8640267e577d066806f5f5ee6",
        "hex": "00143d76efc99be4b7d8640267e577d066806f5f5ee6",
        "reqSigs": 1,
        "type": "witness_v0_keyhash",
        "addresses": [
          "bc1q84mwljvmujmaseqzvljh05rxsph47hhx07xyld"
        ]
      }
    }
  ]
}

Обратим свой взор на scriptSig единственного входа:

3045022100daced7306c5a8f44c0dce5b6288f96fecba378e6dad4831eef4ec92b1cc1225f02205bc734d027680eee42d10005837f64ec1edc9c7354b696060aff6f92d0468a53[NONE] 0364a90a818e35c4d02911a814c5bad971d8c33c8c8aada696f55d5df464782a18

 

Это стандартный scriptSig p2pkh-входа, состоящий из двух параметров: первый - подпись транзакции, второй - публичный ключ. Подпись транзакции заканчивается флагом Sighash. Bitcoin Core при выводе decoderawtransaction очень кстати выделяет этот флаг и отображает его на человеческом языке - [NONE]. Если бы он этого не делал, то я бы не обратил на этот флаг (0x02) в длинной hex-строке никакого внимания. Так бы и протрахался несколько часов, пытаясь понять, куда приткнуть список из трёх приватных ключей.

 

Что это за флаг? Флаг Sighash показывает, к чему применена подпись: ко всей транзакции - [ALL] или только ко входам - [NONE]. То есть, в данной транзакции подписан только вход, и проверяться подпись будет только для входа, а выход в подпись не включён, и проверяться не будет.

 

Следовательно, каждый дурак может в этой транзакции поменять выход на свой адрес, и ему за это ничего не будет. В стандартных p2pkh-транзакциях флаг Sighash всегда [ALL], и выходы включаются в подпись, поэтому изменить их, не зная приватного ключа, невозможно.

 

Итак, необходимо поменять выход в этой транзакции на свой. Выход тут вида p2wpkh: 00143d76efc99be4b7d8640267e577d066806f5f5ee6. Из чего он состоит? Первый байт - 00 - версия SegWit, которая всегда должна быть 0. Второй байт - 14 - длина последующей последовательности байт. 14(HEX) = 20 (DEC). Что это за двадцать байт? Это адрес, но не в формате Bech32, а в фомате HEX.

 

То есть, нужно взять свой адрес Bech32, превратить его в HEX-строку, я проделал это здесь:

bc1qrcv4l3smqkce02w59alp7p8effqn70js5v442y -> 1e195fc61b05b197a9d42f7e1f04f94a413f3e50

и вставить получившиеся 20 байт в транзакцию после 0014 вместо тех, что там есть.

 

И всё. Осталось отправить транзакцию в сеть, воспользовавшись https://txid.io/ .

 

Поскольку отправляемая сумма находится тоже в выходе, и не защищена подписью, её можно было бы отредактировать в сторону уменьшения, увеличив, тем самым, комиссию. Флаг RBF и так поднят, поэтому, таким способом, можно было бы перебить мою транзакцию своей, но не судьба.

 

 

 

Posted

Все четко, даже чОтче чем нужно ?  Скромное вознаграждение более чем заслужено.

Альтернативный вариант выглядит таким образом, после того как становится понятно, что нужно заменить выход.

 

1) https://txid.io
2) Developer Console (например, Google Chrome, F12)
3) заменить выход, удалить старый и добавить новый

var rawtx = '0100000001dc736275ffc4a3fa4c1d52436ef1634c98a2e16c4cb4a9c84717f6baf8657791000000006b483045022100daced7306c5a8f44c0dce5b6288f96fecba378e6dad4831eef4ec92b1cc1225f02205bc734d027680eee42d10005837f64ec1edc9c7354b696060aff6f92d0468a5302210364a90a818e35c4d02911a814c5bad971d8c33c8c8aada696f55d5df464782a18fdffffff0168291900000000001600143d76efc99be4b7d8640267e577d066806f5f5ee600000000';

var tx = coinjs.transaction();

var t = tx.deserialize(rawtx);

t.outs.remove(0);

t.addoutput('свой-адрес-здесь-в-любом-формате', 0.01649);

newtx = t.serialize();

4) отправить новую транзацию в сеть (результат вывода крайней команды)

 

Приватные ключи, указанные в первом сообщении, не нужны для решения задачи, они просто вводят в заблуждение.

 

 

Также подсказкой была сама транзакция отправки 0.0165 BTC  917765f8baf61747c8a9b44c6ce1a2984c63f16e43521d4cfaa3c4ff756273dc  , она уже была с SIGHASH NONE , но это бы дополнительно усложнило задачу, не гарантировала бы получение приза, так как была без RBF и могла бы подтвердится намного раньше при незагруженной сети, тогда не было бы 100 блоков на подумать.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Similar Topics

    • t.me/Hamster_Game_Dev_bot - Хомяк возвращается, продолжение Hamster Combat

      Хомяк возвращается! Новая тапалка от Hamster Combat. На этот раз у хомяка студия по разработке игр, где нужно копить ресурсы для победы в турнирах. Запуск 12 февраля, сегодня в старом боте прислали. Судя по статистике, пока 172к пользователей) Шифр на 12.02: C(-*-*) O(---) M(--) B(-***) O(---) Первые две карты в "Разработка", третья в "Маркетинг": Пригласить ментора. Быстрый рекрутинг. Свой собственный магазин.   Перейти

      in Раздачи монет

    • В Японии завершен пилотный проект по отслеживанию пластиковых отходов через блокчейн

      Разработчик программного обеспечения Circularise совместно с японскими торговыми компаниями AMITA и Marubeni успешно завершили пилотный проект по отслеживанию пластиковых отходов с использованием блокчейна. Пилотный проект был запущен в феврале 2021 года в японском городе Кобе. В ходе тестирования, Circularise представил два цифровых паспорта продукта, которые отслеживают крышки от пластиковых бутылок на всех этапах процесса переработки. Перед переработкой крышки отслеживались по составу дв

      in Новости криптовалют

    • IRS: «продолжение суда с Джарреттами может приведести к неуплате подоходного налога со стейкинга»

      Налоговая служба США (IRS) заявила о недопустимости отказа от компенсации семьей Джарреттов и продолжения судебного разбирательства о налогообложении вознаграждения за стейкинг криптовалют. В понедельник IRS направила в окружной суд Теннесси заявление об отклонении иска, поданного семьей Джарреттов. Агентство подчеркнуло, что уже вернуло супружеской паре чуть менее $3 973 в виде налогов плюс проценты в размере $208. В заявлении Налоговой службы говорится:   «Несмотря на получение пол

      in Новости криптовалют

    • [конкурс завершен] Конкурс: Найди то, чего нет

      Я тут понял, что несмотря на весь наш бэкграунд, далеко не по всем полезным софтинам у нас на форуме есть топики. Только по программам-майнерам я прошелся поиском и понял, что таких около двадцати. В связи с этим организую конкурс по софту:   Задача: 1. Найди полезную программу для майнинга, кошелек для криптовалют или иную программу, связанную с криптовалютами или блокчейном, по которой не создан еще отдельный топик у нас на форуме. 2. Убедись, что программа хоть как-то вост

      in Конкурсы

    • Bloomberg: индикатор указал на продолжение падения биткоина

      Май стал очень удачным для первой криптовалюты — курс биткоина вырос на 60%, однако аналитики Bloomberg считают, что коррекция, наблюдаемая в последние дни, может продолжиться.   По мнению аналитиков, на продолжение падения указывает индикатор GTI Vera Convergence-Divergence, который отслеживает позитивные и негативные тренды. Впервые с апреля индикатор выдал сигнал на продажу первой криптовалюты.     В начале июня первая криптовалюта снизилась на 1

      in Новости криптовалют

×
×
  • Create New...