जैसा कि सर्वविदित है, जर्मन आईबीएएन में देश कोड (डीई), दो अंकों का चेक अंक ( आईएसओ 7064 के अनुसार), बैंक कोड (8-अंकीय) और खाता संख्या (उप-खाता संख्या सहित) शामिल हैं। 10-अंक, लापता अंक अग्रणी शून्य से भरे हुए हैं) और इसलिए 22-अंकीय हैं। चेक अंक की गणना करने के लिए, तथाकथित बीबीएएन (बैंक कोड और खाता संख्या) के साथ-साथ जर्मनी के लिए संख्यात्मक देश कोड \(1314\) और चेक अंक \(00\) ) बनते हैं।
उदाहरण के लिए, बैंक कोड 21050170 और खाता संख्या 12345678 बीबीएएन 210501700012345678 लौटाते हैं, जो देश कोड और चेक अंक 0 के साथ विस्तारित होता है, फिर परिणाम \(x = 210501700012345678131400\) है, जहां चेक अंक अब है: \(98 - (x \mod 97)\) । यह कोई संयोग नहीं है कि इसे \(97\) से विभाजित किया जाता है। सबसे बड़ी संभव दो अंकों की अभाज्य संख्या के रूप में, यह गलत प्रविष्टियों को पहचानती है जैसे कि ट्रांसपोज़्ड अंक सबसे बड़ी संभावित संभावना के साथ। अब हम निम्नलिखित कथनों को प्रदर्शित करते हैं::
- एक मान्य IBAN के एक अंक को बदलने से एक अमान्य IBAN हो जाएगा।
- एक मान्य IBAN के दो भिन्न अंकों को बदलने से एक मान्य IBAN बन सकता है।
- यदि एक वैध IBAN की दो अलग-अलग स्थितियों को आपस में बदल दिया जाता है, तो एक अमान्य IBAN बन जाता है।
- यदि आप एक वैध आईबीएएन के दो अलग-अलग पदों को दो बार स्वैप करते हैं, तो एक वैध आईबीएएन परिणाम हो सकता है।
चलो $$A = DE P_1 P_2 N_1 N_2 N_3 N_4 N_5 N_6 N_7 N_8 N_9 N_{10} N_{11} N_{12} N_{13} N_{14} N_{15} N_{16} N_{17} N_{18}$$ एक वैध IBAN।
फिर $$A_B = N_1 N_2 N_3 N_4 N_5 N_6 N_7 N_8 N_9 N_{10} N_{11} N_{12} N_{13} N_{14} N_{15} N_{16} N_{17} N_{18} 131400$$ संबद्ध BBAN (संख्या-कोडित देश कोड DE और चेक अंक \(00\) के साथ विस्तारित)।
- अभी बदलें \(N_k\), है \(A_B^* = A_B + l \cdot 10^{24-k}\) साथ \(1 \leq k \leq 18\) तथा \((-1) \cdot N_k \leq l \leq 9-N_k \wedge l \neq 0\). साथ में \( P = 98 - (A_B \mod 97) \) लेकिन है \(P^* = 98 - \left((A_B + l \cdot 10^{24-k}) \mod 97\right) \). आम तौर पर लागू होता है \( a \equiv a' \mod m, b \equiv b' \mod m \): \(a + b \equiv a' + b' \mod m\). साथ में \(A_B \equiv R_1 \mod 97\) तथा \(l \cdot 10^{24-k} \equiv R_2 \mod 97\) है \( (A_B + l \cdot 10^{24-k}) \equiv R_1 + R_2 \mod 97 \). लेकिन अब यह है \( 0 < R_2 < 97 \) और इस तरह \( P^* = 98 - (R_1+R_2) \neq 98 - R_1 = P \) और इसीलिए \( P_1 \neq P_1^* \vee P_2 \neq P_2^* \). यह से एक अंक का केवल एक संभावित परिवर्तन छोड़ता है \( P \) को \( P^* \neq P \). यहाँ लेकिन \( N_k \) अपरिवर्तित रहता है, चेकसम बनाया जाता है \( P \neq P^* \).
- निम्नलिखित दो IBAN मान्य हैं:
$$\begin{align} A_1 = DE89207300\boldsymbol{\color{red}01}0012345674 \\ A_2 = DE89207300\boldsymbol{\color{red}98}0012345674 \end{align}$$ यह वह जगह है जहां आप लाभ उठाते हैं , कि हमने \(A_1\) में दो आसन्न अंकों को \ \(97\) बढ़ा दिया है। इसके अलावा, IBAN न केवल औपचारिक रूप से मान्य है, बल्कि अंतर्निहित बैंक कोड 20730001 और 20730098 वास्तव में मौजूद हैं। - हम पहले कोशिश करते हैं, \( N_{k_1} \) तथा \( N_{k_2} \) स्वैप करने के लिए। पहला है \( P = 98 - (A_B \mod 97) \) जैसा \(P^* = 98 - \left((A_B + l \cdot 10^{24-k_1} - l \cdot 10^{24-k_2}) \mod 97\right) \) साथ \(l = N_{k_2} - N_{k_1}\) तथा \(1 \leq k_1, k_2 \leq 18\). अब के कारण है
$$\begin{array} {|c|c|} \hline k & R = 10^{24-k} \mod 97 \\ \hline 1 & 56 \\ \hline 2 & 25 \\ \hline 3 & 51 \\ \hline 4 & 73 \\ \hline 5 & 17 \\ \hline 6 & 89 \\ \hline 7 & 38 \\ \hline 8 & 62 \\ \hline 9 & 45 \\ \hline 10 & 53 \\ \hline 11 & 15 \\ \hline 12 & 50 \\ \hline 13 & 5 \\ \hline 14 & 49 \\ \hline 15 & 34 \\ \hline 16 & 81 \\ \hline 17 & 76 \\ \hline 18 & 27 \\ \hline \end{array}$$
\( \forall k_1 \neq k_2 \in \left\{ 1, \ldots, 18 \right\} : R_{k_1} \neq R_{k_2}\). तो है \( P \neq P^* \). तो यह जांचना बाकी है कि \(P_n\) तथा \(N_k\) साथ \( 1 \leq n \leq 2 \) तथा \( 1 \leq k \leq 18 \) व्यापार। शायद \(P = 98 - (A_B \mod 97)), (R_1 = (A_B \mod 97)\), \(P^* = 98 - (A_B + (l \cdot 10^{24-k}) \mod 97)\), \(R_2 = (A_B + (l \cdot 10^{24-k}) \mod 97)\). जबसे हम \(A_B\) चारों ओर \(l \cdot 10^{24-k}\) हमें बदलना होगा \(P_1\) या \(P_2\) चारों ओर \(-l\), इसलिए \(P\) चारों ओर \(-10^m l\) साथ \(m \in \{0,1\}\) परिवर्तन: तब है \(P^* = 98 - R_2\) लेकिन \(P^* = P - 10^m l = 98 - R_1 - 10^m l\), फलस्वरूप \(R_2 = R_1 + 10^m l,\) और इस तरह
$$((A_B \mod 97) + (l \cdot 10^{24-k} \mod 97)) \mod 97 = (A_B \mod 97) + 10^m l$$ हालाँकि, यह समीकरण कभी पूरा नहीं होता है, जैसा कि निम्नलिखित लिपि से पता चलता है::See the Pen IBAN FORMULA CHECK by David Vielhuber (@vielhuber) on CodePen.
यह केवल का एक संभावित आदान-प्रदान छोड़ता है \(P_1\) तथा \(P_2\). यहाँ लेकिन \( N_k \) अपरिवर्तित रहता है, चेकसम बनाया जाता है \( P \neq P^* \). - निम्नलिखित दो IBAN मान्य हैं:
$$\begin{align*}A_1 = DE\boldsymbol{\color{red}8}\boldsymbol{\color{green}3}20220800\boldsymbol{\color{red}1}000000\boldsymbol{\color{green}0}00 \\ A_2 = DE\boldsymbol{\color{red}1}\boldsymbol{\color{green}0}20220800\boldsymbol{\color{red}8}000000\boldsymbol{\color{green}3}00\end{align*}$$ यहाँ भी, BIC 20220800 वास्तव में मौजूद है।