class sun.security.pkcs11.P11Cipher$PKCS5Padding implements sun.security.pkcs11.P11Cipher$Padding
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: sun.security.pkcs11.P11Cipher$PKCS5Padding
super_class: java.lang.Object
{
private final int blockSize;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
void <init>(int);
descriptor: (I)V
flags: (0x0000)
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: iload 1
ifne 5
2: new javax.crypto.NoSuchPaddingException
dup
3: ldc "PKCS#5 padding not supported with stream ciphers"
4: invokespecial javax.crypto.NoSuchPaddingException.<init>:(Ljava/lang/String;)V
athrow
5: StackMap locals: sun.security.pkcs11.P11Cipher$PKCS5Padding int
StackMap stack:
aload 0
iload 1
putfield sun.security.pkcs11.P11Cipher$PKCS5Padding.blockSize:I
6: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lsun/security/pkcs11/P11Cipher$PKCS5Padding;
0 7 1 blockSize I
Exceptions:
throws javax.crypto.NoSuchPaddingException
MethodParameters:
Name Flags
blockSize
public int setPaddingBytes(byte[], int);
descriptor: ([BI)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
iconst_0
iload 2
iload 2
bipush 127
iand
i2b
invokestatic java.util.Arrays.fill:([BIIB)V
1: iload 2
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/security/pkcs11/P11Cipher$PKCS5Padding;
0 2 1 paddingBuffer [B
0 2 2 padLen I
MethodParameters:
Name Flags
paddingBuffer
padLen
public int unpad(byte[], int, int);
descriptor: ([BII)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
iload 2
iload 3
iadd
iconst_1
isub
baload
istore 4
start local 4 1: iload 4
iconst_1
if_icmplt 2
iload 4
aload 0
getfield sun.security.pkcs11.P11Cipher$PKCS5Padding.blockSize:I
if_icmple 3
2: StackMap locals: int
StackMap stack:
new javax.crypto.BadPaddingException
dup
ldc "Invalid pad value!"
invokespecial javax.crypto.BadPaddingException.<init>:(Ljava/lang/String;)V
athrow
3: StackMap locals:
StackMap stack:
iload 2
iload 3
iadd
iload 4
isub
istore 5
start local 5 4: iload 5
istore 6
start local 6 5: goto 9
6: StackMap locals: int int
StackMap stack:
aload 1
iload 6
baload
iload 4
if_icmpeq 8
7: new javax.crypto.BadPaddingException
dup
ldc "Invalid pad bytes!"
invokespecial javax.crypto.BadPaddingException.<init>:(Ljava/lang/String;)V
athrow
8: StackMap locals:
StackMap stack:
iinc 6 1
StackMap locals:
StackMap stack:
9: iload 6
iload 3
if_icmplt 6
end local 6 10: iload 4
ireturn
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 11 0 this Lsun/security/pkcs11/P11Cipher$PKCS5Padding;
0 11 1 paddedData [B
0 11 2 ofs I
0 11 3 len I
1 11 4 padValue B
4 11 5 padStartIndex I
5 10 6 i I
Exceptions:
throws javax.crypto.BadPaddingException
MethodParameters:
Name Flags
paddedData
ofs
len
}
SourceFile: "P11Cipher.java"
NestHost: sun.security.pkcs11.P11Cipher
InnerClasses:
private PKCS5Padding = sun.security.pkcs11.P11Cipher$PKCS5Padding of sun.security.pkcs11.P11Cipher
private abstract Padding = sun.security.pkcs11.P11Cipher$Padding of sun.security.pkcs11.P11Cipher