비트코인은 모든 거래 내역이 장부에 투명하게 공개되기 때문에 privacy가 완벽하게 보호되지는 않습니다. 비트코인 주소가 pseudonymous하기 때문에 어느 정도의 privacy 보호는 가능하지만, 거래 패턴을 분석해 여러 정보를 얻어낼 수 있습니다.
비트코인 프로토콜을 변경하지 않고 비트코인 거래의 privacy를 강화하기 위한 방안으로 CoinJoin이라는 방식이 있습니다. 결론부터 말씀드리면, 결제를 할 때 다른 사람과 함께 공동으로 결제를 하는 방식입니다. 비트코인은 하나의 트랜잭션이 여러 개의 input과 output을 가지기 때문에 여러 명의 input을 동시에 사용하여 다시 여러 개의 output을 만들어 내면 어느 input이 어느 output으로 연결되는지 알 수 있는 방법이 없어서 tracking을 막을 수 있습니다.
CoinJoin은 공동으로 결제할 다른 사람을 찾을 방법이 필요하므로 실제 거래에서는 그다지 사용되고 있지 않지만, 비트코인 트랜잭션의 특징을 어떻게 활용할 수 있는지 잘 보여주는 예입니다.
자세한 방법은 비트코인 위키를 참고하세요 🙂