Hoe een veld opvullen in een tabel ?

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Ronny Vangaster

Ronny Vangaster

22/01/2023 18:34:08
Quote Anchor link
Ik heb een tabel met daarin een veld genaamd "paswoord"
Ondertussen heb ik een tweede veld toegevoegd "paswoord2". In dit veld wil de paswoorden versleuteld toevoegen die staan in het veld "paswoord".

Kortweg deze vraag :
Met welke Query kan je een veld opvullen met de inhoud van een ander veld. Ik zal een While-lus moeten gebruiken lijkt mij.
Op het internet vind je vele voorbeelden, zoveel dat je bomen niet meer ziet door het bos. Kan mij iemand een simpel voorbeeld laten zien? Dank bij voorbaat.
 
PHP hulp

PHP hulp

21/11/2024 21:03:35
 
- Ariën  -
Beheerder

- Ariën -

22/01/2023 18:51:46
Quote Anchor link
Ik raad password_hash aan om een wachtwoord te versleutelen. Het controleren kan met: password_verify.

Maar met welke reden heb je twee velden? Sla je soms je wachtwoorden in plain text op, en wil je dit nu versleutelen?
 
Adoptive Solution

Adoptive Solution

22/01/2023 18:52:46
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
UPDATE <TABELNAAM> SET paswoord2 = versleutelalgo(paswoord);
 
Ronny Vangaster

Ronny Vangaster

22/01/2023 18:54:22
Quote Anchor link
Dank je wel voor deze code. Dit lijkt overtoom wel
 
- Ariën  -
Beheerder

- Ariën -

22/01/2023 18:57:22
Quote Anchor link
Wij zijn snel toet..toet!

Mijn voorkeur gaat er naar uit om dit met een PHP-script te doen. Je bent erg flexibel in het gebruik van de functie, en je bent er zeker van dat er geen plain wachtwoorden in een database-log achterblijven.

Vergeet niet om je plain wachtwoorden veld te wissen. ;-)
Gewijzigd op 22/01/2023 18:58:20 door - Ariën -
 

23/01/2023 10:43:24
Quote Anchor link
Wachtwoorden als tekst opslaan in de database is illegaal volgens onze Europese wetgeving, dus het is zaak om dat snel aan te passen inderdaad.

Het standaard algoritme van PHP 5.5+ is bcrypt. Maar er zat een bug in het bcrypt blowfish algoritme, dat je kunt herkennen omdat de string begint met '$2a$'. Daarom gebruikt PHP geen versie 2a, maar 2y, te herkennen aan '$2y$'.

Je kunt de wachtwoorden omzetten met de password_hash() -functie, maar dan moet je wel weten dat de gegenereerde hashes afwijken van wat er standaard in andere tools aanwezig is zoals pgcrypt van PostgreSQL. Technisch is er geen verschil tussen de hashwaarden van 2a en 2y, maar doordat PHP het versieverschil in de hash string opneemt werkt het niet samen met verschillende andere tools.

Dit was voor mij een issue toen password_hash() vervangen moest worden in mijn applicatie naar SQL-queries.
Het kan soms eenvoudiger zijn om niet eerst een heel PHP script te moeten typen, als je gewoon 1 UPDATE statement in SQL kunt gebruiken met de crypt() functie om alle wachtwoorden om te zetten.
Gewijzigd op 23/01/2023 10:44:33 door
 
Ronny Vangaster

Ronny Vangaster

23/01/2023 12:04:05
Quote Anchor link
dank je voor de nuttige informatie.

Ik probeer deze code te gebruiken :
UPDATE <TABELNAAM> SET new_paswoord = versleutelalgo(paswoord);

maar daarvoor moet je een bijbehorende functie genaamd "versleutelalgo" schrijven waarvan ik niet weet welke code dit moet zijn, ook hier weer : veel voorbeelden op het internet, maar helaas geen simpel voorbeeld te vinden. De encryptie code heb ik ter beschikking.( Encryptie algoritme = AES-128 ) Kan mij iemand helpen ? Dank bij voorbaat ...
 
- Ariën  -
Beheerder

- Ariën -

23/01/2023 12:41:40
Quote Anchor link
In MySQL is dat volgens mij de functie AES_ENCRYPT().
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.