Cyclic groups of integers

96 Views Asked by At

I am trying to implement the Regev cryptosystem, but I have trouble with some symbols. For example, what exactly is: $$ {\mathbb {Z}}_{q}^{n} $$

I know it's something about cyclic groups etc but for example, what does it mean for given q=11 (modulo) and n=3 (order)? How can that be a distribution to choose uniformly at random?

1

There are 1 best solutions below

2
On BEST ANSWER

@paf is correct, in the context of lattice crypto $\mathbb{Z}^n_q = (\mathbb{Z} / q\mathbb{Z})^n$.

An element in $\mathbb{Z}_q^n$ is simply an $n$ dimensional vector of integers modulo $q$. So to answer your second question, to generate a uniformly random such element, you just independently choose $n$ values uniformly at random from the integer range $[0,q)$.