2016-12-14 12 views
2

Base64エンコーディングアルゴリズムに2つの異なる入力に対して2つの同一のエンコード値を取得できますか?base64エンコーディングは常に1対1です

手紙X.

Foo_Bar = FooXBar 
FooXBar = FooXBar 

とアンダースコアを置き換える関数はこの種のものは、これまでのBase64エンコードで起こることができる、のは、例えば、別のアルゴリズムを使用してみましょうか?

答えて

4

いいえ、それは起こりません。 Base64はロスレス変換です(さらに33%のスペースが必要です)。数学的には、Base64関数はbijectionです。

HTTP basic access authenticationは、このコードをユーザー名とパスワードに使用することに注意してください。誰でもエンコードされた文字列から元の文字列を取得できます。このため、この認証はHTTPSでのみ使用する必要があります。

Base64の詳細についてはWikipediaにも記載されています。

2

いいえ、base64は、印刷可能な文字としてバイナリデータをエンコードする単なる方法です。

厳密には、バイナリ(2進数)、10進数(10進数)、または16進数(16進数)のような数値システムです。実際には、数学的な基底は無関係であり、表記や人間の使用にのみ使用されますが、あなたが使う基底が何であれ、数学は同等です。

関連する問題