Skip to content

Improvement ideas (collection) #234

Open
@simlei

Description

@simlei

This issue tracks improvement ideas and problems, questions the JCT team finds during testing sessions. It is maintained to lessen the burden on the rest of the issue tracker, using a more concise format. Many of these points need further explanation which is for now omitted for the sake of speed and conciseness. If you encounter one of these yourself and want to help fix it, please get in contact:

As most of our current developers speak German, please forgive that sometimes whole sentences are in German. We plan to translate this page.

Open questions

  • Was passiert, wenn Nutzer den entpackten Ordner mit einem vorhandenen mergen? kann fehler geben oder JCT startet nicht...

Found bugs and discussed improvement ideas

  • Online help: mention to double click on title bar of view group to restore to "normal view"
  • ECC plugin:
    • Mehr Platz in GUI zwischen den Gruppen rechts
    • Rot + Lila Highlights in der Tabelle => Andere Farben...
  • main perspective: file name "unsaved001.txt" -> "sample-file-001.txt"
    • room for improvement w.r.t. the sample file content: biggest display on startup after welcome screen... Headlines and bullet points e.g.
  • Crypto explorer after first startup / workspace removal: "This is the crypto explorer..." bubble, wrong position (linux,gtk3)
  • HMacMD5, eigener Key: cursor sollte Blockform haben
  • korrekt??: HMacMD5 mit 128, 256 bit und selbem schlüsselstamm, selbes ergebnis? tritt gerade so auf.
    • base key: 01 23 DF DD A0 00 00 00 00 00 00 00 00 10 00 10
    • result: B35551C59994F8E1F4443A0E0FEDE9F2
  • IDEA: grey out keylength box as it only contains one entry
  • Text n-gram topics plugin: improve -> reactivate? org.jcryptool.analysis.ngram_text_topics? use n-gram implementation like e.g. fleissner
  • Elliptic Curves (ECC) visual: make table (e.g. in F(p)) have a fixed column count of 5 and make it use the whole width, instead of the current faulty generic mechanism that tries to react to the width of the parent composite.
  • Friedman:
    • Text: Überschrift groß, dt.: Bindestrich fehlt
    • Konsistenz: Default-Text automatisch laden
  • Winternitz OTS:
    • Bug: Composite wird endlos breit bei resize wrsl. wegen TADComposite, unendlicher Rekursion
    • Feature: Grafik Unten rechts besser skalieren / svg / browser
    • Feature: Dark mode: @tassadarius : nicht gut mit Title-And-Description-Composite
    • use same example text as XMSS plugin
  • Merkle: Kein Title-and-Descr.-Composite
  • XOR plugin improvements crypto#362 (XOR)
  • Crypto Explorer does not work quite well with double click, loses focus due to context help -> move context help to a context menu
  • Classic Algorithms in menu grey with no editor -> roll back to show an error dialog on click, but not grey-out
  • RSS: Improvement ideas crypto#363 - RSS
  • Zudoku: OS/X: Does not open & puts JCrypTool in unresponsive state — should be removed for OSX
  • Zahlenhai/Taxman: "Yes/No" Buttons in German in Dialogs
  • Signature demo: Verification display with nonsense signature file (fails) --> displays no useful information and some "length: -1" — rather: display a short message, that no signature info is found if that is the case.
  • Certificate verification demo: Verification with bogus data not successful — that is expected — but no real reason or place where the verification failed is given.
  • ADFGVX: cannot complete wizard (Finish/Next not active) (seen under OSX)
    • "aktuelle Länge: [...] )" -> there is a blank before the closing bracket
  • Vigenere-Breaker:
    • Hintergrund weiß von Textfeldern
    • Bilder in de/en zweisprachig -- Originaldateien von den Bildern aber weg
      • durch Labels ersetzen
    • Textfeld zu klein
    • Referenzverteilung Schrott? [A-Vigenere-1] sample text [A-Vigenere-2] encrypted with CAESAR
    • Bessere analyse, least squares fitting für Kurvenübereinstimmung
  • silent fails in Algorithm perspective
  • Hex editor does not look good in "dark mode"
  • Wizards or shells are opened on another display in multi-monitor setup; e.g. in algorithm perspective->select key. Probably incorrect Shell creation with Display.getDefault()
  • Entropie-Plugin textfixes (s.13.07.)
  • Workbench verhalten reproduzieren und fixen: Perspective layout / workbench misbehavior (e.g. views not restorable) #176
  • Splash Screen: remove text at the bottom
  • Classic Algorithms: "Next" page not always available (where pre-operation transformations are configured)
  • Classic Algorithms: suggest a default key always
  • Alphabets: introduce full ASCII range alphabet with 256 characters — it looks like our alphabets.xml storage format does not accept #x0 characters (ASCII at byte 0x00), this would have to be circumvented somehow
  • Workbench-konsistenz nach Sprachänderung und nach Update sicherstellen; @grthor : Workspace Sprache ist nach Sprachänderung konsistent.
  • RSA/ElGamal neu programmieren. Former El-Gamal-Plugin feedback document: https://github.com/jcryptool/crypto/files/4368282/JCT-Feedback-before-Release_BE_v01_ElGamal.pdf
  • Pasteing of binary/hex into the hex editor is not possible (e.g. copy this string: 0x01a3f2 -- you'd want to be able to put that into the hex editor in the usable form but what you currently get is the ascii representation of that hex string)
  • "AES" in the "Algorithms" menu does not show an option to set the IV
  • Classic algorithms -> XOR-Encryption: it is not quite clear what gets XOR-ed: the ascii representation? The position in the alphabet? ---> Doc ergänzen und schließen @ be
  • Consistently use "Tabs" instead of "Reiter" in JCT (German) — *.properties: ISO-xyz windows encoding; *.xml,html: UTF-8 @ be
  • Krypto-Explorer-Sicht (leave out the "Sicht"/"View") across help texts @ be
  • Help menu: remove redundant entries that all lead to the help in the browser.
  • Reset the default perspective: the context help does not always get reopened.
  • Remove iconification (far bottom right in the main shell) of welcome page after pressing "Start JCT". @grthor done with 795ede5
  • LFSR: "Chiffrat" -> "Ausgabe"; @grthor done with jcryptool/crypto@604ab37
  • Grille-Analysis/nl=de: Wenn man von Methode Verschlüsselung zu Methode Anaylse Analyse umschaltet, hat der Radiobutton-Text "Eigenen Geheimtext laden" nicht genug Platz.
  • Textfeld-Scrollbars entfernen wenn Textfeld sie gerade nicht braucht (?) (Techn. Umsetzbarkeit prüfen...); @grthor: In normalen SWT "Text" Widgets nicht ohne weiteres möglich. In "StyledText" Widgets möglich über die Methode setAlwaysShowScrollBars(false). Aus meiner Sicht bleibt noch die Frage des Kosten-Nutzen-Verhältnisses zu beantworten. Ich sehe die Kosten durch den Nutzen nicht gerechtfertigt.
  • ECDH: In die Datei "ECDH.txt" nicht nur die Werte, sondern auch die Variablen-Namen aus der GUI reinschreiben: a, b, A, B, S. @grthor Done with Improvements in Elliptic Curve Calculation Plugin crypto#358 on 18.05.2021
  • Fiat Shamir: Alle Gruppierungstitel wie englische Sätze schreiben, zB "Calculated Values" --> "Calculated values". @grthor: Done with jcryptool/crypto@4b8a80f
  • Idee? "Macht man eine Visualisierung oder Analyse auf, erscheint sie zuerst unten (vertikal gesplittetes Fenster). Ob das die Nutzer so wahrnehmen, bin ichmir nicht sicher? Mich nervte es zuerst. Aber ich habe keine Idee, wie man es es besser machen sollte."
  • Caesar: Es wäre fein, wenn in der Maske vom Caesar-Algorithmus noch stehen würde, welchen Text erverschlüsslt. Indem er in der Dialogbox am besten den Namen der Datei, die im Reiters im Editors angezeigt wird, anzeigt.
    • →Name der Datei in den Fenstertitel hinter den Algorithmennamen (mit Trenner)
  • ["Babel"-String: Übersetzung gesammelt machen] Wenn man eine Visualisierung maximiert, steht recht oben am Rand, dass man den Krypto-Explorer und eine "Shared Area" restoren kann (Balloontext zu den kleinen Ikonen).
    • a) In beiden Sprachen unter Shared Area noch Editor ergänzen.
    • b) Im Deutschen: "Shared Area" und "Restore" eindeutschen.
  • Replace existing n-gram statistics implementations throughout JCT with the one in org.jcryptool.crypto.classic.model.
    • spart Platz in den binaries
    • uU. muss man auf Log-Wahrscheinlichkeiten umstellen
    • quasi alle klassischen Analyse-Plugins nutzen eine Form der Häufigkeitsanalyse
  • Numbershark: Add a button in the toolbar that reads, checks and executes a series of moves (number choices) from a textfield. Example of a move sequence input: 516::[509,361,437,...,444].
  • Multipartite Key Exchange: Provide ability to set parameters in main GUI, layout things (Multipartite Key Exchange: Set values ​​in group "summary initial parameters" yourself crypto#230)
  • JCT command line console: Provide means to recall the last command, e.g. via arrow-up-key.
  • Substitution analysis: vertical scroll bar not initially visible; graphs in analysis view on the right side has different vertical line spacing
  • Analysis/Viterbi: switchable hex/char display controls; when hex is displayed, no edit ability is necessary (just a mode of viewing the input)
  • The keys of all encryption methods should be storable. (this was issue crypto/Keystore conflict with crypto providers #224, but it's scope ("encryption methods"?) was somewhat lacking in specificity)
  • Algorithm-Plugins should be able to process files
  • implement about page with more info about JCT developers
  • Operation view: after restart of JCT: only load existing operations on click of button in View
  • nice2have html page source path anzeigen (kleiner footer)
  • Toolbar-Buttons "letzte View" + andere Navigationshilfen? -- 0014
  • Substitutionsanalyse: Alphabetzeichen zuerst listen
  • MacVim-Problem -- in help handler besser öffnen?
  • LOW/v1.1: A-Menu\DSA: soll auf Editorbasis laufen
  • passende Schlüssel in Algorithmen-Perspektive sollten vorgefiltert werden
  • Favicon Onlinehilfe (Aber noch keine Idee wo zu fixen)
  • Scrollen in Chinesischer Restsatz (@grthor: Wurde als wontfix eingeordnet. Die nicht scrollbaren Bereiche sind ScrolledComposites.)
  • Mac OS/X: Wenn (wie zB MacVim) eine app als Standard für HTML-Dateien eingetragen ist, so wird die Hilfe nicht im Browser geöffnet. (@grthor: Wurde als wontfix eingeordnet. Wenn Nutzer als Standardprogramm zum Öffnen von html-Dateien eine Texteditor setzen, müssen sie damit rechnen, dass html-Dateien nicht mehr korrekt angezeigt werden.)
  • Fiat-Shamir: "Mehrmals ausführen"-Button bringt einen Dialog mit schlechtem (wrsl. nicht-Grid-) Layout hervor; @grthor fixed with Fixed layout of repeat-m-times dialog in zeroknowledge plugins crypto#355
  • Alle Visualisierungsplugins vom Resize / 1. Startup untersuchen und fixen
  • Tooltip in klassischen Verfahren (Wizard) bei "Alphabet anzeigen" kommt mehrfach
  • example Hex editor does not open up again after restart (with or without -de {} change)
  • Homomorphic RSA: Stabilität: Warum ist das Ergebnis negativ? Ich nehme an, weil 112.233.445 * 130.918.078 = 14.693.386.906.718.710 > N= 536.870.912 ist. Sollte dann nicht besser eine Warnung kommen?
  • CPU load for WOTS visual seems high. What is the background thread doing?
  • Vigenère breaker: Bilder -> Text
  • Vigenère breaker: Textfields with white bg -> Labels (Thorben)
  • Print Button rausnehmen; @grthor fixed with c7876e4
  • in the online help in the browser, check if the JCrypTool instance has been closed and display a message that the tab may be closed
  • HMacMD5: Passworteingabe falsch -> nicht direkt Abbruch des Wizards
  • Kontextmenü im Hexeditor -> spiegeln der zutreffenden Optionen im "Edit"/"Bearbeiten"-Menü @grthor Done with c4921c9
  • in the online help in the browser, check if the JCrypTool instance has been closed and display a message that the tab may be closed
  • Zum schliessen: #313, Provide means to recall the last command, e.g. via arrow-up-key
  • Mehr Details in "Neuen Schlüssel anlegen"-Display (e.g. HMacMD5)
  • HMAC Key eingeben: digest = hmac.new("key", "The quick brown fox jumps over the lazy dog").hexdigest() --> JCT erlaubt es nicht, den Key auch als String (beliebige Länge) einzugeben!
  • workspace-dependent menu language when switching languages (falsche menüsprache bei Language switch -> restart)
  • Crypto-Issue: Command line console changes
  • Crypto-Issue: Visual plugin: Numbershark GUI changes and fixes -- Mail anschauen
  • Homomorphic RSA: Stabilität: Warum ist das Ergebnis negativ? Ich nehme an, weil 112.233.445 * 130.918.078 = 14.693.386.906.718.710 > N= 536.870.912 ist. Sollte dann nicht besser eine Warnung kommen?
  • L5) "Getting to know JCT / first steps" erleichtern
  • Numbershark: Replay-Funktion einer Zahlenfolge
  • Recherche: Onlinehilfe: Drucken einzelner Seiten (iframes) über Ctrl+P / Menü
  • Multivariate Crypto / Rainbow: Wenn man Message ändert, sollte Signature gelöscht werden.
  • HMacMD5: Passworteingabe falsch -> nicht direkt Abbruch des Wizards
  • Background Job view (e.g. with Entropy Analysis) opens some times in the middle of the workbench. Reproduce (was it fixed with other perspective improvements?) and if necessary, fix
  • Transposition analysis: (Linux) last transposition column is huge, rest is OK
  • Vigenère breaker: funny text sizes, background is white vs. grey backdrop
  • Vigenère Breaker: When opened at startup: [Log1]
  • Vigenere Breaker: Bug: does not always work on the active editor, but the one that was active on view open
  • Algorithmen-Dialoge: die letzten Einstellungen über eine Session hinweg merken
  • Substitution analysis: no scrollbar
  • Transposition analysis: huge bottom text area with filled table

Textual improvement ideas

Viterbi

In den beiden Dropdown-Controls unter "Plaintext 1" und "Plaintext 2"
sind die initial angezeigten Auswahl-Texte nicht enthalten (also die,
die die standardmäßig angezeigt werden).
Dadurch kann man nicht zu ihnen zurück, wenn man man einen anderen Text
gewählt hat!
Texte in den Dropdown-Menüs ebenfalls anbieten

ARC4-Visual

  • E: Bei den Balloon-Texten in "Misc settings" fehlt zweimal ein "h" bei
    "Determine, wether" (muss "whether" heißen).
    @grthor Already done by someone
  • D+E: In der GUI muss es in "Selection of the algorithm" / "Auswahl des
    Algorithmus" statt "ARC" richtigerweise "ARC4" heißen.
    @grthor Already done by someone
  • D+E: Viele Balloon-Texte haben "künstliche" Zeilenumbrüche. Sind da
    aus Versehen harte Newlines im den Ressourcedateien drin?
    @grthor Done with jcryptool/crypto@4121f56 and jcryptool/crypto@16d9b0b. Manual line breaks are necessary. Without them the tooltip will use the whole screesn, which looks bad.
  • Vereinheitlichen: Alle Grupierungstitel wie englische Sätze
    schreiben, bspw. "Calculated Values" --> "Calculated values".
    @grthor Done by someone

Things to look out for when testing JCT:

  • Was ist die "Leserichtung" bzw. Bedienungsrichtung, wird der Lesefluss eingehalten:
    • von links oben nach rechts unten
    • Informationen die man wissen muss, sind die im Lesefluss den Controls die diese Info voraussetzen, auch vorangestellt?
  • Gibt es Probleme mit 5px-Border/Margin bei Composites? Gibt es "solide" Borders?
  • Wird, bei Texteingaben, das erwartete Format beschrieben
  • Sind Fehlerausgaben spezifisch, d.h. wo ist das Problem, und ggf. Handlungsanweisung?
  • Onlinehilfe: Ein Beispiel, wie das Plugin in einem Durchgang zu bedienen, und wie die Ausgaben zu interpretieren sind, ist immer hilfreich. Ist dies vorhanden?
  • Kontexthilfe: ist der Inhalt sinnvoll? Was wäre besser?
  • Im Titel eines Plugins sollten die Schlagwörter und Begriffe auftauchen unten denen man das Plugin finden kann
  • Problem Kontexthilfe: Inhalt dupliziert oft, was im Titel steht und/oder ist zu kurz...
    • Idee: Linksammlung daraus machen; 1. Link zeigt zur Onlinehilfe, dann weitere Resourcen + evtl. kurzes Glossar der komplizierteren Begriffe, der Parameter, ...

More in-depth ideas focussed on one plugin, gathered during focused sessions

Grille

  • Grille Beschreibungstext: Er könnte etwas weniger breit sein. Erzwingt horiz. Scrollbar. Dieser sollte eher von den Elemneten darunter erforderlich gemacht werden.
  • Grille Beschreibungstext: dass man bei den Methoden Verschlüsselung und Entschlüsselung den Key auch direkt eingeben kann, indem man auf die Felder der Grille klickt.
  • Warum haben die Felder Ciphertext, Plaintext und Analysis output zu Beginn einen vertikalen Scrollbar, obwohl nichts drin steht? - Warum fängt der Scrollbar im jeweils zweiten der beiden beiden Felder Plaintext/Ciphertext nicht ganz rechts oben an?
  • Grille: Solve 20x20 puzzles (see grille help)
  • Grille: increase performance of analysis (profile it & improve)
  • (DE) Wenn man von Methode Verschlüsselung zu Methode Anaylse Analyse umschaltet, hat der Radiobutton-Text "Eigenen Geheimtext laden" nicht genug Platz.

McEliece

- Bug: Bei Neustart-Button-click in Toolbar (@ Thorben: log?). Im ersten sowohl als auch zweiten Tab.
- Bug: bei n=13, t=2 -> "Generieren" schlägt fehl

McEliece Algorithmus

McEliece cryptosystem

McEliece F1-Hilfe

McEliece matrix bearbeiten

McEliece Online-Hilfe

Multivariate Kryptography

  • Titel und Menüeintrag --> "Multivariate Kryptografie (Rainbow-Signature)"
  • Onlinehilfe: Ein Beispiel, wie das Plugin in einem Durchgang zu bedienen, und wie die Ausgaben zu interpretieren sind, wäre hilfreich.
  • Kontexthilfe: s. general ideas (Linksammlung + Glossary(?))

Rainbow_0202

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions