mirror of
https://github.com/serai-dex/serai.git
synced 2025-12-08 12:19:24 +00:00
Move additional_key.rs to serai-processor-view-keys
I don't love this. I wanted to simply add this function to `processor/key-gen`, but then anyone who wants a view key needs to pull in Bulletproofs which is a mess of code. They'd also be subject to an AGPL licensed library. This is so small it should be a primitive elsewhere, yet there is no primitives library eligible. Maybe serai-client since that has the code to make transactions to Serai (and will have this as a dependency)? Except then the processor has to import serai-client when this rewrite removed it as a dependency.
This commit is contained in:
@@ -1,14 +0,0 @@
|
||||
use ciphersuite::Ciphersuite;
|
||||
|
||||
use crate::networks::Network;
|
||||
|
||||
// Generate a static additional key for a given chain in a globally consistent manner
|
||||
// Doesn't consider the current group key to increase the simplicity of verifying Serai's status
|
||||
// Takes an index, k, to support protocols which use multiple secondary keys
|
||||
// Presumably a view key
|
||||
pub fn additional_key<N: Network>(k: u64) -> <N::Curve as Ciphersuite>::F {
|
||||
<N::Curve as Ciphersuite>::hash_to_F(
|
||||
b"Serai DEX Additional Key",
|
||||
&[N::ID.as_bytes(), &k.to_le_bytes()].concat(),
|
||||
)
|
||||
}
|
||||
@@ -1,15 +0,0 @@
|
||||
#![allow(dead_code)]
|
||||
|
||||
mod plan;
|
||||
pub use plan::*;
|
||||
|
||||
mod db;
|
||||
pub(crate) use db::*;
|
||||
|
||||
use serai_processor_key_gen as key_gen;
|
||||
|
||||
pub mod networks;
|
||||
pub(crate) mod multisigs;
|
||||
|
||||
mod additional_key;
|
||||
pub use additional_key::additional_key;
|
||||
@@ -27,9 +27,6 @@ use serai_env as env;
|
||||
|
||||
use message_queue::{Service, client::MessageQueue};
|
||||
|
||||
mod plan;
|
||||
pub use plan::*;
|
||||
|
||||
mod networks;
|
||||
use networks::{Block, Network};
|
||||
#[cfg(feature = "bitcoin")]
|
||||
@@ -39,9 +36,6 @@ use networks::Ethereum;
|
||||
#[cfg(feature = "monero")]
|
||||
use networks::Monero;
|
||||
|
||||
mod additional_key;
|
||||
pub use additional_key::additional_key;
|
||||
|
||||
mod db;
|
||||
pub use db::*;
|
||||
|
||||
|
||||
@@ -4,5 +4,5 @@ pub enum MultisigEvent<N: Network> {
|
||||
// Batches to publish
|
||||
Batches(Option<(<N::Curve as Ciphersuite>::G, <N::Curve as Ciphersuite>::G)>, Vec<Batch>),
|
||||
// Eventuality completion found on-chain
|
||||
Completed(Vec<u8>, [u8; 32], <N::Eventu
|
||||
Completed(Vec<u8>, [u8; 32], N::Eventuality),
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user