emeraldpay / emerald-vault

Secure account management for Ethereum blockchains
https://emerald.cash
Apache License 2.0
54 stars 25 forks source link
blockchain ethereum private-key rust

= Emerald Vault - Key Storage for Emerald Wallet

image:https://github.com/emeraldpay/emerald-vault/workflows/Test/badge.svg["Test"] image:https://coveralls.io/repos/github/emeraldpay/emerald-vault/badge.svg["Coveralls"] image:https://codecov.io/gh/emeraldpay/emeraldpay/branch/master/graph/badge.svg[Codecov,link=https://codecov.io/gh/emeraldpay/emerald-vault] image:https://img.shields.io/crates/v/emerald-vault.svg?style=flat-square["Crates",link="https://crates.io/crates/emerald-vault"] image:https://img.shields.io/badge/License-Apache%202.0-blue.svg["License"]

Rust library to store, access and operate cryptocurrency Private Keys, part of https://emerald.cash[Emerald Wallet].

== Architecture and Features

=== Features

=== Architecture

.Storage directory:

== Development

Ensure you have these dependencies installed:

[source]

openssl pkgconfig rustc cargo clang

cargo and rustc should be at least versions 0.31 and 1.31 respectively.

Should your distribution or operating system not have a recent cargo and rustc binaries, you can install them from http://doc.crates.io/

Install Protobuf codegen for Rust: https://github.com/stepancheg/rust-protobuf/tree/master/protobuf-codegen

.Generate Rust code from Protobuf

protoc --rust_out=src/proto --proto_path=./proto address.proto protoc --rust_out=src/proto --proto_path=./proto book.proto protoc --rust_out=src/proto --proto_path=./proto common.proto protoc --rust_out=src/proto --proto_path=./proto crypto.proto protoc --rust_out=src/proto --proto_path=./proto pk.proto protoc --rust_out=src/proto --proto_path=./proto seed.proto protoc --rust_out=src/proto --proto_path=./proto wallet.proto

[source]

cargo build

== Contact

image:https://badges.gitter.im/emeraldpay/community.svg?style=flat-square["Gitter",link="https://gitter.im/emeraldpay/community?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge"]

Chat with us via https://gitter.im/emeraldpay/community[Gitter]

== License

Copyright 2024 EmeraldPay, Ltd

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.