{"id":13438836,"url":"https://github.com/briansmith/webpki","last_synced_at":"2025-05-13T22:02:28.583Z","repository":{"id":2733259,"uuid":"41473746","full_name":"briansmith/webpki","owner":"briansmith","description":"WebPKI X.509 Certificate Validation in Rust","archived":false,"fork":false,"pushed_at":"2025-01-21T21:57:12.000Z","size":681,"stargazers_count":471,"open_issues_count":109,"forks_count":166,"subscribers_count":20,"default_branch":"main","last_synced_at":"2025-04-29T13:15:05.718Z","etag":null,"topics":["certificate","pkix","rust","webpki","x509"],"latest_commit_sha":null,"homepage":"https://briansmith.org/rustdoc/webpki/","language":"Rust","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/briansmith.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,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2015-08-27T08:03:31.000Z","updated_at":"2025-04-06T14:54:57.000Z","dependencies_parsed_at":"2023-10-02T21:59:48.194Z","dependency_job_id":"2123d359-b326-49e2-9cf0-c136ca5592bf","html_url":"https://github.com/briansmith/webpki","commit_stats":{"total_commits":349,"total_committers":18,"mean_commits":19.38888888888889,"dds":0.08595988538681953,"last_synced_commit":"b481381e914de604df30b1be2fe72d938a5c0e57"},"previous_names":[],"tags_count":12,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/briansmith%2Fwebpki","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/briansmith%2Fwebpki/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/briansmith%2Fwebpki/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/briansmith%2Fwebpki/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/briansmith","download_url":"https://codeload.github.com/briansmith/webpki/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254036807,"owners_count":22003652,"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":["certificate","pkix","rust","webpki","x509"],"created_at":"2024-07-31T03:01:08.858Z","updated_at":"2025-05-13T22:02:28.538Z","avatar_url":"https://github.com/briansmith.png","language":"Rust","funding_links":[],"categories":["Libraries","Frameworks and Libs","库 Libraries","Rust","库"],"sub_categories":["Cryptography","Rust","密码学 Cryptography","加密"],"readme":"THE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHORS DISCLAIM ALL WARRANTIES\nWITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF\nMERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR\nANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES\nWHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN\nACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF\nOR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.\n\n\n\nWhat is webpki?\n==================\n\nwebpki is a library that validates Web PKI (TLS/SSL) certificates. webpki\nis designed to provide a **full** implementation of the client side of the\n**Web PKI** to a diverse range of applications and devices,\nincluding embedded (IoT) applications, mobile apps, desktop applications, and\nserver infrastructure. webpki is intended to not only be the best\nimplementation of the Web PKI, but to also *precisely define* what the Web PKI\nis.\n\nwebpki is written in [Rust](https://www.rust-lang.org/) and uses\n[*ring*](https://github.com/briansmith/ring) for signature verification.\n\nwebpki is strongly influenced by\n[mozilla::pkix](https://github.com/briansmith/mozillapkix). You can read a\nlittle about the ideas underlying both mozilla::pkix and webpki in\n[insanity::pkix: A New Certificate Path Building \u0026 Validation\nLibrary](https://briansmith.org/insanity-pkix).\n\nThe Rust compiler statically guarantees there are no buffer overflows,\nuses-after-free, double-frees, data races, etc. in webpki. webpki takes\nadvantage of Rust's borrow checker to ensure that its **zero-copy parsing**\nstrategy is safe and efficient. webpki *never* allocates memory on the heap,\nand it maintains a tight bound on the amount of stack memory it uses. webpki\navoids all superfluous PKIX features in order to keep its object code size\nsmall. Further reducing the code size of webpki is an important goal.\n\nThis release is the very first prototype. Lots of improvements are planned,\nincluding:\n\n* An extensive automated test suite.\n* Key pinning.\n* Certificate Transparency support.\n* Short-lived certificate, OCSP stapling, and CRLSet support.\n* Customization of the supported algorithms, key sizes, and elliptic curves\n  allowed during a validation.\n* A C language wrapper interface to allow using webpki in non-Rust\n  applications.\n* A specification of precisely what the Web PKI is.\n\n\n\nDemo\n====\n\nSee https://github.com/ctz/rustls#example-code for an example of using\nwebpki.\n\n\n\nLicense\n=======\n\nSee [LICENSE](LICENSE). This project happily accepts pull requests without any\nformal copyright/contributor license agreement. Pull requests must explicitly\nindicate who owns the copyright to the code being contributed and that the code\nis being licensed under the same terms as the existing webpki code.\n\n\n\nBug Reporting\n=============\n\nPlease report bugs either as pull requests or as issues in [the issue\ntracker](https://github.com/briansmith/webpki/issues). webpki has a\n**full disclosure** vulnerability policy. **Please do NOT attempt to report\nany security vulnerability in this code privately to anybody.**\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbriansmith%2Fwebpki","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbriansmith%2Fwebpki","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbriansmith%2Fwebpki/lists"}