Bitcoin thường được coi là tiền kỹ thuật số, nhưng tuyên bố này vẫn còn nhiều nghi vấn. Nếu Alice trả cho Bob 10 đô la tiền mặt thì Bob không có cách nào biết được số tiền đó đến từ đâu. Khi Bob chuyển 10 đô la cho Carol, Carol không có cách nào biết rằng 10 đô la ban đầu đến từ Alice.
Tuy nhiên, bản chất công khai vốn có của Bitcoin quyết định rằng tình hình sẽ khác. Lịch sử của một mã thông báo nhất định (Đầu ra giao dịch chưa được chi tiêu hoặc chính xác là UTXO) có sẵn cho mọi người xem. Điều này giống như viết số tiền giao dịch và tên của những người tham gia trên hóa đơn.
Tuy nhiên, các địa chỉ công khai có thể được ẩn danh, cho phép người dùng dễ dàng ẩn danh tính của họ. Tuy nhiên, Bitcoin không thể che giấu hoàn toàn dấu vết của nó. Công nghệ phân tích cho blockchain ngày càng trở nên hoàn thiện và có thể khớp địa chỉ với danh tính một cách hiệu quả. Ngoài các kỹ thuật giám sát khác, các thực thể chuyên dụng cũng có thể hủy ẩn danh người dùng tiền điện tử. Để giải quyết vấn đề này, nhiều công nghệ phân tách giao dịch đã xuất hiện trên thị trường.
Nói một cách rộng rãi, việc trộn mã thông báo đề cập đến tất cả các hoạt động trộn tiền thông qua việc thay thế. Tuy nhiên, trong không gian tiền điện tử, trộn mã thông báo được cung cấp bởi các bên thứ ba. Nhà cung cấp dịch vụ thường lấy mã thông báo của người dùng (cùng với một khoản phí nhỏ) và sau đó trả lại một số mã thông báo không liên quan đến mã thông báo đã gửi. Những dịch vụ như vậy còn được gọi là máy trộn hoặc máy trộn tiền.
Tất nhiên, tính bảo mật và tính ẩn danh của dịch vụ tập trung này còn nhiều nghi vấn. Người dùng không có gì đảm bảo rằng máy trộn sẽ trả lại tiền hoặc mã thông báo được trả lại không bị nhiễm độc theo một cách nào đó. Ngoài ra, khi sử dụng bộ trộn, địa chỉ IP và Bitcoin cũng có thể bị bên thứ ba ghi lại. Kết quả của việc trộn lẫn mã thông báo là người dùng từ bỏ quyền kiểm soát tiền của mình với hy vọng nhận được các mã thông báo không liên quan.
Hiện tại có một giải pháp mới gọi là "Giao dịch CoinJoin" cung cấp cho người dùng nhiều khả năng để từ chối. Nói cách khác, sau khi sử dụng CoinJoin, bằng chứng chính xác về mối liên hệ giữa người dùng và các giao dịch trong quá khứ sẽ bị xóa. Nhiều giải pháp CoinJoin trở thành giải pháp thay thế phi tập trung cho máy trộn. Mặc dù điều phối viên có thể can thiệp nhưng người dùng không cần phải từ bỏ quyền quản lý quỹ.
Giao dịch CoinJion ra mắt vào năm 2013 và lần đầu tiên được đề xuất bởi nhà phát triển Bitcoin Gregory Maxwell. Trong bài đăng, ông đã giới thiệu ngắn gọn cấu trúc của các giao dịch như vậy và cách thu được lợi nhuận riêng tư cao mà không cần sửa đổi giao thức.
Về cơ bản, các giao dịch CoinJoin kết hợp thông tin đầu vào từ nhiều người dùng. Trước khi giải thích cách hoạt động của công nghệ này, trước tiên chúng ta hãy hiểu cấu trúc của giao dịch cơ bản.
Giao dịch bitcoin bao gồm đầu vào và đầu ra. Khi người dùng muốn giao dịch, họ lấy UTXO làm đầu vào, chỉ định đầu ra và ký tên vào đầu vào. Xin lưu ý rằng mỗi đầu vào được ký độc lập nhưng người dùng có thể thiết lập nhiều đầu ra (nhắm mục tiêu các địa chỉ khác nhau).
Chúng tôi nhập liệu theo bốn cách (mỗi cách đầu vào là 0,2 BTC) Lấy một giá trị nhất định giao dịch bao gồm hai đầu ra (0,7 BTC và 0,09 BTC) làm ví dụ, một loạt giả định có thể được đưa ra về nó. Trước tiên, hãy xem khoản thanh toán diễn ra - người gửi gửi một trong các kết quả đầu ra cho ai đó và sau đó nhận được tiền lẻ. Giao dịch này sử dụng bốn đầu vào, do đó đầu ra lớn hơn sẽ được chuyển đến người nhận. Xin lưu ý rằng chúng tôi cần trả phí cho người khai thác và sản lượng sẽ mất 0,01 BTC.
Người gửi cũng có thể muốn tạo một UTXO lớn, từ đó kết hợp các đầu vào nhỏ để đạt được đầu ra mục tiêu là 0,7 BTC.
Chúng ta cũng có thể giả định rằng mỗi đầu vào đều được ký độc lập. Giao dịch này có tối đa bốn bên ký đầu vào. Đây chính xác là cách CoinJoin hoạt động.
Ý tưởng cốt lõi là tạo ra các giao dịch thông qua sự cộng tác của nhiều bên, trong đó mỗi bên cung cấp đầu vào và đầu ra dự kiến. Khi tất cả đầu vào được trộn lẫn, những đầu vào khác không thể xác định được sự tương ứng giữa đầu ra và người dùng. Chúng ta hãy nhìn vào sơ đồ sau:
Như trong hình, bốn người tham gia Muốn phá vỡ mối tương quan giữa các giao dịch. Họ phối hợp với nhau (hoặc thông qua một điều phối viên chuyên trách) để khai báo đầu vào và đầu ra mà họ muốn đếm.
Điều phối viên sẽ lấy tất cả thông tin này và đưa nó vào một giao dịch mà mỗi người tham gia sẽ ký trước khi phát nó lên mạng. Sau khi được người dùng ký, giao dịch không thể thay đổi cho đến khi nó trở nên không hợp lệ. Vì vậy, điều phối viên không thể ăn cắp tiền.
Giao dịch này hoạt động như một hộp đen để trộn mã thông báo. Đừng quên, chúng ta hủy UTXO ban đầu để tạo UTXO mới. Mối liên hệ duy nhất giữa UTXO cũ và mới là chính giao dịch và tất nhiên chúng ta không thể phân biệt được những người tham gia. Tình huống lý tưởng là chỉ cần biết rằng có những người tham gia cung cấp đầu vào và có thể là chủ sở hữu của kết quả đầu ra.
Mặc dù vậy, chúng tôi cũng không thể chắc chắn 100%. Nhìn vào giao dịch được mô tả ở trên, ai có thể chắc chắn rằng có bốn người tham gia? Hay chỉ có một người gửi tiền đến bốn địa chỉ của anh ta? Hay hai người mỗi người mua hai lần và mỗi địa chỉ nhận được 0,2 BTC? Cũng có thể có bốn người đã gửi tiền cho những người tham gia mới hoặc số tiền đó đã quay trở lại với cá nhân đó. Chúng tôi không thể xác định các trường hợp cụ thể.
Sự ra đời của việc triển khai CoinJoin đủ để khiến mọi người nghi ngờ của các phương pháp phân tích giao dịch. Trong nhiều trường hợp, bạn có thể suy ra rằng CoinJoin đã xảy ra nhưng không thể xác định chủ sở hữu đầu ra. Khi công nghệ này trở nên phổ biến hơn, giả định rằng tất cả đầu vào đều thuộc sở hữu của cùng một người dùng sẽ dần yếu đi. Trong một hệ sinh thái rộng lớn và toàn diện, quyền riêng tư đã được cải thiện đáng kể.
Trong ví dụ trên, chúng tôi giả sử rằng tập hợp ẩn danh của giao dịch có 4 người đầu vào và chủ sở hữu đầu ra có thể là bất kỳ ai trong số 4 người này. Bộ ẩn danh càng lớn thì xác suất tìm thấy sự tương ứng giữa giao dịch và chủ sở hữu ban đầu càng thấp. May mắn thay, giải pháp CoinJoin gần đây cho phép hàng chục người dùng kết hợp đầu vào theo cách không cần tin cậy, cải thiện đáng kể "khả năng từ chối". Gần đây, CoinJoin đã thực hiện thành công hàng trăm giao dịch.
Đối với những người dùng rất quan tâm đến quyền riêng tư, trộn tiền tệ là một phương pháp bổ sung rất hiệu quả. Không giống như các nâng cấp về quyền riêng tư được đề xuất như giao dịch bí mật, công nghệ này tương thích với các giao thức hiện có.
Đối với những người dùng tin tưởng vào tính chính trực và phương pháp hiệu quả của bên thứ ba, dịch vụ trộn tiền tệ rất đơn giản và thuận tiện. Đối với những người dùng thích giải pháp có thể xác minh hoặc không giám sát, CoinJoin là một lựa chọn tuyệt vời. Người dùng am hiểu công nghệ có thể loại bỏ các cơ chế phức tạp hơn theo cách thủ công hoặc bằng cách sử dụng các công cụ phần mềm. Ngày nay, khi nhu cầu về quyền riêng tư ngày càng tăng, những công cụ như vậy sẽ ngày càng trở nên phổ biến trên thị trường.