
Security News
Risky Biz Podcast: Making Reachability Analysis Work in Real-World Codebases
This episode explores the hard problem of reachability analysis, from static analysis limits to handling dynamic languages and massive dependency trees.
@solana-mobile/seed-vault-lib
Advanced tools
A React Native wrapper of the Solana Mobile, Seed Vault SDK. Apps can use this to interact with seed vault implementations on Android
@solana-mobile/seedvaultlib
A React Native wrapper of the Seed Vault SDK.
We first need to check if the seed vault service is available on the device. Currently only Saga implementes a seed vault.
const allowSimulated = false; // use true to allow simulated seed vault (for dev/testing)
const seedVaultAvailable = await SolanaMobileSeedVaultLib.isSeedVaultAvailable(allowSimulated);
if (!seedVaultAvailable) {
// seed vault is not available, we cant use it
}
Before we can interact with Seed vault, we must request permission for our app to use Seed Vault.
import { PermissionsAndroid } from 'react-native';
import { SeedVaultPermissionAndroid } from '@solana-mobile/seed-vault-lib';
const permissionResult = await PermissionsAndroid.request(
SeedVaultPermissionAndroid,
{ // customize verbage here to your liking
title: 'Seed Vault Permission',
message:
'This app needs your permission to access Seed Vault',
buttonNeutral: 'Ask Me Later',
buttonNegative: 'Cancel',
buttonPositive: 'OK',
},
);
if (permissionResult === PermissionsAndroid.RESULTS.GRANTED) {
// we can use seed vault, continue
} else {
// permission was denied, fallback
}
Read more about requesting Android Permission in React Natvie here.
Before our app can access any seeds in the seed vault, we must first request authorization for our app to use a seed from the user.
import { SeedVault } from "@solana-mobile/seed-vault-lib";
const result = await SeedVault.authorizeNewSeed();
console.log(`New seed authorized! auth token: ${result.authToken}`);
To retreive a list of all the seeds our app has been authorized to use, call getAuthorizedSeeds()
.
const authorizedSeeds = await SeedVault.getAuthorizedSeeds()
This will return a list of Seed
objects with the following structure
{
authToken: number;
name: string;
purpose: int;
}
Once we have obtained an authorized seed, we can get a list of all the accounts (public keys) assocaited with that seed
const seed = authorizedSeeds[0]
const accounts = await SeedVault.getAccounts(seed.authToken)
Once we have obtained an authorized seed, we can get a list of all the accounts (public keys) assocaited with that seed
const account = account[0]
const publicKey = await SeedVault.getPublicKey(seed.authToken, account.derivationPath);
// can now build transaction using the public key
This will return a SeedPublicKey
object with the following structure
{
publicKey: Uint8Array;
publicKeyEncoded: string;
resolvedDerivationPath: string;
}
Once we have obtained an account, we can request signatures from seed vault for that account:
SeedVault.signMessage(seed.authToken, account.derivationPath, messageBytes);
SeedVault.signTransaction(seed.authToken, account.derivationPath, transactionByteArray);
FAQs
A React Native wrapper of the Solana Mobile, Seed Vault SDK. Apps can use this to interact with seed vault implementations on Android
The npm package @solana-mobile/seed-vault-lib receives a total of 159 weekly downloads. As such, @solana-mobile/seed-vault-lib popularity was classified as not popular.
We found that @solana-mobile/seed-vault-lib demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 5 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
This episode explores the hard problem of reachability analysis, from static analysis limits to handling dynamic languages and massive dependency trees.
Security News
/Research
Malicious Nx npm versions stole secrets and wallet info using AI CLI tools; Socket’s AI scanner detected the supply chain attack and flagged the malware.
Security News
CISA’s 2025 draft SBOM guidance adds new fields like hashes, licenses, and tool metadata to make software inventories more actionable.