File Manager Lite
Dir:
/home/codewavebd/public_html/vendor/laravel/framework/src/Illuminate/Encryption
Upload
[..]
Encrypter.php (11.08 KB)
Edit
Rename
Del
EncryptionServiceProvider.php (2.09 KB)
Edit
Rename
Del
LICENSE.md (1.05 KB)
Edit
Rename
Del
MissingAppKeyException.php (364 B)
Edit
Rename
Del
composer.json (914 B)
Edit
Rename
Del
Edit: EncryptionServiceProvider.php
<?php namespace Illuminate\Encryption; use Illuminate\Support\ServiceProvider; use Illuminate\Support\Str; use Laravel\SerializableClosure\SerializableClosure; class EncryptionServiceProvider extends ServiceProvider { /** * Register the service provider. * * @return void */ public function register() { $this->registerEncrypter(); $this->registerSerializableClosureSecurityKey(); } /** * Register the encrypter. * * @return void */ protected function registerEncrypter() { $this->app->singleton('encrypter', function ($app) { $config = $app->make('config')->get('app'); return (new Encrypter($this->parseKey($config), $config['cipher'])) ->previousKeys(array_map( fn ($key) => $this->parseKey(['key' => $key]), $config['previous_keys'] ?? [] )); }); } /** * Configure Serializable Closure signing for security. * * @return void */ protected function registerSerializableClosureSecurityKey() { $config = $this->app->make('config')->get('app'); if (! class_exists(SerializableClosure::class) || empty($config['key'])) { return; } SerializableClosure::setSecretKey($this->parseKey($config)); } /** * Parse the encryption key. * * @param array $config * @return string */ protected function parseKey(array $config) { if (Str::startsWith($key = $this->key($config), $prefix = 'base64:')) { $key = base64_decode(Str::after($key, $prefix)); } return $key; } /** * Extract the encryption key from the given configuration. * * @param array $config * @return string * * @throws \Illuminate\Encryption\MissingAppKeyException */ protected function key(array $config) { return tap($config['key'], function ($key) { if (empty($key)) { throw new MissingAppKeyException; } }); } }
Simpan