Inhaltsverzeichnis
php接口数据加密、解密、验证签名
 扩展阅读
Heim Backend-Entwicklung PHP-Tutorial php接口数据加密、解密、验证签字代码实例

php接口数据加密、解密、验证签字代码实例

Jun 13, 2016 pm 12:22 PM
directory rsa signature

php接口数据加密、解密、验证签名代码实例

php接口数据加密、解密、验证签名

代码很简单,这里就不多废话了,直接奉上代码

<?php/** * 数据加密,解密,验证签名 * @edit http://www.lai18.com * @date 2015-07-08 **///header('Content-Type: text/xml; charset=utf-8');include_once(dirname(dirname(__FILE__)).DIRECTORY_SEPARATOR.'phpsec'.DIRECTORY_SEPARATOR.'Math'.DIRECTORY_SEPARATOR.'BigInteger.php');include_once(dirname(dirname(__FILE__)).DIRECTORY_SEPARATOR.'phpsec'.DIRECTORY_SEPARATOR.'Crypt'.DIRECTORY_SEPARATOR.'AES.php');include_once(dirname(dirname(__FILE__)).DIRECTORY_SEPARATOR.'phpsec'.DIRECTORY_SEPARATOR.'Crypt'.DIRECTORY_SEPARATOR.'RSA.php');//密文$crypttext = 'v66YKULHFld2JElhm/J9qik2Edr1JHdZIc/k/OesU2GbTX2usXyvF4jGvzvoihrrE8FsfKmllmjsMIjO5fdrS/FD20bYFii4JW3BO3bzshXmz6AEs2DWwG4sK9mNojfOC0IsMoV311X5/JlgUoQXkDy4F5HHpYE9d/xGb0g2XE/hnGSSy2cpQcvQtBlBmixwSckNhsEG92lovlOz8ULwkqG5o7x&#43;qB7P/EMII/WaFAXBJXDXvZX7lmGcOgon6wLhKJLGXorP6BIxOg6LGc6Ux7BAt3i9&#43;0lujNgxIq/sDsl23hsr3yOUpV5C5a813nrHx4HJyd/hBT1UvIUml&#43;eTmJwWCpSfs2cvxIUr0CE57JAZVyXjK13shK3IsZHLPPsm/JcDCrdy0Co/d5uIGJAdzXdsQ56xsju&#43;tlvnA1J6yq2tDIfYK/x6k911A5WXLKYxztD1nq&#43;bTYN3Gv/WFfrzVtgWQBrh06ihS2cwvna0S9EV/YPmhnAjJmrX4trNr9NXQ9xaZaW4lGRg87U5QDV&#43;nQjj1THk0XHFc69N9g2&#43;DsAGyEs9tK6U0ZQ72hJZqZhBCDH1UKw0PLyIhJdxpgPPOWGp8/QVVU2julTeKunvgAAEc3n&#43;GoZfqjsCDi1S6T2MTnjWYWNoFRBhvEZFD/revgpasTOzDQa5NqR1B&#43;mUF70r6uw6MWLJ7cT9Tz3jq&#43;CA';$aeskey = base64_decode('qZe60QZFxuirub2ey4&#43;7&#43;Q==');//AES解密,采用ECB模式$aes = new Crypt_AES(CRYPT_MODE_ECB);//设置AES密钥$aes->setKey($aeskey);//解密AES密文$plaintext = $aes->decrypt(base64_decode($crypttext));echo $plaintext;echo '<hr />';//AES加密明文//echo $aes->encrypt($plaintext);//rsa公钥$publickey = 'MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCffOeIVYut9jW5w1L5uKX4aDvd837a8JhaWm5S8YqNQfgEmfD9T&#43;rDknXLqMT&#43;DXeQAqGo4hBmcbej1aoMzn6hIJHk3/TfTAToNN8fgwDotHewsTCBbVkQWtDTby3GouWToVsRi1i/A0Vfb0&#43;xM8MnF46DdhhrnZrycERBSbyrcwIDAQAB';//echo base64_decode($publickey);//rsa签名$signature = 'XHin4uUFqrKDEhKBD/hQisXLFFSxM6EZCvCPqnWCQJq3uEp3ayxmFuUgVE0Xoh4AIWjIIsOWdnaToL1bXvAFKwjCtXnkaRwUpvWrk&#43;Q0eqwsoAdywsVQDEceG5stas1CkPtrznAIW2eBGXCWspOj&#43;aumEAcPyYDxLhDN646Krzw=';//echo base64_decode($signature);$rsa = new Crypt_RSA();//设置RSA签名模式 CRYPT_RSA_SIGNATURE_PSS or CRYPT_RSA_SIGNATURE_PKCS1$rsa->setSignatureMode(CRYPT_RSA_SIGNATURE_PKCS1);//var_dump($rsa->createKey());//生成RSA公钥、私钥//extract($rsa->createKey());//使用RSA私钥生成签名//$rsa->loadKey($privatekey);//$signature = $rsa->sign($plaintext);//使用RSA公钥验证签名echo $plaintext;$rsa->loadKey(base64_decode($publickey));echo $rsa->verify($plaintext, base64_decode($signature)) ? 'verified' : 'unverified';echo '<hr />';//生成RSA公钥、私钥//var_dump($rsa->createKey());extract($rsa->createKey());//使用RSA私钥加密数据$rsa->loadKey($privatekey);$ciphertext = $rsa->encrypt($plaintext);//使用RSA公钥解密数据$rsa->loadKey($publickey);echo $rsa->decrypt($ciphertext);
Nach dem Login kopieren

