Does snarl encrypt its communication with the server?

Hi,
I usually execute my sparql queries as simple as this pseudo-code below.

snarlTemplate.execute(
        connection -> {
          SelectQueryResult result = null;
          try {
            // I'm doing usual stuff here like preparing my query, execute it and getting the return the return it
          } catch (StardogException e) {
            log.error("Error sending SELECT query to Stardog", e);
            throw new RuntimeException(e);
          } catch (QueryExecutionFailure e) {
            log.error("Error evaluating SELECT SPARQL query", e);
            throw new RuntimeException(e);
          } finally {
            if (result != null) {
              try {
                result.close();
              } catch (QueryExecutionFailure e) {
                log.error(e.toString());
              }
            }
          }
        });

I was doing some debugging and profiling recently, it seemed to me that snarl sends each query to the stardog server after doing some encryption and results are somehow returned in an encrypted way. I thought it might be a good idea to ask it here. Does snarl do such sort of encryption? if yes, please tell me more about it. Thank you.

Hi,

There's no encryption being done unless you are using SSL as per the docs. What you see as encrypted data is likely the binary SPARQL results format that we default to for transmission, which the stardog client knows how to parse.

1 Like