📄 chap6-3-3.htm.primary
字号:
<html>
<head>
<title>Crack Tutorial</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<link rel="stylesheet" href="style/css.css" type="text/css">
<link rel="stylesheet" href="../STYLE/Css.css" type="text/css">
</head>
<body bgcolor="white" text="#000000" link="#004080" vlink="#004080" background="../image/Back.gif">
<p><a href="../catalog.htm">目录</a>>>第6章</p>
<p align="center" class="shadow1Copy"><b class="p3">第6章 软件保护技术</b></p>
<table width="80%" border="0" cellspacing="0" cellpadding="3" align="center" bgcolor="#bcbcbc" bordercolor="#111111" class="shadow1">
<tr>
<td class="shadow1" width="25%">
<div align="center"><a href="Chap6-1.htm"><font color="#FFFFFF">第一节 常见保护技巧</font></a></div>
</td>
<td class="shadow1" width="25%">
<div align="center"><a href="Chap6-2.htm"><font color="#FFFFFF">第二节 反跟踪技术</font></a></div>
</td>
<td class="shadow1" width="25%">
<div align="center"><a href="Chap6-3.htm"><font color="#FFFFFF">第三节 加密算法</font></a></div>
</td>
<td class="shadow1" width="25%">
<div align="center"><a href="Chap6-4.htm"><font color="#FFFFFF">第四节 软件保护建议</font></a></div>
</td>
</tr>
</table>
<p align="center"><span class="p9"><b>第三节 加密算法</b></span></p>
<table border="1" width="80%" cellpadding="5" bordercolor="#111111" bgcolor="#efefef" align="center" cellspacing="0">
<tr>
<td width="33%" valign="middle" align="center" class="p9" height="23">
<div align="left" class="p"><span class="p9"><span class="p9"> <span class="p9">1、<a href="Chap6-3-1.htm">RSA算法</a></span></span></span></div>
</td>
<td width="33%" valign="middle" align="center" class="p9" height="23">
<div align="left"><span class="p9"><span class="p9"> <span class="p9">2、<a href="Chap6-3-2.htm">DES算法</a></span></span></span></div>
</td>
<td width="34%" valign="top" class="p9" height="23">
<div align="left"><span class="p9"><span class="p9"> <span class="p9">3、<a href="Chap6-3-3.htm">ElGamal算法</a></span></span></span></div>
</td>
</tr>
<tr>
<td width="33%" valign="middle" align="center" class="p9" height="23">
<div align="left"><span class="p9"><span class="p9"> <span class="p9">4、<a href="Chap6-3-4.htm">DSA算法</a></span></span></span></div>
</td>
<td width="33%" valign="middle" align="center" class="p9" height="23">
<div align="left"><span class="p9"><span class="p9"> <span class="p9">5、<a href="Chap6-3-5.htm">MD5算法</a></span></span></span></div>
</td>
<td width="34%" valign="top" class="p9" height="23">
<div align="left"><span class="p9"><span class="p9"> <span class="p9">6、<a href="Chap6-3-6.htm">BLOWFISH算法</a></span></span></span></div>
</td>
</tr>
</table>
<p align="center"><span class="p9"><span class="p9"><span class="p9"><span class="p9"><b>3、<span class="p9"><span class="p9">ElGamal算法</span></span></b></span></span></span></span></p>
<p><font color="#000000"><span class="p9"> </span>ElGamal算法既能用于数据加密也能用于数字签名,其安全性依赖于计算有限域上离散对数这一难题。<br>
密钥对产生办法。首先选择一个素数p,两个随机数, g 和x,g, x < p, 计算 y = g^x ( mod p ),则其公钥为 y, g 和p。私钥是x。g和p可由一组用户共享。<br>
ElGamal用于数字签名。被签信息为M,首先选择一个随机数k, k与 p - 1互质,计算<br>
<br>
a = g^k ( mod p )<br>
再用扩展 Euclidean 算法对下面方程求解b:<br>
<br>
M = xa + kb ( mod p - 1 )<br>
<br>
签名就是( a, b )。随机数k须丢弃。<br>
验证时要验证下式:<br>
<br>
y^a * a^b ( mod p ) = g^M ( mod p )<br>
<br>
同时一定要检验是否满足1<= a < p。否则签名容易伪造。<br>
ElGamal用于加密。被加密信息为M,首先选择一个随机数k,k与 p - 1互质,计算<br>
<br>
a = g^k ( mod p )<br>
b = y^k M ( mod p )<br>
<br>
<br>
( a, b )为密文,是明文的两倍长。解密时计算<br>
<br>
M = b / a^x ( mod p )<br>
<br>
<span class="p9"> </span>ElGamal签名的安全性依赖于乘法群(IFp)* 上的离散对数计算。素数p必须足够大,且p-1至少包含一个大素数<br>
因子以抵抗Pohlig & Hellman算法的攻击。M一般都应采用信息的HASH值(如SHA算法)。ElGamal的安全性主要依赖于p和g,若选取不当则签名容易伪造,应保证g对于p-1的大素数因子不可约。D.Bleichenbache“GeneratingElGamal
Signatures Without Knowing the Secret Key”中提到了一些攻击方法和对策。ElGamal的一个不足之处是它的密文成倍扩张。<br>
<br>
<span class="p9"> </span>美国的DSS(Digital Signature Standard)的DSA(Digital Signature
Algorithm)算法是经ElGamal算法演<br>
变而来。</font></p>
<p align="center"><a href="../Catalog.htm"><img src="../image/navtoc.gif" width="84" height="23" border="0"></a><a href="Chap6-3-2.htm"><img src="../image/Navprev.gif" width="80" height="23" border="0"></a><a href="Chap6-3-4.htm"><img src="../image/navnext.gif" width="83" height="23" border="0"></a></p>
<hr width=735>
<div align="center"><span class="p9"><font size="2"><span class="p9"><font size="2"><span class="p9">Copyright
© 2000-2001 <a href="http://www.pediy.com/">KanXue Studio</a> All Rights
Reserved.</span></font></span></font></span></div>
</body>
</html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -