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
Alopex has quit [Remote host closed the connection]
Alopex has joined #bitcoin-wizards
chjj has quit [Quit: null]
chjj has joined #bitcoin-wizards
belcher has joined #bitcoin-wizards
Alopex has quit [Remote host closed the connection]
Alopex has joined #bitcoin-wizards
Aranjedeath has joined #bitcoin-wizards
Alopex has quit [Remote host closed the connection]
Alopex has joined #bitcoin-wizards
ghtdak has quit [Quit: WeeChat 1.3]
belcher has quit [Quit: Leaving]
Tiraspol has quit [Remote host closed the connection]
Tiraspol has joined #bitcoin-wizards
Alopex has quit [Remote host closed the connection]
licnep has joined #bitcoin-wizards
Alopex has joined #bitcoin-wizards
Noldorin has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
Tiraspol has quit [Remote host closed the connection]
Tiraspol has joined #bitcoin-wizards
CrazyTruthYakDDS has joined #bitcoin-wizards
Tiraspol has quit [Read error: Connection reset by peer]
Tiraspol has joined #bitcoin-wizards
Tiraspol has quit [Read error: Connection reset by peer]
Tiraspol has joined #bitcoin-wizards
Tiraspol has joined #bitcoin-wizards
Tiraspol has quit [Changing host]
Tiraspol has quit [Ping timeout: 264 seconds]
Tiraspol has joined #bitcoin-wizards
Tiraspol has joined #bitcoin-wizards
Tiraspol has quit [Changing host]
instagibbs has quit [Ping timeout: 276 seconds]
Tiraspol has quit [Remote host closed the connection]
Tiraspol has joined #bitcoin-wizards
instagibbs has joined #bitcoin-wizards
Tiraspol has quit [Read error: Connection reset by peer]
Tiraspol has joined #bitcoin-wizards
Tiraspol has joined #bitcoin-wizards
Tiraspol has quit [Changing host]
<andytoshi>
amiller: i've been thinking a bit about compact SPV over the last couple weeks and i think i finally have a simple understanding of what you were saying back when we were writing the sidechains whitepaper
<andytoshi>
i'm going to summarize it here and maybe you can tell me if i'm off-base
Ylbam has quit [Quit: Connection closed for inactivity]
<andytoshi>
let's assume constant difficulty and blocktime "1" so that we have something tractable
<andytoshi>
if i hand you a chain with a million blocks in it, the time it took to generate that (assuming constant hashrate etc) will follow the distribution \sum_1^{1000000} Exp(1) = Erlang(1000000, 1)
<andytoshi>
compare this to the extreme case of a "compact SPV" chain where it's just one block with a million times the PoW on it. this has generation time distribution Exp(1000000)
<andytoshi>
the erlang one has variance proportional to a million; the exponential proportional to a million squared ... with the result that you've gotta spend ~ 1000000 ± 2000 blocktimes to have a nonnegligible chance of producing the whole chain. basically it really is a proof that a million blocktimes' worth of work was done
pro has quit [Quit: Leaving]
<andytoshi>
contrast the exponential distribution which is so flat that there's almost the same probability that it took 1 blocktime to generate this super-work block as there is that it took a million. (more precisely what i mean is that the CDF climbs from 0 to nearly one smoothly as the time taken goes from 0 to a couple million)
<andytoshi>
so even though both these "chains" (a million 1-diff blocks) and (one million-diff blocks) have same expected work, the resulting chains prove drastically different things
<andytoshi>
an actual compact SPV chain with log-many blocks is going to be weirdly weighted, you expect it'll have one block with a ton of work, one with half that, one with half that, and so on .. but we can imagine for a minute that actually the blocks are all equal-difficulty, there are just log-many of them, and this will give some intuition as to the tradeoff between blocksize length and variance. (this is
<andytoshi>
a really bad approximation, but you can sum exponential distributions of equal characteristic time to get erlang distributions .... as soon as you start having variable targets you have to do things numerically and it's a mess)
<andytoshi>
the variance we get doing this is n_blocks * block_weight^2 .... lower variance is good, the lower the variance the closer the expected time is to how much work is actually "proven". we can see the two extremes i described, variance a million (a million diff-one blocks) and variance million^2 (one diff-million block)
<andytoshi>
lemme stop saying "million" sorry, i'm talking asymptotics here, i'll just say N
<andytoshi>
so we have N for N blocks, N^2 for 1 block ... for log(N) blocks of difficulty N/log(N) (same total expected work) our equation becomes log(N)*(N/log(N))^2 = N^2/log(N)
<andytoshi>
you can replace log with any function in the above. you see if you try to play difficulty games to trim the blockchain length down from N to f(N), the variance of your time distribution goes from N to N^2/f(N)
<andytoshi>
so here's a stats/real analysis question .. how is P(chain generated in less than expected time * "negligible") affected by the shape of f?
btcdrak has quit [Quit: Connection closed for inactivity]
ThomasV_ has joined #bitcoin-wizards
ThomasV has quit [Ping timeout: 255 seconds]
Oizopower has quit [Quit: Connection closed for inactivity]
<amiller>
that looks right to me
<andytoshi>
:s cool.
<amiller>
imo it is enough to use chernoff bounds and there's no good reason to do anything else
<andytoshi>
oh nice, i didn't remember chernoff bounds
<amiller>
chernoff bounds let you say that there's negligible probablity that a random variable (in this case the amount of work done) differs from its expected value (the expected work based on just adding up the difficulty) by more than some fraction
<andytoshi>
oh, cool, this makes it very clear. i'd never heard of this bound i think
<amiller>
it's negligible like meaning the probability is exp(-k), where k is the number of samples that make up the variable
<andytoshi>
i sorta bumped into erlang distributions by accident which gave me a special case..
<amiller>
yeah erlang distribution is a good model for this
<andytoshi>
:/ i don't have our conversation logs from the time we were writing the paper, but i think i remember you mentioning chernoff's bound and saying "this is pretty inherent, you can't drop blocks and prove a statement of the same strength"
<andytoshi>
but here we are like 2 years later and it's just clicking now
a5m0 has quit [Quit: No Ping reply in 180 seconds.]
a5m0 has joined #bitcoin-wizards
Giszmo has quit [Quit: Leaving.]
slackircbridge has joined #bitcoin-wizards
Alopex has quit [Remote host closed the connection]
licnep_ has joined #bitcoin-wizards
wpalczynski_ has joined #bitcoin-wizards
Alopex has joined #bitcoin-wizards
tucenaber has quit [Ping timeout: 250 seconds]
mariorz_ has joined #bitcoin-wizards
coryfields_ has joined #bitcoin-wizards
yorick has joined #bitcoin-wizards
jl2012_ has joined #bitcoin-wizards
tucenaber has joined #bitcoin-wizards
tucenaber has joined #bitcoin-wizards
tucenaber has quit [Changing host]
cfields has joined #bitcoin-wizards
licnep has quit [Ping timeout: 258 seconds]
lmatteis has quit [Ping timeout: 258 seconds]
runeks has quit [Ping timeout: 258 seconds]
wpalczynski has quit [Ping timeout: 258 seconds]
Guest98152 has quit [Ping timeout: 258 seconds]
jl2012 has quit [Ping timeout: 258 seconds]
koshii has quit [Ping timeout: 258 seconds]
fkinglag has quit [Ping timeout: 258 seconds]
SirJacket has quit [Ping timeout: 258 seconds]
_flow_ has quit [Ping timeout: 258 seconds]
mariorz has quit [Ping timeout: 258 seconds]
waxwing has quit [Ping timeout: 258 seconds]
Wazza has quit [Ping timeout: 258 seconds]
Samdney has quit [Ping timeout: 258 seconds]
slackircbridge2 has quit [Ping timeout: 258 seconds]
gielbier has quit [Ping timeout: 258 seconds]
yorick_ has quit [Ping timeout: 258 seconds]
cfields_ has quit [Ping timeout: 258 seconds]
coryfields has quit [Ping timeout: 258 seconds]
Wazza has joined #bitcoin-wizards
jl2012_ is now known as jl2012
Samdney has joined #bitcoin-wizards
gielbier has joined #bitcoin-wizards
wpalczynski_ is now known as wpalczynski
waxwing has joined #bitcoin-wizards
edvorg has quit [Remote host closed the connection]
koshii has joined #bitcoin-wizards
licnep_ is now known as licnep
sneak has joined #bitcoin-wizards
sneak is now known as Guest69479
lmatteis has joined #bitcoin-wizards
_flow_ has joined #bitcoin-wizards
qpm has quit [Ping timeout: 244 seconds]
edvorg has joined #bitcoin-wizards
mariorz_ is now known as mariorz
qpm has joined #bitcoin-wizards
N0S4A2 has joined #bitcoin-wizards
SirJacket has joined #bitcoin-wizards
runeks has joined #bitcoin-wizards
forrestv has quit [Ping timeout: 250 seconds]
Alopex has quit [Remote host closed the connection]
Alopex has joined #bitcoin-wizards
forrestv has joined #bitcoin-wizards
anon616 has left #bitcoin-wizards [#bitcoin-wizards]
anon616 has joined #bitcoin-wizards
CrazyTruthYakDDS has quit [Quit: Connection closed for inactivity]
zooko has joined #bitcoin-wizards
Alopex has quit [Remote host closed the connection]
Samdney has quit [Ping timeout: 258 seconds]
Alopex has joined #bitcoin-wizards
NewLiberty_ has quit [Ping timeout: 255 seconds]
zooko has quit [Read error: Connection reset by peer]
zooko has joined #bitcoin-wizards
jgarzik has joined #bitcoin-wizards
jgarzik has joined #bitcoin-wizards
jgarzik has quit [Changing host]
Tiraspol has quit [Ping timeout: 250 seconds]
Tiraspol has joined #bitcoin-wizards
Tiraspol has joined #bitcoin-wizards
Tiraspol has quit [Changing host]
licnep has quit [Quit: Connection closed for inactivity]
mountaingoat has quit [Ping timeout: 260 seconds]
chestnutpie has quit [Quit: Leaving]
anon616 has quit [Remote host closed the connection]
anon616 has joined #bitcoin-wizards
zooko has quit [Ping timeout: 244 seconds]
chjj has quit [Ping timeout: 265 seconds]
chjj has joined #bitcoin-wizards
fkinglag has joined #bitcoin-wizards
NewLiberty_ has joined #bitcoin-wizards
Alopex has quit [Remote host closed the connection]
Alopex has joined #bitcoin-wizards
edvorg has quit [Ping timeout: 264 seconds]
ThomasV_ has quit [Ping timeout: 252 seconds]
Alopex has quit [Remote host closed the connection]
Alopex has joined #bitcoin-wizards
Aranjedeath has quit [Quit: Three sheets to the wind]
btcdrak has joined #bitcoin-wizards
edvorg has joined #bitcoin-wizards
Guyver2 has joined #bitcoin-wizards
ThomasV has joined #bitcoin-wizards
Guyver2 has quit [Quit: :)]
bildramer1 has joined #bitcoin-wizards
bildramer has quit [Ping timeout: 255 seconds]
pro has joined #bitcoin-wizards
netzin has joined #bitcoin-wizards
netzin has quit [Client Quit]
bildramer1 is now known as bildramer
paveljanik has joined #bitcoin-wizards
nuke_ has quit [Remote host closed the connection]
DougieBot5000 has quit [Ping timeout: 244 seconds]
DougieBot5000 has joined #bitcoin-wizards
kaaliakahn has quit [Remote host closed the connection]
Ylbam has joined #bitcoin-wizards
grubles has quit [Ping timeout: 265 seconds]
grubles has joined #bitcoin-wizards
go1111111 has quit [Ping timeout: 276 seconds]
ThomasV has quit [Ping timeout: 250 seconds]
Samdney has joined #bitcoin-wizards
NewLiberty_ is now known as NewLiberty
edvorg has quit [Ping timeout: 244 seconds]
zooko has joined #bitcoin-wizards
chjj has quit [Ping timeout: 244 seconds]
mountaingoat has joined #bitcoin-wizards
mkarrer has quit [Remote host closed the connection]
mkarrer has joined #bitcoin-wizards
bildramer1 is now known as bildramer
zooko has quit [Ping timeout: 240 seconds]
Yogh has quit [Ping timeout: 252 seconds]
<kanzure>
"The discrete logarithm problem over prime fields can be transformed to a linear multivariable Chinese remainder theorem" https://arxiv.org/abs/1608.07032
<kanzure>
"We show that the classical discrete logarithm problem over prime fields can be reduced to that of solving a system of linear modular equations."
Yogh has joined #bitcoin-wizards
_whitelogger has joined #bitcoin-wizards
PaulCapestany has joined #bitcoin-wizards
chjj has joined #bitcoin-wizards
Samdney has quit [Ping timeout: 258 seconds]
grubles has quit [Ping timeout: 255 seconds]
<Taek>
amiller, andytoshi, I think I'm missing information. So you have a bunch of SPV blocks that demonstrate X much work was done, but how to you prove that it was all done on a linked-list of blocks?
<Taek>
What's to stop me from grabbing blocks from the real chain to show that my attack chain has a bunch of work?
giel__ has joined #bitcoin-wizards
<andytoshi>
Taek: sorry, there is missing context. suppose every block commits to every previous block in a merkle tree, rather than having just a prevblockhash link
<Taek>
ah
<andytoshi>
then i can give you a chain from tip to genesis where i've dropped a bunch of blocks, and you can use the extra backlinks to see that it follows all the way through
<andytoshi>
there is a data structure called a "skiplist" that has a paper about it, even though pretty-much all the intuition is in its name :)
giel__ has quit [Changing host]
giel__ has joined #bitcoin-wizards
dnaleor has quit [Quit: Leaving]
<amiller>
there's still more context needed, it's pretty non-trivial how to compare two proof of work samples in a way that guarantees forks don't cause a problem, this isn't addressed in the sidechains paper
<andytoshi>
yeah, the sidechains paper was using them basically as a witness where uniqueness was not important
<andytoshi>
oh, nice
<andytoshi>
if you were actually trying to do pruning, i think algorithm in the paper can run into trouble ... imagine i give Taek blocks 1, 2, 4 (with a skiplink from 4 to 2), then you make block 5 which is supposed to commit to 1, 2, 3, 4
<andytoshi>
but if the commitment to 3 is missing/bad Taek can't tell
<andytoshi>
and you can cause forks this way if people have different pruned lists
<andytoshi>
i'll read this paper, thank you, maybe it solves it. (i think i solved it myself but in an adhoc way)
grubles has joined #bitcoin-wizards
<andytoshi>
ah, ok, so this is really about SPV proofs and not about chain selection
<andytoshi>
amiller: oh, you meant something different from what i was thinking by "forks don't cause a problem", i have been thinking about actually pruning blockchains with compact SPV and have been worried about the compact SPV itself causing forks where people don't agree on whether new blocks extend the chain
<andytoshi>
which i think is not something anybody has really looked at
<amiller>
right, it doesn't help with like SPV mining.... that's still unsafe in the same way
ThomasV has joined #bitcoin-wizards
<andytoshi>
well, what i'm thinking is, imagine you have a 'canonical compact chain', where every block is required to skip (a) to the previous block; (b) as far back as it can in the already-pruned chain. (you don't know (b) til you've mined it so you've gotta commit to a lot of blocks, but only those two will matter in the end)
<andytoshi>
then you explicitly commit to the block indices in the already-pruned chain, so there's consensus on that
<andytoshi>
then validators need to check only two merkle proofs, and the same ones for every verifier. if they've got the compact chain up to the point of the block they're validating, they know what indices need to be committed to
<andytoshi>
there is the problem that compact verifiers cannot check the link to the previous block, but this is a much smaller consensus risk
<andytoshi>
so i'm thinking of like, a mimblewimble chain where everyone has the last k blocks (for k = 10000 or some security parameter) and just a compact spv proof from that back to the genesis
<andytoshi>
the compact spv proof could be missing backlinks, and this would mean the chain wouldn't have been verified by anyone doing full verification back then, but this is entirely irrelevant to the chain's operation _now_
<maaku>
kanzure: is there any interesting ramifications to that?
<kanzure>
andytoshi: hm? why not store and commit to to old spv proofs? storage by unrelated third parties, store hash in chain, later procure it as evidence that things seemed to verify in the past, ya?
Samdney has joined #bitcoin-wizards
<andytoshi>
kanzure: sure, anyone who wanted to check on that could surely find the data
<kanzure>
maaku: well, it means we need to brush up on piano and outwit djb with our own musical team
<maaku>
kanzure: I mean the chinese remainder theorem thing you posted earlier
<maaku>
the paper is a bit sparse on ramifications
<kanzure>
maaku: oh. maybe el gamal? not sure. i am not a cryptographer :).
<andytoshi>
maaku: trying to understand the asymptotics of the magic on page 3
<andytoshi>
i can tell you they don't understand the ramifications themselves, they say "multivariate CRT is hard lol" but typing "multivariate chinese remainder theorem" into google gets you http://www.math.harvard.edu/~knill/preprints/linear.pdf which points out a way to solve it in many circumstances
<andytoshi>
maaku: like, they end with this example "compute the DL of 4 with respect to 2 mod 11" (btw this is 2, 2^2 = 4 :)). they go through their mechanations to get "beta + n = 6 mod 11", "beta + 2n = 3 mod 5". by looking for solutions on the curve (beta, n) = (2t, t) this is {3t = 6 mod 11, 4t = 3 mod 5} or {t = 8 mod 11, t = 2 mod 5}
<andytoshi>
run this through the regular CRT which is super fast (ext. euclid's algo on 11 and 5) and out pops t = 68. and sure enough, 68 mod 11 = 2, which is the answer
mdavid613 has quit [Quit: Leaving.]
licnep has joined #bitcoin-wizards
<tromp>
i used CRT to compute the number of legal Go positions...
<Eliel_>
tromp: now I'm curious if that's where the theorem got it's initial inspiration :)
<tromp>
CRT is way older than go counting:(
Ylbam has quit [Quit: Connection closed for inactivity]
berndj has quit [Read error: Connection reset by peer]
c0rw1n_ has joined #bitcoin-wizards
c0rw1n has quit [Ping timeout: 252 seconds]
berndj has joined #bitcoin-wizards
<andytoshi>
the eqn for b1 on the bottom of page 3 is wrong. if you use it you get a different value in their example (and you fail to solve the discrete log)
ThomasV has quit [Ping timeout: 240 seconds]
tripleslash has quit [Ping timeout: 240 seconds]
hashtagg has joined #bitcoin-wizards
hashtag_ has quit [Ping timeout: 255 seconds]
hashtagg has quit [Ping timeout: 250 seconds]
hashtag has joined #bitcoin-wizards
tripleslash has joined #bitcoin-wizards
laurentmt has joined #bitcoin-wizards
laurentmt has quit [Client Quit]
bildramer1 is now known as bildramer
hashtag_ has joined #bitcoin-wizards
Davasny has quit [Remote host closed the connection]
hashtag has quit [Ping timeout: 244 seconds]
<andytoshi>
honestly i think the proof of lemma 2 is wrong, they handwaved a step and mixed up n*phi(q) - 1 and (n - 1)*phi(q) .... then when they were doing their "numerical example" they just fudged the numbers to make it work
<andytoshi>
i.e. the paper is wrong
<andytoshi>
maaku: ^
hashtag has joined #bitcoin-wizards
hashtag_ has quit [Ping timeout: 258 seconds]
cyphase has quit [Ping timeout: 250 seconds]
Burrito has joined #bitcoin-wizards
hashtag_ has joined #bitcoin-wizards
hashtagg has joined #bitcoin-wizards
hashtag has quit [Ping timeout: 244 seconds]
cyphase has joined #bitcoin-wizards
hashtag_ has quit [Ping timeout: 252 seconds]
playatodd is now known as idle2dagrave
ThomasV has joined #bitcoin-wizards
giel___ has joined #bitcoin-wizards
giel__ has quit [Ping timeout: 244 seconds]
<maaku>
Thanks
xissburg has joined #bitcoin-wizards
Guyver2 has joined #bitcoin-wizards
Giszmo has joined #bitcoin-wizards
DougieBot5000 has quit [Ping timeout: 264 seconds]
xissburg has quit [Quit: ZZZzzz…]
xissburg has joined #bitcoin-wizards
DougieBot5000 has joined #bitcoin-wizards
go1111111 has joined #bitcoin-wizards
Tenhi_ has joined #bitcoin-wizards
Tenhi_ has quit [K-Lined]
NewLiberty has quit [Ping timeout: 244 seconds]
chestnutpie has quit [Ping timeout: 250 seconds]
mdavid613 has joined #bitcoin-wizards
NewLiberty has joined #bitcoin-wizards
aem has quit [Remote host closed the connection]
Samdney has left #bitcoin-wizards ["Verlassend"]
licnep has quit [Quit: Connection closed for inactivity]
Noldorin has joined #bitcoin-wizards
Guyver2_ has joined #bitcoin-wizards
Guyver2 has quit [Ping timeout: 252 seconds]
Guyver2_ is now known as Guyver2
aem has joined #bitcoin-wizards
tom3 has joined #bitcoin-wizards
tom3 has quit [Ping timeout: 250 seconds]
chestnutpie has joined #bitcoin-wizards
ThomasV has quit [Quit: Quitte]
isis has quit [Quit: the dead man's switch has gone off, causing this server to self-destruct in 5… 4… 3… 2… 1…]
isis_ has joined #bitcoin-wizards
aem has quit [Remote host closed the connection]
Guyver2 has quit [Ping timeout: 252 seconds]
aem has joined #bitcoin-wizards
aem is now known as aem
chestnutpie has quit [Quit: Leaving]
chestnutpie has joined #bitcoin-wizards
default has joined #bitcoin-wizards
default is now known as Guest37288
afk11 has quit [Ping timeout: 264 seconds]
Guest37288 has quit [Client Quit]
belcher has joined #bitcoin-wizards
chestnutpie has quit [Quit: Leaving]
chestnutpie has joined #bitcoin-wizards
afk11 has joined #bitcoin-wizards
afk11 has joined #bitcoin-wizards
afk11 has quit [Changing host]
grubles has quit [Quit: Leaving]
grubles has joined #bitcoin-wizards
e4xit_ has joined #bitcoin-wizards
tromp__ has joined #bitcoin-wizards
bildramer has quit [Ping timeout: 264 seconds]
jl2012 has quit [Ping timeout: 264 seconds]
gribble has quit [Disconnected by services]
Cory has quit [Ping timeout: 264 seconds]
Muis has quit [Ping timeout: 264 seconds]
bildramer has joined #bitcoin-wizards
CodeShark has quit [Ping timeout: 264 seconds]
neha has quit [Ping timeout: 264 seconds]
e4xit has quit [Ping timeout: 264 seconds]
NicolasDorier has quit [Ping timeout: 264 seconds]
meZee has quit [Ping timeout: 264 seconds]
tromp has quit [Ping timeout: 264 seconds]
e4xit_ is now known as e4xit
wallet42 has quit [Ping timeout: 264 seconds]
Madars has quit [Ping timeout: 264 seconds]
CodeShark has joined #bitcoin-wizards
go1111111 has quit [Ping timeout: 264 seconds]
ithicad has quit [Ping timeout: 264 seconds]
NicolasDorier has joined #bitcoin-wizards
Pasha has joined #bitcoin-wizards
neha has joined #bitcoin-wizards
jl2012 has joined #bitcoin-wizards
wallet42 has joined #bitcoin-wizards
gribble has joined #bitcoin-wizards
meZee has joined #bitcoin-wizards
afk11 has quit [Ping timeout: 276 seconds]
Muis has joined #bitcoin-wizards
riclas has joined #bitcoin-wizards
Pasha is now known as Cory
afk11 has joined #bitcoin-wizards
afk11 has quit [Changing host]
afk11 has joined #bitcoin-wizards
go1111111 has joined #bitcoin-wizards
ithicad has joined #bitcoin-wizards
huseby has quit [Ping timeout: 250 seconds]
Madars has joined #bitcoin-wizards
afk11 has quit [Ping timeout: 244 seconds]
instagibbs has quit [Ping timeout: 260 seconds]
instagibbs has joined #bitcoin-wizards
afk11 has joined #bitcoin-wizards
afk11 has joined #bitcoin-wizards
afk11 has quit [Changing host]
jbenet has quit [Ping timeout: 244 seconds]
btcdrak has quit [Read error: Connection reset by peer]
mappum has quit [Read error: Connection reset by peer]
eragmus has quit [Ping timeout: 250 seconds]
CryptoAi has quit [Ping timeout: 250 seconds]
huseby has joined #bitcoin-wizards
aspect_ has quit [Read error: Connection reset by peer]