docs: def _make_auth(self, method, date, nonce, path, query={}, ctype='application/json'):
          '''
          Create the request signature to authenticate
  
          Args:
              - method (str): HTTP method
              - date (str): HTTP date header string
              - nonce (str): Cryptographic nonce
              - path (str): URL pathname
              - query (dict, default={}): URL query string in key-value pairs
              - ctype (str, default='application/json'): HTTP Content-Type
          '''
  
          query = urlencode(query)
  
          hmac_str = (method + '\n' + nonce + '\n' + date + '\n' + ctype + '\n' + path +
                      '\n' + query + '\n').lower().encode('utf-8')
  
          signature = base64.b64encode(hmac.new(self._secret_key, hmac_str, digestmod=hashlib.sha256).digest())
          auth = 'On ' + self._access_key.decode('utf-8') + ':HmacSHA256:' + signature.decode('utf-8')
  
          if self._logging:
              utils.log({
                  'query': query,
                  'hmac_str': hmac_str,
                  'signature': signature,
                  'auth': auth
              })
  
          return auth