ruby - 在生成 gem 时,在 gemspec 中签名 Ruby gem : Would s. signing_key 是否被删除?

标签 ruby gem

我想签署一个 Ruby gem 并按照 http://docs.rubygems.org/read/chapter/21 中的说明进行操作 它说,“隐藏你的私钥”。 但是为了对 gem 进行签名,我们必须在 gemfile 中放入“s.signing_key = '/mnt/floppy/gem-private_key.pem'”。 如果在生成 gem 后不删除此行,那么每个人都可以在从 RubyGems.org 安装 gem 后看到它。 (并不是说他们可以轻松访问我的计算机,但仍然如此。) 生成 gem 时,该行会自动从 gemspec 中删除吗?

我通常通过 Bundler 的“rake release”构建 gem。所以这次我尝试了“gem build mygem.gemspec”。但它导致了一些 OpenSSL 错误。所以我无法检查生成的 gem。

提前致谢。

最佳答案

不,您的 gemspec 中的 signing_key 条目不会被删除。它将是公开的,因此人们将能够看到您的签名 key 的文件位置。

正如您提到的,这并不意味着人们可以访问它,但他们会知道如果他们可以访问您的系统,它会在哪里。

您可以使用 gem unpack 查看 gemspec 中与 gem 一起发布的内容。导出已安装 gem 内容的命令:

gem unpack GEMNAME

希望这对您有所帮助!

关于ruby - 在生成 gem 时,在 gemspec 中签名 Ruby gem : Would s. signing_key 是否被删除?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15327934/

相关文章:

ruby-on-rails - 确定 Journey::Path::Pattern 是否匹配当前页面

ruby-on-rails - rails |安装 country_select gem

ruby-on-rails - 用于 RSpec 测试的带有间隔的假日期数据

ruby-on-rails - rails 错误 method_missing':Gem::Specification 的未定义方法 `this'

HackerRank 上的 Ruby 标准输入/标准输出

ruby-on-rails - 如何计算自 Ruby 中的给定日期以来经过了多少年?

mysql - Rails 枚举 : String or Integer column?

ruby-on-rails - 如何重新打开 gem 中的类(class)

ruby-on-rails - 使用电子表格 gem 的货币数字格式

ruby-on-rails - 不小心创建了一个 git 子模块