私のキャリアウェーブアップローダは、ファイルを保存する際にファイルを暗号化し、取得時に復号化するようにしたいと考えています。Carrierwaveを使用した暗号化/復号化
私の最初の考えは、CarrierWave :: Uploader :: Store :: storeを書き直すことでした。とCarrierWave :: Uploader :: Store :: retrieve_from_store!私の暗号化と復号化コードを含める方法はありますが、これをどうやって行うのかはよく分かりません。
私はBlowfish暗号化を使用する予定です。
ストア
def store!(new_file=nil)
# seems like I should process new_file here
cache!(new_file) if new_file && ((@cache_id != parent_cache_id) || @cache_id.nil?)
if @file and @cache_id
with_callbacks(:store, new_file) do
new_file = storage.store!(@file)
@file.delete if (delete_tmp_file_after_storage && ! move_to_store)
delete_cache_id
@file = new_file
@cache_id = nil
end
end
end
店
def retrieve_from_store!(identifier)
with_callbacks(:retrieve_from_store, identifier) do
res = storage.retrieve!(identifier)
@file = res #process res before I store it to file?
end
end
から取得する任意のヒントをいただければ幸いです。
私は、S3やラックスペースのようなものにFogを使ってファイルを保存したいと思いますが、そのアイデアは気に入っています。 – Cyrus
Carrierwave Encrypter Decrypter gemの使用はいかがですか? – Matthias
@Matthiasその宝石はうまくいくかもしれませんが、コミットせずに2年近く経っても維持されているようには見えません。 – kobaltz