보안 한눈에 보기
- 파일, 파일 및 폴더 이름, 미리보기는 업로드 전에 브라우저에서 AES-256-GCM으로 암호화됩니다
- 암호화 키는 사용 가능한 형태로 서버에 전달되지 않으므로, 저희는 파일을 읽을 수 없습니다
- 계정 비밀번호는 기기 밖으로 나가지 않습니다
- 이메일 일회용 코드를 이용한 2단계 인증을 선택해서 사용할 수 있습니다
- 파일은 여러 데이터센터에 이중화되어 저장되며, 화재와 홍수에도 견디도록 설계되었습니다
- 서버와 데이터베이스는 핀란드에 있으며, GDPR과 핀란드 개인정보 보호법의 적용을 받습니다
AES-256-GCM 종단간 암호화
파일을 업로드하면 브라우저가 해당 파일만을 위한 무작위 256비트 키를 새로 생성합니다. 파일은 여러 조각으로 나뉘고, 각 조각은 고유한 논스(nonce)를 사용해 AES-256-GCM으로 암호화된 뒤에야 전송됩니다. 파일 이름도 같은 키로 암호화되므로 무엇을 공유하는지조차 저희는 알 수 없습니다. 사진과 동영상의 경우 브라우저에서 작은 미리보기를 만들어 같은 키로 암호화합니다.
폴더도 같은 방식으로 작동합니다. 폴더마다 고유한 무작위 키가 있어 폴더 이름을 암호화하고 그 안에 있는 모든 항목의 키를 잠급니다. 따라서 폴더를 공유하면 해당 폴더에만 접근할 수 있고, 그 밖의 것에는 접근할 수 없습니다.
AES-GCM은 인증 암호화 방식입니다. 디스크 오류든 누군가의 변조든, 암호화된 파일이 단 1비트라도 바뀌면 손상된 파일을 조용히 넘겨주는 대신 복호화 자체가 실패합니다.
키는 어디에 있을까요
모든 공유 링크에는 고유한 무작위 키가 있으며, 이 키는 링크의 # 뒷부분에 들어 있습니다. 브라우저는 URL의 이 부분을 서버로 보내지 않습니다. 받는 사람이 링크를 열면 브라우저가 이 키로 파일의 키를 풀고, 암호화된 파일을 다운로드해 기기에서 복호화합니다. 저희가 보는 것은 언제나 암호화된 데이터뿐입니다.
제로 지식 계정
VeilShare는 계정 없이도 사용할 수 있습니다. 계정을 만들더라도 저희가 파일을 읽을 수 없도록 설계되어 있으며, 비밀번호는 기기 밖으로 나가지 않습니다.
로그인할 때 브라우저는 비밀번호를 Argon2id로 처리합니다. Argon2id는 비밀번호를 추측하는 데 많은 시간과 비용이 들도록 설계된, 메모리를 많이 사용하는 알고리즘입니다. 그 결과로 서로 다른 두 개의 키를 만듭니다. 하나는 서버에 본인임을 증명하는 키이고, 다른 하나는 개인 마스터 키를 여는 키입니다. 서버에는 첫 번째 키의 솔트 해시만 저장되며, 마스터 키는 두 번째 키로 암호화된 상태로 저장됩니다.
계정에 저장된 모든 파일과 폴더의 키는 직접 또는 상위 폴더를 거쳐 마스터 키로 잠겨 있습니다. 덕분에 로그인하면 어느 기기에서든 파일을 열 수 있지만, 저희가 가진 것은 언제나 잠긴 사본뿐입니다.
복구 키와 키 교체
가입하면 복구 키가 발급됩니다. 저희는 키를 갖고 있지 않아 암호화를 초기화할 수 없으므로, 비밀번호를 잊어버렸을 때 저장된 파일에 계속 접근할 수 있는 유일한 방법이 바로 복구 키입니다. 키가 노출되었을 수 있다고 생각되면 설정에서 마스터 키를 교체할 수 있습니다. 그러면 저장된 모든 파일이 브라우저에서 새 마스터 키로 다시 잠깁니다.
2단계 인증
계정 설정에서 2단계 인증을 켜면 올바른 비밀번호만으로는 로그인할 수 없습니다.
- 코드는 암호학적으로 안전한 난수 생성기로 생성됩니다
- 각 코드는 10분 후 만료되며 한 번만 사용할 수 있습니다
- 코드는 평문이 아닌 해시 형태로 저장됩니다
- 무차별 대입 공격을 막기 위해 코드 입력과 재전송 요청 횟수가 제한됩니다
또한 계정에 로그인된 모든 기기를 확인하고, 알 수 없는 세션을 하나씩 또는 한꺼번에 로그아웃시킬 수 있습니다.
화재, 홍수, 하드웨어 장애로부터의 보호
암호화는 사람으로부터 파일을 보호합니다. 여기서는 화재, 홍수, 하드웨어 고장 같은 물리적 재해로부터 파일을 보호하는 방법을 설명합니다.
데이터센터 하나를 잃어도 버티는 파일 저장소
암호화된 파일은 매우 높은 내구성을 갖도록 설계된 Cloudflare R2에 저장됩니다. 각 파일은 같은 리전에 있는 여러 데이터센터의 수많은 디스크에 여러 개의 사본 또는 이레이저 코딩된 조각으로 분산 저장됩니다. Cloudflare는 디스크 고장이나 화재, 침수 같은 데이터센터의 물리적 피해가 있어도 데이터가 보존되도록 설계하고 있습니다.
핀란드의 서버와 데이터베이스, 매일 백업
애플리케이션 서버와 데이터베이스는 핀란드 헬싱키에 있는 Hetzner 데이터센터에서 운영됩니다. 이 데이터센터는 정보 보안 관리의 국제 표준인 ISO/IEC 27001:2022 인증을 받았습니다. 따라서 계정 데이터는 GDPR과 핀란드 개인정보 보호법의 보호를 받습니다.
데이터베이스는 매일 자동으로 백업되며, 최근 7일 치 백업이 보관됩니다. 서버에 장애가 생기면 최근 백업에서 복원할 수 있습니다.
하드웨어를 도난당해도 파일은 노출되지 않습니다
파일, 파일 및 폴더 이름, 미리보기는 저희가 절대 보관하지 않는 키로 암호화되어 있습니다. 따라서 디스크를 도난당하거나, 백업이 유출되거나, 서버가 해킹되더라도 공유한 내용은 노출되지 않습니다.
저희가 막을 수 없는 것
자주 묻는 질문
출처
파일을 안전하게 공유하세요
무료이며 계정이 필요 없습니다. 파일은 업로드되기 전에 브라우저에서 암호화되므로 저희는 읽을 수 없습니다.
파일 공유하기