Download Passay
Download the latest version which includes source code, classes, javadocs, and tests in zip or tar.gz format.
Individual artifacts are available in the Maven Central Repository .
If you would like to use this project in your maven build, include the following in your pom.xml:
<dependencies>
<dependency>
<groupId> org.passay</groupId>
<artifactId> passay</artifactId>
<version> 2.0.0</version>
</dependency>
</dependencies>
Release Notes
Version 2.0.0 - 05Apr2026
v2 contains many API breaking changes which were introduced to support new features and improve extensibility. The following list is not comprehensive, but are likely the most impactful:
Setters removed on many classes in favor of constructor parameters
PasswordValidator is now an interface and returns ValidationResult
DefaultPasswordValidator is the primary implementation provided by passay
Many classes reorganized into new sub-packages
org.passay.data for CharacterData and SequenceData
org.passay.rule for Rule implementations
org.passay.resolver for MessageResolver implementations
org.passay.support for password data classes
New maven modules to avoid the use of optional dependencies
passay-crypt for classes requiring cryptographic functions
passay-bloom for Bloom implementation and dependencies
passay-spring for classes with Spring dependencies
Issue
Description
passay-181
Add retryLimit support for password generation
passay-180
BufferOverflowException when generating password
passay-177
Password generator improvements; Leverage both Allowed and Illegal characters
passay-175
Clear password data from memory
passay-172
Allow PasswordValidator to fail fast when using expensive rules
passay-171
Remove RepeatCharacterRegexRule in favor of RepeatCharactersRule
passay-169
Add property keys and count categories for special character variants
passay-167
Character counts should use code points
Version 1.6.6 - 14Oct2024
Issue
Description
passay-162
Fix broken GermanSequenceData; See #153
passay-160
Separate EnglishCharacterData special symbols
passay-158
Invalid generation password rules for retry
Version 1.6.5 - 24Aug2024
Issue
Description
passay-154
Add retry to PasswordGenerator
passay-153
add missing ‘ß’ to GermanSequenceData
passay-152
Password generator does not always generate valid password
Version 1.6.4 - 23Sep2023
Issue
Description
passay-146
Add password rule for haveibeenpwned.com
passay-142
Add missing Polish characters
Version 1.6.3 - 19Mar2023
Issue
Description
passay-139
Missing possibility to translate “contains”, “starts with” and “ends with”
passay-134
RepeatCharacterRegexRule generates an exception in certain Locales
Version 1.6.2 - 02Aug2022
Issue
Description
passay-133
Add keyboard sequence for german QWERTZ layout
passay-132
Add CyrillicModernCharacterData and CyrillicModernSequenceData
Version 1.6.1 - 21Jul2021
Issue
Description
passay-129
Fix buffer overflow in PasswordGenerator
passay-128
Add CyrillicCharacterData and CyrillicSequenceData
passay-125
Add CzechCharacterData and CzechSequenceData
Version 1.6.0 - 12Apr2020
Note that the default message property file name has changed from message.properties to passay.properties.
Issue
Description
passay-117
Add support for pattern flags in regular expression rules
passay-112
Add support for messaging via resource bundles
passay-109
Support multiple messages for single character based rules
passay-108
Add german CharacterData/SequenceData
passay-105
Add PolishCharacterData and PolishSequenceData
passay-103
Support plain and zipped streams in WordLists utility
Version 1.5.0 - 12Apr2019
Version 1.4.0 - 09Jan2019
Issue
Description
passay-80
Add BloomFilter dictionary
passay-78
Add support for digested dictionaries
passay-76
Support BCryptHashBean
passay-72
BufferOverflowException for certain cachePercent and file sizes
Version 1.3.1 - 22Feb2018
Issue
Description
passay-71
Add RuleResultMetadata
passay-68
Always return only one result for HistoryRule
passay-67
JDBCDictionary size throws exception
passay-64
Bug in PasswordData#newPasswordData
passay-63
Support Spring MessageResolver
passay-58
PasswordValidator should use PECS generic
Version 1.3.0 - 18Jul2017 (Requires Java 8)
Note that cryptacular is now an optional dependency. If you use the DigestHistoryRule or DigestSourceRule, you must add an explicit dependency on org.cryptacular.
Issue
Description
passay-55
Change PasswordValidator constructor to comply with PECS
passay-47
Improve FileWordList to support large files
passay-43
Variable ruleset based on password length
passay-42
NPE check in UsernameRule#validate
passay-41
Make cryptacular an optional dependency
Version 1.2.0 - 11Aug2016 (Requires Java 8)
Issue
Description
passay-32
Tilda character missing as a special character
passay-18
Develop Entropy-Based Password Strength Evaluation
Version 1.1.0 - 22Jul2015 (Requires Java 7)
Version 1.0 - 01Dec2014 (Requires Java 6)
Initial Release