What's new in 2.6.0

In version 2.6.0, we've introduced a few major enhancements.

  1. Direct reporting of errors to Fireblocks. This will ease the process of supporting and debugging issues in the future. More information can be found here.
  2. Our MPC ceremony processes have been enhanced for greater robustness. MPC messages will now undergo multiple retry attempts before failing.
  3. Unexpected device errors, as seen in Common Errors will now result in the expected messaging, and not in a timeout.
  4. You can now dynamically extend wallets! Expand the range of algorithms available in a wallet by adding, for instance, EdDSA alongside ECDSA. Learn more here.

What's new in v2.5.1

We introduced several enhancements and additions to the SDK functionality:

  1. Canceling Transactions: Added a new function called stopSignTransaction to the SDK interfaces. This function enables your app to cancel transactions the end-user initiated for signing.
  2. Improved Error Handling: Enhanced error handling for quick transaction signing failures caused by invalid messages from the backend, such as schema changes in the response. This improvement helps identify and resolve issues faster.
  3. MPC Key Generation: Addressed a few edge cases in the MPC Key Generation process that could potentially result in key generation failures.
  4. EdDSA Signing Performance: Drastically improved EdDSA Blockchains signing speed.
  5. Logging: Added a new parameter, logToConsole, to FireblocksOptions. This parameter allows you to push logs to the Xcode console when running the host app, which can be helpful for debugging purposes.
  6. Minor Interface Changes: There were some small changes to the SDK interface. Please read the guidelines in the following section for more details.

Upgrade guidelines

  1. GenerateMPCKeys Behavior Change: In case of an exception, GenerateMPCKeys now returns a Set containing keys and their corresponding statuses, instead of an empty Set. You will need to check that all keys have a "Ready" status to ensure successful setup. Please see the following example for clarification.
  2. Optional KeyRecovery Properties: All KeyRecovery properties are now optional. This may affect your code if you were previously relying on default values. See the following example for a similar code change.
  3. Optional KeyDescriptor Properties: All KeyDescriptor properties are now optional. This may affect your code if you were previously relying on default values. See the following example for a similar code change.

What's new in v2.4.0

We expanded the capabilities of the NCW SDK to support Solana and Algorand, now including the EdDSA algorithm alongside our existing ECDSA support. This enhancement enables a single wallet to seamlessly interact with Bitcoin, various EVMs, and Solana.

More information about the supported NCW networks may be found here .

Additionally, we're excited to announce that support for more blockchains, including Stellar, is on the horizon. Stay tuned for further updates!

Upgrade guidelines

To successfully utilize the generateMPCKeys function with MPC_EDDSA_ED25519, your workspace must support EdDSA. Learn more about supporting multiple algorithms within a single wallet here.


What's new in v2.3.2

We resolved a bug that occurred during transaction signing, leading to intermittent failures after a few transactions. The root cause was identified within the MPC process, where the SDK did not handle a specific use case that emerged during performance improvement efforts.

It's important to note that although a transaction may have failed initially, it was possible to retry the transaction signing with success on subsequent attempts.


What's new in v2.3.1

We addressed and resolved a potential race condition that could occur during the generateMPCKeys process. This fix ensures that the operation no longer fails due to the identified race condition.


What's new in v2.3.0

We made significant performance improvements in key generation and transactions signing.

For additional tips on enhancing overall performance, refer to our documentation here.


What's new in v2.2.0

We added the ability to work with multiple devices in a single wallet.

For more information about multiple devices, refer to our documentation here.


What's new in v2.1

We added a safer backup and recovery mechanism.

Breaking change

We made a significant breakthrough since the following two functions in the interface will receive different parameters:

  • backupKeys
  • recoverKeys

You can find details about the implementation in our ios-ncw-demo repo and more information about the backup procedure here.

Upgrade guidelines

When upgrading to version 2.1 and later, you should require the user to run another backup procedure so that the new encrypted backup share on the Fireblocks servers will be associated with a passphraseId.