Skip to main content
Share Your Experience: Take the 2024 Developer Survey

Questions tagged [segregated-witness]

A 2017 softfork that introduced a new transaction format to fix third-party transaction malleability and increased the blocksize.

Filter by
Sorted by
Tagged with
11 votes
2 answers
4k views

How do virtual size, stripped size and raw size compare between legacy address formats and native segwit?

This answer states that SegWit doesn't reduce transaction size. If this is true, why is it cheaper to send a SegWit transaction?
ecurrencyhodler's user avatar
7 votes
1 answer
2k views

Why does BIP141 define both virtual transaction size and weight?

Why does BIP 141 (segwit) define both virtual transaction size and weight? Weight seems to be just four times virtual transaction size (or vice versa, depending on what you define first). Why are ...
Karel Bílek's user avatar
  • 2,705
4 votes
1 answer
2k views

Can you break down what data is encoded into a bech32 address?

Can you break down what data is encoded into a bech32 address? e.g. bc1qw508d6qejxtdg4y5r3zarvary0c5xw7kv8f3t4 How do bech32 addresses on testnet, regtest, signet compare?
Michael Folkson's user avatar
1 vote
1 answer
2k views

What are the parts of a Bitcoin transaction in segwit format?

I know that pre-segwit transactions looked like the following (This is the hash of the transaction in block 170 - the 10000 bitcoin pizza exchange): ...
Jamo's user avatar
  • 167
22 votes
2 answers
13k views

Is there a difference between bytes and virtual bytes (vbytes)?

In an Optech newsletter, size is referred to using vbytes. Is there a difference between vbytes and bytes? If so, what is the difference?
AdaptiveAnalysis's user avatar
4 votes
2 answers
2k views

What's the blocksize limit after segwit and how do legacy nodes deal with segwit transactions?

Normally, I heard that the bitcoin blocksize is 1MB, but with the Segwit update the blocksize can be up to 4MB, so we should say that the blocksize is 4MB, right? Moreover legacy nodes only receive ...
Anh Dũng Lê's user avatar
14 votes
1 answer
3k views

Is SegWit a blocksize increase or more efficient use of blockspace?

This question gets asked frequently on reddit, and I think it would be beneficial to have a canonical answer here: Is SegWit a blocksize increase or more efficient use of blockspace?
Murch's user avatar
  • 75.7k
22 votes
1 answer
2k views

How is SegWit a soft fork?

Reading this section of BIP144, I noticed the followng statement: Parsers supporting this BIP will be able to distinguish between the old serialization format (without the witness) and this one. ...
Simone Bronzini's user avatar
0 votes
1 answer
438 views

What is the size and weight of a wrapped segwit single-sig input?

I'm looking for a detailed explanation of the exact weight, vsize and serialized length of a P2SH-P2WPKH (wrapped-segwit single-sig) input, in the same vein as How big is the input of a P2PKH ...
Murch's user avatar
  • 75.7k
18 votes
1 answer
1k views

What is "segregated witness" and how can it improve network scalability?

I've just heard about it, and it is claimed to be a "turning point" in the block-size debate. What is "segregated witness?" how does it work? How can it be used for improving network scalability? ...
shx2's user avatar
  • 803
13 votes
2 answers
976 views

Follow-up to Segwit: Arbitrary data storage in witness?

In 2017 a question about Segwit: Arbitrary data storage in witness? asked whether people wanting to store more data in the blockchain than OP_RETURN allows could instead store data in the witness ...
RedGrittyBrick's user avatar
10 votes
3 answers
1k views

Why is the witness data fee discounted by a factor of four?

I've read that it encourages users to consolidate UTXO sets. How would it be doing that?
Murch's user avatar
  • 75.7k
7 votes
2 answers
2k views

SegWit transaction fee/byte

For transaction not spending SegWit outputs it's straightforward: if I have 1000 Satoshi fee set for 500 byte raw transaction, I end up with 2 s/b fee. How about transaction containing witness data? ...
Average Joe's user avatar
25 votes
1 answer
13k views

How is segwit2x different from segwit?

Today everybody got the news about the potential segwit2x adoption. However, I am trying to understand: while both of them based on the same segwit principals how they are different? Is it about the ...
Sig Touri's user avatar
  • 457
16 votes
2 answers
1k views

What is the User Activated Softfork (UASF) proposal? How do its risks compare to hardforks?

The Bitcoin community is abuzz with discussion about shaolinfry's proposal of a UASF to activate SegWit as an alternative to the Version Bits activation. I've seen frequent and extensive discussion of ...
Murch's user avatar
  • 75.7k
15 votes
4 answers
22k views

Are all three Bitcoin address types interoperable (legacy, segwit, native segwit)?

is it possible to send transactions back and forth between all 3 address types (legacy, segwit, native segwit-bech32)? Or is one of them not able to send to another?
johnsmiththelird's user avatar
12 votes
2 answers
3k views

How to get addresses from scriptPubKey in segwit transactions?

