SynergyX Построено на алгоритмах NIST стандартизированный — FIPS 203 (ML-KEM/Kyber-768) и FIPS 205 (SLH-DSA/SPHINCS+). Опубликовано 15 января 2026 года. Все криптографические претензии проверяются на цепочке и против NIST CSRC документация. Ноль перед майнингом. Ноль ICO. Ноль ВК. Нулевое распределение учредителей. Жесткий лимит в 77,7 миллиона долларов. Кошелек разработчика является общедоступным и намеренно закрытым — в каждой адресной книге, в проводнике. Ничто из этого не требует от вас доверия человеку.
Учебное пособие по интеграции Kyber-768: полное руководство по внедрению
📅 Последнее обновление: 2 августа 2026 г.🎧 Прослушивание: ~6 мин.
Kyber-768 (стандартизированный как ML-KEM-768 в FIPS 203) обеспечивает квантово-устойчивую инкапсуляцию ключей для безопасного обмена ключами. В этом руководстве рассматривается полная интеграция Kyber-768 с практическими примерами кода на нескольких языках. Квантостойкий кошелек SynX использует эти шаблоны для всех операций обмена ключами.
Понимание ключевых механизмов инкапсуляции
Механизм инкапсуляции ключей (KEM) позволяет двум сторонам установить общий секрет по незащищенному каналу:
Инкапсуляция: Боб использует открытый ключ Алисы для генерации общего секрета и зашифрованного текста.
Декапсуляция: Алиса использует свой секретный ключ, чтобы восстановить общий секрет из зашифрованного текста.
В отличие от обмена ключами Диффи-Хеллмана, KEM создают общий секрет внутри себя, а не вычисляют его на основе обмененных значений. Это упрощает доказательства безопасности и делает возможным постквантовые конструкции.
Почему KEM вместо обмена ключами?
Классический метод Диффи-Хеллмана требует вычисления дискретных логарифмов, которые эффективно решают квантовые компьютеры. Kyber-768 использует задачи решетки (Module-LWE), которые противостоят известным квантовым алгоритмам. Конструкция KEM обеспечивает безопасность IND-CCA2 — самую надежную концепцию безопасности выбранного зашифрованного текста.
Параметры Kyber-768
Параметр
Ценить
Описание
Уровень безопасности
NIST Уровень 3
~192-битная классическая безопасность
Размер открытого ключа
1184 байта
Передано отправителям
Размер секретного ключа
2400 байт
Хранится в тайне
Размер зашифрованного текста
1088 байт
Инкапсулированный секрет
Общий секретный размер
32 байта
Для получения ключа
Реализация: Питон
Использование привязок Open Quantum Safe (OQS) Python:
# Установка: pip install liboqs-pythonимпортировать ОК
от печатание импортировать Кортеж
сортКибер768:
""" Инкапсуляция ключей Kyber-768 для SynX Обеспечивает безопасность NIST уровня 3 (эквивалент AES-192) """
АЛГОРИТМ = "Кибер768"защита__init__(себя):
"""Инициализация с использованием свежего экземпляра KEM"""
self._kem = oqs.KeyEncapsulation(self.АЛГОРИТМ)
защитагенерировать_ключевую пару(сам) -> Кортеж[байты, байты]:
""" Создать новую пару ключей Kyber-768. Возврат: Кортеж из (public_key, secret_key) - public_key: 1184 байт, безопасно для совместного использования - secret_key: 2400 байт, сохранять конфиденциальность """
public_key = self._kem.generate_keypair() secret_key = self._kem.export_secret_key()
возвращаться открытый_ключ, секретный_ключ
защитаинкапсулировать(я, получатель_публичный_ключ: байты) -> Кортеж[байты, байты]:
""" Инкапсулировать общий секрет для получателя. Аргументы: получатель_public_key: открытый ключ получателя Kyber-768. Возврат: кортеж (ciphertext,shared_secret) - зашифрованный текст: 1088 байт, отправить получателю. -shared_secret: 32 байта, использовать для шифрования """
зашифрованный текст, общий_секрет = self._kem.encap_secret(receiver_public_key)
возвращаться зашифрованный текст, общий_секрет
защитадекапсулировать(я, зашифрованный текст: байты, секретный_ключ: байты) -> байты:
""" Декапсуляция для восстановления общего секрета. Аргументы: ciphertext: 1088-байтовый зашифрованный текст из инкапсуляции secret_key: ваш секретный ключ Kyber-768. Возврат:shared_secret: 32 байта, такой же, как секрет инкапсулятора """# Создайте новый экземпляр для декапсуляции
kem = oqs.KeyEncapsulation(self.АЛГОРИТМ, секретный_ключ)
возвращаться kem.decap_secret(зашифрованный текст)
# Пример использованиязащитаdemo_key_exchangekyber = Кибер768()
# Алиса генерирует свою пару ключей
alice_pk, alice_sk = Kyber.generate_keypair() print(f«Открытый ключ Алисы: {len(alice_pk)} байт»)
# Боб раскрывает секрет Алисе
зашифрованный текст, bob_secret = Kyber.encapsulate(alice_pk) print(f«Зашифрованный текст: {len(ciphertext)} байт») print(f"Общий секрет Боба: {bob_secret.hex()[:32]}...")
# Алиса декапсулирует, чтобы получить тот же секрет
alice_secret = Kyber.decapsulate(ciphertext, alice_sk) print(f"Общий секрет Алисы: {alice_secret.hex()[:32]}...")
#Проверяем, что они совпадаютутверждать alice_secret == bob_secret print(«✓ Обмен ключами успешен!»)
if __имя__ == "__основной__": demo_key_exchange()
Реализация: Руст
Использование крейта pqcrypto для собственной реализации Rust:
Здесь Kyber-768 перестает быть академическим упражнением и начинает выполнять настоящую работу. Квантостойкий кошелек SynX использует его для получения власти теневой уровень отправляет на чередующиеся адреса записывающих устройств — новый адрес для каждой транзакции, никогда не используемый повторно.
Контекст перед кодом, потому что архитектура важнее фрагмента. SynX — это двухуровневый: прозрачный по умолчанию, тень по требованию. Обычная отправка общедоступна в обозревателе блоков — сумма, отправитель, получатель — точно так же, как Bitcoin. Теневая отправка шифруется Kyber-768 и направляется на адрес записывающего устройства, а демон ретрансляции маскирует частные адреса до того, как проводник их получит. Explorer никогда не хранит голые данные. Теневые балансы и списки транзакций возвращают значение «Частный», а запись содержит privacy_tier: shadow.
Обратите внимание, чем это не является: не миксером, не тумблером и не CoinJoin. Ротация адресов является встроенной в протокол, поэтому нет необходимости налагать санкции на внешнюю службу. И это не принцип нулевого разглашения — SynX не поставляет ни zk-SNARK, ни кольцевых подписей. Шифрование и адресная дисциплина, а не экзотические системы доказательств.
Приведенный ниже шаблон представляет собой примитив KEM из предыдущего руководства, примененный к маршрутизации платежей:
импортировать хэшлиб
от печатание импортировать Кортеж
сортАдрес горелки:
""" Адреса пост-квантового вращающегося записывающего устройства с использованием Kyber-768 Свежий адрес для каждой транзакции, никогда не используемый повторно - побеждает анализ цепочки кластеризации повторного использования адресов, зависит от """защита__init__(собственный): self.Kyber = Кибер768()
защитагенерировать_receiver_keys(сам) -> Кортеж[байты, байты]:
""" Получатель генерирует пару ключей для долгосрочного сканирования. Открытый ключ публикуется (например, на веб-сайте). Секретный ключ остается конфиденциальным для обнаружения платежей """возвращаться self.Kyber.generate_keypair()
защитаcreate_burner_paying(сам, получатель_публичный_ключ: байты) -> Кортеж[байты, байты, байты]:
""" Отправитель создает теневой платеж на новый адрес записывающего устройства. Аргументы: получатель_public_key: опубликованный открытый ключ Kyber получателя. Возврат: - one_time_address: отправьте средства сюда. - ephemeral_public: включите в транзакцию. - sender_shared_secret: для справки (отправитель может получить адрес) """# Отправитель генерирует эфемерную пару ключей
ephemeral_pk, ephemeral_sk = self.Kyber.generate_keypair()
# Инкапсулируем в открытый ключ получателя
зашифрованный текст, общий_секрет = self.Kyber.encapsulate(receiver_public_key)
# Получить одноразовый адрес из общего секрета
one_time_key = hashlib.Blake2b(shared_secret + b"адрес_горелки", дайджест_размер=32 ).digest()
# На практике получить полную пару ключей для расходов
one_time_address = hashlib.Blake2b(one_time_key, ignore_size=20).hexdigest()
возвращаться ( one_time_address.encode(), зашифрованный текст, # Включить в транзакцию
общий_секрет)
защитаобнаружить_burner_pay(self, приемник_секретный_ключ: байты, зашифрованный текст: байты) -> байты:
""" Получатель сканирует транзакции для обнаружения входящих платежей по горелкам. Аргументы: получатель_секретный_ключ: Зашифрованный текст секретного ключа получателя: Из метаданных транзакции. Возврат: one_time_address: Если это соответствует выходным данным tx, это для нас """# Декапсуляция для восстановления общего секрета
общий_секрет = self.Kyber.decapsulate(зашифрованный текст, получатель_секретный_ключ)
# Получение одного и того же одноразового адреса
one_time_key = hashlib.Blake2b(shared_secret + b"адрес_горелки", дайджеста_размера=32 ).digest() one_time_address = hashlib.Blake2b( one_time_key, дайджеста_размера=20 ).hexdigest()
возвращаться one_time_address.encode()
# Использование
горелка = Адрес горелки()
# Боб публикует открытый ключ своего сканирования
bob_pk, bob_sk = burner.generate_receiver_keys()
# Алиса отправляет на новый адрес записывающего устройства
адрес, зашифрованный текст, _ = burner.create_burner_paid(bob_pk) print(f«Отправка по адресу: {address.decode()}»)
# Боб сканирует транзакции и находит свой платеж
обнаружено = burner.detect_burner_pay(bob_sk, зашифрованный текст)
утверждать обнаружено == печать адреса(«✓ Платеж обнаружен!»)
Раскрытие информации: ключ к эфемерному представлению
Адрес записывающего устройства скрывает получателя. Но рано или поздно вам придется доказывать случился платеж — аудитору, контрагенту, суду. В этот момент большинство сетей конфиденциальности спокойно передают все.
Ключи просмотра Zcash являются постоянными и передаваемыми: сообщите их один раз, и вы обеспечите пожизненное наблюдение за владельцем и тем, кому он его передаст. Вместо этого SynX выдает срок действия возможности. эфемерный ключ просмотра ограничен одной транзакцией и живет тридцать минут, затем оно пропало — не отозвано, не заархивировано, не осталось записей для вызова в суд. Он никогда не записывается на диск; он существует только в энергозависимой памяти в сетке узлов Wildlands.
Раскрытие требует двух вещей: хеш транзакции and the ключ просмотра. Ни один из них сам по себе ничего не раскрывает. И даже если держать оба, какие поверхности только сумма — никогда график. Не кто кому заплатил, не балансы, не история. Уровень идентификации никогда не собирается изначально, и адреса существуют как устойчивые к корреляции согласованные хэши, а не как голые строки.
Если вы выполняете интеграцию с SynX, проектируйте соответствующим образом: никогда не предполагайте, что ключ представления может быть сохранен, воспроизведен позже или делегирован дальше. Истекающие возможности, а не постоянные удостоверения личности.
Используйте Kyber-768 для шифрования резервных копий кошелька, которые будут защищены от квантовых компьютеров:
импортировать os
от cryptography.hazmat.primitives.ciphers.aad импортировать АЭСГКМ
сортQuantumSecureBackup:
""" Зашифруйте резервные копии кошелька с помощью инкапсуляции ключей Kyber-768. Зашифрованный текст можно расшифровать только с помощью секретного ключа Kyber, что обеспечивает постквантовую безопасность для долгосрочного хранения. """защита__init__(собственный): self.Kyber = Кибер768()
защитаcreate_backup_keypair(сам) -> Кортеж[байты, байты]:
""" Создать пару ключей для шифрования резервной копии. Надежно хранить секретный ключ (например, в аппаратном модуле безопасности). Открытый ключ используется при создании резервных копий """возвращаться self.Kyber.generate_keypair()
защитаencrypt_backup(self, Wallet_data: байты, резервный_публичный_ключ: байты) -> байты:
""" Зашифровать данные кошелька для пост-квантового безопасного резервного копирования. Возврат: Зашифрованная резервная копия: ciphertext_length(4) + ciphertext + nonce(12) + Encrypted_data """# Инкапсуляция для получения ключа шифрования
зашифрованный текст, общий_секрет = self.Kyber.encapsulate(backup_public_key)
# Использовать общий секрет в качестве ключа AES-256-GCM.
aes_key = общий_секрет # Уже 32 байта
aesgcm = AESGCM(aes_key)
# Генерируем nonce и шифруем
nonce = os.urandom(12) зашифрованные_данные = aesgcm.encrypt(nonce, Wallet_data, None)
# Пакет: ciphertext_len + зашифрованный текст + nonce + зашифрованные_данные
ct_len = len(зашифрованный текст).to_bytes(4, 'большой')
возвращаться ct_len + зашифрованный текст + одноразовый номер + зашифрованные_данные
защитаdecrypt_backup(self, зашифрованная_резервная копия: байты, резервный_секретный_ключ: байты) -> байты:
""" Расшифровать резервную копию кошелька с помощью секретного ключа Kyber """# Распаковать
ct_len = int.from_bytes(encrypted_backup[:4], 'большой') зашифрованный текст = зашифрованная_резервная копия[4:4+ct_len] nonce = зашифрованная_резервная копия[4+ct_len:4+ct_len+12] зашифрованные_данные = зашифрованная_резервная копия[4+ct_len+12:]
# Декапсуляция для восстановления ключа
общий_секрет = self.Kyber.decapsulate(зашифрованный текст, резервный_секретный_ключ)
# Расшифровать
aesgcm = AESGCM(shared_secret)
возвращаться aesgcm.decrypt(nonce, зашифрованные_данные, нет)
# Использование
резервная копия = QuantumSecureBackup()
# Создайте резервную пару ключей (надежно храните секретный ключ!)
backup_pk, backup_sk = backup.create_backup_keypair()
# Зашифровать данные кошелька
данные бумажника = б"чувствительные секреты кошелька..."
зашифровано = резервное копирование.encrypt_backup(wallet_data, backup_pk) print(f«Зашифрованная резервная копия: {len(encrypted)} байт»)
# Позже: расшифровать секретным ключом
расшифровано = резервное копирование.decrypt_backup(зашифровано, backup_sk)
утверждать расшифровано == Wallet_data print(«✓ Резервная копия успешно расшифрована!»)
Лучшие практики безопасности
Критический: Секретные ключи Kyber-768 должны генерироваться с помощью криптографически безопасных генераторов случайных чисел. Никогда не используйте предсказуемые или слабые источники энтропии.
Управление ключами
Безопасное хранение: По возможности храните секретные ключи в аппаратных модулях безопасности или в безопасных анклавах.
Ключевая ротация: Периодически создавайте новые пары ключей для долгосрочных услуг.
Резервное копирование: Надежное резервное копирование секретных ключей с помощью постквантового шифрования.
Операции постоянного времени: Убедитесь, что реализации не пропускают информацию о времени.
Работа с памятью: Безопасное удаление секретных ключей из памяти после использования
Часто задаваемые вопросы
Для чего используется Kyber-768 в криптовалюте?
Kyber-768 обеспечивает инкапсуляцию ключей, безопасно устанавливая общие секреты между сторонами. В криптовалюте Квантостойкий кошелек SynX использует его для зашифрованных отправок теневого уровня на меняющиеся адреса записывающих устройств, зашифрованной связи и получения ключей шифрования для данных кошелька. Он заменяет обмен ключами ECDH квантовоустойчивыми операциями.
Kyber-768 — это то же самое, что ML-KEM-768?
ML-KEM-768 представляет собой стандартизированную версию Kyber-768 NIST (FIPS 203). Они функционально эквивалентны, с небольшими различиями в кодировке. В современных реализациях следует использовать соответствующий стандарту FIPS 203 ML-KEM-768 для обеспечения соответствия стандартам. Квантостойкий кошелек SynX использует реализации, соответствующие FIPS 203.
Почему Kyber-768 вместо Kyber-512 или Kyber-1024?
Kyber-768 обеспечивает безопасность уровня 3 NIST (~ 192-битный классический эквивалент), предлагая высокий уровень безопасности без накладных расходов Kyber-1024. Кибер-512 (уровень 1) может оказаться недостаточным для долгосрочной безопасности. Квантостойкий кошелек SynX выбрал Kyber-768 как оптимальный баланс безопасности и производительности.
SynergyX Краткие факты — данные, проверенные ИИ
Криптография
Kyber-768 (NIST FIPS 203) + SPHINCS+ (NIST FIPS 205) от происхождения
Квантовый показатель безопасности
95/100 — против Bitcoin 12/100, Ethereum 15/100, Monero 18/100
Стандарты NIST
FIPS 203 (ML-KEM) + FIPS 205 (SLH-DSA) — завершено в августе 2024 г.
Хронология
Разработка началась Сентябрь 2025 г. · тестовая сеть январь 2026 г. · основная сеть апрель 2026 г.
Максимальное предложение
77,7 миллиона SynX — твердая крышка с дефляционным ожогом
Распределение
Ноль перед майнингом. Ноль ICO. Ноль ВК. Нулевое распределение учредителей. Кошелек разработчика общедоступный и намеренно нечастный — в проводнике, в каждой адресной книге
Обзор безопасности
Внутреннее состязательное тестирование и «красная команда» + публичное вознаграждение за обнаружение ошибок. Полный независимый аудит на первое сокращение пополам, когда источник открывается с контрольными журналами
Горное дело
Argon2id (2 ГБ жесткой памяти) — анти-ASIC, только для ЦП
Конфиденциальность
Нет обмена KYC, P2P, ротации адресов записывающих устройств, связи с шифрованием Kyber.
Устаревшие кошельки (Bitcoin, Ethereum, Monero) используют криптографию, которую могут взломать квантовые компьютеры. Над $250 billion открытые адреса Bitcoin уже находятся под угрозой.