Jess
12cbefbee7
LibJS+LibCrypto: Use a bitwise approach for BigInt's as*IntN methods
...
This speeds up expressions such as `BigInt.asIntN(0x4000000000000, 1n)`
(#3615 ). And those involving very large bigints.
2025-03-20 09:44:12 +01:00
Jess
8fda05d8b7
LibCrypto: Introduce a falible API for SignedBigInteger::shift_left
2025-02-19 09:00:59 -05:00
Timothy Flynn
edd3b14ddf
LibCrypto: Protect the SignedBigInteger ctor against integer overflow
...
In particular, if given a value of -2147483648, we would invoke signed
integer overflow (which is UB).
2024-12-19 23:37:30 +01:00
Pavel Shliak
8d13115d9a
LibCrypto: Clean up #include directives
...
This change aims to improve the speed of incremental builds.
2024-11-21 14:08:33 +01:00
Timothy Flynn
93712b24bf
Everywhere: Hoist the Libraries folder to the top-level
2024-11-10 12:50:45 +01:00
Andreas Kling
13d7c09125
Libraries: Move to Userland/Libraries/
2021-01-12 12:17:46 +01:00
AnotherTest
b00ffc860b
LibCrypto: Do not trim leading zeros in export_data by default
...
This fixes the issue with the exported data having a leading zero,
causing RSA::encrypt to trim the block down, and ruining the encryption.
Fixes #2691 :^)
2020-07-31 18:25:20 +02:00
asynts
4709b700bd
LibCrypto: Change [XXX]BigInteger::export_data() to use Span.
2020-07-27 19:58:09 +02:00
asynts
68cf22d580
LibCrypto: This method wrote to a const pointer.
2020-07-27 19:58:09 +02:00
AnotherTest
02c53fd1f9
LibCrypto: Add bitwise operations (and/or/xor)
2020-06-07 19:29:40 +02:00
AnotherTest
d8208fd37c
LibCrypto: Add a simple SignedBigInteger
...
This patchset adds a simple SignedBigInteger that is entirely defined in
terms of UnsignedBigInteger.
It also adds a NumberTheory::Power function, which is terribly
inefficient, but since the use of exponentiation is very much
discouraged for large inputs, no particular attempts were made
to make it more performant.
2020-06-05 13:29:44 +02:00