Generare OTP con Ruby

Mattepuffo's logo
Generare OTP con Ruby

Generare OTP con Ruby

OTP sta per One Time Password, ed è sempre più usato per migliorare la sicurezza online; sia per il login che per effettuare altre operazioni.

In genere questi OTP vengono iviati per SMS o per email.

Oggi vediamo come crearli in Ruby usando la libreria rotp!

Prima di tutto installiamo la libreria:

gem install rotp

Qui sotto un esempio di Time based:

require 'rotp'

totp = ROTP::TOTP.new("base32secret3232", issuer: "Ruby OTP Test")
now = totp.now

puts totp.verify(now)

sleep 30

puts totp.verify(now)

Qui sotto invece un esempio su Counter based:

require 'rotp'

hotp = ROTP::HOTP.new("base32secretkey3232")
check = "111392"

puts hotp.at(0)
puts hotp.at(1)
puts hotp.at(1401)

puts hotp.verify(check, 0)
puts hotp.verify(check, 1401)
puts hotp.verify(check, 1402)

Enjoy!


Condividi

Commentami!