133794m3r / 133794m3r/itp132-232
Create a Hill Cipher Class
- Vorherrschende Sprache
- C++
- Sterne
- 0
- Forks
- 0
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Beschreibung
This issue will mark the progress on the Hill Cipher.
Below are the various other items.
## The key setters.
### Tracked by issue #2
- [ ] Key Setters Tracked by issue
## Encryption/Decryption Methods
### Tracked by issue #3
The encryption method will include the sub-tasks of chunking the input into a decimal form based upon the index of each character of the input string. Encryption and decryption both share the same basic premise it's just that the encryption uses the encryption matrix whereas decryption uses the decryption matrix which is just the inverse of the encryption matrix.
- [ ] Encryption Method
Decryption method including converting the
- [ ] Decryption method
## I/O Methods Issue
### Tracked by issue #4
- [ ] Write data to a file.
- [ ] Read data from a file.
## Known Plaintext Attack
### Tracked by issue #5
- [ ] Using the crib by search for the data.
- [ ] having a sliding window across the input data to attempt to find the data.
## Unit Tests
### Tracked by issue #6
- [ ] Encrypting test vectors
- [ ] Decrypting test vectors
- [ ] KPA test vectors.
## Driver Program
### Tracked by issue #7
- [ ] The basic Driver Program
- [ ] Prompt user for input alphabet.
- [ ] Prompt user for the input key(or generate one itself)
- [ ] Allow command line arguments.
- [ ] Read in data from a file to do KPT through the menu by prompting for file. Or automated via the command line argument.
- [ ] Setup a basic menu for the whole thing.
Beitragsleitfaden
Für dieses Repository ist kein Beitragsleitfaden indexiert
Rechercherichtung
Dies ist ein umfangreiches, mehrteiliges Feature zur Implementierung einer Hill-Chiffre-Klasse mit Verschlüsselung, Entschlüsselung, Datei-E/A, Known-Plaintext-Angriff, Unit-Tests und einem Treiberprogramm. Das Issue ist ein Tracking-Issue, das auf andere Issues für Teilaufgaben verweist. Ein Neuling müsste den Hill-Chiffre-Algorithmus, lineare Algebra für Matrixinversion und C++-Klassendesign verstehen. Beginnen Sie mit dem Lesen der verlinkten Issues (#2-#7), um den Umfang jeder Komponente zu verstehen. Das Treiberprogramm deutet auf eine Kommandozeilenschnittstelle hin. 'Done' bedeutet eine vollständige, getestete Klasse mit allen aufgeführten Funktionen.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Bereich
- cli, cryptography
- Issue-Typ
- Feature
- Schwierigkeit
- 5/5
- Geschätzter Aufwand
- Über eine Woche
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 30/100