Skip to content
This repository was archived by the owner on May 9, 2019. It is now read-only.

Password Encryption

Ari Kamen edited this page Sep 2, 2015 · 14 revisions

Prior to Common Framework 1.4.4

Historically, configuration files supported either clear text or base64-encoded passwords. There was an optional property (*.password.isplaintext) that specified how passwords were written in the configuration file: *.password.isplaintext=true declared the password with the same prefix as plain text, *.password.isplaintext=false declared the password as base64-encoded. If *.password.isplaintext was omitted, ConfigurationManager tried to deduce whether the password was plain text or base64-encoded, but there is no way to do this with 100% certainty for all passwords. How ambiguous passwords were interpreted if *.password.isplaintext was omitted depended on which version of Common Framework was used (that behavior changed over time).

Since Common Framework 1.4.4

Starting with Common Framework 1.4.4, each password is either plain text, or DES encrypted + Ascii85-encoded. Password encryption works as follows: *.password.isencrypted missing means: encrypt this password. *.password.isencrypted=true means: this password is already encrypted. *.password.isencrypted=false means: do not encrypt this password Users will enter plain text passwords into the config file, and the utility will automatically replace them in-place with encrypted passwords (setting the new *.password.isencrypted property to true as it does it) unless it finds *.password.isencrypted=false.

Creating a New Configuration File

When creating a new config file, the user enters the plain text password in the value of the *.password property. Note: If no encryption is wanted, insert: *.password.isencrypted=false.

Clone this wiki locally