22 Commits

Author SHA1 Message Date
guoling bba2dabd03 Reject oversized encrypted keys before decryption 2026-09-07 09:25:29 +08:00
guoling 998c51baca Support unsigned protobuf value lengths 2026-09-04 16:56:43 +08:00
guoling de70a23783 Fix oversized key corrupting data due to uint16_t overflow in KeyValueHolder
Keys longer than 65531 bytes cause keySize and computedKVSize (both uint16_t)
to wrap around, silently corrupting the internal offset so that subsequent reads
return garbage. Reject keys exceeding the safe threshold (UINT16_MAX - 4) at
all write and parse entry points.
2026-04-08 16:08:59 +08:00
guoling 2ba8ff9bc0 support AES 256 2025-09-24 11:55:35 +08:00
guoling f23e95c652 support using MMKVCore at Apple platform in pure C++ code 2025-02-14 19:43:48 +08:00
Designerxsh 0bf6cf1f34 Fix a spelling error 2021-11-10 12:23:35 +08:00
guoling 580e815ce9 fix decode error of encrypted MMKV on some devices: issue #529 2020-09-23 12:29:25 +08:00
guoling a2c33290f5 support root on Linux 2020-09-02 16:40:56 +08:00
guoling 74be762dc8 add MMKV_DISABLE_CRYPT preprocess directive 2020-07-01 18:12:00 +08:00
guoling 1d262bb195 hide KeyValueHolder from public header 2020-06-30 18:23:25 +08:00
guoling af1bca6e33 remove useless code 2020-06-29 12:46:15 +08:00
guoling 20d64a6f4a fix skipBytes() bug 2020-06-23 20:55:35 +08:00
guoling 5b633a2833 fix skipBytes() bug 2020-06-22 20:11:48 +08:00
guoling 738e567a3c throw on malloc failure 2020-06-19 21:20:31 +08:00
guoling 63cb806a03 tidy 2020-06-19 20:26:27 +08:00
guoling 87e32a5539 opt partialLoadFromFile on encrypted mmkv 2020-06-19 18:57:09 +08:00
guoling 7b2af677cd POSIX 2020-06-19 15:36:08 +08:00
guoling 5f138b8100 Android almost done 2020-06-19 12:25:16 +08:00
guoling 9ba472ca1f POSIX 2020-06-18 22:37:57 +08:00
guoling d734112f0e partialLoadFromFile 2020-06-18 21:39:08 +08:00
guoling 3c044e62b6 split small value & large value 2020-06-16 22:20:52 +08:00
guoling 305bbca60d aes decrypt almost done 2020-06-16 21:48:18 +08:00