Обновить
16K+
-2
Васильев Сергей@Miller83read⁠-⁠only

Пользователь

-3
Рейтинг
2
Подписчики
Отправить сообщение

Да, написал вам - больше комментаторов тут нету ) Зафиксировал правку отдельным комментарием, не сообразил про уведомление. Согласен, параметрический тест тут в точку

UPD: поправил — sign_data теперь RSA-PSS, тест в статье обновлён. Спасибо за замечание про PKCS1v15-подпись в тесте

Про типы согласен. Для padding и cipher suite “parse, don’t validate” работает. AllowedSigAlg вместо строки, плохих вариантов нет на входе. Ваш mycrypto.py ровно это делает, и для Python это хороший паттерн.

Но вы сами написали где типы заканчиваются: качество RNG, revocation, nonce после рестарта. Вот тут контракты и живут. DRBG.seeded == true, reseed_counter < max_requests, entropy прошла health check. Это не тип, это runtime-инвариант. Его надо зафиксировать явно, иначе он только в голове.

Про тест. Да, в статье упрощённый пример. В репо sign_data использует PKCS1v15 для RSA, можно глянуть crypto_engine.py. X.509 экосистема пока на PKCS1v15, PSS для сертификатов поддерживается, но на практике ломает совместимость. В статье контракт описывает как должно быть, в репо пока компромисс с экосистемой. Надо было написать это явно в статье. Поправлю в репо.

В целом “make illegal states impossible” и DbC не конкурируют. Первое про форму данных на входе, второе про поведение на стыках. Оба нужны.

Сталкивался с таким. модель вызвала tool которого не было в whitelist.. Но он существовал в runtime. По сути это confused deputy problem из классической ИБ. Решение явный allowlist на уровне middleware до исполнения а не в промпте

Интересная техника. Но есть нюанс: callback injection через EnumWindows/EnumChildWindows работает только пока Defender не обновит сигнатуры на конкретный callback-вектор. Microsoft обычно закрывает такие штуки за 2-3 недели после публичного disclosure. Вопрос: вы тестировали на актуальных базах Defender (апрель 2026)? Потому что половина подобных техник из 2024-2025 уже не проходит

В статье не хватает одного момента. Firewall на входе/выходе ловит то что можно классифицировать по паттерну. Но indirect prompt injection через данные? Скрытый текст в PDF который модель читает cовсем другой вектор. firewall на уровне промпта его не поймает. Нужна санитизация данных до попадания в контекст. Meta выпустила LlamaFirewall там есть отдельный модуль этого

Крутая история. “Компилятор в голове” - точное название.

У меня первый код был на Бейсике, в тетрадке. Потом 10 лет в геймдеве - там тоже часто рисовал архитектуру на бумаге, прежде чем открыть IDE. Сейчас embedded: прошивки для микроконтроллеров, Linux на ARM-платах, паяльник на столе рядом с клавиатурой.

И знаешь что забавно - принцип “записал на бумажке, чтобы не забыть” никуда не делся. Только теперь я записываю не теги, а архитектурные решения в markdown-файлы, потому что AI-агент между сессиями всё забывает. По сути тот же бумажный бэкап, только для нейросети.

Твой листок в клетку - это и есть настоящий фундамент. Инструменты приходят и уходят, а привычка думать до того как писать - остаётся. Держи темп.

Информация

В рейтинге
Не участвует
Откуда
Москва и Московская обл., Россия
Зарегистрирован
Активность

Специализация

Фулстек разработчик, Архитектор программного обеспечения
Linux
C++
C
C#
ООП
Git
Bash
CI/CD