aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorJake McGinty <me@jake.su>2017-12-31 01:55:51 -0800
committerJake McGinty <me@jake.su>2017-12-31 01:55:51 -0800
commitef3100f0ac7a8372ab6b65de22633ad69ee9d23a (patch)
tree0afb04deb988a31c8588726f1a5d1a4053aa52a5 /src
parentremove some unused dependencies (diff)
downloadwireguard-rs-ef3100f0ac7a8372ab6b65de22633ad69ee9d23a.tar.xz
wireguard-rs-ef3100f0ac7a8372ab6b65de22633ad69ee9d23a.zip
use blake2-rfc instead of rust-crypto
Diffstat (limited to 'src')
-rw-r--r--src/main.rs2
-rw-r--r--src/protocol/peer.rs10
2 files changed, 5 insertions, 7 deletions
diff --git a/src/main.rs b/src/main.rs
index 5f75d04..8c327cf 100644
--- a/src/main.rs
+++ b/src/main.rs
@@ -6,9 +6,9 @@
#[macro_use] extern crate structopt_derive;
extern crate base64;
+extern crate blake2_rfc;
extern crate byteorder;
extern crate bytes;
-extern crate crypto;
extern crate daemonize;
extern crate env_logger;
extern crate hex;
diff --git a/src/protocol/peer.rs b/src/protocol/peer.rs
index ed0bbd1..2010bc1 100644
--- a/src/protocol/peer.rs
+++ b/src/protocol/peer.rs
@@ -1,5 +1,5 @@
use byteorder::{ByteOrder, BigEndian, LittleEndian};
-use crypto::blake2s::Blake2s;
+use blake2_rfc::blake2s::{Blake2s, blake2s};
use snow::{self, NoiseBuilder};
use pnet::packet::Packet;
use pnet::packet::ip::IpNextHeaderProtocols;
@@ -177,13 +177,11 @@ impl Peer {
LittleEndian::write_u32(&mut initiation_packet[4..], self.our_next_index().unwrap());
self.sessions.next.as_mut().unwrap().noise.write_message(&tai64n, &mut initiation_packet[8..]).unwrap();
let mut mac_key_input = [0; 40];
- let mut mac_key = [0; 32];
memcpy(&mut mac_key_input, b"mac1----");
memcpy(&mut mac_key_input[8..], &self.info.pub_key);
- Blake2s::blake2s(&mut mac_key, &mac_key_input, &[0; 0]);
- let mut mac = [0; 16];
- Blake2s::blake2s(&mut mac, &initiation_packet[0..116], &mac_key);
- memcpy(&mut initiation_packet[116..], &mac);
+ let mac_key = blake2s(32, &[], &mac_key_input);
+ let mac = blake2s(16, mac_key.as_bytes(), &initiation_packet[0..116]);
+ memcpy(&mut initiation_packet[116..], mac.as_bytes());
initiation_packet
}