Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Question About "Advanced Strategy" in Version 1.3.0 #10

Open
jamesteller491 opened this issue May 24, 2022 · 2 comments
Open

Question About "Advanced Strategy" in Version 1.3.0 #10

jamesteller491 opened this issue May 24, 2022 · 2 comments
Assignees
Labels
documentation Improvements or additions to documentation enhancement New feature or request

Comments

@jamesteller491
Copy link

Hi,

I was just trying your new version 1.3.0, and I have a question. What is the "Advanced Strategy"? Each of its choices mentions removing excluded characters, but it is unclear to me what you are referring to.

First of all, I see no separate option for the user to make a list of characters he wishes to exclude so how are you defining "excluded characters." Furthermore, if a character is excluded, isn't it already removed? Isn't that what the word excluded means?

I'm certain there is a simple explanation to my confusion, but I have not come up with such an explanation yet. Please explain?

Thanks.

@nitz
Copy link
Contributor

nitz commented May 24, 2022

Hey!

So, the 'Advanced' tab is actually from KeePass' password generation dialog. In versions prior to 1.3.0, this plugin didn't account for any of the options there, but now it does:

image

I wanted to disable or hide the advanced strategy unless some of those advanced settings were used, but there didn't seem to be a way to find out if it was or not when the options dialog is shown.

I'm not quite sure how to denote the relationship between the advanced options and the advanced strategy, but definitely feel the UI could be improved.

As for excluded vs removed, it should make a little more sense once you see how the options are worded on the advanced tab. It explicitly defines characters that should be excluded from the resulting generated password. For typical password generators, that would likely just remove those characters from the pool of characters used to generate, but we've got a bit of a different approach. Since we're picking words from a list, it would be a difficult strategy to try and exclude any words that contain any of those characters, so I opted for allowing them to be removed from the resulting passphrase as a whole, while still allowing the words themselves to be picked the same way.

Hope this helps!

@jamesteller491
Copy link
Author

Thanks for the response and the explanation. I knew the answer had to be easy!! And the way you've implemented it makes sense: to remove the excluded characters after generating the passphrase, as you have explained in your response. I will add, however, that some people would prefer the opposite approach, to exclude words containing any excluded characters from the resulting passphrase so that the resulting passphrase remains pronounceable. Perhaps an option can be added at some later date to choose between the two.

I've used KeePass for years and I, no doubt, have seen the Excluded list many times, but I didn't think your app was referring to an outside list. Perhaps you want to remind the user that the Excluded list is defined in KeePass under the Advanced tab of the previous dialog. Or list the Excluded characters in a Read-Only text box within your app.

Another option is to add tooltips to each field allowing for more detailed explanations.

But this is all quibbling. Your app as is is miles better than any of the other Keepass passphrase generators offered. Thanks for making it available.

@nitz nitz self-assigned this Jun 8, 2022
@nitz nitz added documentation Improvements or additions to documentation enhancement New feature or request labels Jun 8, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Improvements or additions to documentation enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants