Pull to refresh
46
0
Boris Nagaev @starius

User

Send message

Хосты могут выбрать максимальный срок контракта. Дело в том что до завершения контракта средства, полученные хостом и его депозит, заблокированы. Обе стороны могут решить перестать продлевать контракт. У хоста даже есть специальная команда, которая переводит его в режим "доработки" уже сделанных контрактов без возможности открывать новые. Это нужно чтобы отключить хост без потери денег.
Размер депозита также выбирается хостом на усмотрение хозяина.

  1. $10 за терабайт в месяц — дорого? Хранить данные на внешних дисках не так надёжно (так как все они окажутся, скорее всего, в одном городе) и не так безопасно (так как они могут попасть в руки полиции) и по цене будет не оптимально, если данные не занимают весь диск целиком. По сути Sia — это продолжение вашего жёсткого диска, размазанное по разным странам и скрытое от посторонних глаз.


  2. В торренте множество сидов раздают один и тот же файл, а в Sia файлы всё-таки конкретного пользователя. Хотя идеи реализовать шаринг есть — тогда это будет "торрент" с оплатой за скачивание.

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

Чтобы их продать — нужно сначала чтобы их у вас купили, кажется, вы это упускаете.

Желающих купить хватает. На Poloniex прямо сейчас открыто ордеров на покупку сиакоинов на 1966 биткоинов.


Во-вторых: ваш друг не зарабатывает «прямо сейчас, 300$ в день, реально работает», а играет на спекуляциях с высокими рисками.

Если вы про меня, то оба варианта мимо. Моя цель — получить анонимную систему для хранения файлов, а не подзаработать.

А VPN работает?

Скорость действительно не критична. Хосты не обмениваются данными, кроме того из-за использования кодов Рида — Соломона все 40 кусков файла, попадающие на 40 серверов, разные, а не копии одной и той же информации.

Данные шифруются перед отправкой в хранилище или их нужно шифровать самостоятельно?

Шифруются локально перед отправкой.


все еще не понимаю, как происходит выбор, с каким хостом будет заключен контракт?

Клиент собирает список хостов и вычисляет для них рейтинг. Что влияет на рейтинг, описано в статье про рейтинг. Если интересно посмотреть на код, то ниже я привожу пару ссылок.


Хосты для контрактов выбираются в функции SelectRandom, которая отбирает хост с вероятностью, пропорциональной рейтингу, а рейтинг вычисляет функция calculateHostWeight, которая учитывает размер депозита (collateral), цену, объем свободного места, версию софта, возраст хоста и его uptime.


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

Думаю, вам будет интересно взглянуть на выдачу siac hostdb -v.


В крайней правой колонке видны нули и единицы — это успехи и отказы сканирований доступности хоста. За само сканирование отвечает функция managedScanHost. Видно, что она просто соединяется с хостом и проверяет, что он отвечает на запрос. Данные при этом не проверяются.


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

Если данные пропали, то это повляет на доказательства хранения, а не на рейтинг. Так как для доказательства выбирается случайный фрагмент данных, то ожидаемое число потерянных доказательств хранения будет пропорционально объёму потерянных данных. За каждое неотправленное вовремя доказательство хранения хост лишается части прибыли и депозита. В контракте прописывается максимальное число неотправленных вовремя доказательств, после которых контракт разрывается. Оставшиеся средства с разорванного контракта теряются (если верить старой статье, то они уходят на "missed proof address", который по сути является чёрной дырой).


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

Пока это прямо не учитывается, но есть планы по снижению latency до нескольких десятков миллисекунд, так что это будет учитываться. Пока плохое сетевое соединение может косвенно выходить боком через сорвавшиеся замеры uptime или запросы на формирование контрактов и загрузку данных (если канал был в этот момент переполнен).


siaс кеширует данные (сохраненные файлы) локально или на каждый запрос лезет в сеть?

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


Пртокол общения клиента и хоста документирован. Список возможных действий пользователя с контрактом можно посмотреть в коде (ActionDelete, ActionInsert, ActionModify и DownloadAction).


А вот в софте хранение файлов пока реализовано довольно топорно: можно хранить только файлы, копии которых есть локально. Это число недоработка софта, в следующем релизе есть планы по избавлению от необходимости хранить копии файлов локально. А там недалеко и до подгрузки нужных частей в режиме реального времени. К слову, siac точно ничего не кеширует, так как ему негде — от посылает siad'у имя файла, который надо загрузить или в который записать скачанное. В API, на котором они разговаривают, чисто нет другого способа работы с файлами. Надеюсь, это скоро исправят.


Если я хочу продлить контракт, мне его нужно будет перезаключить и перезалить данные?

Контракты продлеваются автоматически, если всё идёт хорошо. Перезаливать данные не надо.


Про seafund: я правильно посчитал, что сеть возвращает с каждого 1$ в контрактах 0,0000039$, а если верить этой статистике, при заключенных контрактах на $47435/месяц, потребуется примерно пол года (10000/(47435*0,039)~5,4 месяца), чтобы отбить вложения, а затем пожизненно получать доход, при условии неизменности курса btc/sc конечно же?

3.9% распределяются равномерно между 10'000 SF. Взяв за основу доход хостов 47к долларов в месяц, один Siafund получает 0.039 / 10000 * 47000 = 0.18 доллара в месяц. Цена Siafund составляет 2-3 биткоина, то есть порядка 5к долларов в лучшем случае. При текущих темпах окупаться будет ой как долго. Поэтому Siafund покупают те, кто верит в будущее Sia. По оценке создателей через 10 лет доход хостов будет исчислять миллиардами долларов.


p.s. И про ответственность — за наличие у вас на диске запрещенных (преступных, классический CP, например) данных вас могут не иллюзорно наказать, и юридически, полученный за это доход, только усугубит ситуацию. И не важно, знал ли я что храню или нет.

Этот вопрос не раз обсуждался в чате. Насколько я помню выводы, в свободном мире за это не наказывают, так как человек не знает, что он хранит. А в остальных странах могут и просто так за содержание выходной ноды тора наказать. Можно снизить вероятность проблем, зашифровав жесткий диск.


Отсюда вопрос — есть ли в планах поддержка i2p или хотя бы tor сети?

Обсуждение идёт в https://github.com/NebulousLabs/Sia/issues/1785
Можете добавить свои соображения туда, чтобы поддержать предложение?


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

Помимо кошелька и папки-хранилище есть ещё папка host c метаинформацией хоста. Думаю, что если шифровать, то всё целиком. Пользователь может вместо нормальных данных (а в норме данные зашифрованы) загрузить CP и сам же рассказать полиции об этом, а полиция вместо ареста этого пользователя может сделать обыск хоста и найти фрагменты этих данных в хранилище. Если вы считаете, что полиция способна фабриковать дела, то лучше всё зашифровать. Или держать хост анонимно, кстати.

Уже заключенные контракты обслуживаются на условиях, на которых их заключали.
Протокол позволяет удалить все данные из контракта, хотя в софте это пока не реализовано.


Что касается цен для будущих контрактов (именно они отображаются на siahub и siapulse), то их пока выставляет владелец хоста, но в roadmap есть пункт про автоматическое выставление цены хостом.

Поддерживаю про время изначальной загрузки. Её можно значительно ускорить, если переместить папку в RAM-диск или в SSD-диск. После изначальной загрузки папку можно переместить назад. Причина в том, что программа синхронизирует файл после каждого блока. Я работаю над пул-реквестом, который это в определённой степени исправляет, но пока он не готов.


Купить сиакоины действительно непросто. Мне наиболее удобным показался https://shapeshift.io (всё быстро и нет регистрации), но он временно не работает с Sia. Помимо перечисленных на http://sia.tech/ru/get-siacoin/ способов есть ещё https://bitsquare.io/, который представляет собой децентрализованный обменник. Я им не пользовался и не могу его рекомендовать, но говорят, что там можно менять фиат напрямую на сиакоины (и на биткоины тоже).


Есть ещё прямой конкурент со своим альткоином — https://storj.io/

Про него часто вспоминают, но у него есть фундаментальный недостаток — взаимодействие пользователя с сервером происходит через их серверы. К чему приводит подобная централизация, мы уже знаем на примере скайпа, который когда называли p2p-сетью.


Кстати, storj вроде как переходит на эзереумы со своего альткоина.

Хоть это и оффтоп, но тема-то интересная, особенно про белки.


Посмотрите Proof of Importance, используемый в криптовалюте NEM. Как я понял, это способ вообще убрать энергоёмкую работу.


Про фолдинг белковых молекул. В традиционном Proof of Work хеширование входа с разными значениями nonce происходит, пока не будет получен хеш, меньший опредённого значения (зависящего от текущей сложности майнинга). Если придумаете аналог этого сравнения хеша с малым значением для задачи фолдинга, то теоретически задачу фолдинга можно было бы подключить. Хеширование будет заменено на вычисление некой характеристики от молекулы, а блок будет собираться, когда эта величина будет попадать в определённые пределы.

в итоге мы имеем клиент на UWP, и, внимание, демон(!) на UWP

Поясните вашу мысль. Что именно вам не нравится?


Код демона написан на Go с отличным покрытием тестами. Код лежит на гитхабе: https://github.com/NebulousLabs/Sia/. Если не хотите использовать готовые бинари, скачайте и соберите код одной командой:


$ go get github.com/NebulousLabs/Sia/...

Дело в том, что хосты назначают разные цены. На вкладке "Prices" на siapulse.com можно видеть распределение цен: от 50 до 5000 сиакоинов за Тб в месяц:



siahub.info говорит, что медиана цены за терабайт-месяц сейчас $10.9.


Курс скачет, так что цифры могут съезжать в ту или иную сторону.

