2013-08-07 35 views
8

Làm thế nào để băm/mã hóa giá trị chuỗi trong JavaScript? Tôi cần một cơ chế để làm như vậy để ẩn một số dữ liệu trong localStorage/cookie?Mã hóa JavaScript?

Đó là điều liên quan đến vấn đề bảo mật nhưng tôi muốn bảo vệ dữ liệu của mình.

+0

https://code.google.com/p/crypto-js/ làm điều đó. Làm thế nào bạn có kế hoạch bảo vệ bí mật từ snooping? –

+0

Cảm ơn! Tôi sẽ xem xét các cryptoj. Tôi muốn mã hóa dữ liệu và lưu trữ trong cookie của tôi, để nó có một mức độ bảo mật. – deepakb

+0

Tôi hiểu những gì bạn muốn làm. Ai là bạn bảo vệ chống lại, và làm thế nào bạn sẽ có quyền truy cập vào bí mật mà bạn sử dụng để mã hóa dữ liệu khi bạn cần nó mà không làm cho nó dễ bị trộm cắp? –

Trả lời

3

Có rất nhiều thư viện mã hóa cho javascript. Đây là lần đầu tiên xuất hiện trên Google: http://crypto.stanford.edu/sjcl/

Người dùng của bạn luôn có thể truy cập vào khóa, vì vậy điều này sẽ không bảo vệ dữ liệu từ người dùng của bạn. Nếu bạn muốn ẩn mọi thứ khỏi người dùng, bạn sẽ phải mã hóa nó trên máy chủ và không bao giờ gửi khóa cho máy khách.

+0

Hmm. Cảm ơn bạn đã đề xuất! – deepakb

+0

Nếu khóa chỉ nằm trong bộ nhớ của trình duyệt, bạn có thể bảo vệ chống lại kẻ tấn công có quyền truy cập hệ thống tệp đặc quyền, nhưng không truy cập bộ nhớ đặc quyền vì trước đây không cấp quyền truy cập vào phân khúc đĩa được sử dụng cho bộ nhớ ảo trong hầu hết các hệ điều hành. Việc giữ các câu trả lời với các bí mật trong bộ nhớ đệm yêu cầu phải rất cẩn thận với các tiêu đề bộ nhớ cache, nhưng có một bộ tiêu đề mà các trình duyệt chính tôn trọng - không phải là các trình duyệt rõ ràng, IIRC. –

+0

@Mike Samuel: bạn có thể xây dựng một chút về giải pháp đó không? Tôi e, làm thế nào để giữ bí mật ra khỏi bộ nhớ cache, và tiêu đề để sử dụng? Nó xứng đáng với câu trả lời của chính nó. –