HAUpdate(&amp;tctx, k, lk) ;
<br>
                   SHAFinal(key, &amp;tctx) ;
<p>
                   k = key ;
<br>
                   lk = SHA_DIGESTSIZE ;
<br>
           }
<p>
<pre>
           /**** Inner Digest ****/
</pre>
<p>
           SHAInit(&amp;ictx) ;
<p>
<pre>
           /* Pad the key for inner digest */
           for (i = 0 ; i &lt; lk ; ++i) buf[i] = k[i] ^ 0x36 ;
           for (i = lk ; i &lt; SHA_BLOCKSIZE ; ++i) buf[i] = 0x36 ;
</pre>
<p>
           SHAUpdate(&amp;ictx, buf, SHA_BLOCK