final class org.jcp.xml.dsig.internal.dom.DOMKeyValue$DSA extends org.jcp.xml.dsig.internal.dom.DOMKeyValue
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: org.jcp.xml.dsig.internal.dom.DOMKeyValue$DSA
super_class: org.jcp.xml.dsig.internal.dom.DOMKeyValue
{
private org.jcp.xml.dsig.internal.dom.DOMCryptoBinary p;
descriptor: Lorg/jcp/xml/dsig/internal/dom/DOMCryptoBinary;
flags: (0x0002) ACC_PRIVATE
private org.jcp.xml.dsig.internal.dom.DOMCryptoBinary q;
descriptor: Lorg/jcp/xml/dsig/internal/dom/DOMCryptoBinary;
flags: (0x0002) ACC_PRIVATE
private org.jcp.xml.dsig.internal.dom.DOMCryptoBinary g;
descriptor: Lorg/jcp/xml/dsig/internal/dom/DOMCryptoBinary;
flags: (0x0002) ACC_PRIVATE
private org.jcp.xml.dsig.internal.dom.DOMCryptoBinary y;
descriptor: Lorg/jcp/xml/dsig/internal/dom/DOMCryptoBinary;
flags: (0x0002) ACC_PRIVATE
private org.jcp.xml.dsig.internal.dom.DOMCryptoBinary j;
descriptor: Lorg/jcp/xml/dsig/internal/dom/DOMCryptoBinary;
flags: (0x0002) ACC_PRIVATE
private java.security.KeyFactory dsakf;
descriptor: Ljava/security/KeyFactory;
flags: (0x0002) ACC_PRIVATE
void <init>(java.security.PublicKey);
descriptor: (Ljava/security/PublicKey;)V
flags: (0x0000)
Code:
stack=4, locals=4, 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
checkcast java.security.interfaces.DSAPublicKey
astore 2
start local 2 2: aload 2
invokeinterface java.security.interfaces.DSAPublicKey.getParams:()Ljava/security/interfaces/DSAParams;
astore 3
start local 3 3: aload 0
new org.jcp.xml.dsig.internal.dom.DOMCryptoBinary
dup
aload 3
invokeinterface java.security.interfaces.DSAParams.getP:()Ljava/math/BigInteger;
invokespecial org.jcp.xml.dsig.internal.dom.DOMCryptoBinary.<init>:(Ljava/math/BigInteger;)V
putfield org.jcp.xml.dsig.internal.dom.DOMKeyValue$DSA.p:Lorg/jcp/xml/dsig/internal/dom/DOMCryptoBinary;
4: aload 0
new org.jcp.xml.dsig.internal.dom.DOMCryptoBinary
dup
aload 3
invokeinterface java.security.interfaces.DSAParams.getQ:()Ljava/math/BigInteger;
invokespecial org.jcp.xml.dsig.internal.dom.DOMCryptoBinary.<init>:(Ljava/math/BigInteger;)V
putfield org.jcp.xml.dsig.internal.dom.DOMKeyValue$DSA.q:Lorg/jcp/xml/dsig/internal/dom/DOMCryptoBinary;
5: aload 0
new org.jcp.xml.dsig.internal.dom.DOMCryptoBinary
dup
aload 3
invokeinterface java.security.interfaces.DSAParams.getG:()Ljava/math/BigInteger;
invokespecial org.jcp.xml.dsig.internal.dom.DOMCryptoBinary.<init>:(Ljava/math/BigInteger;)V
putfield org.jcp.xml.dsig.internal.dom.DOMKeyValue$DSA.g:Lorg/jcp/xml/dsig/internal/dom/DOMCryptoBinary;
6: aload 0
new org.jcp.xml.dsig.internal.dom.DOMCryptoBinary
dup
aload 2
invokeinterface java.security.interfaces.DSAPublicKey.getY:()Ljava/math/BigInteger;
invokespecial org.jcp.xml.dsig.internal.dom.DOMCryptoBinary.<init>:(Ljava/math/BigInteger;)V
putfield org.jcp.xml.dsig.internal.dom.DOMKeyValue$DSA.y:Lorg/jcp/xml/dsig/internal/dom/DOMCryptoBinary;
7: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/jcp/xml/dsig/internal/dom/DOMKeyValue$DSA;
0 8 1 key Ljava/security/PublicKey;
2 8 2 dkey Ljava/security/interfaces/DSAPublicKey;
3 8 3 params Ljava/security/interfaces/DSAParams;
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$DSA;
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=10, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 2
ldc "DSAKeyValue"
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 "P"
ldc "http://www.w3.org/2000/09/xmldsig#"
5: aload 3
6: 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 7: aload 2
ldc "Q"
ldc "http://www.w3.org/2000/09/xmldsig#"
8: aload 3
9: 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 10: aload 2
ldc "G"
ldc "http://www.w3.org/2000/09/xmldsig#"
11: aload 3
12: 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 8
start local 8 13: aload 2
ldc "Y"
ldc "http://www.w3.org/2000/09/xmldsig#"
14: aload 3
15: 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 9
start local 9 16: aload 0
getfield org.jcp.xml.dsig.internal.dom.DOMKeyValue$DSA.p: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
17: aload 0
getfield org.jcp.xml.dsig.internal.dom.DOMKeyValue$DSA.q: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
18: aload 0
getfield org.jcp.xml.dsig.internal.dom.DOMKeyValue$DSA.g:Lorg/jcp/xml/dsig/internal/dom/DOMCryptoBinary;
aload 8
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
19: aload 0
getfield org.jcp.xml.dsig.internal.dom.DOMKeyValue$DSA.y:Lorg/jcp/xml/dsig/internal/dom/DOMCryptoBinary;
aload 9
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
20: aload 5
aload 6
invokeinterface org.w3c.dom.Element.appendChild:(Lorg/w3c/dom/Node;)Lorg/w3c/dom/Node;
pop
21: aload 5
aload 7
invokeinterface org.w3c.dom.Element.appendChild:(Lorg/w3c/dom/Node;)Lorg/w3c/dom/Node;
pop
22: aload 5
aload 8
invokeinterface org.w3c.dom.Element.appendChild:(Lorg/w3c/dom/Node;)Lorg/w3c/dom/Node;
pop
23: aload 5
aload 9
invokeinterface org.w3c.dom.Element.appendChild:(Lorg/w3c/dom/Node;)Lorg/w3c/dom/Node;
pop
24: aload 1
aload 5
invokeinterface org.w3c.dom.Node.appendChild:(Lorg/w3c/dom/Node;)Lorg/w3c/dom/Node;
pop
25: return
end local 9 end local 8 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 26 0 this Lorg/jcp/xml/dsig/internal/dom/DOMKeyValue$DSA;
0 26 1 parent Lorg/w3c/dom/Node;
0 26 2 doc Lorg/w3c/dom/Document;
0 26 3 dsPrefix Ljava/lang/String;
0 26 4 context Ljavax/xml/crypto/dom/DOMCryptoContext;
4 26 5 dsaElem Lorg/w3c/dom/Element;
7 26 6 pElem Lorg/w3c/dom/Element;
10 26 7 qElem Lorg/w3c/dom/Element;
13 26 8 gElem Lorg/w3c/dom/Element;
16 26 9 yElem Lorg/w3c/dom/Element;
Exceptions:
throws javax.xml.crypto.MarshalException
MethodParameters:
Name Flags
parent
doc
dsPrefix
context
java.security.PublicKey unmarshalKeyValue(org.w3c.dom.Element);
descriptor: (Lorg/w3c/dom/Element;)Ljava/security/PublicKey;
flags: (0x0000)
Code:
stack=6, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield org.jcp.xml.dsig.internal.dom.DOMKeyValue$DSA.dsakf:Ljava/security/KeyFactory;
ifnonnull 7
1: aload 0
ldc "DSA"
invokestatic java.security.KeyFactory.getInstance:(Ljava/lang/String;)Ljava/security/KeyFactory;
putfield org.jcp.xml.dsig.internal.dom.DOMKeyValue$DSA.dsakf: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 DSA 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
invokestatic org.jcp.xml.dsig.internal.dom.DOMUtils.getFirstChildElement:(Lorg/w3c/dom/Node;)Lorg/w3c/dom/Element;
astore 2
start local 2 8: aload 2
invokeinterface org.w3c.dom.Element.getLocalName:()Ljava/lang/String;
ldc "P"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 13
9: aload 0
new org.jcp.xml.dsig.internal.dom.DOMCryptoBinary
dup
aload 2
invokeinterface org.w3c.dom.Element.getFirstChild:()Lorg/w3c/dom/Node;
invokespecial org.jcp.xml.dsig.internal.dom.DOMCryptoBinary.<init>:(Lorg/w3c/dom/Node;)V
putfield org.jcp.xml.dsig.internal.dom.DOMKeyValue$DSA.p:Lorg/jcp/xml/dsig/internal/dom/DOMCryptoBinary;
10: aload 2
ldc "Q"
invokestatic org.jcp.xml.dsig.internal.dom.DOMUtils.getNextSiblingElement:(Lorg/w3c/dom/Node;Ljava/lang/String;)Lorg/w3c/dom/Element;
astore 2
11: aload 0
new org.jcp.xml.dsig.internal.dom.DOMCryptoBinary
dup
aload 2
invokeinterface org.w3c.dom.Element.getFirstChild:()Lorg/w3c/dom/Node;
invokespecial org.jcp.xml.dsig.internal.dom.DOMCryptoBinary.<init>:(Lorg/w3c/dom/Node;)V
putfield org.jcp.xml.dsig.internal.dom.DOMKeyValue$DSA.q:Lorg/jcp/xml/dsig/internal/dom/DOMCryptoBinary;
12: aload 2
invokestatic org.jcp.xml.dsig.internal.dom.DOMUtils.getNextSiblingElement:(Lorg/w3c/dom/Node;)Lorg/w3c/dom/Element;
astore 2
13: StackMap locals: org.w3c.dom.Element
StackMap stack:
aload 2
invokeinterface org.w3c.dom.Element.getLocalName:()Ljava/lang/String;
ldc "G"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 16
14: aload 0
new org.jcp.xml.dsig.internal.dom.DOMCryptoBinary
dup
aload 2
invokeinterface org.w3c.dom.Element.getFirstChild:()Lorg/w3c/dom/Node;
invokespecial org.jcp.xml.dsig.internal.dom.DOMCryptoBinary.<init>:(Lorg/w3c/dom/Node;)V
putfield org.jcp.xml.dsig.internal.dom.DOMKeyValue$DSA.g:Lorg/jcp/xml/dsig/internal/dom/DOMCryptoBinary;
15: aload 2
ldc "Y"
invokestatic org.jcp.xml.dsig.internal.dom.DOMUtils.getNextSiblingElement:(Lorg/w3c/dom/Node;Ljava/lang/String;)Lorg/w3c/dom/Element;
astore 2
16: StackMap locals:
StackMap stack:
aload 0
new org.jcp.xml.dsig.internal.dom.DOMCryptoBinary
dup
aload 2
invokeinterface org.w3c.dom.Element.getFirstChild:()Lorg/w3c/dom/Node;
invokespecial org.jcp.xml.dsig.internal.dom.DOMCryptoBinary.<init>:(Lorg/w3c/dom/Node;)V
putfield org.jcp.xml.dsig.internal.dom.DOMKeyValue$DSA.y:Lorg/jcp/xml/dsig/internal/dom/DOMCryptoBinary;
17: aload 2
invokestatic org.jcp.xml.dsig.internal.dom.DOMUtils.getNextSiblingElement:(Lorg/w3c/dom/Node;)Lorg/w3c/dom/Element;
astore 2
18: aload 2
ifnull 20
aload 2
invokeinterface org.w3c.dom.Element.getLocalName:()Ljava/lang/String;
ldc "J"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 20
19: aload 0
new org.jcp.xml.dsig.internal.dom.DOMCryptoBinary
dup
aload 2
invokeinterface org.w3c.dom.Element.getFirstChild:()Lorg/w3c/dom/Node;
invokespecial org.jcp.xml.dsig.internal.dom.DOMCryptoBinary.<init>:(Lorg/w3c/dom/Node;)V
putfield org.jcp.xml.dsig.internal.dom.DOMKeyValue$DSA.j:Lorg/jcp/xml/dsig/internal/dom/DOMCryptoBinary;
20: StackMap locals:
StackMap stack:
new java.security.spec.DSAPublicKeySpec
dup
aload 0
getfield org.jcp.xml.dsig.internal.dom.DOMKeyValue$DSA.y:Lorg/jcp/xml/dsig/internal/dom/DOMCryptoBinary;
invokevirtual org.jcp.xml.dsig.internal.dom.DOMCryptoBinary.getBigNum:()Ljava/math/BigInteger;
21: aload 0
getfield org.jcp.xml.dsig.internal.dom.DOMKeyValue$DSA.p:Lorg/jcp/xml/dsig/internal/dom/DOMCryptoBinary;
invokevirtual org.jcp.xml.dsig.internal.dom.DOMCryptoBinary.getBigNum:()Ljava/math/BigInteger;
22: aload 0
getfield org.jcp.xml.dsig.internal.dom.DOMKeyValue$DSA.q:Lorg/jcp/xml/dsig/internal/dom/DOMCryptoBinary;
invokevirtual org.jcp.xml.dsig.internal.dom.DOMCryptoBinary.getBigNum:()Ljava/math/BigInteger;
23: aload 0
getfield org.jcp.xml.dsig.internal.dom.DOMKeyValue$DSA.g:Lorg/jcp/xml/dsig/internal/dom/DOMCryptoBinary;
invokevirtual org.jcp.xml.dsig.internal.dom.DOMCryptoBinary.getBigNum:()Ljava/math/BigInteger;
24: invokespecial java.security.spec.DSAPublicKeySpec.<init>:(Ljava/math/BigInteger;Ljava/math/BigInteger;Ljava/math/BigInteger;Ljava/math/BigInteger;)V
astore 3
start local 3 25: aload 0
getfield org.jcp.xml.dsig.internal.dom.DOMKeyValue$DSA.dsakf:Ljava/security/KeyFactory;
aload 3
invokestatic org.jcp.xml.dsig.internal.dom.DOMKeyValue.generatePublicKey:(Ljava/security/KeyFactory;Ljava/security/spec/KeySpec;)Ljava/security/PublicKey;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 26 0 this Lorg/jcp/xml/dsig/internal/dom/DOMKeyValue$DSA;
0 26 1 kvtElem Lorg/w3c/dom/Element;
4 7 2 e Ljava/security/NoSuchAlgorithmException;
8 26 2 curElem Lorg/w3c/dom/Element;
25 26 3 spec Ljava/security/spec/DSAPublicKeySpec;
Exception table:
from to target type
1 2 3 Class java.security.NoSuchAlgorithmException
Exceptions:
throws javax.xml.crypto.MarshalException
MethodParameters:
Name Flags
kvtElem
}
SourceFile: "DOMKeyValue.java"
NestHost: org.jcp.xml.dsig.internal.dom.DOMKeyValue
InnerClasses:
final DSA = org.jcp.xml.dsig.internal.dom.DOMKeyValue$DSA of org.jcp.xml.dsig.internal.dom.DOMKeyValue