code: public boolean verify(String signatureVersion, String signatureAlgorithm, String primarySignature,
              String secondarySignature, String webHookPayload, String deliveryTimestamp) {
  
          // enforce versions supported by this implementation
          if (!SUPPORTED_VERSIONS.contains(signatureVersion)) {
              return false;
          }
  
          // enforce algorithms supported by this implementation
          BoxSignatureAlgorithm algorithm = BoxSignatureAlgorithm.byName(signatureAlgorithm);
          if (!SUPPORTED_ALGORITHMS.contains(algorithm)) {
              return false;
          }
  
          // check primary key signature if primary key exists
          if (this.primarySignatureKey != null && this.verify(this.primarySignatureKey, algorithm, primarySignature,
                  webHookPayload, deliveryTimestamp)) {
              return true;
          }
  
          // check secondary key signature if secondary key exists
          if (this.secondarySignatureKey != null && this.verify(this.secondarySignatureKey, algorithm, secondarySignature,
                  webHookPayload, deliveryTimestamp)) {
              return true;
          }
  
          // default strategy is false, to minimize security issues
          return false;
      }
docs: Verifies given web-hook information.
  
  @param signatureVersion
  signature version received from web-hook
  @param signatureAlgorithm
  signature algorithm received from web-hook
  @param primarySignature
  primary signature received from web-hook
  @param secondarySignature
  secondary signature received from web-hook
  @param webHookPayload
  payload of web-hook
  @param deliveryTimestamp
  devilery timestamp received from web-hook
  @return true, if given payload is successfully verified against primary and secondary signatures, false otherwise