Tìm hiểu về thuật toán bảo mật blowfish

53 3.2K 14
Tìm hiểu về thuật toán bảo mật blowfish

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Tìm hiểu về thuật toán bảo mật Blowfish Mục lục : I. Tổng quan 1. Bảo mật – an ninh mạng 1.1. Nguy cơ an ninh mạng 1.2. Chúng ta cần bảo vệ gì ? 1.3. Các kiểu tấn công mạng 1.4. Xu hướng bảo mật 1.5. Các dịch vụ an ninh mạng 1.6. Các cơ chế an ninh mạng 2. Mã hóa 2.1.Khái niệm chung 2.2.Mã hóa đối xứng 2.3.Mã hóa bất đối xứng 3. Một số thuật toán mã hóa 3.1.Các thuật toán mã hóa bất đối xứng 3.2.Các thuật toán mã hóa đối xứng 3.3.Hàm Hash 3.4 Chữ ký số - Chứng thực II. Thi hành Blowfish 1. Lịch sử - Xuất xứ thuật toán Blowfish 2. Ứng dụng của Blowfish 3. Nghiên cứu về mã hóa đối xứng 3.1 Mô hình mã hóa đối xứng 3.2 Mật mã khối 4. Thuật toán Blowfish III. Kết luận IV. Demo I. Tổng quan 1. Vấn đề bảo mật , an ninh mạng 1.1. Nguy cơ chung Mục tiêu của việc chúng ta nối mạng là để nhiều người có thể dùng chung tài nguyên từ những vị trí địa lý khác nhau, chính vì thế mà các tài nguyên sẽ rất phân tán, dẫn đến một điều tất yếu là dễ bị xâm phạm gây mất mát dữ liệu, thông tin. Càng giao thiệp rộng thì nguy cơ bị tấn công càng lớn . Trên mạng , mọi nguy cơ đều có thể nguy hiểm và các lỗi hệ thống , khe hở lớn nhỏ đều có nguy cơ gây ra thiệt hại như nhau . Mạng Internet đã làm thay đổi cuộc sống của con người, làm thay đổi công việc kinh doanh làm cho nó trở nên dễ dàng hơn. Nhưng đồng thời với lợi ích to lớn của nó, mạng Internet cùng với các công nghệ liên quan đã mở ra một cánh cửa làm tăng số lượng các vụ tấn công vào những công ty , cơ quan và cả những cá nhân, nơi lưu giữ những dữ liệu nhạy cảm như bí mật Quốc gia, số liệu tài chính, số liệu cá nhân Hậu quả của các cuộc tấn công này có thể chỉ là phiền phức nhỏ, nhưng cũng có thể làm suy yếu hoàn toàn, các dữ liệu quan trọng bị xóa, sự riêng tư bị xâm phạm, và chỉ sau vài ngày, thậm chí vài giờ sau, toàn bộ hệ thống có thể bị tê liệt hoàn toàn. Các nhận định sai lầm : + Thông tin bị mất thường là do các kẻ tấn công bên ngoài đột nhập và đánh cắp . Thực tế thì 80% dữ liệu bị mất là do những người bên trong hệ thống gây ra . + Chỉ cần mã hóa dữ liệu là đủ khả năng bảo mật dữ liệu . Thực chất mã hóa chỉ là một bước trong một cơ chế bảo mật mà thôi . a. Tình hình thế giới : Theo kết quả khảo sát do viện An ninh Mát tính CSI phối hợp cùng với Cục điều tra Liên bang Mỹ FBI thì các vụ đánh cắp thông tin mật gây thiệt hại lớn nhất là 2,7 tr USD mỗi vụ . Theo báo Computer Economics thì chỉ tính riêng năm 2003 , các loại sâu và virus máy tính đã gây thiệt hại 12,5 tỷ USD . Và chiều hướng các năm sau thì thiệt hại ngày càng gia tăng . Theo nhóm nghiên cứu thị trường Meta Group : + Chỉ có khoảng 8-10% ngân sách CNTT dành cho vấn đề bảo mật và an toàn thông tin . Nhưng theo dự đoán thì tỷ lệ này ngày càng gia tăng . + Thị trường an ninh CNTT Châu Á đã tăng trưởng trên 20% từ giai đoạn sau năm 2003 đến nay , con số này lớn gấp gần 2 lần tỷ lệ tăng trưởng của thị trường dịch vụ CNTT nói chung. b. Ở Việt Nam : Chưa bao giờ vấn đề bảo mật và an toàn dữ liệu lại được coi trọng như hiện nay, trong bối cảnh mạng máy tính phá bỏ mọi ngăn cách , mọi lúc , mọi nơi , người ta đều có thể lấy được thông tin , dữ liệu cần thiết . Thông tin đã trở thành một nguồn tài nguyên quan trọng đối với các tổ chức , doanh nghiệp , cá nhân . Con người tập trung nhiều sức lực , trí tuệ để có thông tin nhanh , chính xác . Ai có thông tin ,kẻ đó chiến thắng . Bởi vậy , thông tin đã trở thành mục tiêu săn đuổi . Với sự phát triển của CNTT , hầu như mọi thứ đều được số hóa , đặc biệt là thông tin . Soạn thảo hợp đồng , văn bản bằng word . gửi thư qua các dịch vụ e- mail , thanh toán qua thẻ tin dụng … nói chung , mọi người làm việc , giao dịch đều qua máy tính và mạng . Ta không thể làm khác đi bởi sẽ bị cô lập , sẽ luôn chậm hơn và mất khả năng cạnh tranh , dẫn tới thua cuộc . Do đó , các thông tin , dữ liệu người dùng luôn là mục tiêu bị tấn công . Người dùng phải có các phương thức phòng chống , bảo mật . Tại Việt Nam , vấn đề bảo mật hệ thống thông tin bắt đầu nóng dần lên và đang sẵn sang cho nhu cầu bảo mật từ quy mô nhỏ đến lớn . 1.2. Chúng ta cần bảo vệ gì ? a. Dữ liệu + Tính bảo mật : phân quyền sử dụng dữ liệu đúng , ngăn chặn việc khám phá trái phép các dữ liệu và đảm bảo xác thực nguồn gốc dữ liệu . + Tính toàn vẹn : không bị sửa đổi trái phép , gây hỏng + Tính kịp thời ( tính sẵn sàng ) : ngăn chặn , không cho phép làm trễ dữ liệu và chống chối bỏ . b. Tài nguyên Tài nguyên máy tính của các cá nhân có thể bị lợi dụng bởi những kẻ tấn công để tạo ra các khe hở , các nguy cơ cho các cuộc tấn công khác . Do đó . chúng ta cần phải bảo vệ tài nguyên . c. Danh tiếng 1.3. Các kiểu tấn công : Một cách phân loại các tấn công an ninh, sử dụng cả X.800 và RFC 2828, là phân biệt chúng thành các tấn công thụ động và các tấn công chủ động. Tấn công thụ động cố gắng tìm hiểu hoặc sử dụng thông tin trong hệ thống nhưng không động chạm đến tài nguyên hệ thống. Tấn công chủ động sẽ cố gắng làm xáo trộn, biến đổi tài nguyên hệ thống hoặc áp đặt các hành động của chúng vào hệ thống. a.Tấn công thụ động: Các tấn công thụ động là các hành động nghe/xem trộm hay theo dõi các hành động và thông tin chuyển phát. Mục đích của kẻ tấn công là lấy thông tin được truyền phát. Hai kiểu tấn công thụ động là làm thất thoát nội dung thông điệp và phân tích liên lạc (còn gọi là phân tích giao thông – traffic analysis). Việc thất thoát nội dung thông điệp có thể hiểu đơn giản như sau : Một cuộc đàm thoại, một thư điện tử và một tập tin được truyền đi có thể chứa các thông tin nhạy cảm, bí mật. Chúng ta mong muốn chống lại những kẻ tọc mạch muốn tìm hiểu các thông tin này. Một loại khác của tấn công thụ động, phân tích liên lạc, do kẻ cực kỳ tinh vi, xảo quyệt . Giả sử rằng chúng ta sẵn có một cách để ẩn giấu nội dung các thông điệp hay các thông tin kỹ thuật vận chuyển, mà một kẻ rình mò, kể cả khi có bắt được thông điệp cũng không khai thác được thông tin trong thông điệp đó. Kỹ thuật chung để ẩn giấu nội dung là mã hóa. Nếu ta sẵn có bảo vệ mã hóa tại chỗ, thì đối phương vẫn có khả năng quan sát khuôn mẫu của các thông điệp này. Kẻ trộm xảo quyệt có thể xác định vị trí và nhận dạng của các bên truyền thông liên quan và có thể theo dõi tần số và độ dài của thông điệp được truyền. Thông tin này rất có thể hữu ích để phỏng đoán về nội dung mà cuộc liên lạc đã diễn ra. Tấn công thụ động là vô cùng khó phát hiện, bởi nó chẳng đòi hỏi một sự thay đổi thông tin nào. Thông thường, các thông điệp được gửi và nhận với dáng vẻ bề ngoài không có gì bất thường, nguời nhận cũng như người gửi không nhận biết được thông tin đã bị đọc lén bởi một kẻ thứ ba hay theo dõi quá trình truyền nhận. Tuy nhiên, có khả năng chống lại một cách thành công các loại tấn công này, thường là bằng biện pháp mã hóa. Vì thế, chúng ta nhấn mạnh rằng, để đương đầu với các tấn công thụ động thì biện pháp chủ yếu là chống lại chứ không phải là phát hiện. b.Tấn công chủ động: Các tấn công chủ động đòi hỏi sự sửa đổi trong luồng dữ liệu hay đòi hỏi tạo ra một luồng dữ liệu sai khác, và có thể được chia nhỏ thành bốn loại: giả dạng (masquerade), nhại lại (replay), sửa thông điệp (modification of message), và từ chối dịch vụ (denial of service). Sự giả dạng diễn ra khi một thực thể có ý định là một thực thể khác. Một tấn công giả dạng thường kèm theo một trong các dạng còn lại của tấn công chủ động. Ví dụ, các chứng thực tuần tự có thể bị đoạt mất và rồi nhại lại sau một phiên chứng thực tuần tự diễn ra hợp lệ. Điều này trao cơ hội cho một thực thể giả dạng được cấp phép một số quyền, để từ đó, khai thác thêm một số quyền khác nữa bằng cách thủ vai, giả dạng, của một thực thể có quyền thực sự. Tấn công nhại lại đòi hỏi việc bắt giữ một cách thụ động một đơn vị dữ liệu và cả bản sao của đơn vị dữ liệu này được truyền lại sau thời gian trễ nhất định để tạo ra một hiệu ứng trái phép . Sửa thông điệp đơn giản là kiểu tấn công mà một phần nào đó của thông điệp hợp lệ bị thay thế, hoặc thông điệp đó bị trì hoãn, hay bị sắp xếp lại để đưa ra một hiệu ứng trái phép . Chẳng hạn, một thông điệp với ý nghĩa: “Cho phep Mr.A doc tap tin bi mat accounts” bị sửa thành “Cho phep Mrs.B doc tap tin bi mat accounts”. Từ chối dịch vụ chống lại hoặc cấm đoán việc sử dụng bình thường hay là quản lý sự thuận lợi trong liên lạc . Loại tấn công này thường có các mục tiêu chỉ định; ví dụ, một thực thể có thể chặn lại tất cả các thông điệp trực tiếp đến một đích, một địa chỉ cụ thể (chẳng hạn là dịch vụ kiểm tra an ninh). Một dạng khác của từ chối dịch vụ là gây “sập” mạng bằng cách hoặc là vô hiệu hóa toàn mạng, hoặc là làm cho mạng quá tải bởi các thông điệp và làm cho hoạt động mạng suy biến tồi tệ. Tấn công chủ động là các hình thức tấn công có các đặc trưng ngược lại với tấn công thụ động. Trong khi tấn công thụ động rất khó để phát hiện, các biện pháp và phương tiện đo lường có thể được đưa ra để chống lại. Ngược lại, hết sức khó để chống lại hoàn toàn các tấn công chủ động, bởi vì có rất nhiều tính dễ tổn thương về vật lý, phần mềm và mạng. Thay vì chống lại, mục tiêu là phát hiện các tấn công chủ động và phục hồi lại các tổn thất chúng gây ra. Nếu phát hiện tốt các tấn công chủ động, thì nó có thể đóng góp cho các biện pháp chống lại. 1.4. Các xu hướng bảo mật : Năm 1994, Ủy ban Kiến trúc Internet (Internet Architecture Board - IAB) phát hành một báo cáo nhan đề “An ninh trong kiến trúc Internet” (RFC 1636). Báo cáo phát biểu về sự nhất trí chung rằng Internet cần có an ninh tốt hơn nữa, và nó chỉ ra các lĩnh vực quan trọng cho các cơ chế an ninh. Các lĩnh vực này gồm sự cần thiết bảo vệ cơ sở hạ tầng mạng khỏi sự xâm nhập hay theo dõi trái phép, hay điều khiển bất hợp pháp hoạt động mạng, và sự cần thiết bảo mật toàn bộ giao thông mạng từ người dùng đến người dùng có sử dụng cơ chế xác thực và các cơ chế mã hóa. Các vấn đề quan tâm trên đã được chứng minh là đúng đắn. Như một sự xác nhận, ta nghiên cứu các xu hướng đã được báo cáo với Đơn vị phối hợp phản ứng nhanh các vấn đề máy tính (Computer Emegency Response Team (CERT) Co-ordination Center) (CERT). Hình (a) minh họa xu hướng tổn thương liên quan đến Internet trong thời gian 10 năm từ 1995 đến 2004 mà CERT đã được báo cáo. Các báo cáo này cho thấy tình trạng yếu kém của các hệ điều hành sử dụng trên các máy tính bị tấn công (chẳng hạn Windows, Linux) cũng như tính dễ tổn thương ở các bộ tìm đường Internet (Router) và các thiết bị mạng khác. Hình (b) cho thấy số vụ việc liên quan đến an ninh đã xảy ra mà CERT biết tới. Các vụ việc này gồm các kiểu từ chối dịch vụ; các địa chỉ IP lừa bịp do những kẻ xâm phạm tạo ra cho các gói tin nhằm khai thác các ứng dụng có sử dụng dịch vụ chứng thực liên quan đến IP; vô số hình thức nghe/xem trộm mà những kẻ tấn công đọc các thông tin được truyền đi, bao gồm cả các thông tin đăng nhập và nội dung của các cơ sở dữ liệu. Trong thời gian này, các tấn công trên mạng Internet và các hệ thống gắn liền với Internet nổi lên ngày càng tinh vi, trong khi kỹ năng và trình độ yêu cầu để trấn áp thì lại có xu hướng đi xuống . Các cuộc tấn công ngày càng trở nên tự động hóa và gây ra những thiệt hại không lồ. Sự gia tăng các cuộc tấn công tỷ lệ thuận với nhu cầu sử dụng Internet và cũng tỷ lệ thuận với sự phức tạp của các giao thức và ứng dụng hay la sự phức tạp của Internet nói chung. Tình trạng nguy kịch của cơ sở hạ tầng ngày càng trở nên phụ thuộc vào hoạt động của Internet. Người dùng cũng phụ thuộc ngày càng nhiều vào an ninh của Internet, của thư điện tử, Web và các ứng dụng dựa trên Web, và sự phụ thuộc ấy cao hơn bao giờ hết. Do đó, một lĩnh vực rộng lớn của công nghệ và công cụ được đòi hỏi để chống lại các nguy cơ an ninh bảo mật ngày một tăng lên. Ở mức độ cơ bản nhất, các thuật toán của khoa học mật mã để bảo đảm tính tin cậy (confidentiality) và chứng thực (authentication) là cực kỳ quan trọng. Các nhà thiết kế cũng cần phải quan tâm đến các giao thức Internet và tính dễ tổn thương của các hệ điều hành cũng các ứng dụng liên quan. 1.5. Các dịch vụ an ninh : X.800 định nghĩa một dịch vụ an ninh như là một dịch vụ hỗ trợ bởi một tầng giao thức trong truyền thông của các hệ thống mở, là tầng bảo đảm an ninh thỏa đáng của các hệ thống hay các thực thể truyền dữ liệu. Có lẽ, một định nghĩa an ninh rõ ràng hơn được tìm thấy trong RFC 2828, nó đưa ra định nghĩa sau: là một dịch vụ xử lý hay dịch vụ liên lạc đưa ra bởi một hệ thống để cung cấp một phương thức bảo vệ chỉ định đối với các tài nguyên hệ thống; các dịch vụ an ninh thi hành chính sách bảo mật và được thi hành bằng các cơ chế an ninh. X.800 chia các dịch vụ này thành năm loại và mười bốn dịch vụ cụ thể như trong bảng sau : AUTHENTICATION (chứng thực) Sự tin chắc về thực thể đang liên lạc là đúng với sự thỉnh cầu. Chứng thực ngang cấp Được sử dụng kết hợp với một kết nối logic nhằm hỗ trợ sự tin cậy cần thiết trong việc nhận diện các thực thể đang kết nối đến. Chứng thực nguồn gốc dữ liệu Trong một phiên truyền gửi sử dụng kết nối không thường xuyên (connectionless), loại chứng thực này đưa ra sự tin chắc rằng nguồn gốc của dữ liệu nhận được là đúng như thỉnh cầu. ACCESS CONTROL (điều khiển truy xuất) Việc chống lại sự sử dụng trái phép tài nguyên (tức là, loại dịch vụ này điều khiển người có thể truy xuất đến tài nguyên, truy xuất xảy ra với điều kiện nào, và truy xuất tài nguyên nào được cho phép). DATA CONFIDENTALITY DATA INTEGRITY (Tính toàn vẹn dữ liệu) Sự chắc chắn rằng dữ liệu nhận được là chính xác như nó được gửi bởi một thực thể đã được cấp phép (tức là, không chứa bất cứ sửa đổi, chèn, xóa hay nhại lại) Tính toàn vẹn của kết nối có phục hồi Hỗ trợ cho tính toàn vẹn cho tất cả dữ liệu người dùng trong phiên kết nối và phát hiện bất cứ một sự sửa đổi, chèn, xóa, hay nhại lại của bất cứ dữ liệu trong một tập tuần tự các dữ liệu đến, bao gồm các cố gắng phục hồi. Tính toàn vẹn của kết nối không phục hồi Giống như trên nhưng chỉ hỗ trợ phát hiện mà không phục hồi. Tính toàn vẹn kết nối có sử dụng các lựa chọn trường dữ liệu Hỗ trợ cho tính toàn vẹn của các trường dữ liệu lựa chọn chứa trong khối dữ liệu người dùng truyền (Tính tin cậy của dữ liệu) Bảo vệ dữ liệu trước các khai thác trái phép Tính tin cậy của kết nối Bảo vệ dữ liệu người dùng trong một phiên kết nối. Tính tin cậy của kết nối không thường xuyên Bảo vệ dữ liệu người dùng trong một khối dữ liệu (data block) Tính tin cậy của các trường lựa chọn Tính tin cậy của các trường thông tin đã được lựa chọn trong dữ liệu người dùng của một phiên kết nối hay trong một khối dữ liệu. Tính tin cậy của luồng chuyển vận Sự bảo vệ các thông tin mà rất có thể bị theo dõi trên các đường vận chuyển. trong một phiên kết nối và xác định khối dữ liệu có bị sửa đổi, chèn, xóa hay nhại lại hay không dựa trên các trường dữ liệu lựa chọn được sử dụng trong khối dữ liệu. Tính toàn vẹn của kết nối không thường xuyên Hỗ trợ cho tính toàn vẹn từng khối dữ liệu của một phiên kết nối không thường xuyên, và có thể thực hiện một hình thức kiểm tra nào đó về sự sửa đổi dữ liệu. Thêm nữa, một dạng kiểm tra sự nhại lại nào đó cũng có thể được áp dụng để hỗ trợ. Tính toàn vẹn của kết nối không thường xuyên có sử dụng các trường dữ liệu lựa chọn Hỗ trợ cho tính toàn vẹn của các trường dữ liệu lựa chọn chứa trong khối dữ liệu người dùng. Xác định khối dữ liệu có bị sửa đổi, chèn, xóa hay nhại lại hay không NONREPUDIATION (Không từ chối) Hỗ trợ việc chống lại các hình thức từ chối dịch vụ mà một trong các thực thể đòi hỏi trong một phiên liên lạc Không từ chối, nơi gửi Chứng minh các thông điệp được gửi đi bởi người gửi chỉ định. Không từ chối, nơi nhận Chứng minh rằng thông điệp được nhận bởi người nhận chỉ định. a. Chứng thực (Authentication) Dịch vụ chứng thực liên quan đến sử bảo đảm rằng một phiên liên lạc là xác thực, đáng tin. Trong trường hợp một thông điệp đơn, chẳng hạn như một cảnh báo hay một tín hiệu báo động, chức năng của dịch vụ chứng thực là bảo đảm với người nhận rằng đó là thông điệp đến từ một nguồn đích thực. Trong trường hợp của một phiên giao tiếp liên tục, chẳng hạn như một kết nối giữa một thiết bị đầu cuối với một máy chủ, thì hai vấn đề được đặt ra. Thứ nhất, tại thời điểm mở kết nối, dịch vụ bảo đảm về sự đích thực của cả hai phía kết nối, tức là mỗi thực thể đều mong muốn phía kia. Thứ hai, dịch vụ phải bảo đảm rằng kết nối không bị can thiệp bằng một cách nào đó mà một bên thứ ba có thể giả dạng như một trong hai thực thể hợp pháp với các chức năng truyền nhận trái phép. Hai dịch vụ chúng thực được định nghĩa trong X.800 là: Chứng thực ngang cấp: (peer entity authentication) : Cung cấp sự làm chứng cho việc nhận dạng kết hợp trong một mối quan hệ ngang cấp. Dịch vụ này cung cấp sự chứng thực tại thời điểm mở kết nối hay trong các pha của các lần truyền dữ liệu của một kết nối. Nó cố gắng đảm bảo sự tin cậy mà một thực thể không phải thực hiện giả mạo hoặc nhại lại trái phép từ một trong các phiên kết nối trước Chứng thực dữ liệu nguyên bản (Data origin authentication): cung cấp sự làm chứng về một đơn vị dữ liệu của một nguồn. Dịch vụ này không cung cấp sự bảo vệ chống lại tái bản hay sửa đổi các đơn vị dữ liệu. Kiểu dịch vụ này cung cấp các ứng dụng như thư điện tử, nơi mà không có các giao tiếp trước giữa các bên liên lạc. b.Điều khiển truy xuất Trong ngữ cảnh về an ninh mạng, điều khiển truy xuất là khả năng để giói hạn và điều khiển truy xuất đến các hệ thống chủ và các ứng dụng thông qua các liên kết truyền thông. Để có được điều này, mỗi thực thể đang cố gắng kết nối trước hết phải được nhận dạng, hay chứng thực, qua đó các quyền truy xuất có thể được đáp ứng theo các cách riêng. c.Tính tin cậy của dữ liệu Tính tin cậy dữ liệu là việc bảo vệ các dữ liệu dưới sự tấn công thụ động. Với sự quan tâm đến nội dung của dữ liệu cần truyền, một số cấp độ bảo vệ có thể nhận biết được. Cấp dịch vụ bên ngoài nhất sẽ bảo vệ tất cả dữ liệu được truyền giữa hai người dùng trong một quãng thời gian. Chẳng hạn, khi một kết nối TCP được thiết lập giữa hai hệ thống, vòng bảo vệ mức rộng đầu tiên này chống lại bất cứ việc làm thất thoát dữ liệu người dùng truyền trong kết nối TCP. Một dạng hẹp hơn của dịch vụ này cũng được xác định, bao gồm sự bảo vệ một thông điệp hay kể cả chỉ một trường thông tin bất kỳ trong thông điệp. Sự cải tiến này ít dùng hơn phương pháp trước và nó cũng phức tạp hơn và tốn phí hơn trong việc thi hành. Một khía cạnh khác của tính tin cậy là sự bảo vệ dòng chuyển vận dữ liệu dưới dạng tấn công theo dõi phân tích đường truyền. Điều này đòi hỏi sự không cho kẻ tấn công có đưựoc khả năng quan sát nguồn và đích, tần số, độ dài, hay các đặc trưng khác của đường vận chuyển dữ liệu trong một phiên liên lạc. d.Tính toàn vẹn dữ liệu Giống như tính tin cậy, tính toàn vẹn có thể được áp dụng cho một luồng các thông điệp, một thông điệp hay chỉ các trường thông tin lựa chọn trong một thông điệp. Một lần nữa, lợi ích nhất và phương pháp trung thực nhất là bảo vệ toàn bộ luồng. Một dịch vụ bảo toàn kết kối có hướng (connection-oriented), là dịch vụ xử lý một luồng các thông điệp, bảo đảm cho các thông điệp nhận được như đã được gửi, không có sao chép nhân bản, không có việc chèn thêm, hay sửa đổi, thay đổi trật tự hay nhại lại. Việc hủy hoại dữ liệu cũng được kiểm soát bởi dịch vụ này. Do đó, dịch vụ bảo toàn kết nối có hướng quan tâm tới cả việc sửa đổi luồng thông điệp và từ chối dịch vụ. Trong khi đó, một dịch vụ bảo toàn kết nối không thường xuyên (connectionless), là dịch vụ giải quyết với từng thông điệp riêng lẻ, mà không quan tâm tới vấn đề khác. Thông thường, dịch vụ này chỉ quan tâm chống lại việc sửa đổi nội dung thông điệp mà thôi. Chúng ta có thể chỉ ra sự phân biệt rõ ràng giữa các dịch vụ có và không phục hồi. Bởi vì, dịch vụ bảo toàn có liên quan đến các tấn công chủ động, chúng ta quan tâm đến sự phát hiện hơn là chống lại. Nếu có một sự vi phạm về tính toàn vẹn được phát hiện, thì dịch vụ có thể đơn giản là báo cáo sự vi phạm này, và một hay vài phần khác của phần mềm hoặc chính bản thân con người can thiệp vào để phục hồi sự xâm phạm này. Một cách khác, có các cơ chế sẵn sàng để phục hồi những tổn thất trong tính toàn vẹn dữ liệu như chúng ta sẽ xem xét trong các mục kế tiếp. Sựu phối hợp của các cơ chế mang tính tự động, nói một cách tổng quát, là một sự thay thế rất hứa hẹn và đáng xem xét. e.Không từ chối Dịch vụ “không từ chối” ngăn chặn, chống lại việc có thể xảy ra - hoặc là người gửi, hoặc người nhận hoặc cả hai – sự từ chối một thông điệp đã được truyền/nhận. Do thế, một thông điệp khi được gửi đi, người nhận có thể chứng minh rằng thực sự đã có một người gửi hợp pháp đã gửi nó. Tương tự như vậy, khi một thông điệp được nhận, người gửi cũng chứng minh được rằng, người nhận hợp pháp đã thực sự nhận được thông điệp. * Tính sẵn dùng của dịch vụ : Cả X.800 và RFC2828 đều định nghĩa tính sẵn dùng là đặc tính của một hệ thống hay một hệ thống tài nguyên truy xuất được và sử dụng được theo nhu cầu thực sự của một thực thể hệ thống hợp pháp đã được cấp phép, tuân thủ theo sự thi hành [...]... II Thi hành Blowfish 1 Lịch sử - xuất xứ của thuật toán blowfish Blowfish là một thuật toán mã hóa đối xứng khối được Bruce Schneier thiết kế vào năm 1993 và được sử dụng rất nhiều trong các bộ mã và sản phẩm bảo mật hiện nay Blowfish cung cấp một phương thức mã hóa tốt cho phần mềm và cho đến hiện nay vẫn chưa bị “ bẻ gãy “ Schneier thiết kế thuật toán Blowfish theo nền tảng là thuật toán twofish... nhiều hơn các kỹ thuật mã hóa khóa đối xứng nhưng những lợi điểm mà chúng mang lại khiến cho chúng được áp dụng trong nhiều ứng dụng Về khía cạnh an toàn, các thuật toán mã hóa khóa bất đối xứng cũng không khác nhiều với các thuật toán mã hóa khóa đối xứng Có những thuật toán được dùng rộng rãi, có thuật toán chủ yếu trên lý thuyết; có thuật toán vẫn được xem là an toàn, có thuật toán đã bị phá vỡ... với quá trình thi hành của thuật toán mã hóa Nó nhận ciphertext và mật khóa, và đưa ra văn bản gốc Có hai yêu cầu bảo mật khi sử dụng mã hóa qui ước: 1 Chúng ta cần một thuật toán mã hóa mạnh Ít nhất, chúng ta mong muốn thuật toán phải bảo đảm được rằng một kẻ tò mò nào đó biết được thuật toán và truy xuất vào một hay nhiều đoạn ciphertext cũng không thể giải mã hay tìm được mật khóa Yêu cầu này thường... cao hơn Các thuật toán đối xứng nói chung đòi hỏi công suất tính toán ít hơn các thuật toán khóa bất đối xứng (asymmetric key algorithms) Trên thực tế, một thuật toán khóa bất đối xứng có khối lượng tính toán nhiều hơn gấp hằng trăm, hằng ngàn lần một thuật toán khóa đối xứng (symmetric key algorithm) có chất lượng tương đương Hạn chế của các thuật toán khóa đối xứng bắt nguồn từ yêu cầu về sự phân... thay thế thuật toán cũ DES ( chuẩn mã hóa dữ liệu ) và giải quyết các khó khăn của các thuật toán khác Ông tuyên bố rằng blowfish sẽ được sử dụng tự do trên toàn thế giới , tức blowfish không đòi hỏi bản quyền khi sử dụng như một số thuật toán khác Chính vì thế , blowfish ngày càng được ứng dụng rộng rãi 2 Ứng dụng của blowfish Phần sau đây được trích dẫn từ trang web của tác giá thuật toán blowfish. .. Nghiên cứu về mã hóa đối xứng 3.1 Mô hình mã hóa đối xứng Một mô hình mã hóa đối xứng có năm bộ phận hợp thành Plaintext: là thông điệp đọc được hoặc dữ liệu để nạp cho thuật toán như đầu vào Thuật toán mã hóa: thi hành các thay thế và dịch chuyển cần thiết đối với plaintext Mật khóa: khóa bí mật, cũng là đầu vào của thuật toán mã hóa Khóa là một giá trị độc lập với plaintext và thuật toán Thuật toán sẽ... dịch đúng đắn của thuật toán tùy thuộc vào mật khóa Ciphertext: là thông điệp đã được đổi tại đầu ra của thuật toán Nó phụ thuộc vào plaintext và mật khóa Cho trước một thông điệp, hai mật khóa khác nhau sẽ đưa ra hai ciphertext khác nhau Ciphertext là một dáng vẻ ngẫu nhiên nhìn thấy được của thông điệp hay dữ liệu, nhưng không thể hiểu được nội dung Thuật toán giải mã: là thuật toánvề bản chất là... Elgamal d Thuật toán Paillier Cryptosystem Paillier cryptosystem là một thuật toán được phát triển bởi Pascal Paillier 3.2 Thuật toán mã đối xứng : a Thuật toán mã hóa dữ liệu bí mật quốc tế ( IDEA ) IDEA được thiết kế năm 1990 bởi Xuejis Lai và James Massey và trải qua nhiều lần sửa chữa, cải tiến và đổi tên trước khi có dạng như hiện nay Mặc dù tương đối mới nhưng nó là thuật toán bảo mật khá tốt... càng được bảo mật nhưng làm giảm tốc độ mã hóa/giải mã của thuật toán Bảo mật tốt đạt được khi có sự khuếch tán tốt Thông thường, một khối 64 bit được coi là một phép cân bằng các yếu tố chấp nhận được và nó gần như là phổ biến trong tất cả các thiết kế thuật toán mật mã khối Tuy nhiên thuật toán AES mới sử dụng một kích thước khối 128 bit Kích thước khóa: Kích thước khóa càng lớn càng được bảo mật nhưng... các hệ thống mật mã hiện đại, cả hai thuật toán bất đối xứng (asymmetric) (dùng khóa công khai) và thuật toán đối xứng được sử dụng phối hợp để tận dụng các ưu điểm của cả hai Những hệ thống sử dụng cả hai thuật toán bao gồm : SSL (Secure Sockets Layer), PGP (Pretty Good Privacy) và GPG (GNU Privacy Guard) v.v Các thuật toán khóa bất đối xứng được sử dụng để phân phối khóa mật cho thuật toán đối xứng . Tìm hiểu về thuật toán bảo mật Blowfish Mục lục : I. Tổng quan 1. Bảo mật – an ninh mạng 1.1. Nguy cơ an ninh mạng 1.2. Chúng ta cần bảo vệ gì. Xuất xứ thuật toán Blowfish 2. Ứng dụng của Blowfish 3. Nghiên cứu về mã hóa đối xứng 3.1 Mô hình mã hóa đối xứng 3.2 Mật mã khối 4. Thuật toán Blowfish III.

