← 목록
기타 2026-05-22 3KB 읽기 4분

크라우니메신저 v3 — Phase 8 프로덕션 강화

개요

실사용 검증을 마친 메신저를 프로덕션 품질로 끌어올리는 단계. 웹 푸시 실암호화·크라우니뱅크 실연동·한선씨↔JS 정합성 감사 3축.

작업 내용

1. 웹 푸시 페이로드 암호화 (RFC 8291 aes128gcm)

실제 Chrome/Firefox 푸시 서비스에서 작동하도록 페이로드 암호화 완성:
  • hkdf() — HKDF-SHA256 Extract+Expand (RFC 5869)
  • encryptWebPush() — 임시 P-256 키쌍 → ECDH → salt → IKM(32) → CEK(16) → Nonce(12) → 0x02 패딩 → AES-128-GCM → RFC 8188 헤더 (salt 16 + rs 4 + idlen 1 + keyid 65)
  • decryptWebPush() — 라운드트립 검증
  • Node 내장 crypto만 사용 (외부 의존 0)
  • 검증: 한글 페이로드 암호화→복호화 라운드트립 PASS, RFC 8188 헤더 구조 확인

2. 크라우니뱅크 실연동

채팅 송금이 실제 잔액을 이동하도록 bank.crowny.org:9400 연결:
  • bankRequest(path, method, body, token) — 뱅크 HTTP 클라이언트 (3초 타임아웃)
  • bankTokens 맵 — 사용자별 Bearer 토큰
  • WALLET_BALANCE/api/wallet/balance 실 잔액 (토큰 없으면 /api/wallet/by-uid 공개 조회 → 0 폴백)
  • WALLET_SEND/api/transfer 실 호출, 성공 시 bank_linked:true 전파
  • 폴백: 뱅크 미가동 시 인메모리 모드 유지, bank_linked:false 알림 — 메신저 자체는 정상
  • 뱅크 확인: localhost:9400 가동 (CrownyBank/4.0-account, 63 엔드포인트)
  • 지갑연동.한선: 뱅크API경로/뱅크잔액조회경로/송금요청본체 함수 추가

3. 한선씨↔JS 정합성 감사

정본(한선씨)과 런타임(JS)의 드리프트 점검·수정:
  • 감사: 프로토콜 78타입 / 서버코어 35라우팅 / JS 57 case
  • 불일치 7건 발견, 4건 수정:
  • JS 디스패처에 10개 case 추가: GROUP_CREATE/JOIN/LEAVE/INVITE/KICK/UPDATE, SLOW_MODE, CHANNEL, PAYMENT
  • handleSlowMode, handleChannel, handlePayment 신규 함수
  • 보고만 한 3건 (수정 보류):
  • HTTP_PORT 9750(한선씨) vs 9754(JS) — 런타임 영향 우려
  • WALLET 응답 타입 상수 미선언 — 클라이언트 수신만, 동작 무관
  • 서버코어.한선 이중 라우터(메시지수신처리/패킷처리) — 큰 리팩터링 필요
  • 검증

    항목결과
    ws-server-v3.js node -cPASS (3,065줄)
    3중 동시편집 무결성무손실 — Push 9 / Bank 7 / 정합성 6 흔적 모두 보존
    한선씨 컴파일51/51 (100%)
    E2E 라이브 테스트15/15 통과
    Web Push 암호화 라운드트립PASS
    VAPID 공개키HTTP 200
    크라우니뱅크localhost:9400 가동 확인

    최종 통계

    항목수치
    한선씨 파일51개, 22,304줄
    JS 서버3,065줄
    Web UI2,989줄
    서버v3.0.0 가동중

    잔여 작업 (정리 대상)

    • 서버코어.한선 HTTP_PORT 9750 → 9754 통일
    • 프로토콜.한선에 WALLET 응답 타입 상수 추가
    • 서버코어.한선 이중 라우터 정리
    • 썸네일 실제 이미지 리사이징
    • 실 Ed25519 (JS WebCrypto)

    관련 파일

    • JS 서버: /Users/ef/CrownyOS/apps/메신저/v3/서버/ws-server-v3.js
    • 한선씨: 푸시알림.한선, 지갑연동.한선, 서버코어.한선, 프로토콜.한선
    • 이전 단계: 2026-05-22-crowny-messenger-v3-phase7.md