Hmm, as for "AES(pad(data))":

*'module' object has no attribute 'pad'*
*
*
In addition, can't find any reference of what "pad()" is in Python.

On Tuesday, June 25, 2013 3:58:59 PM UTC+2, Massimo Di Pierro wrote:
>
> One more try:
>
> import gluon.contrib.aes as AES
> key = "your encryption key"
> IV = ' '*16
> db.table.field.filter_in = lambda data,key=key,iv=IV: 
> AES.new(key,AES.MODE_CBC,iv).encrypt(AES.pad(data))
> db.table.field.filter_out = lambda data,key=key,iv=IV: 
> AES.new(key,AES.MODE_CBC,iv).decrypt(data)
>
> the output will not be identical but may have additional spaces at the end.
>
> On Tuesday, 25 June 2013 07:27:11 UTC-5, Massimo Di Pierro wrote:
>>
>> Sorry. try this:
>>
>> import gluon.contrib.aes as AES
>> key = "your encryption key"
>> IV = ' '*16
>> db.table.field.filter_in = lambda data,key=key,iv=IV: 
>> AES.new(key,AES.MODE_CBC,iv).encrypt(data)
>> db.table.field.filter_out = lambda data,key=key,iv=IV: 
>> AES.new(key,AES.MODE_CBC,iv).decrypt(data)
>>
>>
>> On Tuesday, 25 June 2013 07:08:41 UTC-5, lesssugar wrote:
>>>
>>> OK, I get it. However, using the code I get:
>>>
>>> *AttributeError: type object 'AES' has no attribute 'new'*
>>>
>>> On Tuesday, June 25, 2013 2:00:06 PM UTC+2, Massimo Di Pierro wrote:
>>>>
>>>> You cannot use CRYPT for this purpose. That is a one way hash. The 
>>>> original plaintext cannot be recovered.
>>>>
>>>> You need a symmetric cypher. Web2py comes with the gluon/contrib/aes.py
>>>>
>>>> from gluon.contrib.aes import AES
>>>> key = "your encryption key"
>>>> IV = ' '*16
>>>> db.table.field.filter_in = lambda data,key=key,iv=iv: 
>>>> AES.new(key,AES.MODE_CBC,iv).encrypt(data)
>>>> db.table.field.filter_out = lambda data,key=key,iv=iv: 
>>>> AES.new(key,AES.MODE_CBC,iv).decrypt(data)
>>>>
>>>>
>>>>
>>>> On Tuesday, 25 June 2013 06:11:49 UTC-5, lesssugar wrote:
>>>>>
>>>>> I have values I would like to store encrypted in my db after user 
>>>>> inserts them. When displayed, the data should get decrypted.
>>>>>
>>>>> All I know about encryption in web2py is that it uses HMAC+SHA512 by 
>>>>> default to store password in auth_user table. How do I customize it to 
>>>>> achieve my goal?
>>>>>
>>>>> *EDIT*
>>>>> I found this: *requires=CRYPT(digest_alg='sha512')* - but I think 
>>>>> it's only crating a hash, right? I guess I need a key to encrypt/decrypt. 
>>>>> And how do I get the values in Row object decrypted after I perform a 
>>>>> select? Can't find much about implementing such mechanism in web2py, 
>>>>> unfortunately.
>>>>>
>>>>

-- 

--- 
You received this message because you are subscribed to the Google Groups 
"web2py-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to