manpagez: man pages & more
man oath_totp_generate(3)
Home | html | info | man
oath_totp_generate(3)                liboath               oath_totp_generate(3)




NAME

       oath_totp_generate - API function


SYNOPSIS

       #include <oath.h>

       oath_totp_generate(3) char * secret, size_t secret_length, time_t
       now, unsigned time_step_size, time_t start_offset, unsigned digits, char
       * output_otp);


ARGUMENTS

       const char * secret
                   the shared secret string

       size_t secret_length
                   length of secret

       time_t now  Unix time value to compute TOTP for

       unsigned time_step_size
                   time step system parameter (typically 30)

       time_t start_offset
                   Unix time of when to start counting time steps (typically 0)

       unsigned digits
                   number of requested digits in the OTP, excluding checksum

       char * output_otp
                   output buffer, must have room for the output OTP plus zero


DESCRIPTION

       Generate a one-time-password using the time-variant TOTP algorithm
       described in RFC 6238.  The input parameters are taken as time values.

       The system parameter time_step_size describes how long the time window
       for each OTP is.  The recommended value is 30 seconds, and you can use
       the value 0 or the symbol OATH_TOTP_DEFAULT_TIME_STEP_SIZE to indicate
       this.

       The system parameter start_offset denote the Unix time when time steps
       are started to be counted.  The recommended value is 0, to fall back on
       the Unix epoch) and you can use the symbol OATH_TOTP_DEFAULT_START_TIME
       to indicate this.

       The output_otp buffer must have room for at least digits characters, plus
       one for the terminating NUL.

       Currently only values 6, 7 and 8 for digits are supported.  This
       restriction may be lifted in future versions.


RETURNS

       On success, OATH_OK (zero) is returned, otherwise an error code is
       returned.


SINCE

       1.4.0


REPORTING BUGS

       Report bugs to <oath-toolkit-help@nongnu.org>.  liboath home page:
       https://www.nongnu.org/oath-toolkit/ General help using GNU software:
       http://www.gnu.org/gethelp/


COPYRIGHT

       Copyright (C) 2009-2020 Simon Josefsson.
       Copying and distribution of this file, with or without modification, are
       permitted in any medium without royalty provided the copyright notice and
       this notice are preserved.



liboath                               2.6.7                oath_totp_generate(3)

oath-toolkit 2.6.7 - Generated Tue May 9 16:05:06 CDT 2023
© manpagez.com 2000-2025
Individual documents may contain additional copyright information.