Une implémentation PHP pure (sans aucune extension PHP externe) des algorithmes de hachage (cryptographie) BLAKE-256, GROESTL-256, JH-256, SKEIN-256 et KECCAK-256 . shift-reality/php-crypto est sous licence Apache License 2.0.
Installation (compositeur) :
"repositories": [ { "url": "https://github.com/shift-reality/php-crypto.git", "type": "git", "reference": "newlib" } ]
"require": { "shift196/lib-akash": "1.0.*" }
Usage:
Shift196AKashLibHasher::regBuiltinAlgos();
Shift196AKashLibHasher::registerAlgo('MYHASH', new MyHashImpl());
MyHashImpl
doit implémenter l'interface Shift196AKashLibIHashFunction
.
$algo = 'BLAKE256 or GROESTL256 or JH256 or SKEIN256 or KECCAK256';
$hashHex = Shift196AKashLibHasher::doHash($algo, Shift196AKashLibInputDataSupplier::forHex($dataHex))->hex(TRUE);
Étendez simplement Shift196AKashLibInputDataSupplier
et implémentez la méthode abstraite getInputData
.
!!! !!! AVERTISSEMENT !!! !!! !!! N'utilisez pas les classes internes de Shift196AKashLibUtil
elles peuvent être modifiées sans aucune notification !!! !!!
FAIRE :
-utiliser PHPUnit pour tester -ajouter plus d'algorithmes -écrire la classe Perf et mot de passe