질문
가장 많이 묻는
열다섯 가지
아무도 캐묻지 않은 소프트웨어에 돈을 맡기지 않습니다. 여기 있는 것은 첫 결제 전에 나오는 질문들과 에두르지 않은 답입니다 — 답이 편하지 않은 두 가지도 포함해서.
기본
이건 메신저인가요, 지갑인가요?
둘 다이고, 한쪽이 다른 쪽에 나사로 붙여진 것이 아닙니다. 여기서 결제는 일종의 메시지입니다. 그것이 속한 대화에 도착하고, 거기서 서명됩니다.
지갑을 한 번도 열지 않는다면, 당신이 가진 것은 통화와 파일과 폴더와 음성 메시지가 있는 종단 간 암호화된 그룹 채팅입니다. 열면, 돈은 그것을 나누는 사람들과 같은 방에 삽니다.
쓰려면 암호화폐에 대해 알아야 하나요?
메시지를 보내는 데는 전혀 필요 없습니다.
지갑을 함께 쓰려면 두 가지가 필요합니다. 스물네 단어를 안전한 곳에 보관하고, 규칙 하나를 이해하세요 — 그룹에서 충분한 사람이 서명하면 돈이 움직입니다. 나머지는 앱이 합니다. 한 번 적어 둔 주소는 이름이 되므로, 누구에게 보낼지 묻는 칸은 예순네 글자가 아니라 사람을 묻습니다.
어떤 플랫폼에서 도나요?
macOS, iOS, 안드로이드, 웹 그리고 브라우저 확장. 어디서나 같은 화면입니다 — 휴대폰에서 익힌 것은 데스크톱에서 이미 아는 것입니다.
지갑은 한 번도 안 건드리고 쓸 수 있나요?
네. 돈과 관련해 강제되는 것은 없습니다. 지갑이 없는 그룹은 그룹 채팅이고, 누군가 거기에 지갑을 열기 전까지 계속 그렇습니다.
돈
그룹의 돈은 누가 갖고 있나요?
아무도 갖고 있지 않습니다. 그게 전부입니다.
그룹 지갑에는 주인이 없습니다. 서명자 각자의 키는 각자의 기기에서 만들어져 거기 남고, 주소는 그 모두로부터 한 번에 만들어집니다. 거기서 돈을 빼려면 그룹이 합의한 만큼의 서명이 필요합니다 — 셋 중 어느 둘이든, 아홉 중 어느 다섯이든, 정한 대로. 충분한 수가 서명하기 전까지 결제는 요청입니다.
네트워크 수수료는 누가 내나요?
돈이 나가는 지갑입니다. 얼마가 들지는 서명 카드에 적히지 않습니다. 대부분의 체인에서 수수료는 서명하는 사람들이 거래를 준비하기 전까지 알 수 없고, 그전에 지어낸 숫자는 남의 돈에 대한 추측이 되기 때문입니다. 보내는 것과 같은 코인으로 수수료를 내는 체인에서는 잔액을 전부 보내면 낼 것이 남지 않을 수 있습니다. 그 말은 금액을 입력하는 바로 그 자리에 적혀 있습니다.
어떤 체인과 어떤 코인인가요?
비트코인, 이더리움, BNB, 트론, 솔라나, 그리고 그 위의 토큰들. 하나의 잔액 아래 한 목록에 있습니다.
모든 코인이 자기가 어느 체인의 것인지 말하고, 이는 장식이 아니라 의도입니다. 트론의 USDT와 이더리움의 USDT는 같은 돈이 아니며, 그 둘을 한 줄로 보여 주는 목록은 언젠가 잘못된 네트워크로 보내게 되는 목록입니다.
누가 그룹을 떠나면 어떻게 되나요?
대화에 대해서는, 누가 있는지가 바뀌는 그 순간에 모두의 키가 바뀝니다. 그래서 나간 사람은 그 뒤에 오가는 말을 읽을 수 없습니다. 서버가 말에 규칙을 강제하기 때문이 아니라 — 서버는 그 말을 한 줄도 읽지 못합니다 — 그 사람이 갖고 있던 키가 더는 아무것도 열지 못하기 때문입니다. 누가 방에 있는지는 오히려 서버가 보는 부분입니다. 구성원 변경은 평문으로 오가고, 그래서 서버는 이미 없는 사람의 쓰기를 거절할 수 있습니다.
돈에 대해서는, 누가 서명하는지가 그룹이 정한 규칙의 일부이며, 그 규칙을 바꾸는 데는 그 규칙에 따라 쓰는 것과 같은 합의가 필요합니다.
결제를 동결하거나 되돌릴 수 있나요?
아니요, 여기 다른 누구도 못 합니다. 당신을 대신해 보관한 키가 없으니 압류할 것도, 누를 버튼도 없습니다. 전파된 결제는 체인 위에 있습니다.
그 대신 그룹이 가진 것은 그 전 단계입니다. 정족수에 이르지 못한 결제는 일어나지 않은 것이고, 서명자 누구든 그냥 서명하지 않을 수 있습니다.
프라이버시, 그리고 직접 운영하기
서버가 내 메시지를 읽을 수 있나요?
아니요. 서버는 메시지의 순서를 잡고 통화를 실어 나릅니다 — 그리고 실어 나르는 것은 암호문입니다. 그것을 열 수 있는 키는 그 방 안의 기기에서 만들어졌고 한 번도 거기를 떠난 적이 없습니다.
이는 결제 요청에 대해서도, 그 주변의 대화에 대해서도 똑같이 사실입니다.
그래도 보관하는 것은 말해 둘 만합니다. 무언가를 나르는 서버는 필연적으로 그 일부를 갖게 되니까요. 메시지마다 어느 그룹의 것인지, 어느 기기가 보냈는지, 도착한 시각, 크기, 그리고 암호문. 기기가 마지막으로 연결된 시각 — 접속 표시 — 도 보관하지만 이것은 끌 수 있습니다. 그 어느 것도 내용이 아니며, 내용으로 바뀌지도 않습니다.
얼마나 오래 보관되고, 몇 명을 염두에 두고 있나요?
따라잡기 버퍼는 기본 삼십 일이고, 이 숫자는 사실 적어 둔 하나의 제품 결정입니다. 기기가 그룹에 다시 들어가지 않고 오프라인으로 있을 수 있는 최대 기간이 그만큼입니다. 오래된 것은 행을 지우는 대신 한 달치 파티션째로 떨어져 나갑니다.
페더레이션의 기본값은 대략 백 명, 한 사람당 두 대 정도 규모로 나옵니다. 그 숫자들은 모두 프로토콜의 한계가 아니라 설정 파일의 한 줄입니다. 비트코인의 그룹 지갑은 키를 최대 열다섯 개까지, 임계값은 그 사이 어디든 둘 수 있고, 다른 체인에서는 상한이 그 체인 자신의 것입니다.
그 암호화는 당신들이 만든 건가요?
아니요. MLS이고, RFC 9420으로 공개되어 있으며, 다른 메신저들도 같은 표준을 씁니다 — 설명하는 대신 이름을 대는 이유가 바로 그것입니다.
MLS가 그룹에서 해내는, 정말 어려운 부분은 이것입니다. 누가 들어오거나 나갈 때 모두의 키가 다음번 적당한 때가 아니라 바로 그 순간에 바뀝니다.
휴대폰을 잃어버리면요?
스물네 단어가 당신이 누구인지와 당신이 돈을 받을 수 있는 모든 주소를 되돌려 줍니다. 다른 곳에 설치하고 단어를 넣으면, 신원도 돈도 다시 당신 것입니다.
기록은 답이 다르고, 그게 불편한 쪽입니다. 대화는 아직 갖고 있는 기기에서 새 기기로 옮겨 갑니다 — 문구에서 나오는 것이 아닙니다. 잃어버린 기기가 유일한 기기였다면, 거기 담겨 있던 기록은 사라집니다. 이는 실수가 아니라 결정입니다. 문구만으로 열리는 백업은 당신이 지금까지 말한 모든 것에 대한 영구적인 접근이 되고, 그것도 당신이 없는 곳에 놓이며, 누구도 철회할 수 없습니다.
현실적인 답은, 필요해지기 전에 두 번째 기기에 앱을 깔아 두는 것입니다.
소스 코드가 공개되어 있나요?
현재 소스 코드는 비공개입니다. 오픈 소스로 공개되면 알려드리겠습니다.
내 서버를 직접 돌릴 수 있나요?
네 — Docker로 직접 서버를 운영할 수 있습니다. 회사나 커뮤니티의 서버 또는 집에 있는 컴퓨터에 배포할 수 있습니다.
당신의 기기는 자기 서버하고만 이야기하는 것이 아니라, 당신이 속한 방을 정렬하는 서버와 이야기합니다. 이것은 누출이 아니라 설계입니다. 기기는 어떤 서버든 확인할 수 있고 어떤 서버도 발급할 수 없는 증명으로 자신이 누구인지 밝힙니다. 그래서 두 번째 서버에 들어가는 일은 첫 번째 서버가 베풀어야 하는 호의가 아니며, 당신이 둘 중 어느 쪽의 방에 있든 서버끼리 서로 신뢰할 필요가 없습니다. 누가 어느 서버로 들어왔는지는 그 사람이 어떤 방에 있을 수 있는지를 정하지 않습니다. 서버가 내려가면 그곳 사람들은 다른 서버로 옮겨 계속합니다.
여기서 시작
열쇠는 챙겨서
가세요
지갑이 메신저이고, 그 둘 다 당신이 만들고 굴리라고 있는 당신의 것입니다.