1. A method for storing a data object, the method comprises: identifying a plurality of data segments of the data object; generating a plurality of key indexes for the plurality of data segments; for a data segment of the plurality of data segments: accessing data segment key information based on a corresponding key index of the plurality of key indexes to determine whether an encryption key has been generated for a similar data segment, wherein the encryption key is a representation of the similar data segment; when the encryption key has been generated for the similar data segment: using the encryption key to encrypt the data segment to produce an encrypted data segment; compressing the encrypted data segment to produce a compressed and encrypted data segment; and storing the compressed and encrypted data segment in a storage unit of a dispersed storage network (DSN); when the encryption key has not been generated for the similar data segment: generating an encryption key based on a representation of the data segment; generating the corresponding key index based on a representation of the encryption key; updating the data segment key information to include the corresponding key index; dispersed storage error encoding the encryption key to produce a set of encoded key slices; storing the set of encoded key slices in a plurality of storage units of the DSN; encrypting the data segment using the encryption key to produce the encrypted data segment; compressing the encrypted data segment to produce the compressed and encrypted data segment; and storing the compressed and encrypted data segment in the storage unit.