Jump to content

Кошелек, приватны и публичный ключи, транзакции. Помогите разобраться!


niorix
 Share

Recommended Posts

Доброго времени суток, почитал матчать, но все равно остались вопросы.

Я попытаюсь рассказать, что и как я понял, попутно задавая вопросы, а вас попрошу поправить там где я не прав.

 

Маленькая оговорка, пробу пера я делал на fathercoin'ах, так как биты дорогие чтото). Но так как Это все форки принци должен быть один.

 

Итак начнем с малого - кошелек:

Как я понял в нем просто храняться пары приватный/открытый ключ. При этом из приватного легко можно вычислить открытый ключ (поправте). К консоле командой dumpprivkey мы можем посмотреть приватный ключ, соответсвующий открытому. Ну мы можем импорировать приватный ключ сгенерированный, например, сторонним сервисом и программа вычислит из него открытый ключ, и добави нам его в адреса. Открытый же ключ (или же все таки его хеш HASH(PUB1), так и не понял), мы видем в разделе "принять деньги".

Когда я поствил клиента он сгенерировал мне такую пару. В статье Биткоин изнутри для непонимающих говорится что сразу 100, но их я не вижу, если кто скажет как посмотреть можебыть мне станет немного яснее.

В любой момент я могу сгенерировать еще сколько угодно пар ключей.

 

Баланс кошелька:

Когда кто то отправляет на мой адрес денюжку, он создает транзакцию, в которой говорить что такая то сумма теперь принаднежит человеу, у которого HASH(PUB1) такой то.

При этом никто не может понять, кому же всетаки отправили. Но мой клиент знает адрес PUB1 и спокойно может вычислить HASH(PUB1) и понять, денюжка отправлялась мне. Таких транзакций много, и клиент все их запоминает и складывает все полученные деньги в баланс. Точнее он это делает со всеми адресами PUB, которые у меня есть. Получается баланс.

 

Транзакции

А вот тут больше всего вопросов.

Итак, условимся для простоты что адрес у меня один и на него было 3 поступления по 1 BTC (да, это много по нынешнему курсу, просто для примера).

Я хочу отправить кому то 2.5 BTC.

Я говорю:
"Все помнят что бало 3 транзакции на HASH(PUB1)? Ну так вот мой PUB1 такой то и HASH(PUB1) вы можете легко вычислить, так что поступления были мне. Теперь я хочу что бы 2.5 BTC от этих транзакций (входы, в нашем случае 3), принадлежали человеку HASH(PUB2). Мой приватный ключ, PRIV1, из него вы легко можете получть PUB1 так что деньги, которые поступали, мои. А сдачу прошу вернуть..."

 

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

 

А теперь основной в этом разделе вопрос. Мой адрес остался и не изменился, многие люди или, допустим, сервисы майнинга на него оправляют деньги. А я уже запалил приватный ключ. И что теперь любой может воспользоваться оставшимися и вновь поступившими на этот адрес деньгами, ведь я отправляя деньги и PUB1 и PRIV1 от него публично огласил?

Мне что теперь забить на остаток (а он может быть большим) создать новый адрес и сообшить 1000 человек, которые за что то платят мне, что "на старый не отправляйте, отправляйте на новый". И оббежать десяток пулов и сменить там реквизиты?

Понимаю что это нереально и я просто гдето не догнал... Прошу пояснить!

Спасибо всем тем кто дочитал мою ахинею, и еще большее спасибо тем кто мне будет помогать разобраться.

Edited by niorix
Link to comment
Share on other sites

.... А я уже запалил приватный ключ. 

...

- с чего ты взял, что спалил свой приватный ключ от первого адреса? Когда клиент (bitcoin-qt.exe) подписывает транзакцию приватным ключом, он его не светит.

Edited by Geo_log
Link to comment
Share on other sites

Выдержка из статьи:
"Но так задумано, что секретный ключ используется только один раз, а часть своих монет пересылается на свой же новый, не засвеченный адрес." Вроде как речь о приватном ключе.

Быть может я не совсем понимаю процесс подписи конечно. Но как тогда понимать отправку сдачи на "незасвеченный адрес"?

Link to comment
Share on other sites

 

 

Но как тогда понимать отправку сдачи на "незасвеченный адрес"?

В кошельке изначально есть 100 публичных адресов. Сдача отправляется на любой из них, ранее не использовавшийся. Приватный ключ при этом нигде не светится.

Link to comment
Share on other sites

 

Но как тогда понимать отправку сдачи на "незасвеченный адрес"?

В кошельке изначально есть 100 публичных адресов. Сдача отправляется на любой из них, ранее не использовавшийся. Приватный ключ при этом нигде не светится.

 

- хуже. Если изначально клиента не запустить с ключом -keypool=<n>, то в кошельке окажется 100 пар публичный+приватный ключ. Это важно знать новичку, т.к. если он потеряет свой изначальный как бы пустой кошелёк, но продолжит пользоваться его копией, то вновь полученных монет он лишится, если враг завладеет старым (как бы пустым) кошельком и паролем к нему.

 

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

Link to comment
Share on other sites

 

Но как тогда понимать отправку сдачи на "незасвеченный адрес"?

В кошельке изначально есть 100 публичных адресов. Сдача отправляется на любой из них, ранее не использовавшийся. Приватный ключ при этом нигде не светится.

 

