authenticator.ts 478 B

1234567891011121314
  1. import { Totp, generateConfig } from 'time2fa'
  2. export async function generateKey(username: string) {
  3. return Totp.generateKey({ issuer: 'RCS', user: username })
  4. }
  5. export async function generatePasscodes(secretKey: string) {
  6. const config = generateConfig()
  7. return Totp.generatePasscodes({ secret: secretKey }, config)
  8. }
  9. export async function verifyPasscode(secretKey: string, passcode: string) {
  10. return Totp.validate({ passcode: passcode, secret: secretKey })
  11. }