.UTIL COMPUTE HASH

This subroutine computes the SHA-2 hash value for the given string. APPX 5.4.5 & higher only.


Usage:

*     PASS         <hash value returned>      FIELD            SHARE? Y
*     PASS         <hash type>                FIELD            SHARE? N
*     PASS         <Data to hash>             FIELD            SHARE? N
*     GOSUB    --- .UTIL COMPUTE HASH
      *        Check for errors
*     IF       --- .UTIL COMPUTE HASH         NE

Description:

This subroutine computes the SHA-2 hash value for the given string. The first 2 parameters are required and if any required parameters are missing, the subroutine will CANCEL.

<hash value returned> is the computed value returned. This must be passed with Share="Y" to return a value. It should be an alpha field at least 64 or 128 bytes in length, depending on the <hash type> requested (Required).

<hash type> is the type of hash value you want returned (Required):

  • BIN for a 64 byte binary value
  • UC for a 128 byte readable value, upper case
  • LC for a 128 byte readable value, lower case
<Data to hash> is the string to be hashed (32k max size).

Comments:

Read what other users have said about this page or add your own comments.

Editorial comment: This API provides a great way to overcome the APPX 256-character key length limitation. If your desired key is a field longer than 256 (such as a server file path or a group of many fields), or if it will be longer than 256 when the primary key is appended, pass the desired key value into this subroutine and use the resulting 128-byte value as your guaranteed unique key.

-- Al Kalter - 2016-11-07

-- JeanNeron - 2012-03-08

Edit | Attach | Watch | Print version | History: r4 < r3 < r2 < r1 | Backlinks | Raw View | Raw edit | More topic actions...
Topic revision: r3 - 2017-11-21 - JeanNeron
 
  • Edit
  • Attach
This site is powered by the TWiki collaboration platform Powered by PerlCopyright © 2008-2024 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback