Class: Zxcvbn::Score
- Inherits:
-
Data
- Object
- Data
- Zxcvbn::Score
- Defined in:
- lib/zxcvbn/score.rb
Overview
The result of analysing a password — returned by test.
Instance Attribute Summary collapse
-
#calc_time ⇒ Object
readonly
Returns the value of attribute calc_time.
-
#crack_times_display ⇒ Object
readonly
Returns the value of attribute crack_times_display.
-
#crack_times_seconds ⇒ Object
readonly
Returns the value of attribute crack_times_seconds.
-
#feedback ⇒ Object
readonly
Returns the value of attribute feedback.
-
#guesses ⇒ Object
readonly
Returns the value of attribute guesses.
-
#password ⇒ Object
readonly
Returns the value of attribute password.
-
#score ⇒ Object
readonly
Returns the value of attribute score.
-
#sequence ⇒ Object
readonly
Returns the value of attribute sequence.
Instance Method Summary collapse
-
#guesses_log10 ⇒ Float?
Log10 of #guesses, or nil if guesses is not set.
-
#initialize(calc_time: nil, feedback: nil, **kwargs) ⇒ Score
constructor
A new instance of Score.
-
#inspect ⇒ String
A human-readable representation omitting nil fields and password.
Constructor Details
#initialize(calc_time: nil, feedback: nil, **kwargs) ⇒ Score
Returns a new instance of Score.
26 27 28 |
# File 'lib/zxcvbn/score.rb', line 26 def initialize(calc_time: nil, feedback: nil, **kwargs) super(calc_time:, feedback:, **kwargs) end |
Instance Attribute Details
#calc_time ⇒ Object (readonly)
Returns the value of attribute calc_time
22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
# File 'lib/zxcvbn/score.rb', line 22 Score = ::Data.define( :password, :guesses, :sequence, :crack_times_seconds, :crack_times_display, :score, :calc_time, :feedback ) do def initialize(calc_time: nil, feedback: nil, **kwargs) super(calc_time:, feedback:, **kwargs) end # @return [String] a human-readable representation omitting nil fields and password def inspect fields = to_h.reject { |k, v| v.nil? || k == :password }.map { |k, v| "#{k}=#{v.inspect}" }.join(', ') "#<data #{self.class} #{fields}>" end # @return [Float, nil] log10 of {#guesses}, or nil if guesses is not set def guesses_log10 ::Math.log10(guesses) if guesses end end |
#crack_times_display ⇒ Object (readonly)
Returns the value of attribute crack_times_display
22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
# File 'lib/zxcvbn/score.rb', line 22 Score = ::Data.define( :password, :guesses, :sequence, :crack_times_seconds, :crack_times_display, :score, :calc_time, :feedback ) do def initialize(calc_time: nil, feedback: nil, **kwargs) super(calc_time:, feedback:, **kwargs) end # @return [String] a human-readable representation omitting nil fields and password def inspect fields = to_h.reject { |k, v| v.nil? || k == :password }.map { |k, v| "#{k}=#{v.inspect}" }.join(', ') "#<data #{self.class} #{fields}>" end # @return [Float, nil] log10 of {#guesses}, or nil if guesses is not set def guesses_log10 ::Math.log10(guesses) if guesses end end |
#crack_times_seconds ⇒ Object (readonly)
Returns the value of attribute crack_times_seconds
22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
# File 'lib/zxcvbn/score.rb', line 22 Score = ::Data.define( :password, :guesses, :sequence, :crack_times_seconds, :crack_times_display, :score, :calc_time, :feedback ) do def initialize(calc_time: nil, feedback: nil, **kwargs) super(calc_time:, feedback:, **kwargs) end # @return [String] a human-readable representation omitting nil fields and password def inspect fields = to_h.reject { |k, v| v.nil? || k == :password }.map { |k, v| "#{k}=#{v.inspect}" }.join(', ') "#<data #{self.class} #{fields}>" end # @return [Float, nil] log10 of {#guesses}, or nil if guesses is not set def guesses_log10 ::Math.log10(guesses) if guesses end end |
#feedback ⇒ Object (readonly)
Returns the value of attribute feedback
22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
# File 'lib/zxcvbn/score.rb', line 22 Score = ::Data.define( :password, :guesses, :sequence, :crack_times_seconds, :crack_times_display, :score, :calc_time, :feedback ) do def initialize(calc_time: nil, feedback: nil, **kwargs) super(calc_time:, feedback:, **kwargs) end # @return [String] a human-readable representation omitting nil fields and password def inspect fields = to_h.reject { |k, v| v.nil? || k == :password }.map { |k, v| "#{k}=#{v.inspect}" }.join(', ') "#<data #{self.class} #{fields}>" end # @return [Float, nil] log10 of {#guesses}, or nil if guesses is not set def guesses_log10 ::Math.log10(guesses) if guesses end end |
#guesses ⇒ Object (readonly)
Returns the value of attribute guesses
22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
# File 'lib/zxcvbn/score.rb', line 22 Score = ::Data.define( :password, :guesses, :sequence, :crack_times_seconds, :crack_times_display, :score, :calc_time, :feedback ) do def initialize(calc_time: nil, feedback: nil, **kwargs) super(calc_time:, feedback:, **kwargs) end # @return [String] a human-readable representation omitting nil fields and password def inspect fields = to_h.reject { |k, v| v.nil? || k == :password }.map { |k, v| "#{k}=#{v.inspect}" }.join(', ') "#<data #{self.class} #{fields}>" end # @return [Float, nil] log10 of {#guesses}, or nil if guesses is not set def guesses_log10 ::Math.log10(guesses) if guesses end end |
#password ⇒ Object (readonly)
Returns the value of attribute password
22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
# File 'lib/zxcvbn/score.rb', line 22 Score = ::Data.define( :password, :guesses, :sequence, :crack_times_seconds, :crack_times_display, :score, :calc_time, :feedback ) do def initialize(calc_time: nil, feedback: nil, **kwargs) super(calc_time:, feedback:, **kwargs) end # @return [String] a human-readable representation omitting nil fields and password def inspect fields = to_h.reject { |k, v| v.nil? || k == :password }.map { |k, v| "#{k}=#{v.inspect}" }.join(', ') "#<data #{self.class} #{fields}>" end # @return [Float, nil] log10 of {#guesses}, or nil if guesses is not set def guesses_log10 ::Math.log10(guesses) if guesses end end |
#score ⇒ Object (readonly)
Returns the value of attribute score
22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
# File 'lib/zxcvbn/score.rb', line 22 Score = ::Data.define( :password, :guesses, :sequence, :crack_times_seconds, :crack_times_display, :score, :calc_time, :feedback ) do def initialize(calc_time: nil, feedback: nil, **kwargs) super(calc_time:, feedback:, **kwargs) end # @return [String] a human-readable representation omitting nil fields and password def inspect fields = to_h.reject { |k, v| v.nil? || k == :password }.map { |k, v| "#{k}=#{v.inspect}" }.join(', ') "#<data #{self.class} #{fields}>" end # @return [Float, nil] log10 of {#guesses}, or nil if guesses is not set def guesses_log10 ::Math.log10(guesses) if guesses end end |
#sequence ⇒ Object (readonly)
Returns the value of attribute sequence
22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
# File 'lib/zxcvbn/score.rb', line 22 Score = ::Data.define( :password, :guesses, :sequence, :crack_times_seconds, :crack_times_display, :score, :calc_time, :feedback ) do def initialize(calc_time: nil, feedback: nil, **kwargs) super(calc_time:, feedback:, **kwargs) end # @return [String] a human-readable representation omitting nil fields and password def inspect fields = to_h.reject { |k, v| v.nil? || k == :password }.map { |k, v| "#{k}=#{v.inspect}" }.join(', ') "#<data #{self.class} #{fields}>" end # @return [Float, nil] log10 of {#guesses}, or nil if guesses is not set def guesses_log10 ::Math.log10(guesses) if guesses end end |
Instance Method Details
#guesses_log10 ⇒ Float?
Returns log10 of #guesses, or nil if guesses is not set.
37 38 39 |
# File 'lib/zxcvbn/score.rb', line 37 def guesses_log10 ::Math.log10(guesses) if guesses end |
#inspect ⇒ String
Returns a human-readable representation omitting nil fields and password.
31 32 33 34 |
# File 'lib/zxcvbn/score.rb', line 31 def inspect fields = to_h.reject { |k, v| v.nil? || k == :password }.map { |k, v| "#{k}=#{v.inspect}" }.join(', ') "#<data #{self.class} #{fields}>" end |