DevToolGrid Online DevToolGrid Online
DevToolGrid Online

Гайди та статті

Переглядайте гайди DevToolGrid Online для інструментів JSON, Base64, URL, JWT, Regex, часу, UUID, хешів і HTML.

JWT

Як працює JWT і чому його вміст не є секретним

JWT переносить набір claims у компактному підписаному повідомленні. Довіру створює перевірений підпис і політика валідації, а не незрозумілий вигляд токена.

Читати статтю / 8 хв читання
Regex

Як регулярні вирази читають текст

Регулярний вираз описує текст через літерали, класи символів, повторення, межі та групи. Розуміння цих частин прибирає відчуття магії.

Читати статтю / 8 хв читання
URL

Як URL перетворює текст на надійну вебадресу

URL — це не просто посилання, а структурована інструкція зі схемою, хостом, шляхом, параметрами, фрагментом і правилами кодування.

Читати статтю / 8 хв читання
UUID

Як UUID створює ідентифікатори без центральної координації

UUID дозволяє незалежним системам створювати ідентифікатори з надзвичайно малою ймовірністю collision, спрощуючи offline work, merge та distributed data.

Читати статтю / 8 хв читання
Time

Unix time і проблема представлення моменту «зараз»

Unix timestamp створює спільну часову шкалу, але одиниці, точність годинника, leap seconds і різниця між моментом та локальним часом потребують явних рішень.

Читати статтю / 8 хв читання
Hash

Що насправді доводить криптографічний хеш

Хеш є компактним відбитком точних байтів. Він допомагає перевіряти цілісність, але сам по собі не доводить авторство, безпечність або справжність даних.

Читати статтю / 8 хв читання
Base64

Що таке кодування Base64 і навіщо воно досі потрібне

Base64 перетворює довільні байти на текст, який безпечно проходить через текстові протоколи. Розбираємося, як це працює, скільки коштує і де справді корисне.

Читати статтю / 8 хв читання
HTML

Навіщо HTML потрібні character references

HTML entities дозволяють показувати символи, які parser інакше сприйняв би як markup. Їхня правильна роль стає зрозумілою лише разом із контекстом.

Читати статтю / 8 хв читання
JSON

Чому JSON став основною мовою веб-API

JSON переміг не через досконалість, а завдяки вдалому балансу між простотою, читабельністю та сумісністю з різними мовами програмування.

Читати статтю / 8 хв читання
Regex

Як уникнути catastrophic backtracking у regex

Деякі регулярні вирази перебирають величезну кількість шляхів на спеціально підібраному ввідному тексті, створюючи performance bug і ризик ReDoS.

Читати статтю / 8 хв читання
Base64

Base64 і Base64URL: схожі формати для різних середовищ

Base64URL змінює лише кілька символів, але саме вони визначають, чи можна безпечно помістити закодовані дані в URL, cookie або JWT.

Читати статтю / 8 хв читання
Hash

Checksum, хеш і цифровий підпис: різні відповіді на питання про цілісність

Checksum виявляє випадкову помилку, хеш створює сильний відбиток, MAC підтверджує shared secret, а цифровий підпис пов’язує дані з private key.

Читати статтю / 8 хв читання
UUID

Як вибрати правильну версію UUID

Random, time-ordered і name-based UUID мають різні властивості. Version потрібно вибирати за вимогами до privacy, ordering, determinism і storage.

Читати статтю / 8 хв читання
JSON

Як діагностувати неправильний JSON у реальних застосунках

Помилка JSON-парсера часто вказує не на пропущену кому, а на зламану межу, неправильне кодування, обрізану відповідь або HTML замість очікуваних даних.

Читати статтю / 8 хв читання
URL

Як проєктувати чисті, стабільні та зручні для поширення URL

Хороша адреса пояснює ресурс, зберігає сенс після змін, не розкриває зайвий стан і працює поза застосунком, який її створив.

Читати статтю / 8 хв читання
JSON

Як проєктувати JSON API, що витримує зміни

Стабільність JSON API залежить від передбачуваних типів, послідовних назв, обережної сумісності та помилок, із якими клієнт може працювати.

Читати статтю / 9 хв читання
Time

Як проєктувати надійні системи, залежні від часу

Expiration, scheduling, retry та порядок подій потребують явної семантики годинника, idempotency і готовності до запізнілої або повторної роботи.

Читати статтю / 8 хв читання
HTML

HTML encoding, decoding і якість текстових даних

Видимі entities часто вказують не на відсутній decode, а на нечітку відповідальність між storage, API, editor і template.

Читати статтю / 8 хв читання
JWT

Типові помилки безпеки JWT і способи їх уникнути

Більшість проблем JWT виникає через поблажливу перевірку, витік bearer token, слабкий життєвий цикл і надмірну довіру до claims.

Читати статтю / 9 хв читання
JWT

JWT чи серверна сесія: як вибрати модель автентифікації

JWT і сесії вирішують схожі задачі, але по-різному працюють із revocation, масштабуванням, приватністю та операційною складністю.

Читати статтю / 8 хв читання
HTML

Як contextual output encoding запобігає XSS

Захист від XSS починається з чіткої межі між даними й кодом та encoding для конкретного місця, де browser прочитає значення.

Читати статтю / 9 хв читання
Time

Часові пояси, daylight saving і календарні сюрпризи

Timezone є набором політичних календарних правил, а не постійним offset. Надійний розклад зберігає ідентичність зони й обробляє пропущені та повторені години.

Читати статтю / 8 хв читання
URL

Помилки URL-кодування, які ламають реальні застосунки

Подвійне кодування, неправильне трактування плюса, небезпечні redirect і різна нормалізація перетворюють звичайні посилання на production-проблеми.

Читати статтю / 8 хв читання
UUID

Помилки використання UUID у базах даних та API

UUID прибирає central allocation, але неправильне storage, validation, indexing та authorization перетворюють зручний ID на зайву проблему.

Читати статтю / 8 хв читання
Base64

Коли не варто використовувати Base64

Base64 корисне на текстових межах, але зайве використання збільшує payload, витрати пам’яті та ризик неправильного розуміння безпеки.

Читати статтю / 8 хв читання
Hash

Чому паролям потрібне спеціальне хешування

Швидкі хеші добре перевіряють файли, але здешевлюють перебір паролів. Безпечне зберігання потребує salt, дорогого алгоритму та плану оновлення параметрів.

Читати статтю / 8 хв читання
Regex

Як писати регулярні вирази, які можна підтримувати

Підтримуваний regex має одну відповідальність, явні межі, named groups, приклади, тести та зрозуміле місце в загальному процесі.

Читати статтю / 8 хв читання