Fix driver token table and IV padding

This commit is contained in:
Hamza-Ayed
2026-04-25 11:48:52 +03:00
parent fe5fa1feff
commit d78da5de88
3 changed files with 10 additions and 4 deletions

View File

@@ -28,7 +28,10 @@ class LegacyEncryption
}
$this->key = trim(file_get_contents($keyPath));
$this->iv = config('intaleq.legacy_iv', '');
$this->iv = config('intaleq.legacy_iv', env('initializationVector', ''));
if (strlen($this->iv) !== 16) {
$this->iv = str_pad($this->iv, 16, "\0");
}
}
/**

View File

@@ -561,7 +561,7 @@ class AuthController extends Controller
}
// Security Check: Verify fingerprint matches stored token
$storedToken = DB::connection('primary')->table('captainToken')
$storedToken = DB::connection('primary')->table('driverToken')
->where('captain_id', $driver->id)
->first();
@@ -571,14 +571,14 @@ class AuthController extends Controller
return $this->failure('Security mismatch: Invalid device fingerprint', 403);
}
// Update fingerprint and token
DB::connection('primary')->table('captainToken')->where('captain_id', $driver->id)
DB::connection('primary')->table('driverToken')->where('captain_id', $driver->id)
->update([
'fingerPrint' => $request->input('fingerPrint'),
'token' => $request->input('fcm_token'),
'updated_at' => now()
]);
} else {
DB::connection('primary')->table('captainToken')->insert([
DB::connection('primary')->table('driverToken')->insert([
'captain_id' => $driver->id,
'fingerPrint' => $request->input('fingerPrint'),
'token' => $request->input('fcm_token'),

View File

@@ -20,6 +20,9 @@ class LegacyEncryption
}
$this->iv = config('intaleq.legacy_iv', env('initializationVector', ''));
if (strlen($this->iv) !== 16) {
$this->iv = str_pad($this->iv, 16, "\0");
}
if (strlen($this->key) !== 32) {
// Log warning or throw error in production