sipa changed the topic of #bitcoin-wizards to: This channel is for discussing theoretical ideas with regard to cryptocurrencies, not about short-term Bitcoin development | http://bitcoin.ninja/ | This channel is logged. | For logs and more information, visit http://bitcoin.ninja
rusty has joined #bitcoin-wizards
Burrito has joined #bitcoin-wizards
chjj has joined #bitcoin-wizards
Chris_Stewart_5 has quit [Ping timeout: 264 seconds]
Aranjedeath has quit [Quit: Three sheets to the wind]
Burrito has quit [Quit: Leaving]
Chris_Stewart_5 has joined #bitcoin-wizards
snthsnth has quit [Ping timeout: 260 seconds]
snthsnth has joined #bitcoin-wizards
echonaut has quit [Remote host closed the connection]
echonaut has joined #bitcoin-wizards
rusty has quit [Ping timeout: 264 seconds]
NewLiberty has joined #bitcoin-wizards
snthsnth has quit [Ping timeout: 244 seconds]
cyphase has quit [Ping timeout: 240 seconds]
cyphase has joined #bitcoin-wizards
Ylbam has quit [Quit: Connection closed for inactivity]
snthsnth has joined #bitcoin-wizards
cyphase has quit [Ping timeout: 272 seconds]
cyphase has joined #bitcoin-wizards
snthsnth has quit [Ping timeout: 240 seconds]
snthsnth has joined #bitcoin-wizards
cyphase has quit [Ping timeout: 250 seconds]
cyphase has joined #bitcoin-wizards
Alopex has quit [Remote host closed the connection]
Alopex has joined #bitcoin-wizards
cyphase has quit [Ping timeout: 250 seconds]
snthsnth has quit [Ping timeout: 272 seconds]
NewLiberty has quit [Ping timeout: 265 seconds]
pro has quit [Quit: Leaving]
NewLiberty has joined #bitcoin-wizards
cyphase_eviltwin has joined #bitcoin-wizards
cyphase_eviltwin has quit [Ping timeout: 265 seconds]
cyphase_eviltwin has joined #bitcoin-wizards
xinxi has joined #bitcoin-wizards
cyphase_eviltwin has quit [Ping timeout: 265 seconds]
<xinxi>
Hi guys, because of SegWit, confidential transactions' huge proofs will not be counted as the block size, right?
<sipa>
are you talking about bitcoin?
<sipa>
there is no straightforward way to include CT inside segwit as currently designed, as the CT range proofs are per output, not per input
cyphase_eviltwin has joined #bitcoin-wizards
NewLiberty has quit [Ping timeout: 272 seconds]
<sipa>
so it would likely need at least another extra optional data field in transactions (in addition to segwit's script witnesses), for which accounting rules can be chosen independently
cyphase_eviltwin has quit [Max SendQ exceeded]
cyphase_eviltwin has joined #bitcoin-wizards
<sipa>
the only system with CT deployed is elements alpha, and though it indeed treats the CT range peoofs as witbess data, it doesn't do any discounting
<sipa>
*witness
moa has quit [Ping timeout: 264 seconds]
<xinxi>
Yeah, I am talking about Bitcoin.
<xinxi>
So SegWit shifts only input proofs into the witness segment?
<xinxi>
Is it possible to modify SegWit a bit to shift output proofs as well?
<sipa>
bitcoin doesn't have output proofs
<sipa>
there is nothing to move
<xinxi>
That's true.
<sipa>
if you're designing a new system, absolutely
<xinxi>
Can we create another transaction type to include output proofs?
<sipa>
yes, the same technique that segwit used to create an optional segment in transactions could be reused for the range proofs
<sipa>
but the discount argument doesn't apply
<xinxi>
Why?
<sipa>
for a new segment any accounting rule can be chosen
<sipa>
there is no reason why it should follow the same x0.25 as the script witnesses in segwit
<xinxi>
Got it.
cyphase_eviltwin has quit [Ping timeout: 244 seconds]
<xinxi>
So everything in the witness part now gets 75% discount when the size is calculated.
<sipa>
implicitly, you could say that there is an unlimited amount of optional segment space available in each transaction... but its cost is currebtly zero (and we also don't inspect it for validation)
<xinxi>
Now new segments can be discounted at other rates.
<sipa>
or not counted at all
<sipa>
or counted at a premium
<sipa>
or counted quadratically
<sipa>
or required to be a prime number in size
<xinxi>
That's a lot of fun.
<sipa>
just not negative
<xinxi>
How do you guys decide 0.25?
<sipa>
a balance between block propagation impact and utxo growth impact
<sipa>
the 0.25 factor was proposed because it makes inputs significantly cheaper (relative to outputs; from a factor 4 to a factor 2 approximately)
<sipa>
while not dramatically making blocks larger on the wire
chjj has quit [Ping timeout: 260 seconds]
cyphase has joined #bitcoin-wizards
<xinxi>
Beside disk space, another other resource that the witness part will occupy?
<sipa>
cpu
<sipa>
it allows more signature checks per block
<sipa>
and bandwidth, it allows larger blocks
<sipa>
and disk i/o, as it allows more utxos per block to be spent and created
<xinxi>
These seem not big problems to most users.
<sipa>
cpu is pretty relevant
<sipa>
as deteemines how fast blocks can be relayed
<xinxi>
Really, I run a bitcoind on my server, it does not use much cpu.
<sipa>
it's only in spikes
<xinxi>
Got it.
<sipa>
bandwidth is partially mitigated using bip 152
moa has joined #bitcoin-wizards
moa has quit [Changing host]
moa has joined #bitcoin-wizards
<xinxi>
Nice.
<xinxi>
sipa: thank you for answering all these questions. I found you are particularly helpful :-D
cyphase has quit [Ping timeout: 248 seconds]
<qpm>
tx:<Jeremy_Rand> xinxi: seconded, both for sipa and all the other Blockstream people. Every time I talk to someone from Blockstream I walk away feeling smarter -- they're an excellent bunch