🌐 NL

🔑 API-sleutelgenerator

Genereer veilige, willekeurige API-sleutels. Gebruik ze voor REST API's, authenticatietokens en geheime sleutels.

API-sleutelformaat
GIDS

Meer lezen

01

1. Belang van API-sleutelbeveiliging

API-sleutels zijn kritieke beveiligingselementen voor applicatie-authenticatie. Zwakke sleutels zijn kwetsbaar voor brute-forceaanvallen, en blootstelling leidt tot ongeautoriseerde API-toegang. Sterke API-sleutels moeten minimaal 32 willekeurige tekens lang zijn en gebruikmaken van cryptografisch veilige pseudo-willekeurige getalgenerators (CSPRNG). UUID v4, Base64 en Hex worden veel gebruikt, waarbij elke sleutel uniek en onvoorspelbaar is. Trek blootgestelde sleutels onmiddellijk in en vervang ze, en commit ze nooit naar openbare repositories zoals GitHub.

02

2. Vergelijking van methoden voor sleutelgeneratie

Er bestaan meerdere methoden voor het genereren van API-sleutels. UUID v4 gebruikt 122 willekeurige bits met een extreem kleine kans op botsingen en wordt veel toegepast. Base64 codeert binaire data naar tekst en biedt ongeveer 192 bits entropie in 32 tekens. Hex geeft de waarde weer in hexadecimale vorm voor hoge leesbaarheid en biedt 256-bit beveiliging in 64 tekens. Alfanumeriek gebruikt alleen letters en cijfers voor URL-veiligheid, en het toevoegen van prefixes (sk_, api_) maakt sleuteltypes eenvoudig herkenbaar. Stripe, AWS en OpenAI gebruiken verschillende sleutelindelingen om servicespecifieke sleutels van elkaar te onderscheiden.

03

3. UUID versus willekeurige strings

UUID v4 is een gestandaardiseerde 128-bits identifier die wereldwijde uniciteit garandeert. De 8-4-4-4-12-indeling (bijv. 550e8400-e29b-41d4-a716-446655440000) heeft een duidelijke structuur volgens de RFC 4122-standaard. Aangepaste willekeurige strings bieden flexibiliteit in lengte en formaat. UUID's zijn geschikt als primaire sleutels in databases, terwijl willekeurige strings compacter en handiger zijn voor API-sleutels. De beveiligingssterkte is vergelijkbaar, maar willekeurige strings maken validatielogica met prefixes en checksums eenvoudiger.

04

4. Aanbevelingen voor sleutelopslag

Sla API-sleutels nooit op als platte tekst. Bewaar ze in omgevingsvariabelen (.env) en voeg ze toe aan .gitignore om ze uit versiebeheer te houden. Gebruik in productie speciale secretmanagementsystemen zoals AWS Secrets Manager, HashiCorp Vault of Azure Key Vault. Als je ze in databases opslaat, converteer ze dan naar hashes (SHA-256) en pas waar nodig encryptie (AES-256) toe. Vermijd het hardcoderen van sleutels in code; gebruik Docker secrets of Kubernetes Secrets. Maskeer sleutels in logs om blootstelling te voorkomen en monitor de gebruiksgeschiedenis van sleutels.

05

5. Beleid voor sleutelrotatie

API-sleutels moeten regelmatig worden geroteerd. Rotatie elke 90 dagen is gangbaar; trek de sleutel direct in als blootstelling wordt vermoed. Voor rotatie zonder downtime activeer je tijdelijk twee sleutels tegelijk, schakel je over naar de nieuwe sleutel en deactiveer je daarna de oude. AWS IAM en Google Cloud API Keys bieden automatische rotatiefuncties. Stel voor elke sleutel een vervaldatum in om oude sleutels automatisch ongeldig te maken, en leg rotatiegeschiedenis vast in auditlogs. Authenticatie op basis van tokens, zoals OAuth 2.0 of JWT, in plaats van API-sleutels biedt betere beveiliging met automatische vervaldatum.

06

6. Rate limiting en gebruiksbeperkingen

Pas altijd rate limiting toe op API-sleutels om misbruik te voorkomen. Stel limieten in zoals 100 verzoeken per minuut per IP of 1.000 per uur per sleutel. Implementeer quota's voor het maximum aantal dagelijkse aanroepen en geef 429 Too Many Requests terug wanneer deze limiet wordt overschreden. Configureer IP-whitelists zodat sleutelgebruik alleen vanaf specifieke IP's is toegestaan, en detecteer afwijkende patronen (massale verzoeken in korte tijd) voor automatische blokkering. API-gateways zoals Cloudflare, Kong en AWS API Gateway maken de implementatie van rate limiting eenvoudiger. Stel sleutelspecifieke machtigingen (scopes) in om toegang te beperken tot alleen lezen, alleen schrijven, enzovoort.

Veelgestelde vragen

Worden gegenereerde sleutels naar een server verzonden?
Nee. Alle sleutels worden alleen in je browser gegenereerd en nooit naar een server verzonden, dus ze zijn veilig te gebruiken.
Welk formaat moet ik kiezen?
UUID v4 wordt veel gebruikt vanwege de kleine kans op botsingen. Kies Alfanumeriek voor URL-veiligheid, of Hex voor betere leesbaarheid.