# Безпека та автентифікація (Go) > JWT, OAuth2, керування сесіями, RBAC, crypto/rand vs math/rand, конфігурація TLS, безпечне кодування, найкращі практики безпеки - 24 питань зі співбесід - Senior - [Питання зі співбесід: Go](https://sharpskill.dev/uk/technologies/go/pytannia-spivbesidy.md) ## 1. У чому полягає основна різниця між токенами JWT і традиційними серверними сесіями? **Відповідь** Токени JWT є stateless (без стану на стороні сервера) і містять усю необхідну інформацію, закодовану в самому токені. На відміну від традиційних сесій, які зберігають дані в пам'яті або базі даних на стороні сервера, маючи лише session ID на стороні клієнта, JWT переносить відповідальність за зберігання на клієнта. Це полегшує горизонтальне масштабування, оскільки між серверами не потрібен спільний стан. ## 2. Які три частини токена JWT розділені крапками? **Відповідь** JWT складається з трьох частин, закодованих у Base64URL і розділених крапками: Header (алгоритм і тип), Payload (claims/дані) та Signature (перевірка цілісності). Структура має вигляд header.payload.signature. Header вказує алгоритм підпису (HS256, RS256), payload містить claims (iss, sub, exp), а signature гарантує, що токен не був змінений. ## 3. Який стандартний claim JWT визначає мітку часу закінчення терміну дії токена? **Відповідь** Claim 'exp' (expiration time) визначає мітку часу Unix, після якої токен більше не повинен прийматися. Стандартні claims також включають 'iss' (issuer), 'sub' (subject), 'aud' (audience), 'iat' (issued at) та 'nbf' (not before). Перевірка claim exp є критично важливою для обмеження терміну дії токенів і зменшення наслідків викрадення токена. ## Ще 21 доступних питань - У чому полягає основна різниця між HS256 і RS256 для підпису JWT? - Як відкликати JWT до його природного закінчення терміну дії? Зареєструйся безкоштовно: https://sharpskill.dev/uk/login ## Інші теми співбесід Go - [Основи Go](https://sharpskill.dev/uk/technologies/go/pytannia-spivbesidy/go-basics.md): 25 запитань, Junior - [Структури даних Go](https://sharpskill.dev/uk/technologies/go/pytannia-spivbesidy/go-data-structures.md): 20 запитань, Junior - [Інтерфейси Go](https://sharpskill.dev/uk/technologies/go/pytannia-spivbesidy/go-interfaces.md): 18 запитань, Junior - [Обробка помилок](https://sharpskill.dev/uk/technologies/go/pytannia-spivbesidy/error-handling.md): 20 запитань, Junior - [Основи goroutines](https://sharpskill.dev/uk/technologies/go/pytannia-spivbesidy/goroutines-basics.md): 20 запитань, Junior - [Channels](https://sharpskill.dev/uk/technologies/go/pytannia-spivbesidy/channels.md): 22 запитань, Junior - [Go Modules](https://sharpskill.dev/uk/technologies/go/pytannia-spivbesidy/go-modules.md): 18 запитань, Mid-Level - [HTTP-сервер](https://sharpskill.dev/uk/technologies/go/pytannia-spivbesidy/http-server.md): 24 запитань, Mid-Level - [HTTP-клієнт](https://sharpskill.dev/uk/technologies/go/pytannia-spivbesidy/http-client.md): 18 запитань, Mid-Level - [Кодування JSON](https://sharpskill.dev/uk/technologies/go/pytannia-spivbesidy/json-encoding.md): 20 запитань, Mid-Level - [Database/SQL](https://sharpskill.dev/uk/technologies/go/pytannia-spivbesidy/database-sql.md): 22 запитань, Mid-Level - [Пакет context](https://sharpskill.dev/uk/technologies/go/pytannia-spivbesidy/context-package.md): 20 запитань, Mid-Level - [Testing](https://sharpskill.dev/uk/technologies/go/pytannia-spivbesidy/testing.md): 22 запитань, Mid-Level - [Патерни конкурентності](https://sharpskill.dev/uk/technologies/go/pytannia-spivbesidy/concurrency-patterns.md): 24 запитань, Mid-Level - [Примітиви синхронізації](https://sharpskill.dev/uk/technologies/go/pytannia-spivbesidy/sync-primitives.md): 22 запитань, Mid-Level - [Веб-фреймворки Go](https://sharpskill.dev/uk/technologies/go/pytannia-spivbesidy/go-web-frameworks.md): 20 запитань, Mid-Level - [Проєктування REST API](https://sharpskill.dev/uk/technologies/go/pytannia-spivbesidy/rest-api-design.md): 20 запитань, Mid-Level - [gRPC](https://sharpskill.dev/uk/technologies/go/pytannia-spivbesidy/grpc.md): 22 запитань, Mid-Level - [Reflection](https://sharpskill.dev/uk/technologies/go/pytannia-spivbesidy/reflection.md): 20 запитань, Senior - [Керування пам'яттю](https://sharpskill.dev/uk/technologies/go/pytannia-spivbesidy/memory-management.md): 24 запитань, Senior - [Оптимізація продуктивності](https://sharpskill.dev/uk/technologies/go/pytannia-spivbesidy/performance-optimization.md): 22 запитань, Senior - [Generics](https://sharpskill.dev/uk/technologies/go/pytannia-spivbesidy/generics.md): 20 запитань, Senior - [Go Design Patterns](https://sharpskill.dev/uk/technologies/go/pytannia-spivbesidy/design-patterns.md): 24 запитань, Senior - [Microservices](https://sharpskill.dev/uk/technologies/go/pytannia-spivbesidy/microservices.md): 24 запитань, Senior - [Docker & Containerization](https://sharpskill.dev/uk/technologies/go/pytannia-spivbesidy/docker-containerization.md): 20 запитань, Senior - [Kubernetes Basics](https://sharpskill.dev/uk/technologies/go/pytannia-spivbesidy/kubernetes-basics.md): 22 запитань, Senior - [Просунутий Go](https://sharpskill.dev/uk/technologies/go/pytannia-spivbesidy/advanced-go.md): 20 запитань, Senior - [Розробка CLI](https://sharpskill.dev/uk/technologies/go/pytannia-spivbesidy/cli-development.md): 20 запитань, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/uk/technologies/go/pytannia-spivbesidy/security-authentication