每当你讲任何涉及到钱财事务等交易问题时,需要特别注意安全问题的考虑,例如开发一个论坛或者是一个购物车等。

 扩展阅读

《PHP实用问题解决案例》系列技术文章整理收藏 

1PHP汉字拼音转换和公历农历转换

2php购物车实现方法

3PHP实现格式化文件数据大小显示的方法

4PHP+jquery实时显示网站在线人数的方法

5PHP 实现判断用户是否手机访问

6PHP转义Json里的特殊字符的函数

7php基于socket实现SMTP发送邮件的方法

8PHP查询快递信息的方法

9PHP简单获取视频预览图的方法

10php接口数据加密、解密、验证签名

11php计算指定目录下文件占用空间的方法

12php通过递归方式复制目录和子目录的方法

13php中通过DirectoryIterator删除整个目录的方法

14PHP生成迅雷、快车、旋风等软件的下载链接代码实例

15PHP中文乱码分类及解决办法大全

16php从数组中随机选择若干不重复元素的方法

17PHP文件上传问题总结——文件大小检测以及大文件上传处理

18如何修改PHP的memory_limit限制

19php判断一个请求是ajax请求还是普通请求的方法

20PHP超牛逼无限极分类生成树方法

21长微博生成(将html转化为图片)原理浅析

版权声明:本文为博主原创文章,未经博主允许不得转载。

1楼qq2291738886昨天 20:51
2291738886
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Active Directory-Benutzer und -Computer fehlen [Auf drei Arten behoben] Active Directory-Benutzer und -Computer fehlen [Auf drei Arten behoben] Apr 20, 2023 pm 01:25 PM

Der Verlust von Active Directory-Benutzern und -Computern (ADUC) ist eines der frustrierendsten Probleme, über die viele Windows Pro-Benutzer berichten. ADUC ist ein unglaubliches MMC-Snap-In, das Administratoren die Verwaltung von Microsoft Active Directory ermöglicht. Aus irgendeinem Grund fehlt es jedoch in den Windows Server- oder Enterprise/Pro-Editionen. Schauen wir uns genauer an, warum es fehlt und wie wir es beheben können. Verfügt Windows 11 über Active Directory? Active Directory ist für jeden nützlich, der Remote verwalten möchte

