|
|
|
@ -372,12 +372,18 @@ public class KISA_SEED_CBC {
|
|
|
|
|
if(ENDIAN != Common.BIG_ENDIAN) { |
|
|
|
|
for(i=0;i<inLen;i++) |
|
|
|
|
{ |
|
|
|
|
data[i] = (byte)(in[i/4] >> ((i%4)*8)); |
|
|
|
|
int temp = in[i / 4]; |
|
|
|
|
int shift = (i % 4) * 8; |
|
|
|
|
data[i] = (byte) (temp >> shift); |
|
|
|
|
// data[i] = (byte)(in[i/4] >> ((i%4)*8));
|
|
|
|
|
} |
|
|
|
|
} else { |
|
|
|
|
for(i=0;i<inLen;i++) |
|
|
|
|
{ |
|
|
|
|
data[i] = (byte)(in[i/4] >> ((3-(i%4))*8)); |
|
|
|
|
int temp = in[i / 4]; |
|
|
|
|
int shift = (3 - (i % 4)) * 8; |
|
|
|
|
data[i] = (byte) (temp >> shift); |
|
|
|
|
// data[i] = (byte)(in[i/4] >> ((3-(i%4))*8));
|
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
@ -814,13 +820,21 @@ public class KISA_SEED_CBC {
|
|
|
|
|
int mask_value = 0x0ff << shift_value; |
|
|
|
|
int mask_value2 = ~mask_value; |
|
|
|
|
int value2 = (value&0x0ff) << shift_value; |
|
|
|
|
dst[b_offset/4] = (dst[b_offset/4] & mask_value2) | (value2 & mask_value); |
|
|
|
|
|
|
|
|
|
int dstValue = dst[b_offset / 4]; |
|
|
|
|
dstValue = (dstValue & mask_value2) | (value2 & mask_value); |
|
|
|
|
dst[b_offset / 4] = dstValue; |
|
|
|
|
// dst[b_offset/4] = (dst[b_offset/4] & mask_value2) | (value2 & mask_value);
|
|
|
|
|
} else { |
|
|
|
|
int shift_value = (b_offset%4)*8; |
|
|
|
|
int mask_value = 0x0ff << shift_value; |
|
|
|
|
int mask_value2 = ~mask_value; |
|
|
|
|
int value2 = (value&0x0ff) << shift_value; |
|
|
|
|
dst[b_offset/4] = (dst[b_offset/4] & mask_value2) | (value2 & mask_value); |
|
|
|
|
|
|
|
|
|
int dstValue = dst[b_offset / 4]; |
|
|
|
|
dstValue = (dstValue & mask_value2) | (value2 & mask_value); |
|
|
|
|
dst[b_offset / 4] = dstValue; |
|
|
|
|
// dst[b_offset/4] = (dst[b_offset/4] & mask_value2) | (value2 & mask_value);
|
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
@ -828,12 +842,18 @@ public class KISA_SEED_CBC {
|
|
|
|
|
if(ENDIAN == BIG_ENDIAN) { |
|
|
|
|
int shift_value = (3-b_offset%4)*8; |
|
|
|
|
int mask_value = 0x0ff << shift_value; |
|
|
|
|
int value = (src[b_offset/4] & mask_value) >> shift_value; |
|
|
|
|
int mask_value2 = src[b_offset/4]; |
|
|
|
|
int value2 = mask_value2 & mask_value; |
|
|
|
|
int value = value2 >> shift_value; |
|
|
|
|
// int value = (src[b_offset/4] & mask_value) >> shift_value;
|
|
|
|
|
return (byte)value; |
|
|
|
|
} else { |
|
|
|
|
int shift_value = (b_offset%4)*8; |
|
|
|
|
int mask_value = 0x0ff << shift_value; |
|
|
|
|
int value = (src[b_offset/4] & mask_value) >> shift_value; |
|
|
|
|
int mask_value2 = src[b_offset/4]; |
|
|
|
|
int value2 = mask_value2 & mask_value; |
|
|
|
|
int value = value2 >> shift_value; |
|
|
|
|
// int value = (src[b_offset/4] & mask_value) >> shift_value;
|
|
|
|
|
return (byte)value; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|