final class sun.security.ssl.PredefinedDHParameterSpecs
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: sun.security.ssl.PredefinedDHParameterSpecs
super_class: java.lang.Object
{
private static final java.math.BigInteger p512;
descriptor: Ljava/math/BigInteger;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.math.BigInteger p768;
descriptor: Ljava/math/BigInteger;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.math.BigInteger p1024;
descriptor: Ljava/math/BigInteger;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.math.BigInteger p1536;
descriptor: Ljava/math/BigInteger;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.math.BigInteger p2048;
descriptor: Ljava/math/BigInteger;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.math.BigInteger p3072;
descriptor: Ljava/math/BigInteger;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.math.BigInteger p4096;
descriptor: Ljava/math/BigInteger;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.math.BigInteger p6144;
descriptor: Ljava/math/BigInteger;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.math.BigInteger p8192;
descriptor: Ljava/math/BigInteger;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.math.BigInteger[] supportedPrimes;
descriptor: [Ljava/math/BigInteger;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.math.BigInteger[] ffdhePrimes;
descriptor: [Ljava/math/BigInteger;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final int PRIME_CERTAINTY;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 120
private static final java.lang.String PROPERTY_NAME;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "jdk.tls.server.defaultDHEParameters"
private static final java.util.regex.Pattern spacesPattern;
descriptor: Ljava/util/regex/Pattern;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.util.regex.Pattern syntaxPattern;
descriptor: Ljava/util/regex/Pattern;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.util.regex.Pattern paramsPattern;
descriptor: Ljava/util/regex/Pattern;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
static final java.util.Map<java.lang.Integer, javax.crypto.spec.DHParameterSpec> definedParams;
descriptor: Ljava/util/Map;
flags: (0x0018) ACC_STATIC, ACC_FINAL
Signature: Ljava/util/Map<Ljava/lang/Integer;Ljavax/crypto/spec/DHParameterSpec;>;
static final java.util.Map<java.lang.Integer, javax.crypto.spec.DHParameterSpec> ffdheParams;
descriptor: Ljava/util/Map;
flags: (0x0018) ACC_STATIC, ACC_FINAL
Signature: Ljava/util/Map<Ljava/lang/Integer;Ljavax/crypto/spec/DHParameterSpec;>;
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=6, locals=10, args_size=0
0: new java.math.BigInteger
dup
1: ldc "D87780E15FF50B4ABBE89870188B049406B5BEA98AB23A0241D88EA75B7755E669C08093D3F0CA7FC3A5A25CF067DCB9A43DD89D1D90921C6328884461E0B6D3"
2: bipush 16
3: invokespecial java.math.BigInteger.<init>:(Ljava/lang/String;I)V
putstatic sun.security.ssl.PredefinedDHParameterSpecs.p512:Ljava/math/BigInteger;
4: new java.math.BigInteger
dup
5: ldc "FFFFFFFFFFFFFFFFC90FDAA22168C234C4C6628B80DC1CD129024E088A67CC74020BBEA63B139B22514A08798E3404DDEF9519B3CD3A431B302B0A6DF25F14374FE1356D6D51C245E485B576625E7EC6F44C42E9A63A3620FFFFFFFFFFFFFFFF"
6: bipush 16
7: invokespecial java.math.BigInteger.<init>:(Ljava/lang/String;I)V
putstatic sun.security.ssl.PredefinedDHParameterSpecs.p768:Ljava/math/BigInteger;
8: new java.math.BigInteger
dup
9: ldc "FFFFFFFFFFFFFFFFC90FDAA22168C234C4C6628B80DC1CD129024E088A67CC74020BBEA63B139B22514A08798E3404DDEF9519B3CD3A431B302B0A6DF25F14374FE1356D6D51C245E485B576625E7EC6F44C42E9A637ED6B0BFF5CB6F406B7EDEE386BFB5A899FA5AE9F24117C4B1FE649286651ECE65381FFFFFFFFFFFFFFFF"
10: bipush 16
11: invokespecial java.math.BigInteger.<init>:(Ljava/lang/String;I)V
putstatic sun.security.ssl.PredefinedDHParameterSpecs.p1024:Ljava/math/BigInteger;
12: new java.math.BigInteger
dup
13: ldc "FFFFFFFFFFFFFFFFC90FDAA22168C234C4C6628B80DC1CD129024E088A67CC74020BBEA63B139B22514A08798E3404DDEF9519B3CD3A431B302B0A6DF25F14374FE1356D6D51C245E485B576625E7EC6F44C42E9A637ED6B0BFF5CB6F406B7EDEE386BFB5A899FA5AE9F24117C4B1FE649286651ECE45B3DC2007CB8A163BF0598DA48361C55D39A69163FA8FD24CF5F83655D23DCA3AD961C62F356208552BB9ED529077096966D670C354E4ABC9804F1746C08CA237327FFFFFFFFFFFFFFFF"
14: bipush 16
15: invokespecial java.math.BigInteger.<init>:(Ljava/lang/String;I)V
putstatic sun.security.ssl.PredefinedDHParameterSpecs.p1536:Ljava/math/BigInteger;
16: new java.math.BigInteger
dup
17: ldc "FFFFFFFFFFFFFFFFADF85458A2BB4A9AAFDC5620273D3CF1D8B9C583CE2D3695A9E13641146433FBCC939DCE249B3EF97D2FE363630C75D8F681B202AEC4617AD3DF1ED5D5FD65612433F51F5F066ED0856365553DED1AF3B557135E7F57C935984F0C70E0E68B77E2A689DAF3EFE8721DF158A136ADE73530ACCA4F483A797ABC0AB182B324FB61D108A94BB2C8E3FBB96ADAB760D7F4681D4F42A3DE394DF4AE56EDE76372BB190B07A7C8EE0A6D709E02FCE1CDF7E2ECC03404CD28342F619172FE9CE98583FF8E4F1232EEF28183C3FE3B1B4C6FAD733BB5FCBC2EC22005C58EF1837D1683B2C6F34A26C1B2EFFA886B423861285C97FFFFFFFFFFFFFFFF"
18: bipush 16
19: invokespecial java.math.BigInteger.<init>:(Ljava/lang/String;I)V
putstatic sun.security.ssl.PredefinedDHParameterSpecs.p2048:Ljava/math/BigInteger;
20: new java.math.BigInteger
dup
21: ldc "FFFFFFFFFFFFFFFFADF85458A2BB4A9AAFDC5620273D3CF1D8B9C583CE2D3695A9E13641146433FBCC939DCE249B3EF97D2FE363630C75D8F681B202AEC4617AD3DF1ED5D5FD65612433F51F5F066ED0856365553DED1AF3B557135E7F57C935984F0C70E0E68B77E2A689DAF3EFE8721DF158A136ADE73530ACCA4F483A797ABC0AB182B324FB61D108A94BB2C8E3FBB96ADAB760D7F4681D4F42A3DE394DF4AE56EDE76372BB190B07A7C8EE0A6D709E02FCE1CDF7E2ECC03404CD28342F619172FE9CE98583FF8E4F1232EEF28183C3FE3B1B4C6FAD733BB5FCBC2EC22005C58EF1837D1683B2C6F34A26C1B2EFFA886B4238611FCFDCDE355B3B6519035BBC34F4DEF99C023861B46FC9D6E6C9077AD91D2691F7F7EE598CB0FAC186D91CAEFE130985139270B4130C93BC437944F4FD4452E2D74DD364F2E21E71F54BFF5CAE82AB9C9DF69EE86D2BC522363A0DABC521979B0DEADA1DBF9A42D5C4484E0ABCD06BFA53DDEF3C1B20EE3FD59D7C25E41D2B66C62E37FFFFFFFFFFFFFFFF"
22: bipush 16
23: invokespecial java.math.BigInteger.<init>:(Ljava/lang/String;I)V
putstatic sun.security.ssl.PredefinedDHParameterSpecs.p3072:Ljava/math/BigInteger;
24: new java.math.BigInteger
dup
25: ldc "FFFFFFFFFFFFFFFFADF85458A2BB4A9AAFDC5620273D3CF1D8B9C583CE2D3695A9E13641146433FBCC939DCE249B3EF97D2FE363630C75D8F681B202AEC4617AD3DF1ED5D5FD65612433F51F5F066ED0856365553DED1AF3B557135E7F57C935984F0C70E0E68B77E2A689DAF3EFE8721DF158A136ADE73530ACCA4F483A797ABC0AB182B324FB61D108A94BB2C8E3FBB96ADAB760D7F4681D4F42A3DE394DF4AE56EDE76372BB190B07A7C8EE0A6D709E02FCE1CDF7E2ECC03404CD28342F619172FE9CE98583FF8E4F1232EEF28183C3FE3B1B4C6FAD733BB5FCBC2EC22005C58EF1837D1683B2C6F34A26C1B2EFFA886B4238611FCFDCDE355B3B6519035BBC34F4DEF99C023861B46FC9D6E6C9077AD91D2691F7F7EE598CB0FAC186D91CAEFE130985139270B4130C93BC437944F4FD4452E2D74DD364F2E21E71F54BFF5CAE82AB9C9DF69EE86D2BC522363A0DABC521979B0DEADA1DBF9A42D5C4484E0ABCD06BFA53DDEF3C1B20EE3FD59D7C25E41D2B669E1EF16E6F52C3164DF4FB7930E9E4E58857B6AC7D5F42D69F6D187763CF1D5503400487F55BA57E31CC7A7135C886EFB4318AED6A1E012D9E6832A907600A918130C46DC778F971AD0038092999A333CB8B7A1A1DB93D7140003C2A4ECEA9F98D0ACC0A8291CDCEC97DCF8EC9B55A7F88A46B4DB5A851F44182E1C68A007E5E655F6AFFFFFFFFFFFFFFFF"
26: bipush 16
27: invokespecial java.math.BigInteger.<init>:(Ljava/lang/String;I)V
putstatic sun.security.ssl.PredefinedDHParameterSpecs.p4096:Ljava/math/BigInteger;
28: new java.math.BigInteger
dup
29: ldc "FFFFFFFFFFFFFFFFADF85458A2BB4A9AAFDC5620273D3CF1D8B9C583CE2D3695A9E13641146433FBCC939DCE249B3EF97D2FE363630C75D8F681B202AEC4617AD3DF1ED5D5FD65612433F51F5F066ED0856365553DED1AF3B557135E7F57C935984F0C70E0E68B77E2A689DAF3EFE8721DF158A136ADE73530ACCA4F483A797ABC0AB182B324FB61D108A94BB2C8E3FBB96ADAB760D7F4681D4F42A3DE394DF4AE56EDE76372BB190B07A7C8EE0A6D709E02FCE1CDF7E2ECC03404CD28342F619172FE9CE98583FF8E4F1232EEF28183C3FE3B1B4C6FAD733BB5FCBC2EC22005C58EF1837D1683B2C6F34A26C1B2EFFA886B4238611FCFDCDE355B3B6519035BBC34F4DEF99C023861B46FC9D6E6C9077AD91D2691F7F7EE598CB0FAC186D91CAEFE130985139270B4130C93BC437944F4FD4452E2D74DD364F2E21E71F54BFF5CAE82AB9C9DF69EE86D2BC522363A0DABC521979B0DEADA1DBF9A42D5C4484E0ABCD06BFA53DDEF3C1B20EE3FD59D7C25E41D2B669E1EF16E6F52C3164DF4FB7930E9E4E58857B6AC7D5F42D69F6D187763CF1D5503400487F55BA57E31CC7A7135C886EFB4318AED6A1E012D9E6832A907600A918130C46DC778F971AD0038092999A333CB8B7A1A1DB93D7140003C2A4ECEA9F98D0ACC0A8291CDCEC97DCF8EC9B55A7F88A46B4DB5A851F44182E1C68A007E5E0DD9020BFD64B645036C7A4E677D2C38532A3A23BA4442CAF53EA63BB454329B7624C8917BDD64B1C0FD4CB38E8C334C701C3ACDAD0657FCCFEC719B1F5C3E4E46041F388147FB4CFDB477A52471F7A9A96910B855322EDB6340D8A00EF092350511E30ABEC1FFF9E3A26E7FB29F8C183023C3587E38DA0077D9B4763E4E4B94B2BBC194C6651E77CAF992EEAAC0232A281BF6B3A739C1226116820AE8DB5847A67CBEF9C9091B462D538CD72B03746AE77F5E62292C311562A846505DC82DB854338AE49F5235C95B91178CCF2DD5CACEF403EC9D1810C6272B045B3B71F9DC6B80D63FDD4A8E9ADB1E6962A69526D43161C1A41D570D7938DAD4A40E329CD0E40E65FFFFFFFFFFFFFFFF"
30: bipush 16
31: invokespecial java.math.BigInteger.<init>:(Ljava/lang/String;I)V
putstatic sun.security.ssl.PredefinedDHParameterSpecs.p6144:Ljava/math/BigInteger;
32: new java.math.BigInteger
dup
33: ldc "FFFFFFFFFFFFFFFFADF85458A2BB4A9AAFDC5620273D3CF1D8B9C583CE2D3695A9E13641146433FBCC939DCE249B3EF97D2FE363630C75D8F681B202AEC4617AD3DF1ED5D5FD65612433F51F5F066ED0856365553DED1AF3B557135E7F57C935984F0C70E0E68B77E2A689DAF3EFE8721DF158A136ADE73530ACCA4F483A797ABC0AB182B324FB61D108A94BB2C8E3FBB96ADAB760D7F4681D4F42A3DE394DF4AE56EDE76372BB190B07A7C8EE0A6D709E02FCE1CDF7E2ECC03404CD28342F619172FE9CE98583FF8E4F1232EEF28183C3FE3B1B4C6FAD733BB5FCBC2EC22005C58EF1837D1683B2C6F34A26C1B2EFFA886B4238611FCFDCDE355B3B6519035BBC34F4DEF99C023861B46FC9D6E6C9077AD91D2691F7F7EE598CB0FAC186D91CAEFE130985139270B4130C93BC437944F4FD4452E2D74DD364F2E21E71F54BFF5CAE82AB9C9DF69EE86D2BC522363A0DABC521979B0DEADA1DBF9A42D5C4484E0ABCD06BFA53DDEF3C1B20EE3FD59D7C25E41D2B669E1EF16E6F52C3164DF4FB7930E9E4E58857B6AC7D5F42D69F6D187763CF1D5503400487F55BA57E31CC7A7135C886EFB4318AED6A1E012D9E6832A907600A918130C46DC778F971AD0038092999A333CB8B7A1A1DB93D7140003C2A4ECEA9F98D0ACC0A8291CDCEC97DCF8EC9B55A7F88A46B4DB5A851F44182E1C68A007E5E0DD9020BFD64B645036C7A4E677D2C38532A3A23BA4442CAF53EA63BB454329B7624C8917BDD64B1C0FD4CB38E8C334C701C3ACDAD0657FCCFEC719B1F5C3E4E46041F388147FB4CFDB477A52471F7A9A96910B855322EDB6340D8A00EF092350511E30ABEC1FFF9E3A26E7FB29F8C183023C3587E38DA0077D9B4763E4E4B94B2BBC194C6651E77CAF992EEAAC0232A281BF6B3A739C1226116820AE8DB5847A67CBEF9C9091B462D538CD72B03746AE77F5E62292C311562A846505DC82DB854338AE49F5235C95B91178CCF2DD5CACEF403EC9D1810C6272B045B3B71F9DC6B80D63FDD4A8E9ADB1E6962A69526D43161C1A41D570D7938DAD4A40E329CCFF46AAA36AD004CF600C8381E425A31D951AE64FDB23FCEC9509D43687FEB69EDD1CC5E0B8CC3BDF64B10EF86B63142A3AB8829555B2F747C932665CB2C0F1CC01BD70229388839D2AF05E454504AC78B7582822846C0BA35C35F5C59160CC046FD8251541FC68C9C86B022BB7099876A460E7451A8A93109703FEE1C217E6C3826E52C51AA691E0E423CFC99E9E31650C1217B624816CDAD9A95F9D5B8019488D9C0A0A1FE3075A577E23183F81D4A3F2FA4571EFC8CE0BA8A4FE8B6855DFE72B0A66EDED2FBABFBE58A30FAFABE1C5D71A87E2F741EF8C1FE86FEA6BBFDE530677F0D97D11D49F7A8443D0822E506A9F4614E011E2A94838FF88CD68C8BB7C5C6424CFFFFFFFFFFFFFFFF"
34: bipush 16
35: invokespecial java.math.BigInteger.<init>:(Ljava/lang/String;I)V
putstatic sun.security.ssl.PredefinedDHParameterSpecs.p8192:Ljava/math/BigInteger;
36: bipush 9
anewarray java.math.BigInteger
dup
iconst_0
37: getstatic sun.security.ssl.PredefinedDHParameterSpecs.p512:Ljava/math/BigInteger;
aastore
dup
iconst_1
getstatic sun.security.ssl.PredefinedDHParameterSpecs.p768:Ljava/math/BigInteger;
aastore
dup
iconst_2
getstatic sun.security.ssl.PredefinedDHParameterSpecs.p1024:Ljava/math/BigInteger;
aastore
dup
iconst_3
getstatic sun.security.ssl.PredefinedDHParameterSpecs.p1536:Ljava/math/BigInteger;
aastore
dup
iconst_4
getstatic sun.security.ssl.PredefinedDHParameterSpecs.p2048:Ljava/math/BigInteger;
aastore
dup
iconst_5
getstatic sun.security.ssl.PredefinedDHParameterSpecs.p3072:Ljava/math/BigInteger;
aastore
dup
bipush 6
getstatic sun.security.ssl.PredefinedDHParameterSpecs.p4096:Ljava/math/BigInteger;
aastore
dup
bipush 7
getstatic sun.security.ssl.PredefinedDHParameterSpecs.p6144:Ljava/math/BigInteger;
aastore
dup
bipush 8
getstatic sun.security.ssl.PredefinedDHParameterSpecs.p8192:Ljava/math/BigInteger;
aastore
38: putstatic sun.security.ssl.PredefinedDHParameterSpecs.supportedPrimes:[Ljava/math/BigInteger;
39: iconst_5
anewarray java.math.BigInteger
dup
iconst_0
40: getstatic sun.security.ssl.PredefinedDHParameterSpecs.p2048:Ljava/math/BigInteger;
aastore
dup
iconst_1
getstatic sun.security.ssl.PredefinedDHParameterSpecs.p3072:Ljava/math/BigInteger;
aastore
dup
iconst_2
getstatic sun.security.ssl.PredefinedDHParameterSpecs.p4096:Ljava/math/BigInteger;
aastore
dup
iconst_3
getstatic sun.security.ssl.PredefinedDHParameterSpecs.p6144:Ljava/math/BigInteger;
aastore
dup
iconst_4
getstatic sun.security.ssl.PredefinedDHParameterSpecs.p8192:Ljava/math/BigInteger;
aastore
41: putstatic sun.security.ssl.PredefinedDHParameterSpecs.ffdhePrimes:[Ljava/math/BigInteger;
42: ldc "\\s+"
invokestatic java.util.regex.Pattern.compile:(Ljava/lang/String;)Ljava/util/regex/Pattern;
putstatic sun.security.ssl.PredefinedDHParameterSpecs.spacesPattern:Ljava/util/regex/Pattern;
43: ldc "(\\{[0-9A-Fa-f]+,[0-9A-Fa-f]+\\})(,\\{[0-9A-Fa-f]+,[0-9A-Fa-f]+\\})*"
44: invokestatic java.util.regex.Pattern.compile:(Ljava/lang/String;)Ljava/util/regex/Pattern;
putstatic sun.security.ssl.PredefinedDHParameterSpecs.syntaxPattern:Ljava/util/regex/Pattern;
45: ldc "\\{([0-9A-Fa-f]+),([0-9A-Fa-f]+)\\}"
46: invokestatic java.util.regex.Pattern.compile:(Ljava/lang/String;)Ljava/util/regex/Pattern;
putstatic sun.security.ssl.PredefinedDHParameterSpecs.paramsPattern:Ljava/util/regex/Pattern;
47: new sun.security.ssl.PredefinedDHParameterSpecs$1
dup
invokespecial sun.security.ssl.PredefinedDHParameterSpecs$1.<init>:()V
48: invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
checkcast java.lang.String
astore 0
start local 0 49: aload 0
ifnull 54
aload 0
invokevirtual java.lang.String.isEmpty:()Z
ifne 54
50: aload 0
invokevirtual java.lang.String.length:()I
iconst_2
if_icmplt 53
aload 0
iconst_0
invokevirtual java.lang.String.charAt:(I)C
bipush 34
if_icmpne 53
51: aload 0
aload 0
invokevirtual java.lang.String.length:()I
iconst_1
isub
invokevirtual java.lang.String.charAt:(I)C
bipush 34
if_icmpne 53
52: aload 0
iconst_1
aload 0
invokevirtual java.lang.String.length:()I
iconst_1
isub
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
astore 0
53: StackMap locals: java.lang.String
StackMap stack:
aload 0
invokevirtual java.lang.String.trim:()Ljava/lang/String;
astore 0
54: StackMap locals:
StackMap stack:
aload 0
ifnull 62
aload 0
invokevirtual java.lang.String.isEmpty:()Z
ifne 62
55: getstatic sun.security.ssl.PredefinedDHParameterSpecs.spacesPattern:Ljava/util/regex/Pattern;
aload 0
invokevirtual java.util.regex.Pattern.matcher:(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;
astore 1
start local 1 56: aload 1
ldc ""
invokevirtual java.util.regex.Matcher.replaceAll:(Ljava/lang/String;)Ljava/lang/String;
astore 0
57: getstatic sun.security.ssl.SSLLogger.isOn:Z
ifeq 62
ldc "sslctx"
invokestatic sun.security.ssl.SSLLogger.isOn:(Ljava/lang/String;)Z
ifeq 62
58: new java.lang.StringBuilder
dup
ldc "The Security Property jdk.tls.server.defaultDHEParameters: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
59: aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
60: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
iconst_0
anewarray java.lang.Object
61: invokestatic sun.security.ssl.SSLLogger.fine:(Ljava/lang/String;[Ljava/lang/Object;)V
end local 1 62: StackMap locals:
StackMap stack:
new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
astore 1
start local 1 63: aload 0
ifnull 86
aload 0
invokevirtual java.lang.String.isEmpty:()Z
ifne 86
64: getstatic sun.security.ssl.PredefinedDHParameterSpecs.syntaxPattern:Ljava/util/regex/Pattern;
aload 0
invokevirtual java.util.regex.Pattern.matcher:(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;
astore 2
start local 2 65: aload 2
invokevirtual java.util.regex.Matcher.matches:()Z
ifeq 84
66: getstatic sun.security.ssl.PredefinedDHParameterSpecs.paramsPattern:Ljava/util/regex/Pattern;
aload 0
invokevirtual java.util.regex.Pattern.matcher:(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;
astore 3
start local 3 67: goto 82
68: StackMap locals: java.util.Map java.util.regex.Matcher java.util.regex.Matcher
StackMap stack:
aload 3
iconst_1
invokevirtual java.util.regex.Matcher.group:(I)Ljava/lang/String;
astore 4
start local 4 69: new java.math.BigInteger
dup
aload 4
bipush 16
invokespecial java.math.BigInteger.<init>:(Ljava/lang/String;I)V
astore 5
start local 5 70: aload 5
bipush 120
invokevirtual java.math.BigInteger.isProbablePrime:(I)Z
ifne 77
71: getstatic sun.security.ssl.SSLLogger.isOn:Z
ifeq 82
ldc "sslctx"
invokestatic sun.security.ssl.SSLLogger.isOn:(Ljava/lang/String;)Z
ifeq 82
72: new java.lang.StringBuilder
dup
ldc "Prime modulus p in Security Property, jdk.tls.server.defaultDHEParameters, is not a prime: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
73: aload 4
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
74: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
iconst_0
anewarray java.lang.Object
75: invokestatic sun.security.ssl.SSLLogger.fine:(Ljava/lang/String;[Ljava/lang/Object;)V
76: goto 82
77: StackMap locals: java.lang.String java.math.BigInteger
StackMap stack:
aload 3
iconst_2
invokevirtual java.util.regex.Matcher.group:(I)Ljava/lang/String;
astore 6
start local 6 78: new java.math.BigInteger
dup
aload 6
bipush 16
invokespecial java.math.BigInteger.<init>:(Ljava/lang/String;I)V
astore 7
start local 7 79: new javax.crypto.spec.DHParameterSpec
dup
aload 5
aload 7
invokespecial javax.crypto.spec.DHParameterSpec.<init>:(Ljava/math/BigInteger;Ljava/math/BigInteger;)V
astore 8
start local 8 80: aload 5
invokevirtual java.math.BigInteger.bitLength:()I
istore 9
start local 9 81: aload 1
iload 9
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aload 8
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 82: StackMap locals:
StackMap stack:
aload 3
invokevirtual java.util.regex.Matcher.find:()Z
ifne 68
end local 3 83: goto 86
StackMap locals:
StackMap stack:
84: getstatic sun.security.ssl.SSLLogger.isOn:Z
ifeq 86
ldc "sslctx"
invokestatic sun.security.ssl.SSLLogger.isOn:(Ljava/lang/String;)Z
ifeq 86
85: ldc "Invalid Security Property, jdk.tls.server.defaultDHEParameters, definition"
iconst_0
anewarray java.lang.Object
invokestatic sun.security.ssl.SSLLogger.fine:(Ljava/lang/String;[Ljava/lang/Object;)V
end local 2 86: StackMap locals:
StackMap stack:
new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
astore 2
start local 2 87: getstatic sun.security.ssl.PredefinedDHParameterSpecs.ffdhePrimes:[Ljava/math/BigInteger;
dup
astore 6
arraylength
istore 5
iconst_0
istore 4
goto 94
StackMap locals: java.lang.String java.util.Map java.util.Map top int int java.math.BigInteger[]
StackMap stack:
88: aload 6
iload 4
aaload
astore 3
start local 3 89: aload 3
invokevirtual java.math.BigInteger.bitLength:()I
istore 7
start local 7 90: new javax.crypto.spec.DHParameterSpec
dup
aload 3
getstatic java.math.BigInteger.TWO:Ljava/math/BigInteger;
invokespecial javax.crypto.spec.DHParameterSpec.<init>:(Ljava/math/BigInteger;Ljava/math/BigInteger;)V
astore 8
start local 8 91: aload 2
iload 7
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aload 8
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
92: aload 1
iload 7
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aload 8
invokeinterface java.util.Map.putIfAbsent:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 8 end local 7 end local 3 93: iinc 4 1
StackMap locals:
StackMap stack:
94: iload 4
iload 5
if_icmplt 88
95: getstatic sun.security.ssl.PredefinedDHParameterSpecs.supportedPrimes:[Ljava/math/BigInteger;
dup
astore 6
arraylength
istore 5
iconst_0
istore 4
goto 103
StackMap locals:
StackMap stack:
96: aload 6
iload 4
aaload
astore 3
start local 3 97: aload 3
invokevirtual java.math.BigInteger.bitLength:()I
istore 7
start local 7 98: aload 1
iload 7
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
ifnonnull 102
99: aload 1
iload 7
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
100: new javax.crypto.spec.DHParameterSpec
dup
aload 3
getstatic java.math.BigInteger.TWO:Ljava/math/BigInteger;
invokespecial javax.crypto.spec.DHParameterSpec.<init>:(Ljava/math/BigInteger;Ljava/math/BigInteger;)V
101: invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 7 end local 3 102: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
103: iload 4
iload 5
if_icmplt 96
104: aload 2
invokestatic java.util.Collections.unmodifiableMap:(Ljava/util/Map;)Ljava/util/Map;
105: putstatic sun.security.ssl.PredefinedDHParameterSpecs.ffdheParams:Ljava/util/Map;
106: aload 1
invokestatic java.util.Collections.unmodifiableMap:(Ljava/util/Map;)Ljava/util/Map;
107: putstatic sun.security.ssl.PredefinedDHParameterSpecs.definedParams:Ljava/util/Map;
end local 2 end local 1 end local 0 108: return
LocalVariableTable:
Start End Slot Name Signature
49 108 0 property Ljava/lang/String;
56 62 1 spacesMatcher Ljava/util/regex/Matcher;
63 108 1 defaultParams Ljava/util/Map<Ljava/lang/Integer;Ljavax/crypto/spec/DHParameterSpec;>;
65 86 2 syntaxMatcher Ljava/util/regex/Matcher;
67 83 3 paramsFinder Ljava/util/regex/Matcher;
69 82 4 primeModulus Ljava/lang/String;
70 82 5 p Ljava/math/BigInteger;
78 82 6 baseGenerator Ljava/lang/String;
79 82 7 g Ljava/math/BigInteger;
80 82 8 spec Ljavax/crypto/spec/DHParameterSpec;
81 82 9 primeLen I
87 108 2 tempFFDHEs Ljava/util/Map<Ljava/lang/Integer;Ljavax/crypto/spec/DHParameterSpec;>;
89 93 3 p Ljava/math/BigInteger;
90 93 7 primeLen I
91 93 8 dhps Ljavax/crypto/spec/DHParameterSpec;
97 102 3 p Ljava/math/BigInteger;
98 102 7 primeLen I
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 Lsun/security/ssl/PredefinedDHParameterSpecs;
}
SourceFile: "PredefinedDHParameterSpecs.java"
NestMembers:
sun.security.ssl.PredefinedDHParameterSpecs$1
InnerClasses:
sun.security.ssl.PredefinedDHParameterSpecs$1