1. SSL/TLS를 이용한 네트워크 전송 시 암호화
- 인터넷 상의 커뮤니케이션을 위한 개인정보와 데이터 보안을 용이하게 하기 위해 설계되 어 널리 채택된 보안 프로토콜

작동 방식
• TLS Handshake 과정
- 클라이언트와 서버는 사용할 TLS 버전과 암호 알고리즘 선택
- 서버는 자신의 신원을 증명하기 위해 클라이언트에게 디지털 인증서 제공
- 클라이언트는 이를 검증하여 서버의 신원 확인
- 클라이언트와 서버는 공유된 세션키 생성
• 데이터 전송
- Handshake가 완료되면 클라이언트와 서버는 세션키를 사용해 데이터를 암호화 및 전송
- 암호화된 데이터는 메시지 인증 코드(MAC)과 함께 전송
- 이 코드를 통해 데이터의 무결성 검증
장점
- TLS 암호화는 데이터 유출 및 기타 공격으로부터 웹 어플리케이션을 보호
- 정보를 교환하는 당사자가 요청된 당사자임을 보장
- 제 3자로부터 전송되는 데이터를 숨김
- 데이터가 위조되거나 변조되지 않았는지 확인
2. AES 암호화
- 고급 암호화 표준으로 DES를 대체한 암호 알고리즘이며 암호화와 복호화 과정에서 동일한 키를 사용하는 대칭키 알고리즘
- 2001년 미국 국립표준기술원에 의해 암호화 표준으로 선정
원리
- AES는 암호화할 데이터를 블록으로 나눈 다음 각 블록 내의 데이터에 일련의 수학적 연 산을 적용하여 작동
- 128비트의 고정 블록 크기를 사용하지만 128, 192, 256 비트의 키 크기 지원
- 키 크기는 데이터를 암호화하기 위해 데이터에 적용되는 수학적 연산의 라운드 수 결정
- 라운드를 더 많이 사용할수록 암호화는 더 안전하게 보호되지만 많은 컴퓨팅 연산 능력 요구
암호화 과정

- 여러 라운드로 구성된 암호화 과정을 거치며 키의 길이에 따라 라운드 수가 결정됨
- 128비트 키: 10라운드, 192비트 키: 12라운드, 256비트 키: 14라운드
- 각 라운드에서 SubByte, ShiftRows, MixColumns, AddRoundKey와 같은 연산 수행
장점
- 강력한 보안성을 제공하며, 현재까지 알려진 주요 공격 방법이 없음
- 다양한 키 크기를 지원하므로 다양한 보안 요구사항에 적용
- 많은 보안 프로토콜과 시스템에서 기본 암호화 표준으로 사용되기에 다양한 환경에서의 용이한 구현 가능
- 계산 자원 측면에서 비교적 효율적
3. 해시 알고리즘(SHA-256)

- 데이터를 고정된 크기의 유일한 값으로 변환하는 알고리즘
- 어떤 크기의 입력이 주어지더라도 항상 256비트 길이의 해시 값 출력
- 임의의 데이터에 대해 빠르게 해시 값 계산
- 아주 작은 입력의 변화에도 완전히 다른 해시 값으로 결과를 나타내어 무결성 보증
• 암호화 키는 HSM(Hardware Security Module)을 이용하여 안전하게 관리
HSM: 암호화 키를 안전하게 생성, 저장, 관리, 사용하기 위한 전용 하드웨어 기기
- 고정된, 안정한 환경에서 암호화 키를 생성하여 외부로부터 접근이나 조작 불가능
- 생성된 키는 HSM 내부에 안전하게 보관, 해당 키는 외부로 추출 및 복사 불가능
- 직접 암호화 및 복호화 연산을 수행할 수 있으며, 키는 내부에서만 사용
- 암호화 키의 생성, 유효기간 설정, 갱신, 백업 및 폐기와 같은 전체 키 관리 생애주기 지 원
- 물리적 침입을 감지하면 자동으로 내부 키를 파기, 다중 인증, 롤 기반 접근 제어 및 감사 로깅과 같은 논리적 보안 기능도 제공
- 암호 연산을 빠르게 수행할 수 있는 전용 하드웨어 탑재
- 국제적인 보안 표준(FIFPS 140-2)에 따라 검증 및 인증을 받음