A reasonable attack scenario might be: attacker gains control of client machine 
and its privkey, wants to extract money. It first operates passively, waiting 
for user to do 2FA on a normal transaction, only modifying the nonce used in 
order to achieve its goal. Then, after that 1 transaction goes through, it gets 
the server privkey as above, and so 2FA is no longer needed to steal the 
remainder of the money. Or did I miss some part of the setup?


Sent with Proton Mail secure email.

------- Original Message -------
On Wednesday, July 26th, 2023 at 13:28, moonsettler via bitcoin-dev 
<bitcoin-dev@lists.linuxfoundation.org> wrote:


> Yes, thank you!
> 
> There I assume if someone has your private key, and can satisfy the 2FA, he 
> will just steal your coins, and not bother with extracting the co-signers key 
> that is specific to you. I can see, how this assumption is not useful 
> generally.
> 
> BR,
> moonsettler
> 
> Sent with Proton Mail secure email.
> 
> 
> ------- Original Message -------
> On Wednesday, July 26th, 2023 at 9:19 PM, AdamISZ adam...@protonmail.com 
> wrote:
> 
> 
> 
> > It's an interesting idea for a protocol. If I get it right, your basic idea 
> > here is to kind of "shoehorn" in a 2FA authentication, and that the 
> > blind-signing server has no other function than to check the 2FA?
> > 
> > This makes it different from most uses of blind signing, where counting the 
> > number of signatures matters (hence 'one more forgery etc). Here, you are 
> > just saying "I'll sign whatever the heck you like, as long as you're 
> > authorized with this 2FA procedure".
> > 
> > Going to ignore the details of practically what that means - though I'm 
> > sure that's where most of the discussion would end up - but just looking at 
> > your protocol in the gist:
> > 
> > It seems you're not checking K values against attacks, so for example this 
> > would allow someone to extract the server's key from one signing:
> > 
> > 1 Alice, after receiving K2, sets K1 = K1' - K2, where the secret key of 
> > K1' is k1'.
> > 2 Chooses b as normal, sends e' as normal.
> > 3 Receiving s2, calculate s = s1 + s2 as normal.
> > 
> > So since s = k + ex = (k' + bx) + ex = k' + e'x, and you know s, k' and e', 
> > you can derive x. Then x2 = x - x1.
> > 
> > (Gist I'm referring to: 
> > https://gist.github.com/moonsettler/05f5948291ba8dba63a3985b786233bb)
> > 
> > Sent with Proton Mail secure email.
> > 
> > ------- Original Message -------
> > On Wednesday, July 26th, 2023 at 03:44, moonsettler via bitcoin-dev 
> > bitcoin-dev@lists.linuxfoundation.org wrote:
> > 
> > > Hi All,
> > > 
> > > I believe it's fairly simple to solve the blinding (sorry for the bastard 
> > > notation!):
> > > 
> > > Signing:
> > > 
> > > X = X1 + X2
> > > K1 = k1G
> > > K2 = k2G
> > > 
> > > R = K1 + K2 + bX
> > > e = hash(R||X||m)
> > > 
> > > e' = e + b
> > > s = (k1 + e'*x1) + (k2 + e'*x2)
> > > s = (k1 + k2 + b(x1 + x2)) + e(x1 + x2)
> > > 
> > > sG = (K1 + K2 + bX) + eX
> > > sG = R + eX
> > > 
> > > Verification:
> > > 
> > > Rv = sG - eX
> > > ev = hash(R||X||m)
> > > e ?= ev
> > > 
> > > https://gist.github.com/moonsettler/05f5948291ba8dba63a3985b786233bb
> > > 
> > > Been trying to get a review on this for a while, please let me know if I 
> > > got it wrong!
> > > 
> > > BR,
> > > moonsettler
> > > 
> > > ------- Original Message -------
> > > On Monday, July 24th, 2023 at 5:39 PM, Jonas Nick via bitcoin-dev 
> > > bitcoin-dev@lists.linuxfoundation.org wrote:
> > > 
> > > > > Party 1 never learns the final value of (R,s1+s2) or m.
> > > > 
> > > > Actually, it seems like a blinding step is missing. Assume the server 
> > > > (party 1)
> > > > received some c during the signature protocol. Can't the server scan the
> > > > blockchain for signatures, compute corresponding hashes c' = H(R||X||m) 
> > > > as in
> > > > signature verification and then check c == c'? If true, then the server 
> > > > has the
> > > > preimage for the c received from the client, including m.
> > > > _______________________________________________
> > > > bitcoin-dev mailing list
> > > > bitcoin-dev@lists.linuxfoundation.org
> > > > https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev
> > > 
> > > _______________________________________________
> > > bitcoin-dev mailing list
> > > bitcoin-dev@lists.linuxfoundation.org
> > > https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev
> 
> _______________________________________________
> bitcoin-dev mailing list
> bitcoin-dev@lists.linuxfoundation.org
> https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev
_______________________________________________
bitcoin-dev mailing list
bitcoin-dev@lists.linuxfoundation.org
https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev

Reply via email to