-
Notifications
You must be signed in to change notification settings - Fork 26
Description
Description
ledger-secure-sdk provides access to the cx_bn_gf2_n_mul() syscall which performs a multiplication over GF(2^n).
Can additional syscalls for other finite field operations such as invert (cx_bn_gf2_n_inv()) and addition (cx_bn_gf2_n_add()) be provided?
As part of my app_seed_tool Ledger application I have functions for performing these finite field operations but Ledger strongly advise against rolling our own crypto primitives (https://developers.ledger.com/docs/embedded-app/secure-app/#dont-roll-your-own-crypto-primitives) and ask to consult with Ledger developers for the possibility of including it in the OS.
Or even better, rather than just additional finite field operations, similar to the recent addition of cx_VSS_generate_shares() and cx_VSS_combine_shares() functions for VSS, can functions like cx_SSS_generate_shares() and cx_SSS_combine_shares() be added for implementing Shamir's Secret Sharing in applications?
Preferably the Shamir Secret Sharing functionality provided by cx_SSS_generate_shares() and cx_SSS_combine_shares() would operate to the standards defined by BlockchainCommons/bc-shamir, which provides similar functionality to SLIP-39 as used by Trezor devices.