mirror of
https://github.com/serai-dex/serai.git
synced 2025-12-08 20:29:23 +00:00
Publish an alpha version of the Monero crate (#123)
* Label the version as an alpha * Add versions to Cargo.tomls * Update to Zeroize 1.5 * Drop patch versions from monero-serai Cargo.toml * Add a repository field * Move generators to OUT_DIR IIRC, I didn't do this originally as it constantly re-generated them. Unfortunately, since cargo is complaining about .generators, we have to. * Remove Timelock::fee_weight Transaction::fee_weight's has a comment, "Assumes Timelock::None since this library won't let you create a TX with a timelock". Accordingly, this is dead code.
This commit is contained in:
@@ -6,7 +6,7 @@ use std::{
|
||||
|
||||
use rand_core::{RngCore, CryptoRng};
|
||||
|
||||
use zeroize::Zeroize;
|
||||
use zeroize::{Zeroize, ZeroizeOnDrop};
|
||||
|
||||
use group::{
|
||||
ff::{Field, PrimeField},
|
||||
@@ -272,6 +272,7 @@ impl<C: Curve> Drop for SecretShareMachine<C> {
|
||||
self.zeroize()
|
||||
}
|
||||
}
|
||||
impl<C: Curve> ZeroizeOnDrop for SecretShareMachine<C> {}
|
||||
|
||||
#[derive(Zeroize)]
|
||||
pub struct KeyMachine<C: Curve> {
|
||||
@@ -287,6 +288,7 @@ impl<C: Curve> Drop for KeyMachine<C> {
|
||||
self.zeroize()
|
||||
}
|
||||
}
|
||||
impl<C: Curve> ZeroizeOnDrop for KeyMachine<C> {}
|
||||
|
||||
impl<C: Curve> KeyGenMachine<C> {
|
||||
/// Creates a new machine to generate a key for the specified curve in the specified multisig
|
||||
|
||||
@@ -3,7 +3,7 @@ use std::{io::Read, sync::Arc, collections::HashMap};
|
||||
|
||||
use thiserror::Error;
|
||||
|
||||
use zeroize::Zeroize;
|
||||
use zeroize::{Zeroize, ZeroizeOnDrop};
|
||||
|
||||
use group::{
|
||||
ff::{Field, PrimeField},
|
||||
@@ -160,6 +160,7 @@ impl<C: Curve> Drop for FrostCore<C> {
|
||||
self.zeroize()
|
||||
}
|
||||
}
|
||||
impl<C: Curve> ZeroizeOnDrop for FrostCore<C> {}
|
||||
|
||||
impl<C: Curve> Debug for FrostCore<C> {
|
||||
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
|
||||
@@ -287,6 +288,7 @@ impl<C: Curve> Drop for FrostKeys<C> {
|
||||
self.zeroize()
|
||||
}
|
||||
}
|
||||
impl<C: Curve> ZeroizeOnDrop for FrostKeys<C> {}
|
||||
|
||||
// View of keys passable to algorithm implementations
|
||||
#[derive(Clone, Zeroize)]
|
||||
@@ -304,6 +306,7 @@ impl<C: Curve> Drop for FrostView<C> {
|
||||
self.zeroize()
|
||||
}
|
||||
}
|
||||
impl<C: Curve> ZeroizeOnDrop for FrostView<C> {}
|
||||
|
||||
impl<C: Curve> FrostKeys<C> {
|
||||
pub fn new(core: FrostCore<C>) -> FrostKeys<C> {
|
||||
|
||||
@@ -6,7 +6,7 @@ use std::{
|
||||
|
||||
use rand_core::{RngCore, CryptoRng};
|
||||
|
||||
use zeroize::Zeroize;
|
||||
use zeroize::{Zeroize, ZeroizeOnDrop};
|
||||
|
||||
use transcript::Transcript;
|
||||
|
||||
@@ -55,7 +55,7 @@ impl<C: Curve, A: Algorithm<C>> Params<C, A> {
|
||||
Err(FrostError::InvalidParticipantIndex(included[included.len() - 1], params.n))?;
|
||||
}
|
||||
// Same signer included multiple times
|
||||
for i in 0 .. included.len() - 1 {
|
||||
for i in 0 .. (included.len() - 1) {
|
||||
if included[i] == included[i + 1] {
|
||||
Err(FrostError::DuplicatedIndex(included[i]))?;
|
||||
}
|
||||
@@ -95,6 +95,7 @@ impl<C: Curve> Drop for PreprocessPackage<C> {
|
||||
self.zeroize()
|
||||
}
|
||||
}
|
||||
impl<C: Curve> ZeroizeOnDrop for PreprocessPackage<C> {}
|
||||
|
||||
// This library unifies the preprocessing step with signing due to security concerns and to provide
|
||||
// a simpler UX
|
||||
|
||||
Reference in New Issue
Block a user