目次
PHP インターフェイス データの暗号化、復号化、検証署名
詳しい読み物
ホームページ バックエンド開発 PHPチュートリアル 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);
ログイン後にコピー

お金に関する取引の問題について話すときは、セキュリティの問題に特別な注意を払う必要があります。フォーラムやショッピングカートなどを開発します。

詳しい読み物

技術記事集「PHP 実践問題解決事例」シリーズ

1PHP中国語ピンイン変換とグレゴリオ旧暦変換

2phpショッピングカート実装方法

3PHP実装フォーマット ファイルのデータサイズを表示するメソッド

4PHP+jquery Webサイトのオンライン人数をリアルタイムに表示するメソッド

5ユーザー識別を実現するPHP携帯電話アクセスかどうか

6Json内の特殊文字をエスケープするPHP機能

7php はソケットメソッドに基づいて電子メールを送信する SMTP を実装します

8 PHP で速達情報をクエリする方法

9 PHP でビデオプレビューを簡単に取得する方法

10php インターフェース データの暗号化、復号化、署名検証

11php メソッド指定したディレクトリ内のファイルが占めるスペースを計算する

12php ディレクトリとサブディレクトリを再帰的にコピーする方法

13php DirectoryIterator を介してディレクトリ全体を削除するメソッド

14 PHP は、Thunder、Express、Tornado などのソフトウェアのダウンロード リンク コード例を生成します

15 PHP 中国語の文字化け分類と解決策

16 配列から複数の非反復要素をランダムに選択する php メソッド

17 PHP ファイルアップロードの問題の概要 - ファイルサイズの検出と大きなファイルのアップロード処理

18 PHP のmemory_limit制限を変更する方法

19php リクエストが ajax リクエストか通常のリクエストかを決定するメソッド

20PHP 超すごい無限分類スパニングツリーメソッド

21 の長い Weibo 生成 (html 画像に変換) 原理分析

著作権声明: この記事はブロガーによるオリジナル記事であり、ブロガーの許可なしに転載することはできません。

1F
qq2291738886昨日 20:51
2291738886
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Active Directory ユーザーとコンピュータが見つからない [3 つの方法で解決] Active Directory ユーザーとコンピュータが見つからない [3 つの方法で解決] Apr 20, 2023 pm 01:25 PM

Active Directory ユーザーとコンピューター (ADUC) の損失は、多くの Windows Pro ユーザーから報告されている最もイライラする問題の 1 つです。 ADUC は、管理者が Microsoft Active Directory を管理できるようにする優れた MMC スナップインです。ただし、何らかの理由で、Windows Server または Enterprise/Pro エディションにはありません。欠落している理由とそれを修正する方法を詳しく見てみましょう。 Windows 11 には Active Directory がありますか? Active Directory は、リモートで管理したい人にとって便利です。

Python を使用して RSA 暗号化と復号化を実装する Python を使用して RSA 暗号化と復号化を実装する Apr 14, 2023 pm 02:13 PM

昨日、Python を使用して RSA アルゴリズムを実装する方法を示した英語の記事 [1] を見ました。コードのロジックは前の記事「Understanding the RSA Algorithm」と同じです。RSA に詳しくない友人は、「Understanding the RSA」という記事を読むことができます。 「RSA アルゴリズム」では、「RSA とは何か」、RSA の数学的原理が説明され、簡単な例が示されており、Quanzhihu で RSA を理解するのに最も簡単な記事と言えます (これは読者のコメントから来ています)。英語で提供されたコードを実行したところ、中国語を暗号化できないことが判明したため、中国語の暗号化と復号化をサポートするように暗号化と復号化の関数を変更しました。今日の記事では、Python を使用して RSA 暗号化および復号化プロセスを実装し、暗号化を確立する方法を紹介します。

PHP と GMP を使用して大きな整数の RSA 暗号化および復号化アルゴリズムを実行する方法 PHP と GMP を使用して大きな整数の RSA 暗号化および復号化アルゴリズムを実行する方法 Jul 28, 2023 pm 05:25 PM

