Кодування та токени

Base64, Base64URL і кодування JWT

Процес, що запобігає помилкам з алфавітом і байтами та не плутає читабельні твердження JWT із перевіреною особою.

Base64 представляє байти як текст і не шифрує їх. Base64URL змінює алфавіт для URL і часто не використовує символи доповнення

як у JWT.

Почніть із байтів і правильного алфавіту

Спочатку перетворіть текст на байти UTF-8. Base64 використовує + і /

а Base64URL — - і _. Наявність символів доповнення залежить від протоколу.

Не змішуйте рівні кодування

Відсоткове кодування захищає компоненти URL і не є Base64URL. Повторне кодування або декодування може пошкодити роздільники

Unicode чи двійкові дані.

Сприймайте декодування JWT лише як перегляд

Заголовок і корисне навантаження є читабельним JSON у Base64URL

але довіра потребує перевірки підпису

алгоритму

видавця

аудиторії

часових тверджень та прав доступу.

Чекліст Base64 і JWT

  • Визначте початкове кодування байтів
  • Явно оберіть Base64 або Base64URL
  • Обробляйте доповнення за правилами протоколу
  • Уникайте подвійного кодування
  • Окремо перевіряйте підпис і твердження JWT

Пов’язані гайди

Дізнайся workflow за цим інструментом і що перевіряти далі.

Пов’язані інструменти