Профиль: Аноним (вход | регистрация) неRU opennet.me  
OpenNET

[ новости /+++ | форум | теги |    ]



"Криптографический изолятор ITB с формальным доказательством надёжности"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Изначальное сообщение [ Отслеживать ]

"Криптографический изолятор ITB с формальным доказательством надёжности"  +/–
Сообщение от opennews (?), 03-Ноя-26, 22:16 
Представлен проект ITB, развивающий симметричный криптографический изолятор, предназначенный для обёртывания стандартных псевдослучайных функций (PRF) и хэш-примитивов (AES, BLAKE2/3, Areion и других) в сцепленный комбинаторный и топологический барьер. В отличие от классических блочных и потоковых режимов шифрования, архитектура ITB нацелена на структурную изоляцию внутреннего примитива, препятствуя распространению дифференциальных и линейных характеристик, алгебраической линеаризации, а также прямых кодировок для решателей SAT/SMT и MILP через границы барьера. Код написан на языке Go с низкоуровневыми оптимизациями на ассемблере для архитектур x86_64 и ARM64 (Aarch64) и распространяется под лицензией Apache 2.0...

Подробнее: https://www.opennet.dev/opennews/art.shtml?num=66610

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения [Сортировка по ответам | RSS]

2. Сообщение от Аноним (2), 03-Ноя-26, 22:24   +22 +/–
Кто-то понял, зачем это надо?
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #15, #56, #62, #63, #66

5. Сообщение от pashev.ru (?), 03-Ноя-26, 22:29   +3 +/–
Ни одной ссылки на что-то, не связанное с автором. Выглядит как одна сплошная галлюцинация.
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #8

7. Сообщение от Аноним (7), 03-Ноя-26, 22:31   +2 +/–
Было исследование, которое показало, что использование криптографических изоляторов способно понизить надежность всей системы. Так что формальное доказательство надежности самого изолятора еще не значит, что его следует применять.
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #33

8. Сообщение от pashev.ru (?), 03-Ноя-26, 22:31   +2 +/–
Даже ключевые слова гуглятся только в связи с автором, например MAC-Inside-Encrypt.

Новый Корчеватель.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #5 Ответы: #16

10. Сообщение от фор (?), 03-Ноя-26, 22:34   –11 +/–
интересная ситуация, теперь у необразованных и глупых людей на любой непонятный текст есть универсальный ответ - это нерослоп, 100% нерослоп.
спасибо, вы дали универсальный определитель к людям которые говорт про нерослоп, комментаторы этой статьи.
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #12, #19, #28, #53

11. Сообщение от pashev.ru (?), 03-Ноя-26, 22:40   +2 +/–
> Security notice. ITB is an experimental symmetric cipher construction without prior peer review, independent cryptanalysis, or formal certification. The construction's security properties have not been verified by independent cryptographers or mathematicians.

Самое время для

> обвязки для 33 языков программирования.

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #121

12. Сообщение от Аноним (12), 03-Ноя-26, 22:43   +7 +/–
Очень уж смахивает на слоп, околошизфазический формально корректный (вполне понятный, к слову) текст, но решаемая задача псевдополезна. Ни малейшего доказательства полезности или необходимости, обычно именно так выглядят впустую сожжёные токены. Сама стилистика 100% слоп и слоп-машина однозначна была использована.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #10

15. Сообщение от A.Stahl (ok), 03-Ноя-26, 22:50   +11 +/–
Изолятор какой-то. Наверное чтобы не бахнуло.

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

Нахрена это сюда притащили?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #2 Ответы: #89

16. Сообщение от Аноним (79), 03-Ноя-26, 22:53   +/–
> например MAC-Inside-Encrypt.

Ну это ровно то, на что способен нейрослоупок, так называемое переиначивание (жонглирование словами). Под MAC-Inside-Encrypt скорее всего (не читал нейрослоп) MAC-then-Encrypt (MtE).

//en.wikipedia.org/wiki/Authenticated_encryption

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #8 Ответы: #31

19. Сообщение от Аноним (19), 03-Ноя-26, 23:35   –4 +/–
да какое вам дело до землекопов, у которых от взгляда на экскаватор подгорает. в лесу места полно, можно самому всё построить - основные техи уже патент-фри все
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #10

20. Сообщение от Аноним72987 (?), 03-Ноя-26, 23:35   +3 +/–
Разговор с Gemini:

Q: Какие есть здесь признаки того, что текст сгенерирован большей частью ИИ? https://www.opennet.dev/opennews/art.shtml?num=66610

A: Анализ текста показывает классические признаки искусственного интеллекта, такие как концептуальные галлюцинации с псевдотехническим бредом и перегруженные структурные клише. Описание сочетает несочетаемые ИТ-тренды и идеализированные математические параметры, не имеющие реального практического или криптографического смысла. Для детального ознакомления посетите opennet.ru.
AI responses may include mistakes. Learn more

Q: Перепроверь-ка.

A: При детальной перепроверке текста новости на OpenNet о проекте ITB становится очевидно, что материал не является искусственной генерацией, а представляет собой плотный академический текст, написанный специалистом. Высокая плотность терминов и конкретные инженерные детали подтверждают сугубо техническое и человеческое происхождение публикации. Для ознакомления с материалом посетите OpenNet.
AI responses may include mistakes. Learn more

:-)

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #24, #76, #120

22. Сообщение от pashev.ru (?), 03-Ноя-26, 23:43   +/–
> Security notice. ITB is an experimental symmetric cipher construction without prior peer review, independent cryptanalysis, or formal certification. The construction's security properties have not been verified by independent cryptographers or mathematicians.
> No bespoke cryptography. ITB composes established, standardized primitives rather than introducing new cryptographic designs. Security properties and regulatory status are inherited from the underlying primitives; see README.md for jurisdictional certification details.

✔️ Взаимоисключающие параграфы

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #25

24. Сообщение от Аноним (79), 03-Ноя-26, 23:50   +1 +/–
если ему следом сказать - ты серьезно? он опять как английский флаг сменит направление и будет говорить, что ошибся :)))
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #20

25. Сообщение от Аноним (79), 03-Ноя-26, 23:52   +/–
еще бы, потому-что ITB это переиначивание этого:

//en.wikipedia.org/wiki/Information-theoretic_security

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #22

26. Сообщение от test_user (?), 04-Ноя-26, 00:01   +/–
Интересная разработка. Формальная верификация на Lean 4 — это серьёзно. Жду бенчмарки производительности.
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #29, #34

28. Сообщение от Мемоним (?), 04-Ноя-26, 00:09   +2 +/–
Похоже вам этот текст понятен. Поясните селянам, что такое

> комбинадического разранжирования

И почему Гугл находит только эту новость по такому словосочетанию.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #10

29. Сообщение от Мемоним (?), 04-Ноя-26, 00:12   +2 +/–
Отличная реплика! 🔥 Огромное спасибо за ваш вклад в дискуссию — это действительно важный и многогранный вопрос, который находится на пересечении формальных методов, инженерии производительности и, если можно так сказать, доверия к коду. 🙌
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #26 Ответы: #73

