{"id":28113243,"url":"https://github.com/jeremyh/jBCrypt","last_synced_at":"2025-05-14T05:06:41.027Z","repository":{"id":1045677,"uuid":"876889","full_name":"jeremyh/jBCrypt","owner":"jeremyh","description":"A Java implementation of OpenBSD's Blowfish password hashing code","archived":false,"fork":false,"pushed_at":"2020-11-23T16:04:37.000Z","size":18,"stargazers_count":572,"open_issues_count":18,"forks_count":117,"subscribers_count":24,"default_branch":"master","last_synced_at":"2025-04-05T12:05:45.745Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"http://www.mindrot.org/projects/jBCrypt","language":"Java","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/jeremyh.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":"2010-09-01T06:50:53.000Z","updated_at":"2025-03-27T09:38:42.000Z","dependencies_parsed_at":"2022-07-20T12:17:15.269Z","dependency_job_id":null,"html_url":"https://github.com/jeremyh/jBCrypt","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jeremyh%2FjBCrypt","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jeremyh%2FjBCrypt/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jeremyh%2FjBCrypt/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jeremyh%2FjBCrypt/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jeremyh","download_url":"https://codeload.github.com/jeremyh/jBCrypt/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254076849,"owners_count":22010611,"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":"2025-05-14T05:01:34.724Z","updated_at":"2025-05-14T05:06:41.004Z","avatar_url":"https://github.com/jeremyh.png","language":"Java","funding_links":[],"categories":["安全"],"sub_categories":[],"readme":"# JBCrypt\njBCrypt is an implementation the OpenBSD Blowfish password hashing algorithm,\nas described in [\"A Future-Adaptable Password\nScheme\"](http://www.openbsd.org/papers/bcrypt-paper.ps) by Niels Provos and\nDavid Mazieres.  \n\nThis system hashes passwords using a version of Bruce Schneier's Blowfish block\ncipher with modifications designed to raise the cost of off-line password\ncracking. The computation cost of the algorithm is parameterised, so it can be\nincreased as computers get faster.  \n\nJUnit regression tests are available in in TestBCrypt.java\n\njBCrypt is licensed under a ISC/BSD licence. See the LICENSE file for details.\n\nPlease report bugs to Damien Miller \u003cdjm@mindrot.org\u003e. Please check the\nTODO file first, in case your problem is something I already know about\n(please send patches!)\n\nA simple example that demonstrates most of the features:\n\n\t// Hash a password for the first time\n\tString hashed = BCrypt.hashpw(password, BCrypt.gensalt());\n\n\t// gensalt's log_rounds parameter determines the complexity\n\t// the work factor is 2**log_rounds, and the default is 10\n\tString hashed = BCrypt.hashpw(password, BCrypt.gensalt(12));\n\n\t// Check that an unencrypted password matches one that has\n\t// previously been hashed\n\tif (BCrypt.checkpw(candidate, hashed))\n\t\tSystem.out.println(\"It matches\");\n\telse\n\t\tSystem.out.println(\"It does not match\");\n\nThere is also a [C#/.NET port by Derek Slager](http://derekslager.com/blog/posts/2007/10/bcrypt-dotnet-strong-password-hashing-for-dotnet-and-mono.ashx)\n\n\n# Package notes\n\nThis is an alternative distribution of [jBCrypt](http://www.mindrot.org/projects/jBCrypt). It has been\npackaged to ease use in existing applications \u0026mdash; especially those using\nApache Maven. \n\nThe code is unchanged from the original jBCrypt 0.4, however:\n\n- The classes have been moved to a java package to avoid pollution of the\n  global namespace. *org.mindrot* was chosen to reflect their original origin.\n- The JBCrypt class javadoc has been changed to version 0.4. The official\n  package incorrectly contains 0.2 as the stated version.\n- A pom.xml file has been added for use with Maven \n\n## Maven setup\n\nInstall it to your local Maven repository:\n\n\tmvn clean javadoc:jar source:jar install\n\nUse it in your project by adding the following to your project *pom.xml*:\n\n        \u003cdependency\u003e\n            \u003cgroupId\u003eorg.mindrot\u003c/groupId\u003e\n            \u003cartifactId\u003ejbcrypt\u003c/artifactId\u003e\n            \u003cversion\u003e0.3\u003c/version\u003e\n        \u003c/dependency\u003e\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjeremyh%2FjBCrypt","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjeremyh%2FjBCrypt","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjeremyh%2FjBCrypt/lists"}