Address

您可以將交易從非本地隔離見證發送到本地(bech32)隔離見證地址嗎?

  • December 17, 2020

假設我有一個帶有非本地 segwit 地址的錢包(前綴為 3-like multisig)。

我可以將我的 utxos 從這個地址發送到本地 segwit (bech32) 地址嗎?

錢包需要能夠解碼 bech32 地址並在發送資金時建構適當的本機見證輸出。

鑑於您的(假設的)錢包已經可以花費 P2SH(見證)輸出,它很可能可以或將很快支持原生 bech32 地址,但不能保證後者必須得到第一個支持。

所有腳本類型都兼容

這在某種程度上取決於錢包客戶端,因為比特幣核心程式碼中沒有任何內容可以阻止任何地址類型發送到任何其他地址類型。地址/UTXO 的類型取決於它的發送方式。曾經在 SegWit 地址之間進行交易但進入舊地址的代幣將創建一個舊 UTXO。

常見場景

當您收到比特幣 (UTXO) 時,它來自其中一種協議。您的 SegWit 地址可以從舊地址接收硬幣;但這並沒有“升級”代幣以從 SegWit 改進中受益,它們仍然是傳統的“代幣”。混合腳本交易是一項功能,使您能夠在可能來自不同腳本類型的單個交易中花費 UTXO。

交易範例:

  • 您從舊地址收到 0.5 BTC 到 SegWit 地址。
  • 你已經有 0.5 BTC 是使用 SegWit 發送的。
  • 您從啟用 SegWit 的錢包發送 1 BTC 交易,該交易同時使用舊版和 SegWit UTXO。已經是 SegWit 的 0.5 BTC 將利用交易費用更新等優勢。傳統的 UTXO 不會。
  • 接收地址中產生的 1 BTC 是 SegWit UTXO,代幣的任何進一步移動都將受益於 SegWit 的改進,除非在某個時候它們被發送回舊地址,在那裡它們再次成為“遺留代幣”

所以是的,你可以將任何協議類型的 UTXO 發送給任何其他協議類型,但你的錢包客戶端必須能夠辨識地址協議才能發送給它。即使您使用的錢包客戶端只有舊地址且不支持 SegWit,原始碼也是向後兼容的,您將收到硬幣,但在花費 UTXO 時,您無法利用 SegWit 的改進。

引用自:https://bitcoin.stackexchange.com/questions/83693