docs: public String toTraceString()
    {
      if (_traceableString == null)
      {
        if (_password != null)
        {
          try
          {
            MessageDigest digester = MessageDigest.getInstance("SHA-256");
            digester.update(SALT);
  
            for(char c : _password)
            {
              digester.update( (byte)((c&0xFF00)>>8) );
              digester.update( (byte)((c&0x00FF))    );
            }
  
            byte[] hash = digester.digest();
            StringBuilder sb = new StringBuilder();
  
            // Throw away the high nibbles of each byte to increase security and reduce the
            // length of the trace string
            for (byte b:hash)
            {
              int i = b & 0x0F;
              sb.append(Integer.toHexString(i));
            }
            _traceableString = sb.toString();
          }
          catch(NoSuchAlgorithmException nsae)
          {
            // No FFDC Code needed - fall back on the toString implementation
            _traceableString = toString();
          }
        }
        else
        {
          _traceableString = ""; /* not just null :-) */
        }
      }
  
      return _traceableString;
    }