Back to library list

com.google.guava__guava

Column Insecure: Icon yes indicates the version is insecure, otherwise no
Column CryptoMisuse: Icon yes indicates the version has cryptographic API misuse, otherwise no
Version Insecure CryptoMisuse Rule name Method Statement Details
10.0 no       no
10.0.1 no       no
11.0 no       yes MessageDigest com.google.common.hash.Hashing.<clinit>()V specialinvoke $r4.<com.google.common.hash.MessageDigestHashFunction: void <init>(java.lang.String)>(varReplacer888) Operation on object of type java.security.MessageDigest object not completed. Expected call to digest, update
- - yes MessageDigest com.google.common.hash.MessageDigestHashFunction.getMessageDigest(Ljava/lang/String;)Ljava/security/MessageDigest; $r2 = staticinvoke <java.security.MessageDigest: java.security.MessageDigest getInstance(java.lang.String)>(r0) First parameter (with value "SHA-1") should be any of {SHA-256, SHA-384, SHA-512}
11.0.1 no       yes MessageDigest com.google.common.hash.MessageDigestHashFunction.<init>(Ljava/lang/String;)V $i0 = virtualinvoke $r2.<java.security.MessageDigest: int getDigestLength()>() Operation on object of type java.security.MessageDigest object not completed. Expected call to digest, update
11.0.2 no       yes MessageDigest com.google.common.hash.BloomFilterStrategies$1.put(Ljava/lang/Object;Lcom/google/common/hash/Funnel;ILcom/google/common/hash/BloomFilterStrategies$BitArray;)V $r7 = interfaceinvoke $r6.<com.google.common.hash.Hasher: com.google.common.hash.HashCode hash()>() Operation on object of type java.security.MessageDigest object not completed. Expected call to digest, update
12.0 no       yes MessageDigest com.google.common.hash.AbstractStreamingHashFunction.hashBytes([B)Lcom/google/common/hash/HashCode; $r4 = interfaceinvoke $r3.<com.google.common.hash.Hasher: com.google.common.hash.HashCode hash()>() Operation on object of type java.security.MessageDigest object not completed. Expected call to digest, update
- - yes MessageDigest com.google.common.hash.AbstractStreamingHashFunction.hashBytes([BII)Lcom/google/common/hash/HashCode; $r4 = interfaceinvoke $r3.<com.google.common.hash.Hasher: com.google.common.hash.HashCode hash()>() Operation on object of type java.security.MessageDigest object not completed. Expected call to digest, update
- - yes MessageDigest com.google.common.hash.AbstractStreamingHashFunction.hashInt(I)Lcom/google/common/hash/HashCode; $r3 = interfaceinvoke $r2.<com.google.common.hash.Hasher: com.google.common.hash.HashCode hash()>() Operation on object of type java.security.MessageDigest object not completed. Expected call to digest, update
- - yes MessageDigest com.google.common.hash.AbstractStreamingHashFunction.hashLong(J)Lcom/google/common/hash/HashCode; $r3 = interfaceinvoke $r2.<com.google.common.hash.Hasher: com.google.common.hash.HashCode hash()>() Operation on object of type java.security.MessageDigest object not completed. Expected call to digest, update
- - yes MessageDigest com.google.common.hash.AbstractStreamingHashFunction.hashString(Ljava/lang/CharSequence;)Lcom/google/common/hash/HashCode; $r4 = interfaceinvoke $r3.<com.google.common.hash.Hasher: com.google.common.hash.HashCode hash()>() Operation on object of type java.security.MessageDigest object not completed. Expected call to digest, update
- - yes MessageDigest com.google.common.hash.AbstractStreamingHashFunction.hashString(Ljava/lang/CharSequence;Ljava/nio/charset/Charset;)Lcom/google/common/hash/HashCode; $r5 = interfaceinvoke $r4.<com.google.common.hash.Hasher: com.google.common.hash.HashCode hash()>() Operation on object of type java.security.MessageDigest object not completed. Expected call to digest, update
- - yes MessageDigest com.google.common.hash.BloomFilterStrategies$1.mightContain(Ljava/lang/Object;Lcom/google/common/hash/Funnel;ILcom/google/common/hash/BloomFilterStrategies$BitArray;)Z $r7 = interfaceinvoke $r6.<com.google.common.hash.Hasher: com.google.common.hash.HashCode hash()>() Operation on object of type java.security.MessageDigest object not completed. Expected call to digest, update
- - yes MessageDigest com.google.common.hash.BloomFilterStrategies$1.put(Ljava/lang/Object;Lcom/google/common/hash/Funnel;ILcom/google/common/hash/BloomFilterStrategies$BitArray;)Z $r7 = interfaceinvoke $r6.<com.google.common.hash.Hasher: com.google.common.hash.HashCode hash()>() Operation on object of type java.security.MessageDigest object not completed. Expected call to digest, update
- - yes MessageDigest com.google.common.hash.MessageDigestHashFunction.<init>(Ljava/lang/String;)V $i0 = virtualinvoke $r2.<java.security.MessageDigest: int getDigestLength()>() Operation on object of type java.security.MessageDigest object not completed. Expected call to digest, update
- - yes MessageDigest com.google.common.hash.MessageDigestHashFunction$MessageDigestHasher.hash()Lcom/google/common/hash/HashCode; $r2 = virtualinvoke $r1.<java.security.MessageDigest: byte[] digest()>() Unexpected call to method <java.security.MessageDigest: byte[] digest()> on object of type java.security.MessageDigest. Expect a call to one of the following methods <java.security.MessageDigest: void update(byte[])>,<java.security.MessageDigest: void update(byte[],int,int)>,<java.security.MessageDigest: byte[] digest(byte[])>,<java.security.MessageDigest: void update(java.nio.ByteBuffer)>,<java.security.MessageDigest: void update(byte)>
- - yes MessageDigest com.google.common.io.ByteStreams.hash(Lcom/google/common/io/InputSupplier;Lcom/google/common/hash/HashFunction;)Lcom/google/common/hash/HashCode; $r4 = staticinvoke <com.google.common.io.ByteStreams: java.lang.Object readBytes(com.google.common.io.InputSupplier,com.google.common.io.ByteProcessor)>(r0, $r3) Operation on object of type java.security.MessageDigest object not completed. Expected call to digest, update
12.0.1 no       yes MessageDigest com.google.common.hash.AbstractStreamingHashFunction.hashBytes([B)Lcom/google/common/hash/HashCode; $r4 = interfaceinvoke $r3.<com.google.common.hash.Hasher: com.google.common.hash.HashCode hash()>() Operation on object of type java.security.MessageDigest object not completed. Expected call to digest, update
- - yes MessageDigest com.google.common.hash.AbstractStreamingHashFunction.hashBytes([BII)Lcom/google/common/hash/HashCode; $r4 = interfaceinvoke $r3.<com.google.common.hash.Hasher: com.google.common.hash.HashCode hash()>() Operation on object of type java.security.MessageDigest object not completed. Expected call to digest, update
- - yes MessageDigest com.google.common.hash.AbstractStreamingHashFunction.hashInt(I)Lcom/google/common/hash/HashCode; $r3 = interfaceinvoke $r2.<com.google.common.hash.Hasher: com.google.common.hash.HashCode hash()>() Operation on object of type java.security.MessageDigest object not completed. Expected call to digest, update
- - yes MessageDigest com.google.common.hash.AbstractStreamingHashFunction.hashLong(J)Lcom/google/common/hash/HashCode; $r3 = interfaceinvoke $r2.<com.google.common.hash.Hasher: com.google.common.hash.HashCode hash()>() Operation on object of type java.security.MessageDigest object not completed. Expected call to digest, update
- - yes MessageDigest com.google.common.hash.AbstractStreamingHashFunction.hashString(Ljava/lang/CharSequence;)Lcom/google/common/hash/HashCode; $r4 = interfaceinvoke $r3.<com.google.common.hash.Hasher: com.google.common.hash.HashCode hash()>() Operation on object of type java.security.MessageDigest object not completed. Expected call to digest, update
- - yes MessageDigest com.google.common.hash.AbstractStreamingHashFunction.hashString(Ljava/lang/CharSequence;Ljava/nio/charset/Charset;)Lcom/google/common/hash/HashCode; $r5 = interfaceinvoke $r4.<com.google.common.hash.Hasher: com.google.common.hash.HashCode hash()>() Operation on object of type java.security.MessageDigest object not completed. Expected call to digest, update
- - yes MessageDigest com.google.common.hash.BloomFilterStrategies$1.mightContain(Ljava/lang/Object;Lcom/google/common/hash/Funnel;ILcom/google/common/hash/BloomFilterStrategies$BitArray;)Z $r7 = interfaceinvoke $r6.<com.google.common.hash.Hasher: com.google.common.hash.HashCode hash()>() Operation on object of type java.security.MessageDigest object not completed. Expected call to digest, update
- - yes MessageDigest com.google.common.hash.BloomFilterStrategies$1.put(Ljava/lang/Object;Lcom/google/common/hash/Funnel;ILcom/google/common/hash/BloomFilterStrategies$BitArray;)Z $r7 = interfaceinvoke $r6.<com.google.common.hash.Hasher: com.google.common.hash.HashCode hash()>() Operation on object of type java.security.MessageDigest object not completed. Expected call to digest, update
- - yes MessageDigest com.google.common.hash.MessageDigestHashFunction$MessageDigestHasher.hash()Lcom/google/common/hash/HashCode; $r2 = virtualinvoke $r1.<java.security.MessageDigest: byte[] digest()>() Unexpected call to method <java.security.MessageDigest: byte[] digest()> on object of type java.security.MessageDigest. Expect a call to one of the following methods <java.security.MessageDigest: void update(byte[])>,<java.security.MessageDigest: void update(byte[],int,int)>,<java.security.MessageDigest: byte[] digest(byte[])>,<java.security.MessageDigest: void update(java.nio.ByteBuffer)>,<java.security.MessageDigest: void update(byte)>
- - yes MessageDigest com.google.common.io.ByteStreams.hash(Lcom/google/common/io/InputSupplier;Lcom/google/common/hash/HashFunction;)Lcom/google/common/hash/HashCode; $r4 = staticinvoke <com.google.common.io.ByteStreams: java.lang.Object readBytes(com.google.common.io.InputSupplier,com.google.common.io.ByteProcessor)>(r0, $r3) Operation on object of type java.security.MessageDigest object not completed. Expected call to digest, update
13.0 no       yes MessageDigest com.google.common.hash.AbstractStreamingHashFunction.hashBytes([BII)Lcom/google/common/hash/HashCode; $r4 = interfaceinvoke $r3.<com.google.common.hash.Hasher: com.google.common.hash.HashCode hash()>() Operation on object of type java.security.MessageDigest object not completed. Expected call to digest, update
- - yes MessageDigest com.google.common.hash.AbstractStreamingHashFunction.hashString(Ljava/lang/CharSequence;)Lcom/google/common/hash/HashCode; $r4 = interfaceinvoke $r3.<com.google.common.hash.Hasher: com.google.common.hash.HashCode hash()>() Operation on object of type java.security.MessageDigest object not completed. Expected call to digest, update
- - yes MessageDigest com.google.common.hash.MessageDigestHashFunction$MessageDigestHasher.hash()Lcom/google/common/hash/HashCode; $r2 = virtualinvoke $r1.<java.security.MessageDigest: byte[] digest()>() Unexpected call to method <java.security.MessageDigest: byte[] digest()> on object of type java.security.MessageDigest. Expect a call to one of the following methods <java.security.MessageDigest: void update(byte[])>,<java.security.MessageDigest: void update(byte[],int,int)>,<java.security.MessageDigest: byte[] digest(byte[])>,<java.security.MessageDigest: void update(java.nio.ByteBuffer)>,<java.security.MessageDigest: void update(byte)>
- - yes MessageDigest com.google.common.io.ByteStreams.hash(Lcom/google/common/io/InputSupplier;Lcom/google/common/hash/HashFunction;)Lcom/google/common/hash/HashCode; $r4 = interfaceinvoke r2.<com.google.common.hash.Hasher: com.google.common.hash.HashCode hash()>() Operation on object of type java.security.MessageDigest object not completed. Expected call to digest, update
13.0.1 no       yes MessageDigest com.google.common.hash.AbstractStreamingHashFunction.hashBytes([B)Lcom/google/common/hash/HashCode; $r4 = interfaceinvoke $r3.<com.google.common.hash.Hasher: com.google.common.hash.HashCode hash()>() Operation on object of type java.security.MessageDigest object not completed. Expected call to digest, update
- - yes MessageDigest com.google.common.hash.MessageDigestHashFunction.<init>(Ljava/lang/String;)V $i0 = virtualinvoke $r2.<java.security.MessageDigest: int getDigestLength()>() Operation on object of type java.security.MessageDigest object not completed. Expected call to digest, update
14.0 no       no
14.0.1 no       no
15.0 no       yes MessageDigest com.google.common.hash.Hashing.<clinit>()V specialinvoke $r6.<com.google.common.hash.MessageDigestHashFunction: void <init>(java.lang.String,java.lang.String)>(varReplacer2460, varReplacer2461) Operation on object of type java.security.MessageDigest object not completed. Expected call to digest, update
16.0 no       no
16.0.1 no       no
17.0 no       no
18.0 no       no
19.0 no       yes MessageDigest com.google.common.hash.MessageDigestHashFunction.newHasher()Lcom/google/common/hash/Hasher; $r2 = staticinvoke <java.security.MessageDigest: java.security.MessageDigest getInstance(java.lang.String)>(r0) First parameter (with value "SHA-384") should be any of {SHA-256, SHA-384, SHA-512}
20.0 no       yes Mac com.google.common.hash.AbstractStreamingHashFunction.hashLong(J)Lcom/google/common/hash/HashCode; $r3 = interfaceinvoke $r2.<com.google.common.hash.Hasher: com.google.common.hash.HashCode hash()>() Operation on object of type javax.crypto.Mac object not completed. Expected call to update, doFinal
- - yes MessageDigest com.google.common.hash.AbstractStreamingHashFunction.hashLong(J)Lcom/google/common/hash/HashCode; $r3 = interfaceinvoke $r2.<com.google.common.hash.Hasher: com.google.common.hash.HashCode hash()>() Operation on object of type java.security.MessageDigest object not completed. Expected call to digest, update
- - yes SecretKeySpec com.google.common.hash.Hashing.hmacMd5([B)Lcom/google/common/hash/HashFunction; specialinvoke $r1.<javax.crypto.spec.SecretKeySpec: void <init>(byte[],java.lang.String)>($r3, varReplacer2662) First parameter was not properly generated as prepared Key Material
- - yes SecretKeySpec com.google.common.hash.Hashing.hmacSha1([B)Lcom/google/common/hash/HashFunction; specialinvoke $r1.<javax.crypto.spec.SecretKeySpec: void <init>(byte[],java.lang.String)>($r3, varReplacer2665) First parameter was not properly generated as prepared Key Material
- - yes SecretKeySpec com.google.common.hash.Hashing.hmacSha256([B)Lcom/google/common/hash/HashFunction; specialinvoke $r1.<javax.crypto.spec.SecretKeySpec: void <init>(byte[],java.lang.String)>($r3, varReplacer2668) First parameter was not properly generated as prepared Key Material
- - yes SecretKeySpec com.google.common.hash.Hashing.hmacSha512([B)Lcom/google/common/hash/HashFunction; specialinvoke $r1.<javax.crypto.spec.SecretKeySpec: void <init>(byte[],java.lang.String)>($r3, varReplacer2671) First parameter was not properly generated as prepared Key Material
21.0 no       yes SecretKeySpec com.google.common.hash.Hashing.hmacMd5([B)Lcom/google/common/hash/HashFunction; specialinvoke $r1.<javax.crypto.spec.SecretKeySpec: void <init>(byte[],java.lang.String)>($r3, varReplacer2781) First parameter was not properly generated as prepared Key Material
- - yes SecretKeySpec com.google.common.hash.Hashing.hmacSha1([B)Lcom/google/common/hash/HashFunction; specialinvoke $r1.<javax.crypto.spec.SecretKeySpec: void <init>(byte[],java.lang.String)>($r3, varReplacer2784) First parameter was not properly generated as prepared Key Material
- - yes SecretKeySpec com.google.common.hash.Hashing.hmacSha256([B)Lcom/google/common/hash/HashFunction; specialinvoke $r1.<javax.crypto.spec.SecretKeySpec: void <init>(byte[],java.lang.String)>($r3, varReplacer2787) First parameter was not properly generated as prepared Key Material
- - yes SecretKeySpec com.google.common.hash.Hashing.hmacSha512([B)Lcom/google/common/hash/HashFunction; specialinvoke $r1.<javax.crypto.spec.SecretKeySpec: void <init>(byte[],java.lang.String)>($r3, varReplacer2790) First parameter was not properly generated as prepared Key Material
- - yes MessageDigest com.google.common.hash.MessageDigestHashFunction.newHasher()Lcom/google/common/hash/Hasher; $r2 = staticinvoke <java.security.MessageDigest: java.security.MessageDigest getInstance(java.lang.String)>(r0) First parameter (with value "SHA-512") should be any of {SHA-256, SHA-384, SHA-512}
22.0 no       yes Mac com.google.common.hash.AbstractStreamingHashFunction.hashUnencodedChars(Ljava/lang/CharSequence;)Lcom/google/common/hash/HashCode; $r4 = interfaceinvoke $r3.<com.google.common.hash.Hasher: com.google.common.hash.HashCode hash()>() Operation on object of type javax.crypto.Mac object not completed. Expected call to update, doFinal
- - yes SecretKeySpec com.google.common.hash.Hashing.hmacMd5([B)Lcom/google/common/hash/HashFunction; specialinvoke $r1.<javax.crypto.spec.SecretKeySpec: void <init>(byte[],java.lang.String)>($r3, varReplacer2800) First parameter was not properly generated as prepared Key Material
- - yes SecretKeySpec com.google.common.hash.Hashing.hmacSha1([B)Lcom/google/common/hash/HashFunction; specialinvoke $r1.<javax.crypto.spec.SecretKeySpec: void <init>(byte[],java.lang.String)>($r3, varReplacer2803) First parameter was not properly generated as prepared Key Material
- - yes SecretKeySpec com.google.common.hash.Hashing.hmacSha256([B)Lcom/google/common/hash/HashFunction; specialinvoke $r1.<javax.crypto.spec.SecretKeySpec: void <init>(byte[],java.lang.String)>($r3, varReplacer2806) First parameter was not properly generated as prepared Key Material
- - yes SecretKeySpec com.google.common.hash.Hashing.hmacSha512([B)Lcom/google/common/hash/HashFunction; specialinvoke $r1.<javax.crypto.spec.SecretKeySpec: void <init>(byte[],java.lang.String)>($r3, varReplacer2809) First parameter was not properly generated as prepared Key Material
23.0 no       yes SecretKeySpec com.google.common.hash.Hashing.hmacMd5([B)Lcom/google/common/hash/HashFunction; specialinvoke $r1.<javax.crypto.spec.SecretKeySpec: void <init>(byte[],java.lang.String)>($r3, varReplacer2838) First parameter was not properly generated as prepared Key Material
- - yes SecretKeySpec com.google.common.hash.Hashing.hmacSha1([B)Lcom/google/common/hash/HashFunction; specialinvoke $r1.<javax.crypto.spec.SecretKeySpec: void <init>(byte[],java.lang.String)>($r3, varReplacer2841) First parameter was not properly generated as prepared Key Material
- - yes SecretKeySpec com.google.common.hash.Hashing.hmacSha256([B)Lcom/google/common/hash/HashFunction; specialinvoke $r1.<javax.crypto.spec.SecretKeySpec: void <init>(byte[],java.lang.String)>($r3, varReplacer2844) First parameter was not properly generated as prepared Key Material
- - yes SecretKeySpec com.google.common.hash.Hashing.hmacSha512([B)Lcom/google/common/hash/HashFunction; specialinvoke $r1.<javax.crypto.spec.SecretKeySpec: void <init>(byte[],java.lang.String)>($r3, varReplacer2847) First parameter was not properly generated as prepared Key Material
- - yes Mac com.google.common.io.ByteSource.hash(Lcom/google/common/hash/HashFunction;)Lcom/google/common/hash/HashCode; $r4 = interfaceinvoke r2.<com.google.common.hash.Hasher: com.google.common.hash.HashCode hash()>() Operation on object of type javax.crypto.Mac object not completed. Expected call to update, doFinal