abstract class sun.security.krb5.internal.crypto.DesCbcEType extends sun.security.krb5.internal.crypto.EType
minor version: 0
major version: 59
flags: flags: (0x0420) ACC_SUPER, ACC_ABSTRACT
this_class: sun.security.krb5.internal.crypto.DesCbcEType
super_class: sun.security.krb5.internal.crypto.EType
{
void <init>();
descriptor: ()V
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial sun.security.krb5.internal.crypto.EType.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/security/krb5/internal/crypto/DesCbcEType;
protected abstract byte[] calculateChecksum(byte[], int);
descriptor: ([BI)[B
flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
Exceptions:
throws sun.security.krb5.KrbCryptoException
MethodParameters:
Name Flags
data
size
public int blockSize();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: bipush 8
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/security/krb5/internal/crypto/DesCbcEType;
public int keyType();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: iconst_1
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/security/krb5/internal/crypto/DesCbcEType;
public int keySize();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: bipush 8
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/security/krb5/internal/crypto/DesCbcEType;
public byte[] encrypt(byte[], byte[], int);
descriptor: ([B[BI)[B
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokevirtual sun.security.krb5.internal.crypto.DesCbcEType.keySize:()I
newarray 8
astore 4
start local 4 1: aload 0
aload 1
aload 2
aload 4
iload 3
invokevirtual sun.security.krb5.internal.crypto.DesCbcEType.encrypt:([B[B[BI)[B
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/security/krb5/internal/crypto/DesCbcEType;
0 2 1 data [B
0 2 2 key [B
0 2 3 usage I
1 2 4 ivec [B
Exceptions:
throws sun.security.krb5.KrbCryptoException
MethodParameters:
Name Flags
data
key
usage
public byte[] encrypt(byte[], byte[], byte[], int);
descriptor: ([B[B[BI)[B
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=11, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 2
arraylength
bipush 8
if_icmple 2
1: new sun.security.krb5.KrbCryptoException
dup
ldc "Invalid DES Key!"
invokespecial sun.security.krb5.KrbCryptoException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 1
arraylength
aload 0
invokevirtual sun.security.krb5.internal.crypto.DesCbcEType.confounderSize:()I
iadd
aload 0
invokevirtual sun.security.krb5.internal.crypto.DesCbcEType.checksumSize:()I
iadd
istore 5
start local 5 3: iload 5
aload 0
invokevirtual sun.security.krb5.internal.crypto.DesCbcEType.blockSize:()I
irem
ifne 7
4: iload 5
aload 0
invokevirtual sun.security.krb5.internal.crypto.DesCbcEType.blockSize:()I
iadd
newarray 8
astore 6
start local 6 5: bipush 8
istore 7
start local 7 6: goto 9
end local 7 end local 6 7: StackMap locals: int
StackMap stack:
iload 5
aload 0
invokevirtual sun.security.krb5.internal.crypto.DesCbcEType.blockSize:()I
iadd
iload 5
aload 0
invokevirtual sun.security.krb5.internal.crypto.DesCbcEType.blockSize:()I
irem
isub
newarray 8
astore 6
start local 6 8: aload 0
invokevirtual sun.security.krb5.internal.crypto.DesCbcEType.blockSize:()I
iload 5
aload 0
invokevirtual sun.security.krb5.internal.crypto.DesCbcEType.blockSize:()I
irem
isub
i2b
istore 7
start local 7 9: StackMap locals: byte[] int
StackMap stack:
iload 5
istore 8
start local 8 10: goto 13
11: StackMap locals: int
StackMap stack:
aload 6
iload 8
iload 7
bastore
12: iinc 8 1
StackMap locals:
StackMap stack:
13: iload 8
aload 6
arraylength
if_icmplt 11
end local 8 14: aload 0
invokevirtual sun.security.krb5.internal.crypto.DesCbcEType.confounderSize:()I
invokestatic sun.security.krb5.Confounder.bytes:(I)[B
astore 8
start local 8 15: aload 8
iconst_0
aload 6
iconst_0
aload 0
invokevirtual sun.security.krb5.internal.crypto.DesCbcEType.confounderSize:()I
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
16: aload 1
iconst_0
aload 6
aload 0
invokevirtual sun.security.krb5.internal.crypto.DesCbcEType.startOfData:()I
aload 1
arraylength
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
17: aload 0
aload 6
aload 6
arraylength
invokevirtual sun.security.krb5.internal.crypto.DesCbcEType.calculateChecksum:([BI)[B
astore 9
start local 9 18: aload 9
iconst_0
aload 6
aload 0
invokevirtual sun.security.krb5.internal.crypto.DesCbcEType.startOfChecksum:()I
19: aload 0
invokevirtual sun.security.krb5.internal.crypto.DesCbcEType.checksumSize:()I
20: invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
21: aload 6
arraylength
newarray 8
astore 10
start local 10 22: aload 6
aload 10
aload 2
aload 3
iconst_1
invokestatic sun.security.krb5.internal.crypto.Des.cbc_encrypt:([B[B[B[BZ)V
23: aload 10
areturn
end local 10 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 24 0 this Lsun/security/krb5/internal/crypto/DesCbcEType;
0 24 1 data [B
0 24 2 key [B
0 24 3 ivec [B
0 24 4 usage I
3 24 5 new_size I
5 7 6 new_data [B
8 24 6 new_data [B
6 7 7 pad B
9 24 7 pad B
10 14 8 i I
15 24 8 conf [B
18 24 9 cksum [B
22 24 10 cipher [B
Exceptions:
throws sun.security.krb5.KrbCryptoException
MethodParameters:
Name Flags
data
key
ivec
usage
public byte[] decrypt(byte[], byte[], int);
descriptor: ([B[BI)[B
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokevirtual sun.security.krb5.internal.crypto.DesCbcEType.keySize:()I
newarray 8
astore 4
start local 4 1: aload 0
aload 1
aload 2
aload 4
iload 3
invokevirtual sun.security.krb5.internal.crypto.DesCbcEType.decrypt:([B[B[BI)[B
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/security/krb5/internal/crypto/DesCbcEType;
0 2 1 cipher [B
0 2 2 key [B
0 2 3 usage I
1 2 4 ivec [B
Exceptions:
throws sun.security.krb5.internal.KrbApErrException, sun.security.krb5.KrbCryptoException
MethodParameters:
Name Flags
cipher
key
usage
public byte[] decrypt(byte[], byte[], byte[], int);
descriptor: ([B[B[BI)[B
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=6, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 2
arraylength
bipush 8
if_icmple 2
1: new sun.security.krb5.KrbCryptoException
dup
ldc "Invalid DES Key!"
invokespecial sun.security.krb5.KrbCryptoException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 1
arraylength
newarray 8
astore 5
start local 5 3: aload 1
aload 5
aload 2
aload 3
iconst_0
invokestatic sun.security.krb5.internal.crypto.Des.cbc_encrypt:([B[B[B[BZ)V
4: aload 0
aload 5
invokevirtual sun.security.krb5.internal.crypto.DesCbcEType.isChecksumValid:([B)Z
ifne 6
5: new sun.security.krb5.internal.KrbApErrException
dup
bipush 31
invokespecial sun.security.krb5.internal.KrbApErrException.<init>:(I)V
athrow
6: StackMap locals: byte[]
StackMap stack:
aload 5
areturn
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 7 0 this Lsun/security/krb5/internal/crypto/DesCbcEType;
0 7 1 cipher [B
0 7 2 key [B
0 7 3 ivec [B
0 7 4 usage I
3 7 5 data [B
Exceptions:
throws sun.security.krb5.internal.KrbApErrException, sun.security.krb5.KrbCryptoException
MethodParameters:
Name Flags
cipher
key
ivec
usage
private void copyChecksumField(byte[], byte[]);
descriptor: ([B[B)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=4, args_size=3
start local 0 start local 1 start local 2 0: iconst_0
istore 3
start local 3 1: goto 4
2: StackMap locals: int
StackMap stack:
aload 1
aload 0
invokevirtual sun.security.krb5.internal.crypto.DesCbcEType.startOfChecksum:()I
iload 3
iadd
aload 2
iload 3
baload
bastore
3: iinc 3 1
StackMap locals:
StackMap stack:
4: iload 3
aload 0
invokevirtual sun.security.krb5.internal.crypto.DesCbcEType.checksumSize:()I
if_icmplt 2
end local 3 5: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lsun/security/krb5/internal/crypto/DesCbcEType;
0 6 1 data [B
0 6 2 cksum [B
1 5 3 i I
MethodParameters:
Name Flags
data
cksum
private byte[] checksumField(byte[]);
descriptor: ([B)[B
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=4, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual sun.security.krb5.internal.crypto.DesCbcEType.checksumSize:()I
newarray 8
astore 2
start local 2 1: iconst_0
istore 3
start local 3 2: goto 5
3: StackMap locals: byte[] int
StackMap stack:
aload 2
iload 3
aload 1
aload 0
invokevirtual sun.security.krb5.internal.crypto.DesCbcEType.startOfChecksum:()I
iload 3
iadd
baload
bastore
4: iinc 3 1
StackMap locals:
StackMap stack:
5: iload 3
aload 0
invokevirtual sun.security.krb5.internal.crypto.DesCbcEType.checksumSize:()I
if_icmplt 3
end local 3 6: aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lsun/security/krb5/internal/crypto/DesCbcEType;
0 7 1 data [B
1 7 2 result [B
2 6 3 i I
MethodParameters:
Name Flags
data
private void resetChecksumField(byte[]);
descriptor: ([B)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual sun.security.krb5.internal.crypto.DesCbcEType.startOfChecksum:()I
istore 2
start local 2 1: goto 4
2: StackMap locals: int
StackMap stack:
aload 1
iload 2
iconst_0
bastore
3: iinc 2 1
4: StackMap locals:
StackMap stack:
iload 2
aload 0
invokevirtual sun.security.krb5.internal.crypto.DesCbcEType.startOfChecksum:()I
5: aload 0
invokevirtual sun.security.krb5.internal.crypto.DesCbcEType.checksumSize:()I
iadd
6: if_icmplt 2
end local 2 7: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lsun/security/krb5/internal/crypto/DesCbcEType;
0 8 1 data [B
1 7 2 i I
MethodParameters:
Name Flags
data
private byte[] generateChecksum(byte[]);
descriptor: ([B)[B
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual sun.security.krb5.internal.crypto.DesCbcEType.checksumField:([B)[B
astore 2
start local 2 1: aload 0
aload 1
invokevirtual sun.security.krb5.internal.crypto.DesCbcEType.resetChecksumField:([B)V
2: aload 0
aload 1
aload 1
arraylength
invokevirtual sun.security.krb5.internal.crypto.DesCbcEType.calculateChecksum:([BI)[B
astore 3
start local 3 3: aload 0
aload 1
aload 2
invokevirtual sun.security.krb5.internal.crypto.DesCbcEType.copyChecksumField:([B[B)V
4: aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lsun/security/krb5/internal/crypto/DesCbcEType;
0 5 1 data [B
1 5 2 cksum1 [B
3 5 3 cksum2 [B
Exceptions:
throws sun.security.krb5.KrbCryptoException
MethodParameters:
Name Flags
data
private boolean isChecksumEqual(byte[], byte[]);
descriptor: ([B[B)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 1
aload 2
if_acmpne 2
1: iconst_1
ireturn
2: StackMap locals:
StackMap stack:
aload 1
ifnonnull 3
aload 2
ifnonnull 4
3: StackMap locals:
StackMap stack:
aload 1
ifnull 5
aload 2
ifnonnull 5
4: StackMap locals:
StackMap stack:
iconst_0
ireturn
5: StackMap locals:
StackMap stack:
aload 1
arraylength
aload 2
arraylength
if_icmpeq 7
6: iconst_0
ireturn
7: StackMap locals:
StackMap stack:
iconst_0
istore 3
start local 3 8: goto 12
9: StackMap locals: int
StackMap stack:
aload 1
iload 3
baload
aload 2
iload 3
baload
if_icmpeq 11
10: iconst_0
ireturn
11: StackMap locals:
StackMap stack:
iinc 3 1
StackMap locals:
StackMap stack:
12: iload 3
aload 1
arraylength
if_icmplt 9
end local 3 13: iconst_1
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lsun/security/krb5/internal/crypto/DesCbcEType;
0 14 1 cksum1 [B
0 14 2 cksum2 [B
8 13 3 i I
MethodParameters:
Name Flags
cksum1
cksum2
protected boolean isChecksumValid(byte[]);
descriptor: ([B)Z
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual sun.security.krb5.internal.crypto.DesCbcEType.checksumField:([B)[B
astore 2
start local 2 1: aload 0
aload 1
invokevirtual sun.security.krb5.internal.crypto.DesCbcEType.generateChecksum:([B)[B
astore 3
start local 3 2: aload 0
aload 2
aload 3
invokevirtual sun.security.krb5.internal.crypto.DesCbcEType.isChecksumEqual:([B[B)Z
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/security/krb5/internal/crypto/DesCbcEType;
0 3 1 data [B
1 3 2 cksum1 [B
2 3 3 cksum2 [B
Exceptions:
throws sun.security.krb5.KrbCryptoException
MethodParameters:
Name Flags
data
}
SourceFile: "DesCbcEType.java"