{"id":19624772,"url":"https://github.com/drorasaf/flnotify","last_synced_at":"2026-06-06T20:31:24.869Z","repository":{"id":171608027,"uuid":"646993862","full_name":"drorasaf/FLNotify","owner":"drorasaf","description":"Code demonstrating how to integrate security into federated learning","archived":false,"fork":false,"pushed_at":"2023-11-06T11:38:37.000Z","size":20,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-26T19:47:49.927Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"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/drorasaf.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,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-05-29T20:30:21.000Z","updated_at":"2023-06-01T10:27:43.000Z","dependencies_parsed_at":null,"dependency_job_id":"6f7f1637-00bd-4098-bf6e-a0e2ac3eb8a7","html_url":"https://github.com/drorasaf/FLNotify","commit_stats":null,"previous_names":["drorasaf/flnotify"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/drorasaf/FLNotify","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/drorasaf%2FFLNotify","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/drorasaf%2FFLNotify/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/drorasaf%2FFLNotify/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/drorasaf%2FFLNotify/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/drorasaf","download_url":"https://codeload.github.com/drorasaf/FLNotify/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/drorasaf%2FFLNotify/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33999579,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-06T02:00:07.033Z","response_time":107,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":[],"created_at":"2024-11-11T11:38:59.679Z","updated_at":"2026-06-06T20:31:24.843Z","avatar_url":"https://github.com/drorasaf.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# FLNotify - Thesis\n\nThis code is part of thesis work to establish the FLNotify framework as a keycomponent in future federated learning architectures.\n\nThis repository is composed of 4 different components:\n1. infrastructure which contains the code for easily spinning up and down on AWS the required components for FedLess\n1. FLNotify is the package which provides notification for the security\n1. Modified FedLess version to include interaction with FLNotify to allow easy notification to security\n1. Flower based code with interaction to FLNotify, enabling another framework to integrate with this.\n\n\n## Get AWS credentials\n\nRun:\n`pip install awscli`\n`aws configure`\n\n## Installation\n\n1. Download terraform based on your platform from HashiCorp.\n1. Go to directory `cd infrastructure`\n1. Get AWS credentials\n1. Run `terraform apply`\n\n## Teardown of infrastructure\n\n1. Go to Directory `cd infrastructure`\n1. Get AWS credentials\n1. Run `terraform destroy`\n\n## Deploy FedLess\n\nAssuming installation has already happened, if not, please see [Installation](#Installation)\n\n1. Login to kubectl, run: `aws eks update-kubeconfig --region region-code --name my-cluster`\n1. Go to Fedless\\kubernetes\n1. Go to data-file-store\n1. run `kubectl -f deployment.yaml`\n1. run `kubectl -f service.yaml`\n1. Go to parameter-server\n1. create a helm package: `helm package parameter-server`\n1. deploy helm chart: `helm install -f parameter-server/values.yaml parameter-store parameter-server-0.1.0.tgz`\n1. deploy openwhisk on the cluster: `??`\n1. deploy invoker `??`\n1. deploy aggregator: `?`\n\n## setup clients ??\n\n## Get Data\n\nRun:\n1. `git clone https://github.com/andreas-grafberger/leaf.git`\n1. `cd data\\femnist`\n1. `./preprocess.sh -s niid --sf 0.25 -k 100 -t sample --smplseed 1549786595 --spltseed 1549786796 --nochecksum`\n1. `cd ../shakespeare`\n1. `./preprocess.sh -s niid --sf 1.0 -k 64 -tf 0.9 -t sample --nochecksum`\n\n## Run an experiment\n\nGo to scripts and run any of the existing experiments\n\n## Run an experiment on Flower\n\nTBD\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdrorasaf%2Fflnotify","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdrorasaf%2Fflnotify","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdrorasaf%2Fflnotify/lists"}