Update private and public key
This commit is contained in:
42
src/main.rs
42
src/main.rs
@@ -1,22 +1,18 @@
|
||||
use anyhow::Result;
|
||||
use blake2::{digest::Mac, Blake2s, Blake2sMac, Digest};
|
||||
use byteorder::LittleEndian;
|
||||
use rand::rngs::StdRng;
|
||||
use rand::RngCore;
|
||||
use rand::SeedableRng;
|
||||
use snow::Builder;
|
||||
use std::io;
|
||||
use std::net::UdpSocket;
|
||||
use anyhow::Result;
|
||||
use snow::Builder;
|
||||
use x25519_dalek::PublicKey;
|
||||
use x25519_dalek::StaticSecret;
|
||||
use zerocopy::{AsBytes,FromBytes,FromZeroes};
|
||||
use byteorder::LittleEndian;
|
||||
use zerocopy::byteorder::U32;
|
||||
use blake2::{Blake2sMac, Blake2s, Digest, digest::{Mac,KeyInit}};
|
||||
use rand::rngs::StdRng;
|
||||
use rand::SeedableRng;
|
||||
use rand::RngCore;
|
||||
use csv::Writer;
|
||||
use zerocopy::{AsBytes, FromBytes, FromZeroes};
|
||||
|
||||
const SIZE_MAC: usize = 16;
|
||||
const SIZE_TAG: usize = 16; // poly1305 tag
|
||||
const SIZE_XNONCE: usize = 24; // xchacha20 nonce
|
||||
const SIZE_COOKIE: usize = 16; //
|
||||
const SIZE_X25519_POINT: usize = 32; // x25519 public key
|
||||
const SIZE_TIMESTAMP: usize = 12;
|
||||
|
||||
@@ -34,9 +30,9 @@ pub struct NoiseInitiation {
|
||||
pub f_timestamp: [u8; SIZE_TIMESTAMP + SIZE_TAG],
|
||||
}
|
||||
|
||||
use std::time::{Instant, SystemTime, UNIX_EPOCH};
|
||||
use blake2::digest::typenum::U16;
|
||||
use serde::Serialize;
|
||||
use std::time::{Instant, SystemTime, UNIX_EPOCH};
|
||||
|
||||
pub type TAI64N = [u8; 12];
|
||||
|
||||
@@ -61,10 +57,16 @@ pub fn now() -> TAI64N {
|
||||
}
|
||||
|
||||
fn perform_handshake() -> Result<u128> {
|
||||
let private_key = StaticSecret::from([152, 54, 147, 217, 172, 232, 187, 88, 157, 200, 193, 94, 123, 74, 67, 104, 181, 18, 19, 244, 73, 108, 87, 152, 244, 100, 123, 188, 90, 121, 218, 96]);
|
||||
let public_key = PublicKey::from(&private_key);
|
||||
let private_key = StaticSecret::from([
|
||||
112, 3, 135, 100, 197, 196, 171, 109, 13, 243, 249, 30, 91, 137, 88, 174, 72, 94, 143, 122,
|
||||
2, 21, 227, 21, 222, 226, 127, 221, 253, 182, 120, 100,
|
||||
]);
|
||||
let _ = PublicKey::from(&private_key);
|
||||
|
||||
let remote_public_key = PublicKey::from([52, 55, 49, 225, 89, 226, 78, 2, 30, 129, 213, 254, 101, 84, 124, 121, 14, 228, 251, 120, 124, 83, 215, 201, 213, 59, 68, 9, 209, 161, 62, 53]);
|
||||
let remote_public_key = PublicKey::from([
|
||||
247, 61, 49, 57, 18, 173, 228, 54, 73, 122, 167, 57, 231, 254, 152, 22, 88, 209, 207, 114,
|
||||
175, 247, 76, 143, 22, 194, 15, 128, 120, 200, 145, 59,
|
||||
]);
|
||||
|
||||
let preshared_key: [u8; 32] = [0; 32];
|
||||
|
||||
@@ -104,7 +106,7 @@ fn perform_handshake() -> Result<u128> {
|
||||
assert_eq!(size, initiation.len());
|
||||
|
||||
let mut buf = [0u8; 92];
|
||||
let (number_of_bytes, src_addr) = socket.recv_from(&mut buf)?;
|
||||
let (number_of_bytes, _) = socket.recv_from(&mut buf)?;
|
||||
|
||||
let end = Instant::now();
|
||||
|
||||
@@ -115,14 +117,16 @@ fn perform_handshake() -> Result<u128> {
|
||||
|
||||
#[derive(Serialize)]
|
||||
struct Record {
|
||||
time: u128
|
||||
time: u128,
|
||||
}
|
||||
|
||||
fn main() -> Result<()> {
|
||||
let mut wtr = csv::Writer::from_writer(io::stdout());
|
||||
|
||||
for _ in 0..1_000_000 {
|
||||
wtr.serialize(Record {time: perform_handshake()?})?;
|
||||
wtr.serialize(Record {
|
||||
time: perform_handshake()?,
|
||||
})?;
|
||||
}
|
||||
|
||||
wtr.flush()?;
|
||||
|
||||
Reference in New Issue
Block a user