Skip to content

Additional syscalls for finite field operations #394

@aido

Description

@aido

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.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions