Browse Source

doprf: add set_legendre_prf_key_prev method

Lennart Braun 2 years ago
parent
commit
71426cf9f6
1 changed files with 9 additions and 0 deletions
  1. 9 0
      oram/src/doprf.rs

+ 9 - 0
oram/src/doprf.rs

@@ -158,6 +158,11 @@ where
         self.legendre_prf_key.as_ref().unwrap().clone()
     }
 
+    pub fn set_legendre_prf_key(&mut self, legendre_prf_key: LegendrePrfKey<F>) {
+        assert!(!self.is_initialized);
+        self.legendre_prf_key = Some(legendre_prf_key);
+    }
+
     pub fn preprocess_round_0(&mut self, num: usize) -> ((), ()) {
         assert!(self.is_initialized);
         let n = num * self.output_bitsize;
@@ -641,6 +646,10 @@ impl<F: LegendreSymbol + Serializable> JointDOPrf<F> {
         self.doprf_p1_prev.get_legendre_prf_key()
     }
 
+    pub fn set_legendre_prf_key_prev(&mut self, legendre_prf_key: LegendrePrfKey<F>) {
+        self.doprf_p1_prev.set_legendre_prf_key(legendre_prf_key)
+    }
+
     pub fn init<C: AbstractCommunicator>(&mut self, comm: &mut C) -> Result<(), Error> {
         let fut_prev = comm.receive_previous()?;
         let (msg_1_2, _) = self.doprf_p1_prev.init_round_0();