public class org.bouncycastle.tsp.PartialHashTreeProcessor
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.bouncycastle.tsp.PartialHashTreeProcessor
super_class: java.lang.Object
{
private final byte[][] values;
descriptor: [[B
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
public void <init>(org.bouncycastle.asn1.tsp.PartialHashtree);
descriptor: (Lorg/bouncycastle/asn1/tsp/PartialHashtree;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
invokevirtual org.bouncycastle.asn1.tsp.PartialHashtree.getValues:()[[B
putfield org.bouncycastle.tsp.PartialHashTreeProcessor.values:[[B
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/bouncycastle/tsp/PartialHashTreeProcessor;
0 3 1 tree Lorg/bouncycastle/asn1/tsp/PartialHashtree;
MethodParameters:
Name Flags
tree
public byte[] getHash(org.bouncycastle.operator.DigestCalculator);
descriptor: (Lorg/bouncycastle/operator/DigestCalculator;)[B
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield org.bouncycastle.tsp.PartialHashTreeProcessor.values:[[B
arraylength
iconst_1
if_icmpne 2
1: aload 0
getfield org.bouncycastle.tsp.PartialHashTreeProcessor.values:[[B
iconst_0
aaload
areturn
2: StackMap locals:
StackMap stack:
aload 1
invokeinterface org.bouncycastle.operator.DigestCalculator.getOutputStream:()Ljava/io/OutputStream;
astore 2
start local 2 3: iconst_1
istore 3
start local 3 4: goto 7
5: StackMap locals: java.io.OutputStream int
StackMap stack:
aload 2
aload 0
getfield org.bouncycastle.tsp.PartialHashTreeProcessor.values:[[B
iload 3
aaload
invokevirtual java.io.OutputStream.write:([B)V
6: iinc 3 1
StackMap locals:
StackMap stack:
7: iload 3
aload 0
getfield org.bouncycastle.tsp.PartialHashTreeProcessor.values:[[B
arraylength
if_icmpne 5
end local 3 8: aload 1
invokeinterface org.bouncycastle.operator.DigestCalculator.getDigest:()[B
9: areturn
end local 2 10: StackMap locals: org.bouncycastle.tsp.PartialHashTreeProcessor org.bouncycastle.operator.DigestCalculator
StackMap stack: java.io.IOException
astore 2
start local 2 11: new java.lang.IllegalStateException
dup
new java.lang.StringBuilder
dup
ldc "calculator failed: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
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;
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lorg/bouncycastle/tsp/PartialHashTreeProcessor;
0 12 1 digestCalculator Lorg/bouncycastle/operator/DigestCalculator;
3 10 2 dOut Ljava/io/OutputStream;
4 8 3 i I
11 12 2 e Ljava/io/IOException;
Exception table:
from to target type
2 9 10 Class java.io.IOException
MethodParameters:
Name Flags
digestCalculator
public void verifyContainsHash(byte[]);
descriptor: ([B)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual org.bouncycastle.tsp.PartialHashTreeProcessor.containsHash:([B)Z
ifne 2
1: new org.bouncycastle.tsp.PartialHashTreeVerificationException
dup
ldc "calculated hash is not present in partial hash tree"
invokespecial org.bouncycastle.tsp.PartialHashTreeVerificationException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/bouncycastle/tsp/PartialHashTreeProcessor;
0 3 1 hash [B
Exceptions:
throws org.bouncycastle.tsp.PartialHashTreeVerificationException
MethodParameters:
Name Flags
hash final
public boolean containsHash(byte[]);
descriptor: ([B)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: iconst_1
istore 2
start local 2 1: goto 5
2: StackMap locals: int
StackMap stack:
aload 1
aload 0
getfield org.bouncycastle.tsp.PartialHashTreeProcessor.values:[[B
iload 2
aaload
invokestatic org.bouncycastle.util.Arrays.areEqual:([B[B)Z
ifeq 4
3: iconst_1
ireturn
4: StackMap locals:
StackMap stack:
iinc 2 1
StackMap locals:
StackMap stack:
5: iload 2
aload 0
getfield org.bouncycastle.tsp.PartialHashTreeProcessor.values:[[B
arraylength
if_icmpne 2
end local 2 6: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/bouncycastle/tsp/PartialHashTreeProcessor;
0 7 1 hash [B
1 6 2 i I
MethodParameters:
Name Flags
hash final
}
SourceFile: "PartialHashTreeProcessor.java"