summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorDavid Lönnhager <david.l@mullvad.net>2025-03-25 14:33:26 +0100
committerDavid Lönnhager <david.l@mullvad.net>2025-03-25 14:33:26 +0100
commit6263f202a2880723a72504311a3d34014e48bc18 (patch)
treea8625e283abbc84403638d1897d2737ffe0b3079
parent36e9c8599f0b33d540636f773c8f58dc2d971c29 (diff)
parentef567254c0459af96d17a02a9d7dc346302c5e8e (diff)
downloadmullvadvpn-6263f202a2880723a72504311a3d34014e48bc18.tar.xz
mullvadvpn-6263f202a2880723a72504311a3d34014e48bc18.zip
Merge branch 'print-pubkey-meta'
-rw-r--r--mullvad-update/meta/src/main.rs4
-rw-r--r--mullvad-update/src/format/key.rs6
2 files changed, 9 insertions, 1 deletions
diff --git a/mullvad-update/meta/src/main.rs b/mullvad-update/meta/src/main.rs
index c1c4788f16..51d2c5ba25 100644
--- a/mullvad-update/meta/src/main.rs
+++ b/mullvad-update/meta/src/main.rs
@@ -119,7 +119,9 @@ async fn main() -> anyhow::Result<()> {
match opt {
Opt::GenerateKey => {
- println!("{}", key::SecretKey::generate());
+ let secret = key::SecretKey::generate();
+ println!("Secret key: {secret}");
+ println!("Public key: {}", secret.pubkey());
Ok(())
}
Opt::CreateMetadataFile { platforms } => {
diff --git a/mullvad-update/src/format/key.rs b/mullvad-update/src/format/key.rs
index 70730f8f21..c61b2dd9e0 100644
--- a/mullvad-update/src/format/key.rs
+++ b/mullvad-update/src/format/key.rs
@@ -79,6 +79,12 @@ impl Serialize for SecretKey {
#[cfg_attr(test, derive(Clone))]
pub struct VerifyingKey(pub ed25519_dalek::VerifyingKey);
+impl fmt::Display for VerifyingKey {
+ fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
+ write!(f, "{}", hex::encode(self.0.as_bytes()))
+ }
+}
+
impl VerifyingKey {
pub fn from_hex(s: &str) -> anyhow::Result<Self> {
let bytes = bytes_from_hex::<{ ed25519_dalek::PUBLIC_KEY_LENGTH }>(s)?;