PHP インターフェースのデータ暗号化、復号化、検証、署名のコード例
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+qB7P/EMII/WaFAXBJXDXvZX7lmGcOgon6wLhKJLGXorP6BIxOg6LGc6Ux7BAt3i9+0lujNgxIq/sDsl23hsr3yOUpV5C5a813nrHx4HJyd/hBT1UvIUml+eTmJwWCpSfs2cvxIUr0CE57JAZVyXjK13shK3IsZHLPPsm/JcDCrdy0Co/d5uIGJAdzXdsQ56xsju+tlvnA1J6yq2tDIfYK/x6k911A5WXLKYxztD1nq+bTYN3Gv/WFfrzVtgWQBrh06ihS2cwvna0S9EV/YPmhnAjJmrX4trNr9NXQ9xaZaW4lGRg87U5QDV+nQjj1THk0XHFc69N9g2+DsAGyEs9tK6U0ZQ72hJZqZhBCDH1UKw0PLyIhJdxpgPPOWGp8/QVVU2julTeKunvgAAEc3n+GoZfqjsCDi1S6T2MTnjWYWNoFRBhvEZFD/revgpasTOzDQa5NqR1B+mUF70r6uw6MWLJ7cT9Tz3jq+CA';$aeskey = base64_decode('qZe60QZFxuirub2ey4+7+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+rDknXLqMT+DXeQAqGo4hBmcbej1aoMzn6hIJHk3/TfTAToNN8fgwDotHewsTCBbVkQWtDTby3GouWToVsRi1i/A0Vfb0+xM8MnF46DdhhrnZrycERBSbyrcwIDAQAB';//echo base64_decode($publickey);//rsa签名$signature = 'XHin4uUFqrKDEhKBD/hQisXLFFSxM6EZCvCPqnWCQJq3uEp3ayxmFuUgVE0Xoh4AIWjIIsOWdnaToL1bXvAFKwjCtXnkaRwUpvWrk+Q0eqwsoAdywsVQDEceG5stas1CkPtrznAIW2eBGXCWspOj+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

ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

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

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

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

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

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

ホットトピック








![Active Directory ユーザーとコンピュータが見つからない [3 つの方法で解決]](https://img.php.cn/upload/article/000/465/014/168196830849131.png?x-oss-process=image/resize,m_fill,h_207,w_330)
Active Directory ユーザーとコンピューター (ADUC) の損失は、多くの Windows Pro ユーザーから報告されている最もイライラする問題の 1 つです。 ADUC は、管理者が Microsoft Active Directory を管理できるようにする優れた MMC スナップインです。ただし、何らかの理由で、Windows Server または Enterprise/Pro エディションにはありません。欠落している理由とそれを修正する方法を詳しく見てみましょう。 Windows 11 には Active Directory がありますか? Active Directory は、リモートで管理したい人にとって便利です。

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

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

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

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

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

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

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