rpi-fw-crypto: can the dependency on GnuTLS be optional instead?

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

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
48/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ệ
c
Lĩnh vực
embedded-iot

Hướng nghiên cứu

Read the rpi-fw-crypto implementation, especially the sign command's hash_file() and the hmac command used by the initramfs; the issue names no source files or tests. Check how the binary links to GnuTLS and whether that dependency can be made optional for hmac. Done means hmac works without GnuTLS while sign retains its required hashing behavior.

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

Mô tả

Hi,

The initramfs that rpi-image-gen builds with the rpi-idp-luks2 layer runs rpi-fw-crypto hmac to unlock LUKS2. Because rpi-fw-crypto links against GnuTLS, the initramfs also has to carry GnuTLS and its dependencies: 2.28 MB at zstd -19, close to 25% of my small initramfs test. GnuTLS is only used by sign (in hash_file()), but the binary won’t load without it, even for hmac.

I saw that #203 was closed because GnuTLS is used elsewhere in RPi OS. In my initramfs, though, rpi-fw-crypto appears to be its only user, in this particular configuration I am testing.

The use case I’m considering is reducing churn in the generated boot.img, which affects OTA transfer size where those matters. I suppose the counterargument is that I could simply pin the package versions instead of always pulling the latest via apt.

Ngôn ngữ chính
C
Star
351
Fork
103
Merge trung bình
1 ngày 18 phút
Pull request đã merge (30 ngày)
4

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

Dự án này không cung cấp dev container, Dockerfile hay hướng dẫn đóng góp, nên bạn cần tự thiết lập môi trường: hãy bắt đầu từ README và xem hướng dẫn đóng góp lần đầu của chúng tôi để biết các bước chung.

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 raspberrypi/utils

Tất cả issue của raspberrypi/utils

Issue tương tự

Thêm issue về C

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.