⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ripemd_8cpp-source.html

📁 著名的密码库Crypto++的文档 C++语言的杰作。程序员必备。
💻 HTML
📖 第 1 页 / 共 5 页
字号:
<a name="l00146"></a>00146         Subround(J, e2, a2, b2, c2, d2, X[11], 15, k5);<a name="l00147"></a>00147         Subround(J, d2, e2, a2, b2, c2, X[ 4],  5, k5);<a name="l00148"></a>00148         Subround(J, c2, d2, e2, a2, b2, X[13],  7, k5);<a name="l00149"></a>00149         Subround(J, b2, c2, d2, e2, a2, X[ 6],  7, k5);<a name="l00150"></a>00150         Subround(J, a2, b2, c2, d2, e2, X[15],  8, k5);<a name="l00151"></a>00151         Subround(J, e2, a2, b2, c2, d2, X[ 8], 11, k5);<a name="l00152"></a>00152         Subround(J, d2, e2, a2, b2, c2, X[ 1], 14, k5);<a name="l00153"></a>00153         Subround(J, c2, d2, e2, a2, b2, X[10], 14, k5);<a name="l00154"></a>00154         Subround(J, b2, c2, d2, e2, a2, X[ 3], 12, k5);<a name="l00155"></a>00155         Subround(J, a2, b2, c2, d2, e2, X[12],  6, k5);<a name="l00156"></a>00156 <a name="l00157"></a>00157         Subround(I, e2, a2, b2, c2, d2, X[ 6],  9, k6); <a name="l00158"></a>00158         Subround(I, d2, e2, a2, b2, c2, X[11], 13, k6);<a name="l00159"></a>00159         Subround(I, c2, d2, e2, a2, b2, X[ 3], 15, k6);<a name="l00160"></a>00160         Subround(I, b2, c2, d2, e2, a2, X[ 7],  7, k6);<a name="l00161"></a>00161         Subround(I, a2, b2, c2, d2, e2, X[ 0], 12, k6);<a name="l00162"></a>00162         Subround(I, e2, a2, b2, c2, d2, X[13],  8, k6);<a name="l00163"></a>00163         Subround(I, d2, e2, a2, b2, c2, X[ 5],  9, k6);<a name="l00164"></a>00164         Subround(I, c2, d2, e2, a2, b2, X[10], 11, k6);<a name="l00165"></a>00165         Subround(I, b2, c2, d2, e2, a2, X[14],  7, k6);<a name="l00166"></a>00166         Subround(I, a2, b2, c2, d2, e2, X[15],  7, k6);<a name="l00167"></a>00167         Subround(I, e2, a2, b2, c2, d2, X[ 8], 12, k6);<a name="l00168"></a>00168         Subround(I, d2, e2, a2, b2, c2, X[12],  7, k6);<a name="l00169"></a>00169         Subround(I, c2, d2, e2, a2, b2, X[ 4],  6, k6);<a name="l00170"></a>00170         Subround(I, b2, c2, d2, e2, a2, X[ 9], 15, k6);<a name="l00171"></a>00171         Subround(I, a2, b2, c2, d2, e2, X[ 1], 13, k6);<a name="l00172"></a>00172         Subround(I, e2, a2, b2, c2, d2, X[ 2], 11, k6);<a name="l00173"></a>00173 <a name="l00174"></a>00174         Subround(H, d2, e2, a2, b2, c2, X[15],  9, k7);<a name="l00175"></a>00175         Subround(H, c2, d2, e2, a2, b2, X[ 5],  7, k7);<a name="l00176"></a>00176         Subround(H, b2, c2, d2, e2, a2, X[ 1], 15, k7);<a name="l00177"></a>00177         Subround(H, a2, b2, c2, d2, e2, X[ 3], 11, k7);<a name="l00178"></a>00178         Subround(H, e2, a2, b2, c2, d2, X[ 7],  8, k7);<a name="l00179"></a>00179         Subround(H, d2, e2, a2, b2, c2, X[14],  6, k7);<a name="l00180"></a>00180         Subround(H, c2, d2, e2, a2, b2, X[ 6],  6, k7);<a name="l00181"></a>00181         Subround(H, b2, c2, d2, e2, a2, X[ 9], 14, k7);<a name="l00182"></a>00182         Subround(H, a2, b2, c2, d2, e2, X[11], 12, k7);<a name="l00183"></a>00183         Subround(H, e2, a2, b2, c2, d2, X[ 8], 13, k7);<a name="l00184"></a>00184         Subround(H, d2, e2, a2, b2, c2, X[12],  5, k7);<a name="l00185"></a>00185         Subround(H, c2, d2, e2, a2, b2, X[ 2], 14, k7);<a name="l00186"></a>00186         Subround(H, b2, c2, d2, e2, a2, X[10], 13, k7);<a name="l00187"></a>00187         Subround(H, a2, b2, c2, d2, e2, X[ 0], 13, k7);<a name="l00188"></a>00188         Subround(H, e2, a2, b2, c2, d2, X[ 4],  7, k7);<a name="l00189"></a>00189         Subround(H, d2, e2, a2, b2, c2, X[13],  5, k7);<a name="l00190"></a>00190 <a name="l00191"></a>00191         Subround(G, c2, d2, e2, a2, b2, X[ 8], 15, k8);<a name="l00192"></a>00192         Subround(G, b2, c2, d2, e2, a2, X[ 6],  5, k8);<a name="l00193"></a>00193         Subround(G, a2, b2, c2, d2, e2, X[ 4],  8, k8);<a name="l00194"></a>00194         Subround(G, e2, a2, b2, c2, d2, X[ 1], 11, k8);<a name="l00195"></a>00195         Subround(G, d2, e2, a2, b2, c2, X[ 3], 14, k8);<a name="l00196"></a>00196         Subround(G, c2, d2, e2, a2, b2, X[11], 14, k8);<a name="l00197"></a>00197         Subround(G, b2, c2, d2, e2, a2, X[15],  6, k8);<a name="l00198"></a>00198         Subround(G, a2, b2, c2, d2, e2, X[ 0], 14, k8);<a name="l00199"></a>00199         Subround(G, e2, a2, b2, c2, d2, X[ 5],  6, k8);<a name="l00200"></a>00200         Subround(G, d2, e2, a2, b2, c2, X[12],  9, k8);<a name="l00201"></a>00201         Subround(G, c2, d2, e2, a2, b2, X[ 2], 12, k8);<a name="l00202"></a>00202         Subround(G, b2, c2, d2, e2, a2, X[13],  9, k8);<a name="l00203"></a>00203         Subround(G, a2, b2, c2, d2, e2, X[ 9], 12, k8);<a name="l00204"></a>00204         Subround(G, e2, a2, b2, c2, d2, X[ 7],  5, k8);<a name="l00205"></a>00205         Subround(G, d2, e2, a2, b2, c2, X[10], 15, k8);<a name="l00206"></a>00206         Subround(G, c2, d2, e2, a2, b2, X[14],  8, k8);<a name="l00207"></a>00207 <a name="l00208"></a>00208         Subround(F, b2, c2, d2, e2, a2, X[12],  8, k9);<a name="l00209"></a>00209         Subround(F, a2, b2, c2, d2, e2, X[15],  5, k9);<a name="l00210"></a>00210         Subround(F, e2, a2, b2, c2, d2, X[10], 12, k9);<a name="l00211"></a>00211         Subround(F, d2, e2, a2, b2, c2, X[ 4],  9, k9);<a name="l00212"></a>00212         Subround(F, c2, d2, e2, a2, b2, X[ 1], 12, k9);<a name="l00213"></a>00213         Subround(F, b2, c2, d2, e2, a2, X[ 5],  5, k9);<a name="l00214"></a>00214         Subround(F, a2, b2, c2, d2, e2, X[ 8], 14, k9);<a name="l00215"></a>00215         Subround(F, e2, a2, b2, c2, d2, X[ 7],  6, k9);<a name="l00216"></a>00216         Subround(F, d2, e2, a2, b2, c2, X[ 6],  8, k9);<a name="l00217"></a>00217         Subround(F, c2, d2, e2, a2, b2, X[ 2], 13, k9);<a name="l00218"></a>00218         Subround(F, b2, c2, d2, e2, a2, X[13],  6, k9);<a name="l00219"></a>00219         Subround(F, a2, b2, c2, d2, e2, X[14],  5, k9);<a name="l00220"></a>00220         Subround(F, e2, a2, b2, c2, d2, X[ 0], 15, k9);<a name="l00221"></a>00221         Subround(F, d2, e2, a2, b2, c2, X[ 3], 13, k9);<a name="l00222"></a>00222         Subround(F, c2, d2, e2, a2, b2, X[ 9], 11, k9);<a name="l00223"></a>00223         Subround(F, b2, c2, d2, e2, a2, X[11], 11, k9);<a name="l00224"></a>00224 <a name="l00225"></a>00225         c1        = digest[1] + c1 + d2;<a name="l00226"></a>00226         digest[1] = digest[2] + d1 + e2;<a name="l00227"></a>00227         digest[2] = digest[3] + e1 + a2;<a name="l00228"></a>00228         digest[3] = digest[4] + a1 + b2;<a name="l00229"></a>00229         digest[4] = digest[0] + b1 + c2;<a name="l00230"></a>00230         digest[0] = c1;<a name="l00231"></a>00231 }<a name="l00232"></a>00232 <a name="l00233"></a>00233 <span class="comment">// *************************************************************</span><a name="l00234"></a>00234 <a name="l00235"></a><a class="code" href="class_r_i_p_e_m_d320.html#35d71b4e3a94096a295a5f5408814478">00235</a> <span class="keywordtype">void</span> <a class="code" href="class_r_i_p_e_m_d320.html#35d71b4e3a94096a295a5f5408814478">RIPEMD320::InitState</a>(<a class="code" href="class_iterated_hash.html#ce0350088eea8679cbe23668d2498c07">HashWordType</a> *state)<a name="l00236"></a>00236 {<a name="l00237"></a>00237         state[0] = 0x67452301L;<a name="l00238"></a>00238         state[1] = 0xefcdab89L;<a name="l00239"></a>00239         state[2] = 0x98badcfeL;<a name="l00240"></a>00240         state[3] = 0x10325476L;<a name="l00241"></a>00241         state[4] = 0xc3d2e1f0L;<a name="l00242"></a>00242         state[5] = 0x76543210L;<a name="l00243"></a>00243         state[6] = 0xfedcba98L;<a name="l00244"></a>00244         state[7] = 0x89abcdefL;<a name="l00245"></a>00245         state[8] = 0x01234567L;<a name="l00246"></a>00246         state[9] = 0x3c2d1e0fL;<a name="l00247"></a>00247 }<a name="l00248"></a>00248 <a name="l00249"></a><a class="code" href="class_r_i_p_e_m_d320.html#ab67c7b9920689c0ab363c4c81a93b22">00249</a> <span class="keywordtype">void</span> <a class="code" href="class_r_i_p_e_m_d320.html#ab67c7b9920689c0ab363c4c81a93b22">RIPEMD320::Transform</a> (word32 *digest, <span class="keyword">const</span> word32 *X)<a name="l00250"></a>00250 {<a name="l00251"></a>00251         <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> a1, b1, c1, d1, e1, a2, b2, c2, d2, e2, t;<a name="l00252"></a>00252         a1 = digest[0];<a name="l00253"></a>00253         b1 = digest[1];<a name="l00254"></a>00254         c1 = digest[2];<a name="l00255"></a>00255         d1 = digest[3];<a name="l00256"></a>00256         e1 = digest[4];<a name="l00257"></a>00257         a2 = digest[5];<a name="l00258"></a>00258         b2 = digest[6];<a name="l00259"></a>00259         c2 = digest[7];<a name="l00260"></a>00260         d2 = digest[8];<a name="l00261"></a>00261         e2 = digest[9];<a name="l00262"></a>00262 <a name="l00263"></a>00263         Subround(F, a1, b1, c1, d1, e1, X[ 0], 11, k0);<a name="l00264"></a>00264         Subround(F, e1, a1, b1, c1, d1, X[ 1], 14, k0);<a name="l00265"></a>00265         Subround(F, d1, e1, a1, b1, c1, X[ 2], 15, k0);<a name="l00266"></a>00266         Subround(F, c1, d1, e1, a1, b1, X[ 3], 12, k0);<a name="l00267"></a>00267         Subround(F, b1, c1, d1, e1, a1, X[ 4],  5, k0);<a name="l00268"></a>00268         Subround(F, a1, b1, c1, d1, e1, X[ 5],  8, k0);<a name="l00269"></a>00269         Subround(F, e1, a1, b1, c1, d1, X[ 6],  7, k0);<a name="l00270"></a>00270         Subround(F, d1, e1, a1, b1, c1, X[ 7],  9, k0);<a name="l00271"></a>00271         Subround(F, c1, d1, e1, a1, b1, X[ 8], 11, k0);<a name="l00272"></a>00272         Subround(F, b1, c1, d1, e1, a1, X[ 9], 13, k0);<a name="l00273"></a>00273         Subround(F, a1, b1, c1, d1, e1, X[10], 14, k0);<a name="l00274"></a>00274         Subround(F, e1, a1, b1, c1, d1, X[11], 15, k0);<a name="l00275"></a>00275         Subround(F, d1, e1, a1, b1, c1, X[12],  6, k0);<a name="l00276"></a>00276         Subround(F, c1, d1, e1, a1, b1, X[13],  7, k0);<a name="l00277"></a>00277         Subround(F, b1, c1, d1, e1, a1, X[14],  9, k0);<a name="l00278"></a>00278         Subround(F, a1, b1, c1, d1, e1, X[15],  8, k0);<a name="l00279"></a>00279 <a name="l00280"></a>00280         Subround(J, a2, b2, c2, d2, e2, X[ 5],  8, k5);<a name="l00281"></a>00281         Subround(J, e2, a2, b2, c2, d2, X[14],  9, k5);<a name="l00282"></a>00282         Subround(J, d2, e2, a2, b2, c2, X[ 7],  9, k5);<a name="l00283"></a>00283         Subround(J, c2, d2, e2, a2, b2, X[ 0], 11, k5);<a name="l00284"></a>00284         Subround(J, b2, c2, d2, e2, a2, X[ 9], 13, k5);<a name="l00285"></a>00285         Subround(J, a2, b2, c2, d2, e2, X[ 2], 15, k5);<a name="l00286"></a>00286         Subround(J, e2, a2, b2, c2, d2, X[11], 15, k5);<a name="l00287"></a>00287         Subround(J, d2, e2, a2, b2, c2, X[ 4],  5, k5);<a name="l00288"></a>00288         Subround(J, c2, d2, e2, a2, b2, X[13],  7, k5);<a name="l00289"></a>00289         Subround(J, b2, c2, d2, e2, a2, X[ 6],  7, k5);<a name="l00290"></a>00290         Subround(J, a2, b2, c2, d2, e2, X[15],  8, k5);<a name="l00291"></a>00291         Subround(J, e2, a2, b2, c2, d2, X[ 8], 11, k5);<a name="l00292"></a>00292         Subround(J, d2, e2, a2, b2, c2, X[ 1], 14, k5);<a name="l00293"></a>00293         Subround(J, c2, d2, e2, a2, b2, X[10], 14, k5);<a name="l00294"></a>00294         Subround(J, b2, c2, d2, e2, a2, X[ 3], 12, k5);<a name="l00295"></a>00295         Subround(J, a2, b2, c2, d2, e2, X[12],  6, k5);<a name="l00296"></a>00296 <a name="l00297"></a>00297         t = a1; a1 = a2; a2 = t;<a name="l00298"></a>00298 <a name="l00299"></a>00299         Subround(G, e1, a1, b1, c1, d1, X[ 7],  7, k1);<a name="l00300"></a>00300         Subround(G, d1, e1, a1, b1, c1, X[ 4],  6, k1);<a name="l00301"></a>00301         Subround(G, c1, d1, e1, a1, b1, X[13],  8, k1);<a name="l00302"></a>00302         Subround(G, b1, c1, d1, e1, a1, X[ 1], 13, k1);<a name="l00303"></a>00303         Subround(G, a1, b1, c1, d1, e1, X[10], 11, k1);<a name="l00304"></a>00304         Subround(G, e1, a1, b1, c1, d1, X[ 6],  9, k1);<a name="l00305"></a>00305         Subround(G, d1, e1, a1, b1, c1, X[15],  7, k1);<a name="l00306"></a>00306         Subround(G, c1, d1, e1, a1, b1, X[ 3], 15, k1);<a name="l00307"></a>00307         Subround(G, b1, c1, d1, e1, a1, X[12],  7, k1);<a name="l00308"></a>00308         Subround(G, a1, b1, c1, d1, e1, X[ 0], 12, k1);<a name="l00309"></a>00309         Subround(G, e1, a1, b1, c1, d1, X[ 9], 15, k1);<a name="l00310"></a>00310         Subround(G, d1, e1, a1, b1, c1, X[ 5],  9, k1);<a name="l00311"></a>00311         Subround(G, c1, d1, e1, a1, b1, X[ 2], 11, k1);

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -