Skip to content
docs.
WORKSPACE

Your documentation

Explore the project catalog
Localzet ServerАсинхронный PHP-серверTriangleФреймворк и компонентыMIX IDИдентификация и интеграцииHack APIПубличные API хакатонаACNПроект и компонентыUserlay / UserNetПроект и компонентыAxiomПроект и компонентыМесседжинг через почтуПроект и компонентыLWT / JWT / JOSEПроект и компоненты✓Финансовая аналитика KimaiПроект и компонентыМультипарадигмальная БДПроект и компонентыZorin PlatformПроект и компонентыZorin TrustПроект и компонентыFloraScope / VegwatchПроект и компонентыaegis-qДокументация проектаaevumdbДокументация проектаauditДокументация проектаauto-invest-managerАвтотрейдерcaine-companionДокументация проектаcertbot-cloudflareДокументация проектаClusterLocalzet Server / ClustercmdveilДокументация проектаConsolePHP CLICronБиблиотеки Localzet Serverdata-connectorДокументация проектаdevice-controlDevice Controlenn-projectДокументация проектаEventsБиблиотеки Localzet ServerflowsintДокументация проектаforgeДокументация проектаHttpClientБиблиотеки Localzet ServerinterpreterСобственный языкinvariaДокументация проектаkeynotesДокументация проектаknotrouteKnotroutelaravel-personal-analyticsДокументация проектаlocalzet-osДокументация проектаmeridianДокументация проектаMQTTБиблиотеки Localzet Servernano-kernelСобственная ОСNoterДокументация проектаpersonal-analyticsДокументация проектаProxyБиблиотеки Localzet ServerPSRБиблиотеки Localzet ServerPSR-7Библиотеки Localzet Serverrschs-monitorДокументация проектаsemsealДокументация проектаshardsealДокументация проектаSocketIOБиблиотеки Localzet ServerSOCKS5Библиотеки Localzet Serverstandalone-analyticsДокументация проектаstatic-php-cliДокументация проектаStorageБиблиотеки Localzet ServersutureДокументация проектаtempoweaveДокументация проектаttsСинтез речиTunnelБиблиотеки Localzet Serverui-kitUI KitvesperДокументация проектаWebAnalyzerWebAnalyzerzorin-access-brokerДокументация проектаzorin-authority-brokerДокументация проектаzorin-authority-sdk-phpДокументация проектаzorin-authority-sdk-pythonДокументация проектаzorin-authority-sdk-tsДокументация проектаzorin-client-intelДокументация проектаzorin-device-core-aospДокументация проектаzorin-host-agentДокументация проектаzorin-native-labДокументация проектаzorin-nodeДокументация проектаzorin-opsДокументация проектаdonstu-python-sdkДокументация проектаfloortraceFloortraceserver-rsLocalzet Server / Cluster
Catalog
Documentation/LWT / JWT / JOSE

jwt-lab

Экспериментальный CLI для выпуска и проверки JWT на Rust. Это продолжение исследований JWT/LWT: JWT, LWT, localzet-jose. Общий topic: localzet-tokens.

CLI использует jsonwebtoken и разрешает только HS256. verify проверяет подпись, exp без дополнительного временного допуска и издателя jwtgate. inspect выводит недоверенные данные, не проверяет подпись и явно предупреждает об этом. LWT-обёртка пока не реализована; перечисления алгоритмов в черновых модулях не означают поддержку этих алгоритмов CLI.

Окно терминала
cargo test --locked --all-targets
cargo build --locked --release
./target/release/jwt-lab --key /secure/path/jwtgate.key init
./target/release/jwt-lab --key /secure/path/jwtgate.key issue --sub alice --ttl 3600 --role reader
./target/release/jwt-lab --key /secure/path/jwtgate.key verify '<token>'
./target/release/jwt-lab inspect '<token>'

init создаёт случайный 256-битный ключ и никогда не перезаписывает существующий файл. На Unix запрашиваются права 0600; размещайте ключ на файловой системе, которая поддерживает эти права. На Windows настройте ACL каталога ключей. Ключи исключены из Git. Аргументы токена могут попадать в историю оболочки: используйте демонстрационные токены при ручном запуске.

Проверено на Rust 1.98.1. Четыре теста проверяют HMAC-вектор RFC 4231, выпуск/проверку, отказ для неверного ключа/алгоритма/издателя/просроченного токена и сохранение существующего ключа.

  • Определить формат и модель угроз LWT до реализации envelope.
  • Отделить и проверить экспериментальные модели JOSE: сейчас CLI их не использует.
  • Добавить отдельную политику аудитории и прикладных прав для интеграции в сервер.
  • Провести interoperability и fuzz-тесты перед использованием как инфраструктурного компонента.

Source · AGPL-3.0