JtR (bleeding-jumbo), can now handle the native hashcat .rules files. There is also a document added to the john package, listing the syntax needed to be added to make it work (mostly to work around escape character requirements for some rules in john, due to the pre-processor).
The addition of these rules has shown a few differences between the tools. The differences are on 'edge' conditions. The notable rules are i x and O.
hashcat logic is to leave word alone, unless the letter (or full range of letters) are within the word.
john logic is to do 'best case' mangling, where if any of the range is in the word, then that is done, and for the 'i', if the insert is past end of word, it is treated as a $
The way I have implemented rules in 'hashcat logic' mode, I get the same results from john as from hashcat. But it may be nice to have both tools producing the same candidate stream from the same input words and rule set.
The addition of these rules has shown a few differences between the tools. The differences are on 'edge' conditions. The notable rules are i x and O.
hashcat logic is to leave word alone, unless the letter (or full range of letters) are within the word.
john logic is to do 'best case' mangling, where if any of the range is in the word, then that is done, and for the 'i', if the insert is past end of word, it is treated as a $
The way I have implemented rules in 'hashcat logic' mode, I get the same results from john as from hashcat. But it may be nice to have both tools producing the same candidate stream from the same input words and rule set.