Sha256: a6b95576f5abbb5c9109b61d4db3aef98f2cf5e1a021a83cf0a691c60bc95594
Contents?: true
Size: 920 Bytes
Versions: 4
Compression:
Stored size: 920 Bytes
Contents
# frozen_string_literal: true module RailsBase module UserHelper module Totp module ClassOptions def totp_drift_ahead RailsBase.config.totp.allowed_drift_ahead || RailsBase.config.totp.allowed_drift end def totp_drift_behind RailsBase.config.totp.allowed_drift_behind || RailsBase.config.totp.allowed_drift end def generate_otp_secret(otp_secret_length = RailsBase.config.totp.secret_code_length) ROTP::Base32.random_base32(otp_secret_length) end 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 end end end end
Version data entries
4 entries across 4 versions & 1 rubygems