1

アップロード時にファイルを暗号化したいのですが、一般的にはディスクに書き込まれ、そこから暗号化できます。その前に暗号化したいと思います。httpサーバーまたはそれを可能にするアプリケーションフレームワーク用のモジュールはありますか?このためのソフトウェアの作成に多くの時間を費やしたくありませんが、必要に応じて作成します。

重要なことは、暗号化されていないレコードがハードディスクに接触しないことです。

ハードドライブはすでにaesを使用して暗号化されていますが、私の知らないうちにサードパーティがサーバーにアクセスできるため、実際のデータが簡単に危険にさらされるのを防ぐ方法があればいいのですが。

4

3 に答える 3

0

私がやったのはmod_wsgiを使うことでした。

これにより、アップロードをストリームとして取得し、PyCryptoを使用して暗号化することができます。

        inputLength  = int(environ.get('CONTENT_LENGTH', 0))
        input = environ['wsgi.input']
        f = open(dropDir + '/input','w')
        while 1:
                remain = inputLength - f.tell()
                if remain <= 0: break
                chunk = input.read(min(chunksize, remain))
                if  not chunk: break
                f.write(crypt.encrypt(chunk))
        f.close()

そうすると、ステートフル暗号を使用してpostdata全体を暗号化し、それをファイルに書き込むことになります。次に、GnuPGを使用して暗号化した後、キーを別のファイルに保存します。

于 2011-05-17T15:43:56.077 に答える
0

システム管理者の回答:事前に暗号化されたデータ用のRAMディスク保持領域。ディスクに触れないでください。問題は解決しました。いいえ?

于 2011-05-13T01:29:03.290 に答える
0

これが私が受け取ったがまだテストしていない答えです。私がそれが何をするかを正確にテストするまで、私はそれを答えとしてマークするつもりはありません。

答えはこのdjangoプロジェクトです。これは、Webサイトをリークするためのものであり、ファイル全体をメモリに読み込んでから暗号化します。 http://gitorious.org/deaddrop/deaddrop/blobs/master/drop/views.py

ただし、データをチャンク化する方法があります

http://docs.djangoproject.com/en/1.3/topics/http/file-uploads/

httpdがファイルのアップロードを処理していて、アプリケーションフレームワークを無視できるという問題もあります...そのため、何をしているのかを確認する前に、何度もテストする必要があります。

ただし、wsgiでそれを実行できると確信しています。apacheでmod_wsgiを使用すると、djangoで実行できると確信しています...他のWebサーバーで何が使用されているかわからないため、もっと軽量なものを使用したいと思います。 。

編集:誰かがこれを厳密にテストし、それを回答として投稿した場合、私はそれを回答としてマークします。

于 2011-05-14T14:01:46.213 に答える