On group rings and some of their applications to combinatorics and symmetric cryptography