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
(DataFlex) Password_Digest = Base64 (SHA-1 ( nonce + created + SHA-1 (password) ) )Demonstrates how to compute: Password_Digest = Base64 (SHA-1 ( nonce + created + SHA-1 (password)))
Use ChilkatAx-win32.pkg Procedure Test String sPassword Handle hoCrypt Handle hoPrng Variant vBd Handle hoBd Boolean iSuccess Handle hoDt String sCreated String sPasswordSha1 String sPasswordDigest // This example requires the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. Move "secret" To sPassword Get Create (RefClass(cComChilkatCrypt2)) To hoCrypt If (Not(IsComObjectCreated(hoCrypt))) Begin Send CreateComObject of hoCrypt End Set ComHashAlgorithm Of hoCrypt To "SHA-1" Set ComEncodingMode Of hoCrypt To "base64" // Generate a 16-byte random nonce Get Create (RefClass(cComChilkatPrng)) To hoPrng If (Not(IsComObjectCreated(hoPrng))) Begin Send CreateComObject of hoPrng End Get Create (RefClass(cComChilkatBinData)) To hoBd If (Not(IsComObjectCreated(hoBd))) Begin Send CreateComObject of hoBd End Get pvComObject of hoBd to vBd Get ComGenRandomBd Of hoPrng 16 vBd To iSuccess // Get the current date/time in a string with this format: 2010-06-08T07:26:50Z Get Create (RefClass(cComCkDateTime)) To hoDt If (Not(IsComObjectCreated(hoDt))) Begin Send CreateComObject of hoDt End Get ComSetFromCurrentSystemTime Of hoDt To iSuccess Get ComGetAsTimestamp Of hoDt False To sCreated Get ComAppendString Of hoBd sCreated "utf-8" To iSuccess // This example wishes to calculate a password digest like this: // Password_Digest = Base64 ( SHA-1 ( nonce + created + SHA-1(password) ) ) // First SHA-1 digest the password... Get ComHashStringENC Of hoCrypt sPassword To sPasswordSha1 // Append the 20 binary bytes of the SHA1 hash to bd, which already contains the nonce and created date/time. Get ComAppendEncoded Of hoBd sPasswordSha1 "base64" To iSuccess Get pvComObject of hoBd to vBd Get ComHashBdENC Of hoCrypt vBd To sPasswordDigest Showln "Base64 password digest = " sPasswordDigest End_Procedure |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.