class org.bouncycastle.cert.crmf.PKMACValueGenerator
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: org.bouncycastle.cert.crmf.PKMACValueGenerator
super_class: java.lang.Object
{
private org.bouncycastle.cert.crmf.PKMACBuilder builder;
descriptor: Lorg/bouncycastle/cert/crmf/PKMACBuilder;
flags: (0x0002) ACC_PRIVATE
public void <init>(org.bouncycastle.cert.crmf.PKMACBuilder);
descriptor: (Lorg/bouncycastle/cert/crmf/PKMACBuilder;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 // org.bouncycastle.cert.crmf.PKMACValueGenerator this
start local 1 // org.bouncycastle.cert.crmf.PKMACBuilder builder
0: .line 16
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
1: .line 18
aload 0 /* this */
aload 1 /* builder */
putfield org.bouncycastle.cert.crmf.PKMACValueGenerator.builder:Lorg/bouncycastle/cert/crmf/PKMACBuilder;
2: .line 19
return
end local 1 // org.bouncycastle.cert.crmf.PKMACBuilder builder
end local 0 // org.bouncycastle.cert.crmf.PKMACValueGenerator this
LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/bouncycastle/cert/crmf/PKMACValueGenerator;
0 3 1 builder Lorg/bouncycastle/cert/crmf/PKMACBuilder;
MethodParameters:
Name Flags
builder
public org.bouncycastle.asn1.crmf.PKMACValue generate(char[], org.bouncycastle.asn1.x509.SubjectPublicKeyInfo);
descriptor: ([CLorg/bouncycastle/asn1/x509/SubjectPublicKeyInfo;)Lorg/bouncycastle/asn1/crmf/PKMACValue;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=6, args_size=3
start local 0 // org.bouncycastle.cert.crmf.PKMACValueGenerator this
start local 1 // char[] password
start local 2 // org.bouncycastle.asn1.x509.SubjectPublicKeyInfo keyInfo
0: .line 24
aload 0 /* this */
getfield org.bouncycastle.cert.crmf.PKMACValueGenerator.builder:Lorg/bouncycastle/cert/crmf/PKMACBuilder;
aload 1 /* password */
invokevirtual org.bouncycastle.cert.crmf.PKMACBuilder.build:([C)Lorg/bouncycastle/operator/MacCalculator;
astore 3 /* calculator */
start local 3 // org.bouncycastle.operator.MacCalculator calculator
1: .line 26
aload 3 /* calculator */
invokeinterface org.bouncycastle.operator.MacCalculator.getOutputStream:()Ljava/io/OutputStream;
astore 4 /* macOut */
start local 4 // java.io.OutputStream macOut
2: .line 30
aload 4 /* macOut */
aload 2 /* keyInfo */
ldc "DER"
invokevirtual org.bouncycastle.asn1.x509.SubjectPublicKeyInfo.getEncoded:(Ljava/lang/String;)[B
invokevirtual java.io.OutputStream.write:([B)V
3: .line 32
aload 4 /* macOut */
invokevirtual java.io.OutputStream.close:()V
4: .line 33
goto 7
5: .line 34
StackMap locals: org.bouncycastle.cert.crmf.PKMACValueGenerator char[] org.bouncycastle.asn1.x509.SubjectPublicKeyInfo org.bouncycastle.operator.MacCalculator java.io.OutputStream
StackMap stack: java.io.IOException
astore 5 /* e */
start local 5 // java.io.IOException e
6: .line 36
new org.bouncycastle.cert.crmf.CRMFException
dup
new java.lang.StringBuilder
dup
ldc "exception encoding mac input: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 5 /* e */
invokevirtual java.io.IOException.getMessage:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 5 /* e */
invokespecial org.bouncycastle.cert.crmf.CRMFException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 5 // java.io.IOException e
7: .line 39
StackMap locals:
StackMap stack:
new org.bouncycastle.asn1.crmf.PKMACValue
dup
aload 3 /* calculator */
invokeinterface org.bouncycastle.operator.MacCalculator.getAlgorithmIdentifier:()Lorg/bouncycastle/asn1/x509/AlgorithmIdentifier;
new org.bouncycastle.asn1.DERBitString
dup
aload 3 /* calculator */
invokeinterface org.bouncycastle.operator.MacCalculator.getMac:()[B
invokespecial org.bouncycastle.asn1.DERBitString.<init>:([B)V
invokespecial org.bouncycastle.asn1.crmf.PKMACValue.<init>:(Lorg/bouncycastle/asn1/x509/AlgorithmIdentifier;Lorg/bouncycastle/asn1/DERBitString;)V
areturn
end local 4 // java.io.OutputStream macOut
end local 3 // org.bouncycastle.operator.MacCalculator calculator
end local 2 // org.bouncycastle.asn1.x509.SubjectPublicKeyInfo keyInfo
end local 1 // char[] password
end local 0 // org.bouncycastle.cert.crmf.PKMACValueGenerator this
LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/bouncycastle/cert/crmf/PKMACValueGenerator;
0 8 1 password [C
0 8 2 keyInfo Lorg/bouncycastle/asn1/x509/SubjectPublicKeyInfo;
1 8 3 calculator Lorg/bouncycastle/operator/MacCalculator;
2 8 4 macOut Ljava/io/OutputStream;
6 7 5 e Ljava/io/IOException;
Exception table:
from to target type
2 4 5 Class java.io.IOException
Exceptions:
throws org.bouncycastle.cert.crmf.CRMFException
MethodParameters:
Name Flags
password
keyInfo
}
SourceFile: "PKMACValueGenerator.java"