# libquartz ![LOGO](https://github.com/mrquantumoff/libquartz/raw/master/quartz.png) Quartz protocols and backend that are using qkeys (quartz keys) ## Adding to your rust project * import by cloning the repo into your project * add ```libquartz = {path = ""}``` to Cargo.toml * add ```use libquartz::*``` to your rust project's file ## Adding to other languages * As of now we don't support ffi bindings for other languages. But if you want to help us you can always open a merge request. ## Shortly about keys (qkeys) * We recommend generating keys using the ```keytools::gen_key();``` function * Keys MUST be validated using ```keytools::check_if_the_key_is_valid();``` function ## What does each module stand for * ```keytools``` is used to generate/validate/get the default qkey(s) * ```msgservices``` is used to communicate between ```quartz-server``` and your project by getting/sending messages * ```encryption``` is used to encrypt/decrypt data using ```magic_crypt``` and your qkey generated by ```keytools::gen_key();```