[번역] 커맨드 라인 JUMBLR 출시 - 프라이버시를 갖는 방법
요청에 의해 SuperNET의 Update News를 번역해보았습니다.
원문은 아래 링크에서 보시면 됩니다.
원문 링크 : https://www.supernet.org/en/resources/updates/command-line-jumblr-released
커맨드 라인 JUMBLR 출시
프라이버시를 갖는 방법
커맨드 라인 JUMBLR 출시 - 프라이버시를 갖는 방법
2017년 7월 13일 jl777
BarterDEX 팀이 신규 출시 코인들에 대한 정보를 더 많이 모으고 있는 만큼, 버그를 찾는데는 다소 잠잠했습니다. 아무 것도 하지 않고 그냥 기다리는 것 보다는 JUMBLR를 komodod에 넣기로 결정했습니다. 그렇게 하면 해야 할 것이 줄어드는 동시에, JUMBLR를 구동시키기 위해서는 komodod만 있다면 될 것입니다. JUMBLR 코어는 이전에 GUI 지갑에서 사용되었던 암호 문구(백업용 비밀번호)를 이용해 사용이 가능합니다.
만약 두 개의 커맨드라인에서 실행할 수 있다면 JUMBLR를 사용 할 수 있습니다. JUMBLR를 위한 10개의 노드를 설치 해 두었으므로, 현재의 mixin 레벨은 10입니다; 누군가가 노드를 돌려 참여하기 전까지는요. 더 많은 사람들이 JUMBLR를 시작하면 할 수록 mixin 레벨은 계속해서 증가할 것이며, 100까지 증가할때부터 그 이상이 되는 경우를 제가 보고싶은 상황입니다.
현재로써는, 코드는 안정적이며 만약 당신이 JUMBLR를 사용하게 된다면 z transaction은 해당 지갑에서만 존재하므로 지갑의 백업이 잘 되어 있는지 확인해야 합니다. 만약 지갑의 데이터를 잃어버리게 된다면 암호 문구를 알더라도 zfunds를 모두 잃게 될 것입니다.
기술적 배경: 점블러의 작동원리
Komodod는 현재 jumblr_deposit 과 jumblr_secret 원격 절차 호출(RPC call)기능을 가지고 있습니다.
Jumblr는 이전에 설명했듯, jumblr를 사용하는 모든 노드들이 동일한 블록에서 트랜잭션 활동의 동기화를 활성화하여 mixing 효과(역자-트랜잭션 익명화 과정의 효율성)를 최대화 합니다. 하지만 다른 mixers/tumblers(역자-익명화 해주는 서비스)들과는 달리, 보유하고 있는 코인에 대한 권한을 제 3 자에게 전달 하지 않아도 직접 권한을 가지고 있도록 유지 할 수 있습니다. JUMBLR는 자금의 일 대 다(多) 할당을 가능하게 합니다. 즉, 하나의 예금 주소를 가지고 있는 동시에 여러 비밀 주소를 가질 수 있습니다. 만약 복수의 komodod 데몬을 실행시킨다면 그 만큼 더 많은 예금 주소를 가질 수 있습니다.
JUMBLR는 종착 투명 주소의 프라이버시를 극대화 하기위해 t -> z, z -> z 그리고 z -> t 트랜잭션을 사용합니다. 그러므로 투명성이 유지되는 동시에, 이 작업의 첫 활동은 추적이 불가능한 z 주소에서 자금이 오는 것이 가능합니다.
※ 역자 - 여기서 t 는 투명 주소(transparent address)를 의미하며 z 는 비밀 주소를 의미하는 z 주소(z address)를 의미합니다.
기 언급한 세 단계는 각 작업마다 무작위로 실행됩니다. 또한 같은 단계에서 하나 이상의 트랜잭션이 있다고 하더라도 무작위로 트랜잭션이 선택됩니다. 이 무작위 실행은 z -> t 트랜잭션을 트랜잭션 크기를 통해 분석하여 원래 주소를 알아내는 것을 막기 위한 것입니다.
jumblr_deposit <depositaddr> 는 해당 세션에서 jumblr 입금 주소로 입금 주소를 지정합니다. 이미 자금이 들어 있는 주소를 선택할 수 있으며, 선택하는 즉시 점블러 작업을 진행하도록 할 것입니다. 만약 자금이 들어 있지 않은 주소를 선택하면, 자금을 넣을 때까지 기다릴 것입니다.
점블러 트랜잭션에는 세 가지 크기가 있습니다: 10 KMD, 100 KMD, 그리고 1000 KMD 크기가 있습니다. 또한 모든 점블러 노드가 활성화 되는 고정 간격의 블록이 있습니다. 현재 이 간격은 10으로 설정되어있지만 곧 변경될 예정입니다. 매 10 * 10 번째 블록에서만 1000 KMD 크기의 트랜잭션이 처리되며, 이것은 모든 큰 크기의 트랜잭션을 집중적으로 매 N * N 번째 블록에서 처리합니다.
jumblr_secret <secretaddress> 는 최종 z -> t 트랜잭션을 보낼 위치를 JUMBLR에 알립니다. 대규모 계정에서 프라이버시를 얻을 수 있도록 하기 위해 최대 777개의 비밀 주소를 지원합니다. z -> t 단계가 활성화 될 때마다, 무작위의 비밀 주소가 선택됩니다.
프라이버시에 대한 실용적 조언
지금까지 프라이버시를 보장 받는 것은 굉장히 어려웠습니다. JUMBLR는 커맨드라인에서 두 줄을 적는 것만으로 가능하게 만들어 아주 간단하게 만들었습니다. 주소를 관리하기 위해 상위 계층의 레이어를 추가 될 수 있습니다. (예 : 암호 문구를 통한 연결) 이러한 것들은 아직 구현 예정 중입니다.
한 번 프라이버시를 얻었더라도, 모든 프라이버시를 잃는 것 역시 매우 쉽습니다. 단 한 번의 실수로 이전에 사용되었던 주소와 비밀 주소를 통한 트랜잭션을 실행한다면 비밀 주소는 더 이상 완벽하게 프라이버시를 갖고 있다고 하기 어렵습니다.
완벽한 프라이버시를 원한다면, 완전히 독립된 노드에서 활용하시기 바랍니다!
이것이 다소 극단적인 선택처럼 보이지만 프라이버시를 지키기 위해서는 모든 트랜잭션이 각기 다른 노드에서 오는 것처럼 보이게하는 것이 가장 좋습니다. 대부분의 사람들에게 이렇게 하기 위한 가장 쉬운 방법은 실제로 다른 노드를 사용하는 것입니다.
그렇게 하기 위해서는 완전히 새로운 komodod 지갑을 이용하는 독립된 전용 노트북을 사용하거나(권장) 가상 사설 서버(VPS)를 이용하는 것(적은 금액일 경우)입니다. 이 지갑에서 주소를 생성하고 메인 노드의 jumblr_secret 주소로 사용하시기 바랍니다. JUMBLR가 자금을 비밀 노드의 계좌로 전송 할 것이기 때문입니다. 만약 조심스럽고 두 노드에서 절대 같은 IP 주소를 사용하지 않는다면 프라이버시를 아주 좋은 상태로 지킬 수 있을 것입니다.
두 계정을 동시에 연관시킬 수 있는 이메일을 보내지마세요! 무언가를 구매하기 위한 자금으로 비밀 주소에서 자금을 보내지 마세요! 등등과 같은 내용들은 정말 당연한 이야기로 들리겠죠? 프라이버시를 잃는 방법은 정말 많고 다양합니다. IP 주소와 블록체인 레벨에서 어떤 연관을 지을 수 있는지 한 번 생각해 보시기 바랍니다. 그렇기 때문에 사전에는 많은 준비가 되어있어야합니다.
만약 당신이 100,000 KMD를 가지고 있는 사람이고, 다른 사람들이 당신이 세력(역자 - Whale을 의역하였습니다.)이라는 것을 아는 것을 원하지 않는다면 어떻게 하시겠습니까?
하나의 비밀 주소를 만드는 것 대신 다음과 같이 100 개의 비밀주소를 만드세요:
./komodo-cli jumblr_secret
./komodo-cli jumblr_secret
...
./komodo-cli jumblr_secret
그리고 JUMBLR가 완료되면 모든 흔적들을 삭제하시기바랍니다. 이 작업을 완료하면 각각 평균 1000 KMD가 들어있는 100개의 주소를 가지게 될 것입니다. 그러므로 부주의하지만 않고, 10,000 KMD 트랜잭션을 한 번에 진행하지만 않는다면(한 번에 1,000KMD 이상의 트랜잭션을 한다면 10개의 비밀 주소와 연결될 것이므로) 당신의 자금은 100명의 다른 사람이 1,000 KMD씩 가지고 있는 것 처럼 보일 것입니다.
저의 경우 사용하기 위한 점블러 스크립트를 생성하기위해 다음과 같이 실행했습니다:
cd ~/komodo/src; echo "./komodo-cli jumblr_deposit ./komodo-cli getnewaddress
" > jumblr; echo "./komodo-cli jumblr_secret ./komodo-cli getnewaddress
" >>jumblr; chmod +x jumblr; cat jumblr
이 작업을 한다면 jumblr라는 파일을 생성할 것이고 이것은 jumblr_deposit 호출과 jumblr_secret 기능을 가지고 있을것입니다. jumblr_deposit으로 자금을 보내면 비밀 주소로 점블이 완료될 것입니다. 실행을 하면, 다음과 같이 나올 것입니다:
{
"result": 0
}
{
"result": "success",
"num": 0
}
현재로써는 개발자 브랜치에만 점블러 API가 포함되어 있지만 안정적이라고 판단된다면 베타 브랜치로 옮긴 후 마스터 브랜치로 전파 될 것입니다. 이것은 변경 사항에 영향을 미치는 합의가 아닙니다. 이 커맨드를 사용하시기 바랍니다:
git checkout dev
git pull
이 커맨드를 실행해야만 점블러 API가 활성화된 버전을 받을 수 있습니다.
http://kmd.explorer.supernet.org/address/RGhxXpXSSBTBm9EvNsXnTQczthMCxHX91t 에서 모여있는 요금을 확인 할 수 있습니다.
Congratulations @solidliquid! You received a personal award!
You can view your badges on your Steem Board and compare to others on the Steem Ranking
Do not miss the last post from @steemitboard:
Vote for @Steemitboard as a witness to get one more award and increased upvotes!