PHP ImageMagick - 保护图像
在本章中,您将学习如何保护图像,以便只有发送者和目标接收者才能看到网页上的图像。
PHP Imagemagick 提供图像处理和操作,使您可以保护您的图像免遭盗窃或未经授权的使用。 现在,我们将讨论 PHP Imagemagick 的功能以及它们如何帮助您保证图像安全。
加密图像
Imagemagick 中名为'encipherImage()'的内置函数有助于对图像进行加密。 将纯像素图像转换为加密像素是此函数中发生的过程。 加密的图像只能由能够使用给定密钥("passphrase")解密图像的观看者查看。
语法
public Imagick::encipherImage(string $passphrase): bool
该函数采用一个参数"passphrase"作为加密和解密图像的密钥。 它将图像作为输入,使用密码对图像进行加密,并生成加密图像作为输出。
示例
下面的示例显示了'encipherImage()'函数的实现。 首先,必须创建一个新的 imagick 对象,并将图像作为输入。 'Passphrase'被定义为作为参数传递的字符串。 然后,在密码短语的帮助下应用'encipherImage()'函数,并获得加密图像作为输出。
<?php $image=new Imagick($_SERVER['DOCUMENT_ROOT']."/test/image.jpeg"); $passphrase="Tutorials Point"; $image->encipherImage($passphrase); $image->writeImage($_SERVER['DOCUMENT_ROOT']."/test/encipherImage.png"); ?>
假设以下是程序中的输入图像(image.jpeg)−
输出
解读图像
Imagemagick 提供了一个内置函数'decipherImage()',有助于解密图像。 将加密图像转换为明文图像的过程称为图像解密。 该函数将加密图像作为输入,使用密码将该图像转换为明文图像,并生成明文图像作为输出。
语法
public Imagick::decipherImage(string $passphrase): bool
该函数将"passphrase"作为参数。 它有助于破译图像。
示例
以下示例显示如何实现'decipherImage()'函数。 首先,创建一个新的 Imagick 对象并传递图像作为输入。 您还需要定义一个作为参数传递的密码字符串。 最后,使用 'decipherImage()' 函数和您的密码来获取解密的图像作为输出。
<?php $image=new Imagick($_SERVER['DOCUMENT_ROOT']."/test/encipherImage.png"); $passphrase="Tutorials Point"; $image->decipherImage($passphrase); $image->writeImage($_SERVER['DOCUMENT_ROOT']."/test/decipherImage.png"); ?>
假设以下是程序中的输入图像(encipherImage.png)−