Commit 5f8b2663 authored by YannGarcia's avatar YannGarcia
Browse files

Move common function from AtsPki/lib to AtsSecurity/lib

parent a4bcc0ab
Loading
Loading
Loading
Loading
+1 −1
Original line number Original line Diff line number Diff line
@@ -10,7 +10,7 @@ module LibItsPki_EncdecDeclarations {
  import from EtsiTs103097Module language "ASN.1:1997" all;
  import from EtsiTs103097Module language "ASN.1:1997" all;
  import from EtsiTs102941TrustLists language "ASN.1:1997" all;
  import from EtsiTs102941TrustLists language "ASN.1:1997" all;


  // LibItsPki
  // LibItsSecurity
  import from LibItsSecurity_TypesAndValues all;
  import from LibItsSecurity_TypesAndValues all;


  external function fx_enc_EtsiTs102941Data(in EtsiTs102941MessagesCa.EtsiTs102941Data p_etsi_ts_102941_data) return bitstring
  external function fx_enc_EtsiTs102941Data(in EtsiTs102941MessagesCa.EtsiTs102941Data p_etsi_ts_102941_data) return bitstring
Compare f2b35013 to ace77678
Original line number Original line Diff line number Diff line
Subproject commit f2b350132723c80544f9e936eedebeba9ceb804b
Subproject commit ace776783be6ef49438d798d59e7346822df3b60
+0 −66
Original line number Original line Diff line number Diff line
@@ -765,72 +765,6 @@ module LibItsPki_Functions {
      return ''O;
      return ''O;
    } // End of function f_signWithEcdsa
    } // End of function f_signWithEcdsa


    function f_verifyEcdsa(
                           in octetstring p_tbs,
                           in octetstring p_issuer,
                           in Signature p_signature_,
                           in PublicVerificationKey p_verification_key
                           ) return boolean {
      var boolean v_ret := false;
      
      log(">>> f_verifyEcdsa: p_tbs= ", p_tbs);
      log(">>> f_verifyEcdsa: p_issuer= ", p_issuer);
      log(">>> f_verifyEcdsa: p_signature_= ", p_signature_);
      log(">>> f_verifyEcdsa: p_verification_key= ", p_verification_key);
      
      if (ischosen(p_verification_key.ecdsaNistP256)) {
        if (ischosen(p_verification_key.ecdsaNistP256.compressed_y_0)) {
          v_ret := f_verifyWithEcdsaNistp256WithSha256(
                                                       p_tbs,
                                                       p_issuer,
                                                       p_signature_.ecdsaNistP256Signature.rSig.x_only & p_signature_.ecdsaNistP256Signature.sSig,
                                                       p_verification_key.ecdsaNistP256.compressed_y_0,
                                                       0);
        } else {
          v_ret := f_verifyWithEcdsaNistp256WithSha256(
                                                       p_tbs,
                                                       p_issuer,
                                                       p_signature_.ecdsaNistP256Signature.rSig.x_only & p_signature_.ecdsaNistP256Signature.sSig,
                                                       p_verification_key.ecdsaNistP256.compressed_y_1,
                                                       1);
        }
      } else if (ischosen(p_verification_key.ecdsaBrainpoolP256r1)) {
        if (ischosen(p_verification_key.ecdsaBrainpoolP256r1.compressed_y_0)) {
          v_ret := f_verifyWithEcdsaBrainpoolp256r1WithSha256(
                                                              p_tbs,
                                                              p_issuer,
                                                              p_signature_.ecdsaBrainpoolP256r1Signature.rSig.x_only & p_signature_.ecdsaBrainpoolP256r1Signature.sSig,
                                                              p_verification_key.ecdsaBrainpoolP256r1.compressed_y_0,
                                                              0);
        } else {
          v_ret := f_verifyWithEcdsaBrainpoolp256r1WithSha256(
                                                              p_tbs,
                                                              p_issuer,
                                                              p_signature_.ecdsaBrainpoolP256r1Signature.rSig.x_only & p_signature_.ecdsaBrainpoolP256r1Signature.sSig,
                                                              p_verification_key.ecdsaBrainpoolP256r1.compressed_y_1,
                                                              1);
        }
      } else if (ischosen(p_verification_key.ecdsaBrainpoolP384r1)) {
        if (ischosen(p_verification_key.ecdsaBrainpoolP384r1.compressed_y_0)) {
          v_ret := f_verifyWithEcdsaBrainpoolp384r1WithSha384(
                                                              p_tbs,
                                                              p_issuer,
                                                              p_signature_.ecdsaBrainpoolP384r1Signature.rSig.x_only & p_signature_.ecdsaBrainpoolP384r1Signature.sSig,
                                                              p_verification_key.ecdsaBrainpoolP384r1.compressed_y_0,
                                                              0);
        } else {
          v_ret := f_verifyWithEcdsaBrainpoolp384r1WithSha384(
                                                              p_tbs,
                                                              p_issuer,
                                                              p_signature_.ecdsaBrainpoolP384r1Signature.rSig.x_only & p_signature_.ecdsaBrainpoolP384r1Signature.sSig,
                                                              p_verification_key.ecdsaBrainpoolP384r1.compressed_y_1,
                                                              1);
        }
      }
      
      return v_ret;
    } // End of function f_verifyEcdsa
    
    function f_http_send(
    function f_http_send(
                         in Headers p_headers,
                         in Headers p_headers,
                         in template (value) HttpMessage p_http_message
                         in template (value) HttpMessage p_http_message