把随机 IV 存储到密文最前面是比较通常的做法,因为 IV 实际上的作用只是让相同明码生产出不同的密文,那如果是 HLS AES 128 CBC 文件这样做是不是就不行了? HLS 是不是不支持这种把 iv 存储到密文最前面的方式?
`
def encrypt(self, raw):
raw = pad(raw, AES.block_size)
iv = Random.new().read(AES.block_size)
cipher = AES.new(self.key, AES.MODE_CBC, iv)
return iv + cipher.encrypt(raw)
def decrypt(self, enc):
iv = enc[:16]
cipher = AES.new(self.key, AES.MODE_CBC, iv)
return unpad(cipher.decrypt(enc[16:]), AES.block_size)
`
`
def encrypt(self, raw):
raw = pad(raw, AES.block_size)
iv = Random.new().read(AES.block_size)
cipher = AES.new(self.key, AES.MODE_CBC, iv)
return iv + cipher.encrypt(raw)
def decrypt(self, enc):
iv = enc[:16]
cipher = AES.new(self.key, AES.MODE_CBC, iv)
return unpad(cipher.decrypt(enc[16:]), AES.block_size)
`
