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
300x250
728x90
'Development > Development' 카테고리의 다른 글
롱런하는 개발자 마인드셋 (0) | 2023.08.19 |
---|---|
멱등성 (Idempotent)란? (0) | 2023.08.19 |
사이드 프로젝트에 사용하기 좋은 free 플랜 서비스들 (0) | 2023.08.19 |
클린코딩을 하는데 구현을 못하는 개발자 (0) | 2023.08.19 |
육각형 개발자 (0) | 2023.08.19 |