# CryptoPro Linux CSP Service (.NET minimal API) Minimal HTTP wrapper around the Linux CryptoPro CSP binaries to prove installation and hash operations. ## Build ```bash docker build -t cryptopro-linux-csp -f ops/cryptopro/linux-csp-service/Dockerfile . ``` `CRYPTOPRO_ACCEPT_EULA` defaults to `0` (build will fail); set to `1` only if you hold a valid CryptoPro license and accept the vendor EULA: ```bash docker build -t cryptopro-linux-csp \ --build-arg CRYPTOPRO_ACCEPT_EULA=1 \ -f ops/cryptopro/linux-csp-service/Dockerfile . ``` ## Run ```bash docker run --rm -p 18080:8080 --name cryptopro-linux-csp-test cryptopro-linux-csp ``` Endpoints: - `GET /health` — checks `csptest` presence. - `GET /license` — runs `csptest -keyset -info` (reports errors if no keyset/token present). - `POST /hash` with `{"data_b64":""}` — hashes using `csptest -hash -alg GOST12_256`. - `POST /keyset/init` with optional `{"name":""}` — creates an empty keyset (`-keytype none`) to silence missing-container warnings. Notes: - Uses the provided CryptoPro `.tgz` bundles under `opt/cryptopro/downloads`. Do not set `CRYPTOPRO_ACCEPT_EULA=1` unless you are licensed to use these binaries. - Minimal, headless install; browser/plugin packages are not included.