-
-
Notifications
You must be signed in to change notification settings - Fork 2k
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
Year 2038 problem #4177
Comments
If I'm correct, only the last used is stored in a Thanks for the report |
Yes, only the last used is stored/retrieved as an
Lol, I agree that 14 years is enough time. |
You can have a kid in that time, only for your kid to then come back to this issue and reopen it again. |
Why re-open it? The kid can fix it and create a PR ;) |
The "kid" would use my fork which has it fixed, but they would use WebAuthn anyway so wouldn't matter. I do believe that was a joke; but just in case it were not, let me state that my fork has diverged by 10s of thousands of lines if not over 100K. This means sending a |
It does mean a bit more work for us, but indeed all the items you send we (I) will try to address. From my point of view I'm happy with them, any insight and approvements are welcome! |
Hi, I create PR to fix this. Please check: |
This is not a "vulnerability" due to the fact that the issue is 14 years away*; furthermore Vaultwarden may not even be a thing then. Anyway, I am not sure why 32-bit timestamps are used for the TOTP code considering most OSes running on 64-bit systems have been using 64-bit timestamps for a decade or more (even 32-bit Linux has support since 5.6),
chrono
usesi64
s, andtotp-lite
usesu64
s. The change tou64
/i64
s is easy in code—I've done so on my personal fork—and SQLite has no issues either sinceINTEGER
is a flexible-width data type (up to 64 bits) andDATETIME
has type affinityNUMERIC
which will store values asINTEGER
so long as they are valid 64-bit signed integers. I'm not sure what if anything would be needed to "fix" PostgreSQL and MariaDB/MySQL.* Technically a contrived setup where servers and clients have their clocks in-sync but set to beyond 2038 are vulnerable.
The text was updated successfully, but these errors were encountered: