Pull to refresh

Comments 25

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

А что именно хранить там — данные о переводах, зашифрованную персональную информацию или какие документы с ЭЦП — будет решать уже сам консорциум именно в организационном порядке.
Воо, спасибо, теперь кажется понимаю, вопрос в том, что бы хранить все в одном месте и защитить от подделки и потери данных. А не возникнет проблемы при шифровании, что банк только сам может посмотреть информацию о своих транзакциях? Потому что если все могут у всех посмотреть то утечка инфы может быть. Если каждый сам у себя только, то как то особо смысла лишается, ибо остальные будут только вписывать этот блок к себе, а не знать, что там внутри.
Данные могут быть просто подписаны приватным ключом одного из банков, что позволит гарантировать их подлинность и позволит проверить её всем, у кого есть публичный ключ. А могут быть и зашифрованы, тогда доступ к ним будет иметь только тот, у кого будет ключ. В таком случае блокчейн также гарантирует подлинность данных и защищает их от подмены другими, иначе нарушится целостность цепочки. Но сама цепочка по-прежнему обязательно в полном объеме хранится у каждого участника сети.
Ни о каком централизованном хранении речи не идет.
  1. Формально все-таки не "все данные в одном месте", а "у каждого банка своя копия всех данных, но гарантированно признаваемая большинством участников сети".
  2. В записи может быть только "банк А перевел банку Б $99.99 по транзакции №12456483483848348384". При этом детали транзакции знают только эти два банка, но зато этой информации достаточно, чтобы все остальные банки смогли посчитать баланс друг друга и выяснить, кто кому сколько по факту должен по окончании банковского дня.
  3. Сейчас вот эта расшивка — "кто из банков кому сколько должен" — идет через центробанки, которые могут отбирать лицензии, выкатывать штрафы, выставлять неудобные требования, ругаться друг с другом и вот это все. Децентрализованная система позволит выключить центробанки из схемы взаиморасчетов, если перейти на универсальные ценности типа золота.
А если один из банков захочет потратить один и тот же триллиард долларов несколько раз используя подлинный приватный ключ причем первый раз пошлет инфу только половине банков, а второй раз — другой половине? Как остальные банки договорятся какая из транзакций подлинная? ;-)
Очевидно, что транзакции такого рода должны быть видны всем без исключения участникам сети, как это и реализовано в блокчейне биткоина.
Размещение в блоках каких-либо шифрованных данных просто предоставляет техническую возможность сохранять в истории различную приватную информацию и при необходимости подтвердить, что она существовала к определенному моменту времени. Как именно это можно применить на практике — не знаю, я не юрист и не экономист. Но, например, можно разместить там шифрованное завещание на передачу денег кому-то из наследников, а приватные ключи будут вскрыты банком только после смерти вкладчика.
Биткоин не гарантирует что все транзакции видны всем и может работать в таких условиях.
В банковской системе узлы тоже должны будут принимать волевое решение о включении или невключении очередной записи в цепочку. Но в конечном счёте блоки будут синхронизированы на всех узлах.
К тому же никто не мешает банкам в консорциуме юридически ввести доверительные отношения и тем самым каким-либо образом упростить протокол для себя. Особенно это актуально, если количество узлов будет невелико. К тому же вряд ли при такой схеме будет применяться майнинг с подбором хешей с переменной сложностью, наверняка можно придумать что-то более подходящее.
Гарантирует — транзакция включенная в блок видна всем полноценным участникам сети. А еще не включенная — так ее де-факто еще и не существует даже: до включения в один из блоков это лишь предварительное "заявление о намерениях".
Так 1я половинка (кому послали) тут же пошлет эту транзакцию 2й половине банков не спрашивая об этом мнения исходного отправителя. И когда будет попытка отправить 2й раз — любой контрагент ответит: иди нафиг, это уже потрачено.
Это базовый принцип блокчейна.
Как просто :-) А откуда он знает что уже потрачено если ни первая ни вторая транзакция не включена в блок или обе транзакции включены в два разных блока (это возможно)? И что если несколько банков договорятся что можно немножко подшаманить в угоду тому банку и разрешить тратить ему его деньги более чем несколько раз? Я, собственно, к чему это все — транзакции в битке подтверждаются не нодами сети, а большинством майнеров. И если нет майнеров, то и блокчеин построить сложновато. А если есть майнеры для обеспечения безопасности, то внезапно получается что быть майнером дорого, и вся эта затея тоже становится существенно дороже чем все предполагают.
А если все ноды являются майнерами? В межбанковском блокчейене вероятно так и будет. Майнером в таком блокчейне быть относительно дешево, так как количество участников ограничено. Хотя все равно придётся следить, чтобы мощность участников была приблизительно равномерно распределена...

