use self.IV_SIZE instead of fixed number