Bitcoin Forum
November 16, 2024, 08:17:48 PM *
News: Latest Bitcoin Core release: 28.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: « 1 2 3 [4] 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 »  All
  Print  
Author Topic: Делаем криптовалюту  (Read 36805 times)
amaclin
Legendary
*
Offline Offline

Activity: 1260
Merit: 1019


View Profile
January 11, 2017, 06:03:47 AM
 #61

Всяких, да ещё совершенно сырых, сегвитов и лайтингов в крипте конечно же не будет.
Не вижу в этом никакого смысла, тем более в самом начале. Это очень геморройное и бесполезное удовольствие...
В эти стародавние времена https://github.com/bitcoin/bitcoin/tree/0.8 такого ещё не было.
главный смысл сегвита в том, что txid не зависит от ecdsa-подписей, делающих
эту транзакцию валидной.
текущая реализация сегвит в биткойне сложна лишь тем, что пришлось делать её через софт-форк
для обеспечения обратной совместимости.

Quote
#define  COIN_NAME  bitcoin
а в текстах как будете это править?

Quote
Кстати, а как назовём эту новую крипту?
Нужно название придумать, что бы исходники на гитхаб или ещё куда залить.
ага. и еще очень важный вопрос - как будет выглядеть окно "о программе"
будет там синяя полосочка или нет (это по мотивам
https://bitcointalk.org/index.php?topic=704756.msg16044842#msg16044842
https://bitcointalk.org/index.php?topic=704756.msg10376031

neiros (OP)
Legendary
*
Offline Offline

Activity: 3556
Merit: 1100



View Profile WWW
January 11, 2017, 06:50:51 AM
 #62

Всяких, да ещё совершенно сырых, сегвитов и лайтингов в крипте конечно же не будет.
Не вижу в этом никакого смысла, тем более в самом начале. Это очень геморройное и бесполезное удовольствие...
В эти стародавние времена https://github.com/bitcoin/bitcoin/tree/0.8 такого ещё не было.
главный смысл сегвита в том, что txid не зависит от ecdsa-подписей, делающих
эту транзакцию валидной.
текущая реализация сегвит в биткойне сложна лишь тем, что пришлось делать её через софт-форк
для обеспечения обратной совместимости.
Не вижу особых проблем сделать txid неизменяемым. Сегвит для этого не нужен.
Для этого вроде достаточно исключит те параметры, которые критичны для формирования txid.



Quote
Кстати, а как назовём эту новую крипту?
Нужно название придумать, что бы исходники на гитхаб или ещё куда залить.
ага. и еще очень важный вопрос - как будет выглядеть окно "о программе"
будет там синяя полосочка или нет (это по мотивам
https://bitcointalk.org/index.php?topic=704756.msg16044842#msg16044842
https://bitcointalk.org/index.php?topic=704756.msg10376031

Что бы дойти до "синей полоски" сначала нужно придумать название пути и проложить этот путь, по которому будем идти, что бы дойти до "синей полоски". Без этого никак. Grin

amaclin
Legendary
*
Offline Offline

Activity: 1260
Merit: 1019


View Profile
January 11, 2017, 07:51:50 AM
 #63

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

так как вам не надо волноваться о пункте (2) - то можно сразу делать пункт (1)
любым способом. для простоты эту концепцию можно смело называть сегвитом
ибо технически это будет очень похоже
kzv
Legendary
*
Offline Offline

Activity: 1722
Merit: 1285

OpenTrade - Open Source Cryptocurrency Exchange


View Profile WWW
January 11, 2017, 08:44:53 AM
 #64



Quote
#define  COIN_NAME  bitcoin
а в текстах как будете это править?


Дак стандартно

Code:
#define  COIN_NAME  bitcoin
#define  COIN_NAME_STR  "bitcoin"

// std::string strUsage = _("Bitcoin Core Daemon") + " " + _("version") + " " + FormatFullVersion() + "\n";
std::string strUsage = _(COIN_NAME_STR " Core Daemon") + " " + _("version") + " " + FormatFullVersion() + "\n";

Так вроде.
В вижуал студии прокатывало. В gcc думаю тоже должно проканать.

OpenTrade - Open Source Cryptocurrency Exchange
amaclin
Legendary
*
Offline Offline

Activity: 1260
Merit: 1019


View Profile
January 11, 2017, 08:51:46 AM
 #65

а в текстах как будете это править?
Я имел в виду языковые ресурсы. Впрочем, делайте как вам нравится.
Я по-прежнему считаю, что вы при обсуждении "как нарисовать сову"
слишком паритесь относительно кружочков
kzv
Legendary
*
Offline Offline

Activity: 1722
Merit: 1285

OpenTrade - Open Source Cryptocurrency Exchange


View Profile WWW
January 11, 2017, 09:02:24 AM
 #66

а в текстах как будете это править?
Я имел в виду языковые ресурсы. Впрочем, делайте как вам нравится.
Я по-прежнему считаю, что вы при обсуждении "как нарисовать сову"
слишком паритесь относительно кружочков

Ну я тоже остаюсь при своем мнении: создать что-то уровня эфира не получится если делать очередной форк, а не писать все с нуля (кроме стандартных либ).

OpenTrade - Open Source Cryptocurrency Exchange
neiros (OP)
Legendary
*
Offline Offline

Activity: 3556
Merit: 1100



View Profile WWW
January 11, 2017, 10:12:02 AM
 #67


Название нужно придумать - https://www.youtube.com/watch?v=z-elPdgxWL0

Лучше несколько вариантов, что бы было из чего выбрать.

kzv
Legendary
*
Offline Offline

Activity: 1722
Merit: 1285

OpenTrade - Open Source Cryptocurrency Exchange


View Profile WWW
January 16, 2017, 01:07:10 PM
 #68

Ну что, когда запуск коина будет?

OpenTrade - Open Source Cryptocurrency Exchange
neiros (OP)
Legendary
*
Offline Offline

Activity: 3556
Merit: 1100



View Profile WWW
January 17, 2017, 06:22:48 PM
 #69

Ну что, когда запуск коина будет?

На следующей неделе наверное освобожусь и.... Grin устрою голосовалку по выбору названия коина из того множества вариантов что здесь возможно будут.
https://www.youtube.com/watch?v=PLTosCqkh70

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

kzv
Legendary
*
Offline Offline

Activity: 1722
Merit: 1285

OpenTrade - Open Source Cryptocurrency Exchange


View Profile WWW
January 17, 2017, 06:27:13 PM
 #70

Code:
git add .
git commit -m 'bag fix'
git push

какбэ и все ))

