Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / WinForms, .Net Framework Новый топик    Ответить
 Как реализовать на C# алгоритм blockchain без использования сторонних библиотек?  [new]
anc32
Member

Откуда: Кострома
Сообщений: 119
Добрый день!
Хочу реализовать алгоритм blockchain в своём приложении (не для денежных операций). Какие стандартные объекты уже предусмотрены для этого в .NET? Если таких объектов в стандартных библиотеках нет, то какие RFC и подобные документы есть, которые описывают последнюю версию алгоритма?
Заранее благодарен за обстоятельные ответы.
14 сен 17, 17:26    [20796606]     Ответить | Цитировать Сообщить модератору
 Re: Как реализовать на C# алгоритм blockchain без использования сторонних библиотек?  [new]
Изопропил
Member

Откуда:
Сообщений: 30649
класс SHA256 имеется
14 сен 17, 18:01    [20796749]     Ответить | Цитировать Сообщить модератору
 Re: Как реализовать на C# алгоритм blockchain без использования сторонних библиотек?  [new]
Antonariy
Member

Откуда: ☭
Сообщений: 66865
советую ознакомиться: https://tjournal.ru/41306-samoe-ponyatnoe-obyasnenie-principa-raboty-blokcheyna
14 сен 17, 22:21    [20797391]     Ответить | Цитировать Сообщить модератору
 Re: Как реализовать на C# алгоритм blockchain без использования сторонних библиотек?  [new]
LR
Member

Откуда: 8P8C
Сообщений: 2193
Antonariy
советую ознакомиться: https://tjournal.ru/41306-samoe-ponyatnoe-obyasnenie-principa-raboty-blokcheyna
Спасибо за ссылку, подозревал нечто подобное, и впервые увидел ясную прямую оценку))
автор
Стоит помнить, что блокчейн — это не более чем надёжный распределённый дневничок. Никаких мировых проблем, помимо тех, которые можно решить дневничком, блокчейн нам не решит. А те проблемы, которые он решит, он решит ценой гигаватт энергии, которые сейчас тратятся на подбор «нонсов» — по-большому счёту, впустую.

P.S. Моему другу один биткоинмайнер, который несколько лет назад "вложился в тему", собрав серверную стойку с несколькими юнитами на балконе, посетовал, типа "заработок от майнинга сравнялся со счетами за электричество, но зато пока хоть на балконе зимой тепло")))
14 сен 17, 23:07    [20797445]     Ответить | Цитировать Сообщить модератору
 Re: Как реализовать на C# алгоритм blockchain без использования сторонних библиотек?  [new]
LR
Member

Откуда: 8P8C
Сообщений: 2193
anc32,
навскидку, одна из первых гугловых ссылок - Блокчейн за 200 строк кода: пример простой реализации на JavaScript - в .NET должно получиться меньше чем в 200 строк кода, имхо)
14 сен 17, 23:39    [20797487]     Ответить | Цитировать Сообщить модератору
 Re: Как реализовать на C# алгоритм blockchain без использования сторонних библиотек?  [new]
Изопропил
Member

Откуда:
Сообщений: 30649
Блокчейн к идиотизму. именуемому майнингом, имеет косвенное отношение
14 сен 17, 23:53    [20797495]     Ответить | Цитировать Сообщить модератору
 Re: Как реализовать на C# алгоритм blockchain без использования сторонних библиотек?  [new]
LR
Member

Откуда: 8P8C
Сообщений: 2193
Изопропил
Блокчейн к идиотизму. именуемому майнингом, имеет косвенное отношение

Ну х.з., использовать хеш (SHA256) для защиты информации от изменений как-то старомодно... Давно уже есть ЭЦП (RSA, CAdES-X Long, и т.д. и т.п.). Трудно представить, где еще можно использовать "алгоритм blockchain"...
15 сен 17, 01:37    [20797566]     Ответить | Цитировать Сообщить модератору
 Re: Как реализовать на C# алгоритм blockchain без использования сторонних библиотек?  [new]
Ролг Хупин
Member

Откуда: Чебаркуль
Сообщений: 1600
anc32
Добрый день!
Хочу реализовать алгоритм blockchain в своём приложении (не для денежных операций). Какие стандартные объекты уже предусмотрены для этого в .NET? Если таких объектов в стандартных библиотеках нет, то какие RFC и подобные документы есть, которые описывают последнюю версию алгоритма?
Заранее благодарен за обстоятельные ответы.


А для каких операций?
Я пытался понять прикладное значение этой фигни, можно ли в других задачах это использовать
15 сен 17, 16:01    [20799319]     Ответить | Цитировать Сообщить модератору
 Re: Как реализовать на C# алгоритм blockchain без использования сторонних библиотек?  [new]
Изопропил
Member

Откуда:
Сообщений: 30649
LR
Ну х.з., использовать хеш (SHA256) для защиты информации от изменений как-то старомодно...


расскажи об этом создателям bitcoin
15 сен 17, 16:06    [20799334]     Ответить | Цитировать Сообщить модератору
 Re: Как реализовать на C# алгоритм blockchain без использования сторонних библиотек?  [new]
Ролг Хупин
Member

Откуда: Чебаркуль
Сообщений: 1600
Изопропил
LR
Ну х.з., использовать хеш (SHA256) для защиты информации от изменений как-то старомодно...


расскажи об этом создателям bitcoin


да что там рассказывать этим проходимцам
15 сен 17, 16:08    [20799348]     Ответить | Цитировать Сообщить модератору
 Re: Как реализовать на C# алгоритм blockchain без использования сторонних библиотек?  [new]
Roman Mejtes
Member

Откуда: г. Пермь
Сообщений: 2414
Ролг Хупин,

Ведение аудита
Всяких, разных журналов
15 сен 17, 16:50    [20799528]     Ответить | Цитировать Сообщить модератору
 Re: Как реализовать на C# алгоритм blockchain без использования сторонних библиотек?  [new]
Siemargl
Member

Откуда: 010100
Сообщений: 5307
Изопропил
Блокчейн к идиотизму. именуемому майнингом, имеет косвенное отношение
как колеса к движку машины
15 сен 17, 19:35    [20799860]     Ответить | Цитировать Сообщить модератору
 Re: Как реализовать на C# алгоритм blockchain без использования сторонних библиотек?  [new]
Изопропил
Member

Откуда:
Сообщений: 30649
Siemargl
Изопропил
Блокчейн к идиотизму. именуемому майнингом, имеет косвенное отношение
как колеса к движку машины

и тебе мозг повредили?
15 сен 17, 19:53    [20799874]     Ответить | Цитировать Сообщить модератору
 Re: Как реализовать на C# алгоритм blockchain без использования сторонних библиотек?  [new]
Siemargl
Member

Откуда: 010100
Сообщений: 5307
Изопропил
Siemargl
пропущено...
как колеса к движку машины

и тебе мозг повредили?
Нет, он из чугуния.

Поясняю для тех, у кого из более мягких металлов - без ажиотажа биткойнов, про блокчейн никто бы даже не услышал.
15 сен 17, 20:06    [20799898]     Ответить | Цитировать Сообщить модератору
 Re: Как реализовать на C# алгоритм blockchain без использования сторонних библиотек?  [new]
Dima T
Member

Откуда:
Сообщений: 11465
Для тех кто в танке, утрированно: майнинг это не что иное как добавить что-то и получить хэш численно меньше минимально требуемого, например при 32 битах максимум 0xFFFFFFFF, объявляем минимально необходимый 0x00FFFFFF, кто нашел меньше - тому бонус. Собственно за этот бонус майнеры жгут электричество переборами.

Тут есть интересный момент: математики доказали сложность подделки хэша, но никто не доказывал что невозможно уменьшить числовое значение хэша, т.е. нет гарантии что какой-то математик придумает алгоритм как минимизировать численное значение хэша без перебора.
15 сен 17, 20:37    [20799931]     Ответить | Цитировать Сообщить модератору
 Re: Как реализовать на C# алгоритм blockchain без использования сторонних библиотек?  [new]
Dima T
Member

Откуда:
Сообщений: 11465
Блокчейн, утрированно, это просто общеоткрытый лог каких-то операций с гарантией что он правильный. В отличии от централизованного ведения лога и гарантий только от того кто его ведет, тут децентрализованный лог, т.е. без ведущего, но с гарантией что он правильный.

PS Гарантию от подделки дают майнеры своими хэшами, т.к. чтобы подделать лог надо хэши пересчитать.
15 сен 17, 20:51    [20799954]     Ответить | Цитировать Сообщить модератору
 Re: Как реализовать на C# алгоритм blockchain без использования сторонних библиотек?  [new]
makhaon
Member

Откуда: A galaxy far far away
Сообщений: 2091
Несколько интересных моментов
1. Цифровые подписи перестали котироваться?
2. Где гарантия, что в дневник изначально попадут верные данные?
15 сен 17, 21:30    [20800010]     Ответить | Цитировать Сообщить модератору
 Re: Как реализовать на C# алгоритм blockchain без использования сторонних библиотек?  [new]
Antonariy
Member

Откуда: ☭
Сообщений: 66865
makhaon
Несколько интересных моментов
1. Цифровые подписи перестали котироваться?
2. Где гарантия, что в дневник изначально попадут верные данные?
совершенно не интересно.
как не имеющее отношения к блокчейну.
16 сен 17, 00:39    [20800203]     Ответить | Цитировать Сообщить модератору
 Re: Как реализовать на C# алгоритм blockchain без использования сторонних библиотек?  [new]
hVostt
Member

Откуда:
Сообщений: 11785
makhaon
1. Цифровые подписи перестали котироваться?


