Lic Decoder

Web-утилита для извлечения регистрационных данных из файлов лицензий 1С:Предприятие (.lic). Позволяет восстановить PIN-код, данные владельца и другую информацию, если файл LicData.txt был утерян.

Запуск через Docker

  1. Задайте секрет JWT в .env или напрямую в docker-compose.yml:
echo "JWT_SECRET=your-strong-random-secret" > .env
  1. Запустите:
docker compose up -d

Приложение будет доступно на http://localhost:3080.

Переменные окружения

Переменная По умолчанию Описание
JWT_SECRET change-me-to-a-strong-secret Секрет для подписи/проверки JWT
PORT 3000 Порт внутри контейнера
UPLOAD_DIR /tmp/lic-decoder-uploads Директория для загрузок
TMP_BASE /tmp/lic-decoder Базовая директория временных файлов
RING_CMD ring Путь к команде ring

Rate Limits

Без JWT-токена: 3 декодирования в час на один IP-адрес. IP берётся из заголовков реверс-прокси (X-Forwarded-For).

С валидным JWT-токеном в заголовке Authorization: Bearer <token> лимит снимается.

Генерация JWT-токена

JWT_SECRET="your-strong-random-secret" node -e "
  const jwt = require('jsonwebtoken');
  console.log(jwt.sign({}, process.env.JWT_SECRET, { expiresIn: '30d' }));
"

API

Полная документация: API.md

Кратко

Метод Путь Описание Auth Rate Limit
GET /api/status Проверка готовности системы нет нет
POST /api/decode Декодирование .lic файла опц. 3/час*
GET /api/docs API документация (JSON) нет нет

* без JWT; с JWT — без лимита

Примеры

# Проверка статуса
curl http://localhost:3080/api/status

# Декодирование (без JWT — считается в rate limit)
curl -F "license=@license.lic" http://localhost:3080/api/decode

# Декодирование (с JWT — без rate limit)
curl -H "Authorization: Bearer <your-token>" \
     -F "license=@license.lic" \
     http://localhost:3080/api/decode

# Подробный режим
curl -F "license=@license.lic" -F "detailed=true" http://localhost:3080/api/decode

Локальная установка (без Docker)

Необходимы:

  • JRE 11+
  • 1C:Enterprise License Tools (ring)
cd web
npm install
JWT_SECRET=your-secret npm run dev
Description
No description provided
Readme 99 MiB
Languages
JavaScript 41.1%
HTML 40.8%
Shell 15.5%
Dockerfile 2.6%