webmasterstuff

WEBMASTER-TOOLS: aes coderen

Een paswoord mag je nooit bloot versturen of opslaan in een databank. Je moet deze coderen zodat ze niet leesbaar worden, noch in jouw databank voor jou noch voor eventuele hackers.

AES = advanced encryption standard is de meest gebruikte en minst onveilige vorm van beveiligen. Je doet dit door niet alleen het ingevoerde veld, vaak een paswoord, te versleutelen maar je versleutelt het samen met een zelfgekozen eigen invoercode. Samen is het kraken van zo'n code nog veel moeilijker.
Kijk maar eens mee in de codes hieronder.

 

Zorg dat er in je databank/database volgende gegevens staan:
een veld voor de gebruikersnaam, dat je gewoon het type varchar meegeeft;
een veld voor het paswoord, dat je het type blob geeft:

Verander (eventueel) de woorden 'TABELNAAM', 'GEBRUIKERSNAAM' en 'PASWOORD' afhankelijk van hoe je de velden en je tabel wilt noemen

 
in mysql> CREATE table TABELNAAM (GEBRUIKERSNAAM VARCHAR(16), PASWOORD BLOB);

 

Om de gegevens, in dit geval vooral het paswoord te coderen met AES, moet je de informatie invoeren; dit kan zowel rechtstreeks in je databank/database met een instructie als dat je het via een registratieformulier op je website doet:
Verander eventueel de woorden 'tabelnaam', 'gebruikersnaam', 'eerstegebruikersnaam', 'paswoordvangebruikersnaam' en 'hiereenzelfgekozenwachtwoorddatjegebruiktomtecoderen' om het volledig naar je eigen hand te zetten. Alles mag in een regel staan; ik heb het in twee getypt omdat de code anders dwars door de reclame gaat ;-)

 
INSERT INTO tabelnaam VALUES ('eerstegebruikersnaam',

AES_ENCRYPT('paswoordvangebruikersnaam','hiereenzelfgekozenwachtwoorddatjegebruiktomtecoderen') );

Controleer of alles goed werkt; voer volgende vraag uit naar je databank/database rechtstreeks in je databank of via een query in een formuliertje op je website:
Verander eventueel de woorden 'tabelnaam', 'gebruikersnaam', 'eerstegebruikersnaam', 'paswoordvangebruikersnaam' en 'hiereenzelfgekozenwachtwoorddatjegebruiktomtecoderen' afhankelijk hoe je deze velden en de invoer genoemd hebt in je eigen databank (zie hoger)

 
SELECT * FROM tabelnaam WHERE gebruikersnaam='eerstegebruikersnaam' 

AND paswoord=AES_ENCRYPT('paswoordvangebruikersnaam','hiereenzelfgekozenwachtwoorddatjegebruiktomtecoderen');

 

Met deze codering bied je jouw bezoekers een veilige manier om paswoorden op te slaan in een database die niet leesbaar zijn en toch kun je ze oproepen ter controle om in te loggen.
Succes ermee!

 

ducksite.be - menu onderaan