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
(SQL Server) SHA3 Hash to Match Test VectorsThis example demonstrates SHA3 hashing to match some results published by other implementations. Note: This example requires Chilkat v9.5.0.83 or greater.
-- Important: See this note about string length limitations for strings returned by sp_OAMethod calls. -- CREATE PROCEDURE ChilkatSample AS BEGIN DECLARE @hr int -- Important: Do not use nvarchar(max). See the warning about using nvarchar(max). DECLARE @sTmp0 nvarchar(4000) -- This example requires the Chilkat API to have been previously unlocked. -- See Global Unlock Sample for sample code. -- This example requires Chilkat v9.5.0.83 or greater. 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 EXEC sp_OASetProperty @crypt, 'EncodingMode', 'hexlower' -- Input message: "abc", hashing the bytes 0x616263 -- SHA-3-224: e642824c3f8cf24a d09234ee7d3c766f c9a3a5168d0c94ad 73b46fdf -- SHA-3-256: 3a985da74fe225b2 045c172d6bd390bd 855f086e3e9d525b 46bfe24511431532 -- SHA-3-384: ec01498288516fc9 26459f58e2c6ad8d f9b473cb0fc08c25 96da7cf0e49be4b2 98d88cea927ac7f5 39f1edf228376d25 -- SHA-3-512" b751850b1a57168a 5693cd924b6b096e 08f621827444f70d 884f5d0240d2712e 10e116e9192af3c9 1a7ec57647e39340 57340b4cf408d5a5 6592f8274eec53f0 DECLARE @msg nvarchar(4000) SELECT @msg = 'abc' PRINT '---- abc ----' EXEC sp_OASetProperty @crypt, 'HashAlgorithm', 'sha3-224' EXEC sp_OAMethod @crypt, 'HashStringENC', @sTmp0 OUT, @msg PRINT @sTmp0 EXEC sp_OASetProperty @crypt, 'HashAlgorithm', 'sha3-256' EXEC sp_OAMethod @crypt, 'HashStringENC', @sTmp0 OUT, @msg PRINT @sTmp0 EXEC sp_OASetProperty @crypt, 'HashAlgorithm', 'sha3-384' EXEC sp_OAMethod @crypt, 'HashStringENC', @sTmp0 OUT, @msg PRINT @sTmp0 EXEC sp_OASetProperty @crypt, 'HashAlgorithm', 'sha3-512' EXEC sp_OAMethod @crypt, 'HashStringENC', @sTmp0 OUT, @msg PRINT @sTmp0 -- Input Message: "", hashing 0 bytes. -- SHA-3-224 6b4e03423667dbb7 3b6e15454f0eb1ab d4597f9a1b078e3f 5b5a6bc7 -- SHA-3-256 a7ffc6f8bf1ed766 51c14756a061d662 f580ff4de43b49fa 82d80a4b80f8434a -- SHA-3-384 0c63a75b845e4f7d 01107d852e4c2485 c51a50aaaa94fc61 995e71bbee983a2a c3713831264adb47 fb6bd1e058d5f004 -- SHA-3-512 a69f73cca23a9ac5 c8b567dc185a756e 97c982164fe25859 e0d1dcc1475c80a6 15b2123af1f5f94c 11e3e9402c3ac558 f500199d95b6d3e3 01758586281dcd26 SELECT @msg = '' PRINT '---- nothing ----' EXEC sp_OASetProperty @crypt, 'HashAlgorithm', 'sha3-224' EXEC sp_OAMethod @crypt, 'HashStringENC', @sTmp0 OUT, @msg PRINT @sTmp0 EXEC sp_OASetProperty @crypt, 'HashAlgorithm', 'sha3-256' EXEC sp_OAMethod @crypt, 'HashStringENC', @sTmp0 OUT, @msg PRINT @sTmp0 EXEC sp_OASetProperty @crypt, 'HashAlgorithm', 'sha3-384' EXEC sp_OAMethod @crypt, 'HashStringENC', @sTmp0 OUT, @msg PRINT @sTmp0 EXEC sp_OASetProperty @crypt, 'HashAlgorithm', 'sha3-512' EXEC sp_OAMethod @crypt, 'HashStringENC', @sTmp0 OUT, @msg PRINT @sTmp0 -- Input message: "abcdefghbcdefghicdefghijdefghijkefghijklfghijklmghijklmnhijklmnoijklmnopjklmnopqklmnopqrlmnopqrsmnopqrstnopqrstu" -- SHA-3-224 543e6868e1666c1a 643630df77367ae5 a62a85070a51c14c bf665cbc -- SHA-3-256 916f6061fe879741 ca6469b43971dfdb 28b1a32dc36cb325 4e812be27aad1d18 -- SHA-3-384 79407d3b5916b59c 3e30b09822974791 c313fb9ecc849e40 6f23592d04f625dc 8c709b98b43b3852 b337216179aa7fc7 -- SHA-3-512 afebb2ef542e6579 c50cad06d2e578f9 f8dd6881d7dc824d 26360feebf18a4fa 73e3261122948efc fd492e74e82e2189 ed0fb440d187f382 270cb455f21dd185 PRINT '---- abcdefg... ----' SELECT @msg = 'abcdefghbcdefghicdefghijdefghijkefghijklfghijklmghijklmnhijklmnoijklmnopjklmnopqklmnopqrlmnopqrsmnopqrstnopqrstu' EXEC sp_OASetProperty @crypt, 'HashAlgorithm', 'sha3-224' EXEC sp_OAMethod @crypt, 'HashStringENC', @sTmp0 OUT, @msg PRINT @sTmp0 EXEC sp_OASetProperty @crypt, 'HashAlgorithm', 'sha3-256' EXEC sp_OAMethod @crypt, 'HashStringENC', @sTmp0 OUT, @msg PRINT @sTmp0 EXEC sp_OASetProperty @crypt, 'HashAlgorithm', 'sha3-384' EXEC sp_OAMethod @crypt, 'HashStringENC', @sTmp0 OUT, @msg PRINT @sTmp0 EXEC sp_OASetProperty @crypt, 'HashAlgorithm', 'sha3-512' EXEC sp_OAMethod @crypt, 'HashStringENC', @sTmp0 OUT, @msg PRINT @sTmp0 EXEC @hr = sp_OADestroy @crypt END GO |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.