We consider in this paper regular and nearly regular quasi-cyclic low-density parity-check (LDPC) codes, derived from families of difference sets. The codes have girth at least 6, and sparse parity-check matrices. They are designed to perform well when iteratively decoded with the sum-product decoding algorithm and to allow low complexity encoding.