README.md in symmetric-encryption-3.0.3 vs README.md in symmetric-encryption-3.1.0

- old
+ new

@@ -94,11 +94,12 @@ randomly generated IV is used and included in every encrypted string. The Symmetric Encryption streaming interface SymmetricEncryption::Writer avoids this problem by using a random IV and key in every file/stream by default. The random IV and key are stored in the header of the output stream so that it -is available when reading back the encrypted file/stream. +is available when reading back the encrypted file/stream. The key is placed +in a header on the file in encrypted form using the current global key/cipher. The ActiveRecord attr_encrypted method supports the :random_iv => true option. Similarly for Mongoid the :random_iv => true option can be added. Note that encrypting the same input string with the same key and :random_iv => true @@ -134,10 +135,15 @@ See the _always_add_header_ option in the configuration file. * Set :random_iv => true for all ActiveRecord attributes and Mongoid fields which are not used in indexes and will not be used as part of a query. +## Binary Data + +On decryption an attempt is made to encode the data as UTF-8, if it fails it +will be returned as BINARY encoded. + ## Examples ### Encryption Example ```ruby @@ -337,9 +343,14 @@ since the header embedded in the file will indicate whether it was compressed The file header also contains a random key and iv used to encrypt the files contents. The key and iv is encrypted with the global encryption key being used by the symmetric encryption installation. + +## Dependencies + +- Ruby 1.9.3 (or above) Or, JRuby 1.7.3 (or above) +- Optional: To log to MongoDB, Mongo Ruby Driver 1.5.2 or above ## Installation ### Add to an existing Rails project Add the following line to Gemfile