Anti-misbruik & codebeveiliging

De code is een geheim. Wij behandelen het als zodanig.

Een eenmalige code is maar zo goed als de manier waarop deze wordt gegenereerd, opgeslagen en rate-limited. Bird Verify genereert codes met een cryptografische bron, slaat alleen een hash op, vergelijkt in constante tijd en begrenst zowel verzendingen als pogingen — zodat een gelekt logbestand of een brute-force-aanval een aanvaller nergens brengt. Fraudescoring bouwt hier vervolgens op voort.

verify.ts
200 · pending
import { BirdClient } from "@messagebird/sdk";

const bird = new BirdClient({
  apiKey: process.env.BIRD_API_KEY!,
});

// Send the code, then check it by recipient.
await bird.verify.verifications.create({
  to: { phone_number: "+15551234567" },
}).safe();

const { data, error } = await bird.verify.verifications.check({
  to:   { phone_number: "+15551234567" },
  code: userInput,
}).safe();
if (error) throw error;
Verificatiestroom

Je account

Bevestig dat jij het bent.

Voer de code in die is verzonden naar

+1 ••• ••• 4567

Voorbeeld van een verificatiecode

482691
Code geverifieerd
Stuur een code. Bevestig de ontvanger.

Dagelijks vertrouwd door teams die wereldklasse software bouwen

Lees meer klantverhalen

Beveiliging die standaard aan staat, geen add-on.

Elke verificatie op de Bird Verify API heeft dezelfde beveiligingen: de code wordt server-side gegenereerd, nooit geretourneerd en alleen als hash opgeslagen; controles draaien in constante tijd en tegen een begrensd pogingsbudget; en verzendingen worden begrensd per ontvanger en per workspace. U hoeft niets in te schakelen of te configureren: zo werkt de API, of u het nu gebruikt als tweefactorauthenticatie of wachtwoordloze aanmelding.

Vijf beschermingen bij elke verificatie.

Geen setupstap, geen add-on SKU.

  1. 01

    Cryptografische generatie.

    Codes worden gegenereerd uit een cryptografische willekeurige bron, uniform over de coderuimte, geen voorspelbare teller of tijdstempel.

  2. 02

    Gehasht in rust, nooit via de API naar buiten.

    Alleen een HMAC-SHA256 van elke code wordt opgeslagen; de leesbare tekst wordt nooit door de API geretourneerd en nooit naar uw stack of onze logs geschreven.

  3. 03

    Constant-time vergelijking.

    Ingediende codes worden in constante tijd vergeleken, zodat een aanvaller niets leert uit hoe lang een controle duurt.

  4. 04

    Pogingvergrendeling.

    Elke sessie heeft een begrensd aantal controles (standaard 5). Zodra deze op zijn, faalt de sessie — raden kan dus niet eindeloos doorgaan.

  5. 05

    Verzendlimieten.

    Een verzendlimiet per ontvanger en een herverzendings-cooldown begrenzen de kosten en het misbruikoppervlak — elk met een 429 en Retry-After.

Raadpogingen raken op vóór uw gebruikers.

Een verkeerde code retourneert het aantal resterende pogingen, en de sessie mislukt zodra het budget op is — een brute-force-aanval loopt dus vast lang voordat de code gevonden wordt.

lockout.ts
200
const { data, error } = await bird.verify.verifications.check({
  to:   { phone_number: "+15551234567" },
  code: guess,
}).safe();
if (error) throw error;

// wrong code, attempts left → { success: false, reason: "incorrect_code", attempts_remaining: 2 }
// budget spent, session done → { success: false, reason: "attempts_exhausted", attempts_remaining: null }
Binnenkort beschikbaar

Binnenkort: fraudesignalen en SMS-pompbescherming.

De verzendgeschiedenis die Verify nu vastlegt, is de basis voor een fraudelaag die we momenteel bouwen. Deze maakt gebruik van dezelfde create- en check-calls, dus later adopteren is een configuratiewijziging, geen her-integratie.

Risicosignalen bij create. Stuur apparaat-, IP- en requestcontext mee bij een verificatie, en pogingen met hoog risico krijgen een geblokkeerde uitkomst voordat er ooit een code wordt verstuurd — zodat u niet betaalt om een aanvaller te berichten.

SMS-pomp- en AIT-bescherming. Verzendlimieten per land en per prefix plus een bestedingsplafond per workspace stoppen de kunstmatig-opgeblazen-verkeer-aanval die OTP's naar premiumnummerreeksen stuurt voor carrier-omzetdeling.

Gebouwd op wat er al is. Risicobeoordeling leest de pogingsgeschiedenis die Verify vanaf dag één bijhoudt, en de geblokkeerde uitkomst maakt al deel uit van het statusmodel — zodat de fraudelaag landt zonder uw integratie te hervormen.

Codes gegenereerd, opgeslagen en rate-limited zoals het hoort.

Beveiliging is ingebouwd in Bird Verify, niet erbovenop verkocht: de kanalen, de code en de limieten zitten in dezelfde twee endpoints.

Je gegevens

Alle contactvelden zijn verplicht.

Zodat ons team contact met je kan opnemen over je demo.

Producten van interesse

Optioneel

We nemen contact met je op om je demo in te plannen.
Privacybeleid

Begin met één kanaal.
Voeg de rest toe wanneer je er klaar voor bent.

Een test-API-key is direct beschikbaar. Productietoegang wordt ontgrendeld zodra je een betaalmethode toevoegt en een afzender verifieert.

Gebruik je Claude Code, Cursor of Codex? Kopieer een setup-prompt en je agent installeert de Bird CLI en skills voor je. Kies de jouwe:

Cursor