Аудит: пункт 2 решён селективным garble (пакет fsql)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Q4YVo4UMopqT5DzicqpPjL
This commit is contained in:
@@ -160,3 +160,20 @@ garble не видит, т.к. `Execute` принимает `any`).
|
||||
|
||||
Тулчейн go1.26.8 и garble установлены в `~/sdk` и `~/go/bin` — если выберете B,
|
||||
среда готова.
|
||||
|
||||
### Пункт 2 — РЕШЕНО через селективный garble (коммит 7ce4c2c)
|
||||
Прямой garble ломает html/template, но `GOGARBLE` позволяет обфусцировать
|
||||
только выбранный пакет. Весь чувствительный SQL (95 запросов к DEPO/SPECTRE/
|
||||
QUIK и таблицам FTV_M2M) вынесен в `internal/lkgateway/fsql` как `var`-строки
|
||||
(не const — иначе компилятор инлайнит их обратно в необфусцируемый код).
|
||||
`build-release.sh` собирает bj-server c `GOGARBLE=.../fsql garble -literals`
|
||||
(нужен SDK go1.26 в `~/sdk/go1.26.8` + garble в `~/go/bin`; иначе обычная
|
||||
сборка с предупреждением). Шаблоны/обработчики не затронуты.
|
||||
|
||||
Проверено на garble-бинаре: рецепт чтения чужих систем из бинаря исчез —
|
||||
`OD_RESTS`, `OD_WIRING`, `OD_TURNS`, `OD_BALANCES`, `D_B_CONTRACTS`,
|
||||
`OD_CLIENTS_PORTS`, `DepoLimits`, `MoneyLimits` → 0. Приложение работает.
|
||||
|
||||
Остаётся сделать при желании (тем же приёмом fsql-var): format-строки и
|
||||
логи с именами FTV_M2M (протокол Fancy — видно, что таблицы есть, но не
|
||||
рецепт), и вынести имена таблиц из операторских embed-шаблонов справки.
|
||||
|
||||
Reference in New Issue
Block a user