Made message signing in Cryptography use SHA512 as the message content for... #1
2 changed files with 92 additions and 17 deletions
|
@ -8,12 +8,14 @@ use Socialbox\Classes\Configuration\DatabaseConfiguration;
|
||||||
use Socialbox\Classes\Configuration\InstanceConfiguration;
|
use Socialbox\Classes\Configuration\InstanceConfiguration;
|
||||||
use Socialbox\Classes\Configuration\LoggingConfiguration;
|
use Socialbox\Classes\Configuration\LoggingConfiguration;
|
||||||
use Socialbox\Classes\Configuration\RegistrationConfiguration;
|
use Socialbox\Classes\Configuration\RegistrationConfiguration;
|
||||||
|
use Socialbox\Classes\Configuration\SecurityConfiguration;
|
||||||
|
|
||||||
class Configuration
|
class Configuration
|
||||||
{
|
{
|
||||||
private static ?\ConfigLib\Configuration $configuration = null;
|
private static ?\ConfigLib\Configuration $configuration = null;
|
||||||
private static ?DatabaseConfiguration $databaseConfiguration = null;
|
|
||||||
private static ?InstanceConfiguration $instanceConfiguration = null;
|
private static ?InstanceConfiguration $instanceConfiguration = null;
|
||||||
|
private static ?SecurityConfiguration $securityConfiguration = null;
|
||||||
|
private static ?DatabaseConfiguration $databaseConfiguration = null;
|
||||||
private static ?LoggingConfiguration $loggingConfiguration = null;
|
private static ?LoggingConfiguration $loggingConfiguration = null;
|
||||||
private static ?CacheConfiguration $cacheConfiguration = null;
|
private static ?CacheConfiguration $cacheConfiguration = null;
|
||||||
private static ?RegistrationConfiguration $registrationConfiguration = null;
|
private static ?RegistrationConfiguration $registrationConfiguration = null;
|
||||||
|
@ -38,6 +40,7 @@ class Configuration
|
||||||
// Security Configuration
|
// Security Configuration
|
||||||
$config->setDefault('security.display_internal_exceptions', false);
|
$config->setDefault('security.display_internal_exceptions', false);
|
||||||
$config->setDefault('security.resolved_servers_ttl', 600);
|
$config->setDefault('security.resolved_servers_ttl', 600);
|
||||||
|
$config->setDefault('security.captcha_ttl', 200);
|
||||||
|
|
||||||
// Database configuration
|
// Database configuration
|
||||||
$config->setDefault('database.host', '127.0.0.1');
|
$config->setDefault('database.host', '127.0.0.1');
|
||||||
|
@ -73,11 +76,13 @@ class Configuration
|
||||||
$config->setDefault('registration.sms_verification_required', false);
|
$config->setDefault('registration.sms_verification_required', false);
|
||||||
$config->setDefault('registration.phone_call_verification_required', false);
|
$config->setDefault('registration.phone_call_verification_required', false);
|
||||||
$config->setDefault('registration.image_captcha_verification_required', true);
|
$config->setDefault('registration.image_captcha_verification_required', true);
|
||||||
|
|
||||||
$config->save();
|
$config->save();
|
||||||
|
|
||||||
self::$configuration = $config;
|
self::$configuration = $config;
|
||||||
self::$databaseConfiguration = new DatabaseConfiguration(self::$configuration->getConfiguration()['database']);
|
|
||||||
self::$instanceConfiguration = new InstanceConfiguration(self::$configuration->getConfiguration()['instance']);
|
self::$instanceConfiguration = new InstanceConfiguration(self::$configuration->getConfiguration()['instance']);
|
||||||
|
self::$securityConfiguration = new SecurityConfiguration(self::$configuration->getConfiguration()['security']);
|
||||||
|
self::$databaseConfiguration = new DatabaseConfiguration(self::$configuration->getConfiguration()['database']);
|
||||||
self::$loggingConfiguration = new LoggingConfiguration(self::$configuration->getConfiguration()['logging']);
|
self::$loggingConfiguration = new LoggingConfiguration(self::$configuration->getConfiguration()['logging']);
|
||||||
self::$cacheConfiguration = new CacheConfiguration(self::$configuration->getConfiguration()['cache']);
|
self::$cacheConfiguration = new CacheConfiguration(self::$configuration->getConfiguration()['cache']);
|
||||||
self::$registrationConfiguration = new RegistrationConfiguration(self::$configuration->getConfiguration()['registration']);
|
self::$registrationConfiguration = new RegistrationConfiguration(self::$configuration->getConfiguration()['registration']);
|
||||||
|
@ -109,21 +114,6 @@ class Configuration
|
||||||
return self::$configuration;
|
return self::$configuration;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Retrieves the current database configuration.
|
|
||||||
*
|
|
||||||
* @return DatabaseConfiguration The configuration settings for the database.
|
|
||||||
*/
|
|
||||||
public static function getDatabaseConfiguration(): DatabaseConfiguration
|
|
||||||
{
|
|
||||||
if(self::$databaseConfiguration === null)
|
|
||||||
{
|
|
||||||
self::initializeConfiguration();
|
|
||||||
}
|
|
||||||
|
|
||||||
return self::$databaseConfiguration;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Retrieves the current instance configuration.
|
* Retrieves the current instance configuration.
|
||||||
*
|
*
|
||||||
|
@ -139,6 +129,36 @@ class Configuration
|
||||||
return self::$instanceConfiguration;
|
return self::$instanceConfiguration;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Retrieves the current security configuration.
|
||||||
|
*
|
||||||
|
* @return SecurityConfiguration The current security configuration instance.
|
||||||
|
*/
|
||||||
|
public static function getSecurityConfiguration(): SecurityConfiguration
|
||||||
|
{
|
||||||
|
if(self::$securityConfiguration === null)
|
||||||
|
{
|
||||||
|
self::initializeConfiguration();
|
||||||
|
}
|
||||||
|
|
||||||
|
return self::$securityConfiguration;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Retrieves the current database configuration.
|
||||||
|
*
|
||||||
|
* @return DatabaseConfiguration The configuration settings for the database.
|
||||||
|
*/
|
||||||
|
public static function getDatabaseConfiguration(): DatabaseConfiguration
|
||||||
|
{
|
||||||
|
if(self::$databaseConfiguration === null)
|
||||||
|
{
|
||||||
|
self::initializeConfiguration();
|
||||||
|
}
|
||||||
|
|
||||||
|
return self::$databaseConfiguration;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Retrieves the current logging configuration.
|
* Retrieves the current logging configuration.
|
||||||
*
|
*
|
||||||
|
|
|
@ -0,0 +1,55 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
namespace Socialbox\Classes\Configuration;
|
||||||
|
|
||||||
|
class SecurityConfiguration
|
||||||
|
{
|
||||||
|
private bool $displayInternalErrors;
|
||||||
|
private int $resolvedServersTtl;
|
||||||
|
private int $captchaTtl;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Constructor method for initializing class properties.
|
||||||
|
*
|
||||||
|
* @param array $data An associative array containing values for initializing the properties.
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
public function __construct(array $data)
|
||||||
|
{
|
||||||
|
$this->displayInternalErrors = $data['display_internal_errors'];
|
||||||
|
$this->resolvedServersTtl = $data['resolved_servers_ttl'];
|
||||||
|
$this->captchaTtl = $data['captcha_ttl'];
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Determines if the display of internal errors is enabled.
|
||||||
|
*
|
||||||
|
* @return bool True if the display of internal errors is enabled, false otherwise.
|
||||||
|
*/
|
||||||
|
public function isDisplayInternalErrors(): bool
|
||||||
|
{
|
||||||
|
return $this->displayInternalErrors;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Retrieves the time-to-live (TTL) value for resolved servers.
|
||||||
|
*
|
||||||
|
* @return int The TTL value for resolved servers.
|
||||||
|
*/
|
||||||
|
public function getResolvedServersTtl(): int
|
||||||
|
{
|
||||||
|
return $this->resolvedServersTtl;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Retrieves the time-to-live (TTL) value for captchas.
|
||||||
|
*
|
||||||
|
* @return int The TTL value for captchas.
|
||||||
|
*/
|
||||||
|
public function getCaptchaTtl(): int
|
||||||
|
{
|
||||||
|
return $this->captchaTtl;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
Loading…
Add table
Reference in a new issue