По-моему вы исходите из того, что банки будут пытаться систематически сломать систему. Я думаю что блокчейн будет в целом выгоден для участников и целенаправлено ломать его никто не будет. Все что нужно — защититься от случайных сбоев и экстремальных ситуаций типа "я же все равно банкрот, помирать так с музыкой!". От таких вещей блокчейн вполне способен защитить.
Если ломать не будут, то гораздо проще сделать обычную БД с репликацией, зачем блокчейн?
Сделать где? Кто из 30 банков будет разрабатывать эту БД и где она будет физически хоститься? Если требуется некая 31-я организация, то чем она принципиально отчитается от предыдущих 30?

Я может быть отстал от жизни в сфере распределённых БД, но, имхо все что было до блокчейна требовало "golden source", то есть некой штуки/БД/сервера, которая разрешает конфликты и говорит всем остальным "как правильно". Штука может кочевать с сервера на сервер, но в каждый момент времени все знают "кто главный". Если штука всегда находится в одном из банков, то открываются возможности для манипуляции (причём пока "штука" у тебя не надо ни с кем вступать в сговор!).

Прелесть блокчейна именно в том что "штуки" не требуется! Транзакции любой сложности валидируются простым большинством голосов (особенно если это какой-нибудь Etherium с его Тюринг-полным языком для операций). Никто из участников не может проснуться с бодуна и сломать систему (случайно или намерено). Даже если подделать 1-2-5 транзакций, подделка все равно быстро обнаружится. Сговор все ещё возможен, но он должен включать большинство участников и риск для заговорщиков слишком велик (ну кроме проснувшегося с бодуна инициатора, ему пофиг).
Ну я думаю какой-нибудь byzantine paxos с аутентификацией запросов прекрасно справится с задачей репликации транзакций на N баз данных. Гораздо лучше и дешевле чем блокчейн, который и есть та самая «штука». Впрочем, если ту БД назвать «блокчейном» то наверное можно бабло освоить выделенные на новые технологии.
Он знает об этом получив 1ю транзакцию и проверив ее (что она действительно подписана закрытом ключом банка владевшим этими деньгами и эти деньги раньше еще не были потрачены). После чего он рассылает ее всем другим активным нодам в сети с которыми у него на данный момент есть связь — по p2p схеме (на случай если они еще не получили ее от кого-то другого).

После этого повторную подобную транзакцию(например те же деньги но отправленные другому получателю) ни этот банк ни любой другой получивший ее уже не будет принимать и ретранслировать — бракуя ее еще в момент приема. Для этого не важна включена она уже в блок или еще нет — свое подвтерждение и согласие перевести деньги отправитель дал уже в момент отправки кода подписывал ее своим закрытым криптографическим ключом. Теоретически возможна ситуация если пытающийся "жульничать" модифицирует свое ПО так оно может разослать 2 разные транзакции тратящие одни деньги ОДНОВРЕМЕННО(мгновенно — без задержек), причем 1ю послать только одной группе контрагентов, а 2ю только другой группе (не пересекающейся с 1й). Тогда существует вероятность что какая-то часть участников сети получит 2ю еще до момента когда получившие 1ю с ними обменяются — тут счет идет на десятки-сотни миллисекунд (задержка передачи пакета данных порядка 1 кб по сети), но в общем такая ситуация возможна.

Для этого дальше собственно и нужно еще подтверждение в блоке, прежде чем транзакция считается окончательной — в случае возникновения подобных расхождений правильной из этих 2х будет считаться та, что 1й будет включена в блок. После этого 2ю все получившие этот блок выкинут из кэша и уже никогда принимать не будут т.к. с точки зрения всех участников этих денег у отправителя уже просто нет — они уже принадлежат получателю и только он имеет право их тратить.

Майниг в каком-то виде естественно должен быть, без этого блокчейн не может полноценно работать. Но почти точно это будет не классический майнинг с перебором триллионов криптографических хэшей и сжиганием мегаватт энергии на специализированном железе, а одна из разновидностей PoS майнинга не требующего существенных материальных затрат. Скорее всего DPoS или один из аналогичных методов. Ну а майнерами будут все полноценные участники допущенные в сеть — т.е. все (каждый) банк согласившийся участвовать и признавать такие расчеты.
Я думаю что они хотят от него децентрализованную систему межбанковских расчетов без корр. счетов и кредитных лимитов по принципу «каждый с каждым». Может сильно упростить бухгалтерию и перевод денег/ценных бумаг между крупными банками и, потенциально, откроет прямой доступ к транзакциям для более мелких финансовых организаций. Конечным клиентам доступ к блокчейну вряд ли дадут.
Возьмём самый, самый простой вариант: предположим у нас есть консорциум из 30 банков, которые хотят обмениваться неким жетоном (token). Изначально, скажем, доступно 30 миллионов этих жетонов, и каждый банк, допустим, получает по одному миллиону. Возьмём, опять же ради радикальной простоты, метод использования жетона не связанный с другими блокчейнами: например жетонами предполагается расплачиваться за информацию о клиентах (кредитоспособность, история и т.п.).

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

В варианте блокчейн, каждый банк будеть гонять одну ноду — что есть очень дешево — и все будут контролировать все транзакции. Это не будет революцией с точки зрения пользы, но сокращение стоимости будет существенное. А если мы учтём что современный блокчейн поддерживает Smart Contracts, то можно смело ожидатьс еще и значительное сокращение расходов на legal department — программисты несравненно дешевле адвокатов и судебных тяжб.

Напоминаю, это простейший из возможных примеров.

Если есть вопросы или уточнения — пожалуйста спрашивайте, буду рад ответить.
Ну то есть вопрос не в блокчейне, вопрос в том, что бы консорциум банков договорился работать под одной системой и по одним правилам и чтоб эта система и эти правила были чуть лучше и проще текущих. Тогда мне не понятно, почему блокчейн?
А сервера и пр, у этих 30 банков куда денутся? так же нужны будут и вероятно так же на аутсорсе.
Далее вопрос именно по поводу блокчейна, про 51% и все такое, что они будут делать в спорной ситуации в духе 17 банков подтверждают транзакцию и внесли в свою цепь, а 13 банков не подтверждают и не внесли? Да и вообще, будет ли у них одна на всех цепь или каждый банк будет, крутить что то свое?
Просто криптовалюты мне понятны, тут огромное число узлов, которые могут контролировать корректность и верность исполнения транзакций + хранят транзакции за всю историю валюты своей. А вот когда узлов всего 30…

Простите если глупые вопросы. Просто понять интересно. Может есть какая нибудь более развернутая статья для чайников на тему банков и блокчейна?
Есть. И все эти статьи исходят из предположений что блокчейн — это такая магическая распределенная БД куда можно забесплатно положить неограниченное количество любых записей и которая всегда обеспечивает идеальную синхронизацию этих данных между всеми нодами сети. Почему-то мало кто осиливает понять как это работает на самом деле. Вроде все просто, но у огромного количества организаций с этим какие-то непонятные проблемы.
Что вы, что вы, вопросы совсем не глупые. По порядку:

что бы консорциум банков договорился работать под одной системой и по одним правилам и чтоб эта система и эти правила были чуть лучше и проще текущих. Тогда мне не понятно, почему блокчейн? А сервера и пр, у этих 30 банков куда денутся?

Если эта система — всемирный стандарт разработанный на деньги краудсорса (Ethereum), и тестируемый сотнями тысяч пользователей каждую минуту, если есть программисты уже знакомые с технологией, банкам очень и очень просто договориться ей пользоваться. Настолько просто что и сомнений-то особо не останется (консорциум R3, хотя они использовали фирму Eris написавшую абстрактный слой поверх, видимо деньги есть лишние, флаг им в руки).

По сложности развёртки и поддержки нода Ethereum похожа на, скажем, ftp сервер. Буквально один компьютер с единственным скриптом на нём. Так как речь о банках с высокими требованиями к производительности, ок, это будет супер-пупер сервер с восьмю топовыми графическими картами и сорока SSD дисками в RAID (логично предположить что консорциум будет требовать какую-то минимальную производительность от каждой ноды, скажем 100 MH/s). Всё равно, это буквально самое простое оборудование, и поддержка простая до смешного. Плюс вся система в принципе безотказна — если нода целиком сгорела — нет проблем, запустили новую, скачали блокчейн у пиров и понеслись, а пока что переключились на лёгкий клиент висящий где-нибудь на EC2.

Сравните это с типичной инфраструктурой банков. Не знаю знакомы ли вы… я знаком :) Очень дорого и очень сложно.

про 51% и все такое, что они будут делать в спорной ситуации в духе 17 банков подтверждают транзакцию и внесли в свою цепь, а 13 банков не подтверждают и не внесли?

А вот как раз в случае консорциума это вообще не вопрос, такая атака в принципе не релевантна. Каждый из участников мгновенно заметит ЛЮБУЮ попытку нарушить протокол (например пресловутый double-spending), и будет по именам знать всех участников, чьи ноды это допустили (или как минимум инициатора и пира который это передал, следовательно допустил), то есть это как воровство под видеокамерой. Скорее всего такая попытка просто не будет совершена, а если и произойдёт то будет решаться в судебном порядке (или проще говоря все сети).

Да и вообще, будет ли у них одна на всех цепь или каждый банк будет, крутить что то свое?

Люди которые изобретали TCP/IP не могли себе представить чем всё закончится. Поживём — увидим.

Может есть какая нибудь более развернутая статья для чайников на тему банков и блокчейна?

Гугл в помощь — Vitalik Buterin (основатель Ethereum) как раз на неделе написал развёрнутую статью на английском.
Sign up to leave a comment.

Articles