<commit_before>Scarab
======

FHE Library for encrypting/decrypting bits and performing add/mul (and/xor) over encrypted data.
Port/fork of the existing [library](https://github.com/hcrypt-project/libScarab) by <NAME>

[![CircleCI](https://circleci.com/gh/mindfreakthemon/scarab.svg?style=svg)](https://circleci.com/gh/mindfreakthemon/scarab)

Dependencies
======
* GMP: The GNU Multiple Precision Arithmetic Library — https://gmplib.org/ (or MPIR in GMP mode)
* MPIR: The GNU Multiple Precision Integers and Rationals — http://mpir.org/ (or GMP)
* MPFR: The GNU Multiple Precision Floating-Point Reliably — http://www.mpfr.org/ (required by FLINT)
* FLINT: Fast Library for Number Theory — http://flintlib.org/ (version *2.4.1*, included)

Building
======
The compilation is done using GYP and make.

```
$ gyp --depth=. --no-duplicate-basename-check
$ make library
```

Debian-based
------
```sudo apt-get install libgmp-dev libmpfr-dev libmpfr4 gcc g++ automake autoconf```.

RHEL-based
------
```sudo yum install gcc gcc-c++ automake autoconf```.
GMP and MPFR versions in the repo are outdated so you should just compile them from sources. Look for download links below.

Windows
-------

You can compile library under cygwin-x64 on Windows too. Just make sure you have installed all the following libs:<commit_msg>[skip ci] Adding token to ci badge<commit_after>Scarab
======

FHE Library for encrypting/decrypting bits and performing add/mul (and/xor) over encrypted data.
Port/fork of the existing [library](https://github.com/hcrypt-project/libScarab) by <NAME>

[![CircleCI](https://circleci.com/gh/mindfreakthemon/scarab.svg?style=shield&circle-token=25fb2f824128e9da50ae5d8ee333a4cad37d9392)](https://circleci.com/gh/mindfreakthemon/scarab)

Dependencies
======
* GMP: The GNU Multiple Precision Arithmetic Library — https://gmplib.org/ (or MPIR in GMP mode)
* MPIR: The GNU Multiple Precision Integers and Rationals — http://mpir.org/ (or GMP)
* MPFR: The GNU Multiple Precision Floating-Point Reliably — http://www.mpfr.org/ (required by FLINT)
* FLINT: Fast Library for Number Theory — http://flintlib.org/ (version *2.4.1*, included)

Building
======
The compilation is done using GYP and make.

```
$ gyp --depth=. --no-duplicate-basename-check
$ make library
```

Debian-based
------
```sudo apt-get install libgmp-dev libmpfr-dev libmpfr4 gcc g++ automake autoconf```.

RHEL-based
------
```sudo yum install gcc gcc-c++ automake autoconf```.
GMP and MPFR versions in the repo are outdated so you should just compile them from sources. Look for download links below.

Windows
-------

You can compile library under cygwin-x64 on Windows too. Just make sure you have installed all the following libs:
{'fraction_non_alphanumeric': 0.13438880706921943, 'fraction_numerical': 0.013254786450662739, 'mean_word_length': 4.306640625, 'pattern_counts': {'":': 0, '<': 5, '<?xml version=': 0, '>': 5, 'https://': 8, 'lorem ipsum': 0, 'www.': 2, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 2, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2510589', 'n_tokens_mistral': 948, 'n_tokens_neox': 860, 'n_words': 297}