## 2 Information Reconciliation in QKD Post-Processing
### Rate-Adaptive LDPC Codes and Efficiency Metric of Information Reconciliation
Importantly, the relationship between the puncturing and shortening parameters is defined by \(n_{d}=n_{p}+n_{s}\), where \(n_{d}\) is the total number of punctured and shortened bits used to determine the values for \(n_{p}\) and \(n_{s}\). Consequently, both \(n_{p}\) and \(n_{s}\) can be derived from Equation (6) by considering \(\eta_{IR}^{(base)}\) and \(H(q_{est})\), as  
\[n_{p}=\Big{[}M-[(N-n_{d})\cdot\eta_{IR}^{(base)}\cdot H(q_{est})]\Big{]};\ n_{s}=n_{d}-n_{p}, \tag{16}\]  
where \(\lceil\dots\rceil\) is the ceiling function rounding \(n_{p}\) up to the nearest integer, and both \(n_{p}\) and \(n_{s}\) must be the positive value. If either \(n_{p}\) or \(n_{s}\) is calculated to be negative, the selection of the mother code rate is decreased to the next available \(R_{C}^{\ 0}\) in the set \(\mathcal{R}\). The values of \(n_{p}\) and \(n_{s}\) are then recalculated using this newly selected \(R_{C}^{\ 0}\) according to Equation (16), ensuring both \(n_{p}\) and \(n_{s}\) are positive. After successfully determining \(n_{p}\) and \(n_{s}\), specific positions for puncturing (\(p\)) and shortening (\(s\)) are identified and used to modify the original parity-check matrix \(\mathbf{H}\) of the selected \(R_{C}^{\ 0}\). The modified matrix (\(\mathbf{H}_{n_{p,s}}\)) is then employed in subsequent syndrome encoding and decoding processes. **Syndrome encoding:**_[PERSON]_ and _[PERSON]_ employ the modified matrix (\(\mathbf{H}_{n_{p,s}}\)) of \(R_{C}^{\ (opt)}\) to encode their sifted keys \(K_{s\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\! \!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\! decoding failure feedback is announced, and the protocol returns to step 3.1 to adjust the new code rate (\(R_{C}^{(new)}\)). In this case, the initial metric for information reconciliation is incremented by the factor \(\delta\), expressed as \(\eta_{\text{IR}}^{(updated)}=\eta_{\text{IR}}^{(base)}+\delta\). This updated \(\eta_{\text{IR}}^{(updated)}\) is subsequently employed to determine the new values for \(n_{p}\) and \(n_{s}\) with respect to \(R_{C}^{(new)}\). The adjusted rate \(R_{C}^{(new)}\) is then applied in the re-processing of syndrome encoding and decoding. After the successful decoding, both _[PERSON]_ and _[PERSON]_ exclude the bit positions that are affected by puncturing and shortening, as represented by \(p\cup s\). 4. **Polynomial-based hash subblock confirmation**: In the confirmation step, a polynomial-based hash function [26], a form of universal hashing, is employed to verify the equality of _[PERSON]_ and _[PERSON]_'s reconciled keys \(K_{\text{rec}}^{A}\) and \(K_{\text{rec}}^{B}\). To mitigate the risk of discarding the entire key due to a confirmation failure, both parties adopt a subblock verification approach by partitioning the reconciled keys into subblocks of size \(N_{sb}\). Subsequently, a polynomial hash value is generated for each subblock to verify its integrity. This process is divided into the following steps: **(4.1)**: **Dividing the reconciled keys into subblocks**: _[PERSON]_ and _[PERSON]_ update the sizes of their reconciled keys \(N_{rec}\) and then divide \(K_{\text{rec}}^{A}\) and \(K_{\text{rec}}^{B}\) into subblocks of size \(N_{sb}\). Each subblock is referred to as the \(i^{th}\) subblock, where \(i\) ranges from \(1\) to \(m\), and \(m=N/\,N_{sb}\). The partition of the reconciled keys in each subblock of _[PERSON]_ and _Bob_ (\(SB_{i}^{(A/B)}\)) is defined as: \[SB_{i}^{(A/B)}=\Big{\{}k_{(i-1)\ \times\ N_{sb}+1}^{(A/B)},\ k_{(i-1)\ \times\ N_{sb}+2}^{(A/B)},\ \ldots\,\ k_{i\ \times\ N_{sb}}^{(A/B)}\Big{\}}.\] (18) Afterward, _[PERSON]_ and _[PERSON]_ have corresponding subblocks of their reconciled keys, denoted as \(SB_{i}^{\ A}\) and \(SB_{i}^{\ B}\), respectively. 5.