Возьмем пару ключей. PUB 18DKKX5kXSYEzvCpG5y9dR9PTDCzx7pCV8, PRIV 5JyJw51hiwH1SyVyno69a5dPjLFvQubPjAbCCZfchFx87Eksjdn (сгенерил на bitadress.org). Я так понял зная PRIV мы можем вычислить PUB. Так?

Адрес получения 18DKKX5kXSYEzvCpG5y9dR9PTDCzx7pCV8 - это и есть публичный адрес?

В кошельке их 100, а вижу я один, и для каждого публичного есть свой приватный? Или же одному приватному может соответствовать много публичных (я всегда думал что берется PRIV, хешируется и получается PUB, а значит он только один)?

Тогда я не понимаю почему бы не вернуть сдачу прямо на адрес 18DKKX5kXSYEzvCpG5y9dR9PTDCzx7pCV8

Edited by niorix
Link to comment
Share on other sites

 

 

Адрес получения 18DKKX5kXSYEzvCpG5y9dR9PTDCzx7pCV8 - это и есть публичный адрес?

Да

 

 

 

В кошельке их 100, а вижу я один, и для каждого публичного есть свой приватный? Тогда я не понимаю почему бы не вернуть сдачу прямо на адрес 18DKKX5kXSYEzvCpG5y9dR9PTDCzx7pCV8

Читаем пост выше и пытаемся понять, там дан ответ проще некуда.

Link to comment
Share on other sites

  • 1 month later...

По поводу сдачи и засвечивания приватного ключа разобрался более мение. Остается один момент: можно ли как то посмотреть эти сгенерированные 100 пар ключей?

Link to comment
Share on other sites

  • 4 weeks later...

 

 

Но как тогда понимать отправку сдачи на "незасвеченный адрес"?

В кошельке изначально есть 100 публичных адресов. Сдача отправляется на любой из них, ранее не использовавшийся. Приватный ключ при этом нигде не светится.

 

- хуже. Если изначально клиента не запустить с ключом -keypool=<n>, то в кошельке окажется 100 пар публичный+приватный ключ. Это важно знать новичку, т.к. если он потеряет свой изначальный как бы пустой кошелёк, но продолжит пользоваться его копией, то вновь полученных монет он лишится, если враг завладеет старым (как бы пустым) кошельком и паролем к нему.

 

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

 

а как можно продолжить пользоваться копией?

 

Link to comment
Share on other sites

  • 3 years later...

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
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Similar Topics

    • Аппаратный кошелек Ledger Nano

      Официальный сайт | Исходники | Блог | Twitter | Facebook | Linkedin | YouTube | Roadmap | User guides   В теме действуют все Правила форума! Перед тем как задать вопрос, посмотрите НОВИЧКИ Bits.Media, все сюда. Уважайте своё и чужое время. Для обсуждения и поиска программ/драйверов пользуйтесь разделом Файлы. Сообщения, не относящиеся к теме обсуждения (оффтоп), удаляются без предупреждения.   Полный обзор Ledger Nano

      in Кошельки для криптовалют

    • Бумажный кошелёк

      От модератора: сервисы для рассылки готовых (подписанных) транзакций собраны здесь   В обычных кошельках есть адрес кошелька с которого я могу отправить на какой-либо другой кошелёк монеты. А в случае бумажного кошелька как всё это делать? Есть секретный код, но как с этим всем работать... Может кто-то знаком с работой таких кошельков и их надёжностью? Просветите в данном вопросе из своего опыта.   Ну вот к примеру тут показывают как завести кошель, но как им пользоваться не гов

      in Кошельки для криптовалют

    • Trust Wallet - мультивалютный мобильный кошелек от Binance

      Дата написания обзора: октябрь 2020 г.   Trust Wallet — так называется мультивалютный кошелек, создание которого было начато в 2017 году Виктором Радченко (позже к нему присоединилось еще несколько разработчиков, и образовалась компания Trust Wallet, в 2018 году поглощенная Binance).      Примечание 31.08.22 - перед созданием или импортом кошелька ОБЯЗАТЕЛЬНО сохраняйте сид-фразу. Новые версии кривые и глючные. Могут багануть так, что бесследно исчезнут все кошельки.  

      in Кошельки для криптовалют

    • Кошелёк для TON

      Кто какими пользуется кошельками для TON? За последнее время, видим как стремительно развивается блокчейн TON и токены на нём. Пришло время подумать о кошельке. Несмотря на то, что на оф. сайте монеты собрано большое кол-во кошельков от разных производитетей, старожилы монеты TON не рекомендуют пользоваться абы каким, первым попавшимся.  До недавнего времени, многие могли утверждать, что не существует кошельков в виде расширения для браузера, в стиле Метамаск. Вчера я решил у

      in Кошельки для криптовалют

    • 1inch Network выводит на рынок свой аппаратный кошелек

      Агрегатор децентрализованных бирж 1inch Network заявил о завершающей стадии разработки собственного аппаратного кошелька, который сейчас проходит финишные этапы тестирования.   Согласно заявлению 1inch, аппаратный кошелек поступит в продажу в этом году и будет конкурировать с более крупными игроками на рынке холодных кошельков, такими как Ledger и Trezor.   Аппаратный кошелек с поддержкой 1inch Foundation оснащен 2.7-дюймовым сенсорным дисплеем, является беспроводным, работая от перез

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

×
×
  • Create New...