Чтобы справиться с шифрованием, вы должны посмотреть на реализацию процессора. Если вы используете какие-либо другие процессоры, вам, возможно, придется взглянуть на расширение драгоценного камня Carrierwave и добавление механизма упорядочения процессоров, чтобы вы могли быть уверены, что шифрование будет последним.
Для дешифрования вы можете либо переопределить существующий метод доступа, чтобы сделать дешифрование прозрачным, либо добавить новый метод, который возвращает дешифрованный файл и использовать его вместо средства доступа. Последний подход, вероятно, более устойчив к изменениям в восходящем направлении.