by 돼지뚱뙝이 [Oracle 기초] [2022.08.16 14:33:39]
암호화처리 해야하는 일이 생겨 sql펑션을 이용하여 암호화 처리를 하려고합니다.
기존에 만들어둔 암호화 펑션이 있어 사용해보니 한글을 암호화할경우 잘리는 현상이 발생하였습니다.
그래서 확인해보니 DBMS_OBFUSCATION_TOOLKIT.DES3ENCRYPT 를 이용한 암호화였고 https://oracle.tistory.com/362 사이트를 참고 하여 보니
암호화쳐리 할때 pieces_of_eight INTEGER := ((FLOOR(LENGTH(str)/8 + .9)) * 8);, input_string => RPAD(str, pieces_of_eight )를 이용하여 암호화할 데이터의 크기를 계산하는 부분이 들어가 있는대
영문처리할때는 문제가없었는대 한글처리할때 사이즈문제때문에 잘림현상이 발생하는거같습니다. 계산하는 부분을 pieces_of_eight INTEGER := ((FLOOR(LENGTH(str)/4 + .9)) * 8)처럼 바꿔 사용해도문제가 없을까요? 8 => 4
암호화하려는 데이터에 적용하여 사용하니 문제가 발생하지는 않았습니다. 물론 데이터양이적어 특이사항이 발생안할걸 수도 있는대.. 나중에라도 문제가 생길까하여 문의드립니다.
제가 글쓰는 제주가 부족하여 글이 좀 중구 난방입니다. 죄송하니다.