Write, autoreview, editor, reviewer
3,129
edits
No edit summary |
|||
Line 47: | Line 47: | ||
** <math>\pi_i \xleftarrow[r]{r} S_{3m}</math> | ** <math>\pi_i \xleftarrow[r]{r} S_{3m}</math> | ||
** <math>(g_i, \gamma_i^{in}, \gamma_i^{mid}, \gamma_i^{out}) \xleftarrow[]{}</math> TrapTP.GadgetGen<math>(sk_{i-1})</math> | ** <math>(g_i, \gamma_i^{in}, \gamma_i^{mid}, \gamma_i^{out}) \xleftarrow[]{}</math> TrapTP.GadgetGen<math>(sk_{i-1})</math> | ||
** <math>\Gamma_i \xleftarrow[]{}</math> MAC.Sign(HE. | ** <math>\Gamma_i \xleftarrow[]{}</math> MAC.Sign(HE.ENC<math>_{pk_i}(g_i, \pi_i)) \otimes</math> TrapTP.ENC<math>((\pi_i, k, sk_0, ..., sk_t, pk_i), \gamma^{mid}_i \otimes</math> TrapTP.Enc<math>(sk, \gamma^{in}_i, \gamma^{out}_i</math> | ||
* <math>keys \xleftarrow[]{}</math> MAC.Sign<math>(evk_0, ..., evk_t, pk_0, ..., pk_t,</math> HE. | * <math>keys \xleftarrow[]{}</math> MAC.Sign<math>(evk_0, ..., evk_t, pk_0, ..., pk_t,</math> HE.Enc<math>_{pk_0}(\pi))</math> | ||
* <math>\rho_{evk} \xleftarrow[]{} (keys, \mu^{P}_0, ..., \mu^{P}_p, \mu^{T}_0, ..., \mu^{T}_t, \mu^{H}_0, ..., \mu^{H}_h, \Gamma_1, ..., \Gamma_t)</math> | * <math>\rho_{evk} \xleftarrow[]{} (keys, \mu^{P}_0, ..., \mu^{P}_p, \mu^{T}_0, ..., \mu^{T}_t, \mu^{H}_0, ..., \mu^{H}_h, \Gamma_1, ..., \Gamma_t)</math> | ||
* return <math>(sk, \rho_{evk})</math> | * return <math>(sk, \rho_{evk})</math> | ||
Line 76: | Line 76: | ||
* <math>(\tilde{x}, log_1) \xleftarrow[]{}</math> HE.Eval<math>_{evk}^{unpermute}(\tilde{\pi}, \tilde{x})</math> | * <math>(\tilde{x}, log_1) \xleftarrow[]{}</math> HE.Eval<math>_{evk}^{unpermute}(\tilde{\pi}, \tilde{x})</math> | ||
* <math>(\tilde{x}, log_2) \xleftarrow[]{}</math> HE.Eval<math>_{evk}^{\otimes}(\tilde{x},</math> HE. | * <math>(\tilde{x}, log_2) \xleftarrow[]{}</math> HE.Eval<math>_{evk}^{\otimes}(\tilde{x},</math> HE.Enc<math>_{pk}(1^m0^{2m}))</math> | ||
* <math>(\tilde{x}, log_3) \xleftarrow[]{}</math> HE.Eval<math>^{permute}_{evk}(\tilde{\pi}, \tilde{x})</math> | * <math>(\tilde{x}, log_3) \xleftarrow[]{}</math> HE.Eval<math>^{permute}_{evk}(\tilde{\pi}, \tilde{x})</math> | ||
* return (<math>\tilde{\sigma}, \tilde{x}, log_1, log_2, log_3</math>) | * return (<math>\tilde{\sigma}, \tilde{x}, log_1, log_2, log_3</math>) | ||
Line 112: | Line 112: | ||
* <math>(\tilde{x}, \tilde{z}, log_3) \xleftarrow[]{}</math> HE.Eval<math>^{T-key-update}_{evk_i}(\tilde{x}, \tilde{z}, \tilde{a}_1, \tilde{a}_2, \tilde{a}, \tilde{g}_i)</math> | * <math>(\tilde{x}, \tilde{z}, log_3) \xleftarrow[]{}</math> HE.Eval<math>^{T-key-update}_{evk_i}(\tilde{x}, \tilde{z}, \tilde{a}_1, \tilde{a}_2, \tilde{a}, \tilde{g}_i)</math> | ||
* return <math>(\tilde{\gamma_i^{out}}, \tilde{x}, \tilde{z}, log_1, log_2, log_3)</math> | * return <math>(\tilde{\gamma_i^{out}}, \tilde{x}, \tilde{z}, log_1, log_2, log_3)</math> | ||
==Further Information== | ==Further Information== | ||
<div style='text-align: right;'>''*contributed by Rhea Parekh''</div> | <div style='text-align: right;'>''*contributed by Rhea Parekh''</div> |