protected function _padKey(string $key): array
    {
        $len = strlen($key);
        // append padding
        if (0 != $len % 8) {
            $key .= str_repeat("\0", 8 - $len % 8);
        }
        // compute AIV
        $mli = pack("N", $len);
        $aiv = self::AIV_HI . $mli;
        return [$key, $aiv];
    }