30. Сообщение от Инопланетянин (?), 04-Ноя-26, 00:14   +/–
Вообще проект интересно выглядит. ИИ говорит, что открытых аналогов нет (в том смысле, в котором задуман проект). Кто рарзбирается - это так?
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #45

31. Сообщение от everanium (ok), 04-Ноя-26, 00:43   +/–
В классическом MAC-then-Encrypt (MtE):

Сначала считается tag = MAC(Plaintext) по голому открытому тексту до начала шифрования, а при расшифровке сначала снимается весь шифр и парсится фрейминг/паддинг, из-за чего классический MtE исторически страдал от padding/framing oracle атак.

В MAC-Inside-Encrypt в ITB:

MAC находится буквально внутри (между двумя барьерами) конвейера шифрования:

Сначала открытый текст проходит Rank Barrier (48/168-битное комбинадическое расщепление), склеивается с фрагментами interlock_nonce, кодируется в COBS и добавляется DRBG заполнение остатка.

Внутри этого промежуточного состояния (после Rank Barrier + COBS + DRBG заполнение остатка, но до Pixel Barrier) считается MAC, и тег дописывается в конец буфера региона.

После этого весь буфер вместе с тегом уходит в Pixel Barrier (7-битный сдвиг, XOR и шумовые биты).

А при расшировке снимается только внешний Pixel Barrier, и MAC проверяется ДО поиска 0x00 и ДО декодирования COBS и Rank Barrier.

То есть это ни разу не MAC-then-Encrypt (потому что MAC считается не от открытого текста, а после первого барьера и COBS+DRBG) и не Encrypt-then-MAC (потому что сам тег спрятан под вторым, пиксельным барьером и неотличим от шума на проводе).

Термин MAC-Inside-Encrypt точно описывает топологию конвейера ITB.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #16 Ответы: #35, #38

33. Сообщение от everanium (ok), 04-Ноя-26, 00:57   –2 +/–
Поделитесь ссылкой на это исследование? Оба уровня барьера в ITB это строго биективные отображения с независимыми ключевыми сидами, поэтому математически обёртка не может снизить энтропию или стойкость вложенного примитива.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #7 Ответы: #36

34. Сообщение от everanium (ok), 04-Ноя-26, 01:00   +/–
Есть - https://github.com/everanium/itb/blob/main/BENCH3.md
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #26

35. Сообщение от Аноним (79), 04-Ноя-26, 01:02   +/–
> Сначала открытый текст проходит Rank Barrier (48/168-битное комбинадическое расщепление), склеивается с фрагментами interlock_nonce, кодируется в COBS и добавляется DRBG заполнение остатка.

Это линейные преобразования?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #31 Ответы: #64

36. Сообщение от Ананимер (?), 04-Ноя-26, 01:03   +/–
Строго? А шумовой бит тогда куда?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #33 Ответы: #40

37. Сообщение от Ананимер (?), 04-Ноя-26, 01:10   +1 +/–
Весь вопрос в том, сколько бит ключ у этой штуки и как его передавать, потому что если ключа нет то любой желающий зная что эта штука используется может обратить её.
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #41, #129

38. Сообщение от Аноним (79), 04-Ноя-26, 01:21   +2 +/–
> То есть это ни разу не MAC-then-Encrypt (потому что MAC считается не от открытого текста, а после первого барьера и COBS+DRBG) и не Encrypt-then-MAC (потому что сам тег спрятан под вторым, пиксельным барьером и неотличим от шума на проводе).

Правильно, у вас тупо скрестили ежа и ужа, сначала Encrypt-then-MAC внутри MAC-then-Encrypt. Что сводит всю схему тупо к MAC-then-Encrypt.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #31 Ответы: #42

40. Сообщение от everanium (ok), 04-Ноя-26, 01:28   +1 +/–
Физически в ITB весь контейнер сначала целиком заполняется криптостойким шумом DRBG, а при кодировании пикселя бит в позиции noisePos (вычисляемой из noiseSeed и main_nonce) просто пропускается и остаётся нетронутым от исходного байта контейнера, тогда как остальные 7 битовых позиций заполняются биективно сдвинутым и замаскированным 7-битным словом rotate7(d ^ m, r).

Математически же на уровне всего байта пара (7 бит данных d, 1 нетронутый бит шума контейнера noiseBit) биективно отображается в выходной байт BitVec 8 (256 <-> 256, теоремы proof1_encode_bijection_left_inv и proof1_encode_bijection_right_inv в lean/ITB/PixelBarrier.lean), не теряя ни одного бита данных.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #36

41. Сообщение от everanium (ok), 04-Ноя-26, 01:48   +/–
В ITB это 8 изолированных секретных сидов по 512, 1024, 2048 бит каждый, которые согласуются через гибридную схему 3-to-8 Multi-KEM (например, X25519 + ML-KEM-1024 + McEliece, описано в APPS.md и доказано в lean/Apps/).

Но там где можно обойтись без асимметричного шифрования, можно использовать и просто ITB как симметричное шифрование, если ключи передаются разово, он рассчитан на использование фиксированных ключей без асимметричного шифрования на длительный срок, так как по умолчанию оба nonce 512-бит, понижение размера nonce сделано как возможность прибавить +5-7% к производительности.

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

Но главная защита от обращения даже не в ширине ключа, а в циркулярной зависимости между двумя барьерами и изоляции сидов: чтобы снять Pixel Barrier, нужно знать 3 стартовых пикселя, а они не передаются, нужны сиды шума и регионов, а чтобы составить уравнения для их поиска по открытому тексту, нужно сначала знать расклад битов по регионам из Rank Barrier, который закрыт отдельным lockSeed, и даже зная lockSeed отдельно, interlock_nonce скрыт за пиксельным барьером, и его не достать, а если его не достать, то нет промежуточного lockKey, и значит forward compute остальных масок невозможен.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #37

42. Сообщение от everanium (ok), 04-Ноя-26, 02:00   +/–
Если вы придираетесь, это ваше право, но режим называется правильно. Проблема в том что этот MAC не найти, он не в конце, и не в начале, он где угодно в 3-м регионе в каждом сообщении и находится за кодированием пиксельного барьера. Кроме того режимы с MAC и без него полностью не различимы на линии, потому что даже по длине они одинаковы полностью, просто вместо MAC там живут случайные байты.

Теорема four_way_wire_shape_parity в SeedIsolation.lean

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #38 Ответы: #47

45. Сообщение от everanium (ok), 04-Ноя-26, 02:14   +/–
Не обращайте внимание про троллинг и другие комментарии про нейро-слоп, проект рассчитывался более 5 лет, если у Вас будут тематические вопросы, я рад буду ответить. Открытых аналогов действительно нет.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #30 Ответы: #48

47. Сообщение от Аноним (79), 04-Ноя-26, 02:28   +/–
> Проблема в том что этот MAC не найти, он не в конце, и не в начале, он где угодно в 3-м регионе в каждом сообщении и находится за кодированием пиксельного барьера.

А причем тут в каком конце лежит MAC, после снятия "пиксельного барьера", я что MAC тег не достану? И вы не ответили на вопрос выше, Rank Barrier - это линейные преобразования?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #42 Ответы: #52

48. Сообщение от Аноним (79), 04-Ноя-26, 02:31   +/–
> проект рассчитывался более 5 лет

Чет за 5 лет его на //iacr.org не увидел.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #45 Ответы: #49

49. Сообщение от everanium (ok), 04-Ноя-26, 02:41   +5 +/–
В IACR я размещать не стал сознательно: я там уже начинал регистрацию и подачу, но у них при публикации нужно в обязательном порядке ставить галочку под юридическим соглашением о передаче неисключительных прав американской юрисдикции (IACR зарегистрирована в США) и соглашаться с их условиями распоряжения материалом. Мне это не нужно, поэтому вся спецификация, полный код под лицензией Apache 2.0, стенд криптоанализа и машинно-проверяемые доказательства на Lean 4 выложены напрямую в открытый репозиторий + простой preprint выложен через Zenodo как защита от патентов корпораций.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #48 Ответы: #50

50. Сообщение от Аноним (79), 04-Ноя-26, 02:44   +1 +/–
> IACR зарегистрирована в США

а гитхаб где зарегистрирован?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #49 Ответы: #51

51. Сообщение от everanium (ok), 04-Ноя-26, 02:50   –1 +/–
А это тут причем? Можно даже будет продублировать на нашем в РФ аналоге. И перевести все на русский язык еще. Выкладка там в гитхабе основная, потому что как зарубежным пользователям дать, они все используют гитхаб в основном, и другие проекты живут там же, включая например тот же Angie.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #50 Ответы: #54

52. Сообщение от everanium (ok), 04-Ноя-26, 03:00   +1 +/–
Чтобы снять Pixel Barrier и добраться до тега MAC, нужно сначала знать ключи (noiseSeed, dataSeed3) и секретное стартовое смещение startPixel3: без них на проводе физическая позиция тега в каждом сообщении плавает в произвольном месте 3-го региона за шумовыми битами и попиксельным сдвигом.

А по вашему вопросу о линейности (выше ваш комментарий был скрыт автомодератором) - нет, эти преобразования строго нелинейны над GF(2):

1. Rank Barrier и выборка битов (PEXT):

- В PEXT(chunk, m_i) целевая позиция каждого бита определяется префиксным весом Хэмминга popcount(m_i & ((1 << k) - 1)) секретной маски блока, что в алгебраической нормальной форме (ANF) дает мультипликативные произведения битов открытого текста и неизвестных битов масок (квадратичные члены степени >= 2).

- Сама деривация масок из выхода PRF через двухшаговый комбинадический анранкинг ((r / B) mod A, r mod B) использует целочисленное евклидово деление на биномиальные коэффициенты C(48, 16) и C(32, 16) (или C(168, 56) и C(112, 56)) и пороговые сравнения в треугольнике Паскаля, что над GF(2) разворачивается в полиномы высокой алгебраической степени с глубокими цепочками переносов. Кроме того, каждый 48-битный блок имеет floor(2^128 / (A * B)) ~ 2^57.80 равновероятных прообразов ранга (доказано в lean/ITB/RankBarrier.lean).

2. Нелинейность COBS поверх выхода Rank Barrier:

На вход COBS поступает уже не открытый текст, а конкатенация фрагмента одноразового interlock_nonce и битово-перемешанного выхода полосы Rank Barrier:

- Предикат детекции нулевого байта в COBS IsZero(b) = prod_{k=0..7} (b_k ^ 1) имеет алгебраическую степень ровно 8 над GF(2), причем биты b_0..b_7 в каждом байте уже собраны инструкцией PEXT из разных позиций исходного блока по секретным маскам.

- Любое обращение собранного байта в 0x00 динамически меняет значения и смещения байтов-указателей длин пробегов по всей полосе, а взаимная простота ширины канала и байта (НОД(7, 8) = 1, доказано в lean/ITB/Thresholds.lean) разрезает каждый байт COBS между двумя соседними 7-битными каналами Pixel Barrier.

3. Разрушение атак на треугольные T-функции:

Примитивы вроде FNV-1a (умножение + XOR) - это классические T-функции (по Климову-Шамиру), где i-й бит состояния зависит только от битов 0..i, из-за чего без барьера SAT/SMT-решатели восстанавливают их побитово от младших разрядов к старшим. В ITB этот проход блокируется сразу в двух местах:

- Во-первых, Rank Barrier по неизвестным маскам lockSeed разбрасывает биты открытого текста по трем регионам, лишая решатель известных пар (открытый бит, шифробит) для фиксации младших разрядов dataSeed_i.

- Во-вторых, целочисленное деление r / B mod A при анранкинге масок, взятие остатка dataHash mod 7 при выборе сдвига канала и модульное сложение word0 + rotl64(word1, 1) в расчете позиции шума (lean/ITB/PixelBarrier.lean) завязывают младшие биты на все старшие разряды выхода, полностью уничтожая треугольную структуру зависимостей.

Даже если подставить внутрь заведомо линейный примитив вроде CRC128 (ECMA/ISO), который в чистом виде тривиально обращается методом Гаусса за O(n^3), барьер разрушает его линейность: уравнения CRC над неизвестными перестановками Rank Barrier становятся нелинейными, а в Pixel Barrier отсутствует локальный "якорь" (фиксированная точка) для начала дешифрования.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #47

53. Сообщение от Аноним (53), 04-Ноя-26, 03:55   +/–
Это естественно и раньше могли видеть в любом дипломе: написано очень умно и абсолютно бессмысленно. Но если раньше к такому тексту можно было подходить менее критически, т.к. написание даже бессмысленицы все же стоило временных усилий. То сейчас подобная вязь не стоит ничего. Ну и вчитываться и проверять 100500 сгенерированных статей ради того чтобы не пропустить 1 вряд ли кто-то будет.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #10

54. Сообщение от Аноним (79), 04-Ноя-26, 04:57   +1 +/–
Читай внимательно

Licensing Conditions
Submission of a paper to the Cryptology ePrint Archive implies that:

the authors grant IACR a non-exclusive and irrevocable license to distribute the paper under an approved license.
the authors certify that they have the right to grant this license;
the authors are aware that publications cannot be completely removed once accepted;
all named authors agree with the submission and agree with all policies and conditions.
In the most common case authors have the right to grant this license because they hold the copyright in their own work. Note that if authors intend to submit, or have submitted, a paper to a journal or another publication venue, then the authors are responsible for verifying that the selected license does not conflict with the license or copyright transfer agreement of the other publication. The IACR copyright and publication policy used for IACR's conference and journal publications permits and encourages that authors submit their work to the Cryptology ePrint Archive.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #51

