加密貨幣裡面的output,中文譯作輸出,這個概念到底什麼意思,又為什麼門羅幣轉帳後餘額顯示錯誤要等待二十分鐘 — LocalMonero

加密貨幣裡面的output,中文譯作輸出,這個概念到底什麼意思,又為什麼門羅幣轉帳後餘額顯示錯誤要等待二十分鐘

发布时间:
By Diego Salazar

像其它加密貨幣一樣,門羅幣使用output作為資金核算的手段,中文中output經常被直譯為輸出,本文中輸出就是output,output就是輸出.很多精通加密貨幣的用戶可能已經聽說過這個術語,但是並不一定明白它的意思和工作方式. 正如我們在另一篇關於環形簽名的文章中所探討的那樣,output是區塊鏈上交易雙方實際交換的單位. 類似于美元的鈔票,但是金額不是固定的面額,可以把output理解成不同面額的鈔票.

讓我們舉幾個現實生活的例子幫助大家理解區塊鏈的output和轉帳邏輯,假設你工作的薪水為每小時16美元,你工作一小時後,老闆給你支付這16美元的報酬,分別由一張一美元的鈔票,一張五美元的鈔票和一張十美元的鈔票, 你收到了16美元,但錢包裡有3張不同的鈔票組成.如果你想向某人支付6美元,則可以使用5美元和1美元,或者錢包裡的10美元,讓對方找零4美元,但是如果你想向某人支付8美元,則只能使用10美元,然後獲得2美元的找零. 最後一種情況,如果你想付給某人14美元,則必須使用這三張鈔票,並且會收到2美元的找零,但是這個過程中,當你交出這三張鈔票,並且對方還沒有給你找零時,錢包那時候沒有錢,直到把找零放回錢包,錢包裡才會顯示2美元.

門羅幣的工作與此類似. 假設你經營一家商店,銷售了三個不同的商品. 假設銷售收入分別為1.5 XMR,2.25 XMR和5.25 XMR,總計9 XMR,但是你的錢包中的9xmr,其實是這三個面額不用的門羅幣組成的. 這時候再假設一種情況,你現在要向某人支付3 XMR. 那麼你有兩種方法,一個是可以把錢包裡面額為5.25 XMR的門羅幣給他,然後他給你找零1.75 XMR,也可以將錢包裡的1.5XMR和2.25 XMR的output合併給他,然後他找給你的0.75 XMR.

但是,一旦你發送交易,你所使用的那個output將被置於鎖定狀態,這意味著在你收回找零前它們是不可使用的,這時候你錢包裡的餘額也是顯示不準確的.門羅幣主網協議層會在10次確認後,也就是現實生活裡大約20分鐘後解鎖資金,也就是退還你的找零. 就像一旦您將百元大鈔票從錢包中遞給收銀員一樣,你將無法再次使用這張鈔票,直到你從收銀員那裡收到他找給你的零錢,你錢包的餘額才會正常,你也才能再次支付下一單.

讓我們回到向某人發送3 XMR的例子,假如你給了對方5.25 XMR輸出. 現在要等20分鐘等他給你找零回來2.25xmr,在主網確認前,你都無法使用它,錢包餘額這時候也是不准的. 但是等待找零的這個過程中,你仍然可以使用1.5 XMR和2.25 XMR的輸出,因為這些輸出還在你的錢包裡. 再用美元的例子重複一遍這個故事,你錢包裡有三張鈔票,面額1元,5元,10元,也就是說你一共有16元,如果你像上文舉例中那樣向某人支付了8元,理論上16元減去8元,還剩8元可以繼續買東西,可在支付的過程裡,你只能把你的10元鈔票給對方,假設店員找零錢的時間要等20分鐘,那麼這20分鐘裡,你的錢包餘額只有1元和5元可以用,也就是6元,而不是8元,直到找零結束後,錢包才能恢復正常餘額,但在等待找零的過程裡,你仍可以用錢包裡沒花的1元和5元鈔票買東西. 門羅幣和其它加密貨幣的output,和上面的紙幣同樣的原理.

對於新的門羅幣用戶而言,這點通常讓人困惑. 假設某個用戶可能在錢包中只有一個來自交易所或朋友的輸出. 假設此輸出金額為20 XMR.他們的錢包裡沒有其他輸出.他們現在想向他們最喜歡的兩個慈善機構捐款.當他們將5 XMR發送給第一個慈善機構,然後發現錢包餘額不正確,雖然理論上他們手裡還剩15個 XMR,但他們無法立即轉帳另一筆捐贈給第二個慈善機構. 讀者到這裡可能已經猜到了,這是因為他的15 XMR被鎖定了,換句話說,他錢包裡的20元花了5元,可剩下的15元找零要20分鐘以後才到賬,除非找零被退回,否則無法使用. 反之,他們才能夠發送第二筆轉帳.

這裡再囉嗦一遍,假如他錢包裡的20xmr不是由一個輸出組成的,而是多個output,例如兩個面額10 XMR輸出,他就不會有這個問題. 他將能夠捐了5個XMR後,無需等待,馬上捐第二個,即便第一次捐贈的找零要20分鐘以後才能解鎖,但是錢包裡的第二次捐贈可以使用另一個10個XMR 的output完成.這裡譯者額外舉一個例子,想像一下,你有20元去買早點,你花了5元買包子,理論上你有15元可以繼續去買煎餅果子,可你的20元是一張面額為20元的紙幣組成的,包子店老闆太忙要20分鐘之後給你找錢,這個過程裡,你就不能去買煎餅果子,可如果你錢包裡的20元,是由兩個10元組成的,那麼你花5元買包子,即便老闆找錢很慢,可你錢包裡還有另一張10元,可以去買煎餅果子無需等待.所以output,中文裡面的輸出,不應該理解成金額,而是這裡有不同面額的紙幣.

一些加密貨幣錢包具有被稱為output管理的功能,該功能不光向使用者顯示其當前擁有的餘額,還展示了這些餘額是由哪些輸出組成的,該錢包還允許他們選擇在支付的時候,選擇使用錢包裡的哪些輸出.

到目前為止,門羅幣的 GUI錢包會自動為用戶選擇輸出,因為用戶自己選擇的輸出通常會引起混亂,或者在某些情況下會損害隱私. 但是,正在開發中的錢包,例如新的Feather錢包專案,將包含這些輸出管理功能.

說了好半天發送方的那部分了,其實在接收端也發生了一些令人著迷的事情. 回到之前的例子,我們向某人發送3 XMR並在交易中使用1.5 XMR和2.25 XMR的輸出.接收方並不會接收到1.5 XMR和2.25 XMR的兩個輸出, 而是他們會直接收到一個3 XMR輸出.

在後臺,門羅幣協議層將用於支付的所有輸出合併,只向接收方提供付款額的一個輸出,然後將另一個零錢輸出發送回發送方. 因此,無論發送人是否使用兩個,三個或十個輸出來發送轉帳,收款人都是收到一個output,同時發送者也將收到一個作為找零的一個輸出.

我們希望這篇文章可以消除一些有關輸出概念的混亂 概述協議層內部會計的工作方式,以及澄清普通使用者在遇到鎖定資金時面臨的疑惑.在另一篇文章中,我們將探討如何管理你的輸出,以最大程度地減少在發送另一筆交易之前必須等待解鎖資金的時間.


進一步閱讀