기억을 잃었을 때 컴퓨터 접근을 복구하는 방법
(eljojo.github.io)- 파일을 암호화하고 복구 키를 여러 친구에게 분할해 보관할 수 있는 오프라인 도구로, Shamir의 비밀 분할 알고리듬을 사용
- 예를 들어 5명의 친구에게 키 조각을 나누고, 3명이 협력하면 복구 가능, 단 한 명만으로는 접근 불가
- 각 친구는
recover.html파일이 포함된 독립형 번들을 받아, 인터넷 없이 브라우저에서 복구 수행 가능 - 오픈소스(Apache-2.0) 로 공개되어 있으며, 서버나 계정 시스템 없이 로컬에서만 실행
- 개인 데이터 보호와 신뢰 분산을 동시에 달성할 수 있는 간단하고 자급적인 복구 방식 제공
ReMemory 개요
-
ReMemory는 파일을 암호화한 뒤 복호화 키를 여러 신뢰할 수 있는 친구에게 분할해 전달하는 오프라인 도구
- Shamir’s Secret Sharing을 이용해 키를 여러 조각으로 나누고, 특정 수 이상의 조각이 모이면 복구 가능
- 예시로 5명에게 조각을 나누고, 3명이 협력하면 원본 파일 복구 가능
- 각 친구는
recover.html이 포함된 번들을 받아, 브라우저에서 오프라인으로 복구 절차 수행- 인터넷 연결이나 서버 접근이 필요하지 않으며, 웹사이트가 사라져도 복구 가능
동작 방식
- 파일을 암호화한 후, 생성된 키를 여러 share로 분할해 친구들에게 배포
- Encrypt → Split key → Distribute 순서로 진행
- 복구 시 Combine shares → Decrypt → File recovered 절차로 원본 파일 복원
- 서로 다른 조합의 친구들이 일정 수 이상 모이면 복구 가능 (예: 5명 중 3명)
특징 및 한계
-
특징
- 브라우저에서 실행되는 오프라인 도구
- 복구 키를 친구 간에 분할해 보관 가능
- 오픈소스(Apache-2.0) 로 공개
- 웹사이트 없이도 복구 가능한 자급형 구조
-
한계
- 서비스나 회사 형태가 아님
- 계정 시스템이나 클라우드 제품이 아님
- 데이터를 외부에 저장하지 않음
- 자체적으로 백업 솔루션 역할을 하지 않음
사용 방법
-
데모 번들을 다운로드해 3개의 샘플 번들 확인 가능
- 예:
bundle-alice/recover.html을 브라우저에서 열고, Bob과 Carol의README.txt파일을 드래그해 추가 - 임계치(3명)가 충족되면 자동으로 복호화 진행
- 예:
- 실제 사용 전 데모를 통해 친구들이 복구 과정을 체험 가능
신뢰와 검증
- GitHub에서 전체 코드를 공개, 누구나 검토 가능
- 자체 보안 감사 문서를 통해 암호화 선택 근거를 설명
- 모든 처리는 로컬 브라우저 내에서 수행, 파일이 외부로 전송되지 않음
- 실제 비밀 파일 사용 전, 데모 번들로 작동 방식 확인 권장
- 암호화에는 age 도구를 사용, 현대적이고 신뢰받는 암호화 방식 적용
개발 배경
- 개인이 사고를 당했을 때 신뢰할 수 있는 친구들이 중요한 파일에 접근할 수 있도록 하기 위해 제작
- 단일 인물이나 서비스에 모든 권한을 맡기지 않기 위한 목적
- 기존에 단순하고 독립적으로 복구 가능한 도구가 없어 직접 개발
- 다른 사람들에게도 유용할 수 있어 공개 공유
Hacker News 의견들
-
미래의 나를 낯선 사람처럼 대해야 함
그 낯선 사람을 위해 글을 쓰면, 미래의 내가 고마워할 것임
우리는 기억할 거라 생각하지만 실제로는 잊어버림
너무 자신을 몰아붙이지 말고, 미래의 나를 위해 단순한 비전자식 기록 방식을 추천함
가족이나 친구가 알아볼 수 있도록 간단한 암호를 넣는 것도 좋음 — 예를 들어 가족만 아는 암호, 어릴 적 키우던 반려동물 이름, 증조부 이야기 속 중간 이름 같은 것들임
장모님과 대모님이 기억을 자주 잃기 시작했을 때, 나는 집안 곳곳에 Valet Bowl을 두고, 펜이 달린 작은 노트를 쓰게 했음
잊으면 노트를 보고, 열쇠를 잃으면 그릇을 확인하게 함
결국 ‘기억하려 하지 말고, 손이 기억하게 하라’는 훈련을 하는 중임- 이 댓글 말하는 거 맞지? 이전 HN 댓글 링크
웃긴 건, 그릇은 안 만들었는데 그 댓글은 기억하고 있음. 지금은 차 키가 어딨는지 모르겠음. 그릇을 만들었어야 했음 - 나는 코드 주석에서 늘 미래의 나에게 말을 거는 편임
덕분에 미래의 나는 과거의 나에게 늘 감사함. 현재의 나도 행복함
- 이 댓글 말하는 거 맞지? 이전 HN 댓글 링크
-
7명 중 5명이라는 건, 예를 들어 교통사고 같은 상황에서 동시에 2명 이상과 함께 있으면 안 된다는 뜻임
단순한 기억 상실을 넘어, 혼수상태나 장기 입원 같은 상황도 고려해야 함
신뢰할 수 있는 제3자가 청구서나 클라우드 요금 같은 걸 처리할 수 있도록 접근 권한을 마련해두는 게 실용적임 -
나는 비밀 관리자 비밀번호를 내화·방수 금고에 잠긴 종이 일지에 적어둠
위치는 나와 파트너만 알고 있음
나머지 비밀번호는 모두 패스워드 매니저에 저장함- 나도 같은 방식인데, ‘내화 금고’는 과신하지 말라고 경고하고 싶음
집이 전소될 정도의 화재면 금고 내부 온도도 충분히 높아져 내용물이 타버릴 수 있음
은행 금고가 훨씬 안전한 대안임. 은행은 집보다 덜 타니까 - 우리는 서로의 비밀을 담은 패스워드 매니저를 공유함
이는 기억 상실보다는 사망 시 접근 문제를 대비한 것임
신뢰가 낮은 상황이라면 변호사를 중개자로 두는 것도 가능함 - 물리적 금고의 장점은 디지털과 달리 ‘완전히 공개되거나 완전히 잃는’ 극단이 아니라는 점임
- 결국 사망 대비 백업 계획이 기억 상실 상황에도 통할 수 있음
- 가족이 있다면, 집 밖의 신뢰할 수 있는 사람 한 명에게도 정보를 일부 공유하길 권함
- 나도 같은 방식인데, ‘내화 금고’는 과신하지 말라고 경고하고 싶음
-
이런 아이디어가 주목받는 게 반가움
예전에 같은 HashiCorp 라이브러리로 비슷한 걸 만들었지만 완성도 부족으로 공개하지 못했음
passcrux 프로젝트를 다시 손볼 계획임
내 목표는 패스워드 매니저의 마스터 비밀번호 보존이었고, 친구들에게 분할된 백업을 맡기는 구조였음
Shamir 분할은 쉬웠지만, 부분 데이터 손실 보정을 위한 에러 정정 기능을 추가하고 싶음 -
기억 상실을 대비한다면 다음 상황도 고려해야 함
- 자신이 만든 비밀번호 체계를 잊을 수 있음
- 복호화해야 할 데이터가 있다는 사실조차 잊을 수 있음
- 판단 능력이 떨어져 다른 사람이 결정을 대신할 수 있음
- 생체 인증이 작동하지 않거나, 시도 제한으로 잠길 수 있음
- 사고에 가족이나 친구도 함께 휘말릴 수 있음
그래서 나는 단순히 물리적 보안에 의존하는 게 최선이라 생각함
집 문서처럼 평문으로 적되, 무엇이며 왜 필요한지, 접근 방법을 명시해야 함
- 그래서 나는 모든 단계를 위한 공개용 복구 가이드를 따로 둠
-
기억 상실 대비는 상속 계획과는 다르지만, 생체 인증을 활용할 수 있음
그래도 두 가지를 통합해 한 번에 대비하는 게 낫다고 생각함 -
우리 가족은 내가 어디에 두었는지 아는 ‘빨간 노트’ 를 알고 있음
거기에 내 디지털 자산 접근법이 자세히 적혀 있음 -
다들 하는 것처럼 모니터에 비밀번호 스티커 붙이면 됨
- 그럴 거면 최소한 YubiKey Bio 같은 생체 인증을 함께 쓰길
- 난 키보드 밑에 붙여둠. 훨씬 안전함 :p
-
내 친구가 예전에 이런 걸 만들었음
keybearer 소개 페이지 / GitHub 저장소- 믿기지 않음! 오래전부터 이런 걸 찾고 있었는데, 대부분은 Shamir 암호화만 하고 UX가 엉망이었음
14년 전에 이걸 구현했다니 대단함
나는 복구 앱과 비기술자용 PDF 설명서를 ZIP에 함께 넣는 방식으로 만들었음
복구 경험을 최대한 부드럽게 하려는 시도였음
네 버전이 내가 본 것 중 유일하게 제대로 작동하는 사례임. 존경함
- 믿기지 않음! 오래전부터 이런 걸 찾고 있었는데, 대부분은 Shamir 암호화만 하고 UX가 엉망이었음
-
이런 시스템이 작동하려면 친구가 있어야 함