Verwenden Sie Python, um die RSA-Verschlüsselung und -Entschlüsselung zu implementieren Verwenden Sie Python, um die RSA-Verschlüsselung und -Entschlüsselung zu implementieren Apr 14, 2023 pm 02:13 PM

Gestern habe ich einen englischen Artikel [1] gesehen, der zeigte, wie man Python zur Implementierung des RSA-Algorithmus verwendet. Die Logik des Codes ist dieselbe wie im vorherigen Artikel. Den RSA-Algorithmus verstehen. Freunde, die mit RSA nicht vertraut sind, können den Artikel verstehen Es werden die mathematischen Prinzipien von RSA erklärt und ein einfaches Beispiel gegeben. Man kann sagen, dass dies der einfachste Artikel ist, um RSA auf Quanzhihu zu verstehen (dies stammt aus Leserkommentaren). Ich habe den auf Englisch bereitgestellten Code ausgeführt und festgestellt, dass Chinesisch nicht verschlüsselt werden konnte. Daher habe ich die Verschlüsselungs- und Entschlüsselungsfunktionen geändert, um die chinesische Verschlüsselung und Entschlüsselung zu unterstützen. Im heutigen Artikel erfahren Sie, wie Sie mit Python den RSA-Verschlüsselungs- und -Entschlüsselungsprozess implementieren, um Ihnen bei der Einrichtung zu helfen

Wie man mit PHP und GMP RSA-Verschlüsselungs- und Entschlüsselungsalgorithmen für große Ganzzahlen durchführt Wie man mit PHP und GMP RSA-Verschlüsselungs- und Entschlüsselungsalgorithmen für große Ganzzahlen durchführt Jul 28, 2023 pm 05:25 PM

So verwenden Sie PHP und GMP zur Durchführung des RSA-Verschlüsselungs- und Entschlüsselungsalgorithmus für große Ganzzahlen. Der RSA-Verschlüsselungsalgorithmus ist ein asymmetrischer Verschlüsselungsalgorithmus, der im Bereich der Datensicherheit weit verbreitet ist. Es implementiert den Prozess der Verschlüsselung mit öffentlichem Schlüssel und der Entschlüsselung mit privatem Schlüssel auf der Grundlage zweier besonders großer Primzahlen und einiger einfacher mathematischer Operationen. In der PHP-Sprache kann die Berechnung großer Ganzzahlen über die GMP-Bibliothek (GNUMultiplePrecision) realisiert werden, und die Verschlüsselungs- und Entschlüsselungsfunktionen können durch die Kombination des RSA-Algorithmus realisiert werden. In diesem Artikel wird die Verwendung von PHP- und GMP-Bibliotheken vorgestellt

So implementieren Sie RSA-Verschlüsselungs- und Entschlüsselungsalgorithmen mit PHP und GMP So implementieren Sie RSA-Verschlüsselungs- und Entschlüsselungsalgorithmen mit PHP und GMP Jul 28, 2023 pm 11:54 PM

Verwendung von PHP und GMP zur Implementierung des RSA-Verschlüsselungs- und Entschlüsselungsalgorithmus Der RSA-Verschlüsselungsalgorithmus ist ein asymmetrischer Verschlüsselungsalgorithmus, der im Bereich der Informationssicherheit weit verbreitet ist. In praktischen Anwendungen ist es häufig erforderlich, Programmiersprachen zu verwenden, um RSA-Verschlüsselungs- und Entschlüsselungsalgorithmen zu implementieren. PHP ist eine häufig verwendete serverseitige Skriptsprache und GMP (GNUMultiplePrecision) ist eine hochpräzise mathematische Berechnungsbibliothek, die uns dabei helfen kann, eine große Anzahl von Operationen durchzuführen, die im RSA-Algorithmus erforderlich sind. In diesem Artikel wird die Verwendung von PHP und GMP vorgestellt