Ngày đăng: 10/02/2014, 13:20

Từ khóa liên quan

Mục lục

  • Tìm hiểu về thuật toán bảo mật Blowfish

  • I. Tổng quan

    • 1. Vấn đề bảo mật , an ninh mạng

      • 1.1. Nguy cơ chung

      • 1.2. Chúng ta cần bảo vệ gì ?

        • a. Dữ liệu

        • b. Tài nguyên

        • c. Danh tiếng

        • 1.3. Các kiểu tấn công :

          • a.Tấn công thụ động:

          • b.Tấn công chủ động:

          • 1.4. Các xu hướng bảo mật :

          • 1.5. Các dịch vụ an ninh :

            • a. Chứng thực (Authentication)

            • b.Điều khiển truy xuất

            • c.Tính tin cậy của dữ liệu

            • d.Tính toàn vẹn dữ liệu

            • e.Không từ chối

            • 1.6 Các cơ chế an ninh

            • 2. Khoa học Mật mã :

              • 2.1 Khái niệm chung :

              • 2.2. Mã hóa đối xứng :

              • 2.3. Mã hóa bất đối xứng

              • 3. Một số thuật toán mã hóa

                • 3.1 Thuật toán khóa công khai

                  • b. Thuật toán thỏa thuận khóa Diffie-Hellman

                  • c. Thuật toán Elgamal :

                  • d. Thuật toán Paillier Cryptosystem

Tài liệu cùng người dùng

Tài liệu liên quan