Comments (4)
Hi
Do you use the same msg to initialize NewLocalParty*(msg, ...) ? If the message to sign is not the same across all signing parties, it could possibly result in the error in round 9.
from tss-lib.
Hi Do you use the same msg to initialize NewLocalParty*(msg, ...) ? If the message to sign is not the same across all signing parties, it could possibly result in the error in round 9.
I checked, and the msg is the same for all parties. I also tested using NewLocalParty
instead of NewLocalPartyWithKDD
(without key derivation), and the message was signed successfully. The issue arises when attempting to sign using NewLocalPartyWithKDD
.
from tss-lib.
Did you call UpdatePublicKeyAndAdjustBigXj?
For a given keyDelta value, it should be noticed that the corresponding child pubkey is needed to feed in
keyDerivationDelta := big.NewInt(123)
deltaG := crypto.ScalarBaseMult(tss.S256(), keyDerivationDelta)
cPk, err := deltaG.Add(keys[0].ECDSAPub)
cPubKey := ecdsa.PublicKey{
Curve: btcec.S256(),
X: cPk.X(),
Y: cPk.Y(),
}
err = UpdatePublicKeyAndAdjustBigXj(keyDerivationDelta, keys, &cPubKey, tss.S256())
from tss-lib.
Did you call UpdatePublicKeyAndAdjustBigXj? For a given keyDelta value, it should be noticed that the corresponding child pubkey is needed to feed in
keyDerivationDelta := big.NewInt(123) deltaG := crypto.ScalarBaseMult(tss.S256(), keyDerivationDelta) cPk, err := deltaG.Add(keys[0].ECDSAPub) cPubKey := ecdsa.PublicKey{ Curve: btcec.S256(), X: cPk.X(), Y: cPk.Y(), } err = UpdatePublicKeyAndAdjustBigXj(keyDerivationDelta, keys, &cPubKey, tss.S256())
Thank you for your assistance; my issue was related to updating the reference keys.
As a suggestion, I believe that UpdatePublicKeyAndAdjustBigXj
should be called for a single key rather than a list of keys. In production use, each user should call this function with their key, which should be passed as a pointer.
from tss-lib.
Related Issues (20)
- Vulnerability reported by THORChain
- is schnorr proof missing in ecdsa's keygen?
- s of ECDSA sign value is not meet EIP-2 valid range (0 < s < secp256k1n / 2 + 1)
- EdDSA signing is incorrect if the message is leading with 0x00 HOT 1
- How can I use this library for curve NIST-P256?
- How Can i use TSS for cosmos based chains ? HOT 15
- copy of Mutex is not safe HOT 4
- Does tss support schnorr signatures HOT 1
- KEYGEN sometimes giving 63byte instead of 64byte HOT 1
- Sign with MPC derived key is not able to pass validation by btcd script engine
- depends on agl/ed25519, which is removed/unmaintained HOT 2
- GG18 & GG20 Paillier Key Vulnerability HOT 1
- Does the threshold EdDSA subject to Small-subgroup attack?
- round 1: proto: cannot parse invalid wire-format data HOT 1
- Wrong bip32 version for ExtendedKey HOT 3
- Is there any support for ECDSA on Stark Curve HOT 2
- What does "each message should be wrapped with a session ID" mean?
- Share a parent key among children without storing the parent key
- Can provide a demo for building an eth tx and sign it then send to endpoint? HOT 5
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from tss-lib.