Coinbase опубликовал библиотеку распределённых криптоалгоритмов Kryptology

Kate

Administrator
Команда форума
Компания Coinbase, поддерживающая одноимённую платформу обмена цифровых валют, объявила об открытии исходных текстов криптографической библиотеки Kryptology, предлагающей набор криптографических алгоритмов для применения в распределённых системах, в которых шифрование и подтверждение подлинности осуществляется с привлечением нескольких участников. Код написан на языке Go и распространяется под лицензией Apache 2.0.

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

Библиотеке включает в себя:

  • Реализацию схемы разделения секрета Шамира, позволяющую разделить секретное сообщение между N-сторонами, так что любые K сторон (K ≤ N) могут совместно восстановить полное сообщение, но данных от K-1 сторон недостаточно для получения каких-либо сведений о исходном сообщении. В качестве практического применения метода упоминаются системы многопользовательской авторизации, в которых для получения доступа необходимо присутствие определённого числа людей, а каждый по отдельности не может пройти авторизацию, а также биометрические системы аутентификации.

  • Пороговые реализации алгоритма создания цифровой подписи ECDSA (Elliptic Curve Digital Signature Algorithm) - GG20 и DKLs18, предлагающие схемы разделения закрытого ключа для совместного формирования цифровых подписей, требующие участия в процессе создания подписи определённого минимального числа обладателей совместного ключа.
  • Средства для распределённой генерации ключей BLS DKG и ed25119 DKG, позволяющие разделить вычисления, проводимые для формирования открытого и закрытого ключей, между несколькими сторонами, так, что ключи могут быть сгенерированы только при совместной работе, никакая из сторон не имеет доступа к закрытым ключам, и компрометация одной из сторон не угрожает всей системе.
  • Реализация алгоритмов верифицируемой криптографии Camshoup и ElGamal, решающих задачу подтверждения того, что переданный шифротекст был зашифрован заданным открытым ключом, без предоставления ключа для расшифровки.
 
Сверху