Chilkat HOME Android™ Classic ASP C C++ C# Mono C# .NET Core C# C# UWP/WinRT DataFlex Delphi ActiveX Delphi DLL Visual FoxPro Java Lianja MFC Objective-C Perl PHP ActiveX PHP Extension PowerBuilder PowerShell PureBasic CkPython Chilkat2-Python Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ Visual Basic 6.0 VB.NET VB.NET UWP/WinRT VBScript Xojo Plugin Node.js Excel Go
(MFC) 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/
#include <CkCrypt2.h> void ChilkatSample(void) { CkString strOut; // 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. // CkCrypt2 crypt; // --------------------------------------------------------------------------------------------- // 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: const char *secretKey = "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. strOut.append("Your token is: "); strOut.append(crypt.totp(secretKey,"base32","0","",30,6,-1,"sha1")); strOut.append("\r\n"); // --------------------------------------------------------------------------------------------- // 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.) strOut.append("Your token is: "); strOut.append(crypt.totp(secretKey,"base32","0","",30,6,-1,"sha1")); strOut.append("\r\n"); SetDlgItemText(IDC_EDIT1,strOut.getUnicode()); } |
© 2000-2022 Chilkat Software, Inc. All Rights Reserved.