반응형
코드를 보다보니 두 가지 방식에 대한 암호화가 존재하더라.
무슨 차이인가 싶어 알아보았다.
우선, 두 가지 모두 암호화의 의미보다는 Byte에 대한 인코딩 개념으로 많이 사용한다고 한다.
즉, 여러 시스템에서의 다양한 문자 포맷에 대응하기 위해 공통 개념으로 사용한다는 의미. 물론 암호화의 의미가 없진 않겠지.
두가지 차이를 기술하기 전에 우선 HEX는 Base16이라고 해도 무방하다.
HEX는 16진수로 표현하고 Base64는 64진수로 표현한다.
찾으면서 살펴봤을 때는 암호화에 대한 안전 레벨은 크게 다르진 않은 것 같다. 그래도 64쪽이 낫지 않을까.
두가지의 또다른 차이는 길이이다.
HEX는 1바이트(한글자)를 2바이트 16진수로 표현한다.
Base64는 3바이트(세글자)를 4바이트 64진수로 표현한다.
그래서 보통 Base64쪽이 더 짧게 표현되며, 길이 측면에서 유리한 부분이 있다.(간단한 password라면 모르겠지만 500kb가 넘는 xml파일을 암호화해서 전송한다고 생각해보면 HEX는 1MB, Base64는 700kb 정도 될 것이다)
반응형
댓글