> Хороший код, как хорошая шутка — не требует объяснений
.
Что с хорошо написанным кодом работать проще и удобнее — очевидно. Но утверждение, что любой хороший код не требует обьяснений — это попытка на основе частного утверждения (I) посторить общее (A). В общем случае это не верно.
Бывает такой код, что и хороший, и ничего не понятно без обьяснений (или документации). Чтоб далеко не ходить — приведу в качестве примера процедуру поиска минимальной редактирующей последовательности или арифметический кодировщик.
Да, это довод. Соглашусь. Переделал тулз, во всех правилах поставил действие «только банить».
Если кто-то захочет вернуть «активное противодействие» — то это будет уже действие соответствующего программиста, а не моё.
По сути, программа превратилась в аналог fail2ban.
Изменения уже в репозитории.
Вот Вы поднимаете вопрос возможной проблемы в случае, если злоумышленник созадёт ссылку, которая приводит невиновного клиента на сайт под BanMoron-ом. Что это плохо для клиента. Начнём с того, что не так уж и плохо. Тест ZIP-бомбы на mozilla привёл к краху таба браузера, и не более. Даже мозилла продолжила работать, не говоря уже о перезагрузке системы. Аналогично ведёт себя и Хром. Так что страшный ребут юзера — из области фантастики. В целом же, было сказано, что зип-бомба — малоэффективный инструмент в современном мире.
Теперь собственно про ссылку, пример которой продемонстрирован выше. С тем же успехом аналогичная ссылка может быть создана и на сайт, принадлежащий злоумышленнику (или им взломанный). И там он вообще может разместить всё что угодно, включая эксплойты браузеров.
Даже арендовать сервер в облаке стоит сейчас реально копеек. Так что кто хочет — и так может такие ссылки создавать без всяких проблем. BanMoron тут ситуацию не меняет.
А вот что BanMoron меняет — так это снижает вероятность взлома сайтов, и как следствие — сужает ресурсную базу злоумышленников. А это — плюс.
То есть, даже fail2ban использовать нельзя? Он ведь тоже может забанить невиновного юзера по «не такой»
активности? Единственная разница между BanMoron и fail2ban, что fail2ban — постоянно запущенный процесс, и реагирует c задержкой в несколько секунд. Да, и в нём нет возможности отправить зип-бомбу, это правда. Он просто банит, и всё. Но и в BanMoron бомба — один из возможных инструментов. Применять его или нет, и если применять то когда — это на усмотрение админа.
И мне всё-таки кажется, что «неуиновный Рафик» таки не должен даже по полученной ссылке пытаться скачивать wallet.dat.
Много в чём. Например в том, что в Namecoin одна зона *.bit, а в Эмере — четыре.
Или в том, что можно задавать срок лиза записей.
Или в том, что в Emer-ноду встроен DNS-сервер, который отвечает в стандарте RFC1034. А в Namecoin такого нет. Там есть только хранилище, но нет встроенного механизма поиска и извлечения в формате, понятном internet-инфраструктуре.
Или наконец в том, что в Эмере, помимо DNS, есть масса других сервисов —
EmerSSL, EmerVPN, ENUMER, EmerDPO, EmerSSH, и так далее. Подробнее читайте статьи .
> Причиной тому были не какие-то выдающиеся характеристики, а тот факт, что один из «продвигателей»
> эмеркойна (возможно даже лично вы?) регистрировал домены для известных ресурсов и
> потом писал на их форумах,
Одно другому не мешает. Если бы соответствующих характеристик не было, владельцы сайтов просто бы проигнорировали предложение. И способ информирования владельцев тех или
иных ресурсов ну никак не влияет на технические свойства системы. Да, наши подвижники (и может даже лично я) для некоторых доменов действительно сначала регистрировали домен на себя, а потом информировали хозяина ресурса. А как иначе? Если просто проинформировать — кто угодно из читателей блога засквотит на себя, и пиши пропало. Идея «тайного сообщения» — тоже не ахти. Тут пахнет потерей времени, и снова — риском сквоттинга. Поэтому и пришлосо в самом начале сквотить с благими намерениями, а потом бесплатно передавать. Так разве это плохо?! (с) анекдот
И даже сам факт, что Вы сделали локальный шлюз в EmerDNS (что мы приветствуем) и им пользуетесь, косвенно свидетельствует о том, что Вы признали полезность EmerDNS по крайней мере, для себя.
> Кто-нибудь проводил аудит безопасности и устойчивости?
Записи EmerDNS запакованы внутрь платёжных транзакций. Если кто-то сможет взломать EmerDNS, и тем подменить записи, это значит, что он может взломать и чужие платёжные адреса тоже. Сейчас на платёжных
адресах находится сумма Эмеров, примерно равная $40,000,000. Считайте, что это — приз за взлом (поимку Неуловимого Джо). Кто взломате — заберёт. А системе уже 5 лет скоро (правда, ранее приз поменьше был), то есть приз 4+ года висит, а Джо всё никак не поймают. По-моему, это позволяет говорить о том, что Джо — и вправду неуловимый.
Нет, в EmerDNS только свои доменные зоны. Для прозрачного разрешения зон как Emer, так и ICANN необходима «точка сопряжения», которая явлается сервером для объдинённой системы. В качестве такой точки может выступать как OpenNIC, так и Ваш локальный кэширующий DNS-сервер. Варианты настройки последнего приведены в документе https://wiki.emercoin.com/en/EMCDNS
Начнём с того, что Emer появился примерно на два года раньше рутстока (2013 vs 2015), и ему не обязательно быть лучше. Ну и объекты сравнения совсем из разных областей. Это как сравнивать, что лучше — лодка или велосипед? Раскрою тему подробнее.
Emer — свой блокчейн, со своими механизмами повышения безопасности и стабильности сети, предоставляющие немонетарные сервисы. По соображениям безопасности, универсальных смарт-контрактов в ядре нет и не предвидится.
RSK — это надстройка над чужим блокчейном (по дефолту — Биткоин), которая как раз и реализует универсальные смарт-контракты. А смарт-контракты — это по сути те же платежи (правда, обставленные кучей условий), то есть монетарные сервисы.
И как велосипед можно погрузить в лодку, так же RSK можно прикрутить к системе Emer, если задаться таким вопросом.
Стоимость не только поддерживается, но даже увеличивается расширением экономики, то есть повышением востребованности монеты.
Подробнее об этом — в статье.
Кроме того, есть процесс, обраный эмиссии — сжигание монет за предоставленный сервис.
> за счет чего поддерживается необходимая мощность для генерации хэша?
За счёт генерации новых монет майнерам.
> Интересует каким именно образом решен вопрос оплаты создания новых блоков,
При закрытии блока майнер получает POS или POW награду, смотря как майнит.
> как обеспечивается безопасность сети при отсутствии майнинга.
Алгоритмом POS. В этом случае майнерами становятся все владельцы монет, и майнинг становится истинно децентрализованным.
Оплата производится за инфляцию блокчейна, то есть добавление туда байтов.
Стоимость формируется тому, кто хочет что-либо добавить, по формуле «Storage Fees» из документа:
https://wiki.emercoin.com/en/Emercoin_NVS
Рассказать-то можно, и подробности предъявить — тоже. Но это выходит за рамки этой простой вводной статьи, и тянет на ещё одну полноценную статью. Но идя Вам навстречу, мы рады предоставить главу из книги, содержащая конкретику, которая так Вас интересует.
Как блоки передаются? Через Интернет, посредством протокола TCP/IP.
И да, на каждом клиенте хранится вся база сети.
Ну а если Вам нужна вообще вся конкретика — то вот вся книга, содержащая эту самую конкретику.
Я не совсем понимаю, как смарт-контракт может принять DNS-запрос в стандарте RFC1035 и отправить соответствующий ответ. Также интересно время обработки данного запроса смарт-контрактом.
Вот у меня серверок на локалке, машина Athlon 1700 2004го года выпуска, памяти 1 гиг.
На ней крутится EMС-кошель для поддержки EMCDNS зон, и скорость обработки:
Интересно! Хочу уточнить (без сарказма, правда хочу понять) несколько деталей:
1. Адреса, на которых хранятся токены — могут ли получать сами монеты (дивиденды)? То есть это обычные ETH-адреса, или специальное подмножество адресов, на которых могут быть только токены ICO-проекта?
2. Как руководство бизнеса при выплате дивов будет собирать список текущих адресов и сумм — то есть определяет, куда и сколько засылать? Есть ли в системе ETH (или ешё какой) ICO индекс этих адресов, или надо пересканировать весь БЧ и отслеживая все транзакции, собирать этот список?
3. Что будет, если токен в данный момент направлен на какой-нибудь смарт-контракт, и «ждёт решения»? Я так полагаю, что дивиденд в ETH будет отправлен также смарт-контракту? Что при этом произойдёт?
4. Что будет, если токен находится на кошельках биржи, и она переложила его в «холодные кошельки», или просто перевела куда-то в свои «хранилища». Я так понимаю, что тогда биржа получит дивы. Весьма любопытно, как она их будет распределять. Хотя конечно это наверное дело биржи, а не обсуждаемой технологии. Но прозреваю, что биржи, увлёкшиеся торговлей токенами, поимеют много интересных разговоров с пользователями.
Ну ни докладчики тему не раскрывали на выступлениях, ни в доступной документации такого нет. Да, теоретически можно сделать СК, на который посылаешь токены, а он тебе их возвращает на твой же адрес вместе с дивидендами. Но тут тоже есть ряд засад. Например, кто-то одни и те же токены пошлёт один раз, потом промиксит с чем-нибудь, и потом — ещё раз. В результате — дважды получит дивы. И вообще выходит, для такой операции сам получатель должен что-то делать. То есть не подсуетился вовремя — с дивами в пролёте.
Если я не прав — приведите пример любого действующего смарт-контракта ICO, в котором предусмотрена рассылка дивидендов.
.
Что с хорошо написанным кодом работать проще и удобнее — очевидно. Но утверждение, что любой хороший код не требует обьяснений — это попытка на основе частного утверждения (I) посторить общее (A). В общем случае это не верно.
Бывает такой код, что и хороший, и ничего не понятно без обьяснений (или документации). Чтоб далеко не ходить — приведу в качестве примера процедуру поиска минимальной редактирующей последовательности или арифметический кодировщик.
Если кто-то захочет вернуть «активное противодействие» — то это будет уже действие соответствующего программиста, а не моё.
По сути, программа превратилась в аналог fail2ban.
Изменения уже в репозитории.
Теперь собственно про ссылку, пример которой продемонстрирован выше. С тем же успехом аналогичная ссылка может быть создана и на сайт, принадлежащий злоумышленнику (или им взломанный). И там он вообще может разместить всё что угодно, включая эксплойты браузеров.
Даже арендовать сервер в облаке стоит сейчас реально копеек. Так что кто хочет — и так может такие ссылки создавать без всяких проблем. BanMoron тут ситуацию не меняет.
А вот что BanMoron меняет — так это снижает вероятность взлома сайтов, и как следствие — сужает ресурсную базу злоумышленников. А это — плюс.
активности? Единственная разница между BanMoron и fail2ban, что fail2ban — постоянно запущенный процесс, и реагирует c задержкой в несколько секунд. Да, и в нём нет возможности отправить зип-бомбу, это правда. Он просто банит, и всё. Но и в BanMoron бомба — один из возможных инструментов. Применять его или нет, и если применять то когда — это на усмотрение админа.
И мне всё-таки кажется, что «неуиновный Рафик» таки не должен даже по полученной ссылке пытаться скачивать wallet.dat.
Или в том, что можно задавать срок лиза записей.
Или в том, что в Emer-ноду встроен DNS-сервер, который отвечает в стандарте RFC1034. А в Namecoin такого нет. Там есть только хранилище, но нет встроенного механизма поиска и извлечения в формате, понятном internet-инфраструктуре.
Или наконец в том, что в Эмере, помимо DNS, есть масса других сервисов —
EmerSSL, EmerVPN, ENUMER, EmerDPO, EmerSSH, и так далее. Подробнее читайте статьи .
> эмеркойна (возможно даже лично вы?) регистрировал домены для известных ресурсов и
> потом писал на их форумах,
Одно другому не мешает. Если бы соответствующих характеристик не было, владельцы сайтов просто бы проигнорировали предложение. И способ информирования владельцев тех или
иных ресурсов ну никак не влияет на технические свойства системы. Да, наши подвижники (и может даже лично я) для некоторых доменов действительно сначала регистрировали домен на себя, а потом информировали хозяина ресурса. А как иначе? Если просто проинформировать — кто угодно из читателей блога засквотит на себя, и пиши пропало. Идея «тайного сообщения» — тоже не ахти. Тут пахнет потерей времени, и снова — риском сквоттинга. Поэтому и пришлосо в самом начале сквотить с благими намерениями, а потом бесплатно передавать. Так разве это плохо?! (с) анекдот
И даже сам факт, что Вы сделали локальный шлюз в EmerDNS (что мы приветствуем) и им пользуетесь, косвенно свидетельствует о том, что Вы признали полезность EmerDNS по крайней мере, для себя.
> Кто-нибудь проводил аудит безопасности и устойчивости?
Записи EmerDNS запакованы внутрь платёжных транзакций. Если кто-то сможет взломать EmerDNS, и тем подменить записи, это значит, что он может взломать и чужие платёжные адреса тоже. Сейчас на платёжных
адресах находится сумма Эмеров, примерно равная $40,000,000. Считайте, что это — приз за взлом (поимку Неуловимого Джо). Кто взломате — заберёт. А системе уже 5 лет скоро (правда, ранее приз поменьше был), то есть приз 4+ года висит, а Джо всё никак не поймают. По-моему, это позволяет говорить о том, что Джо — и вправду неуловимый.
Emer — свой блокчейн, со своими механизмами повышения безопасности и стабильности сети, предоставляющие немонетарные сервисы. По соображениям безопасности, универсальных смарт-контрактов в ядре нет и не предвидится.
RSK — это надстройка над чужим блокчейном (по дефолту — Биткоин), которая как раз и реализует универсальные смарт-контракты. А смарт-контракты — это по сути те же платежи (правда, обставленные кучей условий), то есть монетарные сервисы.
И как велосипед можно погрузить в лодку, так же RSK можно прикрутить к системе Emer, если задаться таким вопросом.
Подробнее об этом — в статье.
Кроме того, есть процесс, обраный эмиссии — сжигание монет за предоставленный сервис.
Да.
> за счет чего поддерживается необходимая мощность для генерации хэша?
За счёт генерации новых монет майнерам.
> Интересует каким именно образом решен вопрос оплаты создания новых блоков,
При закрытии блока майнер получает POS или POW награду, смотря как майнит.
> как обеспечивается безопасность сети при отсутствии майнинга.
Алгоритмом POS. В этом случае майнерами становятся все владельцы монет, и майнинг становится истинно децентрализованным.
Стоимость формируется тому, кто хочет что-либо добавить, по формуле «Storage Fees» из документа:
https://wiki.emercoin.com/en/Emercoin_NVS
Как блоки передаются? Через Интернет, посредством протокола TCP/IP.
И да, на каждом клиенте хранится вся база сети.
Ну а если Вам нужна вообще вся конкретика — то вот вся книга, содержащая эту самую конкретику.
Вот у меня серверок на локалке, машина Athlon 1700 2004го года выпуска, памяти 1 гиг.
На ней крутится EMС-кошель для поддержки EMCDNS зон, и скорость обработки:
$ dig flibusta.lib localhost -p 5335
;; Query time: 5 msec
Можете повторить то же самое на смарт-контракте? Даже на более мощной машине?
1. Адреса, на которых хранятся токены — могут ли получать сами монеты (дивиденды)? То есть это обычные ETH-адреса, или специальное подмножество адресов, на которых могут быть только токены ICO-проекта?
2. Как руководство бизнеса при выплате дивов будет собирать список текущих адресов и сумм — то есть определяет, куда и сколько засылать? Есть ли в системе ETH (или ешё какой) ICO индекс этих адресов, или надо пересканировать весь БЧ и отслеживая все транзакции, собирать этот список?
3. Что будет, если токен в данный момент направлен на какой-нибудь смарт-контракт, и «ждёт решения»? Я так полагаю, что дивиденд в ETH будет отправлен также смарт-контракту? Что при этом произойдёт?
4. Что будет, если токен находится на кошельках биржи, и она переложила его в «холодные кошельки», или просто перевела куда-то в свои «хранилища». Я так понимаю, что тогда биржа получит дивы. Весьма любопытно, как она их будет распределять. Хотя конечно это наверное дело биржи, а не обсуждаемой технологии. Но прозреваю, что биржи, увлёкшиеся торговлей токенами, поимеют много интересных разговоров с пользователями.
Если я не прав — приведите пример любого действующего смарт-контракта ICO, в котором предусмотрена рассылка дивидендов.
А больше платформа для распределённых сервисов?