ich den Fehler bekommen:Rubin - nicht unterstützte Verschlüsselungsalgorithmus (AES-256-GCM)
unsupported cipher algorithm (AES-256-GCM) (RuntimeError)
Aber ich scheine alle Anforderungen zu haben:
Ruby-Version:
$ ruby --version
ruby 2.1.2p95
OpenSSL tut Liste gcm:
$ openssl enc -help 2>&1 | grep gcm
-aes-128-ecb -aes-128-gcm -aes-128-ofb
-aes-192-ecb -aes-192-gcm -aes-192-ofb
-aes-256-ecb -aes-256-gcm -aes-256-ofb
Ruby-Interpreter:
$ irb
2.1.2 :001 > require 'openssl'; puts OpenSSL::VERSION
1.1.0
=> nil
2.1.2 :002 > OpenSSL::Cipher.ciphers.include? "aes-128-gcm"
=> true
Und doch ich bin immer Fehler laufen diese code:
2.1.2 :001 > require 'openssl'
=> true
2.1.2 :002 > cipher = OpenSSL::Cipher::AES.new(128, :GCM)
RuntimeError: unsupported cipher algorithm (AES-128-GCM)
from /home/m/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/openssl/cipher.rb:27:in `initialize'
from /home/m/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/openssl/cipher.rb:27:in `block (3 levels) in <class:Cipher>'
from (irb):2:in `new'
from (irb):2
from /home/m/.rvm/rubies/ruby-2.1.2/bin/irb:11:in `<main>'
Wie bekomme ich GCM in Ruby zu arbeiten?
https://security.stackexchange.com/questions/30344/why-does-openssl-not-include-aes-256-gcm#comment47419_30345, vielleicht? – Ryan
@false Ja, ich habe das gelesen, aber die Antwort war, OpenSSL zu aktualisieren oder Ruby zu aktualisieren, um eine aktualisierte OpenSSL-Version zu verwenden, die GCM unterstützt. Ich habe beide: Ruby-Berichte verwenden OpenSSL 1.1.0 und OpenSSL-Berichte mit gcm-Chiffren. Es scheint also nicht, dass diese Antwort auf dieses Problem zutrifft. – user3813959
Ich auch und kann den gleichen Fehler reproduzieren, aber ich bin mir nicht sicher, wie viel, was es gegen gelinkt wurde und was die Bibliothek tatsächlich ist, kann es beeinflussen. (Wird es die falsche Version melden, aber immer noch nicht in der Lage, GCM zu verwenden? Ich weiß es nicht.) – Ryan