{"id":13796607,"url":"https://github.com/funcool/buddy","last_synced_at":"2025-08-30T09:20:20.076Z","repository":{"id":13262395,"uuid":"15947609","full_name":"funcool/buddy","owner":"funcool","description":"Security library for Clojure","archived":false,"fork":false,"pushed_at":"2021-05-28T14:53:05.000Z","size":552,"stargazers_count":826,"open_issues_count":4,"forks_count":40,"subscribers_count":24,"default_branch":"master","last_synced_at":"2024-05-19T03:11:57.857Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Clojure","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/funcool.png","metadata":{"files":{"readme":"README.adoc","changelog":"CHANGES.md","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":"2014-01-15T20:38:23.000Z","updated_at":"2024-03-12T12:38:03.000Z","dependencies_parsed_at":"2022-09-23T11:31:41.761Z","dependency_job_id":null,"html_url":"https://github.com/funcool/buddy","commit_stats":null,"previous_names":[],"tags_count":39,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/funcool%2Fbuddy","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/funcool%2Fbuddy/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/funcool%2Fbuddy/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/funcool%2Fbuddy/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/funcool","download_url":"https://codeload.github.com/funcool/buddy/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":225159872,"owners_count":17430200,"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":[],"created_at":"2024-08-03T23:01:12.488Z","updated_at":"2024-11-18T10:31:27.926Z","avatar_url":"https://github.com/funcool.png","language":"Clojure","readme":"= Buddy - Security library for clojure.\nAndrey Antukh, \u003cniwi@niwi.nz\u003e\n:source-highlighter: pygments\n:pygments-style: friendly\n\nimage:http://clojars.org/buddy/latest-version.svg[\"Clojars Project\", link=\"http://clojars.org/buddy\"]\n\nNOTE: **this project is deprecated** and not going to be updated;\n**plase use the individual modules**: buddy-core, buddy-auth, buddy-sign\nand buddy-hashers.\n\n\n== Introduction\n\n_buddy_ is a complete security library for clojure. With support for:\n\n- authentication, authorization \u0026 access rules (ring/compojure extensions)\n- secure hash functions (digest)\n- password hashing algorithms (bcrypt, pbkdf2, scrypt)\n- message/text signing (high level interface)\n- signature \u0026 authentication (mac \u0026 digital signature)\n- encryption (block, stream ciphers, nonces, salts)\n- key derivation functions (kdf)\n\n\nSince version 0.3.0, buddy is split into four modules for improved modularity of the\napplication and to allow people to include only wanted parts of buddy instead of one\nmonolithic library.\n\nEach module has its own functionality and its own documentation. This document/page\nonly serves as an introduction to the library and the content of index.\n\nIf you are happy with the monolithic version of buddy, you may want include the\n\"buddy\" meta-package:\n\n[source, clojure]\n----\n[buddy \"2.0.0\"]\n----\n\nIn other case, see the concrete installation instructions of the module that you\nneed.\n\n\n== Modules Summary\n\n=== buddy-core\n\nCryptographyc API.\n\nWith that (maybe incomple) list of features:\n\n- cryptographic hash algorithms (digest)\n- key derivation algorithms (kdf)\n- digital signatures\n- message authentication (mac)\n- block ciphers\n- stream ciphers\n- padding schemes\n- nonces and salts\n- signature \u0026 authentication (mac \u0026 digital signature)\n- encryption (block \u0026 stream ciphers)\n\n\nGithub: https://github.com/funcool/buddy-core\n\nDocumentation: http://funcool.github.io/buddy-core/latest/\n\n\n=== buddy-auth\n\nAuthentication and Authorization for ring and ring-based\nweb applications.\n\nWith that list of features:\n\n- Authentication middlewares for ring.\n- Authorization middleware for ring.\n- Authentication/Authorization backends (token, http-basic, session).\n- Access rules system.\n\nGithub: https://github.com/funcool/buddy-auth\n\nDocumentation: http://funcool.github.io/buddy-auth/latest/\n\n\n=== buddy-hashers\n\nThe collection of secure password hashers.\n\n\nGithub: https://github.com/funcool/buddy-hashers\n\nDocumentation: http://funcool.github.io/buddy-hashers/latest/\n\n\n=== buddy-sign\n\nHigh level message signing module.\n\nWith that list of features:\n\n- Json Web Signature\n- Json Web Encryption\n- Compact message signing\n\nGithub: https://github.com/funcool/buddy-sign\n\nDocumentation: http://funcool.github.io/buddy-sign/latest/\n\n\n== External resources\n\n* Securing Clojure Microservices using buddy\n** http://rundis.github.io/blog/2015/buddy_auth_part1.html[Part 1: Creating Auth Tokens]\n** http://rundis.github.io/blog/2015/buddy_auth_part2.html[Part 2: WebApp authentication and authorization]\n** http://rundis.github.io/blog/2015/buddy_auth_part3.html[Part 3: Token revocation]\n** http://rundis.github.io/blog/2015/buddy_auth_part4.html[Part 4: Secure and liberate a service app]\n* http://kendru.github.io/restful-clojure/2015/03/13/securing-service-restful-clojure-part-4/[Securing the service | RESTful Clojure, Part 4]\n","funding_links":[],"categories":["Clojure","Libraries","Security","\u003ca name=\"Clojure\"\u003e\u003c/a\u003eClojure"],"sub_categories":["Clojure"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffuncool%2Fbuddy","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffuncool%2Fbuddy","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffuncool%2Fbuddy/lists"}