PHP 常见的加密方式

md5加密
Md5是一种单向的加密技术,不可逆,不能进行解密

crypt加密
crypt()为单向加密,跟md5差不多一样

sha1加密
跟md5很像,不同的是sha1()默认情况下返回40个字符的散列值,传入参数性质一样,第一个为加密的字符串,第二个为raw_output的布尔值,默认为false,如果设置为true,sha1()则会返回原始的20 位原始格式报文摘要
sha1()也是单行加密,没有逆向解密算法

urlencode加密
一个参数,传入要加密的字符串(通常应用于对URL的加密),
urlencode为双向加密,可以用urldecode来加密(严格意义上来说,不算真正的加密)

base64编码加密
base64_encode()接受一个参数,也就是要编码的数据(这里不说字符串,是因为很多时候base64用来编码图片)
base64_encode()为双向编码,可用base64_decode()来解码。(实际上这也不算加密,只是编码)

AES加密
对称加密,只有一把密钥,只要密钥不泄露,AES加密还是十分安全的

RSA加密
非对称加密,一个公钥,一个密钥两把钥匙,优点是安全可靠

        md5,crypt和sha1统称hash算法,urlencode和base64也称为编码。他们都不是严格意义上面的加密。下面重点说下AES和RSA加密。这是最常见的两种加密方式。要理解这两种加密方法。
我先以我自己的理解讲一个故事。有3个国家在打仗,A国和B国是同盟国 对付C国。A国需要和B国共享情报,于是派使者传话给B国约定了彼此之间信件往来的规则。
        比如说英文字母A用Z代替,B用3代替(这个加密的规则就是密钥,这里只是举个例子,真实情况不会这么简单),只要密钥不泄露出去,C国就算截取到他们之家的通信也不大可能读懂他们之间的情报。(对称加密)
        这种情况持续了很久,C国一直受2个国家的联合打压,眼看就要溃败了。这时候C国军师收买了当时A国传话给B国的使者得到他们之间的通信规则(密钥)。于是C国掌握了情报扭转了局势。
        这时候A国和B觉得这样下去不是办法,就算我换一个通信规则,C国也很可能可以获取到。到底要怎么交换情报呢?这时候有人提议用两把钥匙的方式对情报进行加密。A国先对情报进行一次加密,然后随即用密钥1(私钥)解密,但是由于没有用密钥2解密,情报还是看不到,然后就把
密钥2(公钥)发给B国,B国很轻松用密钥2解开了情报。情报内容为”下次什么时候发起进攻?“。这时候C国也窃取到密钥然后翻译了以上情报,大喜。此时,B国拿到情报准备回复,回复内容”下星期一“进行加密。然后发回给A国。
        这时候C国又窃取到B国发回给A国的密文,正想解密。可是他怎么解都解不出来。因为解密一定要两套密钥具备才可以。这时候C国彻底懵逼了。
        总结:AES加密很容易理解,就是通过一特地的.密钥对一组数据进行加密.AES加密也是对称加密的典型.RSA其实也很好理解,你只要知道理解RSA是要用到两个密钥就可以了,至于什么私钥,公钥其实没有一个统一的标准,不同情况下,私钥也可以是公钥,公钥也可以是私钥,这取决于你怎么使用.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
有一些免费的PHP代码加密方式可供选择。这些方式可以帮助您保护您的PHP源代码免受未经授权的访问和盗用。以下是一些常见的免费PHP代码加密方式: 1. IonCube:IonCube是一种广泛使用的PHP代码加密工具。它可以将您的PHP源代码编译成加密的字节码,并提供许可证管理功能。IonCube提供了免费版本和商业版本供选择。 2. Zend Guard:Zend Guard是由Zend Technologies开发的一种PHP代码加密工具。它可以将您的PHP源代码编译成加密的字节码,并提供授权验证和许可证管理功能。Zend Guard提供了免费版本和商业版本供选择。 3. SourceGuardian Lite:SourceGuardian Lite是SourceGuardian的免费版本。它提供了基本的PHP源代码加密功能,并支持许可证验证。 4. PHP Obfuscator:PHP Obfuscator是一种将PHP源代码进行混淆处理的工具。它可以将您的源代码转换为难以理解和修改的形式,从而增加破解难度。 请注意,这些免费工具可能会有一些限制,如功能受限、性能影响或不提供完全的保护。在选择和使用这些工具之前,建议您详细了解其功能、限制和适用条件,并根据您的需求进行评估。 此外,除了代码加密,还有其他安全措施可以采取,如服务器安全、访问控制、数据加密等。综合考虑这些安全层面,才能更好地保护您的PHP应用程序。 希望这些信息对您有帮助!如果您有其他问题,请随时提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值