프로젝트 / 소스 코드

전부 GitHub에 공개되어 있습니다

KalderaShield는 Apache-2.0 라이선스의 오픈 소스입니다. 데스크톱 앱, Android 앱, 브라우저 확장 프로그램, 네이티브 메시징 호스트, 그리고 이 웹사이트까지 모두 그렇습니다. 이 웹사이트의 모든 보안 주장은 코드나 공개 CI에서 실행되는 테스트로 추적할 수 있습니다.

코드베이스의 구성

하나의 저장소에 네 개의 프로젝트

데스크톱 애플리케이션은 React와 TypeScript 프런트엔드를 Tauri 2를 통해 Rust 코어와 결합합니다. UI는 시스템 WebView에서 렌더링되고, 네이티브 쪽은 업데이터, 확장 프로그램 브리지, 플랫폼 통합을 담당합니다. 보관함 저장은 버전이 기록된 스키마 엔벨로프와 함께 wa-sqlite로 이루어집니다.

브라우저 확장 프로그램은 Chromium과 Firefox를 위한 Manifest V3 TypeScript 빌드이고, Android 앱은 AndroidKeyStore 생체 인증 바인딩을 갖춘 Tauri Android 프로젝트입니다. 네이티브 메시징 호스트와 IPC 브리지는 Rust 워크스페이스에 있으며, 페어링 토큰, 임대, 프레임 암호화 로직을 감사하기 가장 쉬운 곳이 바로 여기입니다.

웹사이트 자체는 커밋된 일반 HTML입니다. 배포에 빌드 단계가 없으며, 생성 스크립트와 품질 게이트가 만들어내는 페이지 바로 옆에 함께 버전 관리됩니다.

모든 변경이 통과하는 게이트

타입 검사와 2204개 단위 테스트

248개 테스트 파일이 강제된 커버리지 기준을 충족합니다. 라인 90%, 구문 90%, 함수 85%, 분기 80%입니다. 기준 이하로 떨어지는 회귀는 빌드를 실패시키지, 대시보드만 실패시키지 않습니다.

퍼징, 뮤테이션, 보안 게이트

fast-check 속성 테스트가 변형된 입력으로 가져오기, 백업, 첨부 파일 경로를 몰아칩니다. Stryker 뮤테이션 테스팅이 테스트 품질을 채점합니다. 전용 게이트가 CSP 하드닝, 릴리스 아티팩트, 디버그 마커, 시크릿을 점검합니다.

CI의 공급망 분석

CodeQL이 코드를 분석하고, OpenSSF Scorecard가 저장소 보안 태세를 채점하고, gitleaks가 커밋된 시크릿을 차단합니다. 의존성 정책은 높음 또는 심각 수준 권고가 있으면 실패하며, 나머지는 문서화된 수용 근거를 요구합니다.

보안 아키텍처

여기서 오픈 소스가 의미하는 것과 의미하지 않는 것

경계가 표시된 주장

오픈 소스는 누구나 코드를 읽을 수 있게 해주지만, 그것만으로 누군가 실제로 읽었다는 증명은 되지 않습니다. 읽을 수 있음이 핵심입니다. 위협 모델, 수용 기록부, 감사 범위가 저장소에 있어 검토자가 같은 지도에서 출발할 수 있기 때문입니다. 독립적인 감사는 아직 완료되지 않았으며, 감사 현황 페이지가 이를 그대로 밝히고 있습니다.

TypeScript

프런트엔드와 확장 프로그램

React UI, 확장 프로그램, 공유 보관함 로직이 엄격한 타입으로 작성되어 있습니다. React 인라인 스타일은 없으며 CSP 게이트가 이를 강제합니다.

Rust

네이티브 코어

Tauri 2 명령, 네이티브 메시징 호스트, 루프백 IPC 브리지, 업데이터 파이프라인. cargo fmt와 집중적인 원자적 쓰기 테스트가 모든 릴리스를 검문합니다.

Apache-2.0

라이선스

프로젝트 전체와 번들 구성 요소를 위한 THIRD-PARTY 라이선스 파일이 함께 제공됩니다. 설치 프로그램에 독점 바이너리는 없습니다.

자주 묻는 질문

기여와 보고

보안 취약점은 어떻게 보고하나요?

공개 이슈가 아니라 비공개로 보고해야 합니다. GitHub 비공개 취약점 보고 또는 SECURITY.md의 이메일을 이용해 주세요. 48시간 안에 접수 확인, 7일 안에 분류, 90일 안에 조율된 공개가 이루어집니다.

코드에 기여할 수 있나요?

네, GitHub 풀 리퀘스트를 통해 가능합니다. 위에서 설명한 게이트가 모든 변경에 실행되므로, 가장 빠른 기여 방법은 게이트를 통과하면서 자체 테스트를 포함한 변경을 보내는 것입니다.

설치 프로그램을 직접 빌드할 수 있나요?

네. 로컬 릴리스 가이드가 플랫폼별 정확한 명령을 문서화하고 있고, 릴리스 스크립트는 SHA-256 체크섬과 함께 아티팩트를 release-local/<platform>/에 모읍니다.

더 깊이 들어가기

설치 프로그램 다운로드