1. Go to this page and download the library: Download oire/iridium library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
oire / iridium example snippets
use Oire\Iridium\Base64;
use Oire\Iridium\Exception\Base64Exception;
$text = "The quick brown fox jumps over the lazy dog";
$encoded = Base64::encode($text);
echo $encoded.PHP_EOL;
use Oire\Iridium\Exception\PasswordException;
use Oire\Iridium\Key\SharedKey;
use Oire\Iridium\Password;
// You should have $key somewhere in an environment variable
$sharedKey = new SharedKey($key);
try {
$storeMe = Password::lock($_POST['password'], $sharedKey);
} catch (PasswordException $e) {
// Handle errors
}
try {
$isPasswordValid = Password::check($_POST['password'], $hashFromDatabase, $sharedKey);
} catch (PasswordException $e) {
// Handle errors. Something went wrong: most often it's a wrong or corrupted key
}
if ($isPasswordValid) {
// OK
} else {
// Wrong password
}
use Oire\Iridium\SplitToken;
// You should have set your $dbConnection first as a PDO instance
$splitToken = SplitToken::create(
dbConnection: $dbConnection,
expirationTime: time() + 1800,
userId: 123,
tokenType: 3,
additionalInfo: '{"some": "data"}
)
->persist();
use Oire\Iridium\Exception\InvalidTokenException;
use Oire\Iridium\SplitToken;
try {
$splitToken = SplitToken::fromString($token, $dbConnection);
} catch (InvalidTokenException $e) {
// Something went wrong with the token: either it is invalid, not found or has been tampered with
}
if ($splitToken->isExpired()) {
// The token is correct but expired
}
// Given that $splitToken contains a valid token
$splitToken = $splitToken->revokeToken(true);