{"id":13654914,"url":"https://github.com/CryptoExperts/FV-NFLlib","last_synced_at":"2025-04-23T10:31:36.885Z","repository":{"id":69129298,"uuid":"58055509","full_name":"CryptoExperts/FV-NFLlib","owner":"CryptoExperts","description":"Library implementing the Fan-Vercauteren homomorphic encryption scheme","archived":false,"fork":false,"pushed_at":"2016-07-26T14:46:21.000Z","size":47,"stargazers_count":59,"open_issues_count":2,"forks_count":22,"subscribers_count":12,"default_branch":"master","last_synced_at":"2024-11-10T06:34:14.622Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/CryptoExperts.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2016-05-04T13:46:12.000Z","updated_at":"2024-09-27T14:42:25.000Z","dependencies_parsed_at":"2023-09-15T01:39:42.749Z","dependency_job_id":null,"html_url":"https://github.com/CryptoExperts/FV-NFLlib","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CryptoExperts%2FFV-NFLlib","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CryptoExperts%2FFV-NFLlib/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CryptoExperts%2FFV-NFLlib/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CryptoExperts%2FFV-NFLlib/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/CryptoExperts","download_url":"https://codeload.github.com/CryptoExperts/FV-NFLlib/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250416400,"owners_count":21426983,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-08-02T03:00:52.644Z","updated_at":"2025-04-23T10:31:36.620Z","avatar_url":"https://github.com/CryptoExperts.png","language":"C++","funding_links":[],"categories":["Libraries"],"sub_categories":["[Sunscreen](https://sunscreen.tech/)"],"readme":"# FV-NFLlib\nA header-only library implementing the Fan-Vercauteren homomorphic encryption scheme\n\n## What is it?\n\nFV-NFLlib is a software library implementing an [homomorphic encryption](https://en.wikipedia.org/wiki/Homomorphic_encryption) scheme (HE).\nFV-NFLlib implements the Fan-Vercauteren ([FV](http://eprint.iacr.org/2012/144)) scheme, and is based on the [NFLlib](https://github.com/quarkslab/NFLlib) C++ library dedicated to ideal lattice cryptography.\n\n## License\n\nGPLv3\n\n# Install Steps\n\nTo use the FV-NFLlib library, you need GMP, Mpfr, a C+11 compiler and the NFLlib library. The library only consists of a single header file **FV.hpp** that has to be included during the compilation of your program.\n\n# Tests\n\nThree tests are provided for the library\n\n- **tests/Test_binary_tree**: this program benchmarks the key generation, the encryption/decryption, homomorphic addition and homomorphic multiplication procedures. A binary tree of multiplications is evaluated to ensure correctness and the final noise bound is given.\n- **tests/Test_ec_additions**: this program computes in the clear and homomorphically an elliptic curve addition over the NIST P-256 curve. The code of the elliptic curve addition is templated, and called twice (once with FV::mess_t and once with FV::ciphertext_t)\n- **tests/Test_encrypt_poly**: this program encrypts two polynomials and computes their product homomorphically. It outputs a small SAGE program to test the correctness.\n\n## Contributors\n\nThis research-oriented library has been done by members of [CryptoExperts](https://www.cryptoexperts.com), and is part of the [HEAT](https://heat-project.eu/) project, and the CryptoComp project.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FCryptoExperts%2FFV-NFLlib","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FCryptoExperts%2FFV-NFLlib","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FCryptoExperts%2FFV-NFLlib/lists"}