Updated README
This commit is contained in:
parent
defe60efb9
commit
1fbe6f2fb0
63
README.md
63
README.md
|
@ -6,6 +6,8 @@ The Project is a simple php encryption wrapper, not even a library, the whole po
|
|||
## Usage
|
||||
Simply use the provided functions from the lib.php file, you can simply import it into any project using that file.
|
||||
|
||||
#### String Encryption
|
||||
|
||||
```php
|
||||
<?php
|
||||
require_once("./lib.php");
|
||||
|
@ -51,6 +53,67 @@ echo "Sizeof output:" . strlen($encryptedData) . "\n"; // Bytes
|
|||
echo "\n";
|
||||
```
|
||||
|
||||
#### File Encryption
|
||||
```php
|
||||
<?php
|
||||
|
||||
require("./lib.php");
|
||||
|
||||
/**
|
||||
* This is a simple example of how to encrypt files with the library
|
||||
* The following code will read the file in chunks instead of loading
|
||||
* the whole thing in memory, trying to keep the "Peak Memory Usage"
|
||||
* as low as possible.
|
||||
*/
|
||||
|
||||
define("INPUT_FILE", "./lib.php");
|
||||
define("OUTPUT_FILE", "./testdir/" . "./example.enc.php");
|
||||
define("DEC_OUTPUT_FILE", "./testdir/" . "./example.dec.php");
|
||||
|
||||
// Make sure the testing folder exists
|
||||
if ( !file_exists("./testdir") ) {
|
||||
mkdir("./testdir", 0777, true);
|
||||
}
|
||||
|
||||
|
||||
// Initialize the class
|
||||
$lib = new kpcrypt();
|
||||
|
||||
// $lib->setEncryptionBlocks(128); // This will take ~10 times more time, but will use half as much memory.
|
||||
// Really the best value is the default one.
|
||||
|
||||
$enc_start = round(microtime(true) * 1000);
|
||||
|
||||
// Encrypt the file
|
||||
$lib->encryptFile(INPUT_FILE, OUTPUT_FILE);
|
||||
|
||||
$enc_end = round(microtime(true) * 1000) - $enc_start;
|
||||
$dec_start = round(microtime(true) * 1000);
|
||||
|
||||
// Decrypt the file as well
|
||||
$lib->decryptFile(OUTPUT_FILE, DEC_OUTPUT_FILE);
|
||||
|
||||
$dec_end = round(microtime(true) * 1000) - $dec_start;
|
||||
|
||||
/**
|
||||
* NOTE: You can also compress the output using gzip
|
||||
*/
|
||||
|
||||
echo "\n\n";
|
||||
echo "Input File Size: " . round(filesize(INPUT_FILE) / 1024 / 1024, 2) . "Mb";
|
||||
echo "\n";
|
||||
echo "Output File Size: " . round(filesize(OUTPUT_FILE) / 1024 / 1024, 2) . "Mb";
|
||||
echo "\n";
|
||||
echo "Peak Memory: " . memory_get_peak_usage() / 1024 / 1024 . "Mb"; // Check the memory in Mb
|
||||
echo "\n";
|
||||
echo "Encryption Time: $enc_end ms\n"; // 9700k = ~210ms ( 4Mb = 100ms )
|
||||
echo "Decryption Time: $dec_end ms\n";
|
||||
echo "\n";
|
||||
$errors = $lib->getErrors();
|
||||
echo "Errors: " . ( !empty($errors) ? "\n" . json_encode($errors, JSON_PRETTY_PRINT) : "No Errors!");
|
||||
|
||||
```
|
||||
|
||||
## License
|
||||
The licensing of the project is the [MIT license](https://mit-license.org/)
|
||||
|
||||
|
|
Reference in New Issue