Ga naar inhoud

Login info beveiligen - hoe?


anoniem

Aanbevolen berichten

Stel, je hebt een programma die de gebruiker om een gebruikersnaam en wachtwoord vraagt, en die login info vervolgens naar een server stuurt. Nu is er een probleem: als iemand de lijn van de gebruiker afluistert, wat valt er dan tegen te doen? Als ik de gebruikersnaam en wachtwoord als plain text over de lijn stuurt, dan weet de afluisteraar de info meteen. Maar zelfs als ik die data encrypt, dan kan de afluisteraar gewoon de rauwe, ge-encrypte data opnemen en die verzenden naar de server. Dat schiet dus ook niet op. En worden wachtwoorden in HTML formulieren niet ook gewoon als plain text verzonden? Is dat niet hartstikke onveilig?
Link naar reactie
Laat server eerst een random sleutel naar de toepassing sturen. Deze wordt gebruikt om een berekening te doen en met het resultaat van berekening kun je password encrypten. Server doet dezelfde berekening en zal password decrypten. Als een ander verbinding met die server maakt, krijgt hij een andere sleutel. Als die ander jouw password nu gebruikt zal de server dit decrypten met een sleutel die niet hetzelfde is als die waarmee het ge-encrypt was en dus zal de aanmelding worden afgewezen door de server. En ja, iedereen kan jouw username en password voor de C!T site snoopen. Zoek eens naar SSH/SSL als je wilt weten hoe bv je internet bankieren wordt beveiligd.
Link naar reactie
Je wilt in iig een asymmetrische encryptie gebruiken, om een beveiligde sessie tussen twee machines plaats te kunnen laten vinden. Wat Wim Sturkenboom zegt suggereert is geen idee, omdat iemand die 'snoopt' dan al informatie verkregen heeft. Door asymmetrische encryptie te gebruiken hoeft alleen een public key over het netwerk verstuurd te worden die alleen gebruikt kan worden om informatie te encrypten (decoderen kan alleen met een private key die beide machines hebben). Veelgebruikte asymmetrische encryptiealgoritmen zijn RSA en DSA. Evt. kun je bijv. X.509 certificaten gebruiken, zodat de public keys al bij beide machines bekend zijn. Hoe je verder wilt is afhankelijk van de hoeveelheid data die je door de lijn wilt sturen. Alleen een username + wachtwoord is geen probleem, asymmetrische encryptie vereist echter veel meer processorkracht dan symmetrische encryptie. Dus als je veel data over gaat sturen, kunnen beide machines een random key maken die voor de symmetrische encryptie gebruikt kan worden, en uitgewisseld worden via asymmetrische cryptografie. De meeste code voor dit soort zaken is in de SSL libraries te vinden.
Link naar reactie

Om een reactie te plaatsen, moet je eerst inloggen

Gast
Reageer op dit topic

×   Geplakt als verrijkte tekst.   Herstel opmaak

  Er zijn maximaal 75 emoji toegestaan.

×   Je link werd automatisch ingevoegd.   Tonen als normale link

×   Je vorige inhoud werd hersteld.   Leeg de tekstverwerker

×   Je kunt afbeeldingen niet direct plakken. Upload of voeg afbeeldingen vanaf een URL in

  • Populaire leden

    Er is nog niemand die deze week reputatie heeft ontvangen.

  • Leden

    Geen leden om te tonen

×
×
  • Nieuwe aanmaken...