LCOV - code coverage report
Current view: top level - ballet/zksdk/instructions - fd_zksdk_batched_range_proof_u64.c (source / functions) Hit Total Coverage
Test: cov.lcov Lines: 0 29 0.0 %
Date: 2026-03-31 06:22:16 Functions: 0 1 0.0 %

          Line data    Source code
       1             : #include "../fd_zksdk_private.h"
       2             : 
       3             : /* https://github.com/solana-program/zk-elgamal-proof/blob/zk-sdk%40v5.0.1/zk-sdk/src/zk_elgamal_proof_program/proof_data/batched_range_proof/batched_range_proof_u64.rs#L82 */
       4             : int
       5           0 : fd_zksdk_instr_verify_proof_batched_range_proof_u64( void const * _context, void const * _proof ) {
       6           0 :   fd_zksdk_transcript_t transcript[1];
       7           0 :   fd_zksdk_batched_range_proof_context_t const * context = _context;
       8           0 :   fd_zksdk_range_proof_u64_proof_t const *       proof   = _proof;
       9             : 
      10             :   /* https://github.com/solana-program/zk-elgamal-proof/blob/zk-sdk%40v5.0.1/zk-sdk/src/zk_elgamal_proof_program/proof_data/batched_range_proof/batched_range_proof_u64.rs#L83 */
      11           0 :   uchar batch_len = 0;
      12           0 :   int val = batched_range_proof_context_try_into( &batch_len, context );
      13           0 :   if( FD_UNLIKELY( val != FD_ZKSDK_VERIFY_PROOF_SUCCESS ) ) {
      14           0 :     return val;
      15           0 :   }
      16             : 
      17             :   /* https://github.com/solana-program/zk-elgamal-proof/blob/zk-sdk%40v5.0.1/zk-sdk/src/zk_elgamal_proof_program/proof_data/batched_range_proof/batched_range_proof_u64.rs#L86-L88
      18             :      This can never happen: `commitments: [PodPedersenCommitment; MAX_COMMITMENTS]` */
      19             : 
      20             :   /* https://github.com/solana-program/zk-elgamal-proof/blob/zk-sdk%40v5.0.1/zk-sdk/src/zk_elgamal_proof_program/proof_data/batched_range_proof/batched_range_proof_u64.rs#L90-L98
      21             :      We validate this inside fd_rangeproofs_verify() */
      22             : 
      23             :   /* https://github.com/solana-program/zk-elgamal-proof/blob/zk-sdk%40v5.0.1/zk-sdk/src/zk_elgamal_proof_program/proof_data/batched_range_proof/batched_range_proof_u64.rs#L100 */
      24           0 :   batched_range_proof_context_new_transcript( transcript, context );
      25             : 
      26             :   /* https://github.com/solana-program/zk-elgamal-proof/blob/zk-sdk%40v5.0.1/zk-sdk/src/zk_elgamal_proof_program/proof_data/batched_range_proof/batched_range_proof_u64.rs#L103-L105 */
      27           0 :   const fd_rangeproofs_ipp_proof_t ipp_proof = {
      28           0 :     6,
      29           0 :     proof->ipp_lr_vec,
      30           0 :     proof->ipp_a,
      31           0 :     proof->ipp_b,
      32           0 :   };
      33           0 :   int res = fd_rangeproofs_verify(
      34           0 :     &proof->range_proof,
      35           0 :     &ipp_proof,
      36           0 :     context->commitments,
      37           0 :     context->bit_lengths,
      38           0 :     batch_len,
      39           0 :     transcript
      40           0 :   );
      41             : 
      42           0 :   if( FD_LIKELY( res == FD_RANGEPROOFS_SUCCESS ) ) {
      43           0 :     return FD_ZKSDK_VERIFY_PROOF_SUCCESS;
      44           0 :   }
      45           0 :   return FD_ZKSDK_VERIFY_PROOF_ERROR;
      46           0 : }

Generated by: LCOV version 1.14