chia_crypto_utils 1.0.20 copy "chia_crypto_utils: ^1.0.20" to clipboard
chia_crypto_utils: ^1.0.20 copied to clipboard

Chia Crypto Utils repository provides an object model for working with Chia primitives serving as a basis for a Chia client.

Chia Crypto Utils #

This repository provides an object model for working with Chia primitives serving as a basis for a Chia client.

  • Generating hardened and unhardened keys from a 24 word mnemonic seed
  • Standard transaction (XCH) coin spend
  • CAT
  • PlotNFT
  • NFT
  • Offer
  • Integration tests using the Chia simulator
  • Serialization and deserialization to and from Bytes for easy integration into secure storage
  • Atomic swap between Chia and Bitcoin

Dependencies #

This repository is written in Dart to enable mobile and web usage. You may install either the Dart SDK or the Flutter SDK, which also includes Dart.

Build and Test #

dart test
00:00 +0: test/wallet_service_test.dart: (suite)
  Skip: Integration test
00:08 +223 ~1: test/utils_test/utils_test.dart: should generate correct puzzle hashes from mnemonic
Fingerprint: 3109357790
Master public key (m): 901acd53bf61a63120f15442baf0f2a656267b08ba42c511b9bb543e31c32a9b49a0e0aa5e897bc81878d703fcd889f3
Farmer public key (m/12381/8444/0/0): 8351d5afd1ab40bf37565d25600c9b147dcda344e19d413b2c468316d1efd312f61a1eca02a74f8d5f0d6e79911c23ca
Pool public key (m/12381/8444/1/0): 926c9b71f4cfc3f8a595fc77d7edc509e2f426704489eaba6f86728bc391c628c402e00190ba3617931649d8c53b5520
First wallet address: txch1v8vergyvwugwv0tmxwnmeecuxh3tat5jaskkunnn79zjz0muds0qlg2szv
01:02 +896 ~1: All tests passed!

For integration tests, run the following command:

dart test integration_test/ --concurrency=1
00:28 +6: integration_test/network/mainnet_test.dart(suite)
  Skip: Test provided for reference, not nominally run
00:28 +6 ~1: integration_test/network/testnet10_test.dart: (suite)
  Skip: Test provided for reference, not nominally run
00:47 +14 ~2: All tests passed!

To run integration tests from VS Code UI, add the following json file to chia-crypto-utils root

simulator_gen_path.json

{
    "path":"absolute_path_to_simulator_gen_folder"
}

Coverage #

Dependencies #

Install Flutter and add the flutter tool to your path.

LCOV is used to create a coverage report in HTML format.

Generate Coverage Report #

Run the following commands to generate the coverage report:

flutter test ./integration_test test --coverage --concurrency=1
genhtml coverage/lcov.info -o coverage

View the coverage report:

open coverage/index.html
8
likes
100
pub points
42%
popularity

Publisher

verified publisherirulast.com

Chia Crypto Utils repository provides an object model for working with Chia primitives serving as a basis for a Chia client.

Repository (GitHub)
View/report issues

Documentation

API reference

License

Apache-2.0 (LICENSE)

Dependencies

args, bech32, bech32m_i, bip39, bitcoin_base_i, bs58, bs58check, collection, compute, crypto, csv, deep_pick, equatable, get_it, hex, http, injector, intl, meta, path, quiver, synchronized, tuple, uuid, walletconnect_dart_v2_i, yaml

More

Packages that depend on chia_crypto_utils