Tôi đã đọc rất nhiều, rất nhiều bài viết về cách "bạn có thể lưu trữ sai mật khẩu". Họ luôn đề cập đến việc lưu trữ mật khẩu trên một máy chủ mà người dùng đang đăng nhập; về cơ bản họ đã thử lại (những ý định chơi chữ) phổ biến như đảm bảo muối mật khẩu, v.v. Tuy nhiên, tôi chưa bao giờ thấy một bài viết về thực hành tốt nhất để lưu trữ mật khẩu trên máy khách để khách hàng không phải đăng nhập thủ công mỗi khi họ muốn đăng nhập; tính năng "nhớ tôi".
Nhiều phần mềm có tính năng này, từ trình duyệt đến các chương trình như Dropbox.
Gần đây tôi đã đọc một bài viết cũ về cách Dropbox lưu trữ ID trên máy tính của bạn để bạn có thể sao chép / dán vào máy tính khác và khởi động Dropbox và đăng nhập như thiết bị bạn nhận được ID từ đó; không đăng nhập, không có gì và truy cập đầy đủ vào tài khoản Dropbox. Đây có vẻ là một thiết kế thực sự ngu ngốc, nhưng tôi không thể nghĩ ra cách nào tốt hơn để làm nó.
Tôi thậm chí không chắc chắn làm thế nào để tránh lưu trữ một cái gì đó như cookie trong văn bản đơn giản. Nếu bạn mã hóa nó, bạn sẽ lưu trữ khóa ở đâu để giải mã nó?
Cách duy nhất tôi thấy để không giới thiệu các lỗ hổng bảo mật là xóa tính năng autologin và khiến người dùng nhập mật khẩu của họ mỗi khi họ muốn sử dụng dịch vụ, nhưng đó là một cuộc đấu tranh về khả năng sử dụng và người dùng tha hồ không phải làm điều đó.
Tôi có thể đọc gì về thông tin lưu trữ cục bộ một cách an toàn để thực hiện tính năng đăng nhập tự động? Nếu các nguyên tắc quá đơn giản cho toàn bộ một bài viết, chúng là gì? Phần mềm được đề cập không nên phụ thuộc vào các tính năng không có trên tất cả các nền tảng (như "móc khóa" mà một số bản phân phối linux có).