|  | 
Chilkat  HOME  Android™  AutoIt  C  C#  C++  Chilkat2-Python  CkPython  Classic ASP  DataFlex  Delphi DLL  Go  Java  Node.js  Objective-C  PHP Extension  Perl  PowerBuilder  PowerShell  PureBasic  Ruby  SQL Server  Swift  Tcl  Unicode C  Unicode C++  VB.NET  VBScript  Visual Basic 6.0  Visual FoxPro  Xojo Plugin
| (Classic ASP) PBKDF1 - Derive Key from PasswordDemonstrates how to derive a symmetric encryption key from a password using PBKDF1. This example matches the results found at this URL: http://www.di-mgt.com.au/cryptoKDFs.html#examplespbkdf It also matches the output produced by the .NET Framework using this C# code: 
            byte[] salt = new byte[] { 0x78, 0x57, 0x8E, 0x5A, 0x5D, 0x63, 0xCB, 0x06 };
            PasswordDeriveBytes cdk = new PasswordDeriveBytes("password", salt);
            cdk.IterationCount = 1000;
            cdk.HashName = "SHA1";
            // generate a 16-byte key
            byte[] key = cdk.GetBytes(16);
 <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> </head> <body> <% ' This example assumes the Chilkat API to have been previously unlocked. ' See Global Unlock Sample for sample code. ' For versions of Chilkat < 10.0.0, use CreateObject("Chilkat_9_5_0.Crypt2") set crypt = Server.CreateObject("Chilkat.Crypt2") ' http://www.di-mgt.com.au/cryptoKDFs.html#examplespbkdf pw = "password" pwCharset = "ansi" ' Hash algorithms may be: sha1, md2, md5, etc. hashAlg = "sha1" ' The salt should be 8 bytes: saltHex = "78578E5A5D63CB06" iterationCount = 1000 ' Derive a 128-bit key from the password. outputBitLen = 128 ' The derived key is returned as a hex or base64 encoded string. ' (Note: The salt argument must be a string that also uses ' the same encoding.) enc = "hex" hexKey = crypt.Pbkdf1(pw,pwCharset,hashAlg,saltHex,iterationCount,outputBitLen,enc) Response.Write "<pre>" & Server.HTMLEncode( hexKey) & "</pre>" ' The output should have this value: ' DC19847E05C64D2FAF10EBFB4A3D2A2 %> </body> </html> | ||||
© 2000-2025 Chilkat Software, Inc. All Rights Reserved.