35 releases (8 breaking)
| new 0.9.7 | Apr 7, 2026 |
|---|---|
| 0.9.3 | Mar 23, 2026 |
| 0.6.0-alpha | Dec 18, 2025 |
| 0.4.0 | Nov 1, 2025 |
| 0.2.0 | Jul 25, 2025 |
#125 in Magic Beans
1,156 downloads per month
42KB
968 lines
arcium-anchor
A helper crate for integrating Arcium into Solana programs. Provides utilities, traits, and account types that simplify the development of Anchor-based Solana programs that interact with the Arcium network for encrypted computations.
Usage
use arcium_anchor::{
queue_computation, init_comp_def,
SignedComputationOutputs, SharedEncryptedStruct, MXEEncryptedStruct,
traits::{QueueCompAccs, CallbackCompAccs, InitCompDefAccs},
prelude::*,
};
// Initialize a computation definition
init_comp_def(&ctx.accounts, circuit_source_override, finalize_authority)?;
// Queue a computation for execution
queue_computation(
&ctx.accounts,
computation_offset,
args,
callback_instructions,
num_callback_txs,
cu_price_micro,
)?;
// Verify and deserialize computation results
let output: MyOutputType = computation_output
.verify_output(&ctx.accounts.cluster, &ctx.accounts.computation)?;
Main Exports
Core Functions
queue_computation()- Queue an encrypted computation for executioninit_comp_def()- Initialize a computation definition on-chaincomp_def_offset()- Calculate computation definition account offset
Types
SignedComputationOutputs<O>- Enum for computation results (Success/Failure) with BLS signature verificationSharedEncryptedStruct<const LEN: usize>- Container for shared encrypted dataMXEEncryptedStruct<const LEN: usize>- Container for MXE encrypted data
Traits
QueueCompAccs- Trait for accounts that can queue computationsCallbackCompAccs- Trait for accounts that handle computation callbacksInitCompDefAccs- Trait for accounts that can initialize computation definitions
PDA Utilities
Various helper macros for deriving Program Derived Addresses (PDAs) used by Arcium accounts.
Dependencies
~32MB
~513K SLoC