Add support for cracking very old GPG keys
Open
@kholia is already working on this.
Since Jun 19, 2018.
bug
enhancement
- Dominant language
- C
- Stars
- 13.6k
- Forks
- 2.6k
- PR merge metrics
- No merged PRs in 30d
Description
Links,
Quick notes,
On CentOS 7,
$ gpg --homedir . --s2k-cipher-algo idea --s2k-mode 0 --simple-sk-checksum --gen-key
$ pgpdump secring.gpg
...
Old: Secret Key Packet(tag 5)(931 bytes)
Ver 4 - new
Public key creation time - Tue Jun 19 15:04:57 IST 2018
Pub alg - RSA Encrypt or Sign(pub 1)
RSA n(2048 bits) - ...
RSA e(17 bits) - ...
Sym alg - IDEA(sym 1)
Simple string-to-key(s2k 0):
Hash alg - SHA1(hash 2
$ pgpdump newold.asc
Old: Secret Key Packet(tag 5)(928 bytes)
Ver 3 - old
Public key creation time - Tue Jun 19 00:59:57 IST 2018
Valid days - 0[0 is forever]
Pub alg - RSA Encrypt or Sign(pub 1)
RSA n(2048 bits) - ...
RSA e(5 bits) - ...
Sym alg - IDEA(sym 1)
Simple string-to-key for IDEA
IV - 4c 24 29 7b 7d fe f2 3d
Encrypted RSA d(2046 bits) - ...
Encrypted RSA p(1024 bits) - ...
Encrypted RSA q(1024 bits) - ...
Encrypted RSA u(1022 bits) - ...
Checksum - 52 27
It seems that we don't support this (i.e. Simple string-to-key for IDEA) S2K yet.
Note: Rejecting such keys and avoiding false negatives would be helpful for now.
CC @solardiz.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.