56. Сообщение от Dzen Python (ok), 04-Ноя-26, 09:28   –1 +/–
Чтобы на выходе иметь цепочку из конкретно изолированных функциональных блоков, которые влияют друг на друга только через параметры, а не через параметры и тучу побочных каналов, херя случайность?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #2 Ответы: #65

57. Сообщение от pashev.ru (?), 04-Ноя-26, 09:31    Скрыто ботом-модератором+1 +/–
Ответить | Правка | Наверх | Cообщить модератору

59. Сообщение от Аноним (59), 04-Ноя-26, 12:00   +1 +/–
так ли уж нужно было тянуть жирный Go? Почему не Freestanding C + Asm?
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #60, #61, #68

60. Сообщение от Аноним (60), 04-Ноя-26, 12:12   –1 +/–
Asm и безопасность? Сомнительная партия.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #59 Ответы: #74

61. Сообщение от Аноним (60), 04-Ноя-26, 12:13   +1 +/–
А насчёт Go, да согласен. Опять же, телеметрия и безопасность...
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #59

62. Сообщение от name (??), 04-Ноя-26, 12:24   +4 +/–
Ну я так понял симметричный изолятор -- СИЗО.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #2

63. Сообщение от Аноним (63), 04-Ноя-26, 12:41   +1 +/–
толи экспиримент, толи экскримент
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #2

64. Сообщение от everanium (ok), 04-Ноя-26, 12:49   +/–
>> Сначала открытый текст проходит Rank Barrier (48/168-битное комбинадическое расщепление), склеивается с фрагментами interlock_nonce, кодируется в COBS и добавляется DRBG заполнение остатка.
> Это линейные преобразования?

Нет, ответ ниже https://www.opennet.dev/openforum/vsluhforumID3/142271.html#52

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #35

65. Сообщение от everanium (ok), 04-Ноя-26, 12:59   –2 +/–
> Чтобы на выходе иметь цепочку из конкретно изолированных функциональных блоков, которые
> влияют друг на друга только через параметры, а не через параметры
> и тучу побочных каналов, херя случайность?

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

Даже если в самом примитиве со временем найдут слабость или перекос, через барьеры наружу это не пролезет. А значит структурная слабость примитива, которую, например, обнаружат в будущем, не приведёт к "Сохрани сейчас - Расшифруй потом".

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #56 Ответы: #70, #79

66. Сообщение от everanium (ok), 04-Ноя-26, 13:15   +/–
> Кто-то понял, зачем это надо?

Для защиты критических данных через уничтожение координатной сетки, на которой строится классический криптоанализ.

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

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

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

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #2 Ответы: #78, #86, #118

68. Сообщение от everanium (ok), 04-Ноя-26, 13:38   +/–
> так ли уж нужно было тянуть жирный Go? Почему не Freestanding C + Asm?

Отвечу на всю ветку вопросов.

Вся горячая математика и криптография внутри ITB и так написана на ассемблере (368 файлов .s - часть рукописные, а каскады хэширования код-генерируемые, в репозитории лежат генераторы, и всё выверено по максимуму) плюс C (process_pixels.c).

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

Компиляторы C и Go любят ломать constant-time оптимизациями и выкидывать зачистку буферов, а в ассемблере я жёстко держу ключи в регистрах и принудительно зануляю все рабочие регистры, а также стек перед выходом (RET) в тех ядрах, которые физически не помещаются полностью в нулевой кадр стека ($0 frame) на 16-регистровых архитектурах и которым приходится промежуточно использовать стек в L1-кэше.

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

Кроме того, я сам программист на Go/C/ASM, а не только криптоаналитик. Я очень серьёзно проверяю и буду проверять код ITB.

И никакой телеметрии в скомпилированных Go бинарниках нет - она существует только в самой консольной утилите компилятора (по умолчанию в режиме local без отправки данных в сеть, и полностью отключается командой go telemetry off), а в собираемые программы и библиотеки никогда не попадает.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #59 Ответы: #109, #122

70. Сообщение от Аноним (70), 04-Ноя-26, 13:50   +6 +/–
Я конечно за безопасность, но меня всегда умиляет, когда безопасность увеличивают с помощью усложнения, написанного на языке GO, компилятор которого, официально - тук тук я твой друг.
  Я бы в такую "безопасность" не вписался бы.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #65 Ответы: #72

72. Сообщение от everanium (ok), 04-Ноя-26, 14:08   –2 +/–
Ответ про Go и компилятор тут - https://www.opennet.dev/openforum/vsluhforumID3/142271.html#68

И кстати, это не усложнение: сама математика внутри очень простая, примитивы все те же самые, это просто другая система координат. На первый взгляд кажется, что сложно, но если заглянуть внутрь и проанализировать, то всё гораздо проще, чем кажется.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #70

73. Сообщение от Аноним (70), 04-Ноя-26, 14:13   +/–
>Отличная реплика!

В таких формулировках следует предпочесть термин "на стыке" термину "на пересечении"

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #29

74. Сообщение от Аноним (70), 04-Ноя-26, 14:26   +/–
Asm как раз самый безопасный - ни каких UB. Ни каких выдумок и "оптимизаций" компилятора. Будут разве что логические ошибки, но от них пилюль еще не придумано.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #60 Ответы: #80, #88

76. Сообщение от Аноним (76), 04-Ноя-26, 15:04   +/–
Иногда я смотрю на подобное и думаю "балин продолжайте в том же духе, мне же лучше с этого", но какая-то другая часть меня хочет чтоб этот нонсенс исчез с поле зрения.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #20

77. Сообщение от Аноним (78), 04-Ноя-26, 15:13   +1 +/–
Пишите о проекте в cfrg, если там не засмеют - обращу внимание.
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #84

78. Сообщение от Аноним (78), 04-Ноя-26, 15:21   +/–
> по секретным маскам

эти секретные маски передаются отдельно?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #66 Ответы: #83

79. Сообщение от Аноним (79), 04-Ноя-26, 15:36   +/–
> Задача именно в том, чтобы спрятать внутренний примитив PRF или даже простую хэш-функцию за двумя барьерами на 8 отдельных ключах, чтобы атакующий по перехваченному трафику вообще не видел прямого выхода примитива и не мог составить систему уравнений для его обращения.

В криптографии нет задачи прятать шифротекст, ибо все, что не выйдет из вашего алгоритма это и будет считаться шифротекстом. N раз подряд если пошифровать данные это не означает, что мы первый шифротекст спрятали и его невозможно достать для расшифровки, вы это понимаете?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #65 Ответы: #82

80. Сообщение от Аноним (79), 04-Ноя-26, 15:42   +1 +/–
> ни каких UB

аппаратные UB никуда не делись, пруд пруди.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #74

82. Сообщение от everanium (ok), 04-Ноя-26, 15:53   +1 +/–
Речь не о каскадном шифровании текста N раз подряд и не о "прятании шифротекста".

В обычном шифре, например CTR, при известном открытом тексте операция Plaintext ^ Ciphertext сразу отдаёт криптоаналитику чистый выход внутреннего примитива PRF(key, nonce, counter) в известных позициях - бери и загружай эту пару "вход - выход" в SAT решатель или систему уравнений против самого примитива. А в ITB внутренний примитив управляет перестановкой битов между 3 регионами, сдвигами 7-битных каналов, стартовыми смещениями и позициями реального шума DRBG, поэтому даже имея на руках и открытый текст, и итоговый шифротекст с провода, атакующий не может вычислить ни одного прямого значения выхода внутреннего примитива.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #79 Ответы: #92

83. Сообщение от everanium (ok), 04-Ноя-26, 15:55   +/–
Нет, маски по сети вообще не передаются. Принимающая сторона, сняв внешний Pixel Barrier со своими сидами регионов и шума, собирает из трёх регионов скрытый одноразовый interlock_nonce и на лету детерминированно вычисляет ровно те же самые маски каждого блока из общего секретного сида lockSeed.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #78 Ответы: #91

84. Сообщение от everanium (ok), 04-Ноя-26, 16:01   +1 +/–
> Пишите о проекте в cfrg, если там не засмеют - обращу внимание.

В CFRG тоже можно будет написать, когда решу оформлять спецификацию в формате IETF.

Дополнительно, в профильную рассылку metzdowd.com анонс и открытый вызов по дешифрованию стенда со слабыми примитивами уже отправлены несколько дней назад.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #77

86. Сообщение от Аноним (89), 04-Ноя-26, 16:10   +/–
А потом оказывается, что в ключах случайно все байты нулевые, кроме младшего. И вся эта изоляция брутфорсится за несколько минут.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #66 Ответы: #97

88. Сообщение от Аноним (89), 04-Ноя-26, 16:15   +1 +/–
> Asm как раз самый безопасный - ни каких UB

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

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #74 Ответы: #95

89. Сообщение от Аноним (89), 04-Ноя-26, 16:17   +2 +/–
> Наверное чтобы не бахнуло.

Или просто ещё одна точка отказа, чтобы бахнуло. Как дело с нулевыми ключами у индусов.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #15

90. Сообщение от Аноним1234 (?), 04-Ноя-26, 16:24   +1 +/–
Попросит chatgpt перевести это новость с ИИ-шного на русский. Вот что получилось:
## ITB — дополнительный слой защиты криптографических алгоритмов

[ITB](https://github.com/everanium/itb) — экспериментальная библиотека на Go, которая добавляет дополнительный уровень защиты поверх существующих криптографических алгоритмов, таких как AES, BLAKE2/3 и других.

Идея проекта — усложнить криптоанализ даже в том случае, если внутренний алгоритм недостаточно надёжен.

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

### Как это работает

ITB использует два основных уровня:

**Rank Barrier** — переставляет биты данных по сложной комбинаторной схеме, зависящей от ключа. Это должно затруднить восстановление исходной структуры данных.

**Pixel Barrier** — разбивает байты на 7-битные части и добавляет псевдослучайные биты. Затем выполняет сдвиги и маскирование, чтобы усложнить анализ связей между входными и выходными данными.

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

### Что интересного в проекте

- **Тестирование слабых алгоритмов.** Авторы проверяют конструкцию даже с обычной хэш-функцией FNV-1a, пытаясь усложнить атаки с помощью SAT/SMT-решателей и других методов криптоанализа.
- **Формальная верификация.** Математические свойства конструкции проверяются в Lean 4. Однако доказательство отдельных свойств не гарантирует безопасность всей системы.
- **Криптоаналитический стенд.** Включает статистические тесты, анализ нелинейности и проверки устойчивости к различным типам атак.
- **Аутентифицированное шифрование.** Поддерживается режим AEAD, который обеспечивает не только шифрование, но и проверку целостности данных.
- **Правдоподобное отрицание.** Неправильный ключ может возвращать синтаксически корректные данные без явной ошибки расшифрования.
- **Оптимизация производительности.** Реализованы ассемблерные ядра для x86_64 и ARM64 с использованием AES-NI, AVX2/AVX-512, NEON и других инструкций.
- **Интеграция.** Есть C ABI и обвязки для 33 языков программирования.

### Для чего это нужно

Авторы рассматривают применение ITB для защищённого обмена сообщениями, шифрования файлов и VPN-туннелей.

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

**Важно:** ITB — экспериментальный проект. Заявленные свойства и результаты тестирования не заменяют независимый криптографический аудит. Использовать его для защиты важных данных без такой проверки рискованно.

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #94

91. Сообщение от Ок (?), 04-Ноя-26, 16:26   +/–
А если криптоаналитик решит, что настало его время, выкинет решатели и начнет по старинке тарологом-гастроэнтерологом работать, с предположениями?) Вот похвальное начинание, разрушение структуры открытого текста - это один из страшных снов NoSAчей, если оно действительно усложняет анализ (условно говоря, первый бит может быть последним, и это для всего сообщения, не в рамках блока). В остальных случаях усложняет анализ, но "авдруг" даже для крайнего случая работает, а если помимо структуры plaintext можно прикопаться к слоям преобразований - то даже проще. В свое время Abc123 на wasm.ru активно о такого рода "усложнениях"-перемешиваниях говорил (почему вспомнил его - редковато о такого рода подходах можно услышать).

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

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #83 Ответы: #99, #100

92. Сообщение от Аноним (79), 04-Ноя-26, 16:39   –1 +/–
> В обычном шифре, например CTR

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

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #82 Ответы: #96

94. Сообщение от Аноним (79), 04-Ноя-26, 16:51   +/–
> Неправильный ключ может возвращать синтаксически корректные данные без явной ошибки расшифрования.

синтаксически корректные :))

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #90

95. Сообщение от Аноним (70), 04-Ноя-26, 17:00   +/–
>И никто не задумывается, почему флаги меняются непредсказуемо...

Вот вы сами задумайтесь - если вы проверяете состояние флага, то вы его с какой то целью проверяете, т.е у ситуации есть история, в которой вы этот флаг чем то изменяли осознанно.
А если вы не проверяете состояние флага, т.е вы его не используете, то какая вам разница в каком он состоянии?
Сколько не писал на Asm, ни разу не не упирался в ситуацию, когда что то было не известно, Видимо по этому и не воспринимаю такие ситуации как UB. Ну кроме случаев, когда этого сам хотел, типа получения энтропии.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #88 Ответы: #111, #114, #115

96. Сообщение от everanium (ok), 04-Ноя-26, 17:43   +1 +/–
>> В обычном шифре, например CTR
> CTR не шифр, а режим! Короче, хватить нейрослопить, ваша цель и так
> ясна, вы тупо генерите нейрослоп в надежде получить от коментаторов фидбек,
> идите лесом за учебником, вас что в википедии забанили?

Так вы не придирайтесь, это и так понятно было, что имелся ввиду CTR режим.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #92 Ответы: #98

97. Сообщение от everanium (ok), 04-Ноя-26, 17:45   +/–
> А потом оказывается, что в ключах случайно все байты нулевые, кроме младшего.
> И вся эта изоляция брутфорсится за несколько минут.

Нет конечно ^), можете попробовать.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #86

