#blockchain #gem

gemblockchain

Library to work with Gem blockchain

3 unstable releases

0.3.0 Dec 5, 2023
0.2.1 Aug 10, 2021
0.2.0 Feb 14, 2021
0.1.1 Nov 10, 2020
0.1.0 Nov 10, 2020

#5 in #gem


Used in gemgen

MIT license

66KB
1.5K SLoC

gem-lib-rust

crates.io docs.rs

Library to work with Gem blockchain

Usage

use std::time::{SystemTime, UNIX_EPOCH};
use gemblockchain::account::{PrivateKeyAccount, TESTNET};
use gemblockchain::base58::*;
use gemblockchain::seed::*;
use gemblockchain::transaction::*;

fn main() {
    let phrase = generate_phrase();
    let account = PrivateKeyAccount::from_seed(&phrase);
    println!("My TESTNET address: {}", account.public_key().to_address(TESTNET).to_string());

    let ts = SystemTime::now().duration_since(UNIX_EPOCH).unwrap().as_secs() * 1000;
    let tx = Transaction::new_alias(&account.public_key(), "rhino", TESTNET, 100000, ts);
    println!("ID is {}", tx.id().to_string());
    let ptx = account.sign_transaction(tx);
    println!("Proofs are {:?}", ptx.proofs.iter().map(|p| p.to_base58()).collect::<Vec<String>>());
}

Dependencies

~13–28MB
~421K SLoC