{"id":27968817,"url":"https://github.com/raaz-crypto/verse-coq","last_synced_at":"2025-06-29T05:37:17.128Z","repository":{"id":7930390,"uuid":"55611548","full_name":"raaz-crypto/verse-coq","owner":"raaz-crypto","description":"VERified asSembler for cryptographic primitives","archived":false,"fork":false,"pushed_at":"2023-07-15T13:37:39.000Z","size":1656,"stargazers_count":12,"open_issues_count":5,"forks_count":5,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-05-07T21:07:20.616Z","etag":null,"topics":["coq","cryptography","edsl"],"latest_commit_sha":null,"homepage":"","language":"Coq","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/raaz-crypto.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,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2016-04-06T14:11:43.000Z","updated_at":"2024-01-12T18:07:51.000Z","dependencies_parsed_at":"2025-05-07T21:07:21.447Z","dependency_job_id":"1d73436b-4e47-434c-a77e-c2f3af75d2d6","html_url":"https://github.com/raaz-crypto/verse-coq","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/raaz-crypto%2Fverse-coq","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/raaz-crypto%2Fverse-coq/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/raaz-crypto%2Fverse-coq/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/raaz-crypto%2Fverse-coq/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/raaz-crypto","download_url":"https://codeload.github.com/raaz-crypto/verse-coq/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/raaz-crypto%2Fverse-coq/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":259222992,"owners_count":22824173,"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":["coq","cryptography","edsl"],"created_at":"2025-05-07T21:07:17.842Z","updated_at":"2025-06-29T05:37:17.111Z","avatar_url":"https://github.com/raaz-crypto.png","language":"Coq","funding_links":[],"categories":[],"sub_categories":[],"readme":"Verse\n=====\n\n[![License: Apache-2.0][shields-license]][apache-2]\n[![][ci-badge]][ci]\n[![][checks-badge]][checks]\n\nA domain specific language in coq used to write low-level\ncryptographic primitives.\n\nConfiguring and installing\n--------------------------\n\nWe recommend the use of opam2 for working with coq. To know which\nversions are supported refer to the [CI status page][github-actions].\n\n\n## Setting up the coq environment.\n\nWe assume that you are using opam-2 in which case you need to\ninitialise it with the `--disable-sandboxing` option. Otherwise the\npackage coq-color used by verse will not compile.\n\n\n```bash\nopam init  --disable-sandboxing  --compiler \"$OCAML_VER\"\nopam repo add coq-released https://coq.inria.fr/opam/released\nopam update\n```\n\nYou will now need to get a version of coq. Select one of the coq\nversions using which verse [is tested on our CI\nsystem][github-actions].\n\n```\nopam install coq.\"$COQ_VER\"\nopam pin add coq \"$COQ_VER\"\nopam install coq-color\n```\n\nFinally prepare the opam environment, configure, and then make.\n\n```\neval $(opam config env) # set up opam environment if needed.\n./configure.sh\nmake\n\n```\n\nProgramming in Verse\n--------------------\n\nVerse is an _Embedded Domain Specific Language_ (EDSL) where the\ntarget code is represented as an inductive type in Coq. This EDSL is\nuse to implement actual primitives, the source of which are available\nin the directory `src/Verse/CryptoLib`. The extracted low level code\nis distributed as a separate library called [libverse], a library that\ncan be embedded in other high level libraries. A snapshot of\n[libverse] is built from the coq source using the helper scripts\npresent in the directory `crypto-lib`.\n\n\n# Legal\n\nCopyright 2018, Piyush P Kurur\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nYou may obtain a copy of the License at\n\n   http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n\nSPDX-License-Identifier: Apache-2.0\n\n\n[wiki]: \u003chttps://github.com/raaz-crypto/verse-coq/wiki\u003e \"Verse coq repo\"\n[repo]: \u003chttps://github.com/raaz-crypto/verse-coq\u003e \"Verse on github\"\n\n[emailgroups]: \u003chttps://groups.google.com/forum/#!forum/hraaz\u003e \"Raaz on Google groups\"\n\n[libverse]: \u003chttps://github.com/raaz-crypto/libverse\u003e\n[shields-license]: \u003chttps://img.shields.io/badge/License-Apache--2.0-informational.svg\u003e\n[apache-2]: \u003chttp://www.apache.org/licenses/LICENSE-2.0\u003e \"Apache-2.0 license\"\n\n[ci-badge]: \u003chttps://github.com/raaz-crypto/verse-coq/actions/workflows/ci.yml/badge.svg\u003e\n                \"Building Checks\"\n[ci]: \u003chttps://github.com/raaz-crypto/verse-coq/actions/workflows/ci.yaml\u003e\n                \"Build Checks\"\n[checks-badge]: \u003chttps://github.com/raaz-crypto/verse-coq/actions/workflows/checks.yml/badge.svg\u003e\n                \"Source Checks\"\n[checks]: \u003chttps://github.com/raaz-crypto/verse-coq/actions/workflows/checks.yml\u003e\n                \"Source Checks\"\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fraaz-crypto%2Fverse-coq","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fraaz-crypto%2Fverse-coq","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fraaz-crypto%2Fverse-coq/lists"}