ARIA 알고리즘 적용 시 내부 패딩 처리 문제
- 작성자 :
- 박*혁
- 작성일 :
- 2019-02-19 18:54:19
- 조회수 :
- 2,121
- 구분 :
- 개발환경
- 진행상태 :
- 완료
Q
암호화에서 ARIA 알고리즘을 사용하는데, 자꾸 패딩값이 들어가서 디버깅해보니 문제가 있는것 같아서 질문드립니다.
ARIAEngine 클래스에서 blockSize 가 16으로 되어있고
암호화 할 때 blockSize 보다 적은 데이터는 16을 맞추게 AnsiX923Padding 클래스에서 패딩하는부분에
1바이트를 암호화 할 때 패딩은 15바이트가 들어가는데, 패딩 제거루틴은 15바이트를 제거하지 못하는 조건문이 있어서 제거가 안됩니다.
1바이트, 1+16바이트, 1+16+16바이트... 등 blockSize 에서 부족한 부분이 15바이트가 나오는 문자열 모두가 그렇게 되네요.
클래스
egovframework.rte.fdl.cryptography.impl.aria.AnsiX923Padding
의
removePadding
메소드를 확인해보시기 바랍니다.
감사합니다.
ARIAEngine 클래스에서 blockSize 가 16으로 되어있고
암호화 할 때 blockSize 보다 적은 데이터는 16을 맞추게 AnsiX923Padding 클래스에서 패딩하는부분에
1바이트를 암호화 할 때 패딩은 15바이트가 들어가는데, 패딩 제거루틴은 15바이트를 제거하지 못하는 조건문이 있어서 제거가 안됩니다.
1바이트, 1+16바이트, 1+16+16바이트... 등 blockSize 에서 부족한 부분이 15바이트가 나오는 문자열 모두가 그렇게 되네요.
클래스
egovframework.rte.fdl.cryptography.impl.aria.AnsiX923Padding
의
removePadding
메소드를 확인해보시기 바랍니다.
감사합니다.
A
안녕하세요.
표준프레임워크센터 입니다.
해당문제는 실행환경 V3.8에서 조치되었습니다.
pom.xml에서
다음과 같이 설정되어 있으면
V3.8을 사용하시는 것이니 확인 하시기 바랍니다.
<properties>
<spring.maven.artifact.version>4.3.16.RELEASE</spring.maven.artifact.version>
<egovframework.rte.version>3.8.0</egovframework.rte.version>
</properties>
예전 스냅샷 버전을 가지고 있는경우는
메이븐 레파지토리를 삭제후 다시 받으시면 됩니다.
만약 3.7이하 버전인 경우는
2월말에 패치버전을 공식적으로 배포 할 예정에 있습니다.
현재도 메이븐에서 다운로드는 가능합니다.
예를들면
V3.7.0이면 V3.7.1로 pom.xml에서 지정하시면
패치 버전을 내려받으실수 있습니다.
즉, V3.6.0인 경우라면 V3.6.1과 같이
마이너 버전을 1로 설정하시면 됩니다.
pom.xml 수정 예시
다음 crypto부분의 버전만 수정
<dependency>
<groupId>egovframework.rte</groupId>
<artifactId>egovframework.rte.fdl.crypto</artifactId>
<version>3.7.1</version>
</dependency>
감사합니다.
표준프레임워크센터 입니다.
해당문제는 실행환경 V3.8에서 조치되었습니다.
pom.xml에서
다음과 같이 설정되어 있으면
V3.8을 사용하시는 것이니 확인 하시기 바랍니다.
<properties>
<spring.maven.artifact.version>4.3.16.RELEASE</spring.maven.artifact.version>
<egovframework.rte.version>3.8.0</egovframework.rte.version>
</properties>
예전 스냅샷 버전을 가지고 있는경우는
메이븐 레파지토리를 삭제후 다시 받으시면 됩니다.
만약 3.7이하 버전인 경우는
2월말에 패치버전을 공식적으로 배포 할 예정에 있습니다.
현재도 메이븐에서 다운로드는 가능합니다.
예를들면
V3.7.0이면 V3.7.1로 pom.xml에서 지정하시면
패치 버전을 내려받으실수 있습니다.
즉, V3.6.0인 경우라면 V3.6.1과 같이
마이너 버전을 1로 설정하시면 됩니다.
pom.xml 수정 예시
다음 crypto부분의 버전만 수정
<dependency>
<groupId>egovframework.rte</groupId>
<artifactId>egovframework.rte.fdl.crypto</artifactId>
<version>3.7.1</version>
</dependency>
감사합니다.