Tuesday, May 2, 2017

Инвентаризация blockchain

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

Существует идея о том что используя blockchain возможно получить базу данных не подверженную проблеме административного или инсайдерского изменения постфактум. Как пример мы можем построить такую систему инвентаризации в распределенной команде:
  • существует несколько клиентов (отделов/офисов) и каждый из таких клиентов может с нужной ему периодичностью создавать записи в своей локальной базе;
  • к каждой записи добавляется hash/электронная подпись/или какая-то работа которая позволяет убедиться что не возможно генерировать такие записи чаще чем с какой-то периодичностью и каждая следующая запись зависит от предыдущей что не позволит вставить новую запись в середину списка записей;
  • с определенной периодичностью эти записи синхронизируются в рамках организации, и ветки записей с каждого клиента и подписывается общей подписью/hash. Далее эта подпись распространяется среди филиалов, а также распространяется в открытых источниках, как комментарии в bitcoin или публикуются на публичных сайтах. Так как публикуется только слепок подписи/hash открытия конфиденциальных данных не происходит.

Возможные недостатки данной технологии:
  • предполагается что работа/hash прикрепленный к записи не позволит быстро пересчитать все записи в периодах между синхронизациями чтобы в последний момент заменить поток операций, но в реальной реализации поток операций нестабилен и может на порядок отличаться в разных периодах, а значит не обязательно иметь на порядок более быстрое оборудование чтобы заменить в момент получения десятой операции первую операцию в списке и пересчитать без внешних эффектов для стороннего наблюдателя. Возможен пересчет в те периоды когда таких операций меньше, например когда мы имеем среднее количество операций в периоде;
  • с большой вероятностью у филиалов будут маломощное оборудование - программное обеспечение будет установлено на тонких клиентов или мобильные устройства, что опять таки на порядок уменьшит затраты у потенциального злоумышленника ему нужно просто иметь оборудование которое способно работать на N-процентов быстрее основного чтобы на эти же N-процентов добавить больше операций или заменить;
  • далее идут уже более возможности связанные с подменной инфраструктуры, если злоумышленник может вклиниться в каналы связи и имеет оборудование способное дублировать основную инфраструктуру, он может дублировать все операции и перед оправкой в публичные источники передавать данные основанные на его перерасчете и после передачи в публичные каналы заменять состояния на внутренней инфраструктуре на его пересчитанные данные, и чем мощнее у него инфраструктура тем больше возможностей в такой подмене, позднее он может начинать свои транзакции перед временем синхронизации во внешние каналы связи, и задача заменяется на немного другую замедлить основную инфраструктуру и создавать транзакции максимально похожие на оригинальные.

No comments: