['openssl'], 'namespace' => 'ZN\Cryptography\Drivers', 'config' => 'Cryptography', 'default' => 'ZN\Cryptography\CryptographyDefaultConfiguration' ]; /** * It encrypts the data. * * @param string $data * @param string|array $settings * * @return string */ public function encrypt(string $data, $settings = []) : string { return $this->driver->encrypt($data, $settings); } /** * It decrypts the data. * * @param string $data * @param string|array $settings * * @return string */ public function decrypt(string $data, $settings = []) : string { return $this->driver->decrypt($data, $settings); } /** * Generates a random password. * * @param int $length * * @return string */ public function keygen(int $length = 8) : string { return $this->driver->keygen($length); } }