SmartPasswords extension accepted by Bitwarden team

SmartPasswords feature demo

Our SmartPasswords extension was accepted by the Bitwarden team! The feature will be merged into the product after a process of code review, benefitting millions of users.

The new feature Smart Passwords, developed in the context of João Campos’s MSc thesis, reads the field passwordrules in an input form. This field contains the password policies specified by the website, making it easier for the generator to generate compliant passwords.

To specify the policy annotations (i.e., password rules), the extension uses a language developed by Apple. It also uses a new npm package developed by our team, based on Apple’s own parser and adapted to Typescript (@passcert/pwrules-annotations).

For example, the specification

passwordrules="required: upper; required: lower; required:digit; required: special; minlength: 10;"

specifies a password that must have at least 10 characters, and at least one lowercase letter, one uppercase letter, one digit, and one symbol. Since all character classes are required, the checkboxes are disabled and the minimum number of digits and symbols is also disabled because changing these values would generate a password that would be uncompliant. The minimum length of the password is also capped at 10.

João F. Ferreira
João F. Ferreira
INESC-ID & IST
João Campos
João Campos
MSc Student @ IST