bee7
|
|
November 14, 2013, 04:10:22 PM |
|
Самое узкое место во всём этом благородном занятии - именно сравнение нового свежесгенерированного адреса со списком адресов, на которых заведомо лежат денюшки.
При правильном дизайне базы это не проблема.
|
|
|
|
Nadziratel
Sr. Member
Offline
Activity: 1568
Merit: 321
★777Coin.com★ Fun BTC Casino!
|
|
November 14, 2013, 04:29:20 PM |
|
Самое узкое место во всём этом благородном занятии - именно сравнение нового свежесгенерированного адреса со списком адресов, на которых заведомо лежат денюшки.
При правильном дизайне базы это не проблема. Дизайн базы тут вообще ни при чём. Вся база - это просто отсоритрованный список адресов, где лежат деньги. А вот сгенерить и перебрать нужно колоссальное количество адресов, из которых практически все будут пустые. Процентное количество "икряных" адресов в общем массиве исчезающе мало. Только на этом и держиться биткоин. И не только биткоин, а вся криптография. Смысл всей криптографии заключён в одной фразе: "Знал бы прикуп - жил бы в Сочи". Сильная криптография только тем и отличается от школьных шифрованных записочек девкам, что этот "прикуп" можно в идеале только угадать тупым перебором. А перебирать нужно очень много. И браться за этот перебор есть смысл если только есть возможность делать это очень быстро. Иначе скорее Солнце потухнет, чем на краюху хлеба набыбаешь. Единственное подспорье - уязвимости в криптосистемах, позволяющие не совсем тупо перебирать всё подряд, а обращать особое внимание на некоторые области в огромных массивах.
|
|
|
|
becool
Legendary
Offline
Activity: 1442
Merit: 1016
|
|
November 14, 2013, 04:36:08 PM Last edit: November 14, 2013, 04:55:41 PM by becool |
|
про хранение имелось ввиду опционально если имеет смысл. Например для случая роста появления новых адресов с деньгами куда быстрее чем рост вычислительной мощности. Откуда вы знаете что завтра-послезавтра не будет 4 миллиарда кошельков китайцев по 0.001 битка? Так мало того! Они еще и перемещать их будут постоянно, генерируя каждый китаец чуть ли не каждый день новых 4 миллиарда кошельков. В этом варианте легче будет тупо подождать с уже имеющимися:-) Кроме того рост скорости интернета и вместительности накопителей не надо отрицать. А вы конечно против иметь у себя базу допустим 10^-9 всех возможных адресов, со временем? Насчет подстраивания под ГСЧ хреновые выглядит ничуть не лучше. Важно то что мало найти то что там как-то вот оно так не случайно он работал. Там потом куча математических действий, ситуация огого как не тривиальной становится в результате, и просто не разрешимой. Почитайте про эти хэши, смена всего одного бита или байта поменяет целиком весь хэш напрочь, то есть и адрес тоже. Даже если там есть несколько стабильных байт у всех вариантов на входе и ее вычленить чтобы меньше считать - это уже нетривиальная математическая задача. А то что там типа числа были не совсем случайными на входе и поэтому нам не придется много перебирать, ну это уж извините совсем загнули. Это более чем не тривиально. То что байты начальные приватного ключа были как-то полуслучайно получены, они один фиг не каким-то вариантом строго определяющим их порядок были получены. Фокус это использовать крайне нетривиален и для самых серьезных математиков, а не так просто как вы описываете словно задача школьника, словно там вместо случайных чисел тупо одно и тоже число писалось, причем у всех:-) Или типа -7-7-7-7-7-7-1-1-1-1-1-9-9-9-9-9- такого. Единственное подспорье - уязвимости в криптосистемах, позволяющие не совсем тупо перебирать всё подряд, а обращать особое внимание на некоторые области в огромных массивах.
Ну правильно, чтобы не говорить пустословно о мифически недоумных хакеров не воспользовавшихся ситуацией с несовсем хорошим генератором просто возьмите и сделайте парочку всего экспериментов. Точнее три: 1. сделайте большой набор случайным образом сделаных чисел псевдослучайных, и посчитайте количество во всем массиве чисел отдельно 0, отдельно 1, и так до 255--- да неужели каких-то реально больше чем других? Попробуйте сделать выборку большего размера, проверьте еще раз. 2. проверьте на наличие сходных цепочек в том же массиве или в новом. Можно усложнить до поиска +/- схожих по каким то параметрам. --- опять же ничего не выйдет Есть еще подобные тесты, но так же если подключив высшую математику тесты можно сделать и вовсе сразу на функцию распределения проверку. И на поиск корреляций. 3. А теперь попробуйте в исходной строке их которой считается хэш заменить всего один символ, всего лишь, поменялся весь хэш? Вы знали точно каким образом он поменяется? Ничего что там выбираются разные функции в зависимости от данных?( если не ошибаюсь) Ничего что там море море сдвигов в вычислениях и ваш один случайный байт сделает не теоретически а практически не выполнимой задачей раскрутить это в обратную сторону? Еще раз повторю, даже если там будет допустим более вероятно число от 0 до 127 чем от 128 до 255 и таким образом нам легче предположить что там 0 в этом бите особо много это не даст прямо колосального прироста, к тому же ситуацию быстро исправят, ну и вообще-то генераторы случайных чисел обычно проверяют всетаки люди, и достаточно хотя бы такой примитивной проверки чтобы никакие биты не считать более вероятными чем другие. таким методам проверки генератора случайных чисел учат даже в школе.
|
|
|
|
Nadziratel
Sr. Member
Offline
Activity: 1568
Merit: 321
★777Coin.com★ Fun BTC Casino!
|
|
November 14, 2013, 04:57:56 PM Last edit: November 14, 2013, 05:10:40 PM by Nadziratel |
|
про хранение имелось ввиду опционально если имеет смысл.. Не имеет никакого смысла. Например для случая роста появления новых адресов с деньгами куда быстрее чем рост вычислительной мощности. Новые "интересные" адреса могут появится только в среднем один раз в десять минут в новом, принятом системой биткоин блоке. Их там будет очень немного. Всё, что было до этого мы уже знаем. Повторяю азы: В системе биткоин существует ТОЛЬКО то, что записано в блокчейне. И ничего другого. Если в блокчейне записано, что на каком-то адресе появились деньги, значит там они есть. Если в блокчейне записано, что битки с какого-либо адреса ушли - значит там их нет. И никак иначе. А для души каждый школьник может генерить что хочет. Это к биткоину не имеет никакого отношения. А вы конечно против иметь у себя базу допустим 10^-9 всех возможных адресов, со временем? Абсолютный бред. Адрес - это просто двоичное число, которое может быть переведено в любую другую систему счисления. Хотя бы в десятичную. Каждый человек имеет все адреса. И не только все адреса, а вообще всё бесконечное множество натуральных чисел. Бери карандаш и пиши. Никому не запрещено. Дальше нет смысла комментировать. Поток сознания.
|
|
|
|
RoadTrain
Legendary
Offline
Activity: 1386
Merit: 1009
|
|
November 14, 2013, 05:06:14 PM |
|
@Nadziratel Вы сами-то что хотите сказать?
|
|
|
|
Nadziratel
Sr. Member
Offline
Activity: 1568
Merit: 321
★777Coin.com★ Fun BTC Casino!
|
|
November 14, 2013, 05:18:31 PM |
|
@Nadziratel Вы сами-то что хотите сказать?
Только то, что потенциальных адресов биткоин существует почти 2 в степени 256 штук. Точнее FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFE BAAE DCE6 AF48 A03B BFD2 5E8C D036 4141 (в шестнадцатеричной форме). Это колоссальное количество. И невообразимое количество раз по триллиону раз из них - пустые. И нахрен нам не нужные. А все адреса, где есть битки всем хорошо известны из блокчейна. И их сравнительно немного. В том весь и фокус биткоина.
|
|
|
|
becool
Legendary
Offline
Activity: 1442
Merit: 1016
|
|
November 14, 2013, 05:23:15 PM |
|
Азы биткоина изучать пожалуй вам требуется раз такое пишите. 1. Новые адреса в системе биткоина появляются тогда когда его генерируете у себя на компьютере. Они не приходят ни с какого сервера и никто даже ничего не знает о том что они у вас есть на этапе их генерации. Вовсе никуда не отправляют информацию о их наличии. Точнее вы генерируете пару приватный и публичный ключ, но адрес делается на основе публичного ключа. 2. Информация появляется о таком адресе только когда есть транзакция с этим адресом в получателях, значит именно этот адрес и является важным, на нем есть деньги. 3. Сеть пока ничего не знает про публичный ключ соответствующий этому адресу, кроме того что он должен соответствовать по алгоритму адресу ( ссылку давал выше), любой который даст требуемый адрес. Вы что думали адреса просто так что-ли делаются? Просто рисуются на бумаге и получил деньги, ну конечно. 4. Интересные адреса это все на которых есть деньги. А не только "один раз в десять минут в новом, принятом системой биткоин блоке." через сколько то подтверждений с него уйдут все деньги и будут на туче других адресов. Или вы решили успевать перехватывать сразу адреса на которые майнится, так мало того еще и до того момента как они раздадут майнерам монеты, фантастика. 5. При росте курса и увеличении числа людей абсолютно естественным станет появление большего количества адресов, но с маленькими остатками. Ну уж не знаю, тут даже про биткоин знать не надо и так очевидно же по логике. 6. Для адресов с которых отправляли деньги, а не на которые отправляли так же в блокчейне присутствует и сам публичный ключ, а не только его производная в виде адреса получателя. 7. Таким образом адрес не может быть просто нарисованым, это сокращенный (специальными алгоритмами, см. ссылку) публичный ключ, для упрощения передачи денег, чтобы можно было продиктовать или переписать и т.д. только адрес куда отправлять. Нарисовать можно что угодно, но получить деньги можно только имея публичный и приватный ключи соответствующие этому адресу по цепочке: адрес соответствует публичному, а публичный соответствует приватному. Придумание толкьо публичного соответсвующего ничего не даст, так как не сможете подписать транзакцию чтобы отправить деньги, никуда не отправите. 8. Как только клиент сгенерировал транзакцию и отправил узлам вы тут же видете адреса в ней, вот тут сразу и появляются новые адреса если они там оказались. Не в блокчейне даже а в меморипул или как он там называется, в оперативной памяти узлов, пока еще. Ну вариант с блоком это тоже вариант такой транзы , отличие от других транз - нет отправителя, есть только получатель.
|
|
|
|
suppp
|
|
November 14, 2013, 05:32:05 PM |
|
Всего возможных адресов - 10^48Положительный баланс имеют более миллиона адресов, предположим даже пусть 10 миллионов ( 10^7). Отсюда вероятность, что сгенерированный адрес имеет положительный баланс 10^-41На Radeon 5850 можно генерировать более 20 млн. адресов в секунду, это 10^15 адресов в год Даже если затраты на проверку баланса ничтожные, вероятность попасть в положительный баланс за год составит 10^-26
|
|
|
|
becool
Legendary
Offline
Activity: 1442
Merit: 1016
|
|
November 14, 2013, 05:47:03 PM |
|
suppp Похоже даже если сделать асик ускоряющий это в 1000 раз и если такой будет у миллиарда человек вероятность получения счастливого блока всеравно остается ничтожно малой. Причем даже если адресов с деньгами будут не несколько миллионов а уже несколько миллиардов. Затея реально бредовая.
|
|
|
|
Nadziratel
Sr. Member
Offline
Activity: 1568
Merit: 321
★777Coin.com★ Fun BTC Casino!
|
|
November 14, 2013, 05:53:14 PM |
|
Всё, больше не могу. "Я устал, я ухожу". Азы биткоина изучать пожалуй вам требуется раз такое пишите. 1. Новые адреса в системе биткоина появляются тогда когда его генерируете у себя на компьютере. Ну и пусть себе появляются. Нам до них дела нет. Они пустые. 2. Информация появляется о таком адресе только когда есть транзакция с этим адресом в получателях, значит именно этот адрес и является важным, на нем есть деньги. А вот это правильно. Именно эти адреса нам и интересны. И происходит это в среднем раз в десять минут в каждом новом блоке. Между принятиями в блокчейн новых блоков в системе биткоин ничего не происходит. Транзакции, не включённые в подписанный блок - пустой звук. А все валидные транзакции со всеми адресами навсегда записаны в блокчейне, хорошо известны и не могут быть изменены. Они легко извлекаются из блокчейна и заносятся в отсортированный список. Я уже давал линк. Ещё раз: http://habrahabr.ru/post/146388/Придумание толкьо публичного соответсвующего ничего не даст, так как не сможете подписать транзакцию чтобы отправить деньги, никуда не отправите.
Ты ничего не понял. Никто не собирается придумывать публичные ключи и соответствующие им адреса. Перебираются исходные наиболее вероятные секретные ключи (Private key) и из него по честным биткоиновским алгоритмам вычисляется всё остальное. Ещё раз: https://en.bitcoin.it/wiki/Private_keyВ самом фундаментальном смысле секретный ключ - это просто случайное число и ничего более. Это должно быть действительно случайное число. Иначе "денюжки - тю-тю". Дополнительное подспорье - коллизия ключей. Попытка обращения хэша "в лоб" не рассматривается.
|
|
|
|
becool
Legendary
Offline
Activity: 1442
Merit: 1016
|
|
November 14, 2013, 06:03:07 PM |
|
Nadziratel Теперь всё понятней о чем была речь. Спасибо за более подробные пояснения, видимо я недостаточно внимательно прочитал первые сообщения в теме. Теперь не понятно другое, насколько же кривым должен быть генератор случайных чисел чтобы появлялись настолько менее случайные последовательности. Что именно и как он должен тогда выдавать, мне не представляется возможным к пониманию пока что.
Остальным кто не понял откуда цифры у supp 10^48 это по той ссылке что я давал написано про 20 байт адреса 256^20=10^48 10^15 это 20 млн*60*60*24*365 примерно 10^15
|
|
|
|
Nadziratel
Sr. Member
Offline
Activity: 1568
Merit: 321
★777Coin.com★ Fun BTC Casino!
|
|
November 14, 2013, 06:14:04 PM |
|
Теперь не понятно другое, насколько же кривым должен быть генератор случайных чисел чтобы появлялись настолько менее случайные последовательности. Что именно и как он должен тогда выдавать, мне не представляется возможным к пониманию пока что. А вот в этом и весь смысл. Кто это поймёт хотя бы приблизительно, тот и заберёт себе все существующие битки. И не только битки, а порушит вообще всю систему шифрования с открытым ключом. Может между делами ограбить все существующие в мире банки и т. д. Ясен пень, что полностью всё это знать в принципе невозможно. Можно только понизить сложность задачи до приемлемого к вычислениям уровня, если выловить уязвимости в софтверной и хардверной части. А вот если ввести подобные секретные уязвимости намеренно и заранее - то ты полностью в шоколаде. Поскольку на основе не совсем случайных чисел будут вычисляться совсем уж неслучайные от них производные. Можно ещё залепить закладки в промежуточных алгоритмах, чтобы на основе даже истинно случайных чисел вычислялись неслучайные результаты. А уж если закладки и там и там, то вообще - туши свет.
|
|
|
|
Alex AXe
Legendary
Offline
Activity: 1218
Merit: 1019
|
|
November 14, 2013, 06:38:05 PM |
|
Опять все эти разговоры о миллиарде китайцев с миллиардом адресов у каждого...
Да до одного места все те миллиарды и даже миллиарды миллиардов. Это исчезающе малая величина во всем множестве вероятных адресов.
Прелесть криптографии в том, что в ней легко сгенерировать то, на взлом чего потребуется компьютер, состоящий из всех частиц Вселенной, который все равно не взломает это за все время существования Вселенной.
|
|
|
|
becool
Legendary
Offline
Activity: 1442
Merit: 1016
|
|
November 14, 2013, 08:12:40 PM |
|
Теперь не понятно другое, насколько же кривым должен быть генератор случайных чисел чтобы появлялись настолько менее случайные последовательности. Что именно и как он должен тогда выдавать, мне не представляется возможным к пониманию пока что. А вот в этом и весь смысл. Кто это поймёт хотя бы приблизительно, тот и заберёт себе все существующие битки. И не только битки, а порушит вообще всю систему шифрования с открытым ключом. Может между делами ограбить все существующие в мире банки и т. д. Ясен пень, что полностью всё это знать в принципе невозможно. Можно только понизить сложность задачи до приемлемого к вычислениям уровня, если выловить уязвимости в софтверной и хардверной части. А вот если ввести подобные секретные уязвимости намеренно и заранее - то ты полностью в шоколаде. Поскольку на основе не совсем случайных чисел будут вычисляться совсем уж неслучайные от них производные. Можно ещё залепить закладки в промежуточных алгоритмах, чтобы на основе даже истинно случайных чисел вычислялись неслучайные результаты. А уж если закладки и там и там, то вообще - туши свет. Вот поэтому это и не имеет смысла потому что этого нет. Если система равновероятно делает любые числа от 0 до 255,а алгоритмы самих этих ГСЧ не сложнее чем алгоритмы криптографии и доступны всем посмотреть. Это для случая закладок. Вообще не понятно как это вообще можно учудить, если как я говорил есть проверки и люди проверяют генераторы случайных чисел, этому в школе учили, наверно и сейчас учат, это даже не высшая математика, это школьная часть информатики. Мало того нас учили еще и сделать свой простейший ГСЧ и его проверить и сравнить с ГСЧ станадартным библиотечным или системным. Даже самые старые алгоритмы и то обладали сильной степенью случайности чисел. Хотя там использовались простейшие формулы тригонометрии плюс системное время для большей случайности, вроде так. Алгоритм в 1 строку (если C++, не очень длинную всмысле), и то выдаваемый результат очень мало чем будет отличатся статистически от реально случайных. Вот даже не знаю как в андройде умудрились так напахать. Это терроризм уже какой-то, или сделали специально. Люди для выпендрежа на 386 подключали в С или С++ библиотеку типа лучше ГСЧ в отличии от станадртной, реально там надо было убится чтобы вычислить насколько же она лучше, заманаешься делать выборки ( ГСЧ работал не очень то быстро) чтобы чего-то там разглядеть на уровне статистической погрешности разницу. Легче впихнуть закладку куда угодно вообще в проприетарный софт чтобы стырить эти самые битки как-то по другому. Софта такого моря, вариантов соответсвенно тоже.
|
|
|
|
t309
Legendary
Offline
Activity: 1946
Merit: 1000
|
|
November 14, 2013, 08:16:06 PM |
|
ну вот биткоин посути отличное средство все ети теориии проверить на практике!!!
|
|
|
|
becool
Legendary
Offline
Activity: 1442
Merit: 1016
|
|
November 14, 2013, 08:27:41 PM Last edit: November 14, 2013, 08:56:18 PM by becool |
|
ну вот биткоин посути отличное средство все ети теориии проверить на практике!!!
Теорию что во всем софте могут быть закладки:-) Или в открытом но не сразу заметные и в малонаблюдаемом месте, или недолго. Или в проприетарном закрытом, там и вовсе в течении многих лет и у всех, как недавно с роутерами человек много вскрыл, у DLink и прочих. А че, нормально законектился на порт , ввел нужную комбинацию и ты администратор. Чем выше курс тем больше шанс что в следущем обновлении от мелкомягкого придет ненадолго зашифрованый собиратель ключей и всовыватель их тупо в пакет запроса автоматического обновления, опять же в зашифрованом виде. И придется для биткоинов иметь отдельный компьютер с отдельной не только защищенной системой но и абсолютным минимумом кода, в том числе возможно и вовсе хардварный подобный вариант, но с открытой прошивкой.
|
|
|
|
yo-blin
Legendary
Offline
Activity: 2296
Merit: 1057
|
|
November 15, 2013, 07:18:37 AM |
|
О закладках Вы наверняка слышали о ГOCТ алгоритмах шифрования я уверен на 146% что если бы в нем не было бы закладки - он бы не стал ГOCТ-ом!
о генерации адресов вопрос к гуру а разве существующие асики SHA256 не смогут генерировать адреса ?
|
Sign for rent, СОБИРАЮ МЕRIT! NVC: 4 YoBLincaRdAEG4v8tbZ4T26ZnKbT9SBsu
|
|
|
bee7
|
|
November 15, 2013, 08:40:36 AM |
|
О закладках Вы наверняка слышали о ГOCТ алгоритмах шифрования я уверен на 146% что если бы в нем не было бы закладки - он бы не стал ГOCТ-ом!
о генерации адресов вопрос к гуру а разве существующие асики SHA256 не смогут генерировать адреса ?
Нет. т.е. конечно достоверно не известно, что в них еще заложено, но думаю, что тот же Битфури пожадничал бы площадью кристалла под что-нибудь такое. Дело в том, что перебор sha256d - это самое простое и маленькое с точки зрения реализации в кремнии среди того, что используется в технологии сети. На входе у всех - то что нужно хешить+промежуточное состояние. на выходе - только нонсы успешных решений единичной сложности. Едит: запутался в отрицаниях, три раза правил сообщение, пока смог выразить мысль однозначно
|
|
|
|
bee7
|
|
November 15, 2013, 08:48:36 AM |
|
О закладках Вы наверняка слышали о ГOCТ алгоритмах шифрования я уверен на 146% что если бы в нем не было бы закладки - он бы не стал ГOCТ-ом!
А вот с этим утверждением я бы поспорил. Если вы конечно имеете ввиду алгоритм симметричного шифрования. Возможная утечка подобной информации является очень большой угрозой нац. безопасности. Про DES тоже у многих были сомнения, что его константы подобраны специально так, что бы можно было "ломать" имея некоторое специальное знание, из-за того, что в спецификации константы приведены как факт, без всякого обоснования. В последствии же, всесторонний анализ независимыми экспертами показал как раз обратное, что они были очень тщательно подобраны с точки повышения криптостойкости алгоритма.
|
|
|
|
Nadziratel
Sr. Member
Offline
Activity: 1568
Merit: 321
★777Coin.com★ Fun BTC Casino!
|
|
November 16, 2013, 07:32:43 PM |
|
Между делом хочу довести до сведения конспираторов, что люди потихоньку составляют не только список биткоин адресов с приноадлежащей им суммой, но и составляют список владельцев этих кошельков в реале. Со всеми прибабахами типа фамилии, имени, отчества, почтового адрева, телефона и т.д. Не сильно удивлюсь, если дело дойдёт до отпечатков пальцев: http://www.forbes.com/sites/kashmirhill/2013/11/13/sanitizing-bitcoin-coin-validation/Вот тут обсуждают и негодуют: https://bitcointalk.org/index.php?topic=333211.0Не зря на Гоксе просили присылать сканы документов. Как говорил товарищ Маркс: "Свобода есть осознанная необходимость" Хотя наверняка до него это сказал Аристотель. Аристотель - арест. Нездоровая ассоциация.
|
|
|
|
|