Chilkat Examples

ChilkatHOMEAndroid™Classic ASPCC++C#Mono C#.NET Core C#C# UWP/WinRTDataFlexDelphi ActiveXDelphi DLLVisual FoxProJavaLianjaMFCObjective-CPerlPHP ActiveXPHP ExtensionPowerBuilderPowerShellPureBasicPythonRubySQL ServerSwiftTclUnicode CUnicode C++Visual Basic 6.0VB.NETVB.NET UWP/WinRTVBScriptXojo PluginNode.jsExcel

SQL Server Examples

ASN.1
Amazon S3
Amazon S3 (new)
Amazon SES
Amazon SNS
Amazon SQS
Async
Azure Cloud Storage
Azure Service Bus
Bounced Email
CSR
CSV
Certificates
Compression
DKIM / DomainKey
DSA
Diffie-Hellman
Digital Signatures
Dropbox
ECC
Email Object
Encryption
FTP
Facebook
Firebase
GeoOp
Google APIs
Google Cloud Storage
Google Drive
Gzip
HTML-to-XML/Text
HTTP
HTTP Misc
IMAP

JSON
JSON Web Encryption (JWE)
JSON Web Signatures (JWS)
JSON Web Token (JWT)
Java KeyStore (JKS)
MHT / HTML Email
MIME
NTLM
OAuth1
OAuth2
OpenSSL
PEM
PFX/P12
POP3
PRNG
PayPal
Peoplevox
QuickBooks
REST
RSA Encryption
SCP
SFTP
SMTP
SSH
SSH Key
SSH Tunnel
Socket/SSL/TLS
Spider
Stream
Stripe
Tar Archive
Twitter
XML
XMP
Xero
Zip
curl

 

 

 

(SQL Server) PBKDF2 - Derive Key from Password

Demonstrates how to derive a symmetric encryption key from a password using PBKDF2. This example matches the results found at this URL: http://www.di-mgt.com.au/cryptoKDFs.html#examplespbkdf

Chilkat ActiveX Downloads

ActiveX for 32-bit and 64-bit Windows

CREATE PROCEDURE ChilkatSample
AS
BEGIN
    DECLARE @hr int
    DECLARE @sTmp0 nvarchar(4000)
    DECLARE @crypt int
    EXEC @hr = sp_OACreate 'Chilkat_9_5_0.Crypt2', @crypt OUT
    IF @hr <> 0
    BEGIN
        PRINT 'Failed to create ActiveX component'
        RETURN
    END

    DECLARE @success int
    EXEC sp_OAMethod @crypt, 'UnlockComponent', @success OUT, 'Anything for 30-day trial'
    IF STR(@success) <> 1
      BEGIN
        EXEC sp_OAGetProperty @crypt, 'LastErrorText', @sTmp0 OUT
        PRINT @sTmp0
        EXEC @hr = sp_OADestroy @crypt
        RETURN
      END

    DECLARE @hexKey nvarchar(4000)

    --  http://www.di-mgt.com.au/cryptoKDFs.html#examplespbkdf

    DECLARE @pw nvarchar(4000)
    SELECT @pw = 'password'
    DECLARE @pwCharset nvarchar(4000)
    SELECT @pwCharset = 'ansi'
    --  Hash algorithms may be: sha1, md2, md5, etc.
    DECLARE @hashAlg nvarchar(4000)
    SELECT @hashAlg = 'sha1'
    --  The salt should be 8 bytes:
    DECLARE @saltHex nvarchar(4000)
    SELECT @saltHex = '78578E5A5D63CB06'
    DECLARE @iterationCount int
    SELECT @iterationCount = 2048
    --  Derive a 192-bit key from the password.
    DECLARE @outputBitLen int
    SELECT @outputBitLen = 192

    --  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.)
    DECLARE @enc nvarchar(4000)
    SELECT @enc = 'hex'

    EXEC sp_OAMethod @crypt, 'Pbkdf2', @hexKey OUT, @pw, @pwCharset, @hashAlg, @saltHex, STR(@iterationCount), STR(@outputBitLen), @enc


    PRINT @hexKey

    --  The output should have this value:
    --  BFDE6BE94DF7E11DD409BCE20A0255EC327CB936FFE93643

    EXEC @hr = sp_OADestroy @crypt


END
GO

 

© 2000-2016 Chilkat Software, Inc. All Rights Reserved.