무결성
무결성(Integrity)은 정당한 방법을 따르지 않고서는 데이터가 변경될 수 없음을 보장하고, 데이터가 정확하고 안전하게 유지되도록 하는 보안 원칙이다. 고의든 실수든, 내부자든 외부 공격자든 누구도 승인된 절차 없이 데이터를 바꾸거나 손상시킬 수 없어야 한다.
무결성이 중요한 이유
- 신뢰: 사용자가 보는 숫자와 실제 데이터가 일치해야 한다
- 감사: 변경 이력이 정직하게 남아야 한다
- 법적 책임: 금융·의료 등 규제 산업의 핵심 요구
위협
- 변조 공격: 크로스 사이트 스크립팅, MITM, DB 직접 수정
- 버퍼 오버 플로우: 메모리 영역 훼손
- 전송 중 손상: 네트워크 에러, 디스크 비트 오류
- 내부자 악의 또는 실수: 권한 있는 사용자의 잘못된 변경
무결성 보장 기술
- 해시 검증: 일방향 암호화 방식으로 변조 감지
- 디지털 서명: DSA, RSA 서명으로 출처와 무결성을 함께 보장
- ECC: 오류 정정 코드로 전송 중 손상 복구
- 접근 통제: DAC, MAC, RBAC
- 트랜잭션: DB의 ACID로 논리적 무결성 유지
- 블록체인: 분산 원장으로 기록의 무결성 확보