Module: RailsBase::UserHelper::Totp::ClassOptions

Defined in:
app/models/rails_base/user_helper/totp/class_options.rb

Instance Method Summary collapse

Instance Method Details

#generate_backup_codesObject



19
20
21
22
23
24
25
26
27
28
# File 'app/models/rails_base/user_helper/totp/class_options.rb', line 19

def generate_backup_codes
  number_of_codes = RailsBase.config.totp.backup_code_count
  code_length = RailsBase.config.totp.backup_code_length
  codes = []
  number_of_codes.times do
    codes << SecureRandom.hex(code_length / 2) # Hexstring has length 2*n
  end

  codes
end

#generate_otp_secret(otp_secret_length = RailsBase.config.totp.secret_code_length) ⇒ Object



15
16
17
# File 'app/models/rails_base/user_helper/totp/class_options.rb', line 15

def generate_otp_secret(otp_secret_length = RailsBase.config.totp.secret_code_length)
  ROTP::Base32.random_base32(otp_secret_length)
end

#totp_drift_aheadObject



7
8
9
# File 'app/models/rails_base/user_helper/totp/class_options.rb', line 7

def totp_drift_ahead
  RailsBase.config.totp.allowed_drift_ahead || RailsBase.config.totp.allowed_drift
end

#totp_drift_behindObject



11
12
13
# File 'app/models/rails_base/user_helper/totp/class_options.rb', line 11

def totp_drift_behind
  RailsBase.config.totp.allowed_drift_behind || RailsBase.config.totp.allowed_drift
end