summaryrefslogtreecommitdiff
path: root/ext/digest/lib
AgeCommit message (Collapse)Author
2006-10-21* ext/digest/lib/digest.rb: Follow the framework updates.knu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11200 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-10-20* ext/digest/lib/digest/hmac.rb: Complete half-boiled updates.knu
* ext/digest/sha2/lib/digest/sha2.rb: Fix #initialize_clone(). git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11198 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-10-20* ext/digest: Prefix C constants with RUBY_ and C type names withknu
rb_ to avoid name clash in writing extensions. * ext/digest: Introduce Digest::Class and Digest::Instance for ease of implementing subclasses and add-ons, inspried by gotoyuzo. * ext/digest: The Digest::Instance module now requires and assumes that any instance be resettable and clonable, and add some convenient instance methods such as "new()", for creating a new copy, parameter taking "digest()" and "hexdigest()", for instant calculation. These methods make digest instances work just like digest classes. * ext/digest/sha2/lib/digest/sha2.rb: Add the Digest::SHA2 class to wrap up SHA2 variants: SHA256, SHA384 and SHA512, hoping this module would make a decent example of a digest subclass written in Ruby. * ext/digest/lib/digest.rb: Adjust autoload entries for SHA2 classes. * ext/digest/lib/digest/hmac.rb: Follow the framework updates. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11197 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-10-13* ext/digest/digest.c, ext/digest/digest.h,knu
ext/digest/md5/md5init.c, ext/digest/rmd160/rmd160init.c, ext/digest/sha1/sha1init.c, ext/digest/sha2/sha2init.c: Introduce API versioning. * ext/digest/digest.c, ext/digest/digest.h, ext/digest/md5/md5init.c, ext/digest/rmd160/rmd160init.c, ext/digest/sha1/sha1init.c, ext/digest/sha2/sha2init.c: Remove the constants DIGEST_LENGTH and BLOCK_LENGTH and turn them into instance methods digest_length() and block_length(). Class methods with the same names are also provided, which take extra parameters for a digest method. * ext/digest/lib/digest/hmac.rb: Completely redesign the API which is similar to Perl's, now that Digest classes can take hashing parameters. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11166 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-10-13* ext/digest/lib/digest.rb (Digest): Try to auto-load non-standardknu
digest modules when a specified digest class is missing. * ext/digest/lib/digest.rb: Define Digest(name) for ease of dynamically selecting a hashing algorithm. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11155 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-10-11* ext/digest/lib/digest/hmac.rb: Make use of String#bytes.knu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11134 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-10-11* ext/digest/lib/digest/hmac.rb: Add digest/hmac, which implementsknu
HMAC keyed-hashing algorithm. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11126 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-10-05* ext/digest/lib/md5.rb, ext/digest/lib/sha1.rb: Remove thoseknu
compatibility stub libraries. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11092 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-09-29* ext/digest/lib/digest.rb (Digest): Require digest.so and fix theknu
breakage. Point out by NAKAMURA Usaku in [ruby-dev:29619]. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11053 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-09-14* ext/digest/lib/digest.rb (Digest::Base.file): open a file in binaryakr
mode. suggested by Kazuhiro NISHIYAMA. [ruby-dev:29579] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10936 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-09-14add a document for Digest::Base.file.akr
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10929 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-09-14* ext/digest/lib/digest.rb (Digest::Base.file): new method.akr
[ruby-dev:29572] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10928 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-09-13* ext/digest/lib/digest.rb: new file.akr
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10924 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-07-13Import the "digest" module and the submodules, from the Rough Rubyknu
project. ext/digest: This module provides the module Digest and the abstract class Digest::Base. ext/digest/md5 (which obsoletes ext/md5): This module provides the class Digest::MD5 which implements the MD5 Message-Digest Algorithm. ext/digest/rmd160: This module provides the class Digest::RMD160 which implements the RIPEMD-160 cryptographic hash function. ext/digest/sha1 (which obsoletes ext/sha1): This module provides the class Digest::SHA1 which implements the SHA-1 Secure Hash Algorithm. ext/digest/sha2: This module provides the classes Digest::SHA256, Digest::SHA384 and Digest::SHA512 which implement the SHA-256, SHA-384 and SHA-512 Secure Hash Algorithms, respectively. lib/md5.rb, lib/sha1.rb: These files are provided for backward compatibility. All these classes have the common API, which previously ext/md5 and ext/sha1 modules provided. While the new API keeps 100% backward compatibility, it has been enriched with several utility methods. Read digest.txt for further details. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1609 b2dd03c8-39d4-4d8f-98ff-823fe69b080e