https://github.com/joomla/joomla-platform/pull/1568
OVERVIEW
The keychain provides a way to securely store sensitive information
such as access credentials or any other data. This pull request
contains a new class called JKeychain that extends JRegistry and
supports encrypting and decrypting data through the use of public and
private keys. It also provides the necessary command-line utility (a
Joomla Platform application itself) to generate the key files.
DOCUMENTATION
Documentation is provided in the pull request. A readable version is
available at:
https://github.com/eBaySF/joomla-platform/wiki/Keychain
BUSINESS CASE
At eBay, we needed a way to be able to store sensitive credentials
(server/database logins, etc) in our SCM repository in an encrypted
form without the hassle of sharing those credentials over email or
other electronic means. The Keychain package was developed so we could
store encrypted data in the source code repository (the security
issues related to storing clear-text credentials in a semi-public,
albeit internal, source code repository should be obvious). Engineers
and deployment servers only need obtain the the 'shared key' manually,
but only once. Should the credentials change, the encrypted data file
in the repository simply needs to be updated and all engineers and
servers have access to the new information on the next build.
Regards,
Andrew Eddie