듀티메이커의 데이터 보안 아키텍처: AES-256 및 TLS 1.3 알고리즘의 기술적 이해
무상태(Stateless) 기반 운영 데이터 처리 및 개인정보 수집 최소화
듀티메이커는 병원 교대근무 스케줄링 최적화에 특화된 B2B SaaS 솔루션으로, 의료법상 보호받는 환자의 민감 의료 데이터(PHI)나 간호사의 민감한 개인정보를 수집하지 않습니다. 스케줄링 알고리즘 연산에 투입되는 데이터는 사번, 교대제 형태, 부서 내 제약 조건 등 철저히 비식별화된 운영 메타데이터로 한정됩니다. 이러한 데이터 최소화(Data Minimization) 원칙을 설계의 근간으로 삼고 있으며, 시스템 내부에 저장되고 처리되는 모든 운영 데이터는 수학적으로 증명된 암호화 알고리즘을 거쳐 안전하게 보호됩니다.
유휴 데이터(Data at Rest) 보호를 위한 AES-256 블록 암호화의 구조
데이터베이스에 저장되는 스케줄링 제약 조건 데이터는 대칭키 암호화 방식인 AES(Advanced Encryption Standard)-256 알고리즘을 통해 암호화됩니다. AES-256은 평문을 128비트 크기의 고정된 블록으로 분할한 뒤, 256비트 길이의 암호화 키를 적용하여 난수화하는 구조를 갖습니다. 이 과정은 정보 이론의 핵심인 혼돈(Confusion)과 확산(Diffusion) 효과를 극대화하기 위해 입력된 데이터 블록을 4x4 크기의 2차원 바이트 배열(State Array)로 재구성한 후 본격적인 암호화 라운드에 돌입하게 됩니다.
14라운드의 비선형 변환 연산: SubBytes와 MixColumns 알고리즘
AES-256은 평문을 암호문으로 변환하기 위해 총 14번의 반복적인 수학적 연산 라운드(Round)를 수행합니다. 각 라운드는 역함수가 존재하는 비선형 치환 테이블(S-box)을 거쳐 바이트 값을 일대일 대응으로 치환하는 SubBytes, 행의 위치를 주기적으로 순환 이동시키는 ShiftRows, 그리고 갈루아 필드(Galois Field, GF(2^8)) 상에서의 다항식 행렬 곱셈을 통해 열 단위로 데이터를 섞는 MixColumns 단계로 구성됩니다. 특히 MixColumns 연산은 평문의 단 1비트만 변경되어도 출력 암호문의 절반 이상이 완전히 달라지는 강력한 쇄도 효과(Avalanche Effect)를 발생시켜 차분 암호 분석 및 무차별 대입 공격(Brute-force Attack)의 시도를 수학적으로 무력화합니다.
전송 구간(Data in Transit) 보호: TLS 1.3과 ECDHE 키 교환
클라이언트와 듀티메이커의 구글 클라우드 인프라 간에 통신이 이루어지는 모든 네트워크 구간에는 TLS 1.3 프로토콜이 적용됩니다. 과거 버전과 달리 핸드셰이크 과정이 1-RTT(Round Trip Time)로 단축되어 통신 지연을 최소화했으며, 세션 키 교환을 위해 ECDHE(Elliptic Curve Diffie-Hellman Ephemeral) 알고리즘을 필수적으로 채택하고 있습니다. ECDHE는 타원 곡선 상의 이산 대수 문제(ECDLP)를 푸는 것이 기하급수적으로 어렵다는 수학적 난해함에 기반합니다. 이를 통해 서버와 클라이언트는 통신 세션이 열릴 때마다 네트워크 상에 실제 비밀 키를 노출하지 않고도, 상호 연산을 통해 동일한 임시 대칭키를 안전하게 도출해 냅니다.
완전 순방향 비밀성(Perfect Forward Secrecy) 구현
ECDHE 알고리즘을 기반으로 한 동적 키 교환은 시스템에 완전 순방향 비밀성(PFS)을 부여합니다. 이는 듀티메이커 서버의 마스터 개인 키(Private Key)가 극단적인 상황에서 유출되더라도, 과거에 암호화되어 전송되었던 통신 패킷들은 절대 복호화할 수 없음을 의미합니다. 각 통신 세션마다 일회성 난수 매개변수를 결합하여 독립적인 세션 키를 생성하고, 해당 세션이 종료되면 암호화 키를 메모리에서 즉각적으로 폐기하는 알고리즘 구조 덕분입니다. 듀티메이커는 이러한 암호학적 설계를 통해 패킷 스니핑이나 중간자 공격(MITM) 환경에서도 병원의 운영 시스템과 데이터를 무결하게 유지합니다.