|  | 
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
| (SQL Server) Encrypting or Hashing Hex or Base64 Encoded Binary DataThis example demonstrates how to encrypt binary input data that is in an encoded string form, such as "hex" or "base64". The goal is to do the following: 
 
 -- Important: See this note about string length limitations for strings returned by sp_OAMethod calls. -- CREATE PROCEDURE ChilkatSample AS BEGIN DECLARE @hr int -- This example requires the Chilkat API to have been previously unlocked. -- See Global Unlock Sample for sample code. DECLARE @crypt int -- Use "Chilkat_9_5_0.Crypt2" for versions of Chilkat < 10.0.0 EXEC @hr = sp_OACreate 'Chilkat.Crypt2', @crypt OUT IF @hr <> 0 BEGIN PRINT 'Failed to create ActiveX component' RETURN END DECLARE @sHexBinary nvarchar(4000) SELECT @sHexBinary = '9D4203A3FF07791A1CD7FB0075D179E14E8B9DBEBFDE24F6D04613B8397B328E' -- The input is hex-encoded binary data, so set the Charset property = "hex" -- The Charset can also be "base64". EXEC sp_OASetProperty @crypt, 'Charset', 'hex' -- The output will be encoded to hex also. EXEC sp_OASetProperty @crypt, 'EncodingMode', 'hex' EXEC sp_OASetProperty @crypt, 'HashAlgorithm', 'ripemd160' DECLARE @hash nvarchar(4000) EXEC sp_OAMethod @crypt, 'HashStringENC', @hash OUT, @sHexBinary PRINT 'RIPEMD160: ' + @hash -- Important: This example requires Chilkat v9.5.0.49 or greater to work correctly. -- The same can be accomplished w/ encryption: EXEC sp_OASetProperty @crypt, 'CryptAlgorithm', 'aes' EXEC sp_OASetProperty @crypt, 'CipherMode', 'cbc' EXEC sp_OASetProperty @crypt, 'KeyLength', 256 EXEC sp_OASetProperty @crypt, 'PaddingScheme', 0 EXEC sp_OASetProperty @crypt, 'Charset', 'hex' EXEC sp_OASetProperty @crypt, 'EncodingMode', 'hex' DECLARE @ivHex nvarchar(4000) SELECT @ivHex = '000102030405060708090A0B0C0D0E0F' EXEC sp_OAMethod @crypt, 'SetEncodedIV', NULL, @ivHex, 'hex' DECLARE @keyHex nvarchar(4000) SELECT @keyHex = '000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F' EXEC sp_OAMethod @crypt, 'SetEncodedKey', NULL, @keyHex, 'hex' DECLARE @encStr nvarchar(4000) EXEC sp_OAMethod @crypt, 'EncryptStringENC', @encStr OUT, @sHexBinary PRINT @encStr -- Important: This example requires Chilkat v9.5.0.49 or greater to work correctly. DECLARE @decStr nvarchar(4000) EXEC sp_OAMethod @crypt, 'DecryptStringENC', @decStr OUT, @encStr PRINT @decStr EXEC @hr = sp_OADestroy @crypt END GO | ||||
© 2000-2025 Chilkat Software, Inc. All Rights Reserved.