Phát triển Java 2.0: Bảo đảm an toàn dữ liệu của ứng dụng Java trên điện toán đám mây
Số trang: 23
Loại file: pdf
Dung lượng: 342.92 KB
Lượt xem: 9
Lượt tải: 0
Xem trước 3 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
Trong bài viết này giúp các bạn học cách sử dụng mã hóa khóa bí mật và tiêu chuẩn mã hóa nâng cao (Advanced Encryption Standard) để bảo vệ dữ liệu nhạy cảm của ứng dụng cho đám mây.
Nội dung trích xuất từ tài liệu:
Phát triển Java 2.0: Bảo đảm an toàn dữ liệu của ứng dụng Java trên điện toán đám mây Phát triển Java 2.0: Bảo đảm an toàn dữ liệu của ứng dụng Java trên điện toán đám mây Sử dụng mã hóa khóa bí mật để bảo vệ dữ liệu đám mây An toàn dữ liệu là một mối quan tâm thật sự đối với các tổ chức đang xem xét chọn dùng đám mây, nhưng trong nhiều trường hợp nó chưa phải là vấn đề. Trong bài đăng này về Phát triển Java 2.0, hãy học cách sử dụng mã hóa khóa bí mật và Tiêu chuẩn mã hóa nâng cao (Advanced Encryption Standard) để bảo vệ dữ liệu nhạy cảm của ứng dụng cho đám mây. Bạn cũng sẽ nhận được một hướng dẫn ngắn về chiến lược mã hóa, rất quan trọng để tối đa hóa hiệu quả của các tìm kiếm có điều kiện trên các kho dữ liệu đám mây phân tán. Chỉ trong một vài năm, các nền tảng và các dịch vụ điện toán đám mây đã thay đổi đáng kể bối cảnh về phát triển ứng dụng Java™. Chúng đã hạ thấp các rào cản liên quan đến bảo trì và cấu hình hệ thống và đồng thời đã làm giảm chi phí và tăng tốc độ đưa phần mềm ra thị trường. Về mặt khái niệm, điện toán đám mây có ý nghĩa là: các nhà quản lý kinh doanh thích lợi nhuận do đầu tư mang lại còn các nhà phát triển thích thoát khỏi mã cơ sở hạ tầng. Tuy nhiên, nhiều cơ sở vẫn đang phải vật lộn với việc nên hay không chuyển sang nền tảng đám mây. An toàn dữ liệu là một trong những mối quan tâm chính đối với một tổ chức đang xem xét việc di chuyển hệ thống phần mềm của mình lên một cơ sở hạ tầng đám mây. Dữ liệu càng nhạy cảm thì càng có nhiều lý do để quan tâm. Là các nhà phát triển phần mềm, điều quan trọng là chúng ta hiểu các rủi ro an toàn thực sự của điện toán đám mây lẫn các cách tiếp cận thực tế để giải quyết ít nhất một số trong các mối quan tâm này. Trong bài đăng này về Phát triển Java 2.0, tôi sẽ giải thích điều gì làm cho việc lưu trữ dữ liệu trong đám mây khác với việc lưu trữ nó trên một máy tính trung tâm. Sau đó tôi sẽ giới thiệu cho bạn cách sử dụng các tiêu chuẩn và các tiện ích mã hóa khóa bí mật dựng sẵn của nền tảng Java để giữ an toàn hợp lý cho dữ liệu của bạn, ngay cả khi nó được lưu trữ trên một kho dữ liệu đám mây phân tán. Cuối cùng, tôi sẽ trình bày một cách tiếp cận chiến lược về mã hóa, bằng cách sử dụng các điều kiện truy vấn làm một vạch chuẩn để bạn biết có nên hay không nên mã hóa dữ liệu của mình. Bảo đảm an toàn dữ liệu đám mây Điện toán đám mây chính xác không giới thiệu các vấn đề bảo mật dữ liệu mới; trong hầu hết các trường hợp, nó chỉ khuếch trương các vấn đề này thôi. Việc đưa dữ liệu lên đám mây có khả năng trưng nó ra cho một đối tượng người dùng lớn hơn, đó thường là một điều tốt. Nhưng nếu dữ liệu được trưng ra có ý nghĩa riêng tư hoặc chỉ được truy cập khi có quyền, thì việc đưa dữ liệu lên đám mây có thể là thảm họa. Vấn đề cơ bản với điện toán đám mây là nó tách dữ liệu được giao phó khỏi một nhà phát triển hoặc khỏi việc kiểm soát trực tiếp của quản trị viên hệ thống (sys-admin). Thay vì được lưu trữ và quản lý cục bộ, dữ liệu trong các đám mây được lưu trữ trên các thiết bị phân tán, có thể được đặt ở bất kỳ đâu và bất cứ ai đều có thể truy cập được. Thậm chí nếu trong thực tế công ty của bạn có thể sử dụng kho dữ liệu ở xa, không tập trung, thì bạn cũng muốn các ứng dụng của mình trong đám mây cần bắt đầu có một chút về an toàn dữ liệu. Khi bạn bắt đầu suy nghĩ về an toàn dữ liệu, có hai câu hỏi quan trọng nảy sinh: Dữ liệu có an toàn trong quá trình hoạt động không? Dữ liệu có an toàn trong lúc không hoạt động không? Dữ liệu trong quá trình hoạt động liên quan đến cách dữ liệu truyền đi từ một vị trí này tới vị trí khác, đó là công nghệ và cơ sở hạ tầng truyền thông mà bạn đang sử dụng. Dữ liệu không hoạt động liên quan đến việc bạn lưu trữ dữ liệu như thế nào — và tốt ra sao. Ví dụ, nếu bạn lưu trữ các tên và mật khẩu người dùng trong một cơ sở dữ liệu không mã hóa chúng, thì dữ liệu không hoạt động của bạn sẽ không an toàn. Để bảo vệ dữ liệu trong quá trình chuyển tiếp qua web, hầu hết đều sử dụng HTTPS. Đây là định dạng HTTP có mã hóa dữ liệu chuyển đi từ các trình duyệt đến các khách hàng. Một ưu điểm khác của HTTPS là nó có mặt ở khắp nơi: Hầu hết các nhà phát triển đã cấu hình Apache, Tomcat, Jetty để sử dụng HTTPS. Mã hóa cũng là cơ chế chung để bảo vệ dữ liệu ở phần còn lại và điện toán đám mây không thay đổi điều đó. Trong khi mã hóa có thể là bí mật, bạn chỉ cần biết một số điều cơ bản về mã hóa để giữ an toàn hợp lý cho dữ liệu của ứng dụng của mình. Và một khi dữ liệu của bạn đã an toàn, thì dù bạn dùng dữ liệu cục bộ hay qua một nền tảng điện toán đám mây hoặc kho dữ liệu đều không thành vấn đề. Mã hóa khóa bí mật Mã hóa là quá trình chuyển đổi văn bản thuần, dễ đọc đơn giản với mọi người thành văn bản khó đọc. Bạn mã hóa bằng một thuật toán mật mã, còn được gọi là cipher. Văn bản đã mã hóa được giải mã trở lại thành văn bản dễ đọc qua một khóa, về cơ bản đó là một dạng mật khẩu. Mã hóa giữ an toàn thông tin bằng cách làm cho thông tin trở nên khó đọc với bất cứ ai không có khóa. Người ta thường sử dụng hai kiểu mã hóa dựa trên khóa trong điện toán: mã hóa khóa công khai (dùng chung) và mã hóa khóa bí mật (dùng riêng). Mã hóa khóa công khai là kỹ thuật phổ biến nhất để giữ an toàn dữ liệu trong quá trình chuyển tiếp; trên thực tế, đó là kiến trúc bên dưới của tầng bảo mật giao dịch HTTPS. Dạng mã hóa này đòi hỏi phải có hai khóa trong một bộ khóa công khai-bí mật. Khóa công khai mã hóa dữ liệu còn khóa bí mật được sử dụng để giải mã dữ liệu đó. Trong mã hóa khóa công khai, người ta có thể phân phối khóa công khai một cách an toàn, trong khi khóa bí mật phải chịu sự kiểm soát của một quản trị viên. Mã hóa khóa công khai làm cho việc chia sẻ thông tin mã hóa trở nên dễ dàng. Trong mã hóa khóa bí mật, người ta thường sử dụng một khóa bí mật duy nhất để ...
Nội dung trích xuất từ tài liệu:
Phát triển Java 2.0: Bảo đảm an toàn dữ liệu của ứng dụng Java trên điện toán đám mây Phát triển Java 2.0: Bảo đảm an toàn dữ liệu của ứng dụng Java trên điện toán đám mây Sử dụng mã hóa khóa bí mật để bảo vệ dữ liệu đám mây An toàn dữ liệu là một mối quan tâm thật sự đối với các tổ chức đang xem xét chọn dùng đám mây, nhưng trong nhiều trường hợp nó chưa phải là vấn đề. Trong bài đăng này về Phát triển Java 2.0, hãy học cách sử dụng mã hóa khóa bí mật và Tiêu chuẩn mã hóa nâng cao (Advanced Encryption Standard) để bảo vệ dữ liệu nhạy cảm của ứng dụng cho đám mây. Bạn cũng sẽ nhận được một hướng dẫn ngắn về chiến lược mã hóa, rất quan trọng để tối đa hóa hiệu quả của các tìm kiếm có điều kiện trên các kho dữ liệu đám mây phân tán. Chỉ trong một vài năm, các nền tảng và các dịch vụ điện toán đám mây đã thay đổi đáng kể bối cảnh về phát triển ứng dụng Java™. Chúng đã hạ thấp các rào cản liên quan đến bảo trì và cấu hình hệ thống và đồng thời đã làm giảm chi phí và tăng tốc độ đưa phần mềm ra thị trường. Về mặt khái niệm, điện toán đám mây có ý nghĩa là: các nhà quản lý kinh doanh thích lợi nhuận do đầu tư mang lại còn các nhà phát triển thích thoát khỏi mã cơ sở hạ tầng. Tuy nhiên, nhiều cơ sở vẫn đang phải vật lộn với việc nên hay không chuyển sang nền tảng đám mây. An toàn dữ liệu là một trong những mối quan tâm chính đối với một tổ chức đang xem xét việc di chuyển hệ thống phần mềm của mình lên một cơ sở hạ tầng đám mây. Dữ liệu càng nhạy cảm thì càng có nhiều lý do để quan tâm. Là các nhà phát triển phần mềm, điều quan trọng là chúng ta hiểu các rủi ro an toàn thực sự của điện toán đám mây lẫn các cách tiếp cận thực tế để giải quyết ít nhất một số trong các mối quan tâm này. Trong bài đăng này về Phát triển Java 2.0, tôi sẽ giải thích điều gì làm cho việc lưu trữ dữ liệu trong đám mây khác với việc lưu trữ nó trên một máy tính trung tâm. Sau đó tôi sẽ giới thiệu cho bạn cách sử dụng các tiêu chuẩn và các tiện ích mã hóa khóa bí mật dựng sẵn của nền tảng Java để giữ an toàn hợp lý cho dữ liệu của bạn, ngay cả khi nó được lưu trữ trên một kho dữ liệu đám mây phân tán. Cuối cùng, tôi sẽ trình bày một cách tiếp cận chiến lược về mã hóa, bằng cách sử dụng các điều kiện truy vấn làm một vạch chuẩn để bạn biết có nên hay không nên mã hóa dữ liệu của mình. Bảo đảm an toàn dữ liệu đám mây Điện toán đám mây chính xác không giới thiệu các vấn đề bảo mật dữ liệu mới; trong hầu hết các trường hợp, nó chỉ khuếch trương các vấn đề này thôi. Việc đưa dữ liệu lên đám mây có khả năng trưng nó ra cho một đối tượng người dùng lớn hơn, đó thường là một điều tốt. Nhưng nếu dữ liệu được trưng ra có ý nghĩa riêng tư hoặc chỉ được truy cập khi có quyền, thì việc đưa dữ liệu lên đám mây có thể là thảm họa. Vấn đề cơ bản với điện toán đám mây là nó tách dữ liệu được giao phó khỏi một nhà phát triển hoặc khỏi việc kiểm soát trực tiếp của quản trị viên hệ thống (sys-admin). Thay vì được lưu trữ và quản lý cục bộ, dữ liệu trong các đám mây được lưu trữ trên các thiết bị phân tán, có thể được đặt ở bất kỳ đâu và bất cứ ai đều có thể truy cập được. Thậm chí nếu trong thực tế công ty của bạn có thể sử dụng kho dữ liệu ở xa, không tập trung, thì bạn cũng muốn các ứng dụng của mình trong đám mây cần bắt đầu có một chút về an toàn dữ liệu. Khi bạn bắt đầu suy nghĩ về an toàn dữ liệu, có hai câu hỏi quan trọng nảy sinh: Dữ liệu có an toàn trong quá trình hoạt động không? Dữ liệu có an toàn trong lúc không hoạt động không? Dữ liệu trong quá trình hoạt động liên quan đến cách dữ liệu truyền đi từ một vị trí này tới vị trí khác, đó là công nghệ và cơ sở hạ tầng truyền thông mà bạn đang sử dụng. Dữ liệu không hoạt động liên quan đến việc bạn lưu trữ dữ liệu như thế nào — và tốt ra sao. Ví dụ, nếu bạn lưu trữ các tên và mật khẩu người dùng trong một cơ sở dữ liệu không mã hóa chúng, thì dữ liệu không hoạt động của bạn sẽ không an toàn. Để bảo vệ dữ liệu trong quá trình chuyển tiếp qua web, hầu hết đều sử dụng HTTPS. Đây là định dạng HTTP có mã hóa dữ liệu chuyển đi từ các trình duyệt đến các khách hàng. Một ưu điểm khác của HTTPS là nó có mặt ở khắp nơi: Hầu hết các nhà phát triển đã cấu hình Apache, Tomcat, Jetty để sử dụng HTTPS. Mã hóa cũng là cơ chế chung để bảo vệ dữ liệu ở phần còn lại và điện toán đám mây không thay đổi điều đó. Trong khi mã hóa có thể là bí mật, bạn chỉ cần biết một số điều cơ bản về mã hóa để giữ an toàn hợp lý cho dữ liệu của ứng dụng của mình. Và một khi dữ liệu của bạn đã an toàn, thì dù bạn dùng dữ liệu cục bộ hay qua một nền tảng điện toán đám mây hoặc kho dữ liệu đều không thành vấn đề. Mã hóa khóa bí mật Mã hóa là quá trình chuyển đổi văn bản thuần, dễ đọc đơn giản với mọi người thành văn bản khó đọc. Bạn mã hóa bằng một thuật toán mật mã, còn được gọi là cipher. Văn bản đã mã hóa được giải mã trở lại thành văn bản dễ đọc qua một khóa, về cơ bản đó là một dạng mật khẩu. Mã hóa giữ an toàn thông tin bằng cách làm cho thông tin trở nên khó đọc với bất cứ ai không có khóa. Người ta thường sử dụng hai kiểu mã hóa dựa trên khóa trong điện toán: mã hóa khóa công khai (dùng chung) và mã hóa khóa bí mật (dùng riêng). Mã hóa khóa công khai là kỹ thuật phổ biến nhất để giữ an toàn dữ liệu trong quá trình chuyển tiếp; trên thực tế, đó là kiến trúc bên dưới của tầng bảo mật giao dịch HTTPS. Dạng mã hóa này đòi hỏi phải có hai khóa trong một bộ khóa công khai-bí mật. Khóa công khai mã hóa dữ liệu còn khóa bí mật được sử dụng để giải mã dữ liệu đó. Trong mã hóa khóa công khai, người ta có thể phân phối khóa công khai một cách an toàn, trong khi khóa bí mật phải chịu sự kiểm soát của một quản trị viên. Mã hóa khóa công khai làm cho việc chia sẻ thông tin mã hóa trở nên dễ dàng. Trong mã hóa khóa bí mật, người ta thường sử dụng một khóa bí mật duy nhất để ...
Tìm kiếm theo từ khóa liên quan:
Lập trình Java Lập trình điện thoại di động Lập trình games Điện toán đám mây Ứng dụng Java Mã hóa khóa bí mậtGợi ý tài liệu liên quan:
-
63 trang 175 0 0
-
Bài tập nhóm Kiến trúc ứng dụng trong doanh nghiệp: Bạn ở đâu trong đám mây?
32 trang 155 0 0 -
7 trang 151 0 0
-
Đồ án tốt nghiệp: Nghiên cứu và triển khai điện toán đám mây riêng bằng Hyper-V
81 trang 140 1 0 -
Đề xuất khung kiến trúc ứng dụng cho chính phủ di động dựa trên kiến trúc tổng thể tại Việt Nam
8 trang 133 0 0 -
Mô hình xử lý dữ liệu lớn trên điện toán đám mây theo mô hình ánh xạ - rút gọn
8 trang 132 0 0 -
Tác động của ứng dụng công nghệ tài chính đến hiệu quả hoạt động của ngân hàng thương mại Việt Nam
10 trang 115 0 0 -
Chuyển đổi số: cơ sở và ứng dụng
18 trang 111 0 0 -
Excel add in development in c and c phần 9
0 trang 102 0 0 -
Program C Ansi Programming Embedded Systems in C and C++ phần 4
12 trang 86 0 0