[Phase L9] 보안·네트워크·시스템 유틸리티 핸들러 4종 추가

PasswordGenHandler.cs (신규, ~220줄, prefix=pwd):
- 암호학적 난수(RandomNumberGenerator.GetInt32) 기반 비밀번호 생성
- 강도별 옵션: 대소문자+숫자+특수문자 강제 포함 (strong 기본)
- 패스프레이즈 모드: 48단어 사전 + 구분자 + 4자리 숫자
- 엔트로피 추정(log2) + 강도 레이블(보통/강함/매우강함/최강)

SubnetHandler.cs (신규, ~260줄, prefix=subnet):
- CIDR 형식(IP/prefix) 및 공백 구분(IP prefix) 파싱
- 서브넷 마스크 → CIDR 역변환, 이진 표현 표시
- range 서브커맨드: 192.168.1.10-50 형식 IP 범위 계산
- uint 비트 연산으로 네트워크·브로드캐스트·호스트 범위 계산

CleanHandler.cs (신규, ~260줄, prefix=clean):
- SHEmptyRecycleBin P/Invoke (shell32.dll, flags 0x07)
- temp/recycle/downloads/logs/all 서브커맨드
- 정리 전 용량 예상 표시, 개별 파일 삭제 오류 무시

BaseConvertHandler.cs (신규, ~230줄, prefix=base):
- 0x/0b/0o 프리픽스 자동 감지 파싱
- 2/8/10/16진수 동시 변환 + 4비트 그룹 이진 표시
- ASCII 모드: 숫자→문자, 문자→코드 양방향 변환
- base N to hex/bin/oct/dec 타겟 지정 변환

App.xaml.cs: 4개 핸들러 RegisterHandler 등록
docs/LAUNCHER_ROADMAP.md: Phase L9 완료 섹션 추가
빌드: 경고 0, 오류 0

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-04-04 14:14:41 +09:00
parent 212ed9519e
commit f977037ca6
6 changed files with 1108 additions and 0 deletions

View File

@@ -243,3 +243,16 @@ public record HotkeyAssignment(string HotkeyStr, string TargetPath, string Label
| L8-2 | **아카이브 관리** ✅ | `zip` 프리픽스. System.IO.Compression 기반. `zip <경로>` 파일 목록 미리보기(최대 20개). `zip extract` 동일/지정 폴더 압축 해제. `zip folder <폴더>` 폴더→zip 압축. 클립보드 경로 자동 감지 | 중간 |
| L8-3 | **시스템 이벤트 로그** ✅ | `evt` 프리픽스. 최근 24시간 System+Application 로그 조회. `evt error`/`evt warn`/`evt app`/`evt sys`/`evt <키워드>` 필터. EventLogEntry.InstanceId 기반. 이벤트 상세 클립보드 복사 | 중간 |
| L8-4 | **SSH 퀵 커넥트** ✅ | `ssh` 프리픽스. `SshHostEntry` 모델 + `AppSettings.SshHosts` 영속화. `ssh add user@host[:port]` 저장. `ssh del <이름>` 삭제. Enter → Windows Terminal(wt.exe)/PuTTY/PowerShell 순 폴백 실행. 직접 `user@host` 입력 즉시 연결 지원 | 높음 |
---
## Phase L9 — 보안·네트워크·시스템 유틸리티 (v2.0.1) ✅ 완료
> **방향**: 개발자·IT 관리자의 일상 도구 — 비밀번호 생성, 서브넷 계산, 시스템 정리, 진수 변환.
| # | 기능 | 설명 | 우선순위 |
|---|------|------|----------|
| L9-1 | **비밀번호 생성기** ✅ | `pwd` 프리픽스. `RandomNumberGenerator` 기반 암호학적 난수. 강력(대소문자+숫자+특수)/알파뉴메릭/PIN/패스프레이즈 4가지 모드. `pwd 24 strong` 길이·모드 지정. 5개 후보 동시 생성, 강도 레이블 표시. Enter → 클립보드 복사 | 높음 |
| L9-2 | **IP 서브넷 계산기** ✅ | `subnet` 프리픽스. CIDR(x.x.x.x/24) 또는 공백 구분 입력. 네트워크·마스크·브로드캐스트·첫/마지막 호스트·사용 가능 호스트 수 계산. 서브넷 마스크→CIDR 변환. `subnet range x.x.x.10-50` 범위 계산. 이진 마스크 표시 | 높음 |
| L9-3 | **시스템 정리** ✅ | `clean` 프리픽스. 임시 파일(%TEMP%), 휴지통(SHEmptyRecycleBin), 다운로드 30일 이상, AxCopilot 로그. 예상 용량 사전 표시. `clean all`로 일괄 정리. 항목별 실시간 알림 | 중간 |
| L9-4 | **진수 변환기** ✅ | `base` 프리픽스. 10진/16진(0x)/2진(0b)/8진(0o) 자동 감지 변환. `base 255 to hex` 단일 방향 변환. `base ascii 65` ASCII 코드↔문자 변환. 4비트 그룹 이진 표시. Enter → 클립보드 복사 | 중간 |