2009-05-14 33 views
8

Có hướng dẫn nào thực sự sử dụng SecureString một cách an toàn không? Tôi không thấy có bất kỳ cách nào để thậm chí tạo ra chuỗi an toàn ở nơi đầu tiên, vì bạn sẽ cần nó để được gõ từ một hộp văn bản tại một số điểm.SecureString có an toàn không?

Trả lời

5

Đó là tất cả về việc giảm bề mặt tấn công. Nó sẽ không kỳ diệu làm cho ứng dụng của bạn 100% an toàn nhưng nó chắc chắn sẽ giúp.

0

Ngay cả khi nội dung của chuỗi phải đến từ đầu vào của người dùng, nó vẫn có giá trị sử dụng SecureString nếu giá trị chứa thông tin nhạy cảm. Khi ứng dụng của bạn đọc nội dung của hộp văn bản, hãy đặt giá trị vào một SecureString tại cơ hội sớm nhất. Như Mehrdad nói, trong trường hợp này nó không an toàn 100% nhưng an toàn hơn hơn hơn là không sử dụng SecureString.

9

Mục đích SecureString là mã hóa lưu trữ dữ liệu trong bộ nhớ. Điều này bảo vệ chống lại quét bộ nhớ văn bản rõ ràng. Điều này thậm chí còn quan trọng hơn nếu phần bộ nhớ đang giữ chuỗi được chuyển đến một tập tin hoán đổi trong các thao tác phân trang.

Nó hơi giống như một khóa tay lái cho một chiếc xe hơi. Nó sẽ không dừng xe của bạn bị đánh cắp bởi một người được xác định, nhưng nó chắc chắn đặt ra những tên trộm cơ hội.

+1

+1 tương tự. – Ikke

3

Chuỗi có thể dễ dàng có sẵn cho bất kỳ ai có quyền truy cập trình gỡ lỗi vào máy, sử dụng các công cụ như hawkeye. Thật vậy, các community notes on MSDN làm cho điều này rõ ràng.