MMH-Badger MAC
ಬ್ಯಾಡ್ಜರ್ ಸಾರ್ವತ್ರಿಕ ಹ್ಯಾಶಿಂಗ್ ಕಲ್ಪನೆಯನ್ನು ಆಧರಿಸಿದ ಸಂದೇಶ ದೃಢೀಕರಣ ಸಂಕೇತವಾಗಿದೆ (MAC) ಮತ್ತು ಇದನ್ನು ಬೋಸ್ಗಾರ್ಡ್, ಸ್ಕಾವೆನಿಯಸ್, ಪೆಡೆರ್ಸನ್, ಕ್ರಿಸ್ಟೆನ್ಸನ್ ಮತ್ತು ಜೆನ್ನರ್ ಅಭಿವೃದ್ಧಿಪಡಿಸಿದ್ದಾರೆ. ಇ. ಎನ್. ಎಚ್. ಅನ್ನು ಅನ್ವಯಿಸಿದ ನಂತರ ε-ಅತ್ಯಂತ ಬಲವಾದ ಸಾರ್ವತ್ರಿಕ (ಎ. ಎಸ್. ಯು.) ಹ್ಯಾಶ್ ಕಾರ್ಯ ಕುಟುಂಬವನ್ನು ಬಳಸಿಕೊಂಡು α-ಸಾರ್ವತ್ರಿಕ ಹ್ಯಾಶ್ ಕುಟುಂಬ ಎಂ. ಎಂ. ಎಚ್. ಅನ್ನು ಬಲಪಡಿಸುವ ಮೂಲಕ ಇದನ್ನು ನಿರ್ಮಿಸಲಾಗಿದೆ (ಕೆಳಗೆ ನೋಡಿ), ಅಲ್ಲಿ ε ನ ಮೌಲ್ಯವು. ಬ್ಯಾಡ್ಜರ್ ಸಾರ್ವತ್ರಿಕ ಹ್ಯಾಶ್ ಕಾರ್ಯ ವಿಧಾನವನ್ನು ಆಧರಿಸಿದ MAC ಕಾರ್ಯವಾಗಿರುವುದರಿಂದ, ಬ್ಯಾಡ್ಜರ್ನ ಭದ್ರತೆಗೆ ಅಗತ್ಯವಿರುವ ಷರತ್ತುಗಳು UMACಯಂತಹ ಇತರ ಸಾರ್ವತ್ರಿಕ ಹ್ಯಾಶ್ ಕಾರ್ಯಗಳಿಗೆ ಇರುವ ಷರತ್ತುಗಳಂತೆಯೇ ಇರುತ್ತವೆ. ಬ್ಯಾಡ್ಜರ್ MAC ಬಿಟ್ಗಳವರೆಗಿನ ಉದ್ದದ ಸಂದೇಶವನ್ನು ಪ್ರಕ್ರಿಯೆಗೊಳಿಸುತ್ತದೆ ಮತ್ತು ಉದ್ದದ ಬಿಟ್ಗಳ ದೃಢೀಕರಣ ಟ್ಯಾಗ್ ಅನ್ನು ಹಿಂದಿರುಗಿಸುತ್ತದೆ. ಭದ್ರತಾ ಅಗತ್ಯಗಳಿಗೆ ಅನುಗುಣವಾಗಿ, ಬ್ಯಾಡ್ಜರ್ನಲ್ಲಿನ ಸಮಾನಾಂತರ ಹ್ಯಾಶ್ ಮರಗಳ ಸಂಖ್ಯೆಯ ಮೌಲ್ಯವನ್ನು ಬಳಕೆದಾರರು ಆಯ್ಕೆ ಮಾಡಬಹುದು. ಒಬ್ಬರು ಯು ನ ದೊಡ್ಡ ಮೌಲ್ಯಗಳನ್ನು ಆಯ್ಕೆ ಮಾಡಬಹುದು, ಆದರೆ ಆ ಮೌಲ್ಯಗಳು ಎಂ. ಎ. ಸಿ ಯ ಭದ್ರತೆಯ ಮೇಲೆ ಮತ್ತಷ್ಟು ಪ್ರಭಾವ ಬೀರುವುದಿಲ್ಲ. ಅಲ್ಗಾರಿದಮ್ 128-ಬಿಟ್ ಕೀಲಿಯನ್ನು ಬಳಸುತ್ತದೆ ಮತ್ತು ಈ ಕೀಲಿಯ ಅಡಿಯಲ್ಲಿ ಸಂಸ್ಕರಿಸಬೇಕಾದ ಸೀಮಿತ ಸಂದೇಶದ ಉದ್ದವಾಗಿದೆ. ಬ್ಯಾಡ್ಜರ್ ಅಲ್ಗಾರಿದಮ್ ಅನ್ನು ನಿರ್ದಿಷ್ಟ ಕೀಲಿಯ ಅಡಿಯಲ್ಲಿ ಚಲಾಯಿಸಲು ಕೀ ಸೆಟಪ್ ಅನ್ನು ಪ್ರತಿ ಕೀಲಿಗೆ ಒಮ್ಮೆ ಮಾತ್ರ ಚಲಾಯಿಸಬೇಕಾಗುತ್ತದೆ, ಏಕೆಂದರೆ MAC ಯ ಪರಿಣಾಮವಾಗಿ ಬರುವ ಆಂತರಿಕ ಸ್ಥಿತಿಯನ್ನು ನಂತರ ಸಂಸ್ಕರಿಸಲಾಗುವ ಯಾವುದೇ ಸಂದೇಶದೊಂದಿಗೆ ಬಳಸಲು ಉಳಿಸಬಹುದು. ಹೊಸ ಹ್ಯಾಶ್ ಕುಟುಂಬಗಳನ್ನು ಪಡೆಯಲು ಇ. ಎನ್. ಎಚ್. ಹ್ಯಾಶ್ ಕುಟುಂಬಗಳನ್ನು ಸಂಯೋಜಿಸಬಹುದು. ε-AU, ε-AV, ಮತ್ತು ε-AV ಕುಟುಂಬಗಳಿಗೆ, ಎರಡನೆಯದು ಮೊದಲನೆಯದರಲ್ಲಿದೆ. ಉದಾಹರಣೆಗೆ, ಎ. ಡಿ. ಯು ಕುಟುಂಬವೂ ಸಹ ಎ. ಯು ಕುಟುಂಬವಾಗಿದೆ, ಎ. ಡಿ. ಯು ಕೂಡ ಎ. ಡಿ. ಯು ಕುಟುಂಬವಾಗಿದೆ, ಇತ್ಯಾದಿ. ಮತ್ತೊಂದೆಡೆ, ಕಾರ್ಯಕ್ಷಮತೆಯ ಲಾಭವನ್ನು ತಲುಪುವವರೆಗೆ, ಬಲವಾದ ಕುಟುಂಬವನ್ನು ದುರ್ಬಲ ಕುಟುಂಬವನ್ನಾಗಿ ಮಾಡಬಹುದು. α-ಯುನಿವರ್ಸಲ್ ಹ್ಯಾಶ್ ಕಾರ್ಯವನ್ನು ಯೂನಿವರ್ಸಲ್ ಹ್ಯಾಶ್ ಕಾರ್ಯಗಳಿಗೆ ಕಡಿಮೆ ಮಾಡುವ ವಿಧಾನವನ್ನು ಈ ಕೆಳಗಿನವುಗಳಲ್ಲಿ ವಿವರಿಸಲಾಗಿದೆ. ಪ್ರಮೇಯ 2 ಒಂದು ಸೆಟ್ A ಯಿಂದ ಸೆಟ್ B ಗೆ ε-AδU ಹ್ಯಾಶ್ ಕುಟುಂಬವಾಗಿರಲಿ. ಒಂದು ಸಂದೇಶವನ್ನು ಪರಿಗಣಿಸಿ. ನಂತರ ಕಾರ್ಯಗಳನ್ನು ಒಳಗೊಂಡಿರುವ H ಕುಟುಂಬವು ε-AU ಆಗಿದೆ. ಹಾಗಿದ್ದಲ್ಲಿ, ಗರಿಷ್ಠ ε ಆಗಿರುವ ಸಂಭವನೀಯತೆಯು, ε-A ಎಂದಾಗಿರುವುದರಿಂದ, ಒಂದು ε-ωU ಕುಟುಂಬವಾಗಿದೆ. ಆದರೆ, ಆಗ ಸಂಭವನೀಯತೆಯು ಕ್ಷುಲ್ಲಕವಾಗಿ 0 ಆಗಿರುತ್ತದೆ. ಪ್ರಮೇಯ 2ರ ಪುರಾವೆಯನ್ನು ದಿ ಇ. ಎನ್. ಎಚ್.-ಫ್ಯಾಮಿಲಿಯಲ್ಲಿ ವಿವರಿಸಲಾಗಿದೆ, ಇದನ್ನು ಸಾರ್ವತ್ರಿಕ ಹ್ಯಾಶ್ ಕುಟುಂಬ ಎನ್. ಎಚ್. ಅನ್ನು ಆಧರಿಸಿ ನಿರ್ಮಿಸಲಾಗಿದೆ (ಇದನ್ನು ಯು. ಎಂ. ಎ. ಸಿ. ಯಲ್ಲಿಯೂ ಬಳಸಲಾಗುತ್ತದೆ): ಎಲ್ಲಿ "ಎಂದರೆ 'ಅಡಿಷನ್ ಮಾಡ್ಯುಲೋ', ಮತ್ತು. ಇದು-ಎ-ಡಿಎಂಯು ಹ್ಯಾಶ್ ಕುಟುಂಬವಾಗಿದೆ. ಲೆಮ್ಮಾ 1 ಎನ್. ಎಚ್. ನ ಈ ಕೆಳಗಿನ ಆವೃತ್ತಿಯು-ಎ. ಡಿ. ಯು.: ಡಬ್ಲ್ಯೂ = 32 ಅನ್ನು ಆಯ್ಕೆ ಮಾಡಿ ಮತ್ತು ಪ್ರಮೇಯ 1 ಅನ್ನು ಅನ್ವಯಿಸುವುದರಿಂದ, ಒಬ್ಬರು-ಎ. ಯು. ಕಾರ್ಯ ಕುಟುಂಬ ಇ. ಎನ್. ಎಚ್. ಅನ್ನು ಪಡೆಯಬಹುದು, ಇದು ಬ್ಯಾಡ್ಜರ್ ಎಂ. ಎ. ಸಿ. ಯ ಮೂಲ ಬಿಲ್ಡಿಂಗ್ ಬ್ಲಾಕ್ ಆಗಿರುತ್ತದೆಃ ಇಲ್ಲಿ ಎಲ್ಲಾ ಆರ್ಗ್ಯುಮೆಂಟ್ಗಳು 32-ಬಿಟ್ ಉದ್ದವಿರುತ್ತವೆ ಮತ್ತು ಔಟ್ಪುಟ್ 64-ಬಿಟ್ಗಳನ್ನು ಹೊಂದಿರುತ್ತದೆ. ಬಲವಾದ ಸಾರ್ವತ್ರಿಕತೆಯ ಹ್ಯಾಶ್ ಕುಟುಂಬವನ್ನು ಬಳಸಿಕೊಂಡು ನಿರ್ಮಾಣ ಬ್ಯಾಡ್ಜರ್ ಅನ್ನು ನಿರ್ಮಿಸಲಾಗಿದೆ ಮತ್ತು ಯಾವುದೇ ಗಾತ್ರದ ಸಂದೇಶಗಳನ್ನು ನಿಗದಿತ ಗಾತ್ರಕ್ಕೆ ಹ್ಯಾಶ್ ಮಾಡಲು-ಎಯು ಸಾರ್ವತ್ರಿಕ ಕಾರ್ಯ ಕುಟುಂಬ ಎಚ್ * ಅನ್ನು ಬಳಸಲಾಗುತ್ತದೆ ಮತ್ತು ಒಟ್ಟಾರೆ ನಿರ್ಮಾಣದ ಬಲವಾದ ಸಾರ್ವತ್ರಿಕತೆಯನ್ನು ಖಾತರಿಪಡಿಸಲು-ಎ. ಎಸ್. ಯು ಕಾರ್ಯ ಕುಟುಂಬ ಎಫ್ ಅನ್ನು ಬಳಸಲಾಗುತ್ತದೆ ಎಂದು ವಿವರಿಸಬಹುದು. NH ಮತ್ತು ENH ಅನ್ನು H * ಅನ್ನು ನಿರ್ಮಿಸಲು ಬಳಸಲಾಗುತ್ತದೆ. ಕಾರ್ಯ ಕುಟುಂಬದ ಗರಿಷ್ಠ ಇನ್ಪುಟ್ ಗಾತ್ರವು H * ಆಗಿದೆ ಮತ್ತು ಔಟ್ಪುಟ್ ಗಾತ್ರವು 128 ಬಿಟ್ಗಳಾಗಿದ್ದು, ಸಂದೇಶ ಮತ್ತು ಹ್ಯಾಶ್ಗಾಗಿ ತಲಾ 64 ಬಿಟ್ಗಳಾಗಿ ವಿಂಗಡಿಸಲಾಗಿದೆ. H *-ಕ್ರಿಯೆಯ ಘರ್ಷಣೆ ಸಂಭವನೀಯತೆಯು ನಿಂದ ಹಿಡಿದು ವರೆಗೆ ಇರುತ್ತದೆ. ಎಫ್ ಕುಟುಂಬದ ಬಲವಾದ ಸಾರ್ವತ್ರಿಕ ಕಾರ್ಯವನ್ನು ನಿರ್ಮಿಸಲು, ಎಂಎಂಎಚ್ * ಯುನಿವರ್ಸಲ್ ಹ್ಯಾಶ್ ಕುಟುಂಬವನ್ನು ಮತ್ತೊಂದು ಕೀಲಿಯನ್ನು ಸೇರಿಸುವ ಮೂಲಕ ಬಲವಾದ ಸಾರ್ವತ್ರಿಕ ಹ್ಯಾಶ್ ಕುಟುಂಬವಾಗಿ ಪರಿವರ್ತಿಸಲಾಗುತ್ತದೆ. ಬ್ಯಾಡ್ಜರ್ನಲ್ಲಿ ಎರಡು ಹಂತಗಳು ಪ್ರತಿ ಸಂದೇಶಕ್ಕೂ ಕಾರ್ಯಗತಗೊಳಿಸಬೇಕಾದ ಎರಡು ಹಂತಗಳಿವೆಃ ಪ್ರಕ್ರಿಯೆಯ ಹಂತ ಮತ್ತು ಹಂತವನ್ನು ಅಂತಿಮಗೊಳಿಸುವುದು. ಪ್ರಕ್ರಿಯೆಯ ಹಂತ ಈ ಹಂತದಲ್ಲಿ, ದತ್ತಾಂಶವನ್ನು 64-ಬಿಟ್ ಸ್ಟ್ರಿಂಗ್ಗೆ ಹ್ಯಾಶ್ ಮಾಡಲಾಗುತ್ತದೆ. ಒಂದು ಕೋರ್ ಫಂಕ್ಷನ್ಃ ಅನ್ನು ಈ ಪ್ರಕ್ರಿಯೆಯ ಹಂತದಲ್ಲಿ ಬಳಸಲಾಗುತ್ತದೆ, ಇದು 128-ಬಿಟ್ ಸ್ಟ್ರಿಂಗ್ ಅನ್ನು 64-ಬಿಟ್ ಸ್ಟ್ರಿಂಗ್ಗೆ ಈ ಕೆಳಗಿನಂತೆ ಹ್ಯಾಶ್ ಮಾಡುತ್ತದೆಃ ಯಾವುದೇ n ಗೆ, ಅಡಿಷನ್ ಮಾಡ್ಯುಲೋ ಎಂದರ್ಥ. ಒಂದು-ಬಿಟ್ ಸ್ಟ್ರಿಂಗ್ x ಅನ್ನು ನೀಡಿದರೆ, ಕನಿಷ್ಠ ಗಮನಾರ್ಹವಾದ n ಬಿಟ್ಗಳು ಎಂದರ್ಥ, ಮತ್ತು ಅತ್ಯಂತ ಗಮನಾರ್ಹವಾದ n ಬಿಟ್ಗಳು ಎಂದರ್ಥ. ಈ ಕಾರ್ಯವನ್ನು ಬಳಸಿಕೊಂಡು ಸಂದೇಶವನ್ನು ಸಂಸ್ಕರಿಸಬಹುದು. ಮೂಲಕ ಸೂಚಿಸಿ. ಸಂಸ್ಕರಣಾ ಹಂತದ ಸೂಡೊ-ಕೋಡ್ ಈ ಕೆಳಗಿನಂತಿದೆ. L = |M | L = 0 ಆಗಿದ್ದರೆ r = L ಮಾಡ್ 64 ಅನ್ನು ಅಂತಿಮಗೊಳಿಸಿಃ i = 1 ರಿಂದ u ಗೆಃ j = 1 ರಿಂದ v′ ಗೆಃ 64-ಬಿಟ್ ಬ್ಲಾಕ್ಗಳಾಗಿ ವಿಂಗಡಿಸಿ, t ಸಮವಾಗಿದ್ದರೆಃ ಇಲ್ಲದಿದ್ದರೆ ಹಂತವನ್ನು ಅಂತಿಮಗೊಳಿಸಿ ಈ ಹಂತದಲ್ಲಿ, ಸಂಸ್ಕರಣಾ ಹಂತದಿಂದ ಉಂಟಾಗುವ 64-ಸ್ಟ್ರಿಂಗ್ ಅನ್ನು ಅಪೇಕ್ಷಿತ MAC ಟ್ಯಾಗ್ ಆಗಿ ಪರಿವರ್ತಿಸಲಾಗುತ್ತದೆ. ಈ ಅಂತಿಮಗೊಳಿಸುವ ಹಂತವು ರ್ಯಾಬಿಟ್ ಸ್ಟ್ರೀಮ್ ಸೈಫರ್ ಅನ್ನು ಬಳಸುತ್ತದೆ ಮತ್ತು ಅಂತಿಮಗೊಳಿಸುವ ಕೀಲಿಯನ್ನು ತೆಗೆದುಕೊಳ್ಳುವ ಮೂಲಕ ಕೀ ಸೆಟಪ್ ಮತ್ತು IV ಸೆಟಪ್ ಎರಡನ್ನೂ ಬಳಸುತ್ತದೆ. ಅಂತಿಮಗೊಳಿಸುವ ಹಂತದ ಸೂಡೊ-ಕೋಡ್ ರಾಬಿಟ್ ಕೀ ಸೆಟಪ್ (ಕೆ) ರಾಬಿಟ್ ಐವಿ ಸೆಟಪ್ (ಎನ್) ಫಾರ್ ಐ = 1 ಟು ಯುಃ 27-ಬಿಟ್ ಬ್ಲಾಕ್ಗಳಾಗಿ ವಿಭಜಿಸಿ, ಎಸ್ = ಎಸ್ ರಾಬಿಟ್ ನೆಕ್ಸ್ಟ್ಬಿಟ್ (ಯು * 32) ರಿಟರ್ನ್ ಎಸ್ ನೋಟೇಶನ್ ಮೇಲಿನ ಸೂಡೊಕೋಡ್ನಿಂದ, ಕೆ ರಾಬಿಟ್ ಕೀ ಸೆಟಪ್ (ಕೆ) ನಲ್ಲಿರುವ ಕೀಲಿಯನ್ನು ಸೂಚಿಸುತ್ತದೆ, ಇದು ಮೊಲವನ್ನು 128-ಬಿಟ್ ಕೀಯೊಂದಿಗೆ ಪ್ರಾರಂಭಿಸುತ್ತದೆ. ಎಂ ಹ್ಯಾಶ್ ಮಾಡಬೇಕಾದ ಸಂದೇಶವನ್ನು ಸೂಚಿಸುತ್ತದೆ ಮತ್ತು |M ಸಂದೇಶದ ಉದ್ದವನ್ನು ಬಿಟ್ಗಳಲ್ಲಿ ಸೂಚಿಸುತ್ತದೆ. ಇದು ಐ ಬ್ಲಾಕ್ಗಳಾಗಿ ವಿಂಗಡಿಸಲಾದ ಎಂ ಸಂದೇಶವನ್ನು ಸೂಚಿಸುತ್ತದೆ. ಕೊಟ್ಟಿರುವ-ಬಿಟ್ ಸ್ಟ್ರಿಂಗ್ಗೆ x ನಂತರ ಮತ್ತು ಅನುಕ್ರಮವಾಗಿ ಅದರ ಕನಿಷ್ಠ ಗಮನಾರ್ಹವಾದ n ಬಿಟ್ಗಳನ್ನು ಮತ್ತು ಅತ್ಯಂತ ಗಮನಾರ್ಹವಾದ n ಬಿಟ್ಗಳನ್ನು ಸೂಚಿಸುತ್ತದೆ. ಕಾರ್ಯಕ್ಷಮತೆ ಬೋಸ್ಗಾರ್ಡ್, ಕ್ರಿಸ್ಟೆನ್ಸನ್ ಮತ್ತು ಜೆನ್ನರ್ ಬ್ಯಾಡ್ಜರ್ನ ಕಾರ್ಯಕ್ಷಮತೆಯನ್ನು 1 ಗಿಗಾಹರ್ಟ್ಝ್ ಪೆಂಟಿಯಮ್ III ಮತ್ತು 1.7 ಗಿಗಾಹರ್ಟ್ಝ್ ಪೆಂಟಿಯಮ್ 4 ಪ್ರೊಸೆಸರ್ನಲ್ಲಿ ಅಳೆಯುತ್ತಾರೆ. ವೇಗ-ಆಪ್ಟಿಮೈಸ್ಡ್ ಆವೃತ್ತಿಗಳನ್ನು ಅಸೆಂಬ್ಲಿ ಭಾಷೆಯಲ್ಲಿ ಪ್ರೋಗ್ರಾಮ್ ಮಾಡಲಾಗಿದೆ ಮತ್ತು ಇಂಟೆಲ್ ಸಿ + + 7.1 ಕಂಪೈಲರ್ ಬಳಸಿ ಸಂಕಲಿಸಲಾಗಿದೆ. ಈ ಕೆಳಗಿನ ಕೋಷ್ಟಕವು ವಿವಿಧ ನಿರ್ಬಂಧಿತ ಸಂದೇಶದ ಉದ್ದಗಳಿಗೆ ಬ್ಯಾಡ್ಜರ್ನ ಗುಣಲಕ್ಷಣಗಳನ್ನು ಒದಗಿಸುತ್ತದೆ. "ಮೆಮೊರಿ ರೆಕ್". ಪ್ರಮುಖ ವಸ್ತು ಮತ್ತು ಮೊಲದ ಸ್ಟ್ರೀಮ್ ಸೈಫರ್ನ ಆಂತರಿಕ ಸ್ಥಿತಿಯನ್ನು ಒಳಗೊಂಡಂತೆ ಆಂತರಿಕ ಸ್ಥಿತಿಯನ್ನು ಸಂಗ್ರಹಿಸಲು ಅಗತ್ಯವಾದ ಮೆಮೊರಿಯ ಪ್ರಮಾಣವನ್ನು ಸೂಚಿಸುತ್ತದೆ. "ಸೆಟಪ್" ಎಂಬುದು ಪ್ರಮುಖ ಸೆಟಪ್ ಅನ್ನು ಸೂಚಿಸುತ್ತದೆ, ಮತ್ತು "ಫಿನ್". ಇದು IV-ಸೆಟಪ್ನೊಂದಿಗೆ ಅಂತಿಮಗೊಳಿಸುವಿಕೆಯನ್ನು ಸೂಚಿಸುತ್ತದೆ. ಎಂಎಂಎಚ್ (ಮಲ್ಟಿಲೀನಿಯರ್ ಮಾಡ್ಯುಲರ್ ಹ್ಯಾಶಿಂಗ್) ಎಂಎಂಎಚ್ ಎಂದರೆ ಮಲ್ಟಿಲೀನಿಯರ್-ಮಾಡ್ಯುಲರ್-ಹ್ಯಾಶಿಂಗ್. ಉದಾಹರಣೆಗೆ, ಆನ್-ಲೈನ್ ಮಲ್ಟಿಮೀಡಿಯಾ ಶೀರ್ಷಿಕೆಯ ಸಮಗ್ರತೆಯನ್ನು ಪರಿಶೀಲಿಸಲು ಮಲ್ಟಿಮೀಡಿಯಾದಲ್ಲಿನ ಅಪ್ಲಿಕೇಶನ್ಗಳು. ಎಂಎಂಎಚ್ನ ಕಾರ್ಯಕ್ಷಮತೆಯು ಆಧುನಿಕ ಮೈಕ್ರೊಪ್ರೊಸೆಸರ್ಗಳಲ್ಲಿ ಪೂರ್ಣಾಂಕ ಸ್ಕೇಲಾರ್ ಉತ್ಪನ್ನಗಳ ಸುಧಾರಿತ ಬೆಂಬಲವನ್ನು ಆಧರಿಸಿದೆ. ಎಂಎಂಎಚ್ ತನ್ನ ಅತ್ಯಂತ ಮೂಲಭೂತ ಕಾರ್ಯಾಚರಣೆಯಾಗಿ ಏಕ ನಿಖರ ಸ್ಕೇಲಾರ್ ಉತ್ಪನ್ನಗಳನ್ನು ಬಳಸುತ್ತದೆ. ಇದು ಸಂದೇಶ ಮತ್ತು ಕೀ ಮಾಡ್ಯುಲೋ ಎ ಪ್ರೈಮ್ ನಡುವೆ (ಮಾರ್ಪಡಿಸಿದ) ಆಂತರಿಕ ಉತ್ಪನ್ನವನ್ನು ಒಳಗೊಂಡಿರುತ್ತದೆ. ಎಂ. ಎಂ. ಎಚ್. ನ ನಿರ್ಮಾಣವು ಕೆಲವು ಅವಿಭಾಜ್ಯ ಪೂರ್ಣಾಂಕಗಳಿಗೆ ಸೀಮಿತ ಕ್ಷೇತ್ರದಲ್ಲಿ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ. ಎಂಎಂಎಚ್ * ಎಂಎಂಎಚ್ * ಕೆಲವು ಧನಾತ್ಮಕ ಪೂರ್ಣಾಂಕಕ್ಕಾಗಿ ಬಹು ರೇಖೀಯ ಕಾರ್ಯಗಳನ್ನು ಒಳಗೊಂಡಿರುವ ಹ್ಯಾಶ್ ಕಾರ್ಯಗಳ ಕುಟುಂಬದ ನಿರ್ಮಾಣವನ್ನು ಒಳಗೊಂಡಿರುತ್ತದೆ. ಎಂ. ಎಂ. ಎಚ್ * ಕುಟುಂಬದ ಕಾರ್ಯಗಳನ್ನು ಈ ಕೆಳಗಿನಂತೆ ವ್ಯಾಖ್ಯಾನಿಸಲಾಗಿದೆ. ಇಲ್ಲಿ x, m ವಾಹಕಗಳು, ಮತ್ತು ಕಾರ್ಯಗಳನ್ನು ಈ ಕೆಳಗಿನಂತೆ ವ್ಯಾಖ್ಯಾನಿಸಲಾಗಿದೆ. ಎಂ. ಎ. ಸಿ. ಯ ಸಂದರ್ಭದಲ್ಲಿ, ಇದು ಸಂದೇಶವಾಗಿದೆ ಮತ್ತು ಎಲ್ಲಿ ಮತ್ತು ಎಲ್ಲಿ ಎಂಬುದು ಮುಖ್ಯವಾಗಿದೆ. ಎಂಎಂಎಚ್ * ಮ್ಯಾಕ್ನ ಭದ್ರತಾ ಅವಶ್ಯಕತೆಗಳನ್ನು ಪೂರೈಸಬೇಕು, ಅನಾ ಮತ್ತು ಬಾಬ್ ದೃಢೀಕರಿಸಿದ ರೀತಿಯಲ್ಲಿ ಸಂವಹನ ನಡೆಸಲು ಅನುವು ಮಾಡಿಕೊಡುತ್ತದೆ. ಅವರ ಬಳಿ ಒಂದು ರಹಸ್ಯವಾದ ಕೀಲಿ ಇರುತ್ತದೆ. ಚಾರ್ಲ್ಸ್ ಅನಾ ಮತ್ತು ಬಾಬ್ ನಡುವಿನ ಸಂಭಾಷಣೆಯನ್ನು ಕೇಳುತ್ತಾನೆ ಮತ್ತು ಸಂದೇಶವನ್ನು ಬಾಬ್ಗೆ ತನ್ನದೇ ಸಂದೇಶವಾಗಿ ಬದಲಾಯಿಸಲು ಬಯಸುತ್ತಾನೆ ಎಂದು ಹೇಳಿ, ಅದು ಅನಾದಿಂದ ಸಂದೇಶವಾಗಿ ರವಾನೆಯಾಗಬೇಕು. ಆದ್ದರಿಂದ, ಅವರ ಸಂದೇಶ ಮತ್ತು ಅನಾ ಅವರ ಸಂದೇಶವು ಕನಿಷ್ಠ ಒಂದು ಬಿಟ್ನಲ್ಲಿ ಭಿನ್ನವಾಗಿರುತ್ತದೆ (ಉದಾ. ). ಕಾರ್ಯವು ಆ ರೂಪದಲ್ಲಿದೆ ಎಂದು ಚಾರ್ಲ್ಸ್ಗೆ ತಿಳಿದಿದೆ ಮತ್ತು ಆತನಿಗೆ ಅನಾ ಅವರ ಸಂದೇಶ ತಿಳಿದಿದೆ ಆದರೆ ಆತನಿಗೆ x ಕೀಲಿಯು ತಿಳಿದಿಲ್ಲ ಎಂದು ಭಾವಿಸಿ, ಆಗ ಚಾರ್ಲ್ಸ್ ಸಂದೇಶವನ್ನು ಬದಲಾಯಿಸಬಹುದು ಅಥವಾ ತನ್ನದೇ ಸಂದೇಶವನ್ನು ಕಳುಹಿಸಬಹುದು ಎಂಬ ಸಂಭವನೀಯತೆಯನ್ನು ಈ ಕೆಳಗಿನ ಪ್ರಮೇಯದಿಂದ ವಿವರಿಸಬಹುದು. ಪ್ರಮೇಯ 1: ಎಂ. ಎಂ. ಎಚ್ * ಕುಟುಂಬವು ಸಾರ್ವತ್ರಿಕವಾಗಿದೆ. ಪುರಾವೆಃ ಎರಡು ವಿಭಿನ್ನ ಸಂದೇಶಗಳನ್ನು ತೆಗೆದುಕೊಳ್ಳಿ ಮತ್ತು ಇರಲಿ. ಸಾಮಾನ್ಯತೆಯನ್ನು ಕಳೆದುಕೊಳ್ಳದೆ ಅದನ್ನು ಊಹಿಸಿಕೊಳ್ಳಿ. ನಂತರ ಯಾವುದೇ ಆಯ್ಕೆಗಾಗಿ, ಮೇಲಿನ ಪ್ರಮೇಯವನ್ನು ವಿವರಿಸಲು, ಅವಿಭಾಜ್ಯಕ್ಕೆ ತೆಗೆದುಕೊಳ್ಳಿ ಕ್ಷೇತ್ರವನ್ನು ಪ್ರತಿನಿಧಿಸುತ್ತದೆ. ಆದರೆ, ಮೇಲಿನ ಪುರಾವೆಯಿಂದ, 1 ಸುತ್ತಿನಲ್ಲಿ ಆಕ್ರಮಣಕಾರರ ಘರ್ಷಣೆ ಸಂಭವನೀಯತೆ, ಆದ್ದರಿಂದ ಸರಾಸರಿ ಪರಿಶೀಲನಾ ಪ್ರಶ್ನೆಗಳು ಒಂದು ಸಂದೇಶವನ್ನು ಸ್ವೀಕರಿಸಲು ಸಾಕಾಗುತ್ತವೆ. ಘರ್ಷಣೆ ಸಂಭವನೀಯತೆಯನ್ನು ಕಡಿಮೆ ಮಾಡಲು, ದೊಡ್ಡ ಪಿ ಅನ್ನು ಆಯ್ಕೆ ಮಾಡುವುದು ಅಥವಾ ಸ್ವತಂತ್ರ ಕೀಲಿಗಳನ್ನು ಬಳಸಿಕೊಂಡು ಅಂತಹ ಎಂಎಸಿಗಳನ್ನು ಸಂಯೋಜಿಸುವುದು ಅಗತ್ಯವಾಗಿದೆ, ಇದರಿಂದಾಗಿ ಘರ್ಷಣೆ ಸಂಭವನೀಯತೆ] ಆಗುತ್ತದೆ. ಈ ಸಂದರ್ಭದಲ್ಲಿ ಕೀಲಿಗಳ ಸಂಖ್ಯೆಯನ್ನು ಒಂದು ಅಂಶದಿಂದ ಹೆಚ್ಚಿಸಲಾಗುತ್ತದೆ ಮತ್ತು ಔಟ್ಪುಟ್ ಅನ್ನು ಸಹ ಹೆಚ್ಚಿಸಲಾಗುತ್ತದೆ. ಎಂಎಂಎಚ್ * 32 ಹಲೇವಿ ಮತ್ತು ಕ್ರಾವ್ಝಿಕ್ ಎಂಬ ರೂಪಾಂತರವನ್ನು ನಿರ್ಮಿಸುತ್ತಾರೆ. ಈ ರಚನೆಯು 32-ಬಿಟ್ ಪೂರ್ಣಾಂಕಗಳೊಂದಿಗೆ ಮತ್ತು ಪ್ರಧಾನ ಪೂರ್ಣಾಂಕದೊಂದಿಗೆ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ. ವಾಸ್ತವವಾಗಿ ಅವಿಭಾಜ್ಯ p ಅನ್ನು ತೃಪ್ತಿಪಡಿಸುವ ಯಾವುದೇ ಅವಿಭಾಜ್ಯ ಎಂದು ಆಯ್ಕೆ ಮಾಡಬಹುದು. ಈ ಕಲ್ಪನೆಯನ್ನು ಕಾರ್ಟರ್ ಮತ್ತು ವೆಗ್ಮನ್ ಅವರು ಅವಿಭಾಜ್ಯಗಳನ್ನು ಬಳಸುವ ಸಲಹೆಯಿಂದ ಅಳವಡಿಸಿಕೊಳ್ಳಲಾಗಿದೆ. ಇದನ್ನು ಈ ಕೆಳಗಿನಂತೆ ವ್ಯಾಖ್ಯಾನಿಸಲಾಗಿದೆಃ ಇಲ್ಲಿ ಎಂದರೆ (ಅಂದರೆ, ಬೈನರಿ ಪ್ರಾತಿನಿಧ್ಯ) ಕಾರ್ಯಗಳನ್ನು ಈ ಕೆಳಗಿನಂತೆ ವ್ಯಾಖ್ಯಾನಿಸಲಾಗಿದೆ. ಇಲ್ಲಿ ಪ್ರಮೇಯ 1ರ ಪ್ರಕಾರ, ಘರ್ಷಣೆ ಸಂಭವನೀಯತೆಯು ಸುಮಾರು, ಮತ್ತು ಇದರ ಕುಟುಂಬವನ್ನು ε-ಆಲ್ಮೋಸ್ಟ್  ಮುಂದುವರಿದ ಸಾರ್ವತ್ರಿಕ ಎಂದು ವ್ಯಾಖ್ಯಾನಿಸಬಹುದು. ಸಂದೇಶದ ಉದ್ದ ಮತ್ತು ಪ್ರಮುಖ ವಾಹಕಗಳನ್ನು ವಿವರಿಸುವ k ಯ ಮೌಲ್ಯವು ಹಲವಾರು ಪರಿಣಾಮಗಳನ್ನು ಹೊಂದಿದೆಃ k ಮೇಲೆ ದುಬಾರಿ ಮಾಡ್ಯುಲರ್ ಕಡಿತವು ಗುಣಿಸುವುದರಿಂದ ಮತ್ತು k ಅನ್ನು ಹೆಚ್ಚಿಸುವ ಕಾರ್ಯಾಚರಣೆಗಳನ್ನು ಸೇರಿಸುವುದರಿಂದ ವೇಗವನ್ನು ಕಡಿಮೆ ಮಾಡುತ್ತದೆ. x ಕೀಲಿಯು k 32-ಬಿಟ್ ಪೂರ್ಣಾಂಕಗಳನ್ನು ಒಳಗೊಂಡಿರುವುದರಿಂದ, k ಅನ್ನು ಹೆಚ್ಚಿಸುವುದರಿಂದ ಅದು ದೀರ್ಘವಾದ ಕೀಲಿಯಾಗುತ್ತದೆ. ವ್ಯವಸ್ಥೆಯನ್ನು ಮುರಿಯುವ ಸಂಭವನೀಯತೆಯು ಮತ್ತು ಆದ್ದರಿಂದ k ಅನ್ನು ಹೆಚ್ಚಿಸುವುದರಿಂದ ವ್ಯವಸ್ಥೆಯನ್ನು ಮುರಿಯಲು ಕಷ್ಟವಾಗುತ್ತದೆ. 1997ರಲ್ಲಿ ಹ್ಯಾಲೆವಿ ಮತ್ತು ಕ್ರಾವ್ಝಿಕ್ ವಿನ್ಯಾಸಗೊಳಿಸಿದ ಎಂಎಂಎಚ್ನ ವಿವಿಧ ಅನುಷ್ಠಾನಗಳ ಸಮಯದ ಫಲಿತಾಂಶಗಳು ಕೆಳಗಿವೆ. 150 MHz ಪವರ್ಪಿಸಿ 604 ಆರ್ಐಎಸ್ಸಿ ಯಂತ್ರವು ಎಐಎಕ್ಸ್ ಎ 150 MHz ಪೆಂಟಿಯಮ್-ಪ್ರೊ ಯಂತ್ರವನ್ನು ಚಾಲನೆ ಮಾಡುತ್ತಿದೆ, ಇದು ವಿಂಡೋಸ್ ಎನ್ಟಿ ಎ 200 MHz ಪೆಂಟಿಯಮ್-ಪ್ರೊ ಯಂತ್ರವನ್ನು ಚಾಲನೆ ಮಾಡುತ್ತಿದೆ, ಇದು ಲಿನಕ್ಸ್ ಅನ್ನು ಚಾಲನೆ ಮಾಡುತ್ತಿದೆ.