Utilizando PHP mcrypt con Rijndael / AES

Estoy intentando encriptar algunos mensajes de texto usando mcrypt de php y el cifrado Rijndael, pero no estoy seguro acerca del MCRYPT_MODE_modename (según el manual de PHP, estos están disponibles "ecb", "cbc", "cfb", "ofb", "nofb" o "stream" pero leí que en realidad hay algunos más). No tengo idea de qué hace cada uno o cómo usarlos.

Leí dos cosas, que el modo ECB no debe usarse y MCRYPT_RAND tampoco. No explicaron por qué. Para el modo ECB, supongo que es porque siempre genera la misma salida cifrada para el mismo texto sin formato (tal vez esto podría usarse para un ataque), no tengo idea sobre MCRYPT_RAND (mencionado por @azzaqu).

Mi pregunta es,what mcrypt mode debería usar, y sería genial ver un ejemplo de código php usando it porque todos los ejemplos que encontré usan BCE. Las cadenas que intento cifrar contendrán solo texto ASCII y una longitud variable, no mayor de 500 caracteres.

Respuestas a la pregunta(2)

Su respuesta a la pregunta