module Core
Public Instance Methods
check_checksum(checksum, blocksize = nil)
click to toggle source
# File lib/filerock/core.rb, line 55 def check_checksum(checksum, blocksize = nil) if(checksum.length == 32) if(blocksize.nil?) checksum_MD5 = Digest::MD5.hexdigest(File.read(@sett[:file])) else open(@sett[:file],"rb"){|file| checksum_MD5 = Digest::MD5.hexdigest(file.read(blocksize))} end if(checksum == checksum_MD5) return true else return false end elsif(checksum.length == 40) if(blocksize.nil?) checksum_SHA1 = Digest::SHA1.hexdigest(File.read(@sett[:file])) else open(@sett[:file],"rb"){|file| checksum_SHA1 = Digest::SHA1.hexdigest(file.read(blocksize))} end if(checksum == checksum_SHA1) return true else return false end elsif(checksum.length == 128) if(blocksize.nil?) checksum_SHA512 = Digest::SHA512.hexdigest(File.read(@sett[:file])) else open(@sett[:file],"rb"){|file| checksum_SHA512 = Digest::SHA512.hexdigest(file.read(blocksize))} end if(checksum == checksum_SHA512) return true else return false end else raise "Unknown Checksum Algorithm." end end
create_checksum_MD5(blocksize = nil)
click to toggle source
# File lib/filerock/core.rb, line 19 def create_checksum_MD5(blocksize = nil) if(blocksize.is_a? String) raise "Wrong method argument, You should send an integrer." end if(blocksize.nil?) checksum_MD5 = Digest::MD5.hexdigest(File.read(@sett[:file])) return checksum_MD5 else open(@sett[:file],"rb"){|file| checksum_MD5 = Digest::MD5.hexdigest(file.read(blocksize))} return checksum_MD5 end end
create_checksum_SHA1(blocksize = nil)
click to toggle source
# File lib/filerock/core.rb, line 31 def create_checksum_SHA1(blocksize = nil) if(blocksize.is_a? String) raise "Wrong method argument, You should send an integrer." end if(blocksize.nil?) checksum_SHA1 = Digest::SHA1.hexdigest(File.read(@sett[:file])) return checksum_SHA1 else open(@sett[:file],"rb"){|file| checksum_SHA1 = Digest::SHA1.hexdigest(file.read(blocksize))} return checksum_SHA1 end end
create_checksum_SHA512(blocksize = nil)
click to toggle source
# File lib/filerock/core.rb, line 43 def create_checksum_SHA512(blocksize = nil) if(blocksize.is_a? String) raise "Wrong method argument, You should send an integrer." end if(blocksize.nil?) checksum_SHA512 = Digest::SHA512.hexdigest(File.read(@sett[:file])) return checksum_SHA512 else open(@sett[:file],"rb"){|file| checksum_SHA512 = Digest::SHA512.hexdigest(file.read(blocksize))} return checksum_SHA512 end end
header()
click to toggle source
# File lib/filerock/core.rb, line 3 def header i = @sett[:size] head = Enc.tohex(IO.binread(@sett[:file]))[0..i] if(@sett[:space] =~ /ON/i) head = head.gsub(/(.{2})(?=.)/, '\1 \2') end return head end
inside_craving?()
click to toggle source
# File lib/filerock/core.rb, line 112 def inside_craving? allinf = [] i = 0 typetestheadassci = IO.binread(@sett[:file]) while(i < @header.size) if(typetestheadassci =~ /#{@header[i]}/i) allinf << @type[i] end i += 1 end i = 0 typetestheadhex = Enc.tohex(IO.binread(@sett[:file])) while(i < @header.size) if(typetestheadhex =~ /#{@hexhead[i]}/i) allinf << @hextype[i] end i += 1 end allinf.delete(nil) return allinf end
type?()
click to toggle source
# File lib/filerock/core.rb, line 93 def type? i = 0 typetestheadassci = IO.binread(@sett[:file])[0..50] while(i < @header.size) if(typetestheadassci =~ /#{@header[i]}/i) return @type[i] end i += 1 end i = 0 typetestheadhex = Enc.tohex(IO.binread(@sett[:file]))[0..42] while(i < @header.size) if(typetestheadhex =~ /#{@hexhead[i]}/i) return @hextype[i] end i += 1 end return nil end