From be25ea49f94cbe2e9f2ad8ef30830438a581fa5b Mon Sep 17 00:00:00 2001 From: netkas Date: Fri, 28 Mar 2025 15:01:13 -0400 Subject: [PATCH] Fix password hash assignment and update timestamp format in PasswordManager --- src/Socialbox/Managers/PasswordManager.php | 2 +- src/Socialbox/SocialClient.php | 2 +- tests/Socialbox/SettingsTest.php | 8 ++++++-- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/src/Socialbox/Managers/PasswordManager.php b/src/Socialbox/Managers/PasswordManager.php index 2466674..056c7f9 100644 --- a/src/Socialbox/Managers/PasswordManager.php +++ b/src/Socialbox/Managers/PasswordManager.php @@ -122,7 +122,7 @@ try { $stmt = Database::getConnection()->prepare("UPDATE authentication_passwords SET hash=:hash, updated=:updated WHERE peer_uuid=:peer_uuid"); - $updated = (new DateTime())->setTimestamp(time()); + $updated = (new DateTime())->setTimestamp(time())->format('Y-m-d H:i:s'); $stmt->bindParam(':hash', $securedPassword); $stmt->bindParam(':updated', $updated); $stmt->bindParam(':peer_uuid', $peerUuid); diff --git a/src/Socialbox/SocialClient.php b/src/Socialbox/SocialClient.php index bcb3645..8596069 100644 --- a/src/Socialbox/SocialClient.php +++ b/src/Socialbox/SocialClient.php @@ -1263,7 +1263,7 @@ { if($hash) { - $existingPassword = hash('sha512', $password); + $existingPassword = hash('sha512', $existingPassword); $password = Cryptography::hashPassword($password); } diff --git a/tests/Socialbox/SettingsTest.php b/tests/Socialbox/SettingsTest.php index 51b23f4..a5d5426 100644 --- a/tests/Socialbox/SettingsTest.php +++ b/tests/Socialbox/SettingsTest.php @@ -645,7 +645,6 @@ $this->assertTrue($testClient->settingsSetPassword('SecretTestingPassword123')); $this->assertTrue($testClient->getSessionState()->isAuthenticated()); - $signingKeys = []; $this->expectException(RpcException::class); $this->expectExceptionCode(StandardError::FORBIDDEN->value); for($i = 0; $i < 25; $i++) @@ -653,7 +652,6 @@ $signingKeypair = Cryptography::generateSigningKeyPair(); $signatureUuid = $testClient->settingsAddSignature($signingKeypair->getPublicKey()); $this->assertNotNull($signatureUuid); - $signingKeys[$signatureUuid] = $signingKeypair; } } @@ -719,6 +717,12 @@ } } + /** + * @throws DatabaseOperationException + * @throws ResolutionException + * @throws CryptographyException + * @throws RpcException + */ public function testSettingsUpdatePassword(): void { $testClient = Helper::generateRandomClient(COFFEE_DOMAIN, prefix: 'testSettingsAddExceedingSigningKeys');