2016-08-12 353 views
1

我正在使用SMF。在SMF密碼保存在mysql中,如:SHA1不匹配

sha1(usernamepassword); 

一些散列工作正常。但其他散列,其中包括像「öüşı」特殊字符和空間等不匹配。

例如「aksaktemüraga」應轉換爲SHA1爲「4b4eb0eed79356eb56eb9058e6dea20d71e48e3c」,但它被轉換爲SHA1爲「c4aa8328bf5ec76cfc0416fd7ec40f8dea7f3d62」

+1

很可能是編碼問題。 –

+0

要清楚我想爲我的論壇做一個外部登錄,但我想我沒有特殊的字符。 –

+0

請教[如何在Web應用程序中完全支持UTF-8](http://stackoverflow.com/questions/279170/how-to-support-utf-8-completely-in-a-web-application) - 以前稱爲*「UTF-8一路貫穿...」* –

回答

1

既然你正試圖創建一個外部登錄SMF論壇,那麼你必須留在SMF提供的哈希中。

關於您的問題,您應該查看Sources\LogInOut.php SMF安裝文件,以檢查SMF如何創建登錄。

然後,您可以使用相同的技術進行外部登錄。

+1

他們應該改變服務,然後;-)任何人在這個時代使用sha1,應該關閉或重寫,以適應「本世紀」的安全問題。 –

+1

不僅改變服務,也改變移動。你知道,沒有人喜歡打破向後兼容性的東西。我認爲遷移是痛苦,而不是改變哈希:) – Whiteulver

+0

^很好的一點。 –