diff --git a/src/main/java/com/palnet/comn/encrptn/kisa/KISA_SEED_CBC.java b/src/main/java/com/palnet/comn/encrptn/kisa/KISA_SEED_CBC.java index 90b1ceb..7e0da88 100644 --- a/src/main/java/com/palnet/comn/encrptn/kisa/KISA_SEED_CBC.java +++ b/src/main/java/com/palnet/comn/encrptn/kisa/KISA_SEED_CBC.java @@ -398,7 +398,9 @@ public class KISA_SEED_CBC { K = pInfo.seed_key.key_data; // Pointer of round keys pInfo.encrypt = enc.value; // Common.memcpy(pInfo.ivec, pbszIV, 16, ENDIAN); - pInfo.last_block_flag = pInfo.buffer_length = 0; + pInfo.buffer_length = 0; +// pInfo.last_block_flag = pInfo.buffer_length = 0; + pInfo.last_block_flag = pInfo.buffer_length; // Set up input values for Key Schedule ABCD[ABCD_A] = Common.byte_to_int(pbszUserKey, 0*4, ENDIAN); @@ -736,11 +738,23 @@ public class KISA_SEED_CBC { public KISA_SEED_INFO() { encrypt = 0; - ivec[0] = ivec[1] = ivec[2] = ivec[3] = 0; + ivec[3] = 0; + ivec[2] = ivec[3]; + ivec[1] = ivec[2]; + ivec[0] = ivec[1]; +// ivec[0] = ivec[1] = ivec[2] = ivec[3] = 0; seed_key.init(); - cbc_buffer[0] = cbc_buffer[1] = cbc_buffer[2] = cbc_buffer[3] = 0; + cbc_buffer[3] = 0; + cbc_buffer[2] = cbc_buffer[3]; + cbc_buffer[1] = cbc_buffer[2]; + cbc_buffer[0] = cbc_buffer[1]; +// cbc_buffer[0] = cbc_buffer[1] = cbc_buffer[2] = cbc_buffer[3] = 0; buffer_length = 0; - cbc_last_block[0] = cbc_last_block[1] = cbc_last_block[2] = cbc_last_block[3] = 0; + cbc_last_block[3] = 0; + cbc_last_block[2] = cbc_last_block[3]; + cbc_last_block[1] = cbc_last_block[2]; + cbc_last_block[0] = cbc_last_block[1]; +// cbc_last_block[0] = cbc_last_block[1] = cbc_last_block[2] = cbc_last_block[3] = 0; last_block_flag = 0; } @@ -940,7 +954,9 @@ public class KISA_SEED_CBC { K = pInfo.seed_key.key_data; // Pointer of round keys pInfo.encrypt = enc.value; // Common.memcpy(pInfo.ivec, pbszIV, 16, ENDIAN); - pInfo.last_block_flag = pInfo.buffer_length = 0; + pInfo.buffer_length = 0; +// pInfo.last_block_flag = pInfo.buffer_length = 0; + pInfo.last_block_flag = pInfo.buffer_length; // Set up input values for Key Schedule ABCD[ABCD_A] = Common.byte_to_int(pbszUserKey, 0*4, ENDIAN); diff --git a/src/main/java/com/palnet/comn/encrptn/kisa/KISA_SHA256.java b/src/main/java/com/palnet/comn/encrptn/kisa/KISA_SHA256.java index dc5c27f..0b3f140 100644 --- a/src/main/java/com/palnet/comn/encrptn/kisa/KISA_SHA256.java +++ b/src/main/java/com/palnet/comn/encrptn/kisa/KISA_SHA256.java @@ -136,7 +136,9 @@ public class KISA_SHA256 { Info.uChainVar[6] = 0x1f83d9ab; Info.uChainVar[7] = 0x5be0cd19; - Info.uHighLength = Info.uLowLength = 0; + Info.uLowLength = 0; + Info.uHighLength = Info.uLowLength; +// Info.uHighLength = Info.uLowLength = 0; } /** @@ -148,7 +150,8 @@ public class KISA_SHA256 { public static void SHA256_Process( SHA256_INFO Info, byte[] pszMessage, int uDataLen ) { int pszMessage_offset; - if((Info.uLowLength += (uDataLen << 3)) < 0) { + Info.uLowLength += (uDataLen <<3); + if(Info.uLowLength < 0) { Info.uHighLength++; } diff --git a/src/main/java/com/palnet/server/command/TempUtils.java b/src/main/java/com/palnet/server/command/TempUtils.java index c96f3a1..4cf0889 100644 --- a/src/main/java/com/palnet/server/command/TempUtils.java +++ b/src/main/java/com/palnet/server/command/TempUtils.java @@ -29,31 +29,41 @@ public class TempUtils{ // 일산화탄소 prev = SensorModel.preCo; SensorModel.preCo = SensorModel.co; - result = SensorModel.co = gradualDoubleData(SensorModel.co, prev, 0.1, 0.0, 20.0); + SensorModel.co = gradualDoubleData(SensorModel.co, prev, 0.1, 0.0, 20.0); +// result = SensorModel.co = gradualDoubleData(SensorModel.co, prev, 0.1, 0.0, 20.0); + result = SensorModel.co; break; case "so2": // 아황산가스 prev = SensorModel.preSo2; SensorModel.preSo2 = SensorModel.so2; - result = SensorModel.so2 = gradualDoubleData(SensorModel.so2, prev, 0.005, 0.0, 0.2); + SensorModel.so2 = gradualDoubleData(SensorModel.so2, prev, 0.005, 0.0, 0.2); +// result = SensorModel.so2 = gradualDoubleData(SensorModel.so2, prev, 0.005, 0.0, 0.2); + result = SensorModel.so2; break; case "no2": // 이산화질소 prev = SensorModel.preNo2; SensorModel.preNo2 = SensorModel.no2; - result = SensorModel.no2 = gradualDoubleData(SensorModel.no2, prev, 0.003, 0.0, 0.3); + SensorModel.no2 = gradualDoubleData(SensorModel.no2, prev, 0.003, 0.0, 0.3); +// result = SensorModel.no2 = gradualDoubleData(SensorModel.no2, prev, 0.003, 0.0, 0.3); + result = SensorModel.no2; break; case "o3": // 오존 prev = SensorModel.preO3; SensorModel.preO3 = SensorModel.o3; - result = SensorModel.o3 = gradualDoubleData(SensorModel.o3, prev, 1.0, 0.0, 175.0); + SensorModel.o3 = gradualDoubleData(SensorModel.o3, prev, 1.0, 0.0, 175.0); +// result = SensorModel.o3 = gradualDoubleData(SensorModel.o3, prev, 1.0, 0.0, 175.0); + result = SensorModel.o3; break; case "dust": // 미세먼지 prev = SensorModel.preDust; SensorModel.preDust = SensorModel.dust; - result = SensorModel.dust = gradualDoubleData(SensorModel.dust, prev, 1.1, 0.0, 175.0); + SensorModel.dust = gradualDoubleData(SensorModel.dust, prev, 1.1, 0.0, 175.0); +// result = SensorModel.dust = gradualDoubleData(SensorModel.dust, prev, 1.1, 0.0, 175.0); + result = SensorModel.dust; break; default: result = (Math.round((new Random()).nextDouble() * 100000)) / 100.0;