Code Co-op Encrypt
What is Code Co-op?
Code Co-op is a peer-to-peer version control system made by Reliable Software. We have used Code Co-op for many years and it is one of the most essential tools in our development process. In our opinion, it is one of the best version control systems currently available and we thoroughly recommend it. We like it because:
Nothing else is as good for distributed teams. We have used it on everything from slow, unreliable, dial-up connections to fast broadband connections and it excels. Other server-based systems become useless when the internet connection is slow or unreliable.
Replication. Every project member has a full copy of the project's contents. If it gets lost, stolen or corrupted it can be restored from any of these other locations. In other words, everything is inherently backed up all the time. You can even add as many "observers" to your projects as you like (for free) and each one is a replicated backup. So it's much safer than a server-based system.
Speed. Because everything is stored locally, including full project history, access to this is virtually instant. The Windows GUI interface is intuitive, fast and reliable. Nothing else compares for searching and comparing historic versions. In comparison, we find SubVersion (a popular, free server-based system) incredibly tedious and slow for these tasks.
Trivial setup. For a single user, or a large team setup couldn't be easier. Just install Code Co-op, create a new project and that's it! Really, it can be done in only a few minutes.
Support. The product is fully supported and any problems you may encounter are attended to very quickly. It is also actively being developed with new features being added and any problems eradicated.
What is Code Co-op Encrypt?
CodeCoopEncrypt is a utility for use with Reliable Software’s
excellent Code Co-op version control system. Code Co-op Version 5.0 or
above is required for this utility to work correctly.
Code Co-op uses email to communicate between remote sites. By default, these email scripts are compressed but not encrypted. In version 5.0, although it is possible to encrypt scripts, all scripts on all projects are encrypted using the same encryption key which is not suitable if Code Co-op isn’t used in a closed environment (e.g., Code Co-op is used to share data between different clients).
CodeCoopEncrypt solves this problem by allowing robust encryption on a project-by-project basis using different encryption keys. Moreover, the default behaviour is to have all projects unencrypted, so once CodeCoopEncrypt is installed, you shouldn’t notice any difference until you explicitly enable encryption on projects.
Fast and effective Blowfish encryption is used with 256-bit encryption keys and every script is encrypted with a unique and securely generated random encryption key. This makes unauthorised decryption of scripts virtually impossible. After decryption, file integrity is checked using SHA-256 (a 256-bit secure hash fingerprint). (Our implementation is extensible so other encryption technologies can be added easily.)
Project encryption is enabled simply by adding a 1-line entry in a simple text configuration file. This includes the project name and a passphrase (used to generate the 256-bit key).
An installer is provided to make the installation painless. Simply
run the installer on all machines where Code Co-op uses email to
communicate (instead of LAN) and you are ready to go. Just add
passphrases to the config file and all communication for those projects
will be secured.