Перейти к содержимому

tankist's блог

  • записи
    2
  • комментариев
    6
  • просмотров
    8 880

Перевод getmonero.org (часть 2)

tankist

2 569 просмотров

Цели разработки

https://getmonero.org/design-goals/

 

Выполнено:

[v] реализация встроенной LMDB

[v] вынос кода в демоны (корректное фоновое разветвление)

[v] реализация аварийного переключения на BerkeleyDB

[v] поддержка 32-битной и ARM архитектуры

[v] Мини-цепь / разовое скачивание и быстрая синхронизация

[v] Замена межпроцессного RPC на IPC с использованием ZeroMQ

[v] SSL/TLS и аутентификация RPC с использованием net_skeleton

 

Текущие задания:

· Запаковка в библиотеки (узел, учётная запись, консенсус, RPC)

· Транзакции с выборочным пожертвованием разработчикам

· Обработка неподтверждённых транзакций на стороне клиента

· Умный майнинг (постоянный, в фоновом режиме)

 

Графический интерфейс и др.:

· Подпись адреса и транзакций, экспорт ключей

· Оптимизация скорости алгоритма EdDSA

· Перемещение хранилища учётной записи во встроенную БД

· реализация графического интерфейса ядра (узла и кошелька)

· интеграция с i2p (только i2p, мост i2p/IP, классический IP)

 

Дополнения для коммерции:

· Уведомления кошелька/блоков

· Изолированный сторожевой таймер (watchdog stub) демона и RPC-клиента

· Реализация нового RPC API

· Реализация совместимости с RPC API Биткойна

· Поддержка Proxy на сетевом уровне

 

В настоящее время, ведутся исследования:

[v] Скрытого идентификатора платежа с сериализацией в адрес получателя

[v] Конфиденциальных кольцевых транзакций, скрывающие суммы платежей

· Нового алгоритма сложности

· Транзакций с мульти-подписями (М-из-N подписей)

 

Фундаментальные работы по боковым цепям:

· Без-монетный совмещённый майнинг

· Межцепочные свопы

· Функциональность публикации узлов, подсетей и/или поддерживаемых цепей

· Формализация дочерних цепей (вне-цепочные транзакции с периодической фиксацией в главной цепи)

· Внутрицепочная, довещательная двухфакторная аутентификация (фундамент для SMS, Google Auth, YubiKey, транцакции с 2FA)

 

Изначальные цепи:

· Экспериментальная дочерняя цепь Tippero (сверх-облегчённая, для микротранзакций, с фиксацией в главной цепи несколько раз в сутки)

· MoneroID (приватное или публичное удостоверение личности; может выступать в качестве группы, включающей другие идентичности или группы идентичностей; может использоваться как логин)

· MoneroDNS (домены с расширением .х с поддержкой всех полей данных DNS, включая DNSSEC; локальный DNS сервер для разрешения имён)

· MoneroTrust (сеть доверия между идентичностями как фундамент для взаимодействия; пересмотр рейтингов каждые 12 месяцев)

 

Следующий уровень исследований:

· MoneroChat (шифрованная передача сообщений с промежуточным хранением (store and forward), включая платёжные запросы)

· MoneroAssets (рынки активов в боковых цепях, межцепочная торговля)

· MoneroTrade (децентрализованная электронная коммерция, с ежемесячной корректировкой предлагаемых товаров и услуг для поддержки актуальности рынка)


 

Основной состав команды Монеро

https://getmonero.org/knowledge-base/people

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

 

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

 

Riccardo „fluffypony“ Spagni (ric@getmonero.org) выходец из Южной Африки, разработчик программного обеспечения с серьёзной деловой хваткой и глубоким пониманием криптовалют. Вовлечён в крипто-проекты с 2012 года.

 

David Latapie (david@getmonero.org) французский публицист, гуманист и крипто-энтузиаст. Работал с различными криптовалютами. В фокусе – отслеживание социальных изменений, вызванные «криптой» и технологией блокчейна.

 

smooth (smooth@getmonero.org) разработчик программного обеспечения, предприниматель, инвестор. Участвовал в различных крипто-проектах с 2011 года, внёс вклад в разработку первой мультивалютной биржи (с поддержкой Bitcoin и Namecoin). Имеет стаж и репутацию в сообществе.

 

othe (othe@getmonero.org): из Германии, интересуется криптовалютами с начала 2011 года. В настоящее время работает независимым консультантом в криптовалютной коммерции. Получил известность как один из ведущих разработчиков Vertcoin.

 

tacotime (tacotime@getmonero.org): энтузиаст биоинформатики и разработчик программного обеспечения из Торонто. Вовлечён в криптовалюты с 2011 года. Прославился благодаря своему вкладу в гибридный PoW/PoS форк MC2, а также проекту btcd.

 

NoodleDoodle (noodledoodle@getmonero.org): бывший инженер из Кремниевой Долины, опытный программист и разработчик аппаратных средств. Состоит в криптовалютном сообществе с 2012 года, в настоящее время работает в университете по «классной аэрокосмической теме».

 

eizh (eizh@getmonero.org): Американский исследователь и академик, специализирующийся в области физики и научных вычислений. Имеет академический интерес к криптовалютам, в частности к серьёзным альтернативам Биткойна.

 

Содействие разработке

Многие приняли участие в написании кода Монеро. С полным списком участников можно ознакомиться на странице Github Contributors. Выдающийся вклад в разработку внесли: Thomas Winget, mikezackles, oranjuice, warptangent, rfree, moneromooo, jakoblind, tomerkon.

 

 

Исследовательская лаборатория Монеро

Основной состав команды Монеро является неотъемлемой частью исследовательской лаборатории. Ведущие работники лаборатории - исследователи, учёные и академики – в настоящее время действуют под псевдонимами:

 

Surae Noether: ведущий исследователь, кандидат математических наук, с глубоким пониманием криптографии и гомологической алгебры.

 

Sarang Noether: магистр математических наук, в настоящее время завершает докторскую степень в области физики, уделяет свободное время на продвижения исследований Монеро.

 

Shen Noether: аспирант алгебраической геометрии, со знаниями в области криптографии, участвует в научно-исследовательской деятельности лаборатории.

 

С публикациями можно ознакомиться по адресу https://lab.getmonero.org/

 

Другие сотрудники

С момента создания Монеро, cвою лепту в разработку внесли: zone117x, LucaseJones, wolf0, Professor David Andersen, @Atrides, wallet42, Neozaru, Gingeropoulos, cAPSLOCK и многие другие

 


 

Глоссарий

https://getmonero.org/knowledge-base/moneropedia/

 

Адрес – это запись, которая однозначно определяет получателя средств. Исходный адрес состоит из 95 символов и начинается с цифры 4; например, пожертвования разработчикам Монеро можно отправить на адрес 46BeWrHpwXmHDpDEUmZBWZfoQpdc6HaERCNmx1pEYL2rAcuwufPN9rXHHtyUA4QVy66qeFQkn6sfK8aHYjA3jk3o1Bv16em

Поскольку адреса Монеро длинные и сложные, то в качестве альтернативы можно использовать OpenAlias. К примеру, пожертвования можно перечислить на donate@getmonero.org или donate.getmonero.org

 

Дополнительная информация - https://openalias.org

 

Блок – это контейнер, содержащий информацию о транзакциях, которые были совершены после создания предыдущего блока. Каждый новый блок добавляется в цепочку блоков (блокчейн), в среднем каждые 60 секунд.

 

Блоки также содержат специальные эмиссионные транзакции, которые выпускают новые монеты в обращение.

 

Блоки рассчитываются при помощи «майнинга». Узел, рассчитавший новый блок, передаёт его всем «соседям», с которыми установлено соединение, и впоследствии эти «соседи» ретранслируют блок до принятия его во всей сети Монеро.

 

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

 

Блокчейн – это распределённая ведомость, содержащая записи всех платежей Монеро без раскрытия адресов отправителей и получателей.

 

Ключ просмотра – пара открытых/закрытых ключей учётной записи, с помощью которых можно увидеть все записи приходо-расходных операций владельца счёта. Для просмотра истории сделок требуется закрытый (секретный) ключ владельца.

 

Ключ расходов – пара открытых/закрытых ключей учётной записи, позволяющие расходовать средства. Для подписи исходящего платежа используется закрытый (секретный) ключ.

 

Кольцевая подпись – групповая криптографическая подпись, по крайней мере, с одним реальным участником, причём все участники группы неотличимы друг от друга.

 

Консенсус – свойство распределённой сети (Монеро), обязывающая всех участников следовать единому своду правил и отвергать участников-нарушителей.

 

Криптовалюта – это не имеющая центрального управления цифровая валюта, существование которой основано на принципах распределённой пиринговой сети.

 

Криптографическая подпись – это метод, позволяющий доказать принадлежность подписи владельцу и установить отсутствие искажения информации с момента формирования подписи.

 

Майнинг – процесс криптографического вычисления математического доказательства блока, содержащего N транзакций, и добавление вычисленного блока в блокчейн.

 

Мнемонические коды – набор из 13 или 25 слов для восстановления учётной записи. Доступны на разных языках.

 

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

 

Сгенерировать идентификатор можно с помощью OpenSSL:

# openssl rand 32 -hex

Сдача – средства как часть транзакции, которые возвращаются на счёт отправителя.

 

Стелс-адрес – или «адрес-невидимка», имеет весомую роль в анонимности платежей Монеро. Для каждой сделки, отправитель генерирует случайный одноразовый адрес на основе некоторых данных адреса получателя. Несмотря на то, что получатель публикует свой один-единственный адрес – все входящие платежи регистрируются в блокчейне как перевод средств на разные уникальные адреса, обеспечивая таким образом несвязанность транзакций. Полной информацией о сделке располагают только отправитель и получатель.

 

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

 

Транзакция – это контейнер с криптографической подписью, содержащий информацию о перечислении средств (Монеро) получателям.

 

Параметры транзакции: один или несколько получателей, сумма платежа и значение <mixin_count>, устанавливающее количество выходов, в которые будет «замешана» транзакция. Большие значения <mixin_count> повышают уровень анонимности платежа, но в результате увеличивается размер транзакции и, соответственно, растут комиссионные.

 

Каждой транзакции присваивается уникальный идентификатор Transaction ID, который выражается 32-байтовой строкой (64 шестнадцатеричных символов).

 

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

 

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

 

Чтобы потратить средства, вам придётся вычислить секретный ключ для выхода, который также является одноразовым.

 

Узел – хранящее полную копию блокчейна и подключенное к всемирной сети устройство, на котором выполняется программное обеспечение Монеро.

 

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

 

OpenAlias – стандарт, позволяющий использовать FQDN или адрес электронной почты для платежей Монеро.



2 комментария


Рекомендуемые комментарии

Есть ли филологи-лингвисты в наших рядах? Нужна экспертная оценка

Поделиться комментарием


Ссылка на комментарий

Долину правильнее назвать Кремниевой, а не Силиконовой

Поделиться комментарием


Ссылка на комментарий

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу.

×