Згруповано за ситуацією, а не за форматом
Ця категорія — не стільки тема, скільки шухляда. Інструменти в ній — це дрібні конвертації, потрібні, поки ваше справжнє завдання — щось інше, тож вони перелічені тут за ситуацією, у якій ви до них звертаєтесь.
«У цьому логу незрозумілий рядок, і я не знаю, що це».
Якщо він виглядає як 550e8400-e29b-41d4-a716-446655440000, то
декодер UUID скаже вам версію і, для v1,
v6 та v7, — мітку часу створення. Якщо він виглядає як SGVsbG8= чи закінчується
на ==, це Base64 — декодуйте його. Якщо це
голе десятизначне число, що починається на 17, це
Unix-мітка часу приблизно поточного моменту.
«Мені потрібен ID». Генератор UUID створює v1 і з v3 по v7 і видасть тисячі значень одразу для наповнення тестової бази даних.
«Ця мітка часу неправильна в тисячу разів». Секунди чи мілісекунди — конвертер міток часу обробляє обидва варіанти і показує, який саме ви дали.
«Мені потрібен цей data URI як справжній файл». Або навпаки: Base64 у зображення.
«Який це насправді колір?» Палітра кольорів для конвертації між нотаціями, піпетка для зображень для зчитування значення зі скріншота чи макета.
«Це має бути snake_case, а воно camelCase». Конвертер регістру.
«Скільки це — 0xDEADBEEF у десятковій системі, і що станеться, якщо число зі знаком?» Конвертер систем числення, який, на відміну від більшості, обробляє від’ємні числа й доповнення до двох.
Ідентифікатори розкривають більше, ніж очікують
Одна наскрізна річ, про яку варто сказати тут, бо жодна окрема сторінка інструмента її не покриває: кілька з цих форматів несуть інформацію, яку ви не мали намір публікувати.
UUID v1 містить мітку часу й MAC-адресу пристрою. Це був початковий задум — унікальність гарантується формулою «ця машина, цієї миті». Це також означає, що UUID v1 у публічній URL-адресі повідомляє будь-кому зацікавленому, коли саме запис було створено, і дає стабільний ідентифікатор сервера, що його створив. Це можна перевірити самостійно, вставивши значення у декодер.
UUID v7 теж містить Unix-мітку часу, навмисно, бо те, що сортування за ID і сортування за часом створення — це одне й те саме, надзвичайно корисне для локальності індексів бази даних. Ціна — те саме розкриття: ID v7 упорядковані, тож публічний доступ до них розкриває час створення й дозволяє комусь оцінити, скільки записів ви створюєте на годину, спостерігаючи лише за двома з них.
v4 — та версія, що не розкриває нічого — 122 біти випадковості й жодної структури. Тому вона й залишається типовою для всього, що звернене до користувача, і тому «v7 для первинного ключа, v4 для публічного ідентифікатора» — розумне правило для однієї й тієї самої таблиці.
Base64 розкриває все, миттєво, будь-кому. Це не приховування. Секрет Kubernetes кодується в Base64, щоб бінарні значення вижили в YAML, а не щоб захистити їх.
Усе на цій сторінці працює локально, а для цієї категорії це важливіше, ніж для більшості: продакшн-ідентифікатори, токени й фрагменти логів — це саме те, що не варто вставляти на чужий сервер для декодування.