比特幣的轉賬是怎麼進行的?
那我們接下來用coinb.in來演示一下,比特幣的轉賬到底是如何發送的。
打開 https://coinb.in/ 左起第一個菜單是New(新建),選Transaction(轉賬)
一筆比特幣的轉賬,需要由兩個部分組成:Input(輸入),Output(輸出)
也就是說,一筆轉賬由A轉給B,那麼A就是輸入,B就是輸出。
先看Input(輸入),我們需要填上的是一些Transaction ID,而不是錢包地址,也就是我們之前說的,比特幣錢包裡面有多少錢,是沒有存在任何地方的,所以你想轉給別人的錢,一定是先來自某個之前的交易(另外的人轉給你了,你才有錢給別人)。所以比特幣的錢不會無根而生,一定有來龍去脈。
那麼,我們先隨便填一個交易ID,然後填上這個交易的數量(Amount),假設是1.1個BTC,接下去再填輸出(Output)。
輸出就容易理解一些,往哪個地址(Address)上轉多少錢。一筆交易可以有多個輸入,多個輸出。比如我們這次隨便再找個地址,填上1個BTC。下面它就自動幫你算出了,剛才輸入是1.1BTC,現在輸出是1BTC,那你的交易手續費(礦工費)等於是付了0.1BTC。
點擊Submit(提交),就能看到綠色框裡面就是生成的這筆交易的數據了。注意,這只是生成了交易的信息,這個時候交易並沒有發生!我剛剛也沒有用到私鑰,而且地址和交易ID都是隨便亂寫的。綠色框右上角有個二維碼按鈕,點了就會出來二維碼,也就是說,我們可以用冷錢包的手機來掃碼,獲得這個交易的數據,以便用私鑰加密簽名。
然後,我們可以到冷錢包裡保證的這個網頁上(假設通過掃二維碼,把這段交易信息copy過去了)。點菜單裡面的Sign(簽名),就可以用你的私鑰,對剛剛這段交易信息進行加密。等於就是你認可了這個交易的發生。
而這個菜單按鈕旁邊的Broadcast(廣播),就是可以把你簽名之後的交易信息從冷錢包裡再生成二維碼,通過掃碼轉移到聯網的電腦上,最後廣播到比特幣網絡中。全世界的礦工都能接收到這筆交易,大家會先驗證這個交易是否合法(比如輸入是否存在『雙花』,說白了就是錢之前已經花了,轉賬餘額不足),如果一切正常,然後就打包。
你這筆交易被打包,且有多次確認後,就可以認為轉賬交易已經成功。因為全世界都見證了這個交易的發生,再也不能被撤銷。
這是最原始也是最安全的錢包使用方式,但是也是最『麻煩』的方式。如果你對當前使用環境的安全有保證,這都是可以在線完成。而且coinb.in也提供了更簡單的『錢包』管理方式。只需要用你自己的郵箱和密碼(密碼不是私鑰),它能幫你自動用算法生成地址與私鑰,完成錢包管理。
比如我隨便輸一個郵箱和密碼(2次確認),點提交就好。這並不是在『註冊帳號』,因為你可以拔掉網線、關掉WIFI也能完成這個操作。沒有任何地方會幫你存密碼,你也永遠無法找回密碼。如果忘記了密碼,也沒有備份私鑰,裡面的錢就丟了。(說『丟』了有點不合適,應該是你能眼睜睜看到錢就在那裡,但是永遠無法花出去——轉給別人)
這個錢包裡,就是大家熟悉的,填上給哪個地址轉多少錢,給多少礦工費。這裡點發送就是真的發送了哦!因為它會自動幫你完成簽名、廣播的操作。
比特幣轉賬多久能到?
這是很多人用比特幣轉賬不習慣的地方。它不像你用支付寶轉賬,咻!一下對方就收到了。因為支付寶是中心化的服務,阿里說你轉了就是轉了,阿里服務器掛了就沒了。
你能在網上看到當前比特幣網絡裡有多少未被確認的交易。目前是4萬多筆,半個月前擁堵的時候,這個數字是16萬筆。也就是說,當前有很多交易,都是還沒有被確認和打包的。
訪問這裡,你能看到下面biu~biu~biu的不停有交易被廣播出來。
https://blockchain.info/unconfirmed-transactions
所以你的交易廣告給全世界人聽,但是需要礦工把它們都打包進區塊(等於記在賬本里),才算是有效。一般要等這個區塊之後,又在它的『鏈』上打包了3個以上的區塊(通常大家說的是6次確認),對方才承認到賬了。
這個時間就不一定了。它跟幾個因素有關:
-
比特幣網絡預期是10分鐘一個塊,但不是絕對的,但有可能當前礦工們運氣都不好,一個小時都不出塊(也可能運氣好,一分鐘就挖出塊了)。
你給的礦工費也會決定速度。因為這麼多未打包的交易,礦工肯定是按照給錢的多少來排,給錢越多,排在越前面,先打包的可能性越大。如果給的太少。。。呵呵,永遠輪不到你也是有可能的。那你的這筆交易就一直處於未確認的狀態,不過放心,錢丟不了。怎麼辦?加入小密圈有機會小碼哥告訴你。
閱讀更多 比特幣定投日記 的文章