2

プレーンテキストの URL の難読化を解除する関数をプログラムする方法を見つけようとしています。

このようなもの:

<input type="hidden" value="kjgajkwe@#jktGAkjgWjkajskd" name="obsfucatedString" />

次に、そのフォームの処理で、難読化を解除します。

$url = deObfuscate($_POST['obsfucatedString']);
so $url would become something like:
$url = 'http://domain.com/filename.zip';

そのようなことさえ可能ですか?

単純なプログラマの視界から URL を隠そうとしています。

文字列も難読化する何かを書く必要があると思います

それで

$obsfucatedStringURL = obsfucate('http://domain.com/filename.zip');
4

2 に答える 2

6

サーバーに保存されているパスワードで URL を暗号化し (使用するのに適したアルゴリズムは AES です)、値を取得する必要があるときに復号化します。これに関する問題は、暗号化された文字列が印刷可能な文字で構成されないことです。これを回避するには、 を使用base64_encode()してバイナリ エンコードされた文字列を印刷可能な文字に変換し、<input>フィールドの値として追加できるようにしてから、 を使用base64_decode()してサーバーで元の値を取得します。

于 2012-04-23T23:57:52.493 に答える
3

プレーン テキスト文字列をエンコードおよび逆変換するには、さまざまな方法があります。文字列を難読化する簡単な方法は、str_rot13関数を使用して一度エンコードし、もう一度デコードすることです (注: これは暗号化セキュリティを提供しません)。サーバーに保存されているシークレットを使用してAESを使用して暗号化し、暗号化および復号化することをお勧めします。次のスレッドの回答は、使用できる暗号化/復号化の関数を定義しています。

PHP AES 暗号化/復号化

難読化に対して検討する価値がある別のアプローチは、URL サーバー側をユーザーのセッションの一部として保存するか、データベースに永続化することです。次に、難読化された文字列を送信する代わりに、ルックアップを実行するキーを使用して URL を取得します。

于 2012-04-23T23:58:16.830 に答える