Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

Possible symmetric cipher enhancements

Đang mở
#183 1 bình luận 0 reaction 0 người được giao Xem trên GitHub

Maintainer thường phản hồi trong vòng 1 ngày

Chưa có ai nhận issue này.

Đánh giá

Độ khó
5/5
Thời gian dự kiến
Hơn một tuần
Mức phù hợp với người mới
25/100
Loại issue
Tính năng
Độ rõ ràng
Khá rõ ràng
Mức độ hoạt động
Sôi nổi
Công nghệ
rust
Lĩnh vực
cryptography

Hướng nghiên cứu

This is a menu of possible cipher enhancements rather than one scoped task: CFB1, OFB, non-96-bit GCM IVs, short GCM tags, alternative CCM formatting, and GMAC/CMAC. A newcomer should first pick one unchecked item, such as OFB, then read the existing Cfb, Cfb8, and CTR implementations and their tests to see how stream-cipher traits are wired. Done means that one mode implements the relevant traits and passes test vectors from SP 800-38A; AES-XTS is already checked off.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

Possible additional modes or features for symmetric ciphers:

  • CFB1, the s = 1 segment size (SP 800-38A Appendix F.3.1-F.3.6). Its segment is a single bit, so unlike [Cfb] and [Cfb8] it does not fit a byte-oriented API at all: a message is a bit string whose length need not be a multiple of 8, which this crate has no type for.
  • OFB, the one remaining mode of SP 800-38A. It is a keystream mode and, like CFB, CFB8 and CTR, would implement [StreamCipherEncryptor] / [StreamCipherDecryptor].
  • AES-XTS: https://csrc.nist.gov/pubs/sp/800/38/e/final used primarily in full-disk-encryption systems.
  • GCM with a nonce other than 96 bits (SP 800-38D Algorithm 4 step 2's len(IV) != 96 branch, which derives J0 by GHASHing the IV). Sec 5.2.1.1 recommends restricting support to 96 bits, and [Gcm] does.
  • GCM with a 32- or 64-bit tag (Sec 5.2.1.2, Appendix C). Those need the controlling protocol to bound packet sizes and invocation counts, which this crate cannot enforce.
  • CCM with a formatting function other than Appendix A's. SP 800-38C Sec 5.4 allows alternatives and says "Alternative formatting functions may be developed in the future"; Appendix A's is the only one that exists in practice and the only one [CcmPacket] implements.
  • Add GMAC and CMAC as top-level [`MAC']'s -- note that these behave differently to generic [MAC]s since they require both a key and a (non-zero) IV. Perhaps we could fake that by having the "key" hold both the actual key and the IV?
Ngôn ngữ chính
Rust
Star
25
Fork
18
Merge trung bình
56 phút
Pull request đã merge (30 ngày)
1

Chuẩn bị môi trường

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của bcgit/bc-rust

Tất cả issue của bcgit/bc-rust

Issue tương tự

Thêm issue về Rust

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.