final class org.jcp.xml.dsig.internal.dom.DOMKeyValue$RSA extends org.jcp.xml.dsig.internal.dom.DOMKeyValue<java.security.interfaces.RSAPublicKey>
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: org.jcp.xml.dsig.internal.dom.DOMKeyValue$RSA
super_class: org.jcp.xml.dsig.internal.dom.DOMKeyValue
{
private org.jcp.xml.dsig.internal.dom.DOMCryptoBinary modulus;
descriptor: Lorg/jcp/xml/dsig/internal/dom/DOMCryptoBinary;
flags: (0x0002) ACC_PRIVATE
private org.jcp.xml.dsig.internal.dom.DOMCryptoBinary exponent;
descriptor: Lorg/jcp/xml/dsig/internal/dom/DOMCryptoBinary;
flags: (0x0002) ACC_PRIVATE
private java.security.KeyFactory rsakf;
descriptor: Ljava/security/KeyFactory;
flags: (0x0002) ACC_PRIVATE
void <init>(java.security.interfaces.RSAPublicKey);
descriptor: (Ljava/security/interfaces/RSAPublicKey;)V
flags: (0x0000)
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokespecial org.jcp.xml.dsig.internal.dom.DOMKeyValue.<init>:(Ljava/security/PublicKey;)V
1: aload 1
astore 2
start local 2 2: aload 0
new org.jcp.xml.dsig.internal.dom.DOMCryptoBinary
dup
aload 2
invokeinterface java.security.interfaces.RSAPublicKey.getPublicExponent:()Ljava/math/BigInteger;
invokespecial org.jcp.xml.dsig.internal.dom.DOMCryptoBinary.<init>:(Ljava/math/BigInteger;)V
putfield org.jcp.xml.dsig.internal.dom.DOMKeyValue$RSA.exponent:Lorg/jcp/xml/dsig/internal/dom/DOMCryptoBinary;
3: aload 0
new org.jcp.xml.dsig.internal.dom.DOMCryptoBinary
dup
aload 2
invokeinterface java.security.interfaces.RSAPublicKey.getModulus:()Ljava/math/BigInteger;
invokespecial org.jcp.xml.dsig.internal.dom.DOMCryptoBinary.<init>:(Ljava/math/BigInteger;)V
putfield org.jcp.xml.dsig.internal.dom.DOMKeyValue$RSA.modulus:Lorg/jcp/xml/dsig/internal/dom/DOMCryptoBinary;
4: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/jcp/xml/dsig/internal/dom/DOMKeyValue$RSA;
0 5 1 key Ljava/security/interfaces/RSAPublicKey;
2 5 2 rkey Ljava/security/interfaces/RSAPublicKey;
Exceptions:
throws java.security.KeyException
MethodParameters:
Name Flags
key
void <init>(org.w3c.dom.Element);
descriptor: (Lorg/w3c/dom/Element;)V
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokespecial org.jcp.xml.dsig.internal.dom.DOMKeyValue.<init>:(Lorg/w3c/dom/Element;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/jcp/xml/dsig/internal/dom/DOMKeyValue$RSA;
0 2 1 elem Lorg/w3c/dom/Element;
Exceptions:
throws javax.xml.crypto.MarshalException
MethodParameters:
Name Flags
elem
void marshalPublicKey(org.w3c.dom.Node, org.w3c.dom.Document, java.lang.String, javax.xml.crypto.dom.DOMCryptoContext);
descriptor: (Lorg/w3c/dom/Node;Lorg/w3c/dom/Document;Ljava/lang/String;Ljavax/xml/crypto/dom/DOMCryptoContext;)V
flags: (0x0000)
Code:
stack=4, locals=8, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 2
ldc "RSAKeyValue"
1: ldc "http://www.w3.org/2000/09/xmldsig#"
2: aload 3
3: invokestatic org.jcp.xml.dsig.internal.dom.DOMUtils.createElement:(Lorg/w3c/dom/Document;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lorg/w3c/dom/Element;
astore 5
start local 5 4: aload 2
ldc "Modulus"
5: ldc "http://www.w3.org/2000/09/xmldsig#"
6: aload 3
7: invokestatic org.jcp.xml.dsig.internal.dom.DOMUtils.createElement:(Lorg/w3c/dom/Document;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lorg/w3c/dom/Element;
astore 6
start local 6 8: aload 2
ldc "Exponent"
9: ldc "http://www.w3.org/2000/09/xmldsig#"
10: aload 3
11: invokestatic org.jcp.xml.dsig.internal.dom.DOMUtils.createElement:(Lorg/w3c/dom/Document;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lorg/w3c/dom/Element;
astore 7
start local 7 12: aload 0
getfield org.jcp.xml.dsig.internal.dom.DOMKeyValue$RSA.modulus:Lorg/jcp/xml/dsig/internal/dom/DOMCryptoBinary;
aload 6
aload 3
aload 4
invokevirtual org.jcp.xml.dsig.internal.dom.DOMCryptoBinary.marshal:(Lorg/w3c/dom/Node;Ljava/lang/String;Ljavax/xml/crypto/dom/DOMCryptoContext;)V
13: aload 0
getfield org.jcp.xml.dsig.internal.dom.DOMKeyValue$RSA.exponent:Lorg/jcp/xml/dsig/internal/dom/DOMCryptoBinary;
aload 7
aload 3
aload 4
invokevirtual org.jcp.xml.dsig.internal.dom.DOMCryptoBinary.marshal:(Lorg/w3c/dom/Node;Ljava/lang/String;Ljavax/xml/crypto/dom/DOMCryptoContext;)V
14: aload 5
aload 6
invokeinterface org.w3c.dom.Element.appendChild:(Lorg/w3c/dom/Node;)Lorg/w3c/dom/Node;
pop
15: aload 5
aload 7
invokeinterface org.w3c.dom.Element.appendChild:(Lorg/w3c/dom/Node;)Lorg/w3c/dom/Node;
pop
16: aload 1
aload 5
invokeinterface org.w3c.dom.Node.appendChild:(Lorg/w3c/dom/Node;)Lorg/w3c/dom/Node;
pop
17: return
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lorg/jcp/xml/dsig/internal/dom/DOMKeyValue$RSA;
0 18 1 parent Lorg/w3c/dom/Node;
0 18 2 doc Lorg/w3c/dom/Document;
0 18 3 dsPrefix Ljava/lang/String;
0 18 4 context Ljavax/xml/crypto/dom/DOMCryptoContext;
4 18 5 rsaElem Lorg/w3c/dom/Element;
8 18 6 modulusElem Lorg/w3c/dom/Element;
12 18 7 exponentElem Lorg/w3c/dom/Element;
Exceptions:
throws javax.xml.crypto.MarshalException
MethodParameters:
Name Flags
parent
doc
dsPrefix
context
java.security.interfaces.RSAPublicKey unmarshalKeyValue(org.w3c.dom.Element);
descriptor: (Lorg/w3c/dom/Element;)Ljava/security/interfaces/RSAPublicKey;
flags: (0x0000)
Code:
stack=5, locals=7, args_size=2
start local 0 start local 1 0: aload 0
getfield org.jcp.xml.dsig.internal.dom.DOMKeyValue$RSA.rsakf:Ljava/security/KeyFactory;
ifnonnull 7
1: aload 0
ldc "RSA"
invokestatic java.security.KeyFactory.getInstance:(Ljava/lang/String;)Ljava/security/KeyFactory;
putfield org.jcp.xml.dsig.internal.dom.DOMKeyValue$RSA.rsakf:Ljava/security/KeyFactory;
2: goto 7
StackMap locals:
StackMap stack: java.security.NoSuchAlgorithmException
3: astore 2
start local 2 4: new java.lang.RuntimeException
dup
5: new java.lang.StringBuilder
dup
ldc "unable to create RSA KeyFactory: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual java.security.NoSuchAlgorithmException.getMessage:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
6: invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
athrow
end local 2 7: StackMap locals:
StackMap stack:
aload 1
8: ldc "Modulus"
9: ldc "http://www.w3.org/2000/09/xmldsig#"
10: invokestatic org.jcp.xml.dsig.internal.dom.DOMUtils.getFirstChildElement:(Lorg/w3c/dom/Node;Ljava/lang/String;Ljava/lang/String;)Lorg/w3c/dom/Element;
astore 2
start local 2 11: aload 2
invokestatic org.jcp.xml.dsig.internal.dom.DOMKeyValue$RSA.decode:(Lorg/w3c/dom/Element;)Ljava/math/BigInteger;
astore 3
start local 3 12: aload 2
13: ldc "Exponent"
14: ldc "http://www.w3.org/2000/09/xmldsig#"
15: invokestatic org.jcp.xml.dsig.internal.dom.DOMUtils.getNextSiblingElement:(Lorg/w3c/dom/Node;Ljava/lang/String;Ljava/lang/String;)Lorg/w3c/dom/Element;
astore 4
start local 4 16: aload 4
invokestatic org.jcp.xml.dsig.internal.dom.DOMKeyValue$RSA.decode:(Lorg/w3c/dom/Element;)Ljava/math/BigInteger;
astore 5
start local 5 17: new java.security.spec.RSAPublicKeySpec
dup
aload 3
aload 5
invokespecial java.security.spec.RSAPublicKeySpec.<init>:(Ljava/math/BigInteger;Ljava/math/BigInteger;)V
astore 6
start local 6 18: aload 0
getfield org.jcp.xml.dsig.internal.dom.DOMKeyValue$RSA.rsakf:Ljava/security/KeyFactory;
aload 6
invokestatic org.jcp.xml.dsig.internal.dom.DOMKeyValue.generatePublicKey:(Ljava/security/KeyFactory;Ljava/security/spec/KeySpec;)Ljava/security/PublicKey;
checkcast java.security.interfaces.RSAPublicKey
areturn
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 19 0 this Lorg/jcp/xml/dsig/internal/dom/DOMKeyValue$RSA;
0 19 1 kvtElem Lorg/w3c/dom/Element;
4 7 2 e Ljava/security/NoSuchAlgorithmException;
11 19 2 modulusElem Lorg/w3c/dom/Element;
12 19 3 modulus Ljava/math/BigInteger;
16 19 4 exponentElem Lorg/w3c/dom/Element;
17 19 5 exponent Ljava/math/BigInteger;
18 19 6 spec Ljava/security/spec/RSAPublicKeySpec;
Exception table:
from to target type
1 2 3 Class java.security.NoSuchAlgorithmException
Exceptions:
throws javax.xml.crypto.MarshalException
MethodParameters:
Name Flags
kvtElem
java.security.PublicKey unmarshalKeyValue(org.w3c.dom.Element);
descriptor: (Lorg/w3c/dom/Element;)Ljava/security/PublicKey;
flags: (0x1040) ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
invokevirtual org.jcp.xml.dsig.internal.dom.DOMKeyValue$RSA.unmarshalKeyValue:(Lorg/w3c/dom/Element;)Ljava/security/interfaces/RSAPublicKey;
areturn
LocalVariableTable:
Start End Slot Name Signature
Exceptions:
throws javax.xml.crypto.MarshalException
}
Signature: Lorg/jcp/xml/dsig/internal/dom/DOMKeyValue<Ljava/security/interfaces/RSAPublicKey;>;
SourceFile: "DOMKeyValue.java"
NestHost: org.jcp.xml.dsig.internal.dom.DOMKeyValue
InnerClasses:
final RSA = org.jcp.xml.dsig.internal.dom.DOMKeyValue$RSA of org.jcp.xml.dsig.internal.dom.DOMKeyValue