I want to get rid of the MDC packet in OpenPGP because I view SHA1 as a catastrophic threat. If one can invert SHA1, then all plaintext in OpenGPG is ... open. If one tries to go back to RFC 2440 standards, disable the MDC, and encrypt a file, it does not work, but gpg does not tell you immediately:
gpg2 --rfc2440 --symmetric --cipher-algo CAMELLIA256 /home/none/Oak
gpg: WARNING: encrypting without integrity protection is dangerous
gpg: Hint: Do not use option --rfc2440
I wanted to see whether I could actually get gpg to use CAMELLIA256 in the RFC 2440 Standard, and evidently it worked:
gpg2 --list-packets /home/none/Oak.gpg
gpg: CAMELLIA256 encrypted data
gpg: encrypted with 1 passphrase
gpg: WARNING: message was not integrity protected
gpg: decryption forced to fail!
# off=0 ctb=8c tag=3 hlen=2 plen=13
:symkey enc packet: version 4, cipher 13, s2k 3, hash 2
salt A1B3FC0972AB559C, count 29360128 (236)
Notice this part above: decryption forced to fail
So I went further and tried to change the cipher-algo too:
gpg2 --rfc2440 --symmetric --s2k-digest-algo SHA512 --s2k-cipher-algo AES256 /home/none/Oak
Which also worked, as shown by the packet analysis. But if one tries to decrypt such a file, this happens:
gpg2 --decrypt /home/none/Oak.gpg
gpg: AES256 encrypted data
gpg: encrypted with 1 passphrase
asdfsadfvvvvvvvasdfsdfsdf
gpg: WARNING: message was not integrity protected
gpg: ***decryption forced to fail!***
So, it looks to me as if gpg does not want anyone to encrypt a file without the MDC packet's SHA1--they certainly are not intent on updating it, and backwards compatibility could be made optional. How do I kill the "force to fail" command? Or how do I otherwise encrypt with gpg without having the plaintext hashed by SHA1?