Alice strikes back against Bob's 'reverse dictionary'
blog.jgc.org
blog.jgc.org
Contrary to what the post says, it is not necessary to compute the 3,125 possible orders. Only 5 reverse dictionaries are enough, with reverse(n, w) = "the set of definitions the nth word of which is w". Then, iterate the reverse lookup following backwards the provided salt.
It makes the attack much more tractable, in particular since the length of definitions is bounded (you know how many dictionaries you need to compute).
The fact that you've gotten it wrong already (when you probably thought you knew what you were doing) should be a strong wakeup call. There's always an attack you didn't know about or a countermeasure you didn't think of.
I'm excited to hear what Carla has to offer!