Tag System
See original GitHub issueToDo
- Add tags to all current ciphers / encodings
- Decode on a specific list of tags and include in our documentation
- Edit wiki page to talk about tag system (how to add your own cipher)
Sometimes we want to run specific subsets of crackers. An example is:
- Offline only crackers
- All crackers
- Default crackers
- Most popular crackers
Implementation
AuSearch has a list of crackers. We remove crackers or add more to the list depending on the tags.
We build a tagging interface, with something like this:
class tagging:
def __init__(self):
defaults = ["bases", "caesar"]
online=["online"]
Basically, we categorise each cracker. Perhaps for each cracker, we give it an attribute containing a dictionary along with some information about what categories it falls into.
Then to build tags, we use a set theory implementation. So to run defaults and online, we run:
--tag defaults U online
We would have to use some kind of resource selector, as writing set theory on the terminal is hard.
The idea is that we show the user the categories, and the user constructs their own tags based on the categories.
This addresses #143 and this Discord comment:
we should add as many crackers as possible and just keep the most used ones the default, but add an option to allow to use all. We can calculate most used ones via the web app, that way we maintain speed with the default but if the user wants they can try the more esoteric stuff 😃
Issue Analytics
- State:
- Created 3 years ago
- Comments:5 (4 by maintainers)
Top GitHub Comments
how about the words
and
,or
,not
. I heard they’re all the rage these days with UX people!On a more serious note, users are most likely to want a whitelist and a blacklist, rather than to invoke the axiom of choice.
Here are the categories I can imagine:
base
whereas Atbash and Vig will getvig
)Any other suggestions?