crypto: Zeroize the GroupSessionKey struct.
parent
8210c2377d
commit
cb8f1c1a5b
|
@ -12,7 +12,7 @@ version = "0.1.0"
|
||||||
|
|
||||||
[features]
|
[features]
|
||||||
default = []
|
default = []
|
||||||
encryption = ["olm-rs", "serde/derive", "serde_json", "cjson"]
|
encryption = ["olm-rs", "serde/derive", "serde_json", "cjson", "zeroize"]
|
||||||
sqlite-cryptostore = ["sqlx", "zeroize"]
|
sqlite-cryptostore = ["sqlx", "zeroize"]
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
|
@ -35,7 +35,7 @@ olm-rs = { git = "https://gitlab.gnome.org/poljar/olm-rs", optional = true, feat
|
||||||
serde = { version = "1.0.106", optional = true, features = ["derive"] }
|
serde = { version = "1.0.106", optional = true, features = ["derive"] }
|
||||||
serde_json = { version = "1.0.51", optional = true }
|
serde_json = { version = "1.0.51", optional = true }
|
||||||
cjson = { version = "0.1.0", optional = true }
|
cjson = { version = "0.1.0", optional = true }
|
||||||
zeroize = { version = "1.1.0", optional = true }
|
zeroize = { version = "1.1.0", optional = true, features = ["zeroize_derive"] }
|
||||||
|
|
||||||
# Misc dependencies
|
# Misc dependencies
|
||||||
thiserror = "1.0.14"
|
thiserror = "1.0.14"
|
||||||
|
|
|
@ -19,6 +19,7 @@ use std::time::Instant;
|
||||||
|
|
||||||
use serde::Serialize;
|
use serde::Serialize;
|
||||||
use tokio::sync::Mutex;
|
use tokio::sync::Mutex;
|
||||||
|
use zeroize::Zeroize;
|
||||||
|
|
||||||
use olm_rs::account::{IdentityKeys, OlmAccount, OneTimeKeys};
|
use olm_rs::account::{IdentityKeys, OlmAccount, OneTimeKeys};
|
||||||
use olm_rs::errors::{OlmAccountError, OlmGroupSessionError, OlmSessionError};
|
use olm_rs::errors::{OlmAccountError, OlmGroupSessionError, OlmSessionError};
|
||||||
|
@ -344,7 +345,8 @@ impl PartialEq for Session {
|
||||||
|
|
||||||
/// The private session key of a group session.
|
/// The private session key of a group session.
|
||||||
/// Can be used to create a new inbound group session.
|
/// Can be used to create a new inbound group session.
|
||||||
#[derive(Clone, Serialize)]
|
#[derive(Clone, Serialize, Zeroize)]
|
||||||
|
#[zeroize(drop)]
|
||||||
pub struct GroupSessionKey(pub String);
|
pub struct GroupSessionKey(pub String);
|
||||||
|
|
||||||
/// Inbound group session.
|
/// Inbound group session.
|
||||||
|
|
Loading…
Reference in New Issue