hex-literal instead of blobby?
还没有人认领这个 Issue。
评估
- 难度
- 4/5
- 预计耗时
- 3-5 天
- 新手友好度
- 35/100
- Issue 类型
- 重构
- 描述清晰度
- 基本清楚
- 活跃度
- 停滞
- 技术栈
- rust
- 领域
- cryptography, testing
调研方向
检查 traits 下各 crate 以及已链接的 stream-ciphers PR 中对测试向量的处理,重点关注 blobby 当前如何表示向量。将这种方法与 hex-literal 进行比较,并确定按 crate 定义测试向量 struct 和数组的范围。完成后,向量应当易于阅读,并且能够追溯到其来源;单独的 test-vectors feature 需要独立的设计。
由索引模型根据 Issue 内容生成。
描述
In https://github.com/RustCrypto/stream-ciphers/pull/244 and https://github.com/RustCrypto/stream-ciphers/pull/245 we encountered the problem of the blobby test vectors being opaque. As serendipity would have it two people opened PRs because they thought test vectors were missing.
It appears they were, but it's presently difficult to ascertain that because all of the test vectors are in an opaque binary blob. I ended up having to write a small tool to dump the test vectors as hex so I could compare them to the ones in the RFC.
If the goal of blobby is to reduce the size of the test vectors in a compiled binary, it seems like hex-literal accomplishes that by encoding the test vectors as binary at compile time.
If the goal is to reduce the size of the crate, I really doubt it's accomplishing much over gzipped hex. But in the process, we also lose comments about the progeny of test vectors, which makes it difficult to answer questions like what ones we have included for each crate (see aforementioned PRs).
I would suggest that each of the crates in traits defines a test vector struct, and we populate an array of those using hex-literal.
Separately I think it'd be great to have a test-vectors crate feature for each of the algorithms that would allow such vectors to be used as part of an initialization self-test (which is a common thing for e.g. FIPS).
- 主要语言
- Rust
- 星标
- 756
- 派生
- 256
- 平均合并
- 2 小时 53 分钟
- 30 天内合并 PR
- 1
环境准备
我们还没有检查这个项目的环境配置文件。先看它的 README,通用步骤见我们的新手贡献指南。
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
RustCrypto/traits 的其他 Issue
-
难度 3/5 1-2 天 新手友好度 52/100
RustCrypto/traits#2487 · 2 条评论 ·
-
难度 4/5 3-5 天 新手友好度 45/100
RustCrypto/traits#2482 · 5 条评论 ·
-
难度 5/5 一周以上 新手友好度 32/100
RustCrypto/traits#2478 · 5 条评论 ·
-
cipher
难度 4/5 3-5 天 新手友好度 38/100
RustCrypto/traits#2424 ·
-
难度 5/5 一周以上 新手友好度 25/100
RustCrypto/traits#2401 ·
查看 RustCrypto/traits 的全部 Issue
相似的 Issue
-
难度 2/5 1-3 小时 新手友好度 84/100
vercel-labs/agent-browser#2017 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 72/100
tursodatabase/turso#9405 ·
维护者通常 1 天内回复
-
bug
难度 2/5 1-3 小时 新手友好度 72/100
PolyMeilex/Neothesia#447 ·
维护者通常 1 天内回复
-
backend::vllm diffusion multimodal
难度 2/5 1-3 小时 新手友好度 72/100
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 68/100
trezor/trezor-firmware#7985 ·
维护者通常 2 天内回复