SILENT KILLERPanel

Current Path: > > opt > alt > > ruby31 > share > ruby


Operation   : Linux premium131.web-hosting.com 4.18.0-553.44.1.lve.el8.x86_64 #1 SMP Thu Mar 13 14:29:12 UTC 2025 x86_64
Software     : Apache
Server IP    : 162.0.232.56 | Your IP: 216.73.216.111
Domains      : 1034 Domain(s)
Permission   : [ 0755 ]

Files and Folders in: //opt/alt//ruby31/share/ruby

NameTypeSizeLast ModifiedActions
benchmark Directory - -
bigdecimal Directory - -
cgi Directory - -
csv Directory - -
did_you_mean Directory - -
digest Directory - -
drb Directory - -
erb Directory - -
error_highlight Directory - -
fiddle Directory - -
forwardable Directory - -
io Directory - -
json Directory - -
logger Directory - -
net Directory - -
objspace Directory - -
open3 Directory - -
openssl Directory - -
optparse Directory - -
psych Directory - -
racc Directory - -
random Directory - -
reline Directory - -
rinda Directory - -
ripper Directory - -
set Directory - -
syslog Directory - -
unicode_normalize Directory - -
uri Directory - -
vendor_ruby Directory - -
yaml Directory - -
English.rb File 6258 bytes April 28 2025 17:36:08.
abbrev.rb File 3529 bytes April 28 2025 17:36:08.
base64.rb File 3435 bytes April 28 2025 17:36:07.
benchmark.rb File 18842 bytes April 28 2025 17:36:08.
bigdecimal.rb File 24 bytes April 28 2025 17:36:08.
cgi.rb File 10070 bytes April 28 2025 17:36:08.
coverage.rb File 368 bytes April 28 2025 17:36:08.
csv.rb File 94629 bytes April 28 2025 17:36:08.
date.rb File 1130 bytes April 28 2025 17:36:07.
delegate.rb File 11961 bytes April 28 2025 17:36:06.
did_you_mean.rb File 5440 bytes April 28 2025 17:36:06.
digest.rb File 3381 bytes April 28 2025 17:36:08.
drb.rb File 50 bytes April 28 2025 17:36:07.
erb.rb File 29425 bytes April 28 2025 17:36:07.
error_highlight.rb File 84 bytes April 28 2025 17:36:08.
expect.rb File 2217 bytes April 28 2025 17:36:06.
fiddle.rb File 2162 bytes April 28 2025 17:36:08.
fileutils.rb File 48886 bytes April 28 2025 17:36:06.
find.rb File 2556 bytes April 28 2025 17:36:08.
forwardable.rb File 9199 bytes April 28 2025 17:36:06.
getoptlong.rb File 15826 bytes April 28 2025 17:36:07.
ipaddr.rb File 21077 bytes April 28 2025 17:36:06.
json.rb File 19757 bytes April 28 2025 17:36:07.
kconv.rb File 5861 bytes April 28 2025 17:36:08.
logger.rb File 16935 bytes April 28 2025 17:36:08.
mkmf.rb File 90232 bytes April 28 2025 17:36:08.
monitor.rb File 6920 bytes April 28 2025 17:36:06.
mutex_m.rb File 2383 bytes April 28 2025 17:36:08.
objspace.rb File 2728 bytes April 28 2025 17:36:07.
observer.rb File 6532 bytes April 28 2025 17:36:08.
open-uri.rb File 25474 bytes April 28 2025 17:36:08.
open3.rb File 22640 bytes April 28 2025 17:36:07.
openssl.rb File 1052 bytes April 28 2025 17:36:07.
optionparser.rb File 59 bytes April 28 2025 17:36:08.
optparse.rb File 60227 bytes April 28 2025 17:36:06.
ostruct.rb File 14114 bytes April 28 2025 17:36:06.
pathname.rb File 16868 bytes April 28 2025 17:36:07.
pp.rb File 17094 bytes April 28 2025 17:36:07.
prettyprint.rb File 16281 bytes April 28 2025 17:36:07.
pstore.rb File 15084 bytes April 28 2025 17:36:08.
psych.rb File 25199 bytes April 28 2025 17:36:06.
racc.rb File 137 bytes April 28 2025 17:36:07.
readline.rb File 189 bytes April 28 2025 17:36:08.
reline.rb File 18093 bytes April 28 2025 17:36:07.
resolv-replace.rb File 1805 bytes April 28 2025 17:36:07.
resolv.rb File 75959 bytes April 28 2025 17:36:07.
ripper.rb File 2494 bytes April 28 2025 17:36:08.
securerandom.rb File 2112 bytes April 28 2025 17:36:06.
set.rb File 26038 bytes April 28 2025 17:36:08.
shellwords.rb File 7259 bytes April 28 2025 17:36:08.
singleton.rb File 4178 bytes April 28 2025 17:36:07.
socket.rb File 44702 bytes April 28 2025 17:36:07.
tempfile.rb File 12730 bytes April 28 2025 17:36:08.
time.rb File 24287 bytes April 28 2025 17:36:07.
timeout.rb File 4171 bytes April 28 2025 17:36:08.
tmpdir.rb File 4543 bytes April 28 2025 17:36:08.
tsort.rb File 14642 bytes April 28 2025 17:36:08.
un.rb File 11323 bytes April 28 2025 17:36:08.
uri.rb File 3131 bytes April 28 2025 17:36:07.
weakref.rb File 1493 bytes April 28 2025 17:36:07.
yaml.rb File 1841 bytes April 28 2025 17:36:07.

Reading File: //opt/alt//ruby31/share/ruby/securerandom.rb

# -*- coding: us-ascii -*-
# frozen_string_literal: true

require 'random/formatter'

# == Secure random number generator interface.
#
# This library is an interface to secure random number generators which are
# suitable for generating session keys in HTTP cookies, etc.
#
# You can use this library in your application by requiring it:
#
#   require 'securerandom'
#
# It supports the following secure random number generators:
#
# * openssl
# * /dev/urandom
# * Win32
#
# SecureRandom is extended by the Random::Formatter module which
# defines the following methods:
#
# * alphanumeric
# * base64
# * choose
# * gen_random
# * hex
# * rand
# * random_bytes
# * random_number
# * urlsafe_base64
# * uuid
#
# These methods are usable as class methods of SecureRandom such as
# +SecureRandom.hex+.
#
# If a secure random number generator is not available,
# +NotImplementedError+ is raised.

module SecureRandom
  class << self
    def bytes(n)
      return gen_random(n)
    end

    private

    def gen_random_openssl(n)
      @pid = 0 unless defined?(@pid)
      pid = $$
      unless @pid == pid
        now = Process.clock_gettime(Process::CLOCK_REALTIME, :nanosecond)
        OpenSSL::Random.random_add([now, @pid, pid].join(""), 0.0)
        seed = Random.urandom(16)
        if (seed)
          OpenSSL::Random.random_add(seed, 16)
        end
        @pid = pid
      end
      return OpenSSL::Random.random_bytes(n)
    end

    def gen_random_urandom(n)
      ret = Random.urandom(n)
      unless ret
        raise NotImplementedError, "No random device"
      end
      unless ret.length == n
        raise NotImplementedError, "Unexpected partial read from random device: only #{ret.length} for #{n} bytes"
      end
      ret
    end

    ret = Random.urandom(1)
    if ret.nil?
      begin
        require 'openssl'
      rescue NoMethodError
        raise NotImplementedError, "No random device"
      else
        alias gen_random gen_random_openssl
      end
    else
      alias gen_random gen_random_urandom
    end

    public :gen_random
  end
end

SecureRandom.extend(Random::Formatter)

SILENT KILLER Tool