Incoding 과 Encrypt 의 차이


:raising_hand: 프론트엔드 개발관련 공부내용을 기록하는 포스트 입니다.


개요


IncodingEncrypt간의 차이에 대한 질문을 받게 되었다.

기본적으로 가지고 있던 개념은 목적의 차이 였다.

Incoding의 경우 데이터간의 변경으로 각자의 환경에서 조금 더 가까울것이고, Encrypt 암호화의 경우 보안에 조금 더 초점이 가있다.

그래서 이번 기회에 해당 포스팅을 통해 한번 간단하게 정의를 해보고 넘어가보도록 한다

1. 인코딩(Incoding)이란 무엇일까?


인코딩의 정의는 아래와 같다.

공개적으로 사용 가능한 방법을 사용하여 다른 시스템에서 데이터를 보다 
효율적으로 사용 가능한 형식으로 변환하는 것을 인코딩이라 한다.

주로 우리가 알고있는 ASCII(American Standard Code for Information Interchange)또한 인코딩에 해당되며, Unicode, 데이터 압축 또한 인코딩 프로세스로 볼 수 있다.

자세한 설명은 아래 참고 사이트에 남긴다.

2. 암호화(Encrypt)란 무엇일까?


암호화(Encrypt)의 정의는 아래와 같다.

암호화는 데이터를 비밀로 유지하려는 의도로 데이터를 변환하는 방법입니다. 
암호화는 암호라는 알고리즘을 사용하여 데이터를 암호화하며 특수 키를 사용해야 만 해독 할 수 있습니다. 
암호화 된 정보를 암호문이라고하며 암호문에서 원래 정보 (일반 텍스트)를 얻는 과정을 암호 해독이라고합니다.

보통 제 3자로부터 정보를 보호하고 싶을때 암호화 알고리즘을 통해서 암호화 한다. 널리 사용되는 방식은 대칭 키 암호화공개 키 암호화 이다.

3. 인코딩과 암호화의 차이는 무엇일까?


결과 적으로 내가 처음 생각한것도 틀리지는 않은 것 같다.

인코딩암호화 모두 데이터를 다른 형식으로 변환하는 방법은 공통적이다. 하지만, 목표가 다르다고 할 수 있다.

인코딩의 경우 다른 시스템에서 데이터의 유용성을 높이고 저장에 필요한 공간을 줄이기 위해 수행된다. 반면, 암호화의 경우 제 3자로부터 데이터를 비밀로 유지하기 위해 수행된다.

참고 사이트