Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien

Kansberekening: raden toegangscode

Pagina: 1
Acties:

  • zerok
  • Registratie: November 2001
  • Laatst online: 27-11 22:37
Ik heb een systeempje bedacht voor tijdelijke toegangs codes met een 5 cijferige pin code. Het idee is dat de gebruiker een pincode krijgt en deze voor een bepaalde tijd te gebruiken is bijvoorbeeld een avond maar dat die de volgende dag niet meer werkt. Dit systeem is volledig offline dus dus de pincodes wil ik genereren mbv TOTP rfc6238.

Ik vraag me nu af hoe veilig dit systeem is. Met een 5 cijferige pincode zijn er 100 000 mogelijkheden. Door het aantal gebruikers en de periode die een gebruiker naar binnen mag, zijn 170 mogelijke pincodes correct op ieder moment.

De kans dat iemand 1 code goed gokt is 170/100000= 0.17% wat voor deze toepassing klein genoeg is, maar dit is waarschijnlijk veel te simpel.

Stel dat iemand naar binnen wil dan gaat die proberen en zal niet 2 keer dezelfde code proberen. Hierdoor neemt de kans dat de volgende code correct is toe. Dit klinkt als wiskunde wat ik waarschijnlijk op de middelbare school heb gehad maar ik kan me niet meer herinneren wat voor een verdeling dit is.

Mijn vraag is dus hoe bereken ik de kans dat iemand met n pogingen binnen komt? Er vanuit gaande dat het een 5 cijferige code is en 170 correcte codes op ieder moment.

Is dit een Birthday Attack?

"never argue with idiots they drag you down to their level and beat you with experience" dilbert


  • gambieter
  • Registratie: Oktober 2006
  • Niet online

gambieter

Just me & my cat

Dit lijkt me eerder iets voor beveiliging, en dat valt onder een ander forumdeel. Ik geef het even een zetje :)

WL >> BV

I had a decent lunch, and I'm feeling quite amiable. That's why you're still alive.


  • Bob
  • Registratie: Mei 2005
  • Laatst online: 07:56

Bob

De kans op een juiste gok wordt niet relevant veel groter bij een tweede, derde etc poging, zolang je er voor zorgt dat het aantal pogingen beperkt is natuurlijk. Iets dat vanzelfsprekend moet zijn bij een systeem met maar 5 cijfers.

Dus, je kan gewoon verder rekenen met 0.17%
Kans dat iemand 1 maal fout gokt: 1-0.0017
Kans dat iemand 2 maal na elkaar fout gokt: (1-0.0017)*(1-0.0017)
Kans dat iemand 3 maal na elkaar fout gokt: (1-0.0017)^3
etc

  • F_J_K
  • Registratie: Juni 2001
  • Niet online

F_J_K

Moderator CSA/PB

Front verplichte underscores

De eerste trekking is de kans inderdaad 170/100.000, de tweede keer 170/99.999, etc. Geen 0,17% meer omdat er sprake is van geheugen.

MAAR dat betekent natuurlijk niet dat er 100.000 - 17 trekkingen nodig zijn. De kans is juist 0,17% dat het bij de eerste trekking al raak is.

Van belang is dus het aantal trekkingen beperken, door dat hard te beperken (na 5 foute gokken is het over), of bijv door iedere trekking bijv .10 seconden te laten duren: dan zijn er maar 8640 trekkingen mogelijk per dag.

offtopic:
Ik haal de spel fout en even uit de topictitel :P

'Multiple exclamation marks,' he went on, shaking his head, 'are a sure sign of a diseased mind' (Terry Pratchett, Eric)


  • Fish
  • Registratie: Juli 2002
  • Niet online

Fish

How much is the fish

En wanneer de terminal locked kan de rest van de 169 gebruikers er geen gebruik meer van maken

Iperf


  • F_J_K
  • Registratie: Juni 2001
  • Niet online

F_J_K

Moderator CSA/PB

Front verplichte underscores

fish schreef op donderdag 16 januari 2014 @ 19:43:
En wanneer de terminal locked kan de rest van de 169 gebruikers er geen gebruik meer van maken
Soms is dat een goed iets (je wilt het merken dat iemand het heeft lopen proberen). Maar als dat geen optie is, kan je dus het N seconden laten duren. Of als je dat de goede niet wilt aandoen: start bij 1 seconde en iedere volgende incorrecte poging binnen een minuut na de vorige *2, of iets dergelijks. De truc is het de mensen-met-code niet moeilijk te maken maar de gokkers juist wel.

'Multiple exclamation marks,' he went on, shaking his head, 'are a sure sign of a diseased mind' (Terry Pratchett, Eric)


  • Fish
  • Registratie: Juli 2002
  • Niet online

Fish

How much is the fish

Soms wel, soms niet.

Ik dan zou eerder geneigd zijn om een persoonlijke prefix te maken van 4 cijfers die je niet vergeet en dan een random nummer. dan word de kans op gokken aanzienlijk kleiner. en valt er ook makkelijker te locken (voor het geval dat de gebruiker de code van de verkeerde dag gebruikt oid)

wanneer je merkt dat er gegokt wordt met niet bestaande gebruikers kun je helemaal het slot erop gooien

[ Voor 14% gewijzigd door Fish op 16-01-2014 20:04 ]

Iperf


  • zerok
  • Registratie: November 2001
  • Laatst online: 27-11 22:37
Bedankt, Mijn huidige idee om brute force te voorkomen is om na iedere foute code 10 seconden te wachten en na 10 foute pincodes achter elkaar een time out van 5 minuten in te stellen. Dit geeft wel een kleine kans op 'grapjes' van mensen die ff snel 10 pogingen doen. Maar ja we kijken wel of dat een serieus probleem is.

"never argue with idiots they drag you down to their level and beat you with experience" dilbert


  • crisp
  • Registratie: Februari 2000
  • Nu online

crisp

Devver

Pixelated

Als je dit in Excel invoert en de tweede rij doortrekt naar beneden dan krijg je de kans na n pogingen:

170100000=A1/B1=SUM($C$1:C1)
=A1=B1-1=(1-D1)*(A2/B2)=SUM($C$1:C2)

Na 10 pogingen is de kans al 1,69% dat iemand binnenkomt, na 100 pogingen is dit al opgelopen tot 15,65% :)

Intentionally left blank

Pagina: 1