133794m3r / 133794m3r/itp132-232
Create a Hill Cipher Class
- 主要言語
- C++
- スター
- 0
- フォーク
- 0
- PR マージ指標
- 30日以内にマージされた PR はありません
説明
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.
コントリビューションガイド
このリポジトリのコントリビューションガイドは索引されていません
調査の方向性
これは、暗号化、復号、ファイルI/O、既知平文攻撃、単体テスト、ドライバープログラムを備えたヒル暗号クラスを実装する大規模で複数のパートからなる機能です。このissueは、サブタスクの他のissueを参照するトラッキングissueです。新規参入者は、ヒル暗号アルゴリズム、行列の逆行列計算のための線形代数、およびC++のクラス設計を理解する必要があります。まず、リンクされたissue(#2-#7)を読んで、各コンポーネントの範囲を理解してください。ドライバープログラムは、コマンドラインインターフェースを示唆しています。「Done」とは、リストされたすべての機能を備えた完全でテスト済みのクラスを意味します。
索引モデルが issue の本文から書いたものです。
評価
- 領域
- cli, cryptography
- issue の種類
- 機能追加
- 難易度
- 5/5
- 見積もり時間
- 1週間以上
- 活発さ
- 停滞
- 明瞭さ
- おおむね明確
- 初心者へのやさしさ
- 30/100