-
Notifications
You must be signed in to change notification settings - Fork 0
[Feat] VPN 서버에 Enclave 암호화 통합 #13
Copy link
Copy link
Open
Description
목표
VPN 서버 메인 프로세스에 Enclave를 통합하여 암호화된 통신을 구현합니다.
배경
- ✅ Enclave 프로세스 구현 완료
- ✅ IPC 클라이언트 구현 완료
- ✅ 암호화/복호화 테스트 완료
- ⏸️ VPN 서버 통합 필요
작업 내용
1. Enclave 자동 시작/종료
- VPN 서버 시작 시 Enclave 프로세스 자동 시작
- Enclave IPC 연결
- 서버 종료 시 Enclave 정리
2. ECDH 핸드셰이크 통합
- CONNECT_REQ 처리 시 ECDH 수행
- 서버 공개키를 CONNECT_RESP에 포함
- 세션키를 Enclave에 저장
3. 암호화된 데이터 전송 (UDP → TUN)
- UDP에서 암호문 수신
- Enclave를 통해 복호화
- 평문을 TUN에 전달
4. 암호화된 데이터 전송 (TUN → UDP)
- TUN에서 평문 수신
- Enclave를 통해 암호화
- 암호문을 UDP로 전송
5. 에러 처리
- Enclave 연결 실패 처리
- 복호화 실패 처리 (잘못된 패킷)
- Enclave 재시작 로직
6. 테스트
- 암호화된 PING 테스트
- 암호화된 DATA 패킷 테스트
- 양방향 암호화 통신 검증
성공 조건
✅ VPN 서버가 Enclave 자동 시작
✅ 클라이언트 연결 시 ECDH 핸드셰이크 성공
✅ UDP → TUN 복호화 정상 작동
✅ TUN → UDP 암호화 정상 작동
✅ 암호화된 양방향 통신 검증
관련 이슈
- Feat/#5/udp server implementation tunnel connection #6 Enclave 프로세스 구현
- UDP 서버 구현 및 TUN 연동 #5 클라이언트 관리 시스템
- Feat/#3/tun interface basic implemetation and test #4 UDP 서버 구현
참고 사항
- Enclave가 없으면 서버 시작 실패
- 복호화 실패 시 패킷 드롭 (로그 기록)
- 클라이언트는 서버 공개키로 ECDH 수행 필요
---
## 브랜치 생성
### **브랜치명:**
feature/7-vpn-enclave-integration
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels