보안 모델
키는 내 기기에서 만들어지고 사용되며, 지갑은 서명하는 내용을 보여 줍니다. OnWallet의 누구도 자금을 옮기거나, 누구를 위해서든 안전 단계를 건너뛸 수 없습니다.
OnWallet은 내부 보안 검토만 거쳤으며, 독립적인 보안 감사는 받지 않았습니다.
기기에 남는 것
- 키와 24개 단어. 컴퓨터의 안전한 난수 생성원으로 만들어지며, 비밀번호로 암호화된 지갑 파일 안에만 저장됩니다(64 MiB 메모리를 쓰는 Argon2id, 그다음 XChaCha20-Poly1305).
- 콜드 잠금. 잠금 해제된 키는 확장 프로그램 키 코드의 메모리에만 있으며, 브라우저 저장소에는 절대 들어가지 않습니다. 지갑이 잠기거나 브라우저가 확장 프로그램을 멈추면 키는 사라집니다.
- 분리된 키 코드. WebAssembly로 컴파일된 작은 Rust 프로그램이 키를 보관하고 무엇에 서명할지 결정합니다. 확장 프로그램의 나머지 부분은 이 프로그램에 원시 바이트 서명을 요청할 수 없습니다.
지갑이 서명하는 것과 서명하지 않는 것
- 결제, 그리고 토큰 추가와 제거. 그 밖의 모든 트랜잭션 유형은 이유와 함께 거부됩니다.
- 서명하려는 바이트를 디코딩해 그대로 보여 줍니다. 보이는 것보다 적게 전달될 수 있는 부분 결제는 거부합니다.
- 서명 전에 네트워크를 확인하므로, 테스트 트랜잭션이 메인 네트워크에서 서명되거나 그 반대가 될 수 없습니다.
- 서명된 모든 트랜잭션은 검증되지 않으면 약 1분 안에 만료됩니다.
- 어떤 웹사이트도 지갑에 서명을 요청할 수 없습니다. 지갑은 방문하는 페이지에 접근하지 않습니다. 지갑에 닿을 수 있는 유일한 사이트는 Google 로그인 결과를 돌려주기 위한 onwallet.si이며, 그 밖의 용도는 없습니다.
OnWallet ID가 보관하는 것
| 조각 | 보관 위치 | 단독으로 할 수 있는 것 |
|---|---|---|
| 1 | 이 브라우저의 암호화된 지갑 안 | 두 번째 조각 없이는 아무것도 할 수 없음 |
| 2 | OnWallet ID 서버, 암호화됨 | 아무것도 할 수 없음. 단독으로는 쓸모없음 |
| 3 | 나만 가진 복구 코드로 잠긴 복구 키트 | 두 번째 조각 없이는 아무것도 할 수 없음 |
OnWallet ID는 이메일 주소와 인증 앱 시크릿(암호화됨)도 보관합니다. 24개 단어, 비밀번호, 복구 코드, 서명할 수 있는 키는 절대 보관하지 않습니다. 서버를 탈취한 사람은 모든 지갑의 2번 조각을 얻게 되지만, 그것으로는 어느 지갑도 재구성할 수 없습니다. 복구는 로그인과, 이메일과 기기로 알림이 가는 72시간 대기를 거친 뒤에만 2번 조각을 전달합니다.
AI 에이전트
- AI 앱은 메인 지갑이 아닌 별도의 에이전트 지갑에서만, 스스로 올릴 수 없는 한도 안에서 결제합니다.
- OnWallet의 MCP 서버는 키를 보관하지 않습니다. 서버가 전달하는 모든 결제는 승인한 뒤 내 기기의 확장 프로그램에서 다시 확인되고 서명됩니다.
- 확장 프로그램은 판매자의 가격을 직접 가져오고, 서버가 전달한 가격과 다르면 거부합니다. 에이전트를 참조하세요.
피싱
OnWallet은 웹사이트에서 절대 코드를 요구하지 않습니다. 이메일 코드와 인증 앱 코드는 확장 프로그램 안에서만 입력하세요.
- OnWallet은 확장 프로그램 안이 아닌 곳에서는 절대 24개 단어, 비밀번호, 복구 코드, 복구 키트를 요구하지 않습니다.
- 설정(Settings)에서 개인 문구를 정할 수 있습니다. 이 문구는 잠금 해제 화면과 로그인 화면에 표시되므로, 가짜 OnWallet 창은 이를 흉내 낼 수 없습니다. 문구가 없거나 다르면 멈추세요.
- 이 사이트는 지갑 비밀번호, 복구 코드, 복구 키트를 절대 요구하지 않습니다.
OnWallet 직원이 할 수 없는 것
- 지갑 조각을 전달하거나, 로그인 정보를 바꾸거나, 계정에 기기를 연결하거나, 72시간 대기를 줄이는 관리자, 지원, 운영자 기능은 없습니다.
- OnWallet의 누구도 대신 지갑을 복구하거나 자금을 옮길 수 없습니다. 지원팀을 사칭하며 그렇게 해 주겠다는 사람은 사기꾼입니다.
- 비상시에는 운영자가 모든 복구를 일시 중지할 수 있으며, 이는 복구를 늦출 뿐입니다.
이것이 막지 못하는 것
- 24개 단어를 가진 사람은 지갑을 가진 것입니다.
- 지갑이 잠금 해제된 동안 컴퓨터에 있는 악성 코드는 화면에 보이는 것을 볼 수 있습니다.
- 잘못된 주소로 승인한 결제는 되돌릴 수 없습니다. 확인 화면을 읽으세요.
- 토큰 발행자(RLUSD의 경우 Ripple 포함)는 자신이 발행한 토큰을 동결하거나 회수할 수 있습니다.
보안 문제 신고
security@onwallet.si로 이메일을 보내 주세요. security.txt도 참조하세요.