彭育興 魏波

摘? ?要:比特幣是一種去中心化的數字貨幣,憑借其匿名性而被廣泛使用,已經在全球范圍內產生影響。比特幣作為目前最著名且用戶最多的數字貨幣,用戶使用偽名在公開的賬本中記錄完整的交易歷史,這是一種不使用中心化銀行并且能夠防止雙重花費攻擊的方法。如果把用戶的偽名與他們在現實社會中的身份相關聯,將對比特幣的匿名性造成嚴重的威脅。在目前的混幣服務中,混淆服務提供商仍然可以獲取輸入和輸出地址之間的對應關系,所以混幣服務器能夠跟蹤比特幣用戶的交易記錄。為了解決這個問題,文章提出了一種新的交易混淆方案,以確保混幣服務器無法獲得任何用戶的輸入和輸出地址之間的對應關系。文章使用一個環簽名算法來確保混幣服務器無法歸納指定交易與輸出地址的關系。環簽名能夠確保簽名是由環中的某個用戶產生的,并且不會泄漏有關簽名者的任何信息。此外,方案與現有比特幣協議完全兼容,易于根據用戶數量進行擴展。
關鍵詞:比特幣;數字貨幣;區塊鏈;匿名性;硬幣混淆;環簽名
中圖分類號:TP309.2? ? ? ? ? 文獻標識碼:B
Abstract: Bitcoin is a decentralized digital currency, widely used for its perceived anonymity property, and has surged in popularity in recent years. Bitcoin publishes the complete transaction history in a public ledger, under pseudonyms of users. This is an alternative way to prevent double-spending attack instead of central authority. Therefore, if pseudonyms of users are attached to their identities in real world, the anonymity of Bitcoin will be a serious vulnerability. It is necessary to enhance anonymity of Bitcoin by a coin mixing service or other modifications in Bitcoin protocol. But in a coin mixing service, the relationship among input and output addresses is not hidden from the mixing service provider. So the mixing server still has the ability to track the transaction records of Bitcoin users. To solve this problem, We present a new coin mixing scheme to ensure that the relationship between input and output addresses of any users is invisible for the mixing server. We make use of a ring signature algorithm to ensure that the mixing server can't distinguish specific transaction from all these addresses. The ring signature ensures that a signature is signed by one of its users in the ring and doesn't leak any information about who signed it. Furthermore, the scheme is fully compatible with existing Bitcoin protocol and easily to scale for large amount of users.
Key words: bitcoin; digital currency; blockchain; anonymity; coin mixing; ring signature
1 引言
數字貨幣作為一種分布式的加密貨幣而聞名世界。自從2008年中本聰發明比特幣以來,數字貨幣已經在學術界和工業界中備受關注[1]。如今,比特幣已經成為擁有約600億美元市值的數字貨幣代表。預計到2020年將達到500多萬用戶。目前,比特幣的匯率已經從2016年中期的600美元左右漲至4000美元。
在傳統的電子支付系統中,有一個值得信賴的中心化代理來維護對交易的共識。它可以由銀行、中心認證機構(CA)、公證人或任何其他可信服務來擔任。使用這種交易驗證方式會增加交易成本,因為第三方會收取一定的手續費作為報酬。為了避免使用中心化信任機構而產生的高額手續費,并且取消中心化機構的貨幣發行權,比特幣采用對等網絡結構成為一種分布式數字貨幣。所有的比特幣都是在整個網絡中由系統產生,不可能因為比特幣數量的增加而導致通貨膨脹。比特幣的發行和流通都是通過其對等網絡中的交易記錄來實現的。礦工通過破解一定難度的算術難題來產生比特幣。加密算法保證了比特幣中每筆交易的安全性。只有擁有對應私鑰的用戶才能使用其擁有的比特幣,并且它們只能在一筆交易中使用而不會出現重復。比特幣網絡中不存在傳統貨幣系統中的銀行等監管機構。