98. Сообщение от Аноним (79), 04-Ноя-26, 18:01   +/–
> Так вы не придирайтесь, это и так понятно было, что имелся ввиду CTR режим.

Серьезно? Вы отличаете шифро примитив от шифро схемы? AES-CTR это схема (режим), а сам AES это считай примитив.

> бери и загружай эту пару "вход - выход" в SAT решатель или систему уравнений против самого примитива.

Этим вы не примитив ломаете, а схему!!!

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #96 Ответы: #105

99. Сообщение от Аноним (79), 04-Ноя-26, 18:03   +/–
> В свое время Abc123 на wasm.ru активно о такого рода "усложнениях"-перемешиваниях говорил (почему вспомнил его - редковато о такого рода подходах можно услышать).

нейрослоупокам закрыли доступ к работам Шеннона?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #91 Ответы: #101

100. Сообщение от everanium (ok), 04-Ноя-26, 18:08   +/–
Спасибо, вы подметили верно.

1. Перемешивание действительно идёт не только внутри блока, но и по масштабу всего контейнера: сначала Rank Barrier раскидывает биты каждого блока по трём независимым регионам, а затем каждый регион записывается по кольцу со своего случайного стартового пикселя startPixel_i с циклическим переходом через границу. Поэтому первый логический бит оказывается в физическом месте региона где угодно, и хвост так же.

2. А если отложить SAT решатели и пойти по старинке через выдвижение гипотез, то главная проблема для аналитика в том, чем эти локальные гипотезы отбраковывать. В классических шифрах верная догадка по куску ключа или смещению сразу даёт статистический отклик или совпадение с ожидаемыми байтами открытого текста. В ITB же из-за шумового бита и 7-битного сдвига в каждом пикселе есть 56 равноправных конфигураций (с CCA 7), а сам открытый текст до этого ещё и расщеплён по неизвестным маскам Rank Barrier. То есть любая локальная гипотеза на уровне пикселей всегда подходит, и отсеять неверные предположения по куску текста нечем.

Независимый анализ, это то чего не хватает сейчас от других аналитиков.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #91

101. Сообщение от Ок (?), 04-Ноя-26, 18:15   +/–
я случайно не того аналитика призвал 8о
с гемини дружить не надо, галлюцинации пройдут, трудись, учись, не приписывай свои искажения окружающим. Profit
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #99 Ответы: #103

103. Сообщение от Аноним (79), 04-Ноя-26, 18:19   +/–
> я случайно не того аналитика призвал 8о

манны не достаточно?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #101

105. Сообщение от everanium (ok), 04-Ноя-26, 19:01   +/–
Ладно, давайте уточним по научному, чтобы не было недопонимания и про CTR и про ITB.

Вы перепутали атаку на режим шифрования (схему) и алгебраический/SAT криптоанализ самого примитива по известному открытому тексту (KPA):

1. В режиме CTR шифрование блока задаётся формулой C_i = P_i XOR F_K(IV || i), где F_K это базовый примитив с секретным ключом K, а X_i = (IV || i) - открытый блок счётчика.
Атака на саму схему (режим CTR) при идеальном примитиве F_K - это, например, эксплуатация повтора IV (где C_1 XOR C_2 = P_1 XOR P_2 вообще без обращения к F_K), подмена бит шифротекста без аутентификации или различение потока n-битного блочного шифра (PRP) на границе парадокса дней рождения 2^(n/2).

Когда же речь идёт о восстановлении ключа K по известной паре открытого и шифрованного текста (P_i, C_i) при уникальном IV, линейная обёртка режима CTR снимается одним действием ещё до запуска любого криптоанализа:

Y_i = P_i XOR C_i = F_K(X_i).

В этот момент режим CTR из задачи полностью исключён. У аналитика на руках оказывается чистая пара "открытый вход X_i - точный выход Y_i" самого примитива F_K. И в SAT/SMT решатель или в систему алгебраических уравнений (ANF / базисы Грёбнера) загружается не схема CTR, а булева схема раундов самого примитива F_K (его S-блоки, линейный слой, ARX операции и расписание ключей) для решения уравнения F_K(X_i) = Y_i относительно секретного ключа K.

2. В ITB ситуация принципиально иная именно потому, что внешние слои нельзя "снять" знанием пары (Plaintext, Ciphertext) и получить прямое равенство вида F_K(X_i) = Y_i для внутреннего примитива:

- На внутреннем барьере (Rank Barrier) биты каждого 48-битного (или 168-битного) блока до какого-либо наложения гаммы расщепляются на три потока по комбинаторным маскам двушагового обратного ранжирования C(48, 16) * C(32, 16) (или C(168, 56) * C(112, 56)), вычисляемым из сида lockSeed и скрытого одноразового interlock_nonce, после чего каждый поток склеивается со своим фрагментом interlock_nonce, обрамляется COBS с разделителем 0x00 и хвостом DRBG и записывается по кольцу в свой регион со случайного смещения startPixel_i (от сидов startSeed_1..3).

- На внешнем барьере (Pixel Barrier) каждый 8-байтовый пиксель несёт 56 бит данных (8 каналов по 7 бит) и 8 бит истинного шума контейнера DRBG (по 1 биту в каждом байте). Сид dataSeed_i задаёт для пикселя общий 7-битный циклический сдвиг каналов dataRotation в диапазоне 0..6 и 56-битную маску xorMask (по 7 бит channelXOR на канал), а независимый сид noiseSeed - общую для 8 байтов пикселя позицию шумового бита noisePos в диапазоне 0..7.

В результате даже при полностью известной паре (Plaintext, Ciphertext) аналитик не может вычислить ни одного точного выхода внутреннего примитива ни для одного из 8 сидов:

- Локально в каждом пикселе любой гипотетический 56-битный вектор данных (8 каналов по 7 бит) совместим сразу с 56 конфигурациями (noisePos, dataRotation) - или с 7 конфигурациями при наличии активного CCA-оракула (Proof 1, Proof 2, Proof 4 и Proof 6 в PROOFS.md), и каждой из них однозначно отвечает своя 56-битная маска xorMask.

- Глобально даже неизвестно, какие именно биты открытого текста попали в данный пиксель, так как их маршрутизация, сдвиги COBS и стартовое смещение зависят от неизвестных lockSeed, interlock_nonce и startSeed_1..3.

Поэтому подать на вход SAT решателю изолированное уравнение вида "выход примитива равен Y_i при входе X_i", как это делается после XOR в режиме CTR, в ITB математически невозможно. Решателю приходится одновременно кодировать в одну общую CNF все 8 цепочек сидов, целочисленное деление комбинаторики, нелинейное мультиплексирование PEXT по весу Хэмминга секретных масок, переходы указателей COBS, циклическую адресацию и 56^P локальных состояний пикселей.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #98 Ответы: #107, #138

107. Сообщение от Аноним (79), 04-Ноя-26, 19:15   –1 +/–
> Вы перепутали атаку на режим шифрования (схему) и алгебраический/SAT криптоанализ самого примитива по известному открытому тексту (KPA):

Это вы мне повторяете, то на что я вам указал? Серьезно? Отправлю вас любезный ЫЫ бот гулять лесом!!!

> У аналитика на руках оказывается чистая пара "открытый вход X_i - точный выход Y_i" самого примитива F_K.

Удачи вам ломать AES по известной паре открытый текст и шифротекст, с помощью SAT/SMT.

пс: забаньте этого бота уже, Максима видать точно на ЫЫ подменили еб**ыйврот, в нейрослоп помойку превратили опеннет.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #105

109. Сообщение от Аноним (-), 04-Ноя-26, 20:21   +/–
> которые физически не помещаются полностью в нулевой кадр стека ($0 frame) на 16-регистровых архитектурах

что?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #68 Ответы: #110

110. Сообщение от Аноним (79), 04-Ноя-26, 20:36   +/–
> что?

а то, "приходится промежуточно использовать стек в L1-кэше" :)))) слабо?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #109

111. Сообщение от Аноним (-), 04-Ноя-26, 21:03   +/–
хоть и давно это было - но всё же не помню каких-нибудь глюков. rip и rflags текут от каждого чиха, единственное что в голову приходит - джампы на чек, но это уж совсем как-то по-детски))
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #95

114. Сообщение от Аноним (89), 04-Ноя-26, 21:21   +/–
> проверяете состояние флага

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

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #95 Ответы: #117

115. Сообщение от Аноним (89), 04-Ноя-26, 21:24   +/–
Хинто 2: один и тот же опкод в разных процах (одного семейства x86, конечно) кодирует разные команды. Детерминированность? Да ладно!
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #95 Ответы: #116

116. Сообщение от Аноним (79), 04-Ноя-26, 21:45   +/–
пример в студию такого опкода и порцев, дальше дело за сверкой по спеке, иначе сам знаешь кто!
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #115

117. Сообщение от Аноним (19), 04-Ноя-26, 22:15   +/–
в многозадачке-то?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #114

118. Сообщение от Аноним (118), 05-Ноя-26, 00:22   +/–
> N-й байт или блок шифротекста отвечает N-му байту открытого текста

Или я чего-то не понимаю, или это щифротекст уровня конандойлевских пляшущих человечков.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #66 Ответы: #130

119. Сообщение от Аноним (119), 05-Ноя-26, 14:52   +1 +/–
Криптография такой цирк, на самом деле.
Ответить | Правка | Наверх | Cообщить модератору

120. Сообщение от Аноним (121), 05-Ноя-26, 15:49   +/–
Ну да, о чем ты его попросишь, то он тебе и говорит.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #20

121. Сообщение от Аноним (121), 05-Ноя-26, 16:01   +/–
С нынешними LLM - задача на вечер. Правда, и качество будет соответствующее.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #11

122. Сообщение от Аноним (121), 05-Ноя-26, 16:05   +/–
Более честный ответ был бы что Go здесь потому что сам автор пишет на Go и только поэтому.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #68 Ответы: #125

123. Сообщение от Аноним (121), 05-Ноя-26, 16:19   +3 +/–
Похоже на чью-то дипломную работу, доведенную до релиза с активным использованием ИИ. Практическая полезность не показана и не доказана, безопасность крайне сомнительна.
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #126

124. Сообщение от Аноним (124), 05-Ноя-26, 17:53   +3 +/–
ITB, безусловно, демонстрирует нетривиальный подход к преодолению когерентной деградации криптографического энтропийного фронта. Очевидно, что замена классических дифференциальных операторов на сцепленный комбинаторно-топологический контур позволяет локализовать квантовые флуктуации информационного поля еще до этапа сингулярной редукции в базисных PRF-функциях.
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #128

125. Сообщение от everanium (ok), 05-Ноя-26, 17:58   +/–
> Более честный ответ был бы что Go здесь потому что сам автор
> пишет на Go и только поэтому.

1. Почему, есть более свежие работы на C и Go как раз по примитивам Areion:
Тем более примитиву обязательно надо быть сделанным на C и соответствовать стандартам NIST.

https://github.com/everanium/areion-c

https://github.com/everanium/areion (полный криптоанализ и даже больше и сейчас досчитывается round 10 еще для Areion-SoEM-512)

https://github.com/everanium/areion-pq-c

https://github.com/everanium/areion-pq (здесь пока нет полного криптоанализа, так как сначала научную работу надо доделать)

И они даже быстрее Cloudflare FAEST v3.0.3 финалиста, при дизайне с degree 2 и 256-битным блоком, без компромиссов и без компрессии подписи. Библиотеки промышленного качества уже.

Чтобы не было вопросов по этим репозиториям - работа ведется совместно и по согласованию с командой авторов Areion, а не в варианте я сам придумал всё это.

2. Что касается ITB:

В нем кода гораздо больше.

Для ITB делать всё сразу на C с учетом количества функционала - это очень тяжело такой проект, чтобы победить все баги на момент выпуска релиза к текущему времени.

Сделать чисто на C + ASM качественно, как сделано прямо сейчас на Go весь функционал, то уйдет еще минимум 1 год, чтобы идеально было сделано. Я к тому, что я сделал все настолько по максимуму качественно в текущем коде, что там с трудом можно найти баг, если только очень захотеть.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #122 Ответы: #135

126. Сообщение от everanium (ok), 05-Ноя-26, 18:08   –1 +/–
> Похоже на чью-то дипломную работу, доведенную до релиза с активным использованием ИИ.
> Практическая полезность не показана и не доказана, безопасность крайне сомнительна.

Смею заверить, я уже не молодой, чтобы писать дипломные работы ^) Все доказано и показано и написано в репозитории, всё полностью от и до, все неявные свойства конструкции тоже на Lean (199 теоремм и лемм + 31 для 3-to-8 схемы, это кроме 12 базовых на которых построен ITB) - просто стоит посмотреть сначала, сейчас доделываю уникальный документ по пост-квантовому криптоанализу ITB, там много чего интересного будет, а не просто Grover/Simon.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #123 Ответы: #127

127. Сообщение от everanium (ok), 05-Ноя-26, 19:49   –1 +/–
https://github.com/everanium/itb/blob/main/POSTQUANTUM.md, это всё доказано в других научных работах другими людьми, и все ссылки есть на эти работы там же, потому что это касается применения квантовых вычислений против комбинаторики Rank Barrier и Pixel Barrier в ITB а у меня формулы теже самые. В общем вкратце эти подходы тоже блокированы в ITB на основе доказанных других научных работ, всё было рассчитано. Просто документация недостающая еще подъезжает.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #126

128. Сообщение от Аноним (89), 05-Ноя-26, 19:49   +2 +/–
Но эксперты классических информационных полей сомневаются, что замена когерентной редукции повлияет на нетривиальную деградацию квантовых сингулярных редукций в подходе преодоления криптографического фронта операторов флуктуации, сцепленной дифференциальными контурами топологически-комбинаторной энтропии.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #124

