Important
Raw Signing is an insecure signing method and is not generally recommended. Bad actors can trick someone into signing a valid transaction message and use it to steal funds.
For this reason, Raw Signing is a premium feature that requires an additional purchase and is not available in workspaces by default. If you're interested in this feature and want to see if your use case is eligible for it, please contact your Customer Success Manager.
Overview
If you want to stake assets that are not available to stake natively in the Fireblocks Console or the Fireblocks API, you can use the Raw Signing feature. Your Fireblocks workspace requires some configuration to begin staking via Raw Signing. In addition to enabling Raw Signing, you must set up API access to run staking commands and use any relevant Software Development Kits (SDKs). Staking also requires you to use a third-party staking partner, unless you plan to set up your validator infrastructure.
These prerequisites do not apply to staking directly in the Fireblocks Console or through our dedicated staking API endpoints.
Before you begin
- Familiarize yourself with the Raw Signing feature.
- Contact your Customer Success Manager to enable Raw Signing, which can take 3-5 business days according to our Service Level Agreement (SLA).
Prerequisites
- Create an account with a staking partner. Fireblocks is currently partnered with Figment and Kiln.
- Make sure Raw Signing is enabled for your workspace.
- Create a dedicated vault account to manage your staked assets. This is required for all asset types. Staking on Polkadot and Kusama requires two separate vault accounts.
- Create an API user with an editor role or any role that can initiate transactions for running the staking script.
- Make sure you have Transaction Authorization Policy (TAP) rules that allow Raw Signing transactions. The rules should include assignments for the following parameters:
- Initiator: The API user managing the Raw Signing scripts for staking.
- Vault account: The vault accounts created in step 2.
- Asset: All asset types you plan on staking.
- Authorizers: Users in your workspace who can approve staking transactions.
- Implement the necessary development for staking. Fireblocks provides SDKs and corresponding staking guides for the following assets:
You can also stake assets that don’t have a Fireblocks staking SDK, such as Celestia (TIA) or DyDx (DYDX). However, you or your staking partner are responsible for facilitating any necessary development as well as providing and operating the secure environment needed to stake those assets. For more information on staking assets without a dedicated Fireblocks SDK, contact your Customer Success Manager.
Managing staking transactions
All staking transactions via Raw Signing are managed by you, your organization, or a staking provider on your behalf. Fireblocks provides a reference SDK for certain blockchains. The SDK enables you to define and trigger staking interactions according to their needs via the Fireblocks API. This includes using the Fireblocks API for signing, authorization, and interacting with the relevant blockchain for submitting transactions. The SDK should be configured and accessed from a secure environment.
Once assets are staked to the network using the SDK, validation and rewards are managed by the staking provider.
Updating vault account balances
When using Raw Signing to stake assets, vault account balances may not automatically update to reflect unstaked and withdrawn funds. To update the balance after withdrawing staked funds back to your vault account:
- Go to the vault account in the Fireblocks Console and select Refresh balance
.
- Call the Refresh asset balance date API endpoint.