0
最近、バンドルのアップデートが間違っていました。私たちが理解できるように、 'ダイジェスト/ HMAC' のサポートがドロップされたので、私が代わりにOpenSSLを使用していた:バンドルアップデートがダイジェストライブラリを破棄しました。 OpenSSLへのアップグレードのトラブル
OLD [WORKING] CODE:
def signature(str)
key = EnvHelpers.google_oauth2_hmac_key
Digest::HMAC.hexdigest(str, key, Digest::SHA2)
end
NEW CODE:
def signature(str)
key = EnvHelpers.google_oauth2_hmac_key
OpenSSL::HMAC.hexdigest(OpenSSL::Digest.new("sha2"), key, str)
end
私たちは、RSpecの実行:Gemfileの
Failure/Error: OpenSSL::HMAC.hexdigest(OpenSSL::Digest.new("sha2"), key, str)
RuntimeError:
Unsupported digest algorithm (sha2).: first num too large
関連する部分を:
ruby "2.3.3"
gem "openssl", require: true # Gemfile.lock says I am at (2.0.3)
この問題を解決するための提案があります。コードのこの部分は、GoogleとFacebookの接続フローによく使用されます。