對象序列化 - 一個對象可以被表示為一個字節序列,保存對象的類型信息、對象的數據,還有對象中的數據類型,以便存儲或傳輸。
反序列化 -?將序列化對象寫入文件之后,可以從文件中讀取出來,并且對它進行反序列化,也就是說,對象的類型信息、對象的數據,還有對象中的數據類型可以用來在內存中新建對象。
對象序列化帶來了方便,也帶來了風險:敏感數據的泄露,被劫持后被反序列化進行修改,無法保證數據來源的安全性。
應對策略:
1. 關鍵字transient - 修飾敏感數據的變量,該變量就不會被序列化。
2.?對數據先簽名后加密。
如何序列化?
查看該類的文檔確認一個 Java 標準類是否是可序列化。
一個類的實例是否能序列化,取決于該類有沒有實現 java.io.Serializable接口。
?