Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(PureBasic) Generate TOTP using Base32 Secret (6 Digits, Time-based, 30-second period)Generates a 6-digit time-based TOTP code using a base32 secret with a 30-second time period.
IncludeFile "CkCrypt2.pb" IncludeFile "CkStringBuilder.pb" Procedure ChilkatExample() ; This example requires the Chilkat API to have been previously unlocked. ; See Global Unlock Sample for sample code. ; crypt.i = CkCrypt2::ckCreate() If crypt.i = 0 Debug "Failed to create object." ProcedureReturn EndIf ; Base32 secret key: secretKey.s = "oebf ytfl qmzb p4xd 2ztf zyz4 hjrw 3uyo" sbKey.i = CkStringBuilder::ckCreate() If sbKey.i = 0 Debug "Failed to create object." ProcedureReturn EndIf success.i = CkStringBuilder::ckAppend(sbKey,secretKey) ; Remove SPACE chars. numRemoved.i = CkStringBuilder::ckReplace(sbKey," ","") ; Note: A new token is generated every 30 seconds. You must generate within the same 30 second interval to get the same result. ; Generate 6 digits. numDigits.i = 6 ; 30 second time period. timePeriod.i = 30 Debug "Your token is: " + CkCrypt2::ckTotp(crypt,CkStringBuilder::ckGetAsString(sbKey),"base32","0","",timePeriod,numDigits,-1,"sha1") CkCrypt2::ckDispose(crypt) CkStringBuilder::ckDispose(sbKey) ProcedureReturn EndProcedure |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.