The encryption used in DeadbolotEdit is an implementation of the Blowfish Cipher. Blowfish is a strong encryption method that is widely accepted and used in commercial encryption products. A good explanation of the Blowfish cipher can be found here: Wikipedia: Blowfish Cipher.
The Blowfish encryption in DeadboltEdit is compatible with the OpenSSL implemention. Key length is 128-bits, and the encryption mode is Cipher-Block-Chaining (CBC).
Compatibility with OpenSSL is an important consideration, because the encryption is verifiable against a well known and respected implementation.
TopWhen DeadboltEdit encrypts text, the actual encryption and encoding are compatible with OpenSSL encryption. However, when DeadboltEdit stores encrypted files, the file format differs from the OpenSSL file format. This is because DeadboltEdit stores additional information embedded in a file header, which allows checking for file corruption and tampering. For this reason, DeadboltEdit files cannot be used with OpenSSL.
As an excercise to verify the encryption implementation in DeadboltEdit, it is possible to remove file header information from a DeadboltEdit encrypted file, and then decrypt it with OpenSSL command-line tools using the DeadboltEdit password that was used to create the file. This is not something you would want to do in actual practice, but it is a valuable excercise to demonstrate the correctness of the encryption implementation.
Note: Decrypting with OpenSSL can only be done with knowledge of the password that was used to create the file. This is not a security weakness.
TopThis process can be used to verify the encryption implementation in DeadboltEdit. It is intended only for testing and verification.
Requirements:Steps:
DeadboltEdit Encrypted ~~ Do Not Modify :0:21cbe801827670c4a3d8e2787d745ba0:
U2FsdGVkX1+vKYGFaEZpjrXvyDpZ42Lrh10YiXLW6875ILq1iWpuzBh3t8hPEUghpw3C5ZaPhIOv
odenseUf0R2doufTba7ClqVVMWKDEadbNsoFrjuSZTQ5OgPqYZeo+atlBpHyhy6Rh0ScNUFGk/YU
U2FsdGVkX1+vKYGFaEZpjrXvyDpZ42Lrh10YiXLW6875ILq1iWpuzBh3t8hPEUghpw3C5ZaPhIOv
odenseUf0R2doufTba7ClqVVMWKDEadbNsoFrjuSZTQ5OgPqYZeo+atlBpHyhy6Rh0ScNUFGk/YU
openssl enc -blowfish -d -a -salt -in encrypted.txt -out plaintext.txt
3f1777708620ef1e534468c421c23ff1
Test file to demonstrate OppenSSL compatibility.
Line 2.
Line 3.
End.
Test file to demonstrate OppenSSL compatibility.
Line 2.
Line 3.
End.
For users comfortable with the UNIX command-line and UNIX scripting, the following simple Bourne Shell script will decrypt a DeadboltEdit file with OpenSSL, sending the plain-text to stdout.
Requirements:Script:
#!/bin/sh
#
INFILE=$1
export INFILE
# decrypt file using openssl / Blowfish
tail -n +1 ${INFILE} | openssl enc -blowfish -d -a -salt | tail -n +2
Usage:
Copy the script to a file (ex. decrypt.sh), and make it executable (ex. chmod 755 decrypt.sh).
Run the script from a shell, and supply the path of the DeadboltEdit file as an argument.
Example :
decrypt.sh test.ctxt
The openssl program will prompt you for the encryption password. Enter the password that was used to create the original file with DeadboltEdit.
The decrypted plain-text is sent to stdout, which can optionally be redirected to a file.
Copyright 2012 - 2018 Michael Wright All Rights Reserved