-
Notifications
You must be signed in to change notification settings - Fork 168
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
Use fixed-length integers to improve cross-platform compatibility #492
Comments
Additional notes: this probably needs a major version change, as the fields are involved in the hashes. So if a 64-bit machine stored the fields as However, #493 suggests that this never worked on a 32-bit system. So I think if we change every |
Following #529 , Kyber now compiles and works in both 32-bit and 64-bit architectures. |
I've added you (@AnomalRoil and @K1li4nL) and me as assignees so that we can discuss this and decide together the best way forward ahead of the v4 release. |
Why not changing every |
As discussed in the review of #490 with @ineiti and @howjmay , Kyber uses structures with Go
int
-typed fields, which are unsized. This can lead to differences in serialization and hash computations across different processor architectures.It would be preferable to switch to sized types (
int32
andint64
), which would provide consistent behaviours across platforms.The text was updated successfully, but these errors were encountered: