class org.bouncycastle.jce.provider.JCEDigestUtil
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: org.bouncycastle.jce.provider.JCEDigestUtil
super_class: java.lang.Object
{
private static java.util.Set md5;
descriptor: Ljava/util/Set;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static java.util.Set sha1;
descriptor: Ljava/util/Set;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static java.util.Set sha224;
descriptor: Ljava/util/Set;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static java.util.Set sha256;
descriptor: Ljava/util/Set;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static java.util.Set sha384;
descriptor: Ljava/util/Set;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static java.util.Set sha512;
descriptor: Ljava/util/Set;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static java.util.Map oids;
descriptor: Ljava/util/Map;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=0, args_size=0
0: new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
putstatic org.bouncycastle.jce.provider.JCEDigestUtil.md5:Ljava/util/Set;
1: new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
putstatic org.bouncycastle.jce.provider.JCEDigestUtil.sha1:Ljava/util/Set;
2: new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
putstatic org.bouncycastle.jce.provider.JCEDigestUtil.sha224:Ljava/util/Set;
3: new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
putstatic org.bouncycastle.jce.provider.JCEDigestUtil.sha256:Ljava/util/Set;
4: new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
putstatic org.bouncycastle.jce.provider.JCEDigestUtil.sha384:Ljava/util/Set;
5: new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
putstatic org.bouncycastle.jce.provider.JCEDigestUtil.sha512:Ljava/util/Set;
6: new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
putstatic org.bouncycastle.jce.provider.JCEDigestUtil.oids:Ljava/util/Map;
7: getstatic org.bouncycastle.jce.provider.JCEDigestUtil.md5:Ljava/util/Set;
ldc "MD5"
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
8: getstatic org.bouncycastle.jce.provider.JCEDigestUtil.md5:Ljava/util/Set;
getstatic org.bouncycastle.asn1.pkcs.PKCSObjectIdentifiers.md5:Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;
invokevirtual org.bouncycastle.asn1.ASN1ObjectIdentifier.getId:()Ljava/lang/String;
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
9: getstatic org.bouncycastle.jce.provider.JCEDigestUtil.sha1:Ljava/util/Set;
ldc "SHA1"
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
10: getstatic org.bouncycastle.jce.provider.JCEDigestUtil.sha1:Ljava/util/Set;
ldc "SHA-1"
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
11: getstatic org.bouncycastle.jce.provider.JCEDigestUtil.sha1:Ljava/util/Set;
getstatic org.bouncycastle.asn1.oiw.OIWObjectIdentifiers.idSHA1:Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;
invokevirtual org.bouncycastle.asn1.ASN1ObjectIdentifier.getId:()Ljava/lang/String;
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
12: getstatic org.bouncycastle.jce.provider.JCEDigestUtil.sha224:Ljava/util/Set;
ldc "SHA224"
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
13: getstatic org.bouncycastle.jce.provider.JCEDigestUtil.sha224:Ljava/util/Set;
ldc "SHA-224"
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
14: getstatic org.bouncycastle.jce.provider.JCEDigestUtil.sha224:Ljava/util/Set;
getstatic org.bouncycastle.asn1.nist.NISTObjectIdentifiers.id_sha224:Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;
invokevirtual org.bouncycastle.asn1.ASN1ObjectIdentifier.getId:()Ljava/lang/String;
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
15: getstatic org.bouncycastle.jce.provider.JCEDigestUtil.sha256:Ljava/util/Set;
ldc "SHA256"
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
16: getstatic org.bouncycastle.jce.provider.JCEDigestUtil.sha256:Ljava/util/Set;
ldc "SHA-256"
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
17: getstatic org.bouncycastle.jce.provider.JCEDigestUtil.sha256:Ljava/util/Set;
getstatic org.bouncycastle.asn1.nist.NISTObjectIdentifiers.id_sha256:Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;
invokevirtual org.bouncycastle.asn1.ASN1ObjectIdentifier.getId:()Ljava/lang/String;
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
18: getstatic org.bouncycastle.jce.provider.JCEDigestUtil.sha384:Ljava/util/Set;
ldc "SHA384"
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
19: getstatic org.bouncycastle.jce.provider.JCEDigestUtil.sha384:Ljava/util/Set;
ldc "SHA-384"
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
20: getstatic org.bouncycastle.jce.provider.JCEDigestUtil.sha384:Ljava/util/Set;
getstatic org.bouncycastle.asn1.nist.NISTObjectIdentifiers.id_sha384:Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;
invokevirtual org.bouncycastle.asn1.ASN1ObjectIdentifier.getId:()Ljava/lang/String;
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
21: getstatic org.bouncycastle.jce.provider.JCEDigestUtil.sha512:Ljava/util/Set;
ldc "SHA512"
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
22: getstatic org.bouncycastle.jce.provider.JCEDigestUtil.sha512:Ljava/util/Set;
ldc "SHA-512"
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
23: getstatic org.bouncycastle.jce.provider.JCEDigestUtil.sha512:Ljava/util/Set;
getstatic org.bouncycastle.asn1.nist.NISTObjectIdentifiers.id_sha512:Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;
invokevirtual org.bouncycastle.asn1.ASN1ObjectIdentifier.getId:()Ljava/lang/String;
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
24: getstatic org.bouncycastle.jce.provider.JCEDigestUtil.oids:Ljava/util/Map;
ldc "MD5"
getstatic org.bouncycastle.asn1.pkcs.PKCSObjectIdentifiers.md5:Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
25: getstatic org.bouncycastle.jce.provider.JCEDigestUtil.oids:Ljava/util/Map;
getstatic org.bouncycastle.asn1.pkcs.PKCSObjectIdentifiers.md5:Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;
invokevirtual org.bouncycastle.asn1.ASN1ObjectIdentifier.getId:()Ljava/lang/String;
getstatic org.bouncycastle.asn1.pkcs.PKCSObjectIdentifiers.md5:Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
26: getstatic org.bouncycastle.jce.provider.JCEDigestUtil.oids:Ljava/util/Map;
ldc "SHA1"
getstatic org.bouncycastle.asn1.oiw.OIWObjectIdentifiers.idSHA1:Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
27: getstatic org.bouncycastle.jce.provider.JCEDigestUtil.oids:Ljava/util/Map;
ldc "SHA-1"
getstatic org.bouncycastle.asn1.oiw.OIWObjectIdentifiers.idSHA1:Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
28: getstatic org.bouncycastle.jce.provider.JCEDigestUtil.oids:Ljava/util/Map;
getstatic org.bouncycastle.asn1.oiw.OIWObjectIdentifiers.idSHA1:Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;
invokevirtual org.bouncycastle.asn1.ASN1ObjectIdentifier.getId:()Ljava/lang/String;
getstatic org.bouncycastle.asn1.oiw.OIWObjectIdentifiers.idSHA1:Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
29: getstatic org.bouncycastle.jce.provider.JCEDigestUtil.oids:Ljava/util/Map;
ldc "SHA224"
getstatic org.bouncycastle.asn1.nist.NISTObjectIdentifiers.id_sha224:Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
30: getstatic org.bouncycastle.jce.provider.JCEDigestUtil.oids:Ljava/util/Map;
ldc "SHA-224"
getstatic org.bouncycastle.asn1.nist.NISTObjectIdentifiers.id_sha224:Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
31: getstatic org.bouncycastle.jce.provider.JCEDigestUtil.oids:Ljava/util/Map;
getstatic org.bouncycastle.asn1.nist.NISTObjectIdentifiers.id_sha224:Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;
invokevirtual org.bouncycastle.asn1.ASN1ObjectIdentifier.getId:()Ljava/lang/String;
getstatic org.bouncycastle.asn1.nist.NISTObjectIdentifiers.id_sha224:Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
32: getstatic org.bouncycastle.jce.provider.JCEDigestUtil.oids:Ljava/util/Map;
ldc "SHA256"
getstatic org.bouncycastle.asn1.nist.NISTObjectIdentifiers.id_sha256:Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
33: getstatic org.bouncycastle.jce.provider.JCEDigestUtil.oids:Ljava/util/Map;
ldc "SHA-256"
getstatic org.bouncycastle.asn1.nist.NISTObjectIdentifiers.id_sha256:Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
34: getstatic org.bouncycastle.jce.provider.JCEDigestUtil.oids:Ljava/util/Map;
getstatic org.bouncycastle.asn1.nist.NISTObjectIdentifiers.id_sha256:Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;
invokevirtual org.bouncycastle.asn1.ASN1ObjectIdentifier.getId:()Ljava/lang/String;
getstatic org.bouncycastle.asn1.nist.NISTObjectIdentifiers.id_sha256:Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
35: getstatic org.bouncycastle.jce.provider.JCEDigestUtil.oids:Ljava/util/Map;
ldc "SHA384"
getstatic org.bouncycastle.asn1.nist.NISTObjectIdentifiers.id_sha384:Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
36: getstatic org.bouncycastle.jce.provider.JCEDigestUtil.oids:Ljava/util/Map;
ldc "SHA-384"
getstatic org.bouncycastle.asn1.nist.NISTObjectIdentifiers.id_sha384:Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
37: getstatic org.bouncycastle.jce.provider.JCEDigestUtil.oids:Ljava/util/Map;
getstatic org.bouncycastle.asn1.nist.NISTObjectIdentifiers.id_sha384:Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;
invokevirtual org.bouncycastle.asn1.ASN1ObjectIdentifier.getId:()Ljava/lang/String;
getstatic org.bouncycastle.asn1.nist.NISTObjectIdentifiers.id_sha384:Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
38: getstatic org.bouncycastle.jce.provider.JCEDigestUtil.oids:Ljava/util/Map;
ldc "SHA512"
getstatic org.bouncycastle.asn1.nist.NISTObjectIdentifiers.id_sha512:Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
39: getstatic org.bouncycastle.jce.provider.JCEDigestUtil.oids:Ljava/util/Map;
ldc "SHA-512"
getstatic org.bouncycastle.asn1.nist.NISTObjectIdentifiers.id_sha512:Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
40: getstatic org.bouncycastle.jce.provider.JCEDigestUtil.oids:Ljava/util/Map;
getstatic org.bouncycastle.asn1.nist.NISTObjectIdentifiers.id_sha512:Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;
invokevirtual org.bouncycastle.asn1.ASN1ObjectIdentifier.getId:()Ljava/lang/String;
getstatic org.bouncycastle.asn1.nist.NISTObjectIdentifiers.id_sha512:Lorg/bouncycastle/asn1/ASN1ObjectIdentifier;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
41: return
LocalVariableTable:
Start End Slot Name Signature
void <init>();
descriptor: ()V
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/bouncycastle/jce/provider/JCEDigestUtil;
static org.bouncycastle.crypto.Digest getDigest(java.lang.String);
descriptor: (Ljava/lang/String;)Lorg/bouncycastle/crypto/Digest;
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokestatic org.bouncycastle.util.Strings.toUpperCase:(Ljava/lang/String;)Ljava/lang/String;
astore 0
1: getstatic org.bouncycastle.jce.provider.JCEDigestUtil.sha1:Ljava/util/Set;
aload 0
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifeq 3
2: new org.bouncycastle.crypto.digests.SHA1Digest
dup
invokespecial org.bouncycastle.crypto.digests.SHA1Digest.<init>:()V
areturn
3: StackMap locals:
StackMap stack:
getstatic org.bouncycastle.jce.provider.JCEDigestUtil.md5:Ljava/util/Set;
aload 0
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifeq 5
4: new org.bouncycastle.crypto.digests.MD5Digest
dup
invokespecial org.bouncycastle.crypto.digests.MD5Digest.<init>:()V
areturn
5: StackMap locals:
StackMap stack:
getstatic org.bouncycastle.jce.provider.JCEDigestUtil.sha224:Ljava/util/Set;
aload 0
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifeq 7
6: new org.bouncycastle.crypto.digests.SHA224Digest
dup
invokespecial org.bouncycastle.crypto.digests.SHA224Digest.<init>:()V
areturn
7: StackMap locals:
StackMap stack:
getstatic org.bouncycastle.jce.provider.JCEDigestUtil.sha256:Ljava/util/Set;
aload 0
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifeq 9
8: new org.bouncycastle.crypto.digests.SHA256Digest
dup
invokespecial org.bouncycastle.crypto.digests.SHA256Digest.<init>:()V
areturn
9: StackMap locals:
StackMap stack:
getstatic org.bouncycastle.jce.provider.JCEDigestUtil.sha384:Ljava/util/Set;
aload 0
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifeq 11
10: new org.bouncycastle.crypto.digests.SHA384Digest
dup
invokespecial org.bouncycastle.crypto.digests.SHA384Digest.<init>:()V
areturn
11: StackMap locals:
StackMap stack:
getstatic org.bouncycastle.jce.provider.JCEDigestUtil.sha512:Ljava/util/Set;
aload 0
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifeq 13
12: new org.bouncycastle.crypto.digests.SHA512Digest
dup
invokespecial org.bouncycastle.crypto.digests.SHA512Digest.<init>:()V
areturn
13: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 digestName Ljava/lang/String;
MethodParameters:
Name Flags
digestName
static boolean isSameDigest(java.lang.String, java.lang.String);
descriptor: (Ljava/lang/String;Ljava/lang/String;)Z
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: getstatic org.bouncycastle.jce.provider.JCEDigestUtil.sha1:Ljava/util/Set;
aload 0
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifeq 1
getstatic org.bouncycastle.jce.provider.JCEDigestUtil.sha1:Ljava/util/Set;
aload 1
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifne 7
1: StackMap locals:
StackMap stack:
getstatic org.bouncycastle.jce.provider.JCEDigestUtil.sha224:Ljava/util/Set;
aload 0
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifeq 2
getstatic org.bouncycastle.jce.provider.JCEDigestUtil.sha224:Ljava/util/Set;
aload 1
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifne 7
2: StackMap locals:
StackMap stack:
getstatic org.bouncycastle.jce.provider.JCEDigestUtil.sha256:Ljava/util/Set;
aload 0
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifeq 3
getstatic org.bouncycastle.jce.provider.JCEDigestUtil.sha256:Ljava/util/Set;
aload 1
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifne 7
3: StackMap locals:
StackMap stack:
getstatic org.bouncycastle.jce.provider.JCEDigestUtil.sha384:Ljava/util/Set;
aload 0
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifeq 4
getstatic org.bouncycastle.jce.provider.JCEDigestUtil.sha384:Ljava/util/Set;
aload 1
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifne 7
4: StackMap locals:
StackMap stack:
getstatic org.bouncycastle.jce.provider.JCEDigestUtil.sha512:Ljava/util/Set;
aload 0
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifeq 5
getstatic org.bouncycastle.jce.provider.JCEDigestUtil.sha512:Ljava/util/Set;
aload 1
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifne 7
5: StackMap locals:
StackMap stack:
getstatic org.bouncycastle.jce.provider.JCEDigestUtil.md5:Ljava/util/Set;
aload 0
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifeq 6
getstatic org.bouncycastle.jce.provider.JCEDigestUtil.md5:Ljava/util/Set;
aload 1
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifne 7
6: StackMap locals:
StackMap stack:
iconst_0
ireturn
StackMap locals:
StackMap stack:
7: iconst_1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 digest1 Ljava/lang/String;
0 8 1 digest2 Ljava/lang/String;
MethodParameters:
Name Flags
digest1
digest2
static org.bouncycastle.asn1.DERObjectIdentifier getOID(java.lang.String);
descriptor: (Ljava/lang/String;)Lorg/bouncycastle/asn1/DERObjectIdentifier;
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: getstatic org.bouncycastle.jce.provider.JCEDigestUtil.oids:Ljava/util/Map;
aload 0
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.bouncycastle.asn1.DERObjectIdentifier
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 digestName Ljava/lang/String;
MethodParameters:
Name Flags
digestName
}
SourceFile: "JCEDigestUtil.java"