То есть правильно я понимаю, что вся описываемая система работает по принципу большинства антивирусов — полное доверие антивирусу, который сам при этом контролируется извне? Что будет, если окажется скомпрометирована сама "система обеспечения безопасности информации"? Не приведёт ли это к утечке данных, которые она призвана защищать?


Есть одна интересная особенность. Во II и III кварталах 2016 года среди лидеров по количеству IP-адресов, с которых осуществлялись атаки, был Китай.

А в чём было преимущество использования именно Китайских серверов? Казалось бы, зачем выбирать страну с таким великим файерволом, который наверняка мешал их работе.

Третья волна: платформы, а не валюты

Если уж говорить про платформы, а не валюты, то сложно пройти мимо Sia — платформы для распределённого хранения данных, интегрированного в криптовалюту.


Четвертая и пятая волна: государственный блокчейн и захват повседневной жизни

Я себе это представляю так: все государственные базы вроде росреестра заменят блокчейном и операции с собственностью превратятся в обычные транзации. Электронные подписи будут сделаны нормально, а не как сейчас (а сейчас пришёл с паспортом в банк и можешь делать с этими подписями что хочешь — прям как будто на Гитхабе ещё один SSH-ключ добавляешь). Да и паспортов не будет — вся информация о человеке будет выражаться в том, что записано в блокчейне про его публичный ключ. Исполнение сделок и законов будет происходить не под давлением полиции и судов, а автоматически, как исполнение конктрактов в том же Ethereum или Sia. А главное, что в таком мире не будет места самому государству в его нынешнем виде.


А вот государство представляет себе этот вопрос совсем по-другому. Например как закон, что всем необходимо о своих биткоинах отчитаться и впредь пользоваться только официально одобренным отечественным аналогом, доступным только в виде бинарника для Windows.


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

примерно один день требуется для замены ноды и восстановления потерянных данных на новые диски

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


А по поводу самой вероятности потери данных. Как я понял, если мы будем для каждого куска данных выбирать наугад три ноды, то начинается комбинаторика и вероятность потери хотя бы одного куска большая. А что будет, если ноды будут "стремиться" хранить одни и те же куски? То есть, скажем если кусок1 попал на ноды 1, 2, 3 и кусок2 попал на ноду 1, то он так же попал и на ноду 2 и ноду 3. То есть по сути на данных трёх нодах будет одинаковый набор кусков, на других трёх нодах — другой набор кусков, но тоже одинаковый. Интуиция подсказывает, что так мы избавимся от комбинаторики и вероятность потери хотя бы одного куска снизится.


Часто данные в кластерах хранят с использованием кодов Рида — Соломона. Краем уха я слышал, что вероятность потери куска данных в этом случае ниже, чем в случае с тройной репликацией, и места они сжирают сильно меньше. Согласуется ли это с вашими расчётами?

А вы просто цепляетесь за бирку "открытые исходники", которая вообще ничего не гарантирует.

В случае vivaldi действительно ничего: найти эту ссылку с главной страницы или из википедии я не смог, гитхаба тоже, как я понимаю, нет. То есть желающие собирать из исходников и отслеживать изменения должны каким-то образом найти эту страницу и потом вручную разбираться, где в этих 3.4 гигабайтах хромиум, где ваши изменения. И я не понял, где взять тот самый HTML/CSS/JS — из бинарника его что ли вытаскивать. А зачем тогда остальные исходники — пусть специалисты декомпилируют уж тогда.


Пойду расскажу админам, что apt-get install firefox — это прошлый век, пора переходить на vivaldi. Пойду расскажу безопасникам, что зря они вычитывают все коммиты в firefox — пусть лучше изучают ваши 3.5 гигабайт с нуля! И зачем это люди в наши дни делают hardening FF и переписывают его на Rust, исключая из него последние из оставшихся уязвимостей? Ведь есть браузер, в котором специалисты всё уже сделали. А нескучные обои не забыли?

Отсюда и админская любовь

Не отсюда, а из-за открытых исходников, из которых следует и предустановка на Линуксах. Второе важное следствие — возможность базировать на нём другие браузеры, такие как Tor-браузер.


А про ваш Вивальди смотрим в википедии и что же видим первым делом: License: Proprietary freeware. Это означает, что иначе как в виртуалке я это запускать не стану (а это поест всё удобство!) и ни в какие важные сайты влогиниваться не буду. Почему я должен доверять вашему браузеру с закрытыми исходниками больше, чем тому же Edge?


Если разработчики FF зайдут не в ту степь (будучи куплены какой-нибудь корпорацией или просто сдуру), сообщество форкнет и продолжит нормальную разработку в форке — как было с mysql и mariadb. А вот если исходников в открытом доступе нет, то и выбора нет — придётся хавать то, что дадут (ваша статья как раз про такой случай!). И посмотрите на оперу — где гарантии, что с vivaldi не случится то же?

Раз речь зашла о протобуфе, то не смотрели ли также на gRPC?

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

не думаю что на tcp уровне он будет отличаться от обычного броузера

Из TCP можно узнать операционную систему и сверять её с user agent.

Information

Rating
Does not participate
Registered
Activity