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