Closed VakarisZ closed 3 years ago
This is caused by incorrect assumptions in the padding function.
The padding function uses len(message)
, but this assumes that all characters are 1 byte. Unicode characters can be more than 1 byte.
This is probably the solution:
We should write unit tests that reproduce the issue and then swap out the padding functions.
Describe the bug
Datastore encryptor breaks when a UTF-8 character is encountered:
This is an important bug, because gathered credentials might contain unicode characters, user can't submit common passwords, for e.g. "slaptažodis" means password in Lithuanian and might be common in Lithuanian networks:
Tasks
Crypto.Util.Padding
. (0d) - @shreyamalviya