Pull to refresh

Comments 24

Вопрос на засыпку — в медицине blockchain применима для передачи мед, а не финансовых данных?

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

Хм… Хотелось бы видеть это на примере, как это может выглядить в реальности. Если сюда слишком длинно или сложно, можно в приват.
У меня есть несколько мобильных медицинских приложений («Донор» для доноров крови и «Диабет» для инсулинозависимых диабетиков) и тоже интересует обмен данными. Wayfarer15 какие у вас есть в голове сценарии для обмена данными?
FHIR наше всё. Но хотелось бы видеть и другие технологии, в частности вот этот блокчейн и понять, насколько он (не)подходит и в каких случаях.
Блокчейн в основе своей — это распределённый таймштамп-сервер, его предназначение в установлении времени происхождения события. Транзакции не имеют прямого отношения к блокчейну, это уже пейлоад. Можно ведь сделать тот же биткоин без блокчейна, просто все хранят у себя балансы всех аккаунтов и корректируют их при транзакциях. Но в этом случае возникает проблема доверия к этой системе и проблема двойного расхода средств, нельзя достоверно определить, какая из двух транзакций с одного и того же баланса подлинная, а какая нет. Блокчейн закрепляет порядок операций во времени и гарантирует защиту от манипуляций с этим порядком, поэтому ему и доверяют. Но в целом там можно хранить любые данные, необязательно связанные друг с другом как транзакции, главное, чтобы туда включался таймштамп и чтобы внесение таких данных было защищено ЭЦП (иначе теряется аутентичность данных и весь смысл).

Например, при посещении врача пациент и врач шифруют и подписывают протокол приёма своими ключами, после чего отсылают в блокчейн. Данные сохраняются в блок с текущим временем и датой, после чего могут быть в любое время извлечены, проверены на подлинность и, при наличии ключа шифрования, расшифрованы. Ключ может быть сессионный (одноразовый) и шифроваться в двух экземплярах, ключом пациента и ключом врача (или медучреждения) и класться там же, рядом с данными. Так пациент и медучреждение, и только они, всегда смогут получить доступ к данным. Уже нельзя будет потерять карточку или перепутать порядок посещений или течение болезни (стало ли лучше или хуже после лечения).

Проблема лишь в генерации блоков, кто и с какой мотивацией будет это делать? В финансовых блокчейнах мотивация идёт от вознаграждения за генерацию, а тут… ну не знаю, может, генерировать коды скидок на лекарства. Создавший блок включает в него свой публичный ключ, а в аптеке можно потратить нагенерированное — аптека проверяет баланс предъявленного публичного ключа (число включений публичных ключей в блоки, минус число использований), даёт на подпись текущий таймштамп, после чего отсылает подписанный таймштамп в блокчейн, и он считается как расходная операция. В целом, опять биткоин получился, только без транзакций между участниками, есть только появление баллов и уничтожение.

Похоже нас теперь двое на Хабре. Генерация блоков в биткойне нужна лишь для создания эффекта ограниченности ресурса. В остальных случаях в такой генерации нет необходимости – блоки закрываются по времени.

Хм, кого это — нас? Генерация нужна не только и не столько для ограниченности, а для установления очерёдности транзакций, чтобы можно было гарантировать, что одни транзакции произошли до других, и таким образом предотвратить двойной расход баланса. Ну и конечно же, без генерации нельзя гарантировать общую целостность блокчейна, потому как проверка правильности значения хэша с учётом сложности на момент генерации (а она выводится по таймштампам, количеству блоков за период времени и предыдущей сложности) позволяет доказать, что для генерации были потрачены определённые мощности в хэшах/сек, и что блоки не были созданы злоумышленником в произвольном количестве за малое время с нужными ему транзакциями. Есть же ещё proof-of-stake, не требующий майнинга, но к нему есть вопросы.

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

Рассмотрим подробней юзкейс:
— Добиться фичи «пациент и медучреждение, и только они, всегда смогут получить доступ к данным» можно просто зашифровав данные ключами пациента и больницы. Блокчейн не нужен.
— Добиться фичи «Уже нельзя будет потерять карточку» можно репликацией — зашифрованную копию данных скопировать на дропбокс, и еще допустим на 10 разных серверов.
— Добиться фичи «нельзя перепутать порядок посещений или течение болезни» можно вкладывая в каждую последующую записть хеш предыдущей. Тогда все записи будут выстроены в одну цепочку и будет ясно что было в начале, а что потом.

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


