md5sum 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
data/USAGE.rdoc ADDED
@@ -0,0 +1,13 @@
1
+ = Usage of Library
2
+
3
+ This library gives you the md5 sum of a file in question.
4
+
5
+ == Requiring it:
6
+
7
+ require 'md5sum'
8
+
9
+ == Using it in a project:
10
+
11
+ _ = Md5sum.new(ARGV, false)
12
+ _.reverse_md5 '61c12f4e84dc393aaa4849db9b78aa84'
13
+ _.run
data/lib/md5sum.rb ADDED
@@ -0,0 +1,5 @@
1
+ # To load the whole of MD5SUM, do:
2
+ # require 'md5sum'
3
+ $: << File.dirname(__FILE__)
4
+
5
+ require 'md5sum/md5sum.rb'
@@ -0,0 +1,91 @@
1
+ #!/System/Executables/ruby -w
2
+ # Encoding: ASCII-8BIT
3
+ # ====================================================================== #
4
+ # require 'md5sum'
5
+ # ====================================================================== #
6
+ require 'digest/md5'
7
+
8
+ class Md5sum
9
+
10
+ N = "\n"
11
+
12
+ # ========================================================================= #
13
+ # === initialize
14
+ # ========================================================================= #
15
+ def initialize(
16
+ input = ARGV,
17
+ run_already = true
18
+ )
19
+ set_input(input)
20
+ run_it if run_already
21
+ end
22
+
23
+ # ========================================================================= #
24
+ # === set_input
25
+ # ========================================================================= #
26
+ def set_input(i)
27
+ @input = i.to_s.dup # Assign to input.
28
+ end
29
+
30
+ # ========================================================================= #
31
+ # === run_it
32
+ # Will return the md5sum.
33
+ # ========================================================================= #
34
+ def run_it(shall_we_show_the_result = true)
35
+ set_result
36
+ show_result if shall_we_show_the_result
37
+ end; alias run run_it # Run tag.
38
+
39
+ # ========================================================================= #
40
+ # === show_result
41
+ # ========================================================================= #
42
+ def show_result
43
+ e @result unless @input.nil? # must pass 1 arg
44
+ end
45
+
46
+ # ========================================================================= #
47
+ # === return_md5sum
48
+ # Example results:
49
+ # 1897a33110ebfee800fb9562711cac02
50
+ # ========================================================================= #
51
+ def return_md5sum(input)
52
+ if input.is_a? Array
53
+ input.each { |file|
54
+ digest = Digest::MD5.hexdigest(File.read(file))
55
+ return digest
56
+ }
57
+ else
58
+ return Digest::MD5.hexdigest(File.read(input))
59
+ end
60
+ end
61
+
62
+ # ========================================================================= #
63
+ # === reverse_md5
64
+ # This reverses a md5 hash, by using making use of the Digest module.
65
+ # reverse_md5 '5f4dcc3b5aa765d61d8327deb882cf99'
66
+ # ========================================================================= #
67
+ def reverse_md5(md5hash = '5f4dcc3b5aa765d61d8327deb882cf99')
68
+ require 'digest/md5reverse'
69
+ reverse_hexdigest = Digest::MD5Reverse.to_reverse_hexdigest(md5hash)
70
+ e N+"\tmd5hash word [#{reverse_hexdigest}] "+N # md5hash word [password]
71
+ end
72
+
73
+ # ========================================================================= #
74
+ # === set_result
75
+ # ========================================================================= #
76
+ def set_result
77
+ @result = return_md5sum(@input)
78
+ end
79
+
80
+ alias e puts
81
+
82
+ end
83
+
84
+ if __FILE__ == $PROGRAM_NAME
85
+ _ = Md5sum.new(ARGV, false)
86
+ # _.run_it
87
+ _.reverse_md5 '61c12f4e84dc393aaa4849db9b78aa84'
88
+ _.run
89
+ end
90
+ # $RUBY_TOOLS/md5sum.rb RamonDekkersHightlight.avi
91
+ # $RUBY_TOOLS/md5sum.rb
data/md5sum.gemspec ADDED
@@ -0,0 +1,36 @@
1
+ # =========================================================================== #
2
+ # Gemspec for Project Md5sum.
3
+ # =========================================================================== #
4
+
5
+ Gem::Specification.new { |s|
6
+
7
+ s.name = 'md5sum'
8
+ s.version = '1.0.0'
9
+ s.date = '2012-07-19'
10
+
11
+ s.summary = <<-EOF
12
+
13
+ This gem
14
+ If you have specific suggestions to make this gem more useful
15
+ for others, please drop me an email at:
16
+ shevegen@gmail.com.
17
+ Thank you.
18
+
19
+ EOF
20
+
21
+ s.description = <<-EOF
22
+ A simple symbol to foo library.
23
+ EOF
24
+
25
+ s.extra_rdoc_files = [
26
+ "USAGE.rdoc"
27
+ ]
28
+
29
+ s.authors = ['Markus Heiler']
30
+ s.email = 'shevegen@gmail.com'
31
+ s.files = Dir.glob('**/*')
32
+ s.homepage = 'http://rubygems.org/gems/md5sum'
33
+ s.rubygems_version = '1.8.24'
34
+ # s.add_dependency 'libxml' # add dependencies here.
35
+
36
+ }
metadata ADDED
@@ -0,0 +1,68 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: md5sum
3
+ version: !ruby/object:Gem::Version
4
+ hash: 23
5
+ prerelease:
6
+ segments:
7
+ - 1
8
+ - 0
9
+ - 0
10
+ version: 1.0.0
11
+ platform: ruby
12
+ authors:
13
+ - Markus Heiler
14
+ autorequire:
15
+ bindir: bin
16
+ cert_chain: []
17
+
18
+ date: 2012-07-19 00:00:00 Z
19
+ dependencies: []
20
+
21
+ description: " A simple symbol to foo library.\n"
22
+ email: shevegen@gmail.com
23
+ executables: []
24
+
25
+ extensions: []
26
+
27
+ extra_rdoc_files:
28
+ - USAGE.rdoc
29
+ files:
30
+ - lib/md5sum/md5sum.rb
31
+ - lib/md5sum.rb
32
+ - USAGE.rdoc
33
+ - md5sum.gemspec
34
+ homepage: http://rubygems.org/gems/md5sum
35
+ licenses: []
36
+
37
+ post_install_message:
38
+ rdoc_options: []
39
+
40
+ require_paths:
41
+ - lib
42
+ required_ruby_version: !ruby/object:Gem::Requirement
43
+ none: false
44
+ requirements:
45
+ - - ">="
46
+ - !ruby/object:Gem::Version
47
+ hash: 3
48
+ segments:
49
+ - 0
50
+ version: "0"
51
+ required_rubygems_version: !ruby/object:Gem::Requirement
52
+ none: false
53
+ requirements:
54
+ - - ">="
55
+ - !ruby/object:Gem::Version
56
+ hash: 3
57
+ segments:
58
+ - 0
59
+ version: "0"
60
+ requirements: []
61
+
62
+ rubyforge_project:
63
+ rubygems_version: 1.8.24
64
+ signing_key:
65
+ specification_version: 3
66
+ summary: "This gem If you have specific suggestions to make this gem more useful for others, please drop me an email at: shevegen@gmail.com. Thank you."
67
+ test_files: []
68
+