Dezvoltatori

Utilitare pentru dezvoltatori — UUID-uri, marcaje temporale, Base64, baze numerice și coduri, totul funcționând offline în browser.

Identificatori și timp

3

Codare

5

Culori și text

6

Grupate după situație, nu după format

Această categorie nu este atât o temă, cât un sertar. Instrumentele din ea sunt micile conversii de care ai nevoie în timp ce altceva este sarcina reală, așa că sunt listate aici după situația în care te afli când le cauți.

„Este un șir opac în acest jurnal și nu știu ce este.” Dacă arată ca 550e8400-e29b-41d4-a716-446655440000, decodorul de UUID îți spune versiunea și, pentru v1, v6 și v7, timestamp-ul la care a fost creat. Dacă arată ca SGVsbG8= sau se termină în ==, este Base64 — decodează-l. Dacă este un simplu număr de zece cifre care începe cu 17, este un timestamp Unix de aproximativ acum.

„Am nevoie de un ID.” Generatorul de UUID face v1 și v3 până la v7 și va produce mii deodată pentru popularea unei baze de date de test.

„Acest timestamp este greșit de o mie de ori.” Secunde sau milisecunde — convertorul de timestamp le gestionează pe amândouă și îți arată pe care i-ai dat.

„Am nevoie de acest URI de date ca fișier real.” Sau invers: Base64 în imagine.

„Ce culoare este exact aceea?” Selectorul de culori pentru conversia între notații, selectorul de culori din imagine pentru a citi o valoare dintr-o captură de ecran sau un mockup.

„Trebuie să fie snake_case, dar este camelCase.” Convertorul de format.

„Cât este 0xDEADBEEF în zecimal și ce se întâmplă dacă este cu semn?” Convertorul de sisteme numerice, care, spre deosebire de majoritatea, gestionează numerele negative și complementul față de doi.

Identificatorii dezvăluie mai mult decât se așteaptă oamenii

Singurul lucru transversal care merită spus aici, pentru că nicio pagină de instrument nu îl deține singură: mai multe dintre aceste formate poartă informații pe care nu intenționai să le publici.

UUID v1 include un timestamp și adresa MAC a mașinii. Acesta a fost designul original — unicitate garantată prin „această mașină, în acest moment”. Înseamnă și că un UUID v1 într-un URL public spune oricui îi pasă exact când a fost creată înregistrarea și îi oferă un identificator stabil pentru serverul care l-a creat. Poți confirma asta singur lipind unul în decodor.

UUID v7 include și el un timestamp Unix, deliberat, pentru că faptul că sortarea după ID și sortarea după momentul creării este același lucru este enorm de util pentru localitatea indexului bazei de date. Costul este aceeași dezvăluire: ID-urile v7 sunt ordonate, deci expunerea lor public dezvăluie momentele creării și permite cuiva să estimeze câte înregistrări creezi pe oră urmărind două dintre ele.

v4 este cel care nu dezvăluie nimic — 122 de biți de aleatorietate și nicio structură. De aceea rămâne implicit pentru orice orientat spre utilizator, și de aceea „folosește v7 pentru cheia primară, v4 pentru identificatorul public” este o regulă rezonabilă pentru același tabel.

Base64 dezvăluie totul, instant, oricui. Nu este obfuscare. Un secret Kubernetes este codificat în Base64 pentru ca valorile binare să supraviețuiască în YAML, nu pentru a le proteja.

Totul de pe această pagină rulează local, ceea ce pentru această categorie contează mai mult decât pentru majoritatea: identificatorii de producție, token-urile și fragmentele de jurnal sunt exact genul de lucruri care nu ar trebui lipite în serverul altcuiva pentru a fi decodate.

Aș aprecia dacă ați putea împărtăși aceste pagini cu prietenii, le salvați la favorite sau le legați. Mulțumesc! 🙏