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
(Visual Basic 6.0) Poly1305 MACDemonstrates the Poly1305 Message Authentication Code. (Introduced in Chilkat v9.5.0.55) This example duplicates the results of Test Vector #4 for Poly1305 in RFC 7539.
' This example assumes the Chilkat API to have been previously unlocked. ' See Global Unlock Sample for sample code. Dim crypt As New ChilkatCrypt2 ' Set the MAC algorithm to poly1305 crypt.MacAlgorithm = "poly1305" ' EncodingMode specifies the encoding of the output for ' encryption, and the input for decryption. ' Valid modes are (case insensitive) "Base64", "modBase64", "Base32", "Base58", "UU", ' "QP" (for quoted-printable), "URL" (for url-encoding), "Hex", ' "Q", "B", "url_oauth", "url_rfc1738", "url_rfc2396", and "url_rfc3986". crypt.EncodingMode = "hex" ' Poly1305 always uses a 32-byte (256-bit) MAC key. Dim keyHex As String keyHex = "1c9240a5eb55d38af333888604f6b5f0473917c1402b80099dca5cbc207075c0" Dim success As Long success = crypt.SetMacKeyEncoded(keyHex,"hex") Dim plainText As String plainText = "'Twas brillig, and the slithy toves" & vbLf & "Did gyre and gimble in the wabe:" & vbLf & "All mimsy were the borogoves," & vbLf & "And the mome raths outgrabe." ' The computed tag should match the Tag shown below. ' (Note: hexidecimal encoding is case insensitive.) Dim encTag As String encTag = crypt.MacStringENC(plainText) Debug.Print encTag ' Here is the Test Vector data copied from RFC 7539 ' Test Vector #4: ' ============== ' ' One-time Poly1305 Key: ' 000 1c 92 40 a5 eb 55 d3 8a f3 33 88 86 04 f6 b5 f0 ..@..U...3...... ' 016 47 39 17 c1 40 2b 80 09 9d ca 5c bc 20 70 75 c0 G9..@+....\. pu. ' ' Text to MAC: ' 000 27 54 77 61 73 20 62 72 69 6c 6c 69 67 2c 20 61 'Twas brillig, a ' 016 6e 64 20 74 68 65 20 73 6c 69 74 68 79 20 74 6f nd the slithy to ' 032 76 65 73 0a 44 69 64 20 67 79 72 65 20 61 6e 64 ves.Did gyre and ' 048 20 67 69 6d 62 6c 65 20 69 6e 20 74 68 65 20 77 gimble in the w ' 064 61 62 65 3a 0a 41 6c 6c 20 6d 69 6d 73 79 20 77 abe:.All mimsy w ' 080 65 72 65 20 74 68 65 20 62 6f 72 6f 67 6f 76 65 ere the borogove ' 096 73 2c 0a 41 6e 64 20 74 68 65 20 6d 6f 6d 65 20 s,.And the mome ' 112 72 61 74 68 73 20 6f 75 74 67 72 61 62 65 2e raths outgrabe. ' ' Tag: ' 000 45 41 66 9a 7e aa ee 61 e7 08 dc 7c bc c5 eb 62 EAf.~..a...|... |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.