)]}'
{"cinder/volume/nfs.py":[{"author":{"_account_id":1561,"name":"Russell Bryant","email":"rbryant@redhat.com","username":"russellb"},"change_message_id":"e53dd008bfda78ea29050be81480653b014e6cb2","unresolved":false,"context_lines":[{"line_number":292,"context_line":""},{"line_number":293,"context_line":"    def _get_hash_str(self, base_str):"},{"line_number":294,"context_line":"        \"\"\"returns string that represents hash of base_str (in a hex format)\"\"\""},{"line_number":295,"context_line":"        return hashlib.md5(base_str).hexdigest()"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAALH%2F%2FWCY%3D","line":295,"updated":"2012-09-19 21:54:36.000000000","message":"I\u0027d recomment SHA1 instead of md5, since it\u0027s less likely to ever have a colission.","commit_id":"b5b37aa7a6fca6e2eff7d7d0f9da165bf604afd1"},{"author":{"_account_id":2417,"name":"Ben Swartzlander","email":"ben@swartzlander.org","username":"bswartz"},"change_message_id":"1cf86fa34e12614faac458b4ef57e17f9c57e93c","unresolved":false,"context_lines":[{"line_number":292,"context_line":""},{"line_number":293,"context_line":"    def _get_hash_str(self, base_str):"},{"line_number":294,"context_line":"        \"\"\"returns string that represents hash of base_str (in a hex format)\"\"\""},{"line_number":295,"context_line":"        return hashlib.md5(base_str).hexdigest()"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAALH%2F%2FWB0%3D","line":295,"in_reply_to":"AAAALH%2F%2FWCY%3D","updated":"2012-09-19 22:03:00.000000000","message":"We don\u0027t need a cryptographically secure hash here, we\u0027re just replacing a simple 64-bit hash. The main reason for choosing MD5 is because it\u0027s well defined, unlike Python\u0027s hash() function.","commit_id":"b5b37aa7a6fca6e2eff7d7d0f9da165bf604afd1"}]}
