Maarten Billemont
26c01a5eaa
Adopt pkg-config for more reliable library detection.
...
[IMPROVED] Using pkg-config we can more reliably find and use installed dependency libraries on the system.
2023-01-14 11:16:21 -05:00
Maarten Billemont
8d6d670197
Improve cmake library detection.
...
[ADDED] CMake script for finding libsodium on your system.
[UPDATED] CMake adds target link dependencies rather than relying on variables where possible.
2022-10-16 01:28:36 -04:00
Maarten Billemont
a5e7aab28f
Improvements for new users.
...
[UPDATED] Default submodule to read-only public address.
[ADDED] Detect when jq is missing and emit a useful message.
[UPDATED] API submodule update.
2022-02-05 17:05:05 -05:00
Maarten Billemont
15c45ebcac
More pure scrypt benchmark.
...
[UPDATED] Use a more pure scrypt primitive to benchmark its performance, allowing comparison with tools such as hashcat.
2021-05-16 16:00:29 -04:00
Maarten Billemont
a2d68d7620
Update API moving away from Apache base64 and updating AES.
...
[UPDATED] Adopting updated API, removing non-GPL compatible base64 and updating the AES library.
2021-05-16 15:58:07 -04:00
Maarten Billemont
c47d6074c1
Add test cases to test personal type passwords as well.
...
[ADDED] Support for personal type passwords in the standard test cases.
2021-05-16 15:56:57 -04:00
Maarten Billemont
5c1924eb6f
Transition to spectre.app for test site name.
...
[UPDATED] Transitioning away from masterpasswordapp.com to spectre.app in the Spectre algorithm test case.
2021-05-16 15:26:38 -04:00
Maarten Billemont
dfa33ec4b5
Use a bcrypt with 10 rounds.
...
[UPDATED] Benchmark based on bcrypt of 10 rounds, since it's a widely adopted minimum standard.
2021-04-07 08:53:49 -04:00
Maarten Billemont
7b09c7c7ed
Bump API for improved compiler support.
...
[UPDATED] api tweaked for supporting a wider array of compilers.
2021-04-07 08:52:55 -04:00
Maarten Billemont
04b153f54a
Restore the C build instructions.
...
[ADDED] Instructions for building the C command-line program.
[ADDED] If CC is set, use it as the compiler.
2021-03-29 12:59:43 -04:00
Maarten Billemont
180cc3db8b
Improve cmake search for sodium library.
...
[IMPROVED] Ability for cmake to find installed sodium library.
2021-02-28 13:37:26 -05:00
Maarten Billemont
c9f84f0620
Bump API to fix memory leak.
...
[FIXED] The core API fixed an internal site key leak.
2021-02-28 11:15:30 -05:00
Maarten Billemont
08d1c01f36
Master Password is now Spectre.
...
[UPDATED] Renamed all Master Password names and namespaces to Spectre equivalents.
2021-02-28 11:14:33 -05:00
Maarten Billemont
5361fc2961
Added ability to omit trailing newline from result output
...
[ADDED] Added -n to ensure output can be raw result,
avoiding need for post-processing. Resolves #15
2021-02-18 11:58:48 -05:00
Maarten Billemont
3a8f676ae6
Update nomenclature.
...
[UPDATED] Nomenclature is changing to remove "master" and "service" terminology.
TECHNICAL:
- user-name . user-secret => user-key
- user-key . site-name . site-counter . site-template => site-password
PRODUCT:
- Full Name . Personal Secret => Spectre Key
- Spectre Key . Site Domain . Site Counter . Site Template => Site Password
2021-02-18 11:58:01 -05:00
Maarten Billemont
60c61df44f
Build against C11.
...
[UPDATED] Add C language version to compiler command.
[UPDATED] Default to clang(1) if available.
2021-02-14 11:40:26 -05:00
Maarten Billemont
f79c1208b1
Reference core API code through submodule.
2021-02-01 09:39:55 -05:00
Maarten Billemont
bba0db07fe
Force a predictable size onto types when printing.
2021-02-01 09:36:29 -05:00
Maarten Billemont
0fd58eba6b
Scope LogLevel to MPLogLevel to avoid collisions with other APIs.
2020-11-21 11:41:48 -05:00
Maarten Billemont
ef635f6e30
Differentiate between global and service results.
2020-09-29 09:51:29 -04:00
Maarten Billemont
ae29050067
Correct handling of user fallback in CLI.
2020-09-28 22:59:10 -04:00
Maarten Billemont
4da64db136
Record key ID inside MPMasterKey and MPServiceKey.
2020-09-28 19:06:31 -04:00
Maarten Billemont
9e39863efd
Migrate marshalled sites to services.
2020-09-28 17:27:20 -04:00
Maarten Billemont
e2ca4fa8fd
Safer realloc & nomenclature.
...
- size: byte count
- count/length: object count
- more type-safe mpw_realloc with checked type argument & internalized object count to size.
- avoid void* wherever possible.
2020-09-28 14:56:45 -04:00
Maarten Billemont
3cbe60e1c7
API rename.
...
- Site -> Service
- siteCounter -> keyCounter
- Fallback none service identification to user identification.
- Record algorithm in MPMasterKey and MPServiceKey and remove it from
API to prevent algorithm mixing.
- Restored API buffer type checking.
- More flexible buffer handling for primitives to allow use of sized
array buffers.
2020-09-28 14:56:13 -04:00
Maarten Billemont
ca34ed8964
If no login state in mpsites, login type is none. No site login defaults to user login.
2020-09-27 17:33:01 -04:00
Maarten Billemont
6b21429551
Make C API thread-safe.
...
- Expunge use of unsafe shared storage.
- Make MPKeyID a self-contained value type.
- AES state held on the local stack.
- Skip realloc if target size already met.
2020-09-25 13:48:35 -04:00
Maarten Billemont
d435f5852f
Standard user-wide login name.
2020-09-13 17:33:41 -04:00
Maarten Billemont
8007292b8a
Improve key typing.
...
- Make key type less opaque.
- Expose and embed key size information through struct.
- Adopt standard of typing buffers through void* to allow structures to be passed into them.
2020-09-10 10:12:52 -04:00
Maarten Billemont
cc7b791fad
Add nonstandard output type tests for i,r + fix indentation.
2020-07-01 16:42:45 -04:00
Maarten Billemont
4282302961
Fix MPW_COLOR test, if set to 0.
2020-05-24 19:54:50 -04:00
Maarten Billemont
8b1feb8e90
Log out active user and key when user is changed or deleted or unset.
2020-05-24 19:54:50 -04:00
Maarten Billemont
f9488a3b7f
Use the user, not a site algorithm, for generating and testing the keyID.
...
- Order of fall-back formats from most to least preferred.
- The keyID should be based on the user algorithm, not the site algorithm.
- Standardize mpw_format* function names.
2020-05-24 19:54:50 -04:00
Maarten Billemont
1b8a597cf5
Improved repeat generation of master password suggestions.
2020-05-24 19:54:50 -04:00
Maarten Billemont
97d822667b
Test result output in export files.
2020-05-24 19:54:50 -04:00
Maarten Billemont
49979493b3
Improved string comparison.
...
In particular, of strings whose value isn't dependent on its casing.
2020-03-04 01:50:25 -05:00
Maarten Billemont
08e7164189
Standard key providers and reliability improvements.
...
Make standard key providers available to applications, not just CLI.
Improves clean-up of key providers when switching between key providers.
Enable use of mpw_marshal_write with a NULL file & more reliable file
back-writing, in particular if its pointer changes during realloc.
Return the length of the mpw_unhex buffer.
2020-02-28 21:31:15 -05:00
Maarten Billemont
a605db8e12
Crash logging & analytics.
...
Remove Crashlytics & Google Firebase.
Detailed event logging hooks.
Track using Heap, Amplitude, Mixpanel. Crash logging through Sentry.
2020-02-28 21:30:09 -05:00
Maarten Billemont
65fcf66714
Huge refactor to do marshalling completely through mpw data object now.
2019-10-02 23:16:20 -04:00
Maarten Billemont
3f8d31ae8e
Algorithm version C files need to be separately compiled now.
2019-10-02 23:16:14 -04:00
Maarten Billemont
ff9867f68f
Refactor in preparation of reading ext data prior to auth.
2019-09-30 13:08:04 -04:00
Maarten Billemont
cd61717ee5
Log native mpw into Java.
2019-09-24 17:46:33 -04:00
Maarten Billemont
5582eda2e9
Use the included words dictionary.
2019-09-20 15:02:45 -04:00
Maarten Billemont
2333c457e8
Build fixes.
2019-09-20 15:01:52 -04:00
Maarten Billemont
12166d43c9
API update.
2019-09-20 15:01:38 -04:00
Maarten Billemont
fb7ee6b38a
Marshal data API & fixes.
2019-07-28 12:36:45 -04:00
Maarten Billemont
43cd7dac71
Persist unknown JSON properties, expose to API, safety improvements.
2019-07-27 09:24:39 -04:00
Maarten Billemont
68680a3c4c
Full file marshalling and prepare to make entire document available.
2019-07-25 12:08:07 -04:00
Maarten Billemont
1bce9a9db5
Allow marshalling without masterKey and record keyID in user.
2019-07-04 09:50:00 -04:00
Maarten Billemont
cc2249ef9a
Allow unauthenticated marshal reading to reset master key.
2019-07-02 10:03:26 -04:00