Files
drhider/History/code-fixes/2026-08-20-csv-out-of-zip.md
T

25 lines
1.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 2026-08-20 — КРИТИЧНО: mapping.csv (ключ расшифровки) убран из выходного ZIP (v0.0.56)
## Проблема (утечка секретных данных)
Выходной ZIP содержал `mapping.csv` — таблицу соответствия «оригинал → замена»,
т.е. ключ расшифровки (реальные ФИО/телефоны/ИНН ↔ токены). Если ZIP передать
третьему лицу — тот получал и обфусцированные файлы, и таблицу расшифровки.
CSV должен храниться/скачиваться ОТДЕЛЬНО от обфусцированных файлов.
## Фикс (drhider/builder.py `build_zip`)
- Убрана запись `mapping.csv` в архив. Теперь в ZIP — ТОЛЬКО обфусцированные файлы.
- Параметр `mapping_csv` сохранён в сигнатуре (для совместимости вызовов), но в
архив не пишется.
- CSV продолжает генерироваться (`build_mapping_csv`) и отдаваться отдельно
через `/api/csv/<sid>` (кнопка «Скачать CSV»), как написано на странице.
## Тесты (tests/test_builder.py)
- Блок «ZIP с mapping.csv» переписан: теперь проверяет, что mapping.csv НЕ в архиве.
- Интеграционный блок: ZIP содержит только doc.md, CSV проверяется отдельной строкой.
- Все 106 тестов OK.
## Проверка
- python3 tests/test_builder.py — 20/20 OK (включая новый сценарий «mapping не в zip»).
- Остальные тесты — без изменений поведения, OK.
- VERSION 0.0.56.