I'm running through raw transaction data, and I'd like to be able to gather addresses (where possible). So far, I've made this diagram to help me understand when it's possible to figure out addresses ...
inersha's user avatar
  • 3,155
12 votes
2 answers
4k views

Where is the Signature stored in a SegWit transaction?

I understand that SegWit makes transaction blockdata smaller, by not storing the signature in the Block, so that can fit more transactions in 1MB. This is because the signature is not anymore stored ...
laizess's user avatar
  • 319
9 votes
2 answers
4k views

What is block weight and how is it different from block size?

While reading about BIP141, I have encountered the following options: Block creation options: -blockmaxweight=<n> Set maximum BIP141 block weight (default: 3000000) -blockmaxsize=<n> ...
Sig Touri's user avatar
  • 457
7 votes
2 answers
3k views

How do transaction costs compare between Bech32 addresses and legacy Bitcoin addresses?

Now that Electrum 3 supports Bech32 addresses for segwit, when sending coins to a legacy address are fees higher or cheaper?
Patoshi パトシ's user avatar
7 votes
1 answer
511 views

What are the different upgradeability features in the BIP-Taproot (BIP 341) proposal?

What are the different upgradability features in the BIP-Taproot (BIP 341) proposal? Why are there so many upgradability paths? Is there something an annex can do that a leaf version can't? This ...
Michael Folkson's user avatar
3 votes
1 answer
1k views

After Segwit Activation, what is the largest block size possible?

The code says MAX_BLOCK_SERIALIZED_SIZE = 4000000, but that is actually not a actually consensus rule as stated here: https://github.com/bitcoin/bitcoin/issues/10289 The actual consensus rule is ...
Jimmy Song's user avatar
  • 7,759
2 votes
1 answer
299 views

Extract lightning network funding transactions with python bitcoin blockchain parser lib

My ultimate goal is to parse funding transactions (as well as channel closes in a later step) from the blockchain. In order to do so I wanted to start with a funding transaction and disect it. ...
Rene Pickhardt's user avatar
15 votes
1 answer
12k views

How to generate SegWit address

How do I generate a SegWit address using Bitcoin Core CLI? Also will I be able to redeem those outputs and send them to a "legacy" address? If so, will this second transaction be accepted by older, ...
Paul's user avatar
  • 361
9 votes
2 answers
2k views

How does SegWit reduce transaction size, when the signature is simply moved to another part of the transaction?

This video explains that the signature is moved out of the input section and moved to the new one called the witness. From what I can tell, the witness signature is still contained in this transaction ...
robinnnnn's user avatar
  • 193
8 votes
2 answers
1k views

What was the number of the block in which SegWit got activated? And first transaction?

It was definitely on August 24th 2017, but not sure about the block number. Many sources reference block 481,822; but others state 481,824. Also, even if this was the first block to allow segwit ...
knocte's user avatar
  • 1,784
7 votes
1 answer
2k views

Will SegWit allow for m of n multisig with very large n and m?

By reading this answer, I understand that in m-of-n multisig addresses, m and n are limited by the maximum size allowed by the P2SH redeemScript (i.e. 520 bytes). However, in this section of BIP141, ...
Simone Bronzini's user avatar
6 votes
1 answer
2k views

What exactly is hashed and signed in a segwit transaction

I have an unsigned raw segwit transaction on my regtest network: ...
JBaczuk's user avatar
  • 7,418
6 votes
1 answer
2k views

Generate paper wallet SegWit address

I am trying to generate SegWit paper wallet address from WIF: My WIF is L5mHKZsCLS27nSoGM3RdAwuxjvg7XhJdP25LgqdXe6zF11wpWdbT. I am converting WIF to compressed public key: Compressed public key: ...
Jakub Fedyczak's user avatar
5 votes
2 answers
2k views

Why would a miner put an OP_RETURN in a coinbase transaction?

I’m looking at this coinbase transaction. I'm confused why there are two outputs and why one of them is labelled with OP_RETURN.
arshbot's user avatar
  • 1,788
5 votes
1 answer
2k views

Redeem script. script hash, witness script and witness program

I have a little confusion about naming in Bitcoin. Redeem script is the conditions that will be satisfy. For example P2PKH inside P2SH OP_DUP OP_HASH160 <PubKHash> OP_EQUALVERIFY OP_CHECKSIG ...
monkeyUser's user avatar
5 votes
2 answers
2k views

Birthday attack on P2SH

The Segwit Benefits document has this to say about P2SH security for base transactions: Multisig payments currently use P2SH which is secured by the 160-bit HASH160 algorithm (RIPEMD of SHA256). ...
Rich Apodaca's user avatar
  • 2,421
5 votes
2 answers
283 views

Is a transaction with a non-segwit input STILL considered malleable? If so how?

Below are a few examples of witness malleability, along with reasons why I believe they are no longer valid: DER Malleability For every DER signature with (r,s), there exists 2 valid 's' values -> ...
Peter's user avatar
  • 115
4 votes
2 answers
326 views

Is there a reason big Bitcoin companies wouldn't use only SegWit transactions?

As I understand, SegWit allows anyone to create a SegWit address where they can send their bitcoins and transact from that wallet just as easily as they would with a traditional address. The SegWit ...
ThePiachu's user avatar
  • 43.1k
3 votes
1 answer
862 views

How to calculate txid for segwit transactions?

I'm having difficulty calculating txid for recent transactions. I followed bip-141 at https://github.com/bitcoin/bips/blob/master/bip-0141.mediawiki For the first transaction in the first block found ...
fon's user avatar
  • 77
3 votes
1 answer
570 views

how to get address from transaction with empty ScriptSig?

look here https://blockchain.info/tx/d4223672c9043c17a2775abde858778fca38b53152e165757188ab747850770e why does address start with bc1q... ? Is it some standart? How can I derive this value from ...
light_keeper's user avatar
3 votes
2 answers
468 views

Which kinds of transactions show quadratic signature-hashing scaling?

It has been stated: A major problem with simple approaches to increasing the Bitcoin blocksize is that for certain transactions, signature-hashing scales quadratically rather than linearly. https:/...
Rich Apodaca's user avatar
  • 2,421
2 votes
1 answer
525 views

What is ment by the "value of the output spent by this input" in BIP 143?

I'm looking into BIP 143 and I'm confused by item 6 in the specification of the transaction digest algorithm. It says: The item 6 is a 8-byte value of the amount of bitcoin spent in this input. I ...
tsusanka's user avatar
  • 365
2 votes
2 answers
359 views

How can Segwit increase transaction throughput if the same amount of data is stored in the blockchain?

I'm posting this after reading the answers to this: Where is the Signature stored in a SegWit transaction? I've found out from reading that, that in Segwit, the "witnesses" (or signatures) that ...
wlad's user avatar
  • 177
2 votes
1 answer
761 views

How can a third party spend BCH accidentally sent to a BTC address?

I transferred BCH to an Electrum wallet address and haven't ever received it because Electrum uses only BTC. As I have been trying to recover it, I looked up the transaction on explorer.bitcoin.com ...
t1zzee's user avatar
  • 31
1 vote
1 answer
3k views

How to get legacy address and private key from Segwit P2SH address?

I have a Segwit P2SH address (starting with 3...) with the corresponding private key and need to obtain the legacy address (starting with 1...) and the private key. Is this possible?
JohnDoe's user avatar
  • 13
17 votes
2 answers
479 views

How thoroughly has Segregated Witness been tested?

I've encountered claims that Segregated Witness was "not really tested" and is being "rushed". It is my understanding that SegWit had been running on Elements for more than half a year already, and ...
Murch's user avatar
  • 75.7k
13 votes
1 answer
5k views

With 100% segwit transactions, what would be the max number of transaction confirmation possible on a block?

With 100% segwit transactions, what would be the max number of transaction confirmation possible on a block? And, how many utxo can be updated by a block full of segwit transactions?
vi.su.'s user avatar
  • 1,852
9 votes
2 answers
3k views

What the difference between old segwit (3) and new segwit address (bc)?

i'm not that kind of person who understands cryptography and math, can you tell me simply the main purpose of new segwit address? are transactions fee the same for new segwit (bc1)? instead of "Old ...
JackSmith's user avatar
  • 103
9 votes
1 answer
9k views

Difference between a SegWit address and a P2SH address

Let there be an address 3ABCDEFGHJKDJHDH.... How can I understand if it's a SegWit address or a MultiSig address?
MCCCS's user avatar
  • 10.2k
8 votes
3 answers
10k views

What is the Witness and what data does it contain?

I've learned about the Segregated Witness but couldn't find info on breaking it down. I know usually when legacy addresses are used the public keys for example will be under Scriptig. With P2SH, I ...
Robert's user avatar
  • 351
7 votes
1 answer
434 views

Will cross-input signature aggregation need a new output type?

If cross-input signature aggregation were to get implemented in a subsequent soft fork after Taproot's activation, would its use require a new output type?
Murch's user avatar
  • 75.7k
6 votes
2 answers
750 views

Why are P2WSH addresses larger than P2SH addresses?

One would, perhaps naively, assume that both addresses are hashes of scripts and therefore ought to be the same size.
Bertram Lund's user avatar
6 votes
2 answers
1k views

Segwit transaction from mixed addresses (segwit and non-segwit)

Is it possible to have partly segwit transactions? I.e. some utxos from segwit addresses and some from non-segwit addresses. Asking for the situation of Bitcoin core v0.15 wallet with coins in segwit ...
Cyrus's user avatar
  • 117
6 votes
1 answer
1k views

Qualities of "Pay to Nested Witness Key Hash"

The lightning dev tutorial mentions the np2wkh or Pay to Nested Witness Key Hash address type, and I would like to find out more about it, so far without success. Can anybody explain how they are ...
Jasper's user avatar
  • 163