{"id":15457049,"url":"https://github.com/masaun/acl-smart-contract","last_synced_at":"2026-04-02T18:37:17.900Z","repository":{"id":112435132,"uuid":"462829579","full_name":"masaun/ACL-smart-contract","owner":"masaun","description":"Solidity smart contract that serves as an on-chain ACL (Access Control List) for Lit Protocol","archived":false,"fork":false,"pushed_at":"2022-03-20T23:03:58.000Z","size":117,"stargazers_count":17,"open_issues_count":0,"forks_count":5,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-04-22T10:10:51.958Z","etag":null,"topics":["access-control-list","acl","etherjs","hardhat","solidity"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/masaun.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2022-02-23T17:03:30.000Z","updated_at":"2024-03-23T13:24:25.000Z","dependencies_parsed_at":"2023-05-15T03:00:17.821Z","dependency_job_id":null,"html_url":"https://github.com/masaun/ACL-smart-contract","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/masaun/ACL-smart-contract","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/masaun%2FACL-smart-contract","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/masaun%2FACL-smart-contract/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/masaun%2FACL-smart-contract/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/masaun%2FACL-smart-contract/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/masaun","download_url":"https://codeload.github.com/masaun/ACL-smart-contract/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/masaun%2FACL-smart-contract/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31313044,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-02T12:59:32.332Z","status":"ssl_error","status_checked_at":"2026-04-02T12:54:48.875Z","response_time":89,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["access-control-list","acl","etherjs","hardhat","solidity"],"created_at":"2024-10-01T22:41:47.385Z","updated_at":"2026-04-02T18:37:17.860Z","avatar_url":"https://github.com/masaun.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ACL Smart Contract for Lit Protocol\n## 【Overview】\n- This is a solidity smart contract that serves as an on-chain ACL (Access Control List).\n  - This ACL smart contract includes permission and role-based governance\n\n\u003cbr\u003e\n\n## 【Specifications】\n- Users can have permissions (read or write) on a resource identified by a uint256 \n- \"admin users\" should be able to set and update those permissions  \n- There should be some kind of grouping mechanism for both users and admin users, with the ability to apply permissions to an entire   group, and to apply multiple groups to a resource.  \n  (NOTE: More detail of specifications of this ACL smart contract is here: https://docs.google.com/document/d/1obZDbb2_i0FTYNdg6uPQWWEUdyIO51bFsTEiJdokDzk/edit )\n\n\u003cbr\u003e\n\n## 【Workflow】\n- Diagram that is workflow of this ACL smart contract\n  - NOTE①: `AccessControlList contract (AccessControlList.sol)` is inherited by a Resource contract (Resource.sol)\n    (Every Resource contract inherit AccessControlList contract in this repo)\n\n  - NOTE②: `Resource contract (Resource.sol)` and `ResourceFactory contract (ResourceFactory.sol)` are mock contract for demo for this ACL smart contract\n    (Therefore, Both contracts should be replaced depends on projects that use this ACL smart contract)\n    ![diagram_ACL-smart-contract for-lit-protocol](https://user-images.githubusercontent.com/19357502/159188912-d65ea650-7e08-4c17-988e-d2567b6e78ec.jpeg)\n\n\u003cbr\u003e\n\n## 【Test】\n- Run a unit test of the AccessControlList.sol\n```\nnpm run test:AccessControlList\n```\n( `$ npx hardhat test ./test/AccessControlList.test.js --network hardhat` )\n\n\u003cbr\u003e\n\n- Run a senario test\n```\nnpm run test:Scenario\n```\n( `$ npx hardhat test ./test/AccessControlList.test.js --network hardhat` )\n\n\u003cbr\u003e\n\n- Run all of unit test\n```\nnpm run test\n```\n( `$ npx hardhat test --network hardhat` )\n\n\u003cbr\u003e\n\n## 【Demo】\n- This is the demo that the test of Scenario ( `./test/Scenario.test.js` ) above that includes the whole scenario of this ACL smart contracts is executed.  \n  https://youtu.be/Wc4ZrmJ-TH0  \n\n\u003cbr\u003e\n\n## 【References】\n- Lit Protocol: \n  - Website: https://litprotocol.com/\n\n\u003cbr\u003e\n\n- Prize of the Lit Protocol (in ETH Denver): https://www.ethdenver.com/bounties/lit-protocol\n  - Specifications of Access Control List (=ACL) Smart Contract: https://docs.google.com/document/d/1obZDbb2_i0FTYNdg6uPQWWEUdyIO51bFsTEiJdokDzk/edit\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmasaun%2Facl-smart-contract","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmasaun%2Facl-smart-contract","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmasaun%2Facl-smart-contract/lists"}