{"id":36470893,"url":"https://github.com/didchain/pbft","last_synced_at":"2026-01-12T00:37:15.029Z","repository":{"id":57575406,"uuid":"340821520","full_name":"didchain/pbft","owner":"didchain","description":"simple practical byzantine fault-tolerant ","archived":false,"fork":false,"pushed_at":"2021-02-25T02:57:12.000Z","size":2747,"stargazers_count":12,"open_issues_count":1,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-06-20T12:51:50.434Z","etag":null,"topics":["blockchain","consensus","pbft"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/didchain.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}},"created_at":"2021-02-21T05:02:00.000Z","updated_at":"2024-05-18T10:12:27.000Z","dependencies_parsed_at":"2022-09-26T19:02:12.846Z","dependency_job_id":null,"html_url":"https://github.com/didchain/pbft","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/didchain/pbft","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/didchain%2Fpbft","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/didchain%2Fpbft/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/didchain%2Fpbft/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/didchain%2Fpbft/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/didchain","download_url":"https://codeload.github.com/didchain/pbft/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/didchain%2Fpbft/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28329806,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-12T00:36:25.062Z","status":"ssl_error","status_checked_at":"2026-01-12T00:36:15.229Z","response_time":60,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6: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":["blockchain","consensus","pbft"],"created_at":"2026-01-12T00:37:14.968Z","updated_at":"2026-01-12T00:37:15.023Z","avatar_url":"https://github.com/didchain.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# PBFT\n## Practical Byzantine Fault Tolerance\n\n### Thus, the paper makes the following contributions:\n\n\n1. It describes the first state-machine replication protocol that correctly survives Byzantine faults in asynchronous networks.\n\n2. It describes a number of important optimizations that allow the algorithm to perform well so that it can be used in real systems.\n3. It describes the implementation of a Byzantine-fault- tolerant distributed file system.\n4. It provides experimental results that quantify the cost of the replication technique.\n\nWe use a Byzantine failure model, i.e., faulty nodes may behave arbitrarily, subject only to the restriction mentioned below. \nWe assume independent node failures. For this assumption to be true in the presence of malicious attacks, some steps need to \nbe taken, e.g., each node should run different implementations of the service code and operating system and should have a \ndifferent root password and a different administrator. It is possible to obtain different implementations from the same code\nbase and for low degrees of replication one can buy operating systems from different vendors. N-version programming, i.e., \ndifferent teams of programmers produce different implementations, is another option for some services.\n\n![](./safe_prove.jpg)\n\n![](./normal_case_operation.jpg)\n\n![](./pbft--behavior.jpg)","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdidchain%2Fpbft","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdidchain%2Fpbft","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdidchain%2Fpbft/lists"}