PHP と GMP を使用して大きな整数の RSA 暗号化および復号化アルゴリズムを実行する方法 RSA 暗号化アルゴリズムは、データ セキュリティの分野で広く使用されている非対称暗号化アルゴリズムです。これは、2 つの特に大きな素数といくつかの単純な数学演算に基づいて公開キー暗号化と秘密キー復号化のプロセスを実装します。 PHP言語では、GMP(GNUMultiplePrecision)ライブラリにより大きな整数の計算を実現でき、RSAアルゴリズムを組み合わせることで暗号化・復号化機能を実現できます。この記事では、PHP および GMP ライブラリを使用して、

PHP および GMP を使用して RSA 暗号化および復号化アルゴリズムを実装する方法 PHP および GMP を使用して RSA 暗号化および復号化アルゴリズムを実装する方法 Jul 28, 2023 pm 11:54 PM

PHP と GMP を使用して RSA 暗号化および復号化アルゴリズムを実装する方法 RSA 暗号化アルゴリズムは、情報セキュリティの分野で広く使用されている非対称暗号化アルゴリズムです。実際のアプリケーションでは、多くの場合、プログラミング言語を使用して RSA 暗号化および復号化アルゴリズムを実装する必要があります。 PHP は一般的に使用されるサーバー側スクリプト言語であり、GMP (GNUMultiplePrecision) は、RSA アルゴリズムで必要な大量の演算の実行に役立つ高精度数学計算ライブラリです。この記事ではPHPとGMPの使い方を紹介します。

Python を使用して RSA 暗号化アルゴリズムを作成するにはどうすればよいですか? Python を使用して RSA 暗号化アルゴリズムを作成するにはどうすればよいですか? Sep 20, 2023 pm 01:21 PM

Python を使用して RSA 暗号化アルゴリズムを作成するにはどうすればよいですか?はじめに: RSA は、情報セキュリティの分野で広く使用されている非対称暗号化アルゴリズムです。最新の通信では、機密データの暗号化と復号化に RSA 暗号化アルゴリズムが一般的に使用されています。この記事では、Python を使用して RSA 暗号化アルゴリズムを作成する方法を紹介し、具体的なコード例を示します。 Python ライブラリのインストール RSA 暗号化アルゴリズムの作成を開始する前に、Python 暗号化ライブラリをインストールする必要があります。次のコマンドを使用してインストールできます: pipinstallrsa generated

PHP は RSA 非対称暗号化テクノロジーを実装しています PHP は RSA 非対称暗号化テクノロジーを実装しています Jun 18, 2023 am 09:34 AM

RSA 非対称暗号化テクノロジは、現在最も一般的で安全な暗号化方式の 1 つです。広く使用されているプログラミング言語である PHP には、RSA 暗号化の実装において独自の利点もあります。この記事では、PHP を使用して RSA 非対称暗号化テクノロジを実装する方法を読者に紹介します。 1. RSA アルゴリズムとは何ですか? RSA アルゴリズムは非対称暗号化技術であり、通常、データの暗号化とデジタル署名に使用されます。そのセキュリティは主に数論の問題、つまり非常に大きな整数を非常に短時間で因数分解することの難しさに基づいています。 RSAアルゴリズム暗号化ストリーム

NIST、インターネット、暗号通貨、通信の保護を強化するための 3 つのポスト量子暗号規格を最終決定 NIST、インターネット、暗号通貨、通信の保護を強化するための 3 つのポスト量子暗号規格を最終決定 Aug 15, 2024 pm 03:50 PM

米国国立標準技術研究所 (NIST) は、10 年近くの作業を経て、3 つのポスト量子暗号規格を完成させました。この動きは、公開鍵暗号を解読する新興量子コンピューターの能力に備えたものです

MacOS Ventura で SSH が機能しない問題を修正する方法 MacOS Ventura で SSH が機能しない問題を修正する方法 Apr 23, 2023 am 11:46 AM

MacOS Ventura で RSA 署名を使用しない SSH を修正する方法 RSA ホスト キーを再度許可するように ssh_config ファイルを変更します。その方法は次のとおりです。ターミナルを開き (Spotlight または Utilities フォルダーを介して)、次のコマンド文字列を入力します: sudonano /etc/ssh/ssh_config 管理者パスワードで認証する必要があります。 ssh_config ファイルの一番下までスクロールし、次の行を ssh_config の一番下に追加します: HostkeyAlgorithms+ssh-rsaPubkeyA

See all articles