)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"change_message_id":"a37ff7d20c32b44c1bf253e7a35d1a8769af20c4","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"34dccde7_f6ada6f6","updated":"2024-06-10 23:30:23.000000000","message":"Back to WIP in view of the spec. We will work to harmonize the spec and this pilot implementation. See:\n https://review.opendev.org/c/openstack/cinder-specs/+/862601","commit_id":"589668bacc3dec82de2cbb52f5c90706c6fd2756"}],"cinder/backup/chunkedcryptor.py":[{"author":{"_account_id":4523,"name":"Eric Harney","email":"eharney@redhat.com","username":"eharney"},"change_message_id":"063cc96223eb0060d0f50a06afae185b56cf3b60","unresolved":true,"context_lines":[{"line_number":26,"context_line":"# for each new cipher, key length, or library implementation."},{"line_number":27,"context_line":"class BackupCryptor(object):"},{"line_number":28,"context_line":""},{"line_number":29,"context_line":"    cipher \u003d \u0027AES_CTR_256\u0027"},{"line_number":30,"context_line":"    # AES will accept several key sizes - we are using 256 bits i.e. 32 bytes"},{"line_number":31,"context_line":"    key_length \u003d 32"},{"line_number":32,"context_line":"    iv_length \u003d algorithms.AES.block_size // 8"}],"source_content_type":"text/x-python","patch_set":2,"id":"75d45ac7_c374ed2c","line":29,"updated":"2024-05-14 14:33:56.000000000","message":"Why CTR?  We should mention this in the spec and why CTR vs CBC etc.","commit_id":"8b3972beca8ba40106f4b27db4abd5722b6d057a"},{"author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"change_message_id":"328b0c57b9001d440092879e6439aaf5e775c44e","unresolved":false,"context_lines":[{"line_number":26,"context_line":"# for each new cipher, key length, or library implementation."},{"line_number":27,"context_line":"class BackupCryptor(object):"},{"line_number":28,"context_line":""},{"line_number":29,"context_line":"    cipher \u003d \u0027AES_CTR_256\u0027"},{"line_number":30,"context_line":"    # AES will accept several key sizes - we are using 256 bits i.e. 32 bytes"},{"line_number":31,"context_line":"    key_length \u003d 32"},{"line_number":32,"context_line":"    iv_length \u003d algorithms.AES.block_size // 8"}],"source_content_type":"text/x-python","patch_set":2,"id":"12a0d341_5805c0bd","line":29,"in_reply_to":"75d45ac7_c374ed2c","updated":"2024-05-14 14:42:19.000000000","message":"I added an XXX note to research why Swift chose CTR. I suspect it has something to do with the need to encrypt byte-length data without padding, but I don\u0027t know.","commit_id":"8b3972beca8ba40106f4b27db4abd5722b6d057a"}]}
