validatePerms(PDEncryption, int, boolean) |   | 60% |   | 43% | 8 | 9 | 7 | 16 | 0 | 1 |
prepareForDecryption(PDEncryption, COSArray, DecryptionMaterial) |   | 86% |   | 86% | 6 | 23 | 5 | 65 | 0 | 1 |
isUserPassword(String, byte[], byte[], int, byte[], int, int, boolean) |  | 0% |  | 0% | 3 | 3 | 3 | 3 | 1 | 1 |
computeEncryptedKeyRev56(byte[], boolean, byte[], byte[], byte[], byte[], int) |   | 76% |   | 70% | 3 | 6 | 6 | 24 | 0 | 1 |
logIfStrongEncryptionMissing() |  | 0% |  | 0% | 2 | 2 | 6 | 6 | 1 | 1 |
isOwnerPassword(String, byte[], byte[], int, byte[], int, int, boolean) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
computeOwnerPassword(byte[], byte[], int, int) |   | 87% |   | 91% | 1 | 7 | 1 | 16 | 0 | 1 |
isUserPassword(byte[], byte[], byte[], int, byte[], int, int, boolean) |   | 61% |   | 66% | 1 | 3 | 1 | 4 | 0 | 1 |
truncate127(byte[]) |   | 35% |   | 50% | 1 | 2 | 3 | 5 | 0 | 1 |
prepareDocumentForEncryption(PDDocument) |   | 90% |   | 71% | 4 | 8 | 4 | 31 | 0 | 1 |
prepareEncryptionDictRev6(String, String, PDEncryption, int) |   | 97% |  | 100% | 0 | 2 | 3 | 52 | 0 | 1 |
computeHash2B(byte[], byte[], byte[]) |   | 96% |  | 100% | 0 | 9 | 3 | 40 | 0 | 1 |
isUserPassword56(byte[], byte[], int) |   | 85% |   | 50% | 1 | 2 | 1 | 9 | 0 | 1 |
isOwnerPassword(byte[], byte[], byte[], int, byte[], int, int, boolean) |   | 93% |   | 87% | 1 | 5 | 1 | 14 | 0 | 1 |
computeHash2A(byte[], byte[], byte[]) |   | 88% |   | 83% | 1 | 4 | 1 | 11 | 0 | 1 |
getDocumentIDBytes(COSArray) |   | 85% |   | 50% | 2 | 3 | 1 | 6 | 0 | 1 |
computeSHA256(byte[], byte[], byte[]) |   | 82% |   | 50% | 1 | 2 | 0 | 4 | 0 | 1 |
computeRevisionNumber(int) |  | 94% |   | 85% | 2 | 8 | 1 | 11 | 0 | 1 |
static {...} |  | 100% | | n/a | 0 | 1 | 0 | 4 | 0 | 1 |
prepareEncryptionDictRev2345(String, String, PDEncryption, int, PDDocument, int, int) |  | 100% |   | 83% | 1 | 4 | 0 | 28 | 0 | 1 |
computeUserPassword(byte[], byte[], int, byte[], int, int, boolean) |  | 100% |   | 90% | 1 | 6 | 0 | 23 | 0 | 1 |
computeEncryptedKeyRev234(byte[], byte[], int, byte[], boolean, int, int) |  | 100% |  | 100% | 0 | 6 | 0 | 19 | 0 | 1 |
getUserPassword(byte[], byte[], int, int) |  | 100% |   | 90% | 1 | 6 | 0 | 16 | 0 | 1 |
computeRC4key(byte[], int, int) |  | 100% |  | 100% | 0 | 4 | 0 | 9 | 0 | 1 |
concat(byte[], byte[], byte[]) |  | 100% | | n/a | 0 | 1 | 0 | 5 | 0 | 1 |
truncateOrPad(byte[]) |  | 100% | | n/a | 0 | 1 | 0 | 5 | 0 | 1 |
computeEncryptedKey(byte[], byte[], byte[], byte[], byte[], int, byte[], int, int, boolean, boolean) |  | 100% |  | 100% | 0 | 3 | 0 | 3 | 0 | 1 |
isUserPassword234(byte[], byte[], byte[], int, byte[], int, int, boolean) |  | 100% |  | 100% | 0 | 2 | 0 | 4 | 0 | 1 |
prepareEncryptionDictAES(PDEncryption, COSName) |  | 100% | | n/a | 0 | 1 | 0 | 8 | 0 | 1 |
concat(byte[], byte[]) |  | 100% | | n/a | 0 | 1 | 0 | 4 | 0 | 1 |
StandardSecurityHandler(StandardProtectionPolicy) |  | 100% | | n/a | 0 | 1 | 0 | 2 | 0 | 1 |
StandardSecurityHandler() |  | 100% | | n/a | 0 | 1 | 0 | 2 | 0 | 1 |