• Instagram Feedの無料版を使用しております。
    毎度ではないのですが、たまに設置した箇所の上部に、
    Warning: openssl_decrypt(): IV passed is only 12 bytes long, cipher expects an IV of precisely 16 bytes, padding with \0 in

    というエラーメッセージが表示されてしまいます。

    続きの文章は、
    ドメイン/wp-content/plugins/instagram-feed/inc/class-sb-instagram-data-encryption.php on line 100

    とあります。

    google検索してもHITしなかったもので、こちらで質問させていただきました。

    原因わかりますと助かります。
    よろしくお願いいたします。

2件の返信を表示中 - 1 - 2件目 (全2件中)
  • osat99さん、こんにちは。

    該当箇所のコードを見るとopenssl_decrypt$ivを指定していますが、
    $ivはその上で$iv = substr( $raw_value, 0, $ivlen );として作られています。

    $ivlenはさらに上で$ivlen = openssl_cipher_iv_length( $method );として作られていますが、こちらで返ってくる結果はint(16)です。

    ということは、substr( $raw_value, 0, $ivlen )$raw_valueに入ってくるデータが16 byteないと言うことが発生しているのではと推測されます。

    $raw_valuepublic function decrypt( $raw_value )として関数の呼び出し元から読みだしているようですので、関数を呼び出している元でなんのデータが送り込まれているのか確認してみる必要がありますね。

    そもそも読み込んでいる関数側で16 byteを必要としているのに$raw_valueの内容をチェックしていないようですし、バグのような気もします。開発元のフォーラムで聞いてみるのはいかがでしょうか。

    https://ja.wordpress.org/plugins/instagram-feed/
    公式にサポートフォーラムがあります。

    ご参考になれば。

    同じ問題でたどり着きました。
    https://wordpress.org/support/topic/warning-openssl_decrypt%E3%80%80error/
    こちらに対応策が書かれていました。

    wp-config.phpに
    SBI_ENCRYPTION_KEY
    SBI_ENCRYPTION_SALT
    を追加せよとのことなのですが、お客さんのサイトなので怖くて触れていません。
    結局はWarningを消す対応になりそうです。
    ご参考まで。

2件の返信を表示中 - 1 - 2件目 (全2件中)
  • トピック「Instagram Feedのエラーコード表示について」には新たに返信することはできません。