Skocz do zawartości
"Idzie nowe..." - o zmianach i nie tylko ×
Przeniesienie zakupów z IPS Marketplace / Moving bought items from IPS Marketplace ×

Rekomendowane odpowiedzi

Opublikowano

Potrzebuje edycji kodu IPSMembers.php po którym  całkowicie przy rejestracjach / zmianach haseł nie koduje się hasło za pomocą saltu (używa samego md5) bawiłem się z tym od cholery i do tej pory nie mogę znaleźć sposobu. Potrzebuje w celu odczytywania hasła przez serwer gry (tworzenie kont przez forum)

Opublikowano
8 godzin temu, DawPi napisał:

Jak chce niech się bawi.

Plik: system/Member/Member.php

Metoda:


	/**
	 * Generate a salt
	 *
	 * @return	string
	 */
	public function generateSalt()
	{

 

 

Sęk w tym, że już się w to bawiłem i nawet jeśli zmieniłem, aby salt był pusty to i tak to dziwnie hashowało.

Opublikowano
18 godzin temu, DawPi napisał:

Pokaż Twój kod. Mamy wróżyć?

 

static public function generatePasswordSalt($len=5)
	{
		$salt = '';

		for ( $i = 0; $i < $len; $i++ )
		{
			$num   = mt_rand(33, 126);

			if ( $num == '92' )
			{
				$num = 93;
			}

			$salt .= chr( $num );
		}

		return $salt;
	}

 

	static public function generateCompiledPasshash( $salt, $md5_once_password )
	{
		return md5( md5( $salt ) . $md5_once_password );
	}
public static function makePassword()
	{
		$pass = "";

		// Want it random you say, eh?
		// (enter evil laugh)

		$unique_id 	= uniqid( mt_rand(), TRUE );
		$prefix		= IPSMember::generatePasswordSalt();
		$unique_id .= md5( $prefix );

		usleep( mt_rand(15000,1000000) );
		// Hmm, wonder how long we slept for

		$new_uniqueid = uniqid( mt_rand(), TRUE );

		$final_rand = md5( $unique_id . $new_uniqueid );

		for ($i = 0; $i < 15; $i++)
		{
			$pass .= $final_rand{ mt_rand(0, 31) };
		}

		return $pass;
	}

 

		$finalTables['members']['members_pass_salt']		= IPSMember::generatePasswordSalt(5);
		$finalTables['members']['members_pass_hash']		= IPSMember::generateCompiledPasshash( $finalTables['members']['members_pass_salt'], $md_5_password );

 

	static public function updatePassword( $member_key, $new_md5_pass )
	{
		if ( ! $member_key or ! $new_md5_pass )
		{
			return false;
		}

		/* Load member */
		$member = self::load( $member_key );

		$new_pass = md5( md5( $member['members_pass_salt'] ) . $new_md5_pass );

		self::save( $member_key, array( 'core' => array( 'members_pass_hash' => $new_pass ) ) );

		return true;
	}

 

  • Manager
Opublikowano

Nie rozumiemy się. Po co wklejasz kod z forum, jak sam mogę go sobie sprawdzić? :)

Mówię o tym Twoim, gdzie rzekomo:

Dnia 23.06.2016 o 16:57, Brother napisał:

 

Sęk w tym, że już się w to bawiłem i nawet jeśli zmieniłem, aby salt był pusty to i tak to dziwnie hashowało.

 

intermedia - profesjonalne rozwiązania Invision Power Board

---

Chcesz uzyskać szybko i sprawnie pomoc? Uzupełnij wersję i adres w profilu.

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Umieściliśmy na Twoim urządzeniu pliki cookie, aby pomóc Ci usprawnić przeglądanie strony. Możesz dostosować ustawienia plików cookie, w przeciwnym wypadku zakładamy, że wyrażasz na to zgodę.