Knowledge Base

Search Knowledge Base

KB #240020: APIs returning empty or invalid values when encrypting or decrypting (SQL Server)

Type: Information
This article discusses why you may see the APIs returning empty or invalid values and what to do about it.
Additional Information:
For example, fn_n_initkey or fn_n_setkey may return zero (0), or fn_n_encrypt may return the input value unchanged. In addition, the sample SQL scripts will have no affect and will appear to not encrypt any data. This is not accompanied by an error message.

The most likely cause for this is a missing DLL.

On x64 Operating Systems, confirm the following files exist:

On x86 Operating Systems, confirm the following file exists:

If xp_sectools.dll/xp_sectoold64.dll exist in the proper directories, the other most likely reason is an improper installation of Encryptionizer for SQL Server, e.g.,

  • You copied files instead of running Setup.
  • You failed to reboot after installing.

Try reinstalling Encryptionizer and rebooting.

TIP: You can use the Stored Procedure sp_n_ready, defined in add_sp.sql, to determine whether the APIs are present and active. E.g.,

declare @nResult Int
exec @nResult = sp_n_ready
if @nResult >= 0 -- APIs active and available
else -- APIs not available