Elfproef

Uit Wikipedia, de vrije encyclopedie
Ga naar: navigatie, zoeken

De elfproef (11-proef) is een test die in het Nederlandse elektronische betalingsverkeer wordt uitgevoerd op negen- en tiencijferige Nederlandse bankrekeningnummers, om te controleren of het nummer een geldig rekeningnummer kan zijn. Varianten van de elfproef die gebruikmaken van een controlecijfer, worden toegepast bij andere belangrijke nummers, zoals het burgerservicenummer en het betalingskenmerk op een acceptgiro.

Het gebruik van de elfproef berust, evenals van de negenproef, op de relatieve eenvoud van het berekenen van de rest bij deling door 11 of 9 in het decimale stelsel.

Standaard-elfproef[bewerken]

Uitvoering[bewerken]

Bij de elfproef worden de afzonderlijke cijfers "gewogen" bij elkaar opgeteld, dat wil zeggen afhankelijk van de positie van het cijfer wordt het met een afgesproken getal (gewicht) vermenigvuldigd. Voor geldige rekeningnummers moet de som van de resultaten een veelvoud van 11 zijn.

Voor rekeningnummers zijn de gewichten de getallen 1, 2, 3, ... Het laatste cijfer van het rekeningnummer wordt met 1 vermenigvuldigd, het voorlaatste met 2, het op twee na laatste met 3, enzovoorts. De producten worden bij elkaar opgeteld en vervolgens wordt de som gedeeld door 11. Het resultaat van deze deling moet voor een geldig rekeningnummer een geheel getal groter dan nul zijn. Door te eisen dat het resultaat groter dan 0 moet zijn, wordt voorkomen dat een nummer dat uit alleen nullen bestaat, als geldig beschouwd wordt.

Voorbeeld[bewerken]

Rekeningnummer 73.61.60.221

9×7 + 8×3 + 7×6 + 6×1 + 5×6 + 4×0 + 3×2 + 2×2 + 1×1 = 176.

De som 176 is deelbaar door 11: delen door 11 geeft 16. Het rekeningnummer is dus geldig.

Als het rekeningnummer een vaste lengte van 10 cijfers krijgt door het aan de voorkant aan te vullen met nullen, werkt de elfproef ook omgekeerd (dus van links naar rechts).

Met hetzelfde rekeningnummer 073.61.60.221:

1×0 + 2×7 + 3×3 + 4×6 + 5×1 + 6×6 + 7×0 + 8×2 + 9×2 + 10×1 = 132.

De som 132 is weer deelbaar door 11: delen door 11 geeft 12.

Burgerservicenummer[bewerken]

Nederlandse burgerservicenummers (vroegere sofinummers) voldoen aan een variant van de elfproef. In de elfproef is het laatste cijfer het controlecijfer. Bij burgerservicenummers wordt het laatste getal met -1 vermenigvuldigd in plaats van met 1. Uitgaande van een nummer dat voldoet aan de elfproef kan geen nieuw geldig nummer worden gegenereerd door één cijfer te veranderen of door twee cijfers te verwisselen.

Gewogen elfproeven[bewerken]

De hierboven beschreven elfproef kan worden gekarakteriseerd door de set van gewichten 2, 3, 4, 5, ... en het gewicht 1 voor het controlecijfer. Voor het burgerservicenummer is het gewicht van het controlecijfer -1. In principe kunnen nieuwe elfproeven worden gedefinieerd door een andere set van gewichten te nemen. We spreken dan van een gewogen elfproef. Er is één gewogen elfproef die veelvuldig wordt gebruikt in het Nederlandse betalingsverkeer en wel bij de acceptgiro's. Om deze reden zullen we in het vervolg deze gewogen elfproef aanduiden als de acceptgiro-elfproef.

Acceptgiro-elfproef[bewerken]

We willen aan een nummer een controlecijfer toevoegen. In de acceptgiro-elfproef wordt het controlecijfer voor het nummer gezet, in tegenstelling tot de gewone elfproef waar het meestal achter het nummer wordt gezet. In de acceptgiro-elfproef zijn de gewichten 2, 4, 8, 5, 10, 9, 7, 3, 6, 1. Indien het te controleren nummer meer cijfers bevat, wordt deze serie van gewichten telkens herhaald.

Hier het recept: we vermenigvuldigen elk cijfer met zijn gewicht en we tellen deze producten op. Het resultaat noemen we S. Het idee van het controlecijfer is in dit geval om ervoor te zorgen dat als we het controlecijfer, C, optellen bij de reeds verkregen uitkomst S het geheel deelbaar wordt door 11. Als uitkomst S al deelbaar is door 11 wordt het controlecijfer dus 0. Als we er 10 bij op zouden moeten tellen, nemen we 1 als het controlegetal. In meer detail: bereken S. Deel door 11 en bewaar de rest R. Trek deze rest R af van 11. Deze uitkomst, 11-R, is het controlecijfer, tenzij de uitkomst 11 is, want dan noteren we 0, of tenzij de uitkomst 10 is, want dan noteren we 1.

We zullen een voorbeeld geven van een getal dat van een controlecijfer moet worden voorzien volgens de acceptgiro-elfproef. We nemen 1234567. De som wordt als volgt berekend:

S = 7×1 + 9×2 + 10×3 + 5×4 + 8×5 + 4×6 + 2×7 = 7 + 18 + 30 + 20 + 40 + 24 + 14 = 153

Het resultaat van deze optelling wordt door 11 gedeeld: 153 = 13×11 + 10. De rest 10 wordt afgetrokken van 11: 11 - 10 = 1 en levert het controlecijfer 1 op. Het nummer met controlecijfer vooraan gezet wordt: 11234567.

Betalingskenmerk[bewerken]

Een acceptgiro bevat een betalingskenmerk dat uit minimaal 7 en uit maximaal 16 cijfers bestaat. Alleen indien het betalingskenmerk uit slechts 7 cijfers bestaat, bevat het geen controlecijfer of andere controle-informatie. In alle andere gevallen is het eerste cijfer het controlecijfer, bepaald volgens de acceptgiro-elfproef. Bij een lengte tussen 9 en 16 cijfers bevat het betalingskenmerk naast een controlecijfer ook een lengtecode (het tweede cijfer van voren). De toegestane lengtecodes met tussen haakjes het aantal karakters zijn: 0(10), 1(11), 2(12), 7(7), 8(8), 9(9). Een betalingskenmerk van 16 cijfers bevat alleen een controlecijfer en geen lengtecode. Deze zekerheden zijn ingebouwd om fouten bij het machinaal lezen tot een acceptabel minimum te beperken. We geven een voorbeeld: 12 2345 3462 2567. Hier is het controlecijfer 1 en de lengte code 2, aangevend dat er twaalf cijfers volgen.

Oud-Postbanknummers[bewerken]

De ING is ontstaan uit een samenvoeging van Postbank en ING Bank. De Postbank hanteerde girorekeningnummers die geen controlecijfers bevatten. Alle getallen tussen 1 en 99999999 (acht negens) representeren in principe acceptabele gironummers. De ING heeft deze nummers niet uitgebreid met een controlecijfer, ook niet toen de merknaam Postbank in januari 2009 gestopt werd. De afwezigheid van een controlecijfer maakt oud-Postbankrekeningnummers onveilig voor overschrijvingen. Op 27 oktober 2009 diende een kort geding in Almelo van een gedupeerde die door twee cijfers te verwisselen in het oud-Postbankrekeningnummer van de begunstigde 43 duizend euro op een verkeerde rekening stortte.

Om toch de veiligheid te garanderen van optisch gelezen acceptgiro's, waar oud-Postbanknummers bij betrokken zijn, gebruikt de ING een truc. Op de acceptgiro wordt een onveilig oud-Postbanknummer omgezet in een langer, veilig nummer. Dit gebeurt met de acceptgiro-elfproef. Het recept is als volgt. Tel het aantal cijfers van het oud-Postbanknummer. Indien dit aantal minder is dan 7 wordt het nummer links aangevuld met nullen zodanig het geheel 7 cijfers bevat. Het oud-Postbanknummer van de Nederlandse Staat is 1, dat wordt dus aangevuld tot 0000001. Aan dit zevencijferige nummer wordt een controlecijfer toegevoegd volgens de acceptgiro-elfproef. Als laatste actie moeten er dan nog twee nullen voor om het totaal aantal cijfers op 10 te brengen. Met andere woorden het onveilige oud-Postbanknummer van de Nederlandse Staat is 1 en het veilige nummer van de Nederlandse Staat is 0090000001. Deze verlengde nummers worden gebruikt op de strook van de acceptgiro die door de machine wordt gelezen. De ING staat niet toe dat de consument dit verlengde nummer gebruikt bij gewone overschrijvingen.

International Bank Account Number (IBAN)[bewerken]

In het kader van de migratie van het nationale betalingsverkeer naar de Single Euro Payments Area (SEPA) wordt het in Nederland gebruikte bankrekeningnummer vervangen door het International Bank Account Number (IBAN), dat een eigen controlegetal bevat. Hoewel het huidige nationaal gebruikte 9- of 10-cijferige bankrekeningnummer onderdeel uitmaakt van de IBAN standaard, is het niet gegarandeerd dat de elfproef behouden blijft nadat Nederland over is op IBAN, waarvoor de wettelijke deadline 1 februari 2014 is.

Bepaling van de rest na deling door 11[bewerken]

Om de rest bij deling door 11 van een getal te bepalen, kunnen de cijfers van het (decimale) getal alternerend opgeteld en afgetrokken worden, te beginnen bij het achterste cijfer. Het volgende voorbeeld verduidelijkt dit nog. Van het getal 123456789 wordt de rest bij deling door 11 bepaald. er geldt:

123456789 = 11223344 × 11 + 5.

De rest 5 laat zich gemakkelijk bepalen door de berekening:

9-8+7-6+5-4+3-2+1 = 5,

waarin de cijfers beurteling opgeteld en afgetrokken worden, te beginnen bij de achterste 9.

Zie ook[bewerken]

Externe links[bewerken]