320x100
320x100

체크섬

: 전송된 데이터가 네트워크 레이어에서의 오류나 인젝션 등으로 손실이 발생했는지 확인하기 위한 데이터

: sender가 체크섬을 만들어서 데이터와 함께 보내고 receiver가 자체 계산한 체크섬과 sender가 보낸 체크섬을 확인

: sender와 receiver 간 체크섬이 매칭하지 않는 경우 시스템은 데이터 손실이 일어난 것으로 판단

: 체크섬을 만들때는 암호화 해시 함수를 이용하고, 만드어진 체크섬을 데이터와 함께 저장한다

: 데이터를 write 할 때 사용자가 본내 데이터를 기반으로 체크섬이 만들어지고 데이터베이스에 도달하기 전에 거치는 서비스 간 체크섬 확인이 이루어진 후 데이터베이스에 저장된다

 

- 암호화 해시 함수

: MD5

: SHA-1

: SHA-256

: SHA-512

 

- 시스템 설계 관점

: End-to-End 체크섬이 되도록 해야함

: 하위 시스템 설계에서 체크섬 갭이 있다면 체크섬이 있어도 데이터 손실이 발생할 수 있다

 

 

 

같이 공부하면 좋은 것

- 해시 충돌 (hash collision)

: MD5는 SHA에 비해 해시 충돌 저항성이 적어 100%는 아니지만 충동 가능성이 거의 희박함

 

- 순환 중복 검사 (CRC / Cyclic Redundancy Check)

: 암호 해시 함수로 안전한 해시값을 계산하고 CRC는 오류 감지에 사용

 

 

 

 

Reference

 

킴코더 / 체크섬에 대해 아직 모르시나요 | 커리어리

가장 기본 개념이기도 하며, 설계 면접 문제에도 등장할 수 있는 개념입니다. 데이터가 유저로 부터 데이터베이...

careerly.co.kr

 

300x250
728x90