Java Criptografia e Descriptografia com AES Chave Assimétrica

Bem, para quem estiver procurando um exemplo de como implementar criptografia e descriptografia em java com AES e chave assimétrica,  segue um modelo simples e pratico. Se você ainda não conhece criptográfica AES confira aqui.

Nesse exemplo estaremos usando da seguinte forma:
Se o usuário informar uma chave com 32 caracteres, corresponderá a uma chave de 256 bits: AES – 256 (32 * 8 = 256);
Se o usuário informar uma chave com 24 caracteres, corresponderá a uma chave de 192 bits: AES – 256 (24 * 8 = 192);
Se o usuário informar uma chave com 16 caracteres, corresponderá a uma chave de 128 bits: AES – 256 (16 * 8 = 128);

Não irei entrar mais em detalhes pois o código está comentado.