Segregated Witness, Segwit - Discussion

Please could I ask a couple of questions
Correct me if I’m wrong:
1)even though it has no verification of identity, a segwit transaction is spendable without looking for identity. Does this mean that because the outputs have identified wallets, there is no need for identification?

2)I have only used an exchange so I do not know how somebody signature would look if it came to me. How are people being able to change a signature sent to them. Is it not encrypted and read-only to the receiver?

Thanks :slight_smile:

I’m not sure what you mean, a segwit address is only spendable with the corresponding private key (or keys if its a multisig), same as old addresses. In either of them there are no identities present.

The signature could be changed before the tx was confirmed, while the tx was still in the mempool for example. This was possible because the unlocking script is owned by the receiver so he was able to change it. If you want to learn this more in detail I recommend you check out out Bitcoin Programming course. :slight_smile:

1 Like

Hi Filip
I guess a lot of changes have happened since the course was written. However, one is clear that a popularity of the bitcoin blockchain has dramatically increased. How is the problem of scalability sorted nowadays?

Hello Pilip!

Thank you for explaining the way how segwit solved the problems of malleability. But I would not count the problem with the full block as solved. How much space gain in percentage?

Don’t misunderstand me please, I am not a religious maximalist but seeing that with cold developer eyes removing the signature (although is not 100% necessary) you are breaking the ‘standard’ and using fields that were not intended to be filled with more transactions. Sounds like a cheap-workaround without future because the nodes are going to be full again.

The problem with the Malleability I had solved it in the wallet rather in the node. Correct me pls but why people send two transactions is because the wallet miss-calculated the balance.

regards,
Daniel

There are second layer solutions being developed like the Lightning network which basically has unlimited throughput. :slight_smile:

Segwit enabled second layer solutions to be developed much safer and easier. Lightning network provides unlimited scaling.

I don’t know what you mean. If a user sent a wrong balance its his fault, so yes he must create another tx. :slight_smile:

1 Like

I heard about it. Can you give me a link to read more deeper.

I’m not aware of any official website but found this: https://lightning.network/
You can also check our Lightning network course on the academy. :slight_smile:

My thoughts about Segwit are that it’s not different than our current financial slippery slope.

Before there was labor for labor, then this thing for that thing (various), then there were symbols that represented the value of a medium of exchange and finally to derivatives like we have today.

Why does bitcoin need to scale? Perhaps bitcoin should stay as it was, it would be the ultimate store of value, a mechanism to strip power from the elite. That’s it.

Other projects will function better as day to day exchange vehicles, such as monero, or pirate chain.

I think the segwit slope is a road to representations of data, not the actual data. Just like the volumes of tokens that are currently being exchanged on centralized markets, like binance. Can someone explain how this is different than the COMEX and silver paper markets?

It seems that perpetual growth is always the advance of progressive humans, but I think we need a conservative approach to how we think about these problems.

Like the native americans were said to consider 7 generations before making decisions that would affect their tribe.

It seems to me that societies that seek a fast buck over long term investment crumble quickly. Just like the US is crumbling now.

In permaculture I would say this is akin to Monoculture, big crop quickly that depletes the top soil and requires a new plot of land for production.

From what I’ve learned about segwit, I’m not a fan of this at all, or the lightning network concepts. Sound money requires conservation of resources in my understanding of healthy systems.

@filip - I understand regarding the removal of the signatures from the transactions but was the malleability not part of the security of the transaction? In the Alice sends BTC to Bob scenario; if bob changes Alice signature the chain falls apart due to the new hash. Surely other nodes would have rejected this because that is not the chain they were operating on? By taking the signatures out of the TX has Segwit not compromised security because the signatures could now be modified independent to the blockchain? Or would this new signature be disregarded by other nodes as before due to some other level of checks not described?

1 Like

Hey @D08813, hope you are great.

In the same Alice sent BTC to Bob scenario.

Bob does not change the signature of Alice, it change the transacion data, so it contains alice signature and can be used as a valid signature for an entire different transaction than the first one.

So segwit does not remove the signatures from the transaction, it just moved to another place of the block which is outside the transaction data, but can be verified in another section of data of the same block.

Here is a video that explain segwit in detail:
https://www.youtube.com/watch?v=f3CFUbeehc8

If you have any more questions, please let us know so we can help you! :slight_smile:

Carlos Z.

1 Like

@thecil thanks for the video.

Makes much more sense now. I think i missed the part where it was an unconfirmed transaction being changed that caused the malleability issue.

1 Like

It seems that transaction malleability is only with the signature…so my question is…if someone can change the signature why can’t they also change the transaction itself like the number of coins being released?

Because the witness is part of the locking script and determines how the coins are going to be locked so the receiver can eventually unlock them, not the unlocking script that is used by the sender. :slight_smile:

1 Like

@filip transaction malleability doesn’t make sense to me at all … how can Bob change Alice transaction signature ??? Isn’t the signature the encrypted (hashed) private key of Alice ??

Signature is included in the unlocking script part of the tx. The malleability can be changed by changing the locking script portion.
We don’t go into how tx are structured in this course, but you can have a look at our Bitcoin programming course to learn more, where he also explained the difference between a regular and a segwit tx on a low level. :slight_smile:

1 Like

@Alko89 alright thanks, I hope it will get more clear later on the course then.

How is it possible to make that Bob is able to change a signiture of uncorfirmed transaction? He does not have Alice Private keys. This chapter is very confusing.

Hi Filip,

Quick question: When a transaction is sent out to the nodes the nodes all verify that it is acceptable and if it is it is sent to their mempool. (This is where the signature is verified I gather). When the block is solved and being propegated to the other nodes as part of the blockchain, do the nodes then re-check if all transactions are valid? or do they just check that because they have the same transaction in their mempool that they verified before its all good?

Malleability happens because Bitcoin’s code allows digital signature to be altered while a transaction is still waiting to get confirmed. The signature alteration can be done in such a way that if you run a mathematical check on it, it is still valid according to the network , but if you run a hashing algorithm on it gives a different transaction id. So Bob doesn’t need a private key of Alice he just change the signature.

2 Likes