Без удостоверяющего центра — не котируются. Удостоверяющий центр = централизация.


makhaon
2. Где гарантия, что в дневник изначально попадут верные данные?


Это вопрос из разряда: если ввести в машину неправильные данные, она сможет дать правильный ответ?
16 сен 17, 01:24    [20800218]     Ответить | Цитировать Сообщить модератору
 Re: Как реализовать на C# алгоритм blockchain без использования сторонних библиотек?  [new]
Ролг Хупин
Member

Откуда: Чебаркуль
Сообщений: 1600
Dima T
Для тех кто в танке, утрированно: майнинг это не что иное как добавить что-то и получить хэш численно меньше минимально требуемого, например при 32 битах максимум 0xFFFFFFFF, объявляем минимально необходимый 0x00FFFFFF, кто нашел меньше - тому бонус. Собственно за этот бонус майнеры жгут электричество переборами.

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


Но этот Гриша Перельман ничего не получит, а жгуны электричества по кр. мере надеются на кость, как голодные собаки
16 сен 17, 14:30    [20800650]     Ответить | Цитировать Сообщить модератору
 Re: Как реализовать на C# алгоритм blockchain без использования сторонних библиотек?  [new]
makhaon
Member

Откуда: A galaxy far far away
Сообщений: 2091
hVostt
makhaon
1. Цифровые подписи перестали котироваться?


Без удостоверяющего центра — не котируются. Удостоверяющий центр = централизация.

Боремся с централизацией - ок.

makhaon
2. Где гарантия, что в дневник изначально попадут верные данные?


Это вопрос из разряда: если ввести в машину неправильные данные, она сможет дать правильный ответ?


Ответ всё равно будет какой-то получен. Как сможет блокчейн проверить правильность данных? Злоумышленнык измерил длину некого предмета и записал в базу 20 см, в реальности же предмет длиной 5 см.
17 сен 17, 17:41    [20801663]     Ответить | Цитировать Сообщить модератору
 Re: Как реализовать на C# алгоритм blockchain без использования сторонних библиотек?  [new]
ЕвгенийВ
Member

Откуда: Москва
Сообщений: 4377
makhaon

Ответ всё равно будет какой-то получен. Как сможет блокчейн проверить правильность данных? Злоумышленнык измерил длину некого предмета и записал в базу 20 см, в реальности же предмет длиной 5 см.

Он знает, что это ты, по цепочке может определить, что у тебя всего 5 см. а не 20, как ты говоришь. И перевести ты можешь кому то только <=5.
22 сен 17, 12:11    [20815281]     Ответить | Цитировать Сообщить модератору
 Re: Как реализовать на C# алгоритм blockchain без использования сторонних библиотек?  [new]
ЕвгенийВ
Member

Откуда: Москва
Сообщений: 4377
Dima T
Для тех кто в танке, утрированно: майнинг это не что иное как добавить что-то и получить хэш численно меньше минимально требуемого, например при 32 битах максимум 0xFFFFFFFF, объявляем минимально необходимый 0x00FFFFFF, кто нашел меньше - тому бонус. Собственно за этот бонус майнеры жгут электричество переборами.


Тратить драгоценные ресурсы на такую мутоту, когда в Африке голодают дети?

К сообщению приложен файл. Размер - 118Kb
22 сен 17, 12:15    [20815311]     Ответить | Цитировать Сообщить модератору
 Re: Как реализовать на C# алгоритм blockchain без использования сторонних библиотек?  [new]
Dima T
Member

Откуда:
Сообщений: 11465
ЕвгенийВ
makhaon
Ответ всё равно будет какой-то получен. Как сможет блокчейн проверить правильность данных? Злоумышленнык измерил длину некого предмета и записал в базу 20 см, в реальности же предмет длиной 5 см.

Он знает, что это ты, по цепочке может определить, что у тебя всего 5 см. а не 20, как ты говоришь. И перевести ты можешь кому то только <=5.

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

При применении для учета чего-то реального еще одна большая проблема есть из-за открытости блокчейна: любой кто свяжет анонимный кошелек с реальным владельцем тут же получит всю инфу по владельцу, и это не обязательно гос.органы, так же любые проходимцы и жулики. Ну и третья проблема: потеря кошелька (подписи) = потеря всего что на тебя записано.
22 сен 17, 12:27    [20815369]     Ответить | Цитировать Сообщить модератору
 Re: Как реализовать на C# алгоритм blockchain без использования сторонних библиотек?  [new]
Dima T
Member

Откуда:
Сообщений: 11465
ЕвгенийВ
Тратить драгоценные ресурсы на такую мутоту, когда в Африке голодают дети?

Еще теплом атмосферу загрязняют, глобальное потепление ускоряют ...

Никакой заботы о будущем человечества
22 сен 17, 12:34    [20815409]     Ответить | Цитировать Сообщить модератору
Все форумы / WinForms, .Net Framework Ответить