Feature #4412

[ext/openssl] Create Digest by OID

Added by Martin Bosslet about 3 years ago. Updated almost 3 years ago.

[ruby-core:35319]
Status:Closed
Priority:Normal
Assignee:Martin Bosslet
Category:ext
Target version:1.9.3

Description

=begin
Currently it is not possible to create a Digest instance by using
the OID instead of the name (sn or ln).

oid = OpenSSL::ASN1::ObjectId.new('SHA1')
digest = OpenSSL::ASN1::Digest.new(oid.oid)

=> Unsupported digest algorithm (1.3.14.3.2.26).

This is counter-intuitive, since the only thing that is always
available in the case of object identifiers is the numeric oid,
sn or ln are not always present. Since sn and ln are also quite
error-prone (spelling), I'd like to suggest to have all three possibilities
for instantiating a Digest: by sn, by ln and by oid.

I included a patch and a test to support this behaviour.

Regards,
Martin
=end

digest_by_oid.diff Magnifier (1.67 KB) Martin Bosslet, 02/21/2011 01:45 AM

Associated revisions

Revision 32040
Added by emboss almost 3 years ago

  • ext/openssl/ossl_digest.c: allow Digests to be created by sn, ln or oid.
  • test/openssl/test_digest.rb: add tests for this. [Ruby 1.9 - Feature #4412]

History

#1 Updated by Martin Bosslet almost 3 years ago

  • Assignee set to Martin Bosslet

#2 Updated by Martin Bosslet almost 3 years ago

  • Status changed from Open to Assigned

#3 Updated by Anonymous almost 3 years ago

  • Status changed from Assigned to Closed
  • % Done changed from 0 to 100

This issue was solved with changeset r32040.
Martin, thank you for reporting this issue.
Your contribution to Ruby is greatly appreciated.
May Ruby be with you.


  • ext/openssl/ossl_digest.c: allow Digests to be created by sn, ln or oid.
  • test/openssl/test_digest.rb: add tests for this. [Ruby 1.9 - Feature #4412]

Also available in: Atom PDF