2011-06-27 39 views
1

我想使用Flash AS3共享對象(「Flash cookies」)來存儲密碼。 默認情況下是安全的還是我需要一種技術來加密它?Flash共享對象(cookie) - 安全地存儲密碼?

我找不到有關任何人可以查找什麼共享對象由Flash設置和什麼內容在裏面的信息。 任何信息都非常受歡迎。 Uli

回答

3

一般規則是,除非使用某種形式的共享加密(例如HTTPS),否則存儲在客戶端上的任何內容都可以從客戶端中提取。使用Flash,這是非常正確的 - Flash非常簡單,反編譯和SharedObjects在離線狀態下工作,這意味着如果您可以欺騙源站點,則可以讀取該對象。這需要我大約30分鐘,但我懷疑我可以將我機器上的每個共享對象渲染爲可讀的JSON。

如果您必須在客戶端上存儲密碼或用戶名,然後以某種形式的單向加密(如SHA或(如果您處於綁定中)MD5)存儲它。 as3crypto庫是here。但是,請記住,客戶端的某個人仍然可以獲取該值並將其複製到另一臺機器上。

幾個旁白:SharedObjects在AS3中不是新的。我記得在傳統的AS2庫中使用它們。其次:通過使用SharedObjects幾乎沒有獲得我發現它們在IE和世界其他地方之間不一致。當然,使用Flash投影儀,它們是您唯一的選擇。 Cookie的另一個好處是,Cookie可以更容易保護,因爲它們可以通過雙向加密進行服務器端驗證。確定的獎金。

1

不要在客戶端保存密碼!雖然它也是不安全的,你可以使用校驗: How to calculate CRC checksum in Actionscript 3?

的Flash cookies是Local Shared Objects和將它們保存爲二進制文件.sol

+0

更好的是,使用實際的散列函數:http://gsolofp.blogspot.com/2006/01/actionscript-3-md5-and-sha1.html –

+1

@Mar Caron:提及的文章[「如何計算在Actionscript 3中的CRC校驗和?「](http://stackoverflow.com/q/3459953/256544)指的是支持MD5,SHA1等的[as3corelib](http://github.com/mikechambers/as3corelib/)。 – splash