Skip to content

Conversation

@ALiberalVoluntarist
Copy link
Collaborator

Description of Changes

This pull request introduces an implementation of Shamir's Secret Sharing scheme for securely splitting and recovering private keys. The update includes the following:

KeyShares, Polynomial, and PointInFiniteField classes to manage key splitting logic

Integrity verification for share validation

Robust error handling during reconstruction

Comprehensive unit tests

Examples demonstrating the use and behavior of the implemented methods

The implementation is designed to follow the functionality and interface of the existing TypeScript SDK. Compatibility has been verified.

Testing Procedure

Describe the tests you've added or any testing steps you've taken.

  • [x ] I have added new unit tests
  • [ x] All tests pass locally
  • [ x] I have tested manually in my local environment

Checklist:

  • [ x] I have performed a self-review of my own code
  • I have made corresponding changes to the documentation
  • [ x] My changes generate no new warnings
  • I have updated CHANGELOG.md with my changes
  • [ x] I have run the linter

A new section titled "Beginner Tutorial" has been added to the README, including a link to a step-by-step guide on sending BSV and NFTs with the Python SDK. This aims to assist new users in getting started with the project more easily.
Implements private key splitting and recovery using Shamir's Secret Sharing scheme. Includes `KeyShares`, `Polynomial`, and `PointInFiniteField` classes, unit tests, and examples demonstrating functionality. Added integrity verification and robust error handling for share validation and recovery.
Incremented the version in `__init__.py` from 1.0.3 to 1.0.4. This prepares the library for a new release, reflecting recent changes or improvements.
Bump the version from 1.0.3 to 1.0.5 in the `__init__.py` file. This reflects recent changes or updates made to the codebase.
…o feature/threshold_signature

# Conflicts:
#	bsv/__init__.py
Copy link
Collaborator

@voyager1708 voyager1708 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

OK

@voyager1708 voyager1708 merged commit 9fe2826 into master May 30, 2025
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants