AleksSpynet
Интересующийся
Наверняка многие из начинающих крипто энтузиастов не имеют даже поверхностного понимания каковы принципы работы криптовалютного кошелька и отсюда достаточно много случаев безвозвратной потери криптовалют из-за собственной неграмотности. Еще чаще в сети появляются посты о том, что криптовалюту украли злоумышленники. Но как? Ведь подавляющее большинство блогеров и различных мануалов в сети интернет утверждают, что криптовалюта тем и хороша, что ее практически невозможно украсть из кошелька криптовладельца. Но так-ли это на самом деле?
Абсолютное большинство потерь контроля над собственным аккаунтом происходит по вине самого пользователя. Из-за того, что сам пользователь ненадежно хранит секретный ключ. Большее число краж происходит путем мошеннических действий таких как: фишинговые сайты, где юзер сам вводит секретный ключ, различные вирусы, которые находят сохраненные ключи на компьютере или же просто отслеживают все символы вводимые на экране монитора. Но мы сегодня будем говорить только о взломе приватного ключа, поэтому тему безопасного хранения тут не станем рассматривать.
Не будем уходить глубоко в технические подробности криптографии, но все же некоторые базовые принципы должен знать каждый крипто-энтузиаст. То, о чем я буду говорить может быть применено как блокчейну биткоина, так и к эфиру, поэтому несколько обобщу главные тезисы:
Аккаунт – это базовый элемент в любом блокчейне. Он состоит из двух составляющих: открытого(адреса) и закрытого(приватного) ключа. Оба они выдаются вам «на руки» при создании собственного адреса для проведения различных операций с криптовалютой.
Причем открытый(публичный) ключ создается из закрытого(приватного) ключа и из одного приватного ключа можно получить огромное множество разных публичных, но при этом для каждого публичного ключа есть только ОДИН приватный ключ.
Публичный ключ (или по простому адрес) служит лишь для того, чтоб обозначить принадлежность той или иной криптовалюты, транзакций и др. информации доступной для размещения в блокчейне, к владельцу. Но чтобы совершать какие-либо действия от этого аккаунта нужен приватный(секретный) ключ. Именно этот секретный ключ и является главным преимуществом и особенностью любого криптографического кошелька.
Что такое секретный(приватный) ключ.
Секретный ключ это длиннющее 256-битное число, криптографически зашифрованное в более короткое посредством различных и надежных способов шифрования применимых в том или ином блокчейне или сервисе. Но на самом деле, для рассмотрения вышеобозначенной темы, неважно каким именно способом он зашифрован, важно то, что настоящий исходный ключ, это всего лишь неизменное и четкое математическое число, хоть и очень длинное.
Секретный ключ служит для подписи совершения любых действий в аккаунте. Поэтому если вы потеряете этот ключ, то восстановить доступ к аккаунту уже практически невозможно. И хочу заметить, что мы сейчас не говорим о различных сервисах, где вам выдается только пароль – в случаях, когда вам не нужно вводить раз за разом собственный секретный ключ для проведения транзакций, вы не являетесь единственным владельцем этого аккаунта, а значит и такое хранение абсолютно небезопасно. Это применимо ко многим не децентрализованным криптобиржам и онлайн-кошелькам.
Итак, из всего вышеизложенного нужно понять главное: главной ценностью является именно секретный ключ. Зная его, можно открыть аккаунт и вывести всю криптовалюту. А так же то, что он является неизменным и точным математическим числом.
И теперь мы можем подойти к рассматриваемой теме о взломе (подборе) секретного ключа.
Но для начала, я хочу чтоб вы своими ручками совершили некоторые действия с секретным ключом на примере Myetherwallet.
Давайте перейдем на сайт Myetherwallet и войдем в чужой кошелек заранее зная секретный ключ:
1. Заходим на сайт -> нажимаем «Войти в мой кошелек»->далее как на картинках:
2. Выбираем способ авторизации «Закрытый ключ»
3. Вводим в появившемся диалоговом окне вот этот секретный ключ: 5706d9a10b45b45d12706d15b28ad12ac02815b28a9a12243b3f0bf81b187b3e
4. И мы попадаем в чужой аккаунт:
Вот так, имея только секретный ключ, мы получили доступ к адресу(аккаунту) и если б за этим аккаунтом были б прикреплены токены, то мы без особого труда смогли бы их вывести. Но дальше будет еще интереснее:
Теперь обновите страницу и войдите в кошелек заново, но при этом измените любую цифру в секретном ключе, что мы использовали до этого (5706d9a10b45b45d12706d15b28ad12ac02815b28a9a12243b3f0bf81b187b3e),
И снова войдите.
Получилось? Еще бы! Теперь вы зашли в совершенно другой кошелек, и если в нем есть токены, то вы можете ими распорядиться. Но лучше не стоит – брать чужое не хорошо
С точки зрения закона, подбор пароля к криптовалютному аккаунту до сих пор не приравнен к преступлению потому, что мы не создаем и не используем вирусную программу, и ни коим образом не вредим программному обеспечению.
И теперь, поняв как можно лишь имея секретный ключ получить контроль над аккаунтом и всеми средствами принадлежащими ему, мы вплотную подошли к главному вопросу темы, а именно: можно ли взломать секретный ключ?
Мой ответ и «да» и «нет».
Почему невозможно.
Просто потому, что секретный ключ это набор из огромного числа чисел и чтоб подобрать его к аккаунту на котором есть средства, нужно очень, очень много времени и вычислительных ресурсов. Для примера приведу вот такое сравнение:
Есть такое предположение, что на нашей грешной планете Земля всего 1022 песчинок, и если взять все эти песчинки на нашей земле и превратить их в такие же планеты с тем же количеством песчинок, а затем все песчинки на получившихся планетах опять превратить в планеты и пересчитать песчинки, то получившееся число песчинок 2240 будет все равно меньше числа вариантов секретных ключей, а их количество, на минуточку, 2256 различных вариантов.
И казалось бы, теперь можно вздохнуть спокойно, ведь математика нам говорит, что подобрать секретный ключ практически невозможно, но я бы не спешил с таким утверждением.
Почему возможно.
Я хочу подчеркнуть две вещи:
1. Секретный ключ, это всего лишь постоянное число, хоть и довольно большое.
2. Абсолютно не имеет значения публичный адрес. Для доступа к криптовалюте достаточно получить секретный ключ.
Согласно закону Мура, количество транзисторов, размещаемых на кристалле интегральной схемы, удваивается каждые 24 месяца. А значит число производимых вычислений растет так же в экспоненте.
И согласно той же Википедии, уже к следующему году, появятся суперкомпьютеры способные выполнять 1 квинтиллион операций в секунду!!!
К 2030 году этот показатель перевалит за 10 в 21 степени (как раз почти количество песчинок)
И это более чем тревожный звоночек в пользу того, чтобы серьезно задуматься о безобасности собственных средств.
С другой стороны все чаще последнее время появляются новости о том, что какой-то хакер взломал кошелек. И мы теперь уже понимаем, что это скорее всего было сделано не путем брута(подбора) секретного ключа, а скорее всего другими, более изощренными способами. Но «чем черт не шутит»? А вдруг действительно он запустил брут, и сузил круг поиска ключей по одному ему известному алгоритму?
Опять же, обращаю ваше внимание на то, что в сети уже не один год подбором секретных ключей абсолютно открыто занимаются уже целые сообщества. Объединяя свои вычислительные мощности, они участвуют в поиске ключей «типа» от тех кошельков, ключи от которых были потеряны. Но что-то мне с трудом вериться в то, что найдя заветный ключ с тысячами биткоинов или эфиров, они кому-нибудь об этом расскажут. Погуглите, вся эта информация есть в сети и она абсолютно открыта.
Еще в 2015 году, на конференции DEF CON 23, специалисты компании White Ops продемонстрировали программу Brainflayer при помощи которой уже к тому моменту им удалось взломать более 18 000 кошельков биткоина. Но хуже всего то, что используя сервис Amazon и его мощности даже с обычного аккаунта, их программа могла перебирать 500 000 биткоин паролей в секунду! Напомню, что это было четыре! года назад. Вся эта информация находится в свободном доступе в сети Интернет, но об этом большинство блогеров предпочитает молчать, пачками выпуская гайды о том, как получить крипто-кошелек.
Но что же в таком случае делать? Если все же есть, хоть и мизерная, но вероятность того, что ваши криптоактивы могут украсть, как бы тщательно вы ни прятали секретные ключи?
А на самом деле решение есть! Это создание собственного Мультисиг-кошелька, когда для доступа к активам, нужен не один секретный ключ, а два или больше! Но эта тема уже совсем другой статьи: подробно как создать самому кошелек с мультиподписью
Абсолютное большинство потерь контроля над собственным аккаунтом происходит по вине самого пользователя. Из-за того, что сам пользователь ненадежно хранит секретный ключ. Большее число краж происходит путем мошеннических действий таких как: фишинговые сайты, где юзер сам вводит секретный ключ, различные вирусы, которые находят сохраненные ключи на компьютере или же просто отслеживают все символы вводимые на экране монитора. Но мы сегодня будем говорить только о взломе приватного ключа, поэтому тему безопасного хранения тут не станем рассматривать.
Не будем уходить глубоко в технические подробности криптографии, но все же некоторые базовые принципы должен знать каждый крипто-энтузиаст. То, о чем я буду говорить может быть применено как блокчейну биткоина, так и к эфиру, поэтому несколько обобщу главные тезисы:
Аккаунт – это базовый элемент в любом блокчейне. Он состоит из двух составляющих: открытого(адреса) и закрытого(приватного) ключа. Оба они выдаются вам «на руки» при создании собственного адреса для проведения различных операций с криптовалютой.
Причем открытый(публичный) ключ создается из закрытого(приватного) ключа и из одного приватного ключа можно получить огромное множество разных публичных, но при этом для каждого публичного ключа есть только ОДИН приватный ключ.
Публичный ключ (или по простому адрес) служит лишь для того, чтоб обозначить принадлежность той или иной криптовалюты, транзакций и др. информации доступной для размещения в блокчейне, к владельцу. Но чтобы совершать какие-либо действия от этого аккаунта нужен приватный(секретный) ключ. Именно этот секретный ключ и является главным преимуществом и особенностью любого криптографического кошелька.
Что такое секретный(приватный) ключ.
Секретный ключ это длиннющее 256-битное число, криптографически зашифрованное в более короткое посредством различных и надежных способов шифрования применимых в том или ином блокчейне или сервисе. Но на самом деле, для рассмотрения вышеобозначенной темы, неважно каким именно способом он зашифрован, важно то, что настоящий исходный ключ, это всего лишь неизменное и четкое математическое число, хоть и очень длинное.
Секретный ключ служит для подписи совершения любых действий в аккаунте. Поэтому если вы потеряете этот ключ, то восстановить доступ к аккаунту уже практически невозможно. И хочу заметить, что мы сейчас не говорим о различных сервисах, где вам выдается только пароль – в случаях, когда вам не нужно вводить раз за разом собственный секретный ключ для проведения транзакций, вы не являетесь единственным владельцем этого аккаунта, а значит и такое хранение абсолютно небезопасно. Это применимо ко многим не децентрализованным криптобиржам и онлайн-кошелькам.
Итак, из всего вышеизложенного нужно понять главное: главной ценностью является именно секретный ключ. Зная его, можно открыть аккаунт и вывести всю криптовалюту. А так же то, что он является неизменным и точным математическим числом.
И теперь мы можем подойти к рассматриваемой теме о взломе (подборе) секретного ключа.
Но для начала, я хочу чтоб вы своими ручками совершили некоторые действия с секретным ключом на примере Myetherwallet.
Давайте перейдем на сайт Myetherwallet и войдем в чужой кошелек заранее зная секретный ключ:
1. Заходим на сайт -> нажимаем «Войти в мой кошелек»->далее как на картинках:
2. Выбираем способ авторизации «Закрытый ключ»
3. Вводим в появившемся диалоговом окне вот этот секретный ключ: 5706d9a10b45b45d12706d15b28ad12ac02815b28a9a12243b3f0bf81b187b3e
4. И мы попадаем в чужой аккаунт:
Вот так, имея только секретный ключ, мы получили доступ к адресу(аккаунту) и если б за этим аккаунтом были б прикреплены токены, то мы без особого труда смогли бы их вывести. Но дальше будет еще интереснее:
Теперь обновите страницу и войдите в кошелек заново, но при этом измените любую цифру в секретном ключе, что мы использовали до этого (5706d9a10b45b45d12706d15b28ad12ac02815b28a9a12243b3f0bf81b187b3e),
И снова войдите.
Получилось? Еще бы! Теперь вы зашли в совершенно другой кошелек, и если в нем есть токены, то вы можете ими распорядиться. Но лучше не стоит – брать чужое не хорошо
С точки зрения закона, подбор пароля к криптовалютному аккаунту до сих пор не приравнен к преступлению потому, что мы не создаем и не используем вирусную программу, и ни коим образом не вредим программному обеспечению.
И теперь, поняв как можно лишь имея секретный ключ получить контроль над аккаунтом и всеми средствами принадлежащими ему, мы вплотную подошли к главному вопросу темы, а именно: можно ли взломать секретный ключ?
Мой ответ и «да» и «нет».
Почему невозможно.
Просто потому, что секретный ключ это набор из огромного числа чисел и чтоб подобрать его к аккаунту на котором есть средства, нужно очень, очень много времени и вычислительных ресурсов. Для примера приведу вот такое сравнение:
Есть такое предположение, что на нашей грешной планете Земля всего 1022 песчинок, и если взять все эти песчинки на нашей земле и превратить их в такие же планеты с тем же количеством песчинок, а затем все песчинки на получившихся планетах опять превратить в планеты и пересчитать песчинки, то получившееся число песчинок 2240 будет все равно меньше числа вариантов секретных ключей, а их количество, на минуточку, 2256 различных вариантов.
И казалось бы, теперь можно вздохнуть спокойно, ведь математика нам говорит, что подобрать секретный ключ практически невозможно, но я бы не спешил с таким утверждением.
Почему возможно.
Я хочу подчеркнуть две вещи:
1. Секретный ключ, это всего лишь постоянное число, хоть и довольно большое.
2. Абсолютно не имеет значения публичный адрес. Для доступа к криптовалюте достаточно получить секретный ключ.
Согласно закону Мура, количество транзисторов, размещаемых на кристалле интегральной схемы, удваивается каждые 24 месяца. А значит число производимых вычислений растет так же в экспоненте.
И согласно той же Википедии, уже к следующему году, появятся суперкомпьютеры способные выполнять 1 квинтиллион операций в секунду!!!
К 2030 году этот показатель перевалит за 10 в 21 степени (как раз почти количество песчинок)
И это более чем тревожный звоночек в пользу того, чтобы серьезно задуматься о безобасности собственных средств.
С другой стороны все чаще последнее время появляются новости о том, что какой-то хакер взломал кошелек. И мы теперь уже понимаем, что это скорее всего было сделано не путем брута(подбора) секретного ключа, а скорее всего другими, более изощренными способами. Но «чем черт не шутит»? А вдруг действительно он запустил брут, и сузил круг поиска ключей по одному ему известному алгоритму?
Опять же, обращаю ваше внимание на то, что в сети уже не один год подбором секретных ключей абсолютно открыто занимаются уже целые сообщества. Объединяя свои вычислительные мощности, они участвуют в поиске ключей «типа» от тех кошельков, ключи от которых были потеряны. Но что-то мне с трудом вериться в то, что найдя заветный ключ с тысячами биткоинов или эфиров, они кому-нибудь об этом расскажут. Погуглите, вся эта информация есть в сети и она абсолютно открыта.
Еще в 2015 году, на конференции DEF CON 23, специалисты компании White Ops продемонстрировали программу Brainflayer при помощи которой уже к тому моменту им удалось взломать более 18 000 кошельков биткоина. Но хуже всего то, что используя сервис Amazon и его мощности даже с обычного аккаунта, их программа могла перебирать 500 000 биткоин паролей в секунду! Напомню, что это было четыре! года назад. Вся эта информация находится в свободном доступе в сети Интернет, но об этом большинство блогеров предпочитает молчать, пачками выпуская гайды о том, как получить крипто-кошелек.
Но что же в таком случае делать? Если все же есть, хоть и мизерная, но вероятность того, что ваши криптоактивы могут украсть, как бы тщательно вы ни прятали секретные ключи?
А на самом деле решение есть! Это создание собственного Мультисиг-кошелька, когда для доступа к активам, нужен не один секретный ключ, а два или больше! Но эта тема уже совсем другой статьи: подробно как создать самому кошелек с мультиподписью
Последнее редактирование: