ALEO钱包有哪些?如何下载使用
现在常用的钱就两个。一个是FOXWALLET 这个钱包多数人在用。
下载钱包:FoxWallet Official Website
苹果手机:FoxWallet: Secure Crypto Asset:在 App Store 上的内容 (apple.com)
FoxWallet,您的首选 Web3 钱包!
在不到 1 分钟的时间内创建您的安全加密钱包。现在就开始保护您的资产吧!
FoxWallet 是最易于使用的加密钱包。一个应用程序可以管理您的所有加密资产。
FoxWallet 是一个去中心化的加密钱包,支持 100+ 链,如比特币、以太坊、Aleo、Aptos、Filecoin、IronFish、SUI、Solana、BNB Chain、Arbitrum、Avalanche、Boba、Coreum、Conflux、Cronos、Coreum、Dymension、Evmos、Fantom、Gnosis、KCC、Klaytn、Metis、Merlin、Moonbeam、Moonriver、OKC、Optimism、Polygon、Qtum、Spacemesh、Ton、ZKsync、ZKFair 等。
FoxWallet 是安全的,没有私钥存储在云端,用户可以完全控制自己的资产。
完善的安全性和去中心化
安全可靠的行业领先的加密存储解决方案
您的数字资产尽在掌握
多链多钱包,简单易用
支持导入多组私钥和助记词,不同账户之间灵活切换
FoxWallet 可以加快或取消您的待处理交易。
24/7 实时支持
如果您有任何问题,请在我们的官方 Telegram 频道发送消息。我们的支持人员会尽快回复您。
官方网站: https://foxwallet.com
电报:https://t.me/FoxWallet_EN
无序:https://discord.gg/foxwallet
推特:https://twitter.com/FoxWallet
常见问题:https://hc.foxwallet.com/docs/faq
安卓版:FoxWallet Official Website
直接到官方下载吧!要怎么用官方有教程。如下:
Aleo 在 FoxWallet 应用程序中的工作原理
- 在 FoxWallet App 上生成/导入密钥。
- 将
view key
上传到 FoxWallet 后端。 - 在 FoxWallet 后端解密交易。
- 从 FoxWallet 后端获取账户信息。
- 发送交易:
- 在 FoxWallet 应用程序上创建原始交易。
- 在 FoxWallet App 上签署 tx 并完成零知识证明。
- 将签名的 tx 发布到 FoxWallet 支持,然后广播它。
注意
- 您不会上传到 FoxWallet 后端,您的资金是安全的
private key
- FoxWallet 会妥善保管您的,没有其他人可以获取您的
查看密钥
view key
- 余额和交易历史 api 得到很好的保护,您的隐私仍然存在
- 上传到后端的目的是为了让用户更快地获取交易记录和余额,否则用户需要在本地同步所有区块和解密交易,这将消耗大量的计算和网络传输。FoxWallet 的设计可以给用户带来更好的体验。同时,请您放心,我们会妥善保管您的 view key,不会泄露给任何第三方。
view key
- FoxWallet Extension 是完全开源的,并在本地同步数据,无需上传。
view key
Aleo 提供商
FoxWallet 使用与 Leo Wallet 相同的协议。
获取提供程序
function getProvider() {
const provider = window.foxwallet && window.foxwallet.aleo;
if (!provider) {
window.open("https://foxwallet.com/download");
throw `Please guide users to download from FoxWallet official website`;
}
return provider;
}
方法
连接
连接当前账户
- 返回:
Promise
- 例:
try {
const provider = getProvider();
provider.on("connect", (address) => {
console.log("connected address ", address);
});
const address = await provider.connect("ON_CHAIN_HISTORY", "testnetbeta");
console.log("connected address ", address);
} catch (e) {
console.log('connect failed');
}
解密
解密密文
try {
const provider = getProvider();
const plaintext = await provider.decrypt("ciphertext1qgqxn5j5egd59rk0nfvvcrupgkf8c67d4k3sxpxvkzqs8ewjg0a67rvejfyppqralf8lqkjhefpuaptguctfkyzah25q5xjve6vvl0s8qc5mnrkg");
console.log("decrypt plaintext ", plaintext);
} catch (e) {
console.log('decrypt failed');
}
请求记录
请求 Connect 子账户的记录
try {
const provider = getProvider();
// type Record = {
// id: string;
// owner: string;
// program_id: string;
// spent: boolean;
// data: string;
// recordName: string;
// }
const records = await provider.requestRecords("credits.aleo");
console.log("requestRecords ", records);
} catch (e) {
console.log('requestRecords failed');
}
requestRecordPlaintexts
请求带有 Connect 子账户的解密明文的记录
try {
const provider = getProvider();
// type Record = {
// id: string;
// owner: string;
// program_id: string;
// spent: boolean;
// data: string;
// recordName: string;
// plaintext: string;
// }
const records = await provider.requestRecordPlaintexts("credits.aleo");
console.log("requestRecordPlaintexts ", records);
} catch (e) {
console.log('requestRecordPlaintexts failed');
}
请求事务
请求 Connect 子账户发送交易
try {
const provider = getProvider();
const result = await provider.requestTransaction({
address: "" /* connected address */,
chainId: "testnetbeta",
transitions: [{ program: "credits.aleo", functionName: "transfer_public", inputs: ["" /* transfer address */, "1000000u64"]}];
fee: 5555 /* estimate fee */,
feePrivate: false,
});
console.log("requestTransaction ", result);
} catch (e) {
console.log('requestTransaction failed');
}
transactionStatus
请求上一次发送的交易的状态
try {
const provider = getProvider();
const result = await provider.transactionStatus("" /* transaction id */);
// type Status = "Queued" | "Generating Prover Files" | "Generating Transaction" | "Broadcasting" | "Completed" | "Rejected" | "Finalized" | "Failed"
console.log("transactionStatus ", result);
} catch (e) {
console.log('transactionStatus failed');
}
请求部署
请求部署
try {
const provider = getProvider();
const result = await provider.requestDeploy({
address: "" /* connected address */,
chainId: "testnetbeta",
program: "" /* the program content to be deployed */,
fee: 2000000 /* estimate fee */;
feePrivate: false;
});
console.log("requestDeploy ", result);
} catch (e) {
console.log('requestDeploy failed');
}
支持的连接器
@demox-labs/aleo-wallet-adapter
npm install --save \
@demox-labs/aleo-wallet-adapter-base \
@demox-labs/aleo-wallet-adapter-react \
@demox-labs/aleo-wallet-adapter-reactui \
@demox-labs/aleo-wallet-adapter-leo \
@foxwallet/aleo-wallet-adapter-fox \
react
import React, { FC, useMemo } from "react";
import { WalletProvider } from "@demox-labs/aleo-wallet-adapter-react";
import { WalletModalProvider } from "@demox-labs/aleo-wallet-adapter-reactui";
import { LeoWalletAdapter } from "@demox-labs/aleo-wallet-adapter-leo";
import { FoxWalletAdapter } from "@foxwallet/aleo-wallet-adapter-fox";
import {
DecryptPermission,
WalletAdapterNetwork,
} from "@demox-labs/aleo-wallet-adapter-base";
// Default styles that can be overridden by your app
require("@demox-labs/aleo-wallet-adapter-reactui/styles.css");
export const Wallet: FC = () => {
const wallets = useMemo(
() => [
new LeoWalletAdapter({
appName: "Leo Demo App",
}),
new FoxWalletAdapter({}),
],
[]
);
return (
<WalletProvider
wallets={wallets}
decryptPermission={DecryptPermission.UponRequest}
network={WalletAdapterNetwork.Localnet}
autoConnect
>
<WalletModalProvider>
// Your app's components go here
</WalletModalProvider>
</WalletProvider>
);
};