Re: Shred mount option for ext4?

2006-11-01 Thread Andreas Dilger
On Oct 31, 2006  15:14 -0500, Nikolai Joukov wrote:
 1. One of the patches performs N overwrites with configurable patterns
 (can comply with NIST and NISPOM standards).  Because of the transaction
 compaction we had to separately add overwriting as separate transactions.
 Fortunately, the whole procedure is still atomic due to the orphan list.
 The problem that we have right now is per-file syncing of dirty data
 buffers between overwrites.  We sync the whole device at the moment.

Did anyone discuss doing this with crypto instead of actually overwriting
the whole file?  It would be pretty easy to store a per-file crypto key
in each inode as an EA, then to delete the file all that would be
needed would be to erase the key in a secure matter (which is a great
deal easier because inodes don't move around on disk).

The drawback is there is a runtime overhead to encrypt/decrypt the file
data, but honestly, if people care about secure deletion don't they also
care about security of the undeleted data also?  By having an (unknown
to the user) per-file crypto key then if the file is deleted the user
can also plausibly deny the ability to recover the file data even if
they are forced to surrender their key.

Cheers, Andreas
--
Andreas Dilger
Principal Software Engineer
Cluster File Systems, Inc.

-
To unsubscribe from this list: send the line unsubscribe linux-ext4 in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: Shred mount option for ext4?

2006-11-01 Thread Ric Wheeler



Andreas Dilger wrote:


On Oct 31, 2006  15:14 -0500, Nikolai Joukov wrote:
 


1. One of the patches performs N overwrites with configurable patterns
(can comply with NIST and NISPOM standards).  Because of the transaction
compaction we had to separately add overwriting as separate transactions.
Fortunately, the whole procedure is still atomic due to the orphan list.
The problem that we have right now is per-file syncing of dirty data
buffers between overwrites.  We sync the whole device at the moment.
   



Did anyone discuss doing this with crypto instead of actually overwriting
the whole file?  It would be pretty easy to store a per-file crypto key
in each inode as an EA, then to delete the file all that would be
needed would be to erase the key in a secure matter (which is a great
deal easier because inodes don't move around on disk).
 

This is an interesting idea with some annoying implementation details. 
For example, we would still need to shred that data block used to 
store the EA in order to prevent key recovery.


Also interesting to note that various people are putting encryption into 
various offload parts which could be useful in this context.



The drawback is there is a runtime overhead to encrypt/decrypt the file
data, but honestly, if people care about secure deletion don't they also
care about security of the undeleted data also?  By having an (unknown
to the user) per-file crypto key then if the file is deleted the user
can also plausibly deny the ability to recover the file data even if
they are forced to surrender their key.

Cheers, Andreas
--

 

I think that having the data encrypted on disk is a generically useful 
feature, but in this case it might not count for much since the key is 
stored right next to the data in that EA...


ric

-
To unsubscribe from this list: send the line unsubscribe linux-ext4 in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: Shred mount option for ext4?

2006-11-01 Thread Nikolai Joukov
 1. One of the patches performs N overwrites with configurable patterns
 (can comply with NIST and NISPOM standards).  Because of the transaction
 compaction we had to separately add overwriting as separate transactions.
 Fortunately, the whole procedure is still atomic due to the orphan list.
 The problem that we have right now is per-file syncing of dirty data
 buffers between overwrites.  We sync the whole device at the moment.
 
 Did anyone discuss doing this with crypto instead of actually overwriting
 the whole file?  It would be pretty easy to store a per-file crypto key
 in each inode as an EA, then to delete the file all that would be
 needed would be to erase the key in a secure matter (which is a great
 deal easier because inodes don't move around on disk).

Encryption is another possible secure deletion solution.  Usually it is
used by systems that already encrypt the data anyways.  In that case the
key management and run-time overhead costs are already paid.

 The drawback is there is a runtime overhead to encrypt/decrypt the file

The difference is that in case of encryption there are overheads for read
and write operations whereas in case of overwriting there are overheads
only for infrequent unlink/truncate operations.

 I think that having the data encrypted on disk is a generically useful
 feature, but in this case it might not count for much since the key is
 stored right next to the data in that EA...

Agreed.  Key management is a big issue in any encryption system.  In this
particular solution the key management is simple but there is also no
real protection of the live data.

Nikolai.
-
To unsubscribe from this list: send the line unsubscribe linux-ext4 in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html