| Rating | Name | Duplication | Size | Complexity | Changes | Bugs | Features |
|---|---|---|---|---|---|---|---|
| A | Hash\Hasher\Blowfish::__construct() | 0 | 6 | 4 | 0 | 0 | 0 |
| A | AngryBytes\Hash\Hasher\Password::setCost() | 0 | 8 | 4 | 0 | 0 | 0 |
| A | AngryBytes\Hash\HMAC::hmac() | 0 | 12 | 3 | 0 | 0 | 0 |
| A | AngryBytes\Hash\Hash::setSalt() | 0 | 8 | 4 | 1 | 0 | 0 |
| A | AngryBytes\Hash\Hasher\MD5::hash() | 0 | 3 | 2 | 0 | 0 | 0 |
| A | AngryBytes\Hash\Hash::verifyShortHash() | 0 | 4 | 1 | 0 | 0 | 0 |
| A | AngryBytes\Hash\Hasher\MD5::verify() | 0 | 4 | 1 | 0 | 0 | 0 |
| A | Hasher\Blowfish::setWorkFactor() | 0 | 6 | 3 | 0 | 0 | 0 |
| A | AngryBytes\Hash\Hash::getDataString() | 0 | 4 | 2 | 0 | 0 | 0 |
| A | AngryBytes\Hash\Hash::__construct() | 0 | 3 | 1 | 0 | 0 | 0 |
| A | AngryBytes\Hash\Hasher\Blowfish::hash() | 0 | 3 | 2 | 0 | 0 | 0 |
| A | AngryBytes\Hash\Hash::parseHashOptions() | 0 | 5 | 2 | 0 | 0 | 0 |
| A | AngryBytes\Hash\Hash::hash() | 0 | 4 | 1 | 0 | 0 | 0 |
| A | AngryBytes\Hash\Hasher\Blowfish::verify() | 0 | 4 | 1 | 0 | 0 | 0 |
| A | AngryBytes\Hash\Hash::verify() | 0 | 5 | 1 | 0 | 0 | 0 |