जब मैं एक यादृच्छिक स्ट्रिंग उत्पन्न करने के लिए openssl रैंड का उपयोग करता हूं, तो यह हमेशा एक = अंत में क्यों होता है?openssl द्वारा उत्पन्न यादृच्छिक स्ट्रिंग इतना यादृच्छिक नहीं है।
यदि मैं बिट्स की संख्या को 16 तक कम करता हूं तो मुझे हमेशा अंत में दो बराबर (==) मिलता है। मैं सोच रहा हूं कि ऐसा क्यों होता है। आदमी
एक मैकबुक में उदाहरण के लिएचल ओएस एक्स आवारा
$ Darwin aria.local 13.0.0 Darwin Kernel Version 13.0.0: Thu Sep 19 22:22:27 PDT 2013; root:xnu-2422.1.72~6/RELEASE_X86_64 x86_64
$ for i in $(seq 1 10)
for> do
for> openssl rand -base64 32
for> done
dDzk7B6SrcMnpkO2LLM4TaWKMjzBXHj1CmLO4t0HXdo=
QtP2kxQBg+yOCmowvEDWNdrSLobYyeXRz6HLDq3Q6rA=
iRmlr1JxRYjVGq3zkX9jgAoSAbu1F2Wm6CRJ9ZvYCR0=
Z/Wg//Z4Xjpzl3/ve87D2Pyk+dUgm6XHpFpyyeGXJKw=
XAVdp2B0RJlPCYRBBs3Q+C8X8aEbLQgXgXo5bhZkn8s=
eu8JcAwupYrX7GPfVnihTKXbzSsRYyW8VUWi+TN8oYA=
ZHPIj9PgiOi2SPwfrO4nKH1gIFEXlgXM320yDdpOelw=
7zjdIlSDT2lYiUziGx4Nc+uhoAlfTQKnXW+wB5omG6M=
nu+QKhD50dE6EQqCD56sPzMSARWuqi2d39UVtTyk0+w=
Wd4xQ/Eh1lnCiSn9cds4/mRc3FTEunhvrGskl3rJwZ4=
मैं एक डेबियन बॉक्स मैं खुद में इस दोहराया,
$ uname -a
Linux ip-10-229-17-26 3.2.0-4-amd64 #1 SMP Debian 3.2.51-1 x86_64 GNU/Linux
$ for i in $(seq 1 10)
> do
> openssl rand -base64 32
> done
pq+imMSMaXg2qW25d+/QCh3fVv/QevgdOXYZc4UlDRk=
lDm4Rno9jUikYOd0II225J97dExqLs4yl2gDSRDrafU=
QyYGkx1tgEWOiAmK4fTdbsnDPcfhjh3WejcBr1JdRlE=
P9RRi6JDo0/cWVXtReDJ6lA0XKiT9CB8bMePl7vMH2U=
z/TSy0qAfijl9mCKjxGsZfJySnbqGO3ML2/QYwsent8=
zLjDTakHyp6cJn16kKuTeQLY3azVuA/gTJ5XZshoahY=
uVxA/YweYs4HFxYa+3aJG3c5V0wFNmX+6VjZwjgbr8Q=
7Lx4W6t4GkfoZez3pspOVop2lL1KuTQgGn9KJtaWU44=
OF5DfOP4c/V+WmxvBpS5QRyGd2j+cqoDKUkwlTd1T0I=
2ANn1T07mmECnmzOgLDMjJvU/VrRVWbkCf6qgBQpg3A=
बहुत बढ़िया। धन्यवाद :) –