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) TOTP Authenticator: Duplicate Results of Online ToolsDuplicates the online tool for the Google 2FA Authenticator online tools at For more information, see https://rootprojects.org/authenticator/
IncludeFile "CkCrypt2.pb" Procedure ChilkatExample() ; This example requires the Chilkat API to have been previously unlocked. ; See Global Unlock Sample for sample code. ; ; Note: This example was written on 7-March-2020. If the online tools have since changed, the instructions provided here may no longer be valid. ; crypt.i = CkCrypt2::ckCreate() If crypt.i = 0 Debug "Failed to create object." ProcedureReturn EndIf ; --------------------------------------------------------------------------------------------- ; To duplicate the results of the Authenticator Test at https://rootprojects.org/authenticator/ ; do the following: ; 1) At the bottom of the screen you will see a URI such as: ; ; otpauth://totp/ACME%20Co:john@example.com?secret=HXDMVJECJJWSRB3HWIZR4IFUGFTMXBOZ&issuer=ACME%20Co&algorithm=SHA1&digits=6&period=30 ; ; Use the uppercase secret. For example: secretKey.s = "HXDMVJECJJWSRB3HWIZR4IFUGFTMXBOZ" ; 2) DO NOT cick the "Regenerate" button. The regenerate button will generate a new secret. ; ; 3) Run the following code to generate your 6-digit token. Compare with the token shown in the picture of the iPhone at https://rootprojects.org/authenticator/ ; Note: A new token is generated every 30 seconds. You must generate within the same 30 second interval to get the same result. Debug "Your token is: " + CkCrypt2::ckTotp(crypt,secretKey,"base32","0","",30,6,-1,"sha1") ; --------------------------------------------------------------------------------------------- ; To duplicate the results of the Google2FA Playground at https://pragmarx.com/playground/google2fa#/ ; do the following: ; 1) Copy the 64-byte secret key: secretKey = "OR2VQTRVHB2HO2LCGVWXQSCDK5ZHQS2D3THQ6UXO57XIE7ZHOWS6HDPQ622GU747" ; 2) Run the same code: ; (Note: The online tool generates a new result every 30 seconds. You must generate and compare within the same 30-second interval.) Debug "Your token is: " + CkCrypt2::ckTotp(crypt,secretKey,"base32","0","",30,6,-1,"sha1") CkCrypt2::ckDispose(crypt) ProcedureReturn EndProcedure |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.