I have an application that I would like to add encryption to. The way it is intended to work will be similar to an encrypted file system. I would like to encrypt data using an AES-128 key, and encrypt the key used with an asymmetric key from multiple users. This is a common method for this. My question is about the generation of the "random" AES keys. I was wondering if there would be any reduction of the encryption algorithm if I would use the MD5 checksum of the data (before encryption) instead of a random key.