Tag: rsa

如何为AWS Elastic Beans设置多行RSA私钥环境变量

我正在使用Elastic Beanstalk将Ruby on Rails应用程序部署到AWS,并且必须将私钥设置为环境变量 例如 —–BEGIN RSA PRIVATE KEY—– SpvpksXQIBA65ICOgQxV2TvMIICAiMeV9prhdJSKjjsk2 tYdz8lhn/ibROQW71utuHLAyHGMBxz3kIaaIq1kjdkkk tYdz8lhn/ibROQW71utuHLAyHGMBxz3kIaaIq1kjdkkk tYdz8lhn/ibROQW71utuHLAyHGMBxz3kIaaIq1kjdkkk tYdz8lhn/ibROQW71utuHLAyHGMBxz3kIaaIq1kjdkkk —–END RSA PRIVATE KEY—– 但是,在部署应用程序时,这似乎不起作用,因为它总是失败了 OpenSSL :: PKey :: RSAError:既不是PUB密钥也不是PRIV密钥:嵌套asn1错误 我认为这是因为RSA Key格式不正确。 然而,与Heroku不同,AWS EB不接受多行输入(见下文),因此我必须使用\n来创建新行。 我尝试了几种不同的风格,但没有一个似乎正确插入\n ,我总是得到同样的错误。 我已尝试使用\n和每行的结尾,然后\\n并尝试使用双引号\”来包装密钥,但我仍然得到同样的错误。 如何在AWS Elastic Beanstalk中正确设置多行环境变量?

什么原因导致在ruby中构建公钥时“PUB键和PRIV键都没有嵌套asn1错误”?

使用OpenSSL :: PKey :: RSA模块通过传递.pem文件构建公钥时,响应的原因是什么: OpenSSL::PKey::RSAError: Neither PUB key nor PRIV key:: nested asn1 error from /Users/Matt/projects/placepop/lib/apn.rb:48:in `initialize’ from /Users/Matt/projects/placepop/lib/apn.rb:48:in `new’ from /Users/Matt/projects/placepop/lib/apn.rb:48:in `open’ from (irb):1 这是来源: cert = File.join(rails_root, ‘config’, ‘apns’, ‘sandbox-cert.pem’) APN_CONFIG = { :delivery => { :host => ‘gateway.sandbox.push.apple.com’, :cert => cert, :passphrase => “”, :port => 2195 }, :feedback => { […]

来自模数和指数的SSH SubjectPublicKeyInfo

我正在从公共SSH密钥中提取模数和指数,目的是生成PEM公钥。 这是我到目前为止的代码: require “base64” require “openssl” def unpacked_byte_array(ssh_type, encoded_key) prefix = [7].pack(“N”) + ssh_type decoded = Base64.decode64(encoded_key) # Base64 decoding is too permissive, so we should validate if encoding is correct unless Base64.encode64(decoded).gsub(“\n”, “”) == encoded_key && decoded.slice!(0, prefix.length) == prefix raise PublicKeyError, “validation error” end data = [] until decoded.empty? front = decoded.slice!(0,4) size […]

CSR失败:错误解析请求ASN1错误标记值已满足(ASN:267 CRYPT_E_ASN1_BADTAG)

我试图通过以下方式提交CSR请求: require ‘openssl’ require ‘json’ def public_key_info key_info = private_key.public_key.to_pem key_info = key_info.sub! ‘—–BEGIN PUBLIC KEY—–‘, ‘—–BEGIN CERTIFICATE REQUEST—–‘ key_info = key_info.sub! ‘—–END PUBLIC KEY—–‘, ‘—–END CERTIFICATE REQUEST—–‘ key_info end # “Creating a new 2048bit RSA Keypair…” def private_key @private_key = OpenSSL::PKey::RSA.new 2048 end payload = { “CsrData” => public_key_info, “certTemplate” => “MyTemplate” } encoded […]

如何从ActionMailer发送已签名的电子邮件?

我使用GMail作为我的SMTP服务器。 我的配置工作得很好: # config/initializers/action_mailer.rb: ActionMailer::Base.smtp_settings = { :tls => true, :address => “smtp.gmail.com”, :port => “587”, :domain => “www.example.org”, :authentication => :login, :user_name => “admin@example.org”, :password => “it’s a secret” } 我在config/ssl/rsa.public和config/ssl/rsa.private也有一个公共/私有RSA密钥对。 在将电子邮件发送到GMail的SMTP服务器之前,我该如何签名?

OpenSSL – 既不是PUB密钥也不是PRIV密钥::嵌套asn1错误

我试图使用公钥初始化OpenSSL :: PKey :: RSA,但它无法正常工作。 以下是密钥对: —–BEGIN RSA PRIVATE KEY—– MIIBOwIBAAJBALbkpbDFbZ54bM5ybwwdCqsUHjxWQF4B0Q1sAOBFEYdpxZJZ8dAz ycPzIgSlPc8yqjeqwJQtvCpktrntALpX1ksCAwEAAQJAYT0XyvBs48BrOSgmWm5m aab8nF/PQSv+FgDCRnryYue3WZOpUqITB0w6ivC68G/+Mf6IXyE4ljqw2iIAdjyv YQIhAOE20o2bLPMtziEOdH0KGpN0gNYpe38jGyvGw7k5gZd9AiEAz+TWZRJpc9yX 5dew3xcBtIhaTPFmVLgmfU7FwIWW32cCIQCvKK9LmUO1gouN5CsvUNtokbTeW/cD 467vNjDlb1deFQIhAK55pZ1p2GrOpgTWArEYg+vZy79rkbBkZJkh9UFgXIDdAiBm Rglcmt9cD2Vqg7xMr7cP3FJbSmJffSwYve1fazuZOw== —–END RSA PRIVATE KEY—– —–BEGIN PUBLIC KEY—– MEoCAQACQLbkpbDFbZ54bM5ybwwdCqsUHjxWQF4B0Q1sAOBFEYdpxZJZ8dAzycPz IgSlPc8yqjeqwJQtvCpktrntALpX1ksCAwEAAQ== —–END PUBLIC KEY—– OpenSSL::PKey::RSA.new(private_key) # WORKS! OpenSSL::PKey::RSA.new(public_key) # FAILS! OpenSSL::PKey::RSAError: Neither PUB key nor PRIV key:: nested asn1 error from (irb):16:in `initialize’ from (irb):16:in `new’ from (irb):16 from /Users/dhracker/.rvm/gems/ruby-1.9.3-p194/gems/railties-3.2.8/lib/rails/commands/console.rb:47:in […]