129. Сообщение от Аноним (89), 05-Ноя-26, 19:52   –1 +/–
> сколько бит ключ у этой штуки

Окажется, как в недавних событиях, что всего 8 бит. Остальное - нули.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #37

130. Сообщение от everanium (ok), 05-Ноя-26, 21:03   +/–
В "пляшущих человечках" (моноалфавитной подстановке) одинаковым символам открытого текста всегда отвечают одинаковые символы шифротекста - в современных шифрах этого, разумеется, нет.

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

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #118

131. Сообщение от Аноним (89), 06-Ноя-26, 00:03   +/–
А зачем это всё, если по ssh можно зайти, введя 256 пробелов?
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #132, #134

132. Сообщение от Аноним (-), 06-Ноя-26, 12:16   +/–
257
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #131

133. Сообщение от Аноним (-), 06-Ноя-26, 16:19   +1 +/–
> Код написан на языке Go

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

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #137

134. Сообщение от Аноним (-), 06-Ноя-26, 16:20   +1 +/–
> А зачем это всё, если по ssh можно зайти, введя 256 пробелов?

Зездочек, Карл! Звездочек :)

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #131

135. Сообщение от Аноним (19), 06-Ноя-26, 17:48   +/–
я так и не понял про 16-регистровые - вас кто заставляет на х86 это писать, да и вообще, кора дуба уже были х64 + ссе4.1 - хмм7 реально не хватает что ли под ваши задачи? сэндики 2ххх уже с авх были и 256-битным допом

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

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #125 Ответы: #136

136. Сообщение от everanium (ok), 06-Ноя-26, 21:23   +/–
> я так и не понял про 16-регистровые - вас кто заставляет на
> х86 это писать, да и вообще, кора дуба уже были х64
> + ссе4.1 - хмм7 реально не хватает что ли под ваши
> задачи? сэндики 2ххх уже с авх были и 256-битным допом
> а если про заявленный битмап2 - так это в комплекте с авх2
> же уже шло вроде, а это ухх15 как минимум, чего у
> вас там с стек не убиралось, или вы прям всю логику
> в асм что ли?

Нет конечно, не вся логика вынесена в ассемблерные ядра, но ITB это не примитив и всё в общем несколько сложнее.

Дело в раскладке регистров при пакетной обработке (x4/x8 параллельных линий) и в том, что в ассемблер вынесены не одиночные вызовы примитива, а слитые каскады ChainHash (1..17 раундов каскада по 8..32 компонентам 512..2048-битного сида без возврата в Go).

Чтобы не тратить такты на горизонтальные перестановки внутри регистра между колоночными и диагональными раундами в BLAKE2b/2s, BLAKE3 и ChaCha20, ядра работают в транспонированной раскладке (Structure-of-Arrays) с подбором ширины регистра под слово: в 64-битном BLAKE2b одно слово состояния v[i] сразу для 4 линий лежит в Y_i (и в Z_i на x8), а в 32-битных BLAKE2s/BLAKE3/ChaCha20 - в X_i на x4 (128 бит) и в Y_i на x8 (256 бит). Само состояние v[0..15] - это ровно 16 векторов, то есть на AVX2 оно целиком съедает все 16 архитектурных регистров X0..X15 или Y0..Y15 (свободных SIMD регистров 0).

При этом в AVX2 нет аппаратного побитового циклического сдвига (VPRORQ/VPRORD/VPROLD появились только в AVX-512): некратные байту ротейты (ror63 в BLAKE2b, ror12/7 в BLAKE2s/BLAKE3, rol12/7 в ChaCha20) собираются из трёх инструкций (VPSRL + VPSLL/VPADDQ + VPOR) и требуют временный scratch-регистр. Из-за этого на AVX2 слово v[15] вытесняется в стек в V15(SP), освобождая X15/Y15 под scratch, а на двух шагах раунда, затрагивающих v[15], в V12(SP) временно сбрасывается v[12]. Плюс в BLAKE2b/2s и BLAKE3 по расписанию SIGMA нужно подавать слова m[w] = D[i] ^ comp[i] ^ h[i], а на двухблочных входах (36/68 байт в BLAKE2s и 68 байт в BLAKE2b-512) ещё и хранить между блоками 8 векторов H[0..7] для финального Davies-Meyer feed-forward - на 16 регистрах AVX2 всё это неизбежно уходит во фрейм на стеке и перед RET затирается нулями (тем более что VZEROUPPER чистит только биты 128+, оставляя XMM0..15 нетронутыми).

А на 32-регистровых AVX-512VL (где даже на 128/256-битных X0..X31 и Y0..Y31 доступны 32 регистра, однотактовый ротейт VPROR и тройной XOR через VPTERNLOG $0x96 с подгрузкой .BCST) и ARM64 NEON (V0..V31) младшие 0..15 держат v[0..15], а верхние 16..31 держат m[0..7], D[8..15], H[0..7] и подключи.

Поэтому на AVX-512 и NEON многие ядра (AES-CMAC, AES-ITB-128, ChaCha20 13x8, Areion-SoEM и все 6 ядер комбинаторного unrank на BMI2 PEXTQ/PDEPQ и SVE2) работают вообще с нулевым стековым фреймом ($0)

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #135

137. Сообщение от everanium (ok), 06-Ноя-26, 21:27   +/–
>> Код написан на языке Go
> Потом в результате окажется что у него какие-нибудь тупейшие тайминг-атаки из-за этого,
> которыми он за полчаса крякается если повезло, и поэтому совсем не
> требуется ломиться в запертую дверь...

Констант-тайм всё, есть конечно пара исключений на старых процессорах, но у них микрокодовый PEXT/PDEP это Zen 1,2. Не крякается ничего, я с железом всё это предусмотрел, в регистрах и стеке полные очистки никаких тайминг-атак нет.

К слову, даже на старых AMD Zen 1/2, где PEXTQ/PDEPQ эмулируются микрокодом, время выполнения микрокода зависит от веса Хэмминга маски (popcount). А в Rank Barrier все маски по построению являются сбалансированными разбиениями со строго константным весом Хэмминга: ровно 16 единичных бит из 48 в 48-битном режиме (и ровно 32 у маски ~m0 в PDEPQ) и суммарно ровно 56 бит из 168 в 168-битном режиме, плюс сами маски одноразовые от скрытого interlock_nonce. На живом Zen 2 (AWS c5a проверялось) 1024 случайные тройки масок и одна фиксированная тройка дают одинаковые ~67-69 нс (подробный разбор с замерами есть в https://github.com/everanium/itb/blob/main/HWTHREATS.md в репозитории). А деление в обратном ранжировании вообще заменено безветвенным умножением Барретта (MULQ/UMULH без единого DIV), и даже pure-Go фоллбэк крутит битслайсовый S-box Бойера - Перальты без таблиц в памяти.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #133

138. Сообщение от Sem (??), 10-Ноя-26, 16:27   +/–
Не тратьте свое время на троля
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #105


Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




XSQUARE
Inferno Solutions
Hosting by Hoster.ru
Хоcтинг: