[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

@@ -217,6 +217,16 @@ public partial class App : System.Windows.Application
// L8-4: SSH 퀵 커넥트 (prefix=ssh)
commandResolver.RegisterHandler(new SshHandler(settings));
// ─── Phase L9 핸들러 ──────────────────────────────────────────────────
// L9-1: 비밀번호 생성기 (prefix=pwd)
commandResolver.RegisterHandler(new PasswordGenHandler());
// L9-2: IP 서브넷 계산기 (prefix=subnet)
commandResolver.RegisterHandler(new SubnetHandler());
// L9-3: 시스템 정리 (prefix=clean)
commandResolver.RegisterHandler(new CleanHandler());
// L9-4: 진수 변환기 (prefix=base)
commandResolver.RegisterHandler(new BaseConvertHandler());
// ─── 플러그인 로드 ────────────────────────────────────────────────────
var pluginHost = new PluginHost(settings, commandResolver);
pluginHost.LoadAll();