본 장은 전문 난이도입니다. 실무에서 가장 빠른 설계와 가장 안전한 설계가 같지 않은 경우가 많습니다. 암호화·로깅·접근 통제·데이터 상주 규정은 지연과 처리량에 직접 영향을 주고, 때로는 아키텍처 형태(in-process vs sidecar vs HSM)를 바꿉니다.
충돌이 나는 전형
- 전송 구간 암호화·무결성: CPU 사이클과 패킷 크기 증가.
- 상세 감사 로그: 디스크·네트워크·락 경합.
- 데이터 마스킹·토큰화: 캐시 친화성 저하, 추가 왕복.
- 제로 트러스트 네트워킹: 홉 수 증가, 인증 토큰 검증.
- 샌드박스·VM 격리: 경계 통과 비용.
이 장은 “보안을 무시하자”가 아니라, 비용을 가시화하고 협상 가능한 지표로 바꾸는 것이 목표입니다.
성능 예산과 보안 예산을 같은 표에
문서 한 페이지에 다음 열을 둡니다.
| 통제 | 목적 | 성능 영향 가설 | 검증 방법 | 완화 | 책임 팀 |
|---|---|---|---|---|---|
| 예: mTLS everywhere | 기밀성 | 지연 +x µs | Tr.01 벤치 | 세션 재개 | 플랫폼 |
가설과 검증이 없으면 보안팀은 “필수”, 성능팀은 “불가”로만 말하게 됩니다.
flowchart LR
subgraph inputs ["입력"]
A["규정·표준"]
B["위협 모델"]
C["SLO"]
end
subgraph output ["산출"]
D["통제 묶음"]
E["측정 계획"]
F["잔여 리스크"]
end
inputs --> output
완화 전략(개념)
- 계층화: 모든 홉에 무거운 통제를 두지 않고, 신뢰 경계 안팎을 나눕니다.
- 오프로드: HSM·NIC crypto·전용 프록시로 CPU를 보존합니다(비용·운영은 증가).
- 샘플링과 대표성: 로그는 샘플링하되 감사 필수 이벤트는 면제 규칙을 명시합니다.
- 캐시 가능한 자격 증명: 단, 회전·폐기 정책과 충돌하지 않게 설계합니다.
Tr.06·Tr.10와의 연결
- Tr.06: cgroup·seccomp·컨테이너 정책이 syscall 경로를 바꿉니다.
- Tr.10: TLS 버전·인증서 검증·L7 방화벽이 패킷 경로를 바꿉니다.
본 장은 “앱 코드 한 줄”보다 플랫폼 계약에 가깝습니다.
의사결정 기록(ADRS 스타일)에 넣을 문장
- 맥락: 어떤 규정·위협을 전제로 하는가.
- 결정: 어떤 통제 묶음을 택했는가.
- 성능 영향: 어떤 지표로 감시하는가.
- 거부한 대안: 왜 안 했는가.
- 잔여 리스크: 무엇을 감수하는가.
마무리
규제·보안은 성능 최적화의 “적”이 아니라 제약 조건입니다. 제약을 숫자로 옮기면 Tr.01 측정과 Tr.12 회귀 방지에 자연스럽게 연결됩니다.
부록: 질문 16
- 이 통제는 법적 필수인가 권고인가?
- 통제 실패 시 비즈니스 결과는?
- 대체 수단이 있는가?
- 성능 지표는 p99까지 포함하는가?
- 멀티 리전에서 데이터 상주는?
- 키 회전은 무중단인가?
- 로그에 PII가 있는가?
- 암호 스위트 협상은 하드웨어 가속 가능한가?
- on-call이 통제 설정을 볼 수 있는가?
- 변경이 감사 로그에 남는가?
- 고객 계약에 지연 상한이 있는가?
- 샌드박스가 IPC를 어떻게 바꾸는가?
- 서드파티 SaaS 의존은?
- 장애 시 fail-open vs fail-closed 정책은?
- 침해 시 포렌식에 필요한 최소 로그는?
- 비용(인프라+인력) 추정은?
부록: 용어
- Compliance: 규정 준수
- Control: 통제(기술·프로세스)
- Threat model: 위협 모델
- SLO: 서비스 수준 목표
![Featured image of post [Design 11] 규제·보안 제약 하 성능 (전문)](/post/design-decisions/regulated-secure-performance-tradeoffs-expert/wordcloud_hu_d736a2c5dda65177.webp)
![[Design 11] Load Testing 설계](/post/design-decisions/load-testing-design-performance-goal-verification/wordcloud_hu_29d9f482305489a5.webp)
![[Design 11] Cost-Performance 분석](/post/design-decisions/cloud-cost-performance-analysis/wordcloud_hu_8fafbc4e5c585b74.webp)
![[Design 11] 규제·보안 제약 하 성능 (전문)](/post/design-decisions/regulated-secure-performance-tradeoffs-expert/wordcloud_hu_8a46007c073098f1.webp)
![[Design 11] 메모리 안전성 트레이드오프](/post/design-decisions/memory-safety-performance-tradeoffs-rust-ffi/wordcloud_hu_5052e5d9a7946568.webp)
![[Design 11] Event-driven 아키텍처 성능](/post/design-decisions/event-driven-architecture-performance-tradeoffs/wordcloud_hu_b8703233af790385.webp)
![[OS 06] eBPF·커널 경계와 성능·안전 (전문)](/post/os-optimization/ebpf-xdp-kernel-boundary-performance-safety-expert/wordcloud_hu_a0cc0788a35a029c.webp)
![[IO 09] 스토리지 스택 커스터마이징 (전문)](/post/io-optimization/storage-stack-customization-kernel-fs-drivers-expert/wordcloud_hu_df935ff9be3d21aa.webp)
![[Rust] Comprehensive Rust 무료 강의 정리 및 코스 구조](/post/2022-12-30-comprehensive-rust/wordcloud_hu_d1420ff38434cdb6.webp)
![[Hardware] LattePanda Alpha에 Ubuntu 16.04 LTS 설치 가이드](/post/2018-12-06-install-ubuntu-16.04-on-lattepanda/wordcloud_hu_fc536f8de2cbd4bf.webp)
![[Compiler 03] BOLT·후링크(post-link) 최적화](/post/compiler-optimization/bolt-post-link-binary-layout-optimization/wordcloud_hu_338b27ee8df82483.webp)