프로젝트 소개

Sentinel은 가맹점 간 신원 재사용을 탐지하기 위한 오픈 소스 방어 전용 부정 결제 탐지 시스템입니다. 이 시스템은 각 가맹점에는 깨끗한 신규 고객으로 보이지만, 실제로는 여러 가맹점에서 동일한 UPI ID, 전화번호 또는 기기 핑거프린트를 재활용하는 부정 결제 조직을 타겟으로 합니다. 이 프로젝트는 고객, 기기, VPA, 전화번호 및 가맹점 간의 신원 연결 그래프를 구축하고, 공개된 7가지 특성의 결정론적 가중 앙상블을 통해 각 결제 이벤트에 점수를 매깁니다. 판정 결과는 ALLOW, REVIEW, BLOCK_REC의 권장 사항으로만 제공되며, 사유 코드와 증거 번들이 함께 제공됩니다. AWS Bedrock 및 gpt-oss-120b를 사용하는 별도의 LLM 레이어는 증거를 분석가용 서사로 변환하는 역할만 수행하며 점수를 산정하지 않으므로, 사용 불가능할 경우 생략할 수 있습니다. 저장소에는 FastAPI 서비스, 추가 전용(append-only) SQLite 감사 저장소, 그리고 watchroom이라 불리는 Next.js 분석가 콘솔이 포함되어 있습니다. 콘솔은 순위 큐, 클러스터 그래프, 오염 경로(taint path), 신호 분해, LLM 서사, 평가 서류 및 실시간 조직 리플레이 기능을 제공합니다. README에 보고된 테스트 메트릭은 정밀도 0.833, 재현율 0.882, F1 스코어 0.857이며, 2개의 조직을 모두 적발하고 부정 결제를 묵인한 사례는 없었습니다. 또한 오탐 및 검토 비용을 제외한 순 절감액은 1,000건의 이벤트당 +₹38,665로 나타났습니다. GBDT 베이스라인이 F1 스코어에서 규칙 앙상블을 근소하게 앞섰으며, 저속 실행 조직은 현재의 가중치를 회피할 수 있다는 점도 공개되었습니다. 운영 기능으로는 멱등성 이벤트 수집, 배치 점수 산정, 연합 엔티티 리스크 엔드포인트, 마스킹 처리된 그래프 클러스터 뷰(관리자만 마스킹 해제 가능), 추가 전용 분석가 피드백, Prometheus 메트릭, 가맹점별 JWT 인증, 챔피언/챌린저 섀도우 점수 산정, Docker Compose 및 백엔드 없는 정적 데모 스냅샷이 포함됩니다. 퀵스타트 명령어를 통해 설정, 점검, 평가, 백필, API 서빙, 콘솔 실행, 컨테이너 배포, 챌린저 학습, 부하 테스트 및 스냅샷 생성이 가능합니다. 모든 데이터는 합성 데이터이며 실제 PII는 사용되지 않았습니다. AWS 키는 코드 및 환경 파일에서 제외되었고, gitleaks로 이력을 스캔하며, 판정 결과가 자율적으로 결제를 차단하거나 자금을 이동시키지 않습니다. 문서는 설계 세트, 위협 모델, 런북, ADR 및 오류 로그를 포함하며 MIT 라이선스로 제공됩니다.