
미니멀한 터미널 기반 비밀번호 관리자
Argon2id를 사용하는 안전한 암호화 및 libsodium을 사용한 인증 암호화.릴리스에서 AppImage를 다운로드한 후 실행하세요:
chmod +x klip-x86_64.appimage
./klip-x86_64.appimage
의존성:
설치:
git clone https://github.com/vid4l-07/Klip.git
cd klip
mkdir build
cd build
cmake ..
make
sudo make install
| Key | Action |
|---|---|
q | 종료 |
자격 증명을 선택하면:
Enter를 누르면 사용자 이름이 복사됩니다.Enter를 누르면 비밀번호가 복사됩니다.열기를 선택하면 텍스트 팝업이 나타납니다. 팝업 안에서 Tab을 눌러 최근에 연 데이터베이스를 탐색할 수 있습니다.
데이터베이스의 절대 경로 또는 상대 경로를 입력할 수 있습니다. 파일이 존재하지 않는 경우, 지정된 경로가 유효하면 생성됩니다.
최근 파일 경로는 $HOME/.config/klip/recents에 저장됩니다.
모든 암호화 로직은 src/Security.cpp에 있습니다.
crypto_pwhash를 사용하여 비밀번호와 고유한 임의 솔트에서 암호화 키가 파생됩니다. 이는 INTERACTIVE 모드의 Argon2id를 기반으로 하며, 무차별 대입 공격에 대비해 비용 매개변수를 조정할 수 있습니다.crypto_secretbox_easy로 암호화됩니다.[salt][nonce][ciphertext]
crypto_secretbox_open_easy를 사용하여 복호화됩니다.기여는 언제나 환영합니다. 버그를 발견했거나 새로운 기능을 돕고 싶다면 다음을 할 수 있습니다:
화살표 키 감지에 대한 도움이 필요합니다:
현재 일반 키는 올바르게 감지되지만, 화살표 키는 전체 이스케이프 시퀀스 대신 항상 단일 ESC 키 입력으로 해석됩니다.
터미널 입력(termios, ANSI 이스케이프 시퀀스 등)에 경험이 있다면 정말 감사하겠습니다.
키 입력 읽기 로직은 src/term/term.cpp에 있으며, 특히 read_char 함수에 있습니다. 이 함수는 src/ui/app/app.cpp에 있는 App 클래스의 start 함수에서 사용됩니다.
기여하고 싶다면 변경 사항을 read_char 함수나 Terminal 클래스로 제한해 주시기 바랍니다. 그래야 프로젝트의 나머지 부분을 수정할 필요가 없습니다.
| Key | Action |
|---|
l / Right | 오른쪽으로 이동 |
h / Left | 왼쪽으로 이동 |
Enter | 선택한 DB 열기 |
o | 새 DB 열기/만들기 |
x | 선택한 DB 닫기 |
| Key | Action |
|---|
Esc | 탭 바에 포커스 |
j / Down | 아래로 이동 |
k / Up | 위로 이동 |
Enter | 선택/복사 |
n | 새 자격 증명 |
f | 사이트로 필터링 |
e | 자격 증명 편집 |
d | 자격 증명 삭제 |
g | 보안 비밀번호 생성 |