OpenTrade - Open Source Cryptocurrency Exchange
kzv
Legendary
*
Offline Offline

Activity: 1722
Merit: 1285

OpenTrade - Open Source Cryptocurrency Exchange


View Profile WWW
January 18, 2017, 08:57:26 AM
 #71


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


Я думал, что главный смысл сегвита - это увеличсение числа транзакций в блоке без увеличения размера блока...
Но я так и не понял - что это и как оно работает (((
Не понимаю, причем здесь txid ?

OpenTrade - Open Source Cryptocurrency Exchange
amaclin
Legendary
*
Offline Offline

Activity: 1260
Merit: 1019


View Profile
January 18, 2017, 09:31:44 AM
 #72

Я думал, что главный смысл сегвита - это увеличсение числа транзакций в блоке без увеличения размера блока...
Ну, у разных людей свои понятия "что главное, а что второстепенное"

Тут ситуация такая. Вообще говоря, ваше утверждение некорректное, так как сегвит увеличивает размер блока
Более того, сегвит-транзакции сами по себе "более жирные" чем их несегвит-предшественники

Другое дело, что на программистском уровне это решение не требует изменения консенсуса
То есть если вы присоединились год назад к биткойну и пользовались клиентом 0.9.х и в нем было
консенсус-условие что блоки не больше метра то вас никто не заставляет "менять вашу присягу"
и соглашаться на какие-то иные правила - для вас ничего не изменится.

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

Quote
Но я так и не понял - что это и как оно работает (((
Не понимаю, причем здесь txid ?
Прелесть сегвита в том, что он лечит одну стародавнюю проблему биткойна заключающуюся в том
что не подписав транзакцию мы не можем узнать её txid
А что если нам нужно сперва узнать txid, а уже потом когда-нибудь кто-нибудь подпишет
и отошлет эту транзакцию?
kzv
Legendary
*
Offline Offline

Activity: 1722
Merit: 1285

OpenTrade - Open Source Cryptocurrency Exchange


View Profile WWW
January 18, 2017, 09:56:18 AM
 #73

Теперь понятно. Спасибо ))
Правда я не вижу никакой проблеммы в том, чтобы подписать транзакцию. Наоборот: если позволить сети принимать неподписанные транзакции - сеть заспамят же мгновенно бесполезным мусором?

OpenTrade - Open Source Cryptocurrency Exchange
amaclin
Legendary
*
Offline Offline

Activity: 1260
Merit: 1019


View Profile
January 18, 2017, 10:34:16 AM
 #74

Теперь понятно. Спасибо ))
Правда я не вижу никакой проблеммы в том, чтобы подписать транзакцию.
Наоборот: если позволить сети принимать неподписанные транзакции - сеть заспамят же мгновенно бесполезным мусором?

Разумеется, никто не предлагает отправлять в сеть неподписанные транзакции.
Это все равно что отправлять электронную почту не указывая адреса куда отправлять - типа
отправь всем, а Вася Пупкин  сам поймет, что это я его с днем варенья поздравляю.

Неподписанные транзакции можно отправлять другим способом, например той же почтой.
По сути дела - неподписанная транзакция - это как неподписанный договор
kzv
Legendary
*
Offline Offline

Activity: 1722
Merit: 1285

OpenTrade - Open Source Cryptocurrency Exchange


View Profile WWW
January 18, 2017, 11:00:41 AM
 #75

Замутить что ли тоже форк? ))

1. За основу взять версию 0.12.1. Потому что это последняя версия в которую встроен майнинг
2. В алгоритме проверки блоков зашить время приема последнего блока. Если прошло меньше 10 минут - новый блок инвалидный при любой сложности. Это чтобы внести больше случайности в майнинг.
3. Не принимать блоки смайненные более суток назад. Чтобы свести к нулю вероятность даблспендинга атакой 51.

Как такие идеи?

OpenTrade - Open Source Cryptocurrency Exchange
amaclin
Legendary
*
Offline Offline

Activity: 1260
Merit: 1019


View Profile
January 18, 2017, 11:22:16 AM
 #76

2. В алгоритме проверки блоков зашить время приема последнего блока.
Если прошло меньше 10 минут - новый блок инвалидный при любой сложности.
Это чтобы внести больше случайности в майнинг.
Это значит что при нахождении блока надо на 10 минут выключать майнер?
Потому что если он вдруг смайнит блок через 3 минуты после предыдущего - его
все равно никто не засчитает валидным. Ну бред.

Quote
3. Не принимать блоки смайненные более суток назад. Чтобы свести к нулю вероятность даблспендинга атакой 51.
и если вы выключили комп на двое суток - то всё. вы лишились навсегда доступа в сеть
потому что для вас любой блок будет смайнен более суток назад - вы не сможете синхронизоваться от слова совсем.
kzv
Legendary
*
Offline Offline

Activity: 1722
Merit: 1285

OpenTrade - Open Source Cryptocurrency Exchange


View Profile WWW
January 18, 2017, 11:36:23 AM
 #77

2. В алгоритме проверки блоков зашить время приема последнего блока.
Если прошло меньше 10 минут - новый блок инвалидный при любой сложности.
Это чтобы внести больше случайности в майнинг.
Это значит что при нахождении блока надо на 10 минут выключать майнер?
Потому что если он вдруг смайнит блок через 3 минуты после предыдущего - его
все равно никто не засчитает валидным. Ну бред.

Если блок найден раньше - то все равно посылать его в сеть, потому что 10 минут у всех разные. Кто-то блок примет, кто-то нет. Если примет большинство - значит майнеру повезло. Меньшинство потом подстроится.

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

Ну не сутки конечно проверять, а номер блока ))
Если у меня в цепочке 1000 простых блоков, а мне пришел очень супер мега сложный блок №800, то я его отбриваю все равно.

OpenTrade - Open Source Cryptocurrency Exchange
amaclin
Legendary
*
Offline Offline

Activity: 1260
Merit: 1019


View Profile
January 18, 2017, 11:47:32 AM
 #78

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

Ну не сутки конечно проверять, а номер блока ))
Если у меня в цепочке 1000 простых блоков, а мне пришел очень
супер мега сложный блок №800, то я его отбриваю все равно.

И что делаете дальше? Ждете блок 1001, который наследуется от вашего 1000-ного?
А если он никогда не придет? Никогда от слова никогда. Хорошая валюта, чо.
kzv
Legendary
*
Offline Offline

Activity: 1722
Merit: 1285

OpenTrade - Open Source Cryptocurrency Exchange


View Profile WWW
January 18, 2017, 12:01:58 PM
 #79

Ну не сутки конечно проверять, а номер блока ))
Если у меня в цепочке 1000 простых блоков, а мне пришел очень
супер мега сложный блок №800, то я его отбриваю все равно.

И что делаете дальше? Ждете блок 1001, который наследуется от вашего 1000-ного?
А если он никогда не придет? Никогда от слова никогда. Хорошая валюта, чо.

А почему он должен не прийти?
По моему, ситуация, когда вместо длинной цепочки начинает строиться короткая - это не очень правильная ситуация. Идея же в том, чтобы все строили самую длинную цепочку.

OpenTrade - Open Source Cryptocurrency Exchange
kzv
Legendary
*
Offline Offline

Activity: 1722
Merit: 1285

OpenTrade - Open Source Cryptocurrency Exchange


View Profile WWW
January 18, 2017, 12:32:39 PM
 #80

Надо глянуть исходники - как там реализовано, но в оригинале алгоритм задумывался так:
1. Если появились несколько цепочек, то принимаем обе и майним тоже соответственно обе.
2. Как только одна цепочка обогнала другую - начинаем майнить ту которая длиннее.

Думаю, что такой алгоритм у большинства майнеров и остался.

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

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

Поэтому я и предлагаю внести элемент лотереи. Можно еще таким элементом сделать перерасчет сложности не раз в 2 недели, а раз в час например ))

OpenTrade - Open Source Cryptocurrency Exchange
Pages: « 1 2 3 [4] 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 »  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!