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

Improve CryptSLRule creation #34

Open
4 of 8 tasks
AnakinRaW opened this issue Nov 8, 2019 · 3 comments
Open
4 of 8 tasks

Improve CryptSLRule creation #34

AnakinRaW opened this issue Nov 8, 2019 · 3 comments

Comments

@AnakinRaW
Copy link
Collaborator

  • Implement directory support for CrySLRuleReader.
    • Including option to search recursive
  • Implement .zip support for CrySLRuleReader.
    • Including option to search recursive
  • Add a new CLI command or allow --rulesDir to specify a .zip file
  • Discuss about class CrySLRulesetSelector
    • It contains some duplicates and redundant semantics
    • It contains assumptions about ruleset file system structure
    • Revise code where necessary.
  • Handle duplicate CrySL rule return in CrySLRuleReader (and probably in CrySLRulesetSelector). Options we have here:
    • Don't check for duplicates
    • Abort operation and notify the invoker about status
    • Return a distinct collection
    • Return a distinct collection and notify the invoker about status
@AnakinRaW AnakinRaW changed the title Improve CrySLRulesetSelector for .zip and recursive search Improve CrySLRuleReader for .zip and recursive search Nov 15, 2019
@AnakinRaW AnakinRaW changed the title Improve CrySLRuleReader for .zip and recursive search Improve CryptSLRule creation Nov 15, 2019
@AnakinRaW
Copy link
Collaborator Author

For .zip files, i think it would be best for defining some sort of standard how the ruleset zip has to look like.

Proposal (includes the following two types):

  • Single Root File:
    • All source files are included into the root directory
    • All these files will be interpreted as one ruleset.
    • A json/xml based meta file with information is optional. Name of the file and content is pre-defined.
    • Other directories will be ignored
  • Multiple Rulset File:
    • Root must only contain folders
    • Each folder in root represents a different ruleset.
    • For each ruleset folder Single Root File (see above) option applies.

(Btw: Not sure if the discussion should belong to here or to CryptSL.)

@kruegers
Copy link
Member

I would say, we generally allow multiple ruleset files. Going in alphabetical order, the rules come first get preference over those that come later. (So if two rule sets have a rule for the same class and one is call 1JCA and the other is called 2JCA-BC, 1JCA "wins".) Otherwise, I agree with the structure you suggested.

@kruegers kruegers transferred this issue from CROSSINGTUD/CryptoAnalysis Dec 12, 2019
@AndreSonntag
Copy link
Contributor

AndreSonntag commented Mar 19, 2020

Update:

  • Add a new CLI command or allow --rulesDir to specify a .zip file
  • Handle duplicate CrySL rule return in CrySLRuleReader (and probably in CrySLRulesetSelector).

https://github.com/CROSSINGTUD/CryptoAnalysis/tree/RulesetFolderAndZipHandling

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants