Найти в Дзене
Дмитрий Макаровский

Технический анализ криптовалюты ПРИЗМ

Сравнительный анализ возможностей и программных решений. Ядро PRIZM разработано на основе исходных кодов криптовалюты NXT. Исходный код для PRIZM публикуется на GitHub, но публикуются не все файлы. Он использует алгоритм проверки правдоподобия, алгоритм Diffie-Hellman elliptic Curve25519 (ECDH), алгоритм хеширования SHA-256 и симметричное шифрование AES-256. В качестве алгоритма формирования блоков используется Proof-of-Stake (PoS). Алгоритм имеет следующие эффекты: Доступны следующие типы транзакций: Подробности о типе «Сообщение». При публикации текстовых или иных данных существуют подвиды: В рамках одной транзакции подтипы типа «Сообщение» могут быть объединены в любую комбинацию. Алгоритм «Параминг» Новый алгоритм выдачи новых монет PRIZM и их зачисления на счет виртуального адреса. Ранее этот алгоритм не использовался в других криптовалютах. При событии, которое изменяет баланс адреса, виртуальная учетная запись сбрасывается; Монеты PRIZM, удаленные с виртуального счета, отпра
Оглавление

Сравнительный анализ возможностей и программных решений.

Ядро PRIZM разработано на основе исходных кодов криптовалюты NXT. Исходный код для PRIZM публикуется на GitHub, но публикуются не все файлы. Он использует алгоритм проверки правдоподобия, алгоритм Diffie-Hellman elliptic Curve25519 (ECDH), алгоритм хеширования SHA-256 и симметричное шифрование AES-256. В качестве алгоритма формирования блоков используется Proof-of-Stake (PoS).

Алгоритм имеет следующие эффекты:

  • Решена проблема чрезмерного энергопотребления
  • Минимизированные затраты участников системы на поддержку узлов
  • Теория игр математики способствует децентрализации системы
  • Среднее время генерации саморегулируется с помощью плавающей базовой цели, стремящейся к значению в диапазоне 59-60 секунд.

Доступны следующие типы транзакций:

  • регулярный платеж (перевод ПРИЗМ с адреса на адрес)
  • сообщение (отправка текстовой информации)
  • установка имени / описания адреса (публикация текстовой информации на блокчейне и создание передачи данных с адресом)

Подробности о типе «Сообщение». При публикации текстовых или иных данных существуют подвиды:

  • Публичное сообщение для получателя
  • Зашифрованное сообщение для получателя
  • AES-256 зашифрован, ключ рассчитывается по ECDH (sender_private_key,
  • recipient_public_key)
  • Публичная заметка для себя
  • Зашифрованная записка для себя

В рамках одной транзакции подтипы типа «Сообщение» могут быть объединены в любую комбинацию.

Алгоритм «Параминг»

Новый алгоритм выдачи новых монет PRIZM и их зачисления на счет виртуального адреса. Ранее этот алгоритм не использовался в других криптовалютах. При событии, которое изменяет баланс адреса, виртуальная учетная запись сбрасывается; Монеты PRIZM, удаленные с виртуального счета, отправляются на адрес владельца с адреса GENESIS в виде настоящих монет. Адрес GENESIS имеет отрицательное сальдо, модуль баланса которого постоянно увеличивается, точно отражая эмиссию криптовалюты.

Монеты PRIZM зачисляются на виртуальный счет каждую секунду, размер комиссии зависит от личных средств адреса и суммы личных средств других адресов, связанных с основным адресом.

Во время первой транзакции основного адреса на новый адрес создается соединение, которое не может быть уничтожено. Ссылки являются многоуровневыми и хранятся в таблице para базы данных paraprizm.h2.db. Монеты на счете связанных адресов считаются частью суммы только в том случае, если расстояние между адресом, для которого рассчитывается параминг, и связанным адресом меньше 88 других адресов.

Новый адрес означает адрес без единой транзакции и отсутствия монет PRIZM на счете.

Преимущества системы

  • минимум типов транзакций делает систему предсказуемой и надежной, сводя к минимуму количество потенциально уязвимых участков кода;
  • изменчивость и простота интеграции произвольных данных в тело транзакции предоставляет широкие возможности для использования блок-цепочки PRIZM в распределенных приложениях;
  • способность интегрировать произвольные данные облегчает интеграцию со сторонними сервисами PRIZM, поскольку сводит идентификацию входящих платежей к простой проверке, которая намного проще, чем методы, которые необходимо использовать для интеграции биткойна и его токенов;
  • стандарты шифрования военного уровня;
  • инновация, которая реализует выбросы в форме «парамайнинг», представляет собой интересное явление, требующее дальнейшего изучения;
  • парамайнинг экономит энергию и облегчает поддержку сети, поскольку он не требует дорогостоящего оборудования для выпуска монет, что делает PRIZM более доступным для поддержки своего собственного узла по сравнению с биткойнами, Ethereum и другими валютами PoW;
  • эмиссия полностью передается обычным пользователям;
  • вероятность атаки в 51 процент (двойные расходы) намного меньше, чем у биткойнов, из-за чрезмерной стоимости атаки (стоимость атаки превышает потенциальную выгоду атакующего: вам необходимо выкупить половину всех существующих ПРИЗМ монеты);
  • при использовании веб-интерфейса узла для создания транзакций закрытый ключ используется локально на компьютере пользователя, вся криптография дублируется в JavaScript для полноценной работы в браузере, чтобы избежать передачи закрытого ключа;
  • удобный JSON RPC: вы почти всегда можете найти метод, позволяющий получить интересующую вас информацию.

Возникшие системные проблемы

  • проблема статической базовой цели из-за увеличения объема циркулирующих монет PRIZM, общая сумма блоков генерации средств с использованием алгоритма PoS может выйти за пределы предварительно определенных пределов базовой цели, что приведет к уменьшению среднего времени генерации блоков менее 59 секунд. Однако в ходе исследования был обнаружен детерминистский механизм, который изменяет пределы основной цели, чтобы полностью компенсировать этот эффект.
  • проблема низкой привлекательности контента сайта из-за того, что проблема создается обычными пользователями, поддержание собственного сайта на первый взгляд не так финансово привлекательно, как поддержание его для Биткойн или Эфириума. С другой стороны, стоимость обслуживания сайта в несколько раз меньше: для этого не требуется большой объем дискового пространства; не требует большой вычислительной мощности; нет необходимости выполнять постоянные тяжелые расчеты с затратами энергии. В целом отсутствие выбросов в пользу создателя блока при создании блоков полностью компенсируется низкими требованиями к владению системным узлом, а комиссионных средств более чем достаточно, чтобы окупить вложенные средства. Также при получении комиссионных за создание блока,

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

Основные вопросы

Функциональность ParaEngine.java

инструменты

  • полученного из https://github.com/prizmspace/PrizmCore
  • анализ базы данных prizm_db / paraprizm.h2.db и prizm_db / prizm.h2.db
  • мониторинг сетевого взаимодействия между узлами в синтетической среде
  • Функциональность ParaEngine.java

Необходимо ответить на вопросы:

  • Почему класс не опубликован?
  • Что такое функциональность реального класса?

Файл запутан, чтобы предотвратить неконтролируемое создание жестких вилок; Запутывание не мешает восстановлению абстрактной модели функциональности класса на основе структуры кода:

Инициализация класса

  • Подключение к базе данных paraprizm.h2.db
  • Проверка целостности базы данных
  • Восстановить целостность базы данных
  • Обновление базы данных
  • Публичные методы класса и обратный функционал:
  • popLastBlock - запускает обратные вычисления для базы данных paraprizm.h2.db и переводит ее в состояние, в котором она находилась на 1 блок назад
  • rollbackToBlock - управляющий код для метода popLastBlock
  • getBaseTargetStart - возвращает ближайшую высоту, на которой должны быть обновлены пределы базовой цели
  • isBaseTargetRegionBegins - отвечает на вопрос, находится ли блокчейн на высоте изменения пределов базовой цели
  • calculateBaseTarget - пересчитывает новую базовую цель, чтобы компенсировать увеличение количества монет PRIZM, участвующих в создании блоков
  • getBaseTarget - возвращает кешированную базовую цель для заданной высоты
  • convert - конвертирует транзакцию в формат для внутренних вычислений
  • проверка - создает и проверяет транзакции адреса GENESIS
  • canReceive - проверяет дубликаты транзакций для адреса GENESIS
  • getMetrics - возвращает данные об учетной записи виртуального адреса
  • getFixedFee - рассчитывает фиксированную комиссию

Выводы

  • закрытый класс ParaEngine.java проводит сложные внутренние расчеты
  • без этих расчетов невозможно создать хард-форк
  • интерфейс класса прозрачен
  • методы получают только те данные, которые необходимы для обработки данных
  • нет непрозрачных запросов к внешнему (не сфокусированному) коду
  • подозрительное поведение не обнаружено
  • код функционален

Инновации и улучшения

Файл PrizmEngine.jar был декомпилирован с последующим построением карт удаленных, созданных и измененных логических соединений методов относительно кода NXT.

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

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

Инновации и оптимизации в кодовой базе PRIZM

  • новый алгоритм удаления устаревших записей из базы данных, задача делится на небольшие части, выполняется в другом порядке, прирост производительности измеряется несколькими числами
  • широко используется использование индексов для используемых столбцов базы данных, что ускоряет обработку запросов
  • постоянное значение, ограничивающее базовую цель, было заменено динамическим
  • создается зависимость базовой цели от текущей эмиссии, которая стабилизирует скорость генерации блоков в среде с переменным объемом монет PRIZM, участвующих в алгоритме PoS
  • переопределил алгоритм запроса транзакции из базы данных, в которую включен целевой адрес; новый алгоритм ограничивает количество условий и объем считываемых данных, что благоприятно влияет на производительность
  • новый механизм сканирования блокчейна по расписанию из блока GENESIS;
  • новый механизм проверки блоков перед реальной обработкой данных
  • дополнительная проверка транзакций перед реальной обработкой данных
  • максимальный размер транзакции уменьшен на 85% до 1,5 КБ
  • новый механизм проверки неподтвержденных транзакций в базе данных, который запускается при запуске узла
  • новый алгоритм проверки необработанных байтов транзакций
  • новый механизм создания самозаверяющего SSL-сертификата
  • Повторно реализованные запросы к базе данных, количество условий и объем запрашиваемых данных ограничены.
  • новый механизм шифрования SSL с использованием внутренних инструментов хоста
  • новый механизм динамических колебаний базовой цели

Выводы

  • Средняя пропускная способность блока значительно увеличилась; пропускная способность сети увеличилась пропорционально изменению максимального размера транзакции на 85%
  • Производительность процесса загрузки блокчейна и скорость обработки устаревших данных увеличилась во множестве значений, увеличив общую максимальную отказоустойчивость системы в долгосрочной перспективе.
  • Замененные механизмы для работы с базой данных привели к многократному сокращению задержки при обработке запросов API и P2P, многократному сокращению времени проверки блоков и сканирования цепочки блоков
  • PRIZM более продуктивен и надежен в долгосрочной перспективе, чем NXT
  • Ядро PRIZM способно обрабатывать больше данных без значительного снижения производительности.
  • Безопасность системы повышается за счет нескольких дополнительных проверок, которые не оказывают заметного влияния на производительность
  • Перед началом фактической обработки данных выполняется ряд новых проверок и проверок, что исключает возможность преднамеренной перегрузки узла при бесполезной обработке данных, снижает нагрузку на дисковые и сетевые подсистемы.
  • Механизм автоматического создания сертификата SSL позволяет пользователям немедленно начать использовать хост, на котором они начали, используя общепринятый протокол шифрования данных HTTPS, что особенно важно для подделки адресов, потому что для запуска процесса создания блоков необходимо передать парольную фразу адреса стороне хоста через Интернет (для создания цифровых подписей блоков).

Сonclusions

  • PRIZM в 10 раз быстрее первого подтверждения транзакции и попал в блокчейн
  • Призма имеет в 5 раз более быстрое приобретение транзакции необратимого статуса
  • Чтобы объявить транзакцию необратимой, требуется больше блоков, но высокая скорость создания блоков означает, что через 10 минут транзакцию можно считать необратимой. Это отличный результат для оплаты товаров и услуг за счет сокращения времени транзакции.
  • Более динамичный темп роста
  • Максимальная ставка за год намного выше, чем у Биткойна, что указывает на позитивные перспективы дальнейшего роста.
  • Значительно более выгодные комиссии
  • Небольшие комиссии минимизируют потери при перераспределении средств между контролируемыми адресами и оплатой товаров и услуг, способствуют дальнейшему росту популярности криптовалют.
  • Активность пользователей PRIZM составляет более трети активности пользователей Биткойн, что является достойным результатом, учитывая, что PRIZM почти на десять лет моложе Биткойн.
  • Перспектива финансовой выгоды от торговли превосходит биткойны

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

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

Прогноз

ПРИЗМ позиционируется как криптовалютная платежная система. Он не обещает распределенные приложения, умные контракты или токены, но предоставляет инструменты для создания различных надстроек на его основе. Ядро PRIZM выполняет то, что обещает, но хорошо.

Ядро поддерживает расширение с помощью надстроек, что позволяет расширять функциональность API и интегрировать ядро ​​со сложными аналитическими инструментами, не внося изменений в исходный код и не перекомпилируя ядро; дополнения обеспечивают полный доступ к событиям блокчейна в реальном времени. Функциональность, полученная с помощью надстроек, не теряет работоспособность при обновлении версии ядра PRIZM.

Уровень оптимизации производительности и безопасности узлов показывает, что кодовая база регулярно обновляется и поддерживается; Разработчики регулярно проводят анализ производительности и вносят соответствующие изменения. Система находится в хорошем техническом состоянии и может функционировать десятилетиями.

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