I have not tried it but you can do

class EncryptedField(Field):
     def __init__(self,*a,**b):
           self.password = b['password']
           del b['password']
           Field.__init__(self,*a,**b)
     def store(self,file, filename=None, path=None):
           newfile = encrypt(file,self.password)
           return Field.store(self,file,filename,path)
     def retrieve(self, name, path=None):
           (filename, file) = Field.retrieve(self,name,path)
           newfile = decrypt(file,self.password)
           return (filename, newfile)

the use

db.define_table('person',Field('name'),EncryptedField('secret','upload',password='too
 
many secrets!'))

On Thursday, 12 April 2012 16:35:36 UTC-5, naveed wrote:
>
>   I wasn’t asking as how to encrypt the file itself, but how to 
> incorporate it in to web2py’s existing excellent form upload and download 
> system. Assuming that we have functions encrypt(file, password) and 
> decrypt(file, password) which return the encrypted and decrypted file 
> respectively.
>  
>   
>  *From:* Massimo Di Pierro <massimo.dipie...@gmail.com> 
> *Sent:* Wednesday, April 11, 2012 13.31
> *To:* web2py@googlegroups.com 
> *Subject:* Re: [web2py] Re: web2py: encrypt uploaded files
>  
> Perhaps this can be useful: 
>
> http://stackoverflow.com/questions/6309958/encrypting-a-file-with-rsa-in-python
> (look at code in first answer)
>
> On Wednesday, 11 April 2012 12:35:05 UTC-5, naveed wrote: 
>>
>>   Thanks Massimo for getting back. I can’t use an encrypted file system 
>> as when the file system is mounted, it’s totally open. Every file can be 
>> encrypted with the same master password. I’m thinking of storing this 
>> master password which is itself encrypted using the user’s password (or 
>> it’s hash) in the auth_user table.
>>  
>> On a related note, I am planning to encrypt some columns of other tables 
>> using the same master password. Your thoughts on this approach?
>>  
>>   
>>  *From:* Massimo Di Pierro <massimo.dipie...@gmail.com> 
>> *Sent:* Wednesday, April 11, 2012 12.13
>> *To:* web2py@googlegroups.com 
>> *Subject:* [web2py] Re: web2py: encrypt uploaded files
>>  
>> What are the specs? Can you store them in an encrypted file system? can 
>> you encrypt them with the same password? Should every file be encrypted 
>> with a different password? Where should the passwords be stored?
>>
>> On Wednesday, 11 April 2012 11:54:24 UTC-5, naveed wrote: 
>>>
>>> I need to encrypt uploaded files in web2py (for a HIPAA compliant 
>>> application) preferably with AES. How can I accomplish this?
>>>
>>

Reply via email to