0

ユーザー入力からシリアル番号を読み取るだけでなく、シリアル番号を生成する部分を必要とするアプリケーション (iOS および Java) を開発しています。

私の出力暗号化文字列は、次のような 16 進データ (長い文字列) に似ています。

"397cf2dbcb034c6c8e63120a211a78f1a628cfa2b36692b5efd3aff93219ca9457bde99765eab793a2f2be183082a702"

明らかに、これはユーザーが読んで再入力するのが非常に困難です。上記の文字列からシリアル番号タイプの文字列 (このように: xxxx-xxxx-xxxx-xxxx ) を生成するソリューションを探しています。(シリアル番号をデコードし、アプリ内の長い文字列を取得できる必要があります)

4

2 に答える 2

0

Base-64エンコーディングはどうですか?それはあなたが得ようとしているのと同じくらい良いでしょう. base-64 でのそのデータのエンコーディングは次のとおりです。

echo "397cf2dbcb034c6c8e63120a211a78f1a628cfa2b36692b5efd3aff93219ca9457bde99765eab793a2f2be183082a702" | xxd -r -p | base64

OXzy28sDTGyOYxIKIRp48aYoz6KzZpK179Ov+TIZypRXvemXZeq3k6LyvhgwgqcC
于 2013-04-27T05:39:32.457 に答える
0

その大きなハッシュ関数を使用する必要がありますか? 単なるシリアル番号だとすれば、もっと小さいもの、つまり 128 ビット ハッシュのようなものを使用できますか? これは、16 進数でも合理的であり、基数 64 では非常に合理的です。base-64 では、xxxxxx-xxxxxx-xxxx-xxxxxx の形式の 128 ビット キーを取得します。

于 2013-06-21T17:45:40.173 に答える