我正在開發一個應用程序(iOS和Java),它需要一部分生成序列號以及從用戶輸入中讀取序列號。從長字符串生成序列號
我輸出加密的字符串,看起來都一個十六進制數據(長字符串)是這樣的:
"397cf2dbcb034c6c8e63120a211a78f1a628cfa2b36692b5efd3aff93219ca9457bde99765eab793a2f2be183082a702"
顯然,這是非常困難的用戶閱讀,並重新鍵入。我正在尋找一種解決方案來從上面的字符串中生成序列號類型字符串(如:xxxx-xxxx-xxxx-xxxx)。 (我必須能夠解碼序列號並檢索應用程序內部的長字符串)
你的加密字符串有48個字節。我不認爲您可以將其轉換爲16個字母數字字符而不會丟失信息。 – 2013-04-26 09:26:27
確切地說,這是不可能的,因爲[鴿子的原理](http://en.wikipedia.org/wiki/Pigeonhole_principle)。 – Jesper 2013-04-26 09:45:20
那麼,應該採用什麼樣的加密來實現呢? – Danialzo 2013-04-26 10:00:39