Ну это вы фактически и описали блокчейн, только «индивидуальный». И если больных тысячи-миллионы, вести тысячи-миллионы таких «индивидуальных блокчейнов» — довольно хлопотно. В этом случае логично было бы их все в единую систему (общий блокчейн) объединить, для оптимизации поддержания и использования всего хозяйства (но при этом без опасной централизации, типа украли-переписали-подтасовали очередные личные данные миллионов пользователей очередного централизованного сервиса).
Почему логично будет их объединить? Что подразумевается под оптимизацией поддержания и использования?
Проблема единой системы в том что там каждый хранит данные каждого. Что более хлопотно?
1) для меня хранить свои данные, плюс для больницы тоже хранить данные своих больных.
2) или для меня хранить данные всех тысяч-миллионов других больных? Которых там наберется наверное на многие терабайты.
Зачем мне это нужно — хранить их данные? В Биткойне понятно зачем хранить данные всех подряд — только так я смогу убедиться что поступившие мне биткойны не были раньше потрачены и что система в целом работает по заранее установленным правилам. А тут нет такой причины. Нечего верифицировать.
ну есть разные конфигурации с той или они степенью ограничения централизации, не обязательно всем всё хранить.
Например, в Биткойне есть полные ноды, а есть на порядки больше «легких» клиентов, которые сами не хранят, но используют только заголовки из блокчейна.

Думаю стоит рассмотреть 2 менее радикальные альтернативы:

1. Бабука с флешкой (которую она потеряла) + её врач с локальной БД, в которой он пох_рил записи бабушки. Всего 2 рядовых события — и всё, сбой системы.
2. Единый блокчейн больных, который полный — в каждой поликлинике хранится (т.е. бабушка может в любую поликлинику страны пойти без проблем «ой, у нас вас нет»). И бабушка с приватным ключом (восстанавливаемым), чтобы доступ к своим записям предоставлять только «кому следует».
В таком случае получается что блокчейн дает:
1) Надежность, так как заставляет больницы хранить все данные друг друга
2) Взаимодействие, так как заставляет больницы хранить данные в едином формате и обмениваться ими
В этом случае блокчейн выступает как бы в роли единого формата хранения и обмена данными, но при этом отсутствует функция подтверждения верности транзакций. Просто какое-то общее хранилище, куда каждый кидает то что хочет, но нельзя удалять или изменять старые данные.
Возможно это действительно имеет смысл, потому что каждая отдельная больница не факт что будет заморачиваться с тем чтобы поднимать надежную айти систему, с копиями-бэкапами, и обменом данными с другими больницами. А тут всё как-бы идет в одном пакете.
Все равно остается много вопросов как такая система могла бы работать на практике. Скорей всего такой блокчейн придется делать permissioned, то есть с единым центром, который будет например выдавать сертификаты больницы только настоящим больницам а не кому попало.
Странно, можно подумать мед область заканчивается на пациенте и его болячках. Для примера, (и я совершенно не уверен, что блокчейн для этого подходит), аудит что пациент получил только одно наркосодержащее или сильнодействующее лекарство, а не обходил все аптеки подряд с одним рецептом. Будет ли блокчейн хорошим решением в таком случае?
Я не слишком хорошо разбираюсь в области медицинских айти систем, поэтому пытался работать с самым простым и знакомым сценарием для начала.

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

Есть интересная, зарождающаяся в криптографии область zero knowledge proof. Она потенциально может позволить получать аудиторам ответы на их вопросы не видя самих данных. То есть данные пациента будут оставаться в зашифрованном виде, но если запустить особую программу и дать ей на вход эти данные, то на выходе она скажет либо «да пациент покупал наркосадержащие много раз» или «нет пациент покупал только один или ноль раз».
А ничего что медицинские данные представляют собой врачебную тайну? Даже когда на работе проводят медосмотр за счёт работодателя, детальную информацию о результатах выдают сотруднику в запечатанном конверте, а работодателю сообщают лишь булевское значение — годен к работе или не годен.
Статья интересная… вопросов нет. Но название должности — вице-президент по блокчейн — просто смехотворно. Если это не шутка и не фигура речи, и должность на самом деле так называется, то это пиар-ошибка. Невольно вспоминаются хохмы вроде: уборщица — менеджер по клинингу, грузчик — оператор по перемещению продукции, курьер — топ-топ менеджер.
Вопрос специалистам. Если технология блокчейн строится на распределенной среди участников базе данных транзакций, то следовательно каждый ее у себя хранит. По моей информации база транзакций Bitcoin это примерно где то 2 ГБ и она постоянно растет. Получается две проблемы: 1. Вхождение нового участника — надо скачать все на свою сторону. 2. Хранить этот объем у себя. Таким образом, серьезные транзакционные системы уже сложно реализовать например на мобильных платформах, а также потребуются затраты по хранению и трафику на подключение нового участника. Что думаете?
А можно ли с использованием блокчейнов реализовать подобие децентрализованной соц. сети?

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

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

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

Так-же преимущество децентрализации в том что если завтра владелец основного домена steemit.com решит закрыть проект, или решит вставлять туда свою рекламу, то пользователи могут перейти на другой домен, не теряя свои посты, лайки и коменты. Либо могут вообще у себя локально систему запускать и ни от кого не зависить.
Sign up to leave a comment.