Ruby 为什么我们需要单独的openssl.rb文件?
我想了解为什么我们需要这个项目。Ruby 为什么我们需要单独的openssl.rb文件?,ruby,openssl,Ruby,Openssl,我想了解为什么我们需要这个项目。 还不够吗?你说得对,核心ruby将openssl作为std库。但是,如果您想确保gem按预期工作,您需要根据当前版本的gem测试其依赖关系,以便在gem安装bitcoin ruby时安装测试的依赖链。否则,您如何确保core ruby SSL的版本没有改变某些可能会破坏已安装版本的比特币ruby 这里是ruby 2.3的std lib核心版本的第一部分 module OpenSSL class Digest alg = %w(DSS DSS1 MD
还不够吗?你说得对,核心ruby将openssl作为std库。但是,如果您想确保gem按预期工作,您需要根据当前版本的gem测试其依赖关系,以便在
gem安装bitcoin ruby
时安装测试的依赖链。否则,您如何确保core ruby SSL的版本没有改变某些可能会破坏已安装版本的比特币ruby
这里是ruby 2.3的std lib核心版本的第一部分
module OpenSSL
class Digest
alg = %w(DSS DSS1 MD2 MD4 MD5 MDC2 RIPEMD160 SHA SHA1)
if OPENSSL_VERSION_NUMBER > 0x00908000
alg += %w(SHA224 SHA256 SHA384 SHA512)
end
下面是ruby 2.4.1的gem版本
module OpenSSL
class Digest
alg = %w(MD2 MD4 MD5 MDC2 RIPEMD160 SHA1 SHA224 SHA256 SHA384 SHA512)
if OPENSSL_VERSION_NUMBER < 0x10100000
alg += %w(DSS DSS1 SHA)
end
模块OpenSSL
课程摘要
alg=%w(MD2 MD4 MD5 MDC2 RIPEMD160 SHA1 SHA224 SHA256 SHA384 SHA512)
如果OPENSSL\u版本号<0x10100000
alg+=%w(DSS DSS1 SHA)
结束
现在我们可以看到一些不同的算法定义。不锁定bundle gem版本将是一个坏主意,尤其是对于比特币中的加密技术这样重要的东西。你说得对,核心ruby具有与std lib一样的openssl。但是,如果您想确保gem按预期工作,您需要根据当前版本的gem测试其依赖关系,以便在
gem安装bitcoin ruby
时安装测试的依赖链。否则,您如何确保core ruby SSL的版本没有改变某些可能会破坏已安装版本的比特币ruby
这里是ruby 2.3的std lib核心版本的第一部分
module OpenSSL
class Digest
alg = %w(DSS DSS1 MD2 MD4 MD5 MDC2 RIPEMD160 SHA SHA1)
if OPENSSL_VERSION_NUMBER > 0x00908000
alg += %w(SHA224 SHA256 SHA384 SHA512)
end
下面是ruby 2.4.1的gem版本
module OpenSSL
class Digest
alg = %w(MD2 MD4 MD5 MDC2 RIPEMD160 SHA1 SHA224 SHA256 SHA384 SHA512)
if OPENSSL_VERSION_NUMBER < 0x10100000
alg += %w(DSS DSS1 SHA)
end
模块OpenSSL
课程摘要
alg=%w(MD2 MD4 MD5 MDC2 RIPEMD160 SHA1 SHA224 SHA256 SHA384 SHA512)
如果OPENSSL\u版本号<0x10100000
alg+=%w(DSS DSS1 SHA)
结束
现在我们可以看到一些不同的算法定义。不锁定bundle gem版本将是一个坏主意,尤其是对于比特币中的加密技术这样重要的东西