Making sure SecretKey is zeroized on drop
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức phù hợp với người mới
- 42/100
- Loại issue
- Lỗi
- Độ rõ ràng
- Cần làm rõ
- Mức độ hoạt động
- Ít trao đổi
- Công nghệ
- rust
- Lĩnh vực
- cryptography
Hướng nghiên cứu
Bắt đầu bằng cách tái hiện ví dụ được cung cấp với tính năng zeroize được bật, sau đó kiểm tra phần triển khai Drop trong secret_key.rs và cấu hình tính năng trong Cargo.toml. Xác định xem nội dung bộ nhớ quan sát được có khớp với hành vi zero hóa dự kiến hay không, rồi ghi lại tài liệu hoặc sửa hành vi đó, kèm theo một bài kiểm thử hồi quy tập trung nếu các bài kiểm thử hiện có của repository cung cấp một vị trí phù hợp.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
I was trying to make my newtype of SecretKey zeroize properly, and realized I can't even trigger zeroization for SecretKey itself. Consider the code:
use k256::SecretKey;
use rand_core::OsRng;
fn main() {
let sk = SecretKey::random(&mut OsRng);
let ptr = &sk as *const SecretKey;
let ptr_u8 = ptr as *const u8;
println!("Pointer: {:p}", ptr);
drop(sk);
println!("Memory: {:?}", unsafe {
core::slice::from_raw_parts(ptr_u8, 4)
});
}
k256 has zeroize feature enabled in Cargo.toml. This still gives a non-zero output after SecretKey was dropped, despite there being a Drop implementation in secret_key.rs that calls zeroize(). Am I misunderstanding something?
- Ngôn ngữ chính
- Rust
- Star
- 756
- Fork
- 256
- Merge trung bình
- 1 giờ 27 phút
- Pull request đã merge (30 ngày)
- 2
Hướng dẫn đóng góp
Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- 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.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của RustCrypto/traits
-
try_sign_digest() is confusing. Đang mở
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 52/100
RustCrypto/traits#2487 · 2 bình luận ·
-
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 45/100
RustCrypto/traits#2482 · 5 bình luận ·
-
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 32/100
RustCrypto/traits#2478 · 5 bình luận ·
-
cipher: tracking issue for v0.6 Đang mởcipher
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 38/100
RustCrypto/traits#2424 ·
-
`signature` v4 tracking issue Đang mở
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 25/100
RustCrypto/traits#2401 ·
Tất cả issue của RustCrypto/traits
Issue tương tự
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 88/100
-
bug core
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 86/100
-
JIT-compiled number -> Decimal conversion silently overflows instead of raising DECIMAL_OVERFLOW Đang mởfuzz
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 82/100
ClickHouse/ClickHouse#122114 ·
-
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 92/100
linebender/vello_svg#90 ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 74/100