Wie schreibe ich einen RSA-Verschlüsselungsalgorithmus mit Python? Wie schreibe ich einen RSA-Verschlüsselungsalgorithmus mit Python? Sep 20, 2023 pm 01:21 PM

Wie schreibe ich einen RSA-Verschlüsselungsalgorithmus mit Python? Einleitung: RSA ist ein asymmetrischer Verschlüsselungsalgorithmus, der im Bereich der Informationssicherheit weit verbreitet ist. In der modernen Kommunikation wird der RSA-Verschlüsselungsalgorithmus häufig zum Ver- und Entschlüsseln sensibler Daten verwendet. In diesem Artikel wird erläutert, wie Sie mit Python den RSA-Verschlüsselungsalgorithmus schreiben, und es werden spezifische Codebeispiele bereitgestellt. Installieren Sie die Python-Bibliothek. Bevor Sie mit dem Schreiben des RSA-Verschlüsselungsalgorithmus beginnen, müssen Sie die Python-Verschlüsselungsbibliothek installieren. Es kann mit dem folgenden Befehl installiert werden: pipinstallrsa generic

PHP implementiert die asymmetrische RSA-Verschlüsselungstechnologie PHP implementiert die asymmetrische RSA-Verschlüsselungstechnologie Jun 18, 2023 am 09:34 AM

Die asymmetrische RSA-Verschlüsselungstechnologie ist derzeit eine der beliebtesten und sichersten Verschlüsselungsmethoden. Als weit verbreitete Programmiersprache bietet PHP auch einzigartige Vorteile bei der Implementierung der RSA-Verschlüsselung. In diesem Artikel erfahren Sie, wie Sie mit PHP die asymmetrische RSA-Verschlüsselungstechnologie implementieren. 1. Was ist der RSA-Algorithmus? Der RSA-Algorithmus ist eine asymmetrische Verschlüsselungstechnologie. Er wird normalerweise zur Datenverschlüsselung und digitalen Signaturen verwendet. Seine Sicherheit basiert hauptsächlich auf einem zahlentheoretischen Problem, nämlich der Schwierigkeit, sehr große ganze Zahlen in sehr kurzer Zeit zu faktorisieren. Mit RSA-Algorithmus verschlüsselter Stream

NIST stellt drei Post-Quantum-Kryptographie-Standards fertig, um das Internet, die Kryptowährung und die Kommunikation besser zu schützen NIST stellt drei Post-Quantum-Kryptographie-Standards fertig, um das Internet, die Kryptowährung und die Kommunikation besser zu schützen Aug 15, 2024 pm 03:50 PM

Das US-amerikanische National Institute of Standards and Technology (NIST) hat nach fast einem Jahrzehnt Arbeit drei Post-Quanten-Kryptographie-Standards fertiggestellt. Dieser Schritt dient der Vorbereitung auf die Fähigkeit neuer Quantencomputer, Public-Key-Kryptosen zu knacken

So beheben Sie, dass SSH unter MacOS Ventura nicht funktioniert So beheben Sie, dass SSH unter MacOS Ventura nicht funktioniert Apr 23, 2023 am 11:46 AM

So beheben Sie, dass SSH unter MacOS Ventura keine RSA-Signaturen verwendet. Wir werden die Datei ssh_config ändern, um RSA-Hostschlüssel wieder zuzulassen. Hier erfahren Sie, wie das geht. Öffnen Sie Terminal (entweder über Spotlight oder über den Ordner „Dienstprogramme“) und geben Sie die folgende Befehlszeichenfolge ein: sudonano /etc/ssh/ssh_config Sie müssen sich mit dem Administratorkennwort authentifizieren. Scrollen Sie bis zum Ende der Datei „ssh_config“ und fügen Sie die folgende Zeile am Ende von „ssh_config“ hinzu: HostkeyAlgorithms+ssh-rsaPubkeyA

See all articles