Files
key-generator/README.md
2026-03-12 14:17:39 +09:00

51 lines
1.5 KiB
Markdown

# Key Generator
JWT Secret, API Key, Operation Key 등 다양한 보안 키를 생성하는 Python 데스크톱 애플리케이션.
## 실행
```bash
pip install -r requirements.txt
python main.py
```
---
## 지원 키 타입
| 타입 | 비트 | 포맷 | 비고 |
|------|------|------|------|
| JWT Key Pair (RS256) | 2048-bit | PEM | RSA 비대칭 키 쌍 (Private + Public) |
| JWT Key Pair (ES256) | 256-bit | PEM | EC P-256 비대칭 키 쌍 (Private + Public) |
| JWT Secret (HS256) | 256-bit | Hex | HMAC 대칭 키 |
| JWT Secret (HS384) | 384-bit | Hex | HMAC 대칭 키 |
| JWT Secret (HS512) | 512-bit | Hex | HMAC 대칭 키 |
| JWT Secret (Base64URL) | 256-bit | Base64URL | |
| API Key `sk-...` | 256-bit | Base64URL | |
| Operation Key `ops-...` | 192-bit | Base64URL | |
| Random Hex 256-bit | 256-bit | Hex | |
| Random Hex 512-bit | 512-bit | Hex | |
| Alphanumeric | 256-bit | A-Za-z0-9 | |
| UUID v4 | 128-bit | UUID | |
| Custom | 자유 | 직접 선택 | |
---
## 기능
- **Generate** 버튼 또는 `Ctrl+Enter`로 즉시 생성
- **Copy** 버튼으로 클립보드 복사
- **대량 생성** 체크박스 활성화 시 최대 20개 한번에 생성, **Copy All**로 전체 복사
- **Custom** 타입 선택 시 바이트 수(8~512)와 출력 포맷 직접 지정
- 모든 키는 Python `secrets` 모듈(암호학적 난수) 사용
- **RS256 / ES256** 선택 시 Private Key와 Public Key를 각각 개별 복사 가능 (웹 UI)
---
## 의존성
- Python 3.8+
- customtkinter 5.2+
- pyperclip 1.9+
- cryptography 41.0+ (RS256 / ES256 키 쌍 생성)