Bitcoin Forum
June 30, 2024, 10:39:10 AM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1] 2 »  All
  Print  
Author Topic: Реализация кошелька без хранения блокчен  (Read 3227 times)
zidansz (OP)
Full Member
***
Offline Offline

Activity: 165
Merit: 101


View Profile WWW
August 26, 2014, 07:35:19 PM
Last edit: August 27, 2014, 07:50:24 AM by zidansz
 #1

Реализация кошелька без хранения всего блокчейна и без сторонних серверов

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

Lis
Sr. Member
****
Offline Offline

Activity: 292
Merit: 251


Spice must flow!


View Profile
August 26, 2014, 07:50:51 PM
 #2

Реализация кошелька без хранения всего блокчейна и без сторонних серверов

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

You would like to thank?
btc: 14tAPpwzrfZqBeFVvfBZHiBdByYhsoFofn
zidansz (OP)
Full Member
***
Offline Offline

Activity: 165
Merit: 101


View Profile WWW
August 26, 2014, 08:53:53 PM
 #3


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

это понятно, но...
вопроса собственно с загрузить нет - вопрос именно в том что бы потом хранить

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

ведь что бы включить ложную транзакцию в новый блок взломщику будет необходимо что бы сеть такой блок подтвердила - а для такой проверки нет необходимости хранить все блоки

in100
Legendary
*
Offline Offline

Activity: 1200
Merit: 1021



View Profile
August 27, 2014, 05:55:22 AM
 #4

ведь что бы включить ложную транзакцию в новый блок взломщику будет необходимо что бы сеть такой блок подтвердила - а для такой проверки нет необходимости хранить все блоки

Для такой проверки нужно хранить все непотраченные выходы транзакций.

1BTCin1ooigFtHHD82qquqysdfxFZGdd8a  |  LTCin1oo9JhxcZu8ZK5HivqwvzAdQSaoua  |  4NVCin1ooAd2XKoEfEhBn6tYNUHhojf4QS
Блокчейн биткоина с его алгоритмом децентрализованного консенсуса на самом деле неэффективен, но неэффективность – это та цена, которую мы платим за свободу.© Andreas Antonopoulos
zidansz (OP)
Full Member
***
Offline Offline

Activity: 165
Merit: 101


View Profile WWW
August 27, 2014, 06:07:39 AM
 #5

ведь что бы включить ложную транзакцию в новый блок взломщику будет необходимо что бы сеть такой блок подтвердила - а для такой проверки нет необходимости хранить все блоки

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

in100
Legendary
*
Offline Offline

Activity: 1200
Merit: 1021



View Profile
August 27, 2014, 06:14:50 AM
 #6

а того что блок принят сетью разве недостаточно?
майнер разве не проверяет это когда создает блок?

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

Не имея сведений о непотраченных выходах, кошелёк не сможет противостоять атаке "51%".

1BTCin1ooigFtHHD82qquqysdfxFZGdd8a  |  LTCin1oo9JhxcZu8ZK5HivqwvzAdQSaoua  |  4NVCin1ooAd2XKoEfEhBn6tYNUHhojf4QS
Блокчейн биткоина с его алгоритмом децентрализованного консенсуса на самом деле неэффективен, но неэффективность – это та цена, которую мы платим за свободу.© Andreas Antonopoulos
zidansz (OP)
Full Member
***
Offline Offline

Activity: 165
Merit: 101


View Profile WWW
August 27, 2014, 06:28:19 AM
 #7

а того что блок принят сетью разве недостаточно?
майнер разве не проверяет это когда создает блок?

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

Не имея сведений о непотраченных выходах, кошелёк не сможет противостоять атаке "51%".

т.е.

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

вопрос - как она туда вообще смогла попасть? разве блок который содержит ошибку не будет забракован?

in100
Legendary
*
Offline Offline

Activity: 1200
Merit: 1021



View Profile
August 27, 2014, 06:40:07 AM
 #8

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

вопрос - как она туда вообще смогла попасть? разве блок который содержит ошибку не будет забракован?

В нормальных условиях - да, такой блок будет забракован. Но если кто-то пытается атаковать сеть, имея достаточную мощность, он будет майнить свою цепочку, пытаясь добиться, чтобы она стала основной. А в свои блоки он сможет включать любые транзакции, как корректные, так и мошеннические.

1BTCin1ooigFtHHD82qquqysdfxFZGdd8a  |  LTCin1oo9JhxcZu8ZK5HivqwvzAdQSaoua  |  4NVCin1ooAd2XKoEfEhBn6tYNUHhojf4QS
Блокчейн биткоина с его алгоритмом децентрализованного консенсуса на самом деле неэффективен, но неэффективность – это та цена, которую мы платим за свободу.© Andreas Antonopoulos
zidansz (OP)
Full Member
***
Offline Offline

Activity: 165
Merit: 101


View Profile WWW
August 27, 2014, 07:25:31 AM
 #9

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

вопрос - как она туда вообще смогла попасть? разве блок который содержит ошибку не будет забракован?

В нормальных условиях - да, такой блок будет забракован. Но если кто-то пытается атаковать сеть, имея достаточную мощность, он будет майнить свою цепочку, пытаясь добиться, чтобы она стала основной. А в свои блоки он сможет включать любые транзакции, как корректные, так и мошеннические.

так... но если говорить об атаке 51% - то ее суть в том что есть два блока с одним и тем же порядковым номером с потраченными монетами с правильных транзакций но в разные назначения
а если один из блоков будет содержать ошибку - его же просто сеть забракует и попытки строить на нем продолжения цепочки ни к чему не приведут...

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

in100
Legendary
*
Offline Offline

Activity: 1200
Merit: 1021



View Profile
August 27, 2014, 07:40:21 AM
 #10

так... но если говорить об атаке 51% - то ее суть в том что есть два блока с одним и тем же порядковым номером с потраченными монетами с правильных транзакций но в разные назначения
а если один из блоков будет содержать ошибку - его же просто сеть забракует и попытки строить на нем продолжения цепочки ни к чему не приведут...

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

Согласен, написал не то  Sad

Но всё равно, проверять транзакции каждый кошель должен сам, не доверяя никому.
В принципе, конечно, можно полагаться на сеть, считать все транзакции в блоках валидными, а у себя в кошельке хранить только информацию о своих адресах. А если подобных кошельков у обычных пользователей (не майнеров) станет 100%? Тогда теряется весь смысл децентрализации, не будет никакой сети, только несколько кошельков пулов будут знать всё. И это будет уже не биткойн, а что-то другое.

1BTCin1ooigFtHHD82qquqysdfxFZGdd8a  |  LTCin1oo9JhxcZu8ZK5HivqwvzAdQSaoua  |  4NVCin1ooAd2XKoEfEhBn6tYNUHhojf4QS
Блокчейн биткоина с его алгоритмом децентрализованного консенсуса на самом деле неэффективен, но неэффективность – это та цена, которую мы платим за свободу.© Andreas Antonopoulos
zidansz (OP)
Full Member
***
Offline Offline

Activity: 165
Merit: 101


View Profile WWW
August 27, 2014, 07:50:07 AM
 #11

смысл имеет в тех случаях когда есть проблемы с местом... например vps или мобильные девайсы
вот bitcoinj судя по всем делает примерно так как я хочу, только я не уверен в том хранит ли он все хеши блоков - я себе это еще позволить могу... все таки какой то дополнительный фактор безопасности

pant-79
Hero Member
*****
Offline Offline

Activity: 994
Merit: 502


View Profile
August 27, 2014, 08:07:35 AM
 #12

В принципе, конечно, можно полагаться на сеть, считать все транзакции в блоках валидными, а у себя в кошельке хранить только информацию о своих адресах. А если подобных кошельков у обычных пользователей (не майнеров) станет 100%? Тогда теряется весь смысл децентрализации, не будет никакой сети, только несколько кошельков пулов будут знать всё. И это будет уже не биткойн, а что-то другое.
А зачем прям так радикально? Разве нельзя иметь компромиссный вариант - хранить блоки за последний месяц, к примеру, а более старые "архивировать"?
Каким образом это повредит сети даже если все 100% кошельков будут такими?
fsb4000
Legendary
*
Offline Offline

Activity: 1400
Merit: 1000



View Profile
August 27, 2014, 08:15:18 AM
 #13

В принципе, конечно, можно полагаться на сеть, считать все транзакции в блоках валидными, а у себя в кошельке хранить только информацию о своих адресах. А если подобных кошельков у обычных пользователей (не майнеров) станет 100%? Тогда теряется весь смысл децентрализации, не будет никакой сети, только несколько кошельков пулов будут знать всё. И это будет уже не биткойн, а что-то другое.
А зачем прям так радикально? Разве нельзя иметь компромиссный вариант - хранить блоки за последний месяц, к примеру, а более старые "архивировать"?
Каким образом это повредит сети даже если все 100% кошельков будут такими?
Навернулся кошелёк. Помнишь только прив кей. Скачиваешь такой кошелёк и хочешь синхронизироваться, а не можешь. Так как у всех такие кошельки. Только за последний месяц. А у тебя были монеты 3х месячной давности....
Печаль. Битки потеряны навсегда....
pant-79
Hero Member
*****
Offline Offline

Activity: 994
Merit: 502


View Profile
August 27, 2014, 09:46:33 AM
 #14

В принципе, конечно, можно полагаться на сеть, считать все транзакции в блоках валидными, а у себя в кошельке хранить только информацию о своих адресах. А если подобных кошельков у обычных пользователей (не майнеров) станет 100%? Тогда теряется весь смысл децентрализации, не будет никакой сети, только несколько кошельков пулов будут знать всё. И это будет уже не биткойн, а что-то другое.
А зачем прям так радикально? Разве нельзя иметь компромиссный вариант - хранить блоки за последний месяц, к примеру, а более старые "архивировать"?
Каким образом это повредит сети даже если все 100% кошельков будут такими?
Навернулся кошелёк. Помнишь только прив кей. Скачиваешь такой кошелёк и хочешь синхронизироваться, а не можешь. Так как у всех такие кошельки. Только за последний месяц. А у тебя были монеты 3х месячной давности....
Печаль. Битки потеряны навсегда....
Мдя... тогда это жесть. Если представить, сколько транзакций в секунду будет обрабатывать сеть биткойн при ее увеличении хотя бы в 10 раз, то бедные винчестеры пользователей.
Кстати, оригинальное решение для PoS (или PoХ)-майнинга. Майнят только те кошельки, которые содержат весь блокчейн. Урезанные кошельки не майнят... как-бы это можно было реализовать?....
amaclin
Legendary
*
Offline Offline

Activity: 1260
Merit: 1019


View Profile
August 27, 2014, 11:49:15 AM
 #15

Quote
Мдя... тогда это жесть. Если представить, сколько транзакций в секунду будет обрабатывать сеть биткойн при ее увеличении хотя бы в 10 раз, то бедные винчестеры пользователей.

Всё очень просто на самом деле и это уже сто раз обговаривалось.
Допустим, сейчас есть два мнения.
1) Фулнодой считается нода, которая хранит все транзакции от генезис-блока. Любой неизрасходованный ранее выход может быть в любую минуту израсходован.
2) Фулнодой считается нода, которая хранит все транзакции за последние 10 (можете поставить любую иную цифру) лет. Неизрасходованный выход возрастом более 10 лет считается навсегда потерянным.

Очевидно, что чем больше возрастает блокчейн - тем больше сторонников пункта (2) и тем меньше сторонников пункта (1)
Ну зачем я на своем винчестере буду хранить транзакции которые сделал Сатоши Накамото? Мне как-то до лампочки... Если хочет - пусть пошевелит своими булками и переведет свои койны в более поздний блок.

Как только сторонников пункта (2) станет более 51% (а когда-нибудь это очевидно случится!) - будет инициирован переход на алгоритм "протухания" старых неизрасходованных выходов. Будут ли койны безвозвратно потеряны или майнеры смогут эти "протухшие" выходы приплюсовать к coinbase-транзакциям - это не так уж важно.

Важно помнить, что в основе биткойна лежит принцип того, что "сеть такая, какой её хочет видеть большинство".
zidansz (OP)
Full Member
***
Offline Offline

Activity: 165
Merit: 101


View Profile WWW
August 27, 2014, 02:36:52 PM
 #16

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

pant-79
Hero Member
*****
Offline Offline

Activity: 994
Merit: 502


View Profile
August 27, 2014, 05:52:31 PM
 #17

во флуд какой то ударились.... я не спрашивал о проблемах биткоина через надцать лет и т.п.
меня интересовал вопрос реализации частного кошелька для текущей реализации биткоина
Я думаю, такой вариант биткойн-кошелька запилить вообще не проблема. Любой кодер справится.
info_infoman
Sr. Member
****
Offline Offline

Activity: 460
Merit: 250



View Profile
September 08, 2014, 02:01:02 PM
 #18

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

вы товарисч флуд несете... есть электрум - кошель облегченный а для мобил есть брейн(мозг)кошельки

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

что касается фул ноды все просто - представьте вы всю жизнь работали и зарабатывали на пенсию

и тут приходит такой перец как вы и предлагает стереть все превинпуты и считать входы за последний месяц и что? а как же ваша пенсия? там превинпуты непотраченые аж с Н-мохнатого года.... а вам их отрезали..... и все вам говорят - небыло такого превинпута .... а вы беззубый старик который не может купить булку хлеба из-за того что некий перец решил отрезать всё что старше 1 месяца.... бред.

amaclin
Legendary
*
Offline Offline

Activity: 1260
Merit: 1019


View Profile
September 08, 2014, 02:57:37 PM
 #19

Quote
что касается фул ноды все просто - представьте вы всю жизнь работали и зарабатывали на пенсию
и тут приходит такой перец как вы и предлагает стереть все превинпуты и считать входы за последний месяц и что? а как же ваша пенсия? там превинпуты непотраченые аж с Н-мохнатого года.... а вам их отрезали..... и все вам говорят - небыло такого превинпута .... а вы беззубый старик который не может купить булку хлеба из-за того что некий перец решил отрезать всё что старше 1 месяца.... бред.

Есть такая вещь: парадокс всемогущества
https://ru.wikipedia.org/wiki/Парадокс_всемогущества
«Попросите Бога сделать камень, который он не сможет поднять».
Коли получится, значит, его всемогущество утратило силу. А коли нет, то он и не был всемогущ.

В применении к биткойну мы имеем следующее: нельзя написать свод правил, которые потомки не смогут изменить.
Так что когда потомки устанут хранить генезис-блок - они изменят биткойн и спокойно сотрут его.
Возможно, это произойдет через 10, а возможно, через 1000 лет.

Один "перец" разумеется не сможет поменять сеть. Но если 51% фулл-нод скажут, что проще перейти на форк, чем хранить пенсию Сатоши Накамото - все остальные потихоньку переползут. Ну или останутся в меньшинстве, и будут гордиться тем, что они "последователи".
info_infoman
Sr. Member
****
Offline Offline

Activity: 460
Merit: 250



View Profile
September 08, 2014, 04:44:16 PM
 #20

это уже вопрос алгоритма и идеологии
если последователи биткоина будут продолжать придерживаться идеям золота открытого рынка и свободы "че хочу то и ворочу и нс*** на других" то и ждать пенсии в сатошах не следует....

пенсия сохраняется только тогда когда общество на которое ты тратил лучшие годы сохранилось и приумножилось(защита нац экономики) и помнит свои корни (преинпуты)

Pages: [1] 2 »  All
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!