paseto_dart 1.0.0
paseto_dart: ^1.0.0 copied to clipboard
Unofficial PASETO implementation for Dart
Примеры использования paseto_dart #
В этой директории содержатся примеры использования библиотеки paseto_dart для работы с токенами PASETO v4.
Запуск примеров #
Запустить примеры можно с помощью команды:
dart run example/название_файла.dart
Например:
dart run example/local_example.dart
Доступные примеры #
1. Шифрование и дешифрование (v4.local) #
Файл: local_example.dart
Демонстрирует:
- Создание секретного ключа
- Шифрование данных с помощью PASETO v4.local
- Дешифрование токена
- Проверку срока действия
2. Подпись и проверка подписи (v4.public) #
Файл: public_example.dart
Демонстрирует:
- Создание ключевой пары Ed25519
- Подписание данных с помощью PASETO v4.public
- Проверку подписи токена
- Демонстрацию защиты от попыток подделки токена
3. Использование футера (метаданных) #
Файл: footer_example.dart
Демонстрирует:
- Как добавлять метаданные в токены через футер
- Использование футера для хранения идентификатора ключа
- Чтение футера без необходимости дешифрования или проверки подписи
Важные концепции #
-
PASETO v4.local использует XChaCha20 для шифрования и BLAKE2b для MAC. Этот режим подходит для защиты чувствительных данных.
-
PASETO v4.public использует Ed25519 для подписи. Этот режим подходит для авторизации и проверки подлинности данных.
-
Футер позволяет хранить метаданные в открытом виде (не шифруются) и доступны без необходимости дешифрования или проверки подписи токена.
-
Implicit Assertions (неявные утверждения) добавляют дополнительную защиту, требуя дополнительные данные для проверки токена, которые не передаются в самом токене.