Hocuri
3d5e97eced
No clippy warnings anymore!
2025-09-03 17:56:12 +02:00
Hocuri
58d0fd39b5
clippy
2025-09-03 17:56:12 +02:00
Hocuri
40e3c34f59
refactor: It's not actually necessary for Alice to remember how the message was encrypted
2025-09-03 17:56:12 +02:00
Hocuri
738f6c1799
feat: Transfer the broadcast secret in an encrypted message rather than directly in the QR code
2025-09-03 17:56:11 +02:00
Hocuri
fca8948e4c
Speed up message decryption by not iterating in the s2k algorithm
...
The passphrase has as much entropy as the session key, so, there is no
point in making the computation slow by iterating.
2025-09-03 17:56:11 +02:00
Hocuri
d431f2ebd3
Add benchmark for message decryption
2025-09-03 17:56:10 +02:00
Hocuri
ad0e3179dd
Remove unused and problematic ensure!
...
`secret_keys.is_empty()` only checked whether any secret keys were
passed. This is not helpful, and made decrypting fail in the benchmark.
2025-09-03 17:56:10 +02:00
Hocuri
8653fdbd8e
feat: Save the secret to encrypt and decrypt messages. Next: Send it in a 'member added' message.
2025-09-03 17:55:38 +02:00
Hocuri
47bf4da1fe
WIP: Start with decryption, and a test for it. Next TODO: SQL table migartion.
2025-09-03 17:55:38 +02:00
Hocuri
ec2056f5e2
feat: Symmetric encryption. No decryption, no sharing of the secret, not tested.
2025-09-03 17:55:35 +02:00
link2xt
3656337d41
refactor: do not return Result from valid_signature_fingerprints()
...
This function never fails.
2025-08-18 07:47:34 +00:00
link2xt
5c3de759d3
refactor: upgrade to Rust 2024
2025-06-28 17:07:59 +00:00
Friedel Ziegelmayer
5c2af42cdd
build: update to rPGP 0.16.0 ( #6719 )
...
Co-authored-by: Heiko Schaefer <heiko@schaefer.name >
Co-authored-by: link2xt <link2xt@testrun.org >
2025-05-29 13:06:18 +00:00
link2xt
ab0b4cad52
feat: do not consider encrypting to the primary key
...
Primary key is usually used for certification.
It is possible to make a certification- and encryption-
capable key with RSA, but RFC 9580 says
that implementations SHOULD NOT generate RSA keys.
2025-04-07 15:47:17 +00:00
link2xt
e5b79bf405
refactor: replace once_cell::sync::Lazy with std::sync::LazyLock
2025-04-04 20:51:37 +00:00
link2xt
c4e6823396
api!: remove key_gen_type config
...
This removes the ability to generate RSA keys.
2025-03-06 21:41:41 +00:00
link2xt
a0ff0d71bc
fix: do not include CRLF before MIME boundary in the part body
...
This change adds a test and updates mailparse from 0.15.0 to 0.16.0.
mailparse 0.16.0 includes a fix for the bug
that resulted in CRLF being included at the end of the body.
Workaround for the bug in the `pk_validate` function is also removed.
2025-02-10 12:35:27 +00:00
link2xt
32459b3fdc
Reapply "build: increase MSRV to 1.81.0"
...
This reverts commit 9d331483e9 .
2025-01-23 02:59:10 +00:00
link2xt
9d331483e9
Revert "build: increase MSRV to 1.81.0"
...
This reverts commit ffe6efe819 .
2024-12-17 17:20:48 +00:00
link2xt
ffe6efe819
build: increase MSRV to 1.81.0
2024-12-12 04:45:24 +00:00
link2xt
e7a29f0aa7
chore(cargo): update rPGP from 0.13.2 to 0.14.0
2024-11-14 09:31:40 +00:00
link2xt
faad576d10
feat: experimental header protection for Autocrypt
...
This change adds support for receiving
Autocrypt header in the protected part of encrypted message.
Autocrypt header is now also allowed in mailing lists.
Previously Autocrypt header was rejected when
List-Post header was present,
but the check for the address being equal to the From: address
is sufficient.
New experimental `protect_autocrypt` config is disabled
by default because Delta Chat with reception
support should be released first on all platforms.
2024-11-06 23:16:09 +00:00
link2xt
c5b78741d6
refactor: fix clippy::needless_lifetimes warnings
2024-10-15 09:14:23 +00:00
link2xt
f7a705c6da
refactor: use KeyPair::new() in create_keypair()
2024-09-16 20:51:16 +00:00
link2xt
1caf672904
test(test-data): remove public keys that can be derived from secret keys
2024-09-16 17:00:16 +00:00
link2xt
7743072411
refactor: remove addr from KeyPair
2024-09-16 17:00:16 +00:00
link2xt
088008a030
chore(cargo): update rPGP from 0.11 to 0.13
2024-07-09 01:32:38 +00:00
link2xt
910e4bfa37
docs: fix broken references in documentation comments
2024-04-20 05:57:26 +00:00
Hocuri
5d34b225b7
Split off functional contact tools into its own crate ( #5444 )
...
I would like to implement
https://github.com/deltachat/deltachat-core-rust/issues/5422 in its own
crate, but it will depend on some functions that are in the `deltachat`
crate.
So, this PR extracts these functions into its own crate so that I can
add https://github.com/deltachat/deltachat-core-rust/issues/5422 into
the new crate.
2024-04-16 19:01:25 +02:00
link2xt
b970ebe67a
fix: do not compress SecureJoin messages
2024-03-04 21:07:10 +00:00
link2xt
0a18e32d62
chore(cargo): update rpgp to 0.11
...
<https://github.com/rpgp/rpgp/releases/tag/v0.11.0 >
2024-02-22 05:08:00 +00:00
link2xt
660cfd4f01
refactor: rename incorrectly named variables in create_keypair
...
Encryption subkey is incorrectly referred to as public key
in variable names.
This is incorrect because generated encryption key
is secret too just as the signing primary key.
Generated OpenPGP secret key consists of primary signing key
and encryption subkey.
Then OpenPGP public key consisting of
the primary signing public key
and encryption public key is generated.
Keypair consists of the secret OpenPGP key and public OpenPGP key,
each of them has a primary key and subkey inside.
2024-02-17 17:50:33 +00:00
link2xt
b35b893351
refactor(create_keypair): remove unnecessary map_err
2024-02-17 17:50:33 +00:00
link2xt
790e867af0
Merge tag 'v1.122.0'
2023-09-12 18:04:05 +00:00
link2xt
49cc5fb673
feat: add RSA-4096 key generation support
2023-09-12 12:33:34 +00:00
link2xt
68c95dee17
refactor(pgp): add constants for encryption algorithm and hash
...
These constants are current defaults in `pgp` crate,
this change would prevent accidental change due to rPGP upgrade
and make it easier to change in a single place.
2023-09-12 11:12:59 +02:00
link2xt
e59c4ee858
Merge branch 'stable'
2023-08-27 22:18:36 +00:00
link2xt
62aed13880
refactor: hide pgp module from public API
2023-08-27 22:03:00 +00:00
link2xt
d797de7a8d
refactor: use slices and vectors instead of Keyring wrapper
...
This change removes all traces of dc_keyring_t,
which was a C implementation of dynamically sized array.
2023-07-24 18:05:38 +00:00
link2xt
3e65b6f3a6
Update to rPGP 0.10.1
2023-03-30 21:09:29 +00:00
link2xt
7e5a8714a0
Add scripts/codespell.sh and spellcheck
2023-03-03 18:40:36 +00:00
iequidoo
d1923d68a5
Add a config option to sign all messages with Autocrypt header ( #3986 )
...
Although it does a little for security, it will help to protect from unwanted server-side
modifications and bugs. And now we have a time to test "multipart/signed" messages compatibility
with other MUAs.
2023-02-25 10:30:35 -03:00
link2xt
ae19c9b331
Add more documentation
2023-02-15 21:56:33 +00:00
link2xt
fcf73165ed
Inline format arguments
...
This feature has been stable since Rust 1.58.0.
2023-01-30 11:50:11 +03:00
link2xt
ae564ef702
Add documentation
2023-01-28 21:30:43 +00:00
link2xt
4615c84f31
Automatically group imports using nightly rustfmt
2023-01-19 13:13:25 +00:00
link2xt
2cd1da5222
Pass private keyring around as a reference
2022-12-23 18:43:24 +00:00
link2xt
3de53a313f
Make pk_decrypt synchronous
2022-12-23 18:15:38 +00:00
link2xt
2cd63234c1
Do not allow missing documentation by default
2022-12-13 23:45:12 +00:00
Friedel Ziegelmayer
3e2af8537c
refactor: remove dc_ prefix
...
* refactor: remove `dc_` prefix from mods
* refactor: remove dc_ prefix from functions
* fix: avoid temporary `File`s to avoid race conditions
* test(pgp): fix runtime usage in Lazy
Based on #3462
* fixup: undo some comment changes
2022-07-01 12:20:20 +02:00