• Login
  • Register
  • Zoek
Everywhere
  • Everywhere
  • Articles
  • Pages
  • Forum
  • Filebase Entry
  • More Options

ICTscripters

Dé plek voor IT

Dé plek voor IT

Login

Geavanceerde opties
  1. Home
  2. Forum
    1. Alle berichten
    2. Recente activiteiten
  3. ICT Nieuws
  4. Blog
  5. Marktplaats
    1. Werk
    2. Advertenties
    3. Domeinnamen
    4. Websites
    5. Design & lay-outs
    6. Scripts
    7. Overige
  6. Design
  7. Leden
    1. Actieve bezoekers
    2. Team
    3. Leden zoeken
  8. Downloads
  9. Goedkope domeinnamen
  1. Home
  2. Forum
    1. Alle berichten
    2. Recente activiteiten
  3. ICT Nieuws
  4. Blog
  5. Marktplaats
    1. Werk
    2. Advertenties
    3. Domeinnamen
    4. Websites
    5. Design & lay-outs
    6. Scripts
    7. Overige
  6. Design
  7. Leden
    1. Actieve bezoekers
    2. Team
    3. Leden zoeken
  8. Downloads
  9. Goedkope domeinnamen
  1. Home
  2. Forum
    1. Alle berichten
    2. Recente activiteiten
  3. ICT Nieuws
  4. Blog
  5. Marktplaats
    1. Werk
    2. Advertenties
    3. Domeinnamen
    4. Websites
    5. Design & lay-outs
    6. Scripts
    7. Overige
  6. Design
  7. Leden
    1. Actieve bezoekers
    2. Team
    3. Leden zoeken
  8. Downloads
  9. Goedkope domeinnamen
  1. Dé plek voor IT - ICTscripters
  2. Leden
  3. Darsstar

Forum

  • Het Grote Vibe Code Topic

    Jeroen.G 11 mei 2026 om 09:28
  • Ictscripters Chat

    AarClay 21 april 2026 om 11:34
  • PWYL source gezocht

    Syntax 25 maart 2026 om 11:44
  • Help testers nodig voor android app Urgent

    Servertjee 20 februari 2026 om 12:07
  • Partner Gezocht om meerdere NFT Collecties op Open Sea te Plaatsen

    Servertjee 20 februari 2026 om 12:06
  • Afspraken systeem met planbeperking

    Jeffrey.Hoekman 20 februari 2026 om 11:52
  • Developer Gezocht

    Servertjee 19 februari 2026 om 17:31
  • Na 15 jaar terug van weggeweest: iCriminals.nl is terug (BETA)!

    Servertjee 18 februari 2026 om 16:57

Marktplaats

  • 370 Nieuwe Domeinnamen April 2026

    shiga 1 mei 2026 om 12:06
  • Snel een website nodig?

    Syntax 10 april 2026 om 12:55
  • Sicarras.com - Moderne Mafia Text-Based RPG

    Syntax 5 april 2026 om 16:22

Posts by Darsstar

  • MD5 in db?

    • Darsstar
    • 25 december 2009 om 02:36
    Citaat van dragontje124

    hoe groter de hash hoe meer mogelijkheden dus hoe minder kans op collisions


    *gaat er even van uit dat er geen maximale opslag capaciteit is*
    Aangezien er oneindig veel mogelijkheden. (door geen maximale opslag)
    Wat krijg je als je oneindig deelt door het aantal mogelijke hashes?
    emhe...
    Oneindig? Een zoveelste deel van een steeds groter wordende oneindigheid?

    http://php.net/manual/en/function.sha1.php
    De eerste comment (van boven af gezien) gaat over random salts :p

  • MD5 in db?

    • Darsstar
    • 25 december 2009 om 02:13

    Hashes zijn NIET decodeerbaar...
    Wel te brutforcen (zoeken naar iets wat de zelfde hash geeft)
    Gooi en nog een salt bij en je hebt rainbow tables (databases met voor en na situaties) zo goed als uitgeschakeld...
    Maak de salt random op de een of andere manier (zorg dat je deze wel weer terug kunt vinden) en je hebt een grote kans dat je nog beter bent...

    dragontje124
    Ik gebruik veel liever sha512!

  • MD5 in db?

    • Darsstar
    • 25 december 2009 om 02:10

    Ik zal zeggen wat NIET slim is:
    Het wachtwoord als plaintext opslaan in de database!

    Zet het als gesalte hash (sha512 of iets wat er qua sterkte op lijkt) in de database en je bent al behoorlijk goed bezig.

  • CLOSETOPPIC

    • Darsstar
    • 25 december 2009 om 02:04
    PHP
    SetCookie("Wachtwoord",Md5($_POST['wachtwoord']),(Time()+999999999999999999));


    verander je in

    PHP
    SetCookie("Wachtwoord",$_POST['wachtwoord'],(Time()+999999999999999999));

    [offtopic]IK BEN NIET VERANTWOORDELIJK VOOR DE VEILIGHEID VAN DEZE WIJZIGING!
    Die is dan trouwens 10^-99%[/offtopic]

  • Nachtbraak topic #3

    • Darsstar
    • 25 december 2009 om 01:58

    "Plaintext wachtwoord en MD5 hash van het plaintext wachtwoord komen niet overeen (FAIL)"
    Ik geef toch echt de fout aan hoor...

    En meer zal ik hem voorlopig niet echt gaan helpen...
    Als je je bedenkt wat zijn eerste 10 post waren mag hij nu al blij zijn dat ik hem help...

  • Nachtbraak topic #3

    • Darsstar
    • 25 december 2009 om 01:49

    Voor de mensen die willen lachen of het leuk vinden om over EPIC FAILs te lezen heb ik hier een leuke link:
    http://www.criminalspoint.com/forum/topic/4299.html

  • CLOSETOPPIC

    • Darsstar
    • 25 december 2009 om 01:47

    OK...

    Als ik ooit op je website kom,herinner me er dan alsjeblieft aan vooral NIET te registreren!

    Het wachtwoord wordt blijkbaar in plaintext opgeslagen in de database... (FAIL)
    Het wachtwoord wordt opgeslagen in een cookie (FAIL)
    Het wachtwoord wordt als MD5 hash opgeslagen in een cookie (HUGE FAIL)
    In Inloggen() wordt de MD5 hash vergeleken met het plaintext wachtwoord in de database (FAIL)
    Plaintext wachtwoord en MD5 hash van het plaintext wachtwoord komen niet overeen (FAIL)

    Een XSS lek op een verkeerde plaats (sommige plekken zijn relatief onschadelijk) en alle wachtwoorden kunnen achterhaald worden.

    Wat maakt dat van dit inlog systeem?
    Een EPIC FAIL!

    Als je iets wilt opslaan in een cookie dan is dat bijvoorbeeld het id van een gebruiker, niet de naam.
    Sla NOOIT het wachtwoord (in welke vorm dan ook) op in een cookie.
    Maak een hash aan van bijvoorbeeld het IP, de user-agent of weet ik veel wat en gebruik dat als extra authenticatie middel...

  • Nachtbraak topic #3

    • Darsstar
    • 25 december 2009 om 01:35

    Moet een goede beheerder die niet naar belgië gaat waar mogelijk geen internet is (niet zoals Darsstar) ervoor zorgen dat dat niet gebeurt...

    Natuurlijk kan ik er wel voor zorgen dat het niet gebeurt, door te zeggen dat ik het regel maar het uiteindelijk niet doe...

    Wees duidelijker met wat je bedoeld :p

  • Nachtbraak topic #3

    • Darsstar
    • 25 december 2009 om 01:27

    Strange...
    Ik niet bepaald...

  • CLOSETOPPIC

    • Darsstar
    • 25 december 2009 om 01:03

    Juist...
    So far so good...

    Nu nog even je login script posten en we kunnen kijken waar het mis gaat...

  • W3C fout?

    • Darsstar
    • 24 december 2009 om 14:36
    Citaat van RiiCk

    probeer de php echo... te veranderen in

    <?=$data->health;?>


    Wrong...
    Je moet naar de pagina toegaan...
    De broncode bekijken en kopieren...
    Naar de validator en daar de broncode plakken...
    En zeker niet denken dat je de source moet plakken...

  • CriminalsPoint V5

    • Darsstar
    • 24 december 2009 om 14:23
    Citaat van Dein

    Ik hoop dat het snel online staat, heb zelf ook ervaring met PHP-fusion gehad dus ik weet wel wat me te wachten staat, althans deels toch, want er komt hopelijk een nieuwe layout in? :)


    Niet mee eens...
    Wil nou niet dat Pim de zelfde fout maakt als Dominic: de nieuwe versie te snel online zetten.

  • W3C fout?

    • Darsstar
    • 24 december 2009 om 14:20

    1) laat PHP eerst de PHP parser en laat WC3 alleen html checken..
    2) alle tags moeten afgesloten worden, <img> tags sluit niet af met een </img> maar door de laatste ">" te vervangen met " />"

  • Script overzicht behouden

    • Darsstar
    • 24 december 2009 om 13:31

    Over dat consequent zijn...
    Language constructs zijn iets anders dan functies...
    echo, print, include, inlcude_once, require, require_once, return, break, exit, die en vast nog wel wat andere zijn allemaal language constructs...
    Language constructs hebben geen haakjes nodig...

    Ook zijn dubbele quotes langzamer dan enkele quotes...

  • Script overzicht behouden

    • Darsstar
    • 24 december 2009 om 13:24

    En wat als je host besluit de instellingen te veranderen?
    Of als je moet verhuizen?

    Dan ben je opeens gigantisch het zaadje...

    Gebruik <?php, dan weet je zeker dat je er nooit problemen mee gaat krijgen...

    EDIT:
    SC-Webmedia
    Nog meer reden om <?php te gebruiken, als die ooit gaan verdwijnen dan is het geen PHP meer en zal je code toch niet meer werken XD

  • Script overzicht behouden

    • Darsstar
    • 24 december 2009 om 13:17

    2 dingen:
    1) blijf consequent, je hebt nu een { op de zelfde regel als de if, en een paar regels verder zet je de { juist op de volgende regel...
    2) gebruik <?php ipv <?, niet elke host heeft de short tags instelling aan staan...

    PS. gebruik htmlspecialchars() voor user input (login naam bijvoorbeeld)

  • Script overzicht behouden

    • Darsstar
    • 24 december 2009 om 10:58
    Citaat van larsisgoed9

    Inspringing vind ik gewoon irritant, dus dat doe ik zelf nooit.


    WHAT!?!

    Inspringen is irritant?
    Niet inspringen is irritant...

    neem nou de volgende code:

    PHP
    /**
    	 * Get the value of a field.
    	 *
    	 * @throws  Sprig_Exception  field does not exist
    	 * @param   string  field name
    	 * @return  mixed
    	 */
    	public function __get($name)
    	{
    		if ( ! $this->_init)
    		{
    			// The constructor must always be called first
    			$this->__construct();
    
    
    			// This object is about to be loaded by mysql_fetch_object() or similar
    			$this->state('loading');
    		}
    
    
    		if ( ! isset($this->_fields[$name]))
    		{
    			throw new Sprig_Exception(':name model does not have a field :field',
    				array(':name' => get_class($this), ':field' => $name));
    		}
    
    
    		if (isset($this->_related[$name]))
    		{
    			// Shortcut to any related object
    			return $this->_related[$name];
    		}
    
    
    		$field = $this->_fields[$name];
    
    
    		if ($this->changed($name))
    		{
    			$value = $this->_changed[$name];
    		}
    		elseif (array_key_exists($name, $this->_original))
    		{
    			$value = $this->_original[$name];
    		}
    
    
    		if ($field instanceof Sprig_Field_ForeignKey)
    		{
    			if ( ! isset($this->_related[$name]))
    			{
    				$model = Sprig::factory($field->model);
    
    
    				if ($field instanceof Sprig_Field_HasMany)
    				{
    					if ($field instanceof Sprig_Field_ManyToMany)
    					{
    						if (isset($value))
    						{
    							if (empty($value))
    							{
    								return new Database_Result_Cached(array(), '');
    							}
    							else
    							{
    								$query = DB::select()
    									->where($model->pk(), 'IN', $value);
    							}
    						}
    						else
    						{							
    							$query = DB::select()
    								->join($field->through)
    									->on($model->fk($field->through, $field->foreign_field), '=', $model->pk(TRUE))
    								->where($this->fk($field->through, $name), '=', $this->{$this->_primary_key});
    						}
    					}
    					else
    					{
    						if (isset($value))
    						{
    							$query = DB::select()
    								->where($model->pk(), 'IN', $value);
    						}
    						else
    						{
    							$query = DB::select()
    								->where($model->fk(NULL, $field->foreign_field), '=', $this->{$this->_primary_key});
    						}
    					}					
    
    
    					$related = $model->load($query, NULL);
    
    
    					if ( ! $this->changed($name))
    					{
    						// We can assume this is the original value because no
    						// changed value exists
    						$this->_original[$name] = $field->value($related);
    					}
    				}
    				elseif ($field instanceof Sprig_Field_BelongsTo)
    				{
    					$related = $model->values(array($model->pk() => $value));
    				}
    				elseif ($field instanceof Sprig_Field_HasOne)
    				{
    					$related = $model->values(array($this->_model => $this->{$this->_primary_key}));
    				}
    
    
    				$value = $this->_related[$name] = $related;
    			}
    		}
    
    
    		return $value;
    	}
    Toon Meer


    Irritant?
    Niet echt...

    PHP
    /**
    * Get the value of a field.
    *
    * @throws  Sprig_Exception  field does not exist
    * @param   string  field name
    * @return  mixed
    */
    public function __get($name)
    {
    if ( ! $this->_init)
    {
    // The constructor must always be called first
    $this->__construct();
    
    
    // This object is about to be loaded by mysql_fetch_object() or similar
    $this->state('loading');
    }
    
    
    if ( ! isset($this->_fields[$name]))
    {
    throw new Sprig_Exception(':name model does not have a field :field',
    array(':name' => get_class($this), ':field' => $name));
    }
    
    
    if (isset($this->_related[$name]))
    {
    // Shortcut to any related object
    return $this->_related[$name];
    }
    
    
    $field = $this->_fields[$name];
    
    
    if ($this->changed($name))
    {
    $value = $this->_changed[$name];
    }
    elseif (array_key_exists($name, $this->_original))
    {
    $value = $this->_original[$name];
    }
    
    
    if ($field instanceof Sprig_Field_ForeignKey)
    {
    if ( ! isset($this->_related[$name]))
    {
    $model = Sprig::factory($field->model);
    
    
    if ($field instanceof Sprig_Field_HasMany)
    {
    if ($field instanceof Sprig_Field_ManyToMany)
    {
    if (isset($value))
    {
    if (empty($value))
    {
    	return new Database_Result_Cached(array(), '');
    }
    else
    {
    	$query = DB::select()
    		->where($model->pk(), 'IN', $value);
    }
    }
    else
    {							
    $query = DB::select()
    	->join($field->through)
    		->on($model->fk($field->through, $field->foreign_field), '=', $model->pk(TRUE))
    	->where($this->fk($field->through, $name), '=', $this->{$this->_primary_key});
    }
    }
    else
    {
    if (isset($value))
    {
    $query = DB::select()
    	->where($model->pk(), 'IN', $value);
    }
    else
    {
    $query = DB::select()
    	->where($model->fk(NULL, $field->foreign_field), '=', $this->{$this->_primary_key});
    }
    }					
    
    
    $related = $model->load($query, NULL);
    
    
    if ( ! $this->changed($name))
    {
    // We can assume this is the original value because no
    // changed value exists
    $this->_original[$name] = $field->value($related);
    }
    }
    elseif ($field instanceof Sprig_Field_BelongsTo)
    {
    $related = $model->values(array($model->pk() => $value));
    }
    elseif ($field instanceof Sprig_Field_HasOne)
    {
    $related = $model->values(array($this->_model => $this->{$this->_primary_key}));
    }
    
    
    $value = $this->_related[$name] = $related;
    }
    }
    
    
    return $value;
    }
    Toon Meer


    Irritant?
    HEEL ERG!
    Dan gaan we nu de voor en de nadelen vergelijken...
    Wat een verassing, indenting wint!

    Dat is in elk geval de mening van goede scripters...

    Als je het irritant vind om telkens tabs te zetten, kies dan een andere editor...

  • Nachtbraak topic #2

    • Darsstar
    • 24 december 2009 om 03:32

    Truste mensen!

    PS. ben ik nou de enige die denkt te kunnen herinneren dat CP tijdelijk op e107 dingesje heeft gedraait?

  • Nachtbraak topic #2

    • Darsstar
    • 24 december 2009 om 02:46

    webdam-x
    Jij bent ook flauw zeg...
    Ik mag je niet eens een banpuntje geven? XD

  • Nachtbraak topic #2

    • Darsstar
    • 24 december 2009 om 02:37
    Citaat van webdam-x

    Dan zijn ze de sjaak (xD)
    mja zo ben jij niet..... toch? (a)

    [slijm] Go Darsstar, Darsstar FTW, Darsstar is de beste admin [/slijm]


    *krijgt grote nijgingen webdam-x voor de grap een banpuntje te geven*

ICT Nieuws

  • Datalek bij leverancier Canvas - Universiteit van Amsterdam

    ICTscripters 10 mei 2026 om 12:03
  • Data privacy in 2026: Hoe de naleving van GDPR verandert

    ICTscripters 8 mei 2026 om 12:16
  • Tech.eu - Europees Start-up, Financiering en Technologienieuws

    ICTscripters 7 mei 2026 om 12:15

Blogs

  • Functioneel ontwerp

    Dees 28 december 2014 om 12:38
  • Access Control List implementatie in PHP/MySQL - deel 1/2

    FangorN 28 december 2018 om 12:35
  • Access Control List implementatie in PHP/MySQL - deel 2/2

    FangorN 29 december 2018 om 12:37
  1. Marktplaats
  2. Design
  3. Voorwaarden
  4. Ons team
  5. Leden
  6. Geschiedenis
  7. Regels
  8. Links
  9. Privacy Policy
ICTscripters ©2005 - 2026 , goedkope hosting door DiMoWeb.com, BE0558.915.582
Sponsors: Beste kattenhotel provincie Antwerpen | Beste Zetes eid kaartlezer webshop
Style: Nexus by cls-design
Stylename
Nexus
Manufacturer
cls-design
Licence
Commercial styles
Help
Supportforum
Visit cls-design