{"id":22799907,"url":"https://github.com/tangle-network/masp-protocol","last_synced_at":"2026-01-31T13:32:36.947Z","repository":{"id":167268321,"uuid":"642112320","full_name":"tangle-network/masp-protocol","owner":"tangle-network","description":"Multi-asset shielded pool extending protocol-solidity contract system","archived":false,"fork":false,"pushed_at":"2024-09-09T11:04:55.000Z","size":1196,"stargazers_count":3,"open_issues_count":20,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-06-09T21:16:49.924Z","etag":null,"topics":["cryptography","privacy","zero-knowledge"],"latest_commit_sha":null,"homepage":"https://docs.webb.tools/docs/protocols/masp/overview/","language":"Solidity","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/tangle-network.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":".github/CONTRIBUTING.md","funding":null,"license":"LICENSE.Apache-2.0","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-05-17T21:11:25.000Z","updated_at":"2023-11-21T06:11:43.000Z","dependencies_parsed_at":"2023-12-28T02:34:30.035Z","dependency_job_id":"40d0c5ec-6c73-4dcb-99ee-b9b62301111b","html_url":"https://github.com/tangle-network/masp-protocol","commit_stats":null,"previous_names":["webb-tools/protocol-solidity-extensions","tangle-network/masp-protocol","webb-tools/masp-protocol"],"tags_count":38,"template":false,"template_full_name":null,"purl":"pkg:github/tangle-network/masp-protocol","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tangle-network%2Fmasp-protocol","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tangle-network%2Fmasp-protocol/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tangle-network%2Fmasp-protocol/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tangle-network%2Fmasp-protocol/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tangle-network","download_url":"https://codeload.github.com/tangle-network/masp-protocol/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tangle-network%2Fmasp-protocol/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":260857429,"owners_count":23073441,"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":["cryptography","privacy","zero-knowledge"],"created_at":"2024-12-12T07:10:14.205Z","updated_at":"2026-01-31T13:32:31.904Z","avatar_url":"https://github.com/tangle-network.png","language":"Solidity","readme":"\u003cdiv align=\"center\"\u003e\n\u003ca href=\"https://www.webb.tools/\"\u003e\n\n  ![Webb Logo](./.github/assets/webb_banner_light.png#gh-light-mode-only)\n  ![Webb Logo](./.github/assets/webb_banner_dark.png#gh-dark-mode-only)\n  \u003c/a\u003e\n\u003c/div\u003e\n\u003cp align=\"left\"\u003e\n    \u003cstrong\u003eWebb's Solidity Multi Asset Shielded Pool Protocol\u003c/strong\u003e\n\u003c/p\u003e\n\n[![GitHub Workflow Status](https://img.shields.io/github/actions/workflow/status/webb-tools/masp-protocol/check.yml?branch=main\u0026style=flat-square)](https://github.com/webb-tools/masp-protocol/actions) [![License Apache 2.0](https://img.shields.io/badge/License-Apache%202.0-blue.svg?style=flat-square)](https://www.apache.org/licenses/LICENSE-2.0) [![Twitter](https://img.shields.io/twitter/follow/webbprotocol.svg?style=flat-square\u0026label=Twitter\u0026color=1DA1F2)](https://twitter.com/webbprotocol) [![Telegram](https://img.shields.io/badge/Telegram-gray?logo=telegram)](https://t.me/webbprotocol) [![Discord](https://img.shields.io/discord/833784453251596298.svg?style=flat-square\u0026label=Discord\u0026logo=discord)](https://discord.gg/cv8EfJu3Tn)\n\n\n\u003c!-- TABLE OF CONTENTS --\u003e\n\u003ch2 id=\"table-of-contents\" style=border:0!important\u003e Table of Contents\u003c/h2\u003e\n\n\u003cdetails open=\"open\"\u003e\n  \u003csummary\u003eTable of Contents\u003c/summary\u003e\n  \u003cul\u003e\n    \u003cli\u003e\u003ca href=\"#start\"\u003e Getting Started\u003c/a\u003e\u003c/li\u003e\n    \u003cli\u003e\u003ca href=\"#compile\"\u003eInstall and Compile\u003c/a\u003e\u003c/li\u003e\n    \u003cli\u003e\u003ca href=\"#test\"\u003eTesting\u003c/a\u003e\u003c/li\u003e\n    \u003cli\u003e\u003ca href=\"#contribute\"\u003eContributing\u003c/a\u003e\u003c/li\u003e\n    \u003cli\u003e\u003ca href=\"#license\"\u003eLicense\u003c/a\u003e\u003c/li\u003e\n  \u003c/ul\u003e  \n\u003c/details\u003e\n\n\u003ch2 id=\"start\"\u003e Getting Started \u003c/h2\u003e\n\nThe `masp-protocol` contains a `protocol-solidity` protocol extension for multi-asset shielded pools. Multi-asset shielded pools (MASP) are pools that shield multiple asset types under one pool system. This protocol currently supports both ERC20 fungible assets as well as non-fungible (NFT) assets. This protocol is built on top of the core `protocol-solidity` contracts by adding new functionality.\n\nOther features of this MASP protocol are\n- Shielded atomic swaps (SAS) between ERC20 and NFT assets.\n- Delegatable proof generation for outsourcing heavy computation.\n- Liquidity incentives for anonymity set growth.\n- Viewing keys for compliance.\n- Rollup functionality for batched deposits.\n- (Coming soon) Fuzzy message detection over encrypted records.\n\nFor additional documentation on the MASP protocol, please refer to the [Webb MASP docs](https://docs.webb.tools/docs/protocols/masp/overview/).\n\nFor additional information on the base `protocol-solidity`, please refer to the [Webb protocol-solidity implementation docs](https://webb-tools.github.io/protocol-solidity/) and the official [Webb docs site](http://docs.webb.tools/). Have feedback on how to improve protocol-solidity? Or have a specific question to ask? Checkout the [Anchor System Feedback Discussion](https://github.com/webb-tools/feedback/discussions/categories/anchor-protocol).\n\n\u003ch2 id=\"compile\"\u003e Installation \u0026 Compile 💻 \u003c/h2\u003e\n\n### Install Build Dependencies: \n\n- [Installing circom](https://docs.circom.io/getting-started/installation/#installing-circom)\n\n- [Installing snarkjs](https://docs.circom.io/getting-started/installation/#installing-snarkjs)\n\n### Install Project Dependencies: \n\n```\nyarn install \n```\n\nUpdate submodules:\n\n```\ngit submodule update --init --recursive\n```\n\nPopulate fixtures from the submodules:\n\n```\nyarn fetch:fixtures\n```\n\nTo compile contracts and build typescript interfaces\n\n```\nyarn build\n```\n\nTo run test suite:\n\n```\nyarn test\n```\n\nTo fix the formatting, please run:\n\n```\nyarn format\n```\n\n\n**Note:** If you push new fixtures to remote storage\n\nYou can use `dvc` tool and run following commands:\n```\ncd solidity-fixtures\ndvc add solidity-fixtures\ndvc push --remote s3-read-write\n```\n\n## Troubleshooting\n\n[1] You may get following error while building on macBook if `gnu-sed` is not installed. Install it and add to your path as discussed [here](https://stackoverflow.com/questions/43696304/how-do-i-fix-sed-illegal-option-r-in-macos-sierra-android-build).\n```bash\nsed: 1: \"packages/masp-anchor-co ...\": extra characters at the end of p command\nsed: 1: \"packages/masp-anchor-co ...\": extra characters at the end of p command\nerror Command failed with exit code 1.\n```\n\n\n\u003ch2 id=\"contribute\"\u003e Contributing \u003c/h2\u003e\n\nIf you have a contribution in mind, please check out our [Contribution Guide](./.github/CONTRIBUTING.md) for information on how to do so. We are excited for your first contribution!\n\n\u003ch2 id=\"license\"\u003e License \u003c/h2\u003e\n\nLicensed under \u003ca href=\"LICENSE\"\u003eApache 2.0 / MIT license\u003c/a\u003e.\n\nUnless you explicitly state otherwise, any contribution intentionally submitted for inclusion in this crate by you, as defined in the MIT OR Apache 2.0 license, shall be licensed as above, without any additional terms or conditions.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftangle-network%2Fmasp-protocol","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftangle-network%2Fmasp-protocol","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftangle-network%2Fmasp-protocol/lists"}