

Cryptomañana(Cryptomanana)は、プロジェクトのセキュリティを高めるためのオブジェクト指向のソリューションを提供するPHP暗号化フレームワークです。プロジェクトのコードベースは、Solid/Kiss/Dry Principlesに従い、いくつかの一般的なソフトウェア設計パターンを実装しています。ソフトウェアフレームワークは、膨大な暗号化プリミティブ、プロトコル、およびサービスを備えた完全に機能的な暗号モデルを提供します。安全なハッシュ、暗号化、キー交換、データ署名、ランダムデータ生成などに非常に役立ちます。 Cryptomañanaは、開発をより速く、より安全にするためにここにいます!
開発者:Tony Karavasilev
# Install the package at your project via Composer
composer require karavasilev/cryptomanana
# Optionally, check if your system is well-configured
php vendor/karavasilev/cryptomanana/check.php
# Or: ./vendor/karavasilev/cryptomanana/check PHP Version :5.5、5.6、7.0、7.1、7.2、7.3、7.4、8.0、8.1、8.2または8.3;spl拡張(php> = 5.0.0のバンドル、php> = 5.3.0以降コアに追加);hashエクステンション(php> = 5.1.2でバンドルされ、php> = 7.4.0以降コアに追加);openssl拡張機能(デフォルトでphp> = 5.0.0に追加され、openSSLライブラリが必要です);OpenSSL Library 。src/autoload.phpを介したPHPまたはマニュアルオートローディングのComposer Dependency Manager 。libsodiumまたはsodium 、 mbstring 、 zend-opcache 、 apcu 。 Cryptomañanaフレームワーク-DOI 10.5281/Zenodo.2604693 (概念として)
git clone --depth=1 https://github.com/TonyKaravasilev/CryptoManana.git
cd CryptoManana && composer install --profile
vendor/bin/phpunit --testdox --no-coverage
vendor/bin/phpcs注: sys_temp_dirまたはupload_tmp_dir場所をphp.ini構成ファイルに設定することを忘れないでください。
mbstring PHP拡張機能をインストールして有効にします。 // Autoload packages via Composer class autoloader
require ' vendor ' . DIRECTORY_SEPARATOR . ' autoload.php ' ;
// Configure PHP internal encoding (default is `UTF-8` for PHP >= 5.6)
ini_set ( ' default_charset ' , ' UTF-8 ' );
// Configure `mbstring` to use your favourite UTF-8 encoding
mb_regex_encoding ( ' UTF-8 ' );
mb_internal_encoding ( ' UTF-8 ' );
mb_http_output ( ' UTF-8 ' );
// Enable the `mbstring` support for CryptoManana components
CryptoManana Core StringBuilder:: useMbString ( true );
// Start coding hard...注:フレームワークは拡張機能なしで機能し、パフォーマンス上の理由でデフォルトで使用することはできません。
デフォルトでは、Cryptomananaフレームワークは、さまざまな古いPHPバージョン(PolyFill)の互換性を提供します。一定の定義により、互換性チェック( src/compatibility.phpにある)を無効にすることができます。これを無効にする理由はあまりありませんが、独自のポリフィルロジックなどが必要になる場合があります。自動装置の前またはファーストクラスの使用(アクセス)の前に、グローバル定数を定義する必要があります。
define ( ' CRYPTO_MANANA_COMPATIBILITY_OFF ' , true ); // const CRYPTO_MANANA_COMPATIBILITY_OFF = 1;注:ほとんどの場合、これを行う必要はありません。スクリプトは、HTTPリクエスト(またはCLI実行)ごとに1回のみと呼ばれます。