=nil; Foundation

## About the company

The company develops and standardizes databases and cryptography.

The company was founded in April 2018. The Company is a merger of other projects in 2011 and 2013 based on similar technologies to support their development and ensure wider dissemination.

Since 2013, the company's technology has expanded to a set of schemes and libraries of cryptography, data storage libraries with security principles, database management systems with the ability to audit, protocols, replication configurations and much more.

## Projects of the company

Company =nil; Foundation presented the following developments:

1. =nil; Crypto3's Filecoin Prover. Official website. Crypto3's Filecoin prover is a more performant and less hardware-demanding Filecoin prover alternative. This prover along with our version of Lotus Filecoin protocol implementation makes FIL mining up to 10x more profitable than with official rust-fil-proofs library. Filecoin uses zk-SNARK to prove data is stored correctly during specific period. Precisely, three zk-SNARK circuits are used for several proving steps: PoRep(C2), Winning PoSt and Window PoSt.

Company provides own more performant and less hardware-demanding prover (miner) to Filecoin miners for sale or as a subscribtion (service agreement) to all the performance updates and reliability improvements.

2. =nil; Foundation Database Management System. Official website. =nil; DBMS is a database management system which encourages users to optimize itself for particular project's needs with using replication protocols speficic for one particualar database, adjusting storage engines' data structures for particular database's data internal structure needs or use imperative compiled or interpreted languages as a query languages.

3. =nil; Crypto3 Cryptography Suite (libcrypto3). Official website. Crypto3 cryptography suite intention is:

* to provide a secure, fast and architecturally clean C++ generic cryptography schemes implementation.
* to provide a developer-friendly, modular suite, usable for novel schemes implementation and further extension.
* to provide a Standard Template Library-alike C++ interface and concept-based architecture implementation.

Cryptography suite contains multiple modules from encoding (e.g. base64) to complex public-key protocols (e.g. threshold schemes, zero-knowledge protocol or verifiable delay functions).

Detailed list of modules available is accessible at «Modules» on official website of the company.

Cryptography suite comes in several modifications:

**a. Generic Usage.** Generic usage-intended cryptography suite is split to modules available at GitHub =nil; Crypto3 Team Repositoties. Some of them are not for standalone usage, some of them are. So there is a suite superproject repository available at Crypto3 GitHub.

Superproject includes all the modules available as submodules emplaced in `libs` directory.

This case is handled by several branches of the same intention in all the module repositories as well as in superproject repository. These branches are partially compliant to GitFlow branching model:

* `master` - contains tagged release versions.
* `develop` - contains in-development library state, used for feature-branching.
* `#version-branch` - contains changes related to particular version development.
* `#issue-branch` - contains changes related to particular issue.

Such a case supposes all the actual development is processed in modules repositories, so there would not be many of issue-related branches in superproject repository.

Generic-purposed suite uses CMake as build system with cmake-modules CMake library used for easier in-project targets management.

**b. In-Boost Usage.** In-Boost usage supposes the library to contain only proven and secure state-of-art modules packed into one repository with no submodules at all.

Boost-ified version is handled by separate repository Boost Crypto3

For now this gets accomplished by several branches:

* `master` - contains tagged release version of Boost-ified library with modules only approved by Boost community to be included in library.
* `develop` - contains in-development library state.

All the actual development is processed in library's generic-purpose modification, so this means Boost-related branches are merge-only.

**c. Particular Module Usage.** Usage of particular modules is supposed to be useful for minimization of resulting project sources amount and reducing the dependencies tree height.

**d. Usage via other language bindings.**

## Partners

Partners of =nil; Foundation are:

* P2P Validator – validator-company of blockchain on PoS.
* Free TON. In the future, TON blockchain technologies will expand the company's product base.

## Links

1. Official website
2. =nil; Foundation on Githab
3. =nil; Foundation on Twitter