Có hai mối quan tâm để lưu trữ địa phương trong HTML5 -
- Một trang web đọc ẩn dữ liệu mà một trang web khác đã được lưu trữ trong trình duyệt người dùng
- cuối Một người sử dụng truy vấn dữ liệu ngoại tuyến trên trang web của bạn trực tiếp
Đối với 1, trình duyệt thực thi các hạn chế cùng miền với localStorage (hoặc sqllit hỗ trợ cơ sở dữ liệu điện tử mà safari có), vì vậy các trang web khác sẽ không có quyền truy cập vào dữ liệu mà bạn lưu trữ. Tuy nhiên, hãy nhớ rằng nếu trang web của bạn có lỗ hổng XSS, nó sẽ có thể ăn cắp dữ liệu.
Đối với 2, bạn không thể ngăn điều đó. Nó giống như một cookie - người dùng có thể chọn xem/xóa/sửa đổi nó.
Mã hóa dữ liệu là có thể (xem http://farfarfar.com/scripts/encrypt/), nhưng vô nghĩa. Bạn không thể có một khóa/mật khẩu chung duy nhất - vì kẻ tấn công có thể dễ dàng tìm ra khóa từ mã javascript. Sử dụng mật khẩu do người dùng nhập để mã hóa/giải mã là có thể, nhưng các thư viện mã hóa phía máy khách không đủ trưởng thành hoặc được thử nghiệm đủ tốt. Có khả năng tấn cách để phá vỡ nó.
Vì vậy, hiện tại ít nhất, không lưu trữ dữ liệu nhạy cảm trong localStorage.
Nguồn
2010-04-15 05:03:22
hãy xem thêm ở đây: http://stackoverflow.com/questions/5976046/html5-client-side-data-encryption-what- là-my-options/6686558 # 6686558 – user832834