Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[RFE] Support the hash_sha256 attribute for regular packages #633

Open
pothos opened this issue Dec 13, 2022 · 0 comments
Open

[RFE] Support the hash_sha256 attribute for regular packages #633

pothos opened this issue Dec 13, 2022 · 0 comments

Comments

@pothos
Copy link
Member

pothos commented Dec 13, 2022

Current situation

Flatcar packages have a sha256 sum in the postinstall extension, and extra file packages have sha256 sums for the extra files.
However, regular application packages don't have a sha256 sum available.

Impact

Only sha1 is available for regular packages and it's not deemed secure enough anymore.

Ideal future situation

The user can always supply a sha256 hash sum (and it's sent on the wire in hex encoding as clarified in the Omaha 3.1 spec).

Implementation options

For Flatcar packages we could calculate the hex sha256 sum on the fly from the postinstall extension where it's stored in base64, see backend/pkg/syncer/syncer.go for the conversion (introduced in https://github.com/kinvolk/nebraska/pull/629/files).
For other packages we could also reuse the FlatcarAction field but hide all other attributes except Sha256.

Additional information

3.0 spec mentioning both attributes: https://github.com/google/omaha/blob/main/doc/ServerProtocolV3.md#package-response
earlier 3.0 spec only mentioning the sha1 hash: https://github.com/google/omaha/blob/main/doc/ServerProtocol.md#package-element
3.1 spec: https://chromium.googlesource.com/chromium/src.git/+/master/docs/updater/protocol_3_1.md#update-checks-body-update-check-response-objects-update-check-response-9

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant