{"id":13733129,"url":"https://github.com/mattrglobal/ffi-bbs-signatures","last_synced_at":"2025-05-08T09:31:50.437Z","repository":{"id":38336144,"uuid":"263441804","full_name":"mattrglobal/ffi-bbs-signatures","owner":"mattrglobal","description":"An FFI wrapper around the implementation of BBS+ signatures in Ursa","archived":true,"fork":false,"pushed_at":"2025-02-26T00:16:11.000Z","size":45687,"stargazers_count":23,"open_issues_count":15,"forks_count":21,"subscribers_count":10,"default_branch":"master","last_synced_at":"2025-04-28T06:22:47.662Z","etag":null,"topics":["assurance","nucleus"],"latest_commit_sha":null,"homepage":"","language":"Rust","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/mattrglobal.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"docs/CONTRIBUTING.md","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}},"created_at":"2020-05-12T20:12:23.000Z","updated_at":"2025-03-17T23:48:12.000Z","dependencies_parsed_at":"2024-02-21T03:45:51.402Z","dependency_job_id":"3c3631f9-b05c-4a76-86eb-5ff3e8c8b5b6","html_url":"https://github.com/mattrglobal/ffi-bbs-signatures","commit_stats":{"total_commits":121,"total_committers":19,"mean_commits":6.368421052631579,"dds":0.6115702479338843,"last_synced_commit":"bba4ff32cf3c659b380237ca856266499e025705"},"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mattrglobal%2Fffi-bbs-signatures","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mattrglobal%2Fffi-bbs-signatures/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mattrglobal%2Fffi-bbs-signatures/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mattrglobal%2Fffi-bbs-signatures/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mattrglobal","download_url":"https://codeload.github.com/mattrglobal/ffi-bbs-signatures/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253036509,"owners_count":21844223,"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":["assurance","nucleus"],"created_at":"2024-08-03T03:00:38.023Z","updated_at":"2025-05-08T09:31:45.406Z","avatar_url":"https://github.com/mattrglobal.png","language":"Rust","funding_links":[],"categories":["Libraries"],"sub_categories":["Wrapped library"],"readme":"![Mattr logo](./docs/assets/mattr-black.svg)\n\n# BBS Signature FFI Wrapper\n\nThis repository is home to a foreign function interface (FFI) wrapper around the Rust based [bbs crate](https://crates.io/crates/bbs) maintained by the [Hyperledger Ursa project](https://github.com/hyperledger/ursa).\n\n[BBS+ Signatures](https://github.com/mattrglobal/bbs-signatures) are a digital signature algorithm originally born from\nthe work on [Short group signatures](https://crypto.stanford.edu/~xb/crypto04a/groupsigs.pdf) by Boneh, Boyen, and\nShachum which was later improved on in\n[Constant-Size Dynamic k-TAA](http://web.cs.iastate.edu/~wzhang/teach-552/ReadingList/552-14.pdf) as BBS+ and touched on\nagain in section 4.3 in\n[Anonymous Attestation Using the Strong Diffie Hellman Assumption Revisited ](https://www.researchgate.net/publication/306347781_Anonymous_Attestation_Using_the_Strong_Diffie_Hellman_Assumption_Revisited).\n\n[BBS+ Signatures](https://github.com/mattrglobal/bbs-signatures) require a\n[pairing-friendly curve](https://tools.ietf.org/html/draft-irtf-cfrg-pairing-friendly-curves-03), this library includes\nsupport for [BLS12-381](https://tools.ietf.org/html/draft-irtf-cfrg-pairing-friendly-curves-03#section-2.4).\n\n[BBS+ Signatures](https://github.com/mattrglobal/bbs-signatures) allow for multi-message signing whilst producing a\nsingle output signature. With a BBS signature, a [proof of knowledge](https://en.wikipedia.org/wiki/Proof_of_knowledge)\nbased proof can be produced where only some of the originally signed messages are revealed at the discretion of the\nprover.\n\n## Supported Environments\n\nEvery release of this repository publishes a new [github release](https://github.com/mattrglobal/ffi-bbs-signatures/releases/tag/v0.1.0) including publishing the platform specific artifacts required to run the library in different environments. See the [release process](./docs/RELEASE.md) for\nmore details on this process\n\n# Getting started\n\nThis repository makes use of [Yarn](https://yarnpkg.com/) to manage the dependencies related to the development environment\n\nTo install the development dependencies run\n\n```\nyarn install --frozen-lockfile\n```\n\nTo build the library for all available platforms run\n\n```\nyarn build\n```\n\n## Available wrappers\n\n.NET C# wrapper\n```\n./wrappers/dotnet\n```\n\nJava wrapper\n```\n./wrappers/java\n```\n\nObjective-C wrapper\n```\n./wrappers/obj-c\n```\n\nPython wrapper\n```\n./wrappers/python\n```\n\nEach wrapper has individual documentation:\n\n- [.NET C#](./wrappers/dotnet/README.md)\n- [Java](./wrappers/java/README.md)  \n- [Objective-C](./wrappers/obj-c/README.md)  \n- [Python](./wrappers/python/README.md)  \n\n## Project Structure\n\n```\n├── docs\n│   └─ {file_name.md}\n│\n│── scripts                 # Bash scripts for building static/dynamic rust libs\n│── src                     # Rust Bbs Signatures wrapper\n├── wrappers                # Individual wrapper source code\n│   └─ {wrapper_name}\n│       ├── README.md\n│       └─ {src files}\n│\n├── README.md\n└── CHANGELOG.md\n```\n\n## Contributing\n\nRead our [contributing guide](./docs/CONTRIBUTING.md) to learn about our development process.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmattrglobal%2Fffi-bbs-signatures","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmattrglobal%2Fffi-bbs-signatures","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmattrglobal%2Fffi-bbs-signatures/lists"}