Skip to content

Conversation

kingsznhone
Copy link
Contributor

@kingsznhone kingsznhone commented Feb 1, 2025

⚠️ NOTE: Use notes like this to emphasize something important about the PR.

This could include other PRs this PR is built on top of; API breaking changes; reasons for why the PR is on hold; or anything else you would like to draw attention to.

Status Type ⚠️ Core Change Issue
Ready Refactor Yes

Problem

#477
Add address lookup table instruction support for futhur development.

Make some crypto refactor on modern runtime.

Solution

  1. Removed Org.BouncyCastle references in Mnemonic.cs and Ed25519Bip32.cs and used built-in encryption methods instead.
  2. added ImportMany methods in Account.cs.
  3. Optimized LoadAsync method in HardcodedWordListSource.cs.
  4. Used RandomNumberGenerator in RandomUtils.cs instead, which is crypto safe on all platform.
  5. Added address lookup table program related files to support create, freeze, expand, deactivate and close instructions.

…gement

Removed multiple duplicate and unnecessary references, improved encryption methods and account management logic. Specific changes include:
- Removed duplicate definitions and added visibility in `Solnet.Rpc.csproj`.
- Added references, optimized constructors and methods, and added `ImportMany` methods in `Account.cs`.
- Optimized `LoadAsync` method in `HardcodedWordListSource.cs`.
- Removed `Org.BouncyCastle` references in `Mnemonic.cs` and `Ed25519Bip32.cs` and used built-in encryption methods instead.
- Removed `Portable.BouncyCastle` references in `Solnet.Wallet.csproj`.
- Used `RandomNumberGenerator` in `RandomUtils.cs` instead.
- Removed multiple utility methods in `Utils.cs`.
- Optimize account initialization method in `Wallet.cs`.
- Added address lookup table program related files to support create, freeze, expand, deactivate and close instructions.
@kingsznhone
Copy link
Contributor Author

I've tried using AES-GCM to replace AES-CTR in Solnet.KeyStore, But Unit test partially failed due to ...KeyStore.json in resource not updated. And I'm not fully understand what does KeyStore do. So just leave it alone for now.

Copy link
Contributor

@BifrostTitan BifrostTitan left a comment

Choose a reason for hiding this comment

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

Looks good. Will do some testing in a bit

@BifrostTitan BifrostTitan merged commit 023e107 into bmresearch:master Feb 3, 2025
2 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.

2 participants