JJ_MKVMaker/lib
RyuJongJin b51a17a82b WIP 암호 보관함 1단계-1 암호 · 폴더 (관리자 결정 10/21, 설계안 위키 프로젝트/암호 보관함 · 루트 설계안 (10-21)): 화면 없이 바탕만 - 비밀번호 → PBKDF2-SHA256 (반복 수는 vault.json 에, 처음 30만 번 - d3 판단: 설계안의 60만은 이 PC 에서 10만 = 0.3초라 폰에서 수 초, 반복 수를 파일에 두어 나중에 올릴 수 있음, Isolate 에서) → AES-256-GCM 으로 무작위 보관함 열쇠를 감쌈 (비밀번호를 바꿔도 파일은 다시 암호화 안 함). 파일마다 무작위 id → 파일 열쇠 HMAC-SHA256, 1MB 조각마다 AES-256-GCM (nonce = 조각 번호, AAD = 머리 + 조각 번호 + 마지막 표시 - 바꾸기 · 바꿔 끼우기 · 끝 자르기 · 덧붙이기를 알아챔). 이름 · 크기 · 넣은 날은 암호화한 index.jjv 에만, 바깥 이름은 무작위. 쓰기는 .tmp → 이름 바꾸기, 목록이 기준 (넣기: 내용 → 목록, 지우기: 목록 → 내용), 다음에 열 때 끊긴 것 정리. 꺼내기는 다 풀고 인증이 맞은 뒤에만 그 이름으로. vault.json 형식 번호 - 모르는 새 형식은 열지 않음. pointycastle (MIT) 직접 의존 (dartssh2 를 통해 있던 4.0.0 그대로), 고지에 "보관함 암호화에도 씀" · 시험 10개 (AES-GCM · PBKDF2 알려진 벡터 · 틀린 비밀번호 · 변조 6가지 · 왕복 크기 · 끊긴 쓰기 4가지 · 형식) (검토 대기)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-21 11:21:43 +09:00
..
app WIP X-plore 비교 5-1 ⑥ 파일 탐색기 단축키 바꾸기 (관리자 지시 10/21): 환경 설정 > 파일 탐색기 [파일 탐색기 단축키] (키보드가 있는 PC 에서만) - 동작 19개마다 지금 키 · [바꾸기] (다음에 누른 키, Ctrl · Shift · Alt 함께) · [처음 값으로] · [단축키 없음] · [모두 처음 값으로]. 처음 키는 83 의 스타일별 키 그대로 (바꾼 것만 설정 explorerKeyOverrides 에), 바꾼 키는 모든 스타일에 쓰이고 다른 동작과 겹치면 그 동작은 그 키를 잃음 (창에서 먼저 알림), Esc 는 바꿀 수 없음, Rsync 화면은 늘 같은 키 · 시험 (처음 키 = 예전 키 · 바꾸기 · 겹침 · 저장 꼴 · 탐색기에서 바꾼 키 동작 · 설정 화면) (검토 대기) 2026-10-21 03:33:43 +09:00
core WIP 암호 보관함 1단계-1 암호 · 폴더 (관리자 결정 10/21, 설계안 위키 프로젝트/암호 보관함 · 루트 설계안 (10-21)): 화면 없이 바탕만 - 비밀번호 → PBKDF2-SHA256 (반복 수는 vault.json 에, 처음 30만 번 - d3 판단: 설계안의 60만은 이 PC 에서 10만 = 0.3초라 폰에서 수 초, 반복 수를 파일에 두어 나중에 올릴 수 있음, Isolate 에서) → AES-256-GCM 으로 무작위 보관함 열쇠를 감쌈 (비밀번호를 바꿔도 파일은 다시 암호화 안 함). 파일마다 무작위 id → 파일 열쇠 HMAC-SHA256, 1MB 조각마다 AES-256-GCM (nonce = 조각 번호, AAD = 머리 + 조각 번호 + 마지막 표시 - 바꾸기 · 바꿔 끼우기 · 끝 자르기 · 덧붙이기를 알아챔). 이름 · 크기 · 넣은 날은 암호화한 index.jjv 에만, 바깥 이름은 무작위. 쓰기는 .tmp → 이름 바꾸기, 목록이 기준 (넣기: 내용 → 목록, 지우기: 목록 → 내용), 다음에 열 때 끊긴 것 정리. 꺼내기는 다 풀고 인증이 맞은 뒤에만 그 이름으로. vault.json 형식 번호 - 모르는 새 형식은 열지 않음. pointycastle (MIT) 직접 의존 (dartssh2 를 통해 있던 4.0.0 그대로), 고지에 "보관함 암호화에도 씀" · 시험 10개 (AES-GCM · PBKDF2 알려진 벡터 · 틀린 비밀번호 · 변조 6가지 · 왕복 크기 · 끊긴 쓰기 4가지 · 형식) (검토 대기) 2026-10-21 11:21:43 +09:00
l10n WIP 15 캡처 지적 ①~④: 영어 단수 · 좁은 화면 풀 곳 세로 목록 · 찾기/분석 줄은 시작한 폴더 기준 짧은 경로 · 캡처 DEBUG 띠 끔 (검토 대기) 2026-10-17 15:57:25 +09:00
platform WIP .nomedia 뒤 갤러리 다시 읽기 (관리자 지시 10/20, 판단 ② 바꿈): 넣을 때 · 지울 때 모두 .nomedia 와 그 폴더를 MediaScannerConnection.scanFile 로 (MainActivity "mediaScan", AppShell.mediaScan - Windows 는 할 일 없음, 실패해도 조용히) · 안내 글 "반영되기까지 잠깐 걸릴 수 있습니다" · 시험 (넣고 지울 때 부름) (검토 대기) 2026-10-20 22:06:55 +09:00
services WIP .nomedia 뒤 갤러리 다시 읽기 (관리자 지시 10/20, 판단 ② 바꿈): 넣을 때 · 지울 때 모두 .nomedia 와 그 폴더를 MediaScannerConnection.scanFile 로 (MainActivity "mediaScan", AppShell.mediaScan - Windows 는 할 일 없음, 실패해도 조용히) · 안내 글 "반영되기까지 잠깐 걸릴 수 있습니다" · 시험 (넣고 지울 때 부름) (검토 대기) 2026-10-20 22:06:55 +09:00
ui WIP X-plore 비교 5-2 앱 관리자 (사용자 결정 10/21, 관리자 판단, Android): 가운데 버튼 [앱 관리자] (Android 만, 버튼 끝에 - 좁으면 [더 보기]) - 모든 앱 목록 권한 (QUERY_ALL_PACKAGES) 없이 매니페스트 queries 의 LAUNCHER 로 실행할 수 있는 앱만, 화면 위에 "보이는 앱만 나옵니다 (모든 앱 목록 권한은 쓰지 않음)". 이름 · 판 · 크기 · 설치일, 이름 · 크기 · 설치일 정렬 · 찾기, [APK 백업] (Download/JJ_MKVMaker/apk, 이름_판.apk · 겹치면 (2), 나눠진 앱은 알림) · [앱 정보] (시스템 화면) · [지우기] (시스템 지우기 창, 시스템 앱은 없음). 아이콘은 그때그때 PNG 로 · 시험 (지도 읽기 · 백업 이름 · 화면 · 버튼은 Android 만) · APK 빌드로 Kotlin 확인 (검토 대기) 2026-10-21 11:15:28 +09:00
main.dart WIP 새 네트워크 기능 보안 고침: 원격 이름 경로 벗어나기 · FTPS 주입 · Wi-Fi 공유는 Wi-Fi · 유선 주소에만 · 찾기 범위 · SMB 강제 DNS (검토 대기) 2026-10-18 02:29:58 +09:00