Luận văn An toàn thông tin sàn giao dịch thương mại điện tử tỉnh Thái Nguyên

ĐẠI HỌC THÁI NGUYÊN TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG –––––––––––––––––––––––––– HÀ QUANG VŨ AN TOÀN THÔNG TIN SÀN GIAO DỊCH THƯƠNG MẠI ĐIỆN TỬ TỈNH THÁI NGUYÊN LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH THÁI NGUYÊN - 2017 ĐẠI HỌC THÁI NGUYÊN TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG –––––––––––––––––––––––––– HÀ QUANG VŨ AN TOÀN THÔNG TIN SÀN GIAO DỊCH THƯƠNG MẠI ĐIỆN TỬ TỈNH THÁI NGUYÊN Chuyên ngành: Khoa học máy tính Mã số: 60

pdf70 trang | Chia sẻ: huong20 | Ngày: 13/01/2022 | Lượt xem: 279 | Lượt tải: 0download
Tóm tắt tài liệu Luận văn An toàn thông tin sàn giao dịch thương mại điện tử tỉnh Thái Nguyên, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
0 48 01 01 LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH Người hướng dẫn khoa học: PGS.TS. Đỗ Trung Tuấn THÁI NGUYÊN - 2017 i LỜI CAM ĐOAN Tôi xin cam đoan luận văn này do chính tôi thực hiện, dưới sự hướng dẫn khoa học của PGS.TS. Đỗ Trung Tuấn, các kết quả lý thuyết được trình bày trong luận văn là sự tổng hợp từ các kết quả đã được công bố và có trích dẫn đầy đủ, số liệu và kết quả của chương trình thực nghiệm trong luận văn này được tác giả thực hiện là hoàn toàn trung thực, nếu sai tôi hoàn toàn chịu trách nhiệm. ii LỜI CẢM ƠN Luận văn này được hoàn thành tại Trường Đại học Công nghệ Thông tin và Truyền thông dưới sự hướng dẫn của PGS.TS. Đỗ Trung Tuấn. Tác giả xin bày tỏ lòng biết ơn tới các thầy cô giáo thuộc Trường Đại học Công nghệ Thông tin và Truyền thông đã tạo điều kiện và giúp đỡ tác giả trong quá trình học tập và làm luận văn tại Trường, đặc biệt tác giả xin bày tỏ lòng biết ơn tới PGS.TS. Đỗ Trung Tuấn đã tận tình hướng dẫn và cung cấp nhiều tài liệu cần thiết để tác giả có thể hoàn thành luận văn đúng thời hạn. Xin chân thành cảm ơn anh chị em học viên cao học và bạn bè đồng nghiệp đã trao đổi, động viên và khích lệ tác giả trong quá trình học tập và làm luận văn tại Trường Đại học Công nghệ Thông tin và Truyền thông - Đại học Thái Nguyên. iii MỤC LỤC LỜI CAM ĐOAN ........................................................................................................ i LỜI CẢM ƠN ............................................................................................................. ii MỤC LỤC ................................................................................................................. iii DANH SÁCH CÁC TỪ VIẾT TẮT .......................................................................... vi DANH MỤC CÁC HÌNH VẼ, BẢNG BIỂU ........................................................... vii MỞ ĐẦU .................................................................................................................... 1 CHƯƠNG 1: VỀ THƯƠNG MẠI ĐIỆN TỬ VÀ AN TOÀN THÔNG TIN ....... 4 1.1. Khái niệm cơ bản về thương mại điện tử ......................................................... 4 1.1.1. Giới thiệu ................................................................................................... 4 1.1.2. Mua hàng ................................................................................................... 4 1.1.3. Bán hàng .................................................................................................... 5 1.1.4. Khái niệm thương mại điện tử .................................................................. 6 1.1.5. Đặc trưng của thương mại điện tử............................................................. 7 1.1.6. Hạ tầng ki ̃ thuâṭ của thương mại điện tử ................................................... 7 1.1.7. Hạ tầng thanh toán .................................................................................... 8 1.2. An toàn thông tin thương mại điện tử ............................................................ 11 1.2.1. Vấn đề an toàn thông tin ......................................................................... 11 1.2.2. Chứng chỉ số và cơ chế mã hóa .............................................................. 14 CHƯƠNG 2: MỘT SỐ THUẬT TOÁN VÀ KỸ THUẬT MÃ HÓA TRONG THƯƠNG MẠI ĐIỆN TỬ ...................................................................... 27 2.1. Mã khóa công khai RSA ................................................................................ 27 2.1.1. Định nghĩa ............................................................................................... 27 2.1.2. Các điều kiện của một hệ mã công khai.................................................. 27 2.2. An toàn thông tin với hệ mật mã RSA ........................................................... 28 2.2.1. Khái niệm hệ mật mã RSA ..................................................................... 28 2.2.2. Độ an toàn của RSA ................................................................................ 30 2.2.3. Một số tính chất của hệ RSA .................................................................. 31 2.2.4. Ứng dụng của RSA ................................................................................. 32 iv 2.2.5. Ưu nhược điểm của mật mã khóa công khai ........................................... 32 2.3. Secure Socket Layer (SSL) ............................................................................ 33 2.3.1. Giới thiệu SSL ......................................................................................... 33 2.3.2. Cơ chế mã hóa của SSL .......................................................................... 33 2.3.3. Các thuật toán mã hóa trong SSL ............................................................ 36 2.4. Hàm băm (Cryptographic hash function) ....................................................... 36 2.4.1. Giới thiệu hàm băm ................................................................................. 36 2.4.2. Ứng dụng của hàm băm .......................................................................... 37 2.4.3. Các hàm băm được chế tạo đặc biệt ........................................................ 38 2.5. MD5 (Message-Digest algorithm 5) .............................................................. 39 2.6. SHA (Secure Hash Algorithm) ...................................................................... 40 2.7. Mã hóa đối xứng (Symmetric Encryption) .................................................... 41 2.7.1 Giới thiệu mã hóa đối xứng...................................................................... 41 2.8. DES (Data Encryption Standard ) .................................................................. 42 2.8.1. AES (Advanced Encryption Standard) ................................................... 43 CHƯƠNG 3: ỨNG DỤNG THỰC TIỄN TRÊN SÀN THƯƠNG MẠI ĐIỆN TỬ TỈNH THÁI NGUYÊN ......................................................................... 44 3.1. Các giao thức trong Thương mại điện tử ............................................................ 44 3.1.1. Các loại hình TMĐT ............................................................................... 44 3.1.2. Đặc điểm của thương mại điện tử ........................................................... 46 3.2. Chữ ký số trong Thương mại điện tử ............................................................. 47 3.2.1. Chữ ký số ................................................................................................ 47 3.2.2. Các ưu điểm chữ ký số ............................................................................ 48 3.2.3. Chữ ký số khóa công khai ....................................................................... 49 3.2.4. Hàm băm và ứng dụng chữ ký điện tử .................................................... 51 3.3. Phân tích, đánh giá hoạt động thường xuyên trên sàn giao dịch Thương mại điện tử tỉnh Thái Nguyên ............................................................................... 52 3.4. Hệ mã khóa RSA cho an toàn thông tin sàn giao dịch Thương mại điện tử tỉnh Thái Nguyên .............................................................................................. 53 3.5. Áp dụng an ninh mạng ................................................................................... 54 v 3.5.1. Mã hóa đơn hàng ..................................................................................... 54 3.5.2. Giải mã đơn hàng .................................................................................... 55 3.6. Kết quả thử nghiệm tại Sở Công Thương tỉnh Thái Nguyên ............................ 56 3.6.1. Thủ tục đăng kí thành viên ...................................................................... 56 3.6.2. Khách hàng lựa chọn mua hàng trên website ......................................... 57 KẾT LUẬN .............................................................................................................. 60 1. Kết quả đạt được ........................................................................................... 60 2. Hướng phát triển ........................................................................................... 60 TÀI LIỆU THAM KHẢO ...................................................................................... 61 vi DANH SÁCH CÁC TỪ VIẾT TẮT B2B (Bussiness To Business ) Doanh nghiệp với doanh nghiệp B2C (Bussiness To Consumer) Doanh nghiệp với người tiêu dùng B2E (Bussiness To Employee) Doanh nghiệp với nhân viên B2G (Bussiness To Government) Doanh nghiệp với chính phủ C2B (Consummer To Business) Người tiêu dùng với doanh nghiệp C2C (Consumer To Consumer) Người tiêu dùng với người tiêu dùng C2G (Consumer To Government) Người tiêu dùng với chính phủ CNTT Công nghệ Thông tin G2B (Government To Business) Chính phủ với doanh nghiệp G2C (Government To Consumer) Chính phủ với người tiêu dùng G2G (Government To Government) Chính phủ với chính phủ IANA asigned numbers Authority Cấp số được gán SET ( Secure Electronic Transaction) Bảo mật giao dịch điện tử TMĐT Thương mại điện tử vii DANH MỤC CÁC HÌNH VẼ, BẢNG BIỂU Hình 1.1. Khái niệm bán hàng .................................................................................... 5 Hình 1.2: Sử dụng mật khẩu xác thực máy khách kết nối tới máy dịch vụ .............. 16 Hình 1.3: Chứng chỉ số chứng thực cho may khách kết nối tới máy dịch vụ ........... 17 Hình 1.4: Chứng chỉ khóa công khai dựa trên CA .................................................... 19 Hình 1.5: Vị trí của các phương tiện bảo mật trong cấu trúc của giao thức TCP/IP ....................................................................................................................... 22 Hình 1.6: Các thành phần của bảo mật thương mại điện tử ...................................... 24 Hình 2.1: Mã hóa với khóa mã và giải mã khác nhau............................................... 27 Hình 2.2: Sơ đồ các bước thực hiện mã hóa theo thuật toán RSA ............................ 29 Hình 2.3: Thiết lập một phiên SSL ........................................................................... 34 Hình 2.4: Ví dụ hàm băm .......................................................................................... 37 Hình 2.5: Quá trình mã hóa đối xứng ....................................................................... 41 Bảng 2.1: Thời gian dự đoán thực hiện phép tính ..................................................... 32 1 MỞ ĐẦU Ngày nay, thương mại điện tử (TMĐT) phát triển mạnh mẽ bởi tốc độ sử dụng internet cùng với nhiều các công nghệ hiện đại ra đời. Con người ngày càng ưu thích giao dịch dưới hình thức này bởi những thuận lợi mà nó mang lại. Ở Việt Nam, khái niệm thương mại điện tử mới xuất hiện cách đây không lâu. Cơ sở pháp lý điều chỉnh hoạt động thương mại điện tử ở Việt Nam ra đời khá muộn so với nhiều nước trên thế giới. Lợi ích lớn nhất màTMĐT đem lại chính là sự tiết kiệm chi phí và tạo thuận lợi cho các bên giao dịch. Giao dịch bằng phương tiện điện tử nhanh hơn so với giao dịch truyền thống, ví dụ gửi fax hay thư điện tử thì nội dung thông tin đến tay người nhận nhanh hơn gửi thư. Các giao dịch qua Internet có chi phí rất rẻ, một doanh nghiệp có thể gửi thư tiếp thị, chào hàng đến hàng loạt khách hàng chỉ với chi phí giống như gửi cho một khách hàng. Với TMĐT, các bên có thể tiến hành giao dịch khi ở cách xa nhau, giữa thành phố với nông thôn, từ nước này sang nước kia, hay nói cách khác là không bị giới hạn bởi không gian địa lý. Điều này cho phép các doanh nghiệp tiết kiệm chi phí đi lại, thời gian gặp mặt trong khi mua bán. Với người tiêu dùng, họ có thể ngồi tại nhà để đặt hàng, mua sắm nhiều loại hàng hóa, dịch vụ thật nhanh chóng. Nhưng mối đe dọa và hậu quả tiềm ẩn đối với thông tin trong hệ thống mạng phục vụ hoạt động TMĐT là rất lớn, và được đánh giá trên nhiều khía cạnh khác, như: kiến trúc hệ thống công nghệ thông tin, từ chính sách bảo mật thông tin, các công cụ quản lý và kiểm tra, quy trình phản ứng, v.v. Nguy cơ mất an toàn thông tin tiềm ẩn trong chính sách bảo-mật/an-toàn thông tin, đó là: sự chấp hành các chuẩn an toàn, tức là sự xác định rõ ràng cái được phép và không được phép trong khi vận hành hệ thống thông tin; thiết lập trách nhiệm bảo vệ thông tin không rõ ràng; việc chấp hành sử dụng các chuẩn bảo mật thông tin được phân cấp, chuẩn an toàn mạng, truy cập từ bên ngoài, chuẩn an toàn bức tường lửa; chính sách an toàn Internet,v.v; Thông tin trong hệ thống TMĐT cũng sẽ dễ bị tổn thất nếu công cụ quản lý và kiểm tra của các tổ chức quản lý điều khiển hệ thống không được thiết lập như: các quy định mang tính hành chính như duy trì kiểm tra tiêu chuẩn bảo mật thường 2 xuyên; các công cụ phát hiện âm mưu xâm nhập nhằm báo trước các ý đồ tiếp cận trái phép và giúp đỡ phục hồi những sự cố vốn không tránh khỏi; các công cụ kiểm tra tính toàn vẹn dữ liệu và thông tin tránh bị cá nhân bất hợp pháp và phương tiện khác thay đổi; công cụ chống virus,v.v; Nguy cơ mất thông tin trong hệ thống TMĐT còn tiềm ẩn ngay trong cấu trúc phần cứng của các thiết bị tin học (tất nhiên không phải là tất cả) và trong phần mềm hệ thống và ứng dụng (kể cả phần mềm mật mã thương mại) do hãng sản xuất cài sẵn các loại “rệp” điện tử theo ý đồ định trước-thường gọi là “bom điện tử”. Khi cần thiết, thông qua kênh viễn thông, người ta có thể điều khiển cho “nổ” tung thiết bị đang lưu trữ thông tin, hoặc tự động rẽ nhánh thông tin vào một địa chỉ đã định trước mỗi khi có sự truyền và xử lý thông tin của thiết bị (hay đang sử dụng phần mềm chương trình đó) đó trên mạng, thậm chí có thể điều khiển làm tê liệt hoặc làm tắc nghẽn hoạt động trao đổi thông tin của cả hệ thống mạng nếu cần, v.v. Ngày nay, các chuyên gia đánh giá nguy cơ tiềm tàng nguy hiểm nhất đối với mạng máy tính mở là đạo tặc tin học, xuất hiện từ phía bọn tội phạm và giới tình báo. Nguy hiểm bởi: nó xuất phát từ phía những kẻ có chuyên môn cao và sử dụng kỹ thuật tinh vi (như đoán mật khẩu, khai thác các điểm yếu của hệ thống và các chương trình hệ thống, giả mạo địa chỉ IP, khai thác nguồn trên gói IP, đón lõng các trạm đầu cuối hoặc truy cập đang hoạt động, cài rệp điện tử, bơm virus máy tính phá hoại CSDL, sửa nội dung thông tin theo ý đồ đen tối của chúng, thậm chí nếu cần còn có thể làm tắc nghẽn kênh truyền, v.v); hoạt động của chúng là có chủ đích và trên phạm vi rộng (như không những đối với từng cơ quan, doanh nghiệp mà còn đối với cả Chính phủ). Những tác hại mà chúng gây ra ảnh hưởng tới không chỉ riêng trong lĩnh vực kinh tế mà cả đối với lĩnh vực chính trị, an ninh-quốc phòng. Bởi vậy, vấn đề bảo mật/an toàn thông tin trong hệ thống TMĐT phải là cả một kế hoạch tổng thể không đơn thuần chỉ có lĩnh vực sử dụng mật mã. Vì vậy, tác giả chọn làm đề tài “ An ninh thông tin cho sàn giao dịch Thương mại điện tử tỉnh Thái Nguyên” với mục đích hỗ trợ tư vấn về an toàn thông tin, an ninh mạng cho doanh nghiệp và người dân tham gia hoạt động, mua sắm trên sàn giao dịch Thương mại diện tử tỉnh Thái Nguyên. 3 Các kết quả đạt được trong luận văn này là kết quả trong quá trình học tập và nghiên cứu của tác giả tại Trường Đại học Công nghệ Thông tin và Truyền thông. Ngoài phần mở đầu, kết luận và tài liệu tham khảo, nội dung luận văn được trình bày thành ba chương:  Chương 1: Trình bày các khái niệm cơ bản về thương mại điện tử và an toàn thông tin trong thương mại điện tử  Chương 2: Tác giả tìm hiểu về an toàn thông tin sử dụng hệ mã khóa RSA  Chương 3: Áp dụng hệ mã khóa RSA vào sàn giao dịch thương mại điện tử tỉnh Thái Nguyên 4 CHƯƠNG 1 VỀ THƯƠNG MẠI ĐIỆN TỬ VÀ AN TOÀN THÔNG TIN 1.1. Khái niệm cơ bản về thương mại điện tử 1.1.1. Giới thiệu Thương mại điện tử (còn gọi là thị trường điện tử, thị trường ảo, ECommerce hayE-Business) là quy trình mua bán ảo thông qua việc truyền dữ liệu giữa các máy tính trong chính sách phân phối của tiếp thị. Tại đây một mối quan hệ thương mại hay dịch vụ trực tiếp giữa người cung cấp và khách hàng được tiến hành thông qua Internet. Hiện nay định nghĩa thương mại điện tử được rất nhiều tổ chức quốc tế đưa ra song chưa có một định nghĩa thống nhất về thương mại điện tử. Khái niệm thương mại điện tử (TMĐT) cơ bản phải bao hàm các nội dung sau:  Đó phải là một hoạt động kinh doanh thương mại, tức là phản ảnh một hoạt động mua bán hàng hoá và dịch vụ thông qua một chu trình kinh doanh thương mại: chào hàng, chào giá, đàm phán mua bán, ký hợp đồng mua bán, vận chuyển giao hàng, thanh lý hợp đồng và thanh toán.  Việc kinh doanh thương mại phải được thực hiện trong một môi trường đặc biệt đó là môi trường mạng máy tính nói chung và đặc biệt là mạng internet.  Công nghệ thông tin đã tạo ra môi trường và phát triển các công nghệ cho TMĐT phát triển. Công nghệ thông tin cũng mở ra một loại hàng hoá và dịch vụ đặc trưng là các hàng hoá và dịch vụ số (hàng hoá và dịch vụ phi vật thể được số hoá và có thể giao hàng ngay qua mạng) góp phần vào việc phát triển hình thức thương mại điện tử 1.1.2. Mua hàng Mua hàng là hành vi mà người tiêu dùng (người mua) nhận về một lượng hàng hóa nhất định có thể thỏa mãn nhu cầu hay phần nào nhu cầu nào đó và ngược lại phải trao lại một lượng tiền nhất định cho người bán 5 Khái niệm: Mua hàng là hoạt động nghiệp vụ cơ bản của doanh nghiệp thương mại nhằm tạo ra nguồn hàng hóa để đảm bảo cung ứng đầy đủ kịp thời đồng bộ đúng quy cách chủng loại cho các nhu cầu của khách hàng. Xuất phát từ nhu cầu hàng hóa trên thị trường, doanh nghiệp nghiên cứu các nguồn hàng, khả năng cung ứng từ các nhà cung cấp, đàm phán về giá cả, số lượng, chất lượng, thời gian, giao hàng, thanh toán... đén khi ký kết hợp đồng mua bán 1.1.3. Bán hàng Bán hàng là một quá trình trong đó người bán tìm hiểu, khám phá, gợi tạo và đáp ứng nhu cầu của người mua, để cả hai bên nhận được quyền lợi thỏa đáng. Theo quan niệm cổ điển: “Bán hàng là hoạt động thực hiện sự trao đổi sản phẩm hay dịch vụ của người bán chuyển cho người mua để được nhận lại từ người mua tiền, vật phẩm hoăc giá trị trao đổi đã thỏa thuận” Hình 1.1. Khái niệm bán hàng Theo một số quan điểm hiện đại phổ biến thì khái niệm bán hàng được định nghĩa như sau:  Bán hàng là nền tảng trong kinh doanh đó là sự gặp gỡ của người bán và người mua ở những nơi khác nhau giúp doanh nghiệp đạt được mục tiêu nếu cuộc gặp gỡ thành công trong cuộc đàm phán về việc trao đổi sản phẩm 6  Bán hàng là quá trình liên hệ với khách hàng tiềm năng tìm hiểu nhu cầu khách hàng, trình bày và chứng minh sản phẩm, đàm phán mua bán, giao hàng và thanh toán.  Bán hàng là sự phục vụ, giúp đỡ khách hàng nhằm cung cấp cho khách hàng những thứ mà họ muốn 1.1.4. Khái niệm thương mại điện tử Thương mại điện tử là hình thức mua bán hàng hóa và dịch vụ thông qua mạng máy tính tòan cầu. Thương mại điện tử theo nghĩa rộng được định nghĩa trong Luật mẫu về Thương mại điện tử của Ủy ban Liên Hợp quốc về Luật Thương mại Quốc tế (UNCITRAL): “Thuật ngữ Thương mại cần được diễn giải theo nghĩa rộng để bao quát các vấn đề phát sinh từ mọi quan hệ mang tính chất thương mại dù có hay không có hợp đồng. Các quan hệ mang tính thương mại bao gồm các giao dịch sau đây: bất cứ giao dịch nào về thương mại nào về cung cấp hoặc trao đổi hàng hóa hoặc dịch vụ; thỏa thuận phân phối; đại diện hoặc đại lý thương mại, ủy thác hoa hồng; cho thuê dài hạn; xây dựng các công trình; tư vấn; kỹ thuật công trình; đầu tư; cấp vốn; ngân hàng; bảo hiểm; thỏa thuận khai thác hoặc tô nhượng; liên doanh các hình thức khác về hợp tác công nghiệp hoặc kinh doanh; chuyên chở hàng hóa hay hành khách bằng đường biển, đường không, đường sắt hoặc đường bộ.” Như vậy, có thể thấy rằng phạm vi của Thương mại điện tử rất rộng, bao quát hầu hết các lĩnh vực hoạt động kinh tế, việc mua bán hàng hóa và dịch vụ chỉ là một trong hàng ngàn lĩnh vực áp dụng của Thương mại điện tử. Theo nghĩa hẹp thương mại điện tử chỉ gồm các hoạt động thương mại đư ợc tiến hành trên mạng máy tính mở như Internet. Trên thực tế, chính các hoạt động thương mại thông qua mạng Internet đã làm phát sinh thuật ngữ Thương mại điện tử. Thương mại điện tử gồm các hoạt động mua bán hàng hóa và dịch vụ qua phương tiện điện tử, giao nhận các nội dung kỹ thuật số trên mạng, chuyển tiền điện tử, mua bán cổ phiếu điện tử, vận đơn điện tử, đấu giá thương mại, hợp tác thiết kế, tài nguyên mạng, mua sắm công cộng, tiếp thị trực tuyến tới người tiêu dùng và các dịch vụ sau bán hàng. 7 Thương mại điện tử được thực hiện đối với cả thương mại hàng hóa (ví dụ như hàng tiêu dùng, các thiết bị y tế chuyên dụng) và thương mại dịch vụ (ví dụ như dịch vụ cung cấp thông tin, dịch vụ pháp lý, tài chính); các hoạt động truyền thống (như chăm sóc sức khỏe, giáo dục) và các hoạt động mới (ví dụ như siêu thị ảo). Thương mại điện tử đang trở thành một cuộc cách mạng làm thay đổi cách thức mua sắm của con người. 1.1.5. Đặc trưng của thương mại điện tử So với các hoạt động thương mại truyền thống, TMĐT có một số các đặc trưng cơ bản sau: 1. Các bên tiến hành giao dịch trong thương mại điện tử không tiếp xúc trực tiếp với nhau và không đòi hỏi phải biết nhau từ trước. 2. Các giao dịch thương mại truyền thống được thực hiện với sự tồn tại của khái niệm biên giới quốc gia, còn thương mại điện tử được thực hiện trong một thị trường không có biên giới (thị trường thống nhất toàn cầu). Thương mại điện tử trực tiếp tác động tới môi trường cạnh tranh toàn cầu. 3. Trong hoạt động giao dịch TMĐT đều có sự tham gia của ít nhất ba chủ thể, trong đó có một bên không thể thiếu được là người cung cấp dịch vụ mạng, các cơ quan chứng thực 4. Đối với thương mại truyền thống thì mạng lưới thông tin chỉ là phương tiện để trao đổi dữ liệu, còn đối với TMĐT thì mạng lưới thông tin chính là thị trường Thông qua TMĐT nhiều loại hình kinh doanh mới được hình thành. Ví dụ: Các dịch vụ gia tăng giá trị trên mạng máy tính hình thành nên các nhà trung gian ảo làm các dịch vụ môi giới cho giới kinh doanh và tiêu dùng, các siêu thị ảo được hình thành để cung cấp hàng hoá và dịch vụ trên mạng máy tính. Các chủ cửa hàng thông thường ngày nay cũng đang đua nhau đưa thông tin lên Web để tiến tới khai thác mảng thị trường rộng lớn trên Web bằng cách mở cửa hàng ảo. 1.1.6. Hạ tầng ki ̃ thuâṭ của thương mại điện tử Tuỳ thuộc vào đối tác kinh doanh mà người ta gọi đó là thị trường B2B, B2C, C2B hay C2C. Thị trường mở là những thị trường mà tất cả mọi người có thể 8 đăng ký và tham gia. Tại một thị trường đóng chỉ có một số thành viên nhất định được mời hay cho phép tham gia. Một thị trường ngang tập trung vào một quy trình kinh doanh riêng lẻ nhất định, ví dụ như lĩnh vực cung cấp: nhiều doanh nghiệp có thể từ các nghành khác nhau tham gia như là người mua và liên hệ với một nhóm nhà cung cấp. Ngược lại thị trường dọc mô phỏng nhiều quy trình kinh doanh khác nhau của một nghành duy nhất hay một nhóm người dùng duy nhất. Sau khi làn sóng lạc quan về TMĐT của những năm 1990 qua đi, thời gian mà đã xuất hiện nhiều thị trường điện tử, người ta cho rằng sau một quá trình tập trung chỉ có một số ít thị trường lớn là sẽ tiếp tục tồn tại. Thế nhưng bên cạnh đó là ngày càng nhiều những thị trường chuyên môn nhỏ. Ngày nay tình hình đã khác hăn đi, công nghệ để thực hiện một thị trường điện tử đã rẻ đi rất nhiều. Thêm vào đó là xu hướng kết nối nhiều thông tin chào hàng khác nhau thông qua các giao diện lập trình ứng dụng để thành lập một thị trường chung có mật độ chào hàng cao. Ngoài ra các thị trường độc lập trước đây còn được tích hợp ngày càng nhiều bằng các giải pháp phần mềm cho một cổng Web toàn diện. Thương mại điện tử được phân loại theo tư cách của người tham gia giao dịch như sau:  Người tiêu dùng: C2C, Người tiêu dùng với người tiêu dùng; C2B, Người tiêu dùng với doanh nghiệp; C2G, Người tiêu dùng với chính phủ;  Doanh nghiệp: B2C, Doanh nghiệp với người tiêu, Doanh nghiệp với chính phủ; B2E, Doanh nghiệp với nhân viên  Chính phủ: G2C, Chính phủ với người tiêu dùng; G2B, Chính phủ với doanh nghiệp; G2G, Chính phủ với chính phủ. 1.1.7. Hạ tầng thanh toán 1.1.7.1. Các hệ thống thanh toán điện tử Thanh toán điện tử là một khâu quan trọng trong TMĐT. Hiểu một cách khái quát thì thanh toán điện tử là một quá trình thanh toán tiền giữa người mua và người bán. Điểm cốt lõi của vấn đề này là việc ứng dụng các công nghệ thanh toán tài chính (ví dụ như mã hoá số thẻ tin dụng, séc điện tử, hoặc tiền điện tử) giữa ngân hàng, nhà trung gian và các bên tham gia hoạt động thương mại. Các ngân hàng và 9 tổ chức tín dụng hiện nay sử dụng các phương pháp này nhằm mục đích nâng cao hiệu quả hoạt động trong bối cảnh phát triển của nền kinh tế số, với một số lợi ích như giảm chi phí xử lý, chi phí công nghệ và tăng cường thương mại trực tuyến. Thanh toán điện tử là việc trả tiền thông qua các thông điệp điện tử thay vì trao tay trực tiếp. Việc trả lương bằng cách chuyển tiền vào tài khoản ngân hàng, trả tiền mua hàng bằng thẻ tín dụng, bằng thẻ mua hàng... thực chất cũng là những ví dụ đơn giản của thanh toán điện tử. Hình thức thanh toán điện tử có một số hệ thống thanh toán cơ bản sau: 1. Thanh toán bằng thẻ tín dụng: Thực tế cho thấy, khách hàng trên mạng không thể trả tiền hoặc séc để thanh toán. 2. Thanh toán vi điện tử (Electronic Cash MicroPayment): Được sử dụng cho những giao dịch quá nhỏ đối với yêu cầu thanh toán qua thẻ tín dụng. 3. Chi phiếu điện tử (Electronic Check): Đây là một dịch vụ cho phép khách hàng trực tiếp chuyển tiền điện tử từ ngân hàng đến người bán hàng. Chi phiếu điện tử được sử dụng thanh toán hoá đơn định kỳ. 4. Thư điện tử (Email): Có thể dùng để cho phép đối táckinh doanh nhận thanh toán từ tài khoản khách hàng hoặc để lập tài khoản với nhà cung cấp. Với những lợi ích nêu trên, tăng cường khả năng thanh toán điện tử sẽ là một giải pháp cắt giảm đáng kể các chi phí hoạt động. Theo tính toán của các ngân hàng thì việc giao dịch bằng tiền và séc rất tốn kém, do đó họ tìm kiếm các giải pháp khác với chi phí thấp hơn. Hiện nay ở Mỹ thì các giao dịch bằng tiền mặt chiếm khoảng 54% và bằng séc là 29% các giao dịch điện tử chiếm khoảng 17%. Dự báo con số này sẽ tăng lên trong thời gian tới. 1.1.7.2. Công nghệ thanh toán điện tử Các công nghệ thanh toán điện tử bắt đầu phát triển với dịch vụ chuyển tiền bằng điện tử ví dụ như dịch vụ chuyển tiền của Western Union giúp một cá nhân có thể chuyển tiền cho người nào đó ở địa điểm khác thông qua lệnh chuyển tiền của họ từ một quầy cung cấp dịch vụ của Western Union. Tiền chỉ có thể chuyển giao 10 cho khách hàng sau khi đáp ứng được các yêu cầu nhận điện. Trong trường hợp này, không có sự tham gia của bất kỳ ngân hàng nào cả, Western chỉ đơn thuần là một công ty điện tín. Sự an toàn phụ thuộc vào khả năng tài chính của hãng, và sự an toàn của dịch vụ này được kiểm soát qua các thông điệp gửi đi trong từng giao dịch riêng lẻ. Các thông tin này không được công bố rộng rãi mà chỉ khách hàng và người nhận được biết khoản tiền được chuyển. Chữ ký được sử dụng như một công cụ xác nhận nhằm mục đích cho biết quá trình chuyển giao đã hoàn thành khi khách hàng nhận được tiền. Các sáng kiến trong thanh toán điện tử hiện nay đều nhằm mục đích tạo ra một cách thức đơn giản, thuận lợi cho khách hàng trong giao dịch thanh toán và mang tính tức thời. Trong một giao dịch điện tử, các khâu kiểm tra hối đoái, tiến hành thủ tục thanh toán sẽ diễn ra ngay lập tức khi khách hàng gửi lệnh yêu cầu chuyển tiền để thanh toán cho một giao dịch mua bán trên mạng. Hệ thống thanh toán điện tử dành cho khách hàng phát triển rất nhanh chóng. 1.1.7.3. Quy trình thanh toán điện tử Một quy trình thanh toán điện tử bao gồm có 6 công đoạn cơ bản sau: 1. Khách hàng, từ một máy tính tại một nơi nào đó, điền những thông tin thanh toán và địa chỉ liên hệ vào đơn đặt hàng (Order Form) của Website bán hàng. Doanh nghiệp nhận được yêu cầu mua hàng hoá hay dịch vụ của khách hàng và phản hồi xác nhận tóm tắt lại những thông tin cần thiết nhưmặt hàng đã chọn, địa chỉ giao nhận và số phiếu đặt hàng... 2. Khách hàng kiểm tra lại các thông tin và click chọn “đặt hàng”, để gởi thông tin trả về cho Doanh nghiệp. 3. Doanh nghiệp nhận và lưu trũ thông tin đặt hàng đồng thời chuyển tiếp thông tin thanh toán (số thẻ tín dụng, ngày đáo hạn, chủ thẻ...) đã được mã hoá đến máy chủ (Server, thiết bị xử lý dữ liệu) của Trung tâm cung cấp dịch vụ xử lý thẻ trên mạng Internet. Với quá trình mã hoá các thông tin thanh toán của khách hàng được bảo mật an toàn 11 nhằm chống gian lận trong các giao dịch (ngay cả doanh nghiệp sẽ không biết được thông tin về thẻ tín dụng của khách hàng). 4. Khi Trung tâm xử lý thẻ tín dụng nhận được thông tin thanh toán, sẽ giải mã thông tin và xử lý giao dịch đằng sau tường lửa (Fire Wall) và tách rời mạng Internet (off the Internet), nhằm mục đích bảo mật tuyệt đối cho các giao dịch thương mại, định dạng lại giao dịch và chuyển tiếp thông tin thanh toán đến Ngân hàng của Doanh nghiệp (Acquirer) theo một đường dây thuê bao riêng (một đường truyền số liệu riêng biệt). 5. Ngân hàng của Doanh nghiệp gởi thông điện điện tử yêu cầu thanh toán (authorization request) đến ngân hàng hoặc Công ty cung cấ...giải mã được gọi là khóa riêng (private key) Hình 2.1: Mã hóa với khóa mã và giải mã khác nhau Đặc trưng nổi bật của hệ mã hóa công khai là cả khóa công khai (public key) và bản tin mã hóa (ciphertext) đều có thể gửi đi trên một kênh thông tin không an toàn 2.1.2. Các điều kiện của một hệ mã công khai Việc tính toán ra cặp khóa công khai KB và bí mật kB dựa trên cơ sở các điều kiện ban đầu phải được thực hiện một cách dễ dàng, nghĩa là thực hiện trong thời gian đa thức. Người gửi A có được khóa công khai của người nhận B và có bản tin P cần gửi đi có thể dễ dàng tạo ra được bản mã C. C =EKB(P) = EB (P) Công việc này cũng trong thời gian đa thức. Người nhận B khi nhận được bản tin mã hóa C với khóa bí mật kB thì có thể giải mã bản tin trong thời gian đa thức P =DkB (C) = DB [EB(M)] 28 Nếu kẻ địch biết khóa công khai KB cố gắng tính toán khóa bí mật thì khi đó chúng phải đương đầu với trường hợp nan giải, trường hợp này đòi hỏi nhiều yêu cầu không khả thi về thời gian Nếu kẻ địch biết được cặp (KB,C) và cố gắng tính toán ra bản rõ P thì giải quyết bài toán khó với số phép thử vô cùng lớn, do đó không khả thi 2.2. An toàn thông tin với hệ mật mã RSA 2.2.1. Khái niệm hệ mật mã RSA Khái niệm hệ mật mã RSA đã được ra đời năm 1976 bởi các tác giả R.RivetsK,A.Shamir , và L.Adleman. Hệ mã hóa này dựa trên cơ sở của hai bài toán 1. Bài toán Logarith rời rạc 2. Bài toán phân tích thành thừa số Trong hệ mã hóa RSA các bản rõ, các bản mã và các khóa (public key và private key) là thuộc tập số nguyên ZN ={1,,N-1}. Trong đó tập ZN với N =pxq là các số nguyên tố khác nhau cùng với phép cộng, phép nhân mođun N tạo ra mođun số học N Khóa mã hóa EKB là cặp số nguyên (N, KB) và khóa giải mã DkB là cặp số nguyên (N, kB), các số là rất lớn, số N có thể lên tới hàng trăm chữ số Các phương pháp mã hóa và giải mã hóa là rất dễ dàng. Công việc mã hóa là sự biến đổi bản rõ P (Plaintext) thành bản mã C (ciphertext) dựa trên cặp khóa công khai KB và bản rõ P theo công thức sau đây KB C = EKB(P) = p (mod N) (1) Công việc giảI ma là sự biến đổi ngược lại bản mã C thành bản rõ P dựa trên cặp khóa bí mật kB , mođun N theo công thức sau : kB P =DkB(C) =C (mod N) (2) Dễ thấy rằng, bản rõ ban đầu cần được biến đổi một cách thích hợp thành bản mã, sau đó để có thể tái tạo lại bản rõ ban đầu từ chính bản mã đó: P =DkB (EKB(P)) (3) 29 Thay thế (1) vào (2) ta có: ( PKB)kB =P (mod N) (4) Ta thấy N =pxq với p, q là số nguyên tố. Trong toán học đã chứng minh được rằng, nếu N là số nguyên tố thì công thức (4) sẽ có lời giải khi và chỉ khi: KB.kB  1 (mod  (N)) (5) Trong đó  (N) =LCM(p-1, q-1 ). (Lest Common Multiple) là bội số chung nhỏ nhất. Nói một cách khác, đầu tiên người nhận B lựa chọn một khóa công khai KB một cách ngẫu nhiên. Khi đó khóa bí mật kB được tính ra bằng công thức (5). Điều này hoàn toàn tính được vì khi B biết được cặp số nguyên tố (p, q) thì sẽ tính được  (N). Hình 2.2: Sơ đồ các bước thực hiện mã hóa theo thuật toán RSA 30 Ví dụ: N=11413=101x113,  (N) =100x112 =11200 =26 x52 x7. KB phải chọn sao -1 cho không chia hết cho 2,5,7. Chọn, chẳng hạn KB =3533 khi đó kB =KB =6579mod11200. Và ta có khóa công khai là (N,KB)=(11413,3533) khóa bí mật là 6759. Phép lập mã và giải mã là KB 3533 EKB(P) =P (mod N) =P (mod 11413) kB 6579 DkB(C) =C (mod N) =C (mod 11413) Chẳng hạn với PC =9726, ta có C =5761 2.2.2. Độ an toàn của RSA Một nhận định chung là tất cả các cuộc tấn công giải mã đều mang mục đích không tốt. Tính bảo mật của RSA chủ yếu dựa vào việc giữ bí mật khóa giải mã hay giữ bí mật các thừa số p, q của N. Ta thử xét một vài phương thức tấn công điển hình của kẻ địch nhằm giải mã trong thuật toán này (nhằm xâm phạm tới các yếu tố bí mật đó). Trường hợp 1: chúng ta xét đếnơtrường hợp khi kẻ địch nào đó biết được mođun N, khóa công khai KB và bản tin mã hóa C, khi đó kể địch sẽ tìm ra bản tin gốc (Plaintext) như thế nào. Để làm được điều đó kẻ địch thường tấn côngvào hệ thống mật mã bằng hai phương thức sau đây:  Phương thức thứ nhất: Trước tiên dựa vào phân tích thừa số mô đun N. Tiếp theo sau chúng sẽ tìm cách tính toán ra hai số nguyên tố p và q, và có khả năng thành công khi đó sẽ tính được (N) + (p-1) (q-1) và khoá bí mật KB. Ta thấy N cần phải là tích của hai số nguyên tố, vì nếu N là tích của hai số nguyên tố thì thuật toán phân tích thừa số đơn giản cần tối đa N1/2 bước, bởi vì có một số nguyên tố nhỏ hơn N1/2. Mặt khác, nếu N là tích của n số nguyên tố, thì thuật toán phân tích thừa số đơn giản cần tối đa N1/n bước.  Phương thức thứ hai: Phương thức tấn công thứ hai vào hệ mã hóa RSA là có thể khởi đầu bằng cách giải quyết trường hợp thích hợp của bài toán logarit rời rạc. Trường hợp này kẻ địch đã có trong tay bản mã C và khóa công khai KB tức là có cặp (KB, C). 31 Trường hợp 2: Chúng ta xét trường hợp khi kẻ địch nào đó biết được mođun N và (N), khi đó kẻ địch sẽ tìm ra bản tin gốc (Plaintext) bằng cách sau: Biết (N) thì có thể tính p, q theo hệ phương trình: P * q = N, (p -1) (q-1) = (N) Do đó p và q là nghiệm của phương trình bậc hai: x 2 - (n - (N) +1 ) + n = 0. Ví dụ: n = 84773093, và biết (N) = 84754668. Giải phương trình bậc hai tương ứng ta sẽ được hai nghiệm p = 9539 và q = 8887. 2.2.3. Một số tính chất của hệ RSA Trong các hệ mật mã RSA, một bản tin có thể được mã hóa trong thời thời gian tuyến tính. Đối với các bản tin dài, độ dài của các số được dùng cho các khóa có thể được coi như là hằng. Tương tự như vậy, nâng một số lên lũy thừa được thực hiện trong thời gian hằng. Thực ra tham số này che giấu nhiều chi tiết cài đặt có liên quan đến việc tính toán với các con số dài, chi phí của các phép toán thực sự là một yếu tố ngăn cản sự phổ biến ứng dụng của phương pháp này. Phần quan trọng nhất của việc tính toán có liên quan đến việc mã hoá bản tin. Nhưng chắc chắn là sẽ không có hệ mã hoá nào hết nếu không tính ra được các khóa của chúng là các số lớn. Các khóa cho hệ mã hóa RSA có thể được tạo ra mà không phải tính toán quá nhiều. Một lần nữa, ta lại nói đến các phương pháp kiểm tra số nguyên tố. Mỗi số nguyên tố lớn có thể được phát sinh bằng cách đầu tiên tạo ra một số ngẫu nhiên lớn, sau đó kiểm tra các số kế tiếp cho tới khi tìm được một số nguyên tố. Một phương pháp đơn giản thực hiện một phép tính trên một con số ngẫu nhiên, với xác suất 1/2 sẽ chứng minh rằng số được kiểm tra không phải nguyên tố. Bước cuối cùng là tính p dựa vào thuật toán Euclid. Như phần trên đã trình bày trong hệ mã hóa công khai thì khóa giải mã (Privatekey) KB và các thừa số p, q là được giữ bí mật và sự thành công của phương pháp là tuỳ thuộc vào kẻ địch có khả năng tìm ra được giá trị của KB hay không nếu cho trước N và KB. Rất khó có thể tìm ra được KB từ KB, cần biết về p và q. Như 32 vậy cần phân tích N ra thành thừa số để tính p và q. Nhưng việc phân tích ra thừa số là một việc làm tốn rất nhiều thời gian, với kỹ thuật hiện đại ngày nay thì cần tới hàng triệu năm để phân tích một số có 200 chữ số ra thừa số. Độ an toàn của thuật toán RSA dựa trên cơ sở những khó khăn của việc xác định các thừa số nguyên tố của một số lớn. Bảng dưới đây cho biết các thời gian dự đoán, giả sử rằng mỗi phép toán thực hiện trong một micro giây. Bảng 2.1. Thời gian dự đoán thực hiện phép tính Số các chữ số trong Thời gian phân tích số được phân tích 50 4 giờ 75 104 giờ 100 74 năm 200 4.000.000 năm 300 5 * 1015 năm 500 4 *1025 năm 2.2.4. Ứng dụng của RSA Hệ mã hóa RSA được ứng dụng rộng rãi chủ yếu cho web và các chương trình email. Ngày nay, RSA còn được sử dụng rộng rãi trong các công nghệ bảo mật sử dụng cho thương mại điện tử (ví dụ như công nghệ bảo mật SSL). 2.2.5. Ưu nhược điểm của mật mã khóa công khai Vấn đề còn tồn đọng của hệ mật mã khoá đối xứng được giải quyết nhờ hệ mật mã khoá công khai. Chính ưu điểm này đã thu hút nhiều trí tuệ vào việc đề xuất, đánh giá các hệ mật mã công khai. Nhưng do bản thân các hệ mật mã khoá công khai đều dựa vào các giả thiết liên quan đến các bài toán khó nên đa số các hệ mật mã này đều có tốc độ mã dịch không nhanh lắm. Chính nhược điểm này làm cho các hệ mật mã khoá công khai khó được dùng một cách độc lập. Một vấn đề nữa nảy sinh khi sử dụng các hệ mật mã khóa công khai là việc xác thực mà trong mô hình hệ mật mã đối xứng không đặt ra. Do các khoá mã côngkhai được công bố một cách công khai trên mạng cho nên việc đảm bảo rằng “khoá được công bố có đúng là của đối tượng cần liên lạc hay không?” là một kẽ hở 33 có thể bị lợi dụng. Vấn đề xác thực này được giải quyết cũng chính bằng các hệ mật mã khoá công khai. Nhiều thủ tục xác thực đã được nghiên cứu và sử dụng như Kerberos, X.509 Một ưu điểm nữa của các hệ mật mã khoá công khai là các ứng dụng của nó trong lĩnh vực chữ ký số, cùng với các kết quả về hàm băm, thủ tục ký để bảo đảm tính toàn vẹn của một văn bản được giải quyết. 2.3. Secure Socket Layer (SSL) 2.3.1. Giới thiệu SSL SSL (Secure Socket Layer) là giao thức đa mục đích được thiết kế để tạo ra các giao tiếp giữa hai chương trình ứng dụng trên một cổng định trước (socket 443) nhằm mã hoá toàn bộ thông tin đi/đến, được sử dụng trong giao dịch điện tử như truyền số liệu thẻ tín dụng, mật khẩu, số bí mật cá nhân (PIN) trên Internet. Được phát triển bởi Netscape, ngày nay giao thức Secure Socket Layer (SSL) đã được sử dụng rộng rãi trên World Wide Web trong việc xác thực và mã hoá thông tin giữa client và server. Tổ chức IETF (Internet Engineering Task Force) đã chuẩn hoá SSL và đặt lại tên là TLS (Transport Layer Security). Mặc dù là có sự thay đổi về tên nhưng TSL chỉlà một phiên bản mới của SSL. Phiên bản TSL 1.0 tương đương với phiên bản SSL 3.1. Tuy nhiên SSL là thuật ngữ được sử dụng rộng rãi hơn. SSL được thiết kếnhưlà một giao thức riêng cho vấn đềbảo mật có thể hỗ trợ cho rất nhiều ứng dụng. Giao thức SSL hoạt động bên trên TCP/IP và bên dưới các giao thức ứng dụng tầng cao hơn như là HTTP (Hyper Text Transport Protocol), IMAP (Internet Messaging Access Protocol) và FTP (File Transport Protocol). Trong khi SSL có thể sử dụng để hỗ trợ các giao dịch an toàn cho rất nhiều ứng dụng khác nhau trên Internet, thì hiện nay SSL được sửdụng chính cho các giao dịch trên Web. 2.3.2. Cơ chế mã hóa của SSL Giao thức SSL dựa trên hai nhóm con giao thức là giao thức “bắt tay” (handshake protocol) và giao thức “bản ghi” (record protocol). Giao thức bắt tay xác định các tham số giao dịch giữa hai đối tượng có nhu cầu trao đổi thông tin hoặc dữ liệu, còn giao thức bản ghi xác định khuôn dạng cho tiến hành mã hoá và truyền tin hai chiều giữa hai đối tượng đó. Khi hai ứng dụng máy tính, thí dụgiữa 34 một trình duyệt web và máy chủ web, làm việc với nhau, máy chủ và máy khách sẽ trao đổi “lời chào” (hello) dưới dạng các thông điệp cho nhau với xuất phát đầu tiên chủ động từ máy chủ, đồng thời xác định các chuẩn về thuật toán mã hoá và nén số liệu có thể được áp dụng giữa hai ứng dụng. Ngoài ra, các ứng dụng còn trao đổi “số nhận dạng/khoá theo phiên” (session ID, session key) duy nhất cho lần làm việc đó. Sau đó ứng dụng khách (trình duyệt) yêu cầu có chứng chỉ điện tử (digital certificate) xác thực của ứng dụng chủ(web server). Hình 2.3: Thiết lập một phiên SSL 35 Chứng chỉ điện tử thường được xác nhận rộng rãi bởi một cơquan trung gian (Thẩm quyền xác nhận CA - Certificate Authority) như RSA Data Sercurity hay VeriSign Inc., một dạng tổ chức độc lập, trung lập và có uy tín. Các tổ chức này cung cấp dịch vụ”xác nhận” số nhận dạng của một công ty và phát hành chứng chỉ duy nhất cho công ty đó như là bằng chứng nhận dạng (identity) cho các giao dịch trên mạng, ở đây là các máy chủ webserver. Sau khi kiểm tra chứng chỉ điện tử của máy chủ (sử dụng thuật toán mật mã công khai, như RSA tại trình máy trạm), ứng dụng máy trạm sử dụng các thông tin trong chứng chỉ điện tử để mã hoá thông điệp gửi lại máy chủ mà chỉ có máy chủ đó có thể giải mã. Trên cơ sở đó, hai ứng dụng trao đổi khoá chính (master key) - khoá bí mật hay khoá đối xứng - để làm cơ sở cho việc mã hoá luồng thông tin/dữ liệu qua lại giữa hai ứng dụng chủ khách. Toàn bộ cấp độ bảo mật và an toàn của thông tin/dữ liệu phụ thuộc vào một số tham số: Số nhận dạng theo phiên làm việc ngẫu nhiên; Cấp độ bảo mật của các thuật toán bảo mật áp dụng cho SSL; Độ dài của khoá chính (key length) sử dụng cho lược đồ mã hoá thông tin. Có thể tóm tắt cơ chế của SSL như sau: - Client phát sinh 1 Session Key ngẫu nhiên khi truy cập đến Server - Client yêu cầu Server gởi Certificate (gồm Public Key của Server) - Client kiểm tra tính hợp lệ của Certificate - Nếu Certificate của Server hợp lệ, Client mã hóa Session Key bằng Public Key của Server - Client gởi Session Key đã mã hóa cho Server - Server giải mã Session Key đã được mã hóa bằng Private Key - Các thông tin trao đổi giữa server và client sẽ được mã hóa và giải mã bằng Session Key Hiện nay, khi public một web site lên internet, để áp dụng cơ chế mã hóa SSL chúng ta phải thuê SSL Certificate cho Web Server từ các tổ chức cung cấp Digital Certificate như: Verisign, CyberTrust, EnTrust 36 2.3.3. Các thuật toán mã hóa trong SSL Các thuật toán mã hoá và xác thực của SSL được sử dụng bao gồm (phiên bản 3.0): - DES - chuẩn mã hoá dữ liệu (ra đời năm 1977), phát minh và sử dụng của chính phủ Mỹ; - DSA - thuật toán chữ ký điện tử, chuẩn xác thực điện tử, phát minh và sử dụng của chính phủ Mỹ; - KEA - thuật toán trao đổi khoá, phát minh và sử dụng của chính phủ M ỹ; - MD5 - thuật toán tạo giá trị”bǎm” (message digest), phát minh bởi Rivest; - RC2, RC4 - mã hoá Rivest, phát triển bởi công ty RSA Data Security; - RSA - thuật toán khoá công khai, cho mã hoá và xác thực, phát triển bởi Rivest, Shamir và Adleman; - RSA key exchange - thuật toán trao đổi khoá cho SSL dựa trên thuật toán RSA; - SHA-1 - thuật toán hàm băm an toàn, phát triển và sử dụng bởi chính phủ Mỹ; - SKIPJACK - thuật toán khoá đối xứng phân loại được thực hiện trong phần cứng Fortezza, sử dụng bởi chính phủ Mỹ; – Triple-DES - mã hoá DES ba lần. 2.4. Hàm băm (Cryptographic hash function) 2.4.1. Giới thiệu hàm băm Trong ngành mật mã học, một hàm băm mật mã học (tiếng Anh: Cryptographic hash function) là một hàm băm với một số tính chất bảo mật nhất định để phù hợp việc sử dụng trong nhiều ứng dụng bảo mật thông tin đa dạng, chẳng hạn như chứng thực (authentication) và kiểm tra tính nguyên vẹn của thông điệp (message integrity). Một hàm băm nhận đầu vào là một xâu ký tự dài (hay thông điệp) có độ dài tùy ý và tạo ra kết quả là một xâu ký tự có độ dài cố định, đôi khi được gọi là tóm tắt thông điệp (message digest) hoặc chữ ký số (digital fingerprint). 37 Nói rộng, một hàm băm phải hoạt động càng giống với một hàm ngẫu nhiên càng tốt, trong khi vẫn có tính chất đơn định và tính toán có hiệu quả. Một hàm băm mật mã học được coi là không an toàn nếu một trong các việc sau là khả thi về mặt tính toán: - Cho một tóm tắt (digest), tìm một thông điệp (chưa biết) khớp với tóm tắt đó - Tìm các “xung đột băm” (hash collision), trong đó hai thông điệp khác nhau có tóm tắt trùng nhau. Nếu có thể thực hiện một trong hai việc trên, một người có thể tấn công bằng cách dùng các cách trên để thay một thông điệp không được xác nhận (unauthorized message) vào chỗ của một thông điệp được xác nhận. 2.4.2. Ứng dụng của hàm băm Hình 2.4: Ví dụ hàm băm Một ứng dụng điển hình của một hàm băm mật mã học như sau: Alice đưa cho Bob một câu đố khó và tuyên bố rằng cô ấy đã giải được rồi. Bob muốn tự giải, nhưng cũng muốn chắc chắn là Alice đúng là đã giải được. Do đó, Alice viết đáp án, gắn thêm một nonce ngẫu nhiên, tính giá trịbăm của nó, và đưa kết quả băm cho Bob (trong khi vẫn giữ bí mật đáp án và nonce). Bằng cách này, khi Bob tự giải xong, Alice có thể chứng minh rằng cô đã có đáp án từ trước bằng cách đưa nonce cho Bob. Trong thực tiễn, Alice và Bob thường là các chương trình máy tính, và bí mật thường là cái gì đó không dễ ừa bằng một lời giải cho câu đó. Ứng dụng trên được gọi là một hệ thống tin cậy (commitment scheme). Một ứng dụng quan trọng khác của các hàm băm bảo mật là sựkiểm tra tính toàn vẹn của thông điệp. Ví dụ, 38 việc xác định xem một file hay một thông điệp có bị sửa đổi hay không có thểthực hiện bằng cách so sánh tóm tắt được tính trước và sau khi gửi (hoặc một sự kiện bất kỳ nào đó). Còn có thể dùng tóm tắt thông điệp làm một phương tiện đáng tin cậy cho việc nhận dạng file. Một ứng dụng có liên quan là kiểm tra mật khẩu. Mật khẩu thường không được lưu dưới dạng văn bản rõ (clear text), mà ở dạng tóm tắt. Đểxác thực một người dùng, mật khẩu do người đó nhập vào được băm và so sánh với kết quả băm được lưu trữ. Do các lý do cả về bảo mật và hiệu năng chương trình, đa số các thuật toán chữ ký số nói rằng chỉcó tóm lược của thông điệp, chứ không phải toàn văn thông điệp, được “ký”. Các hàm băm còn có thể được dùng để tạo các bit giả ngẫu nhiên (pseudorandom). SHA-1, MD5, vàRIPEMD-160 nằm trong sốcác thuật toán tóm tắt thông điệp được dùng rộng rãi nhất của năm 2005. Tháng 8 năm 2004, các nhà nghiên cứu đã tìm được các điểm yếu của một loạt hàm băm, trong đó có MD5, SHA-0 và RIPEMD. Tháng 2 năm 2005, người ta ghi nhận một tấn công đối với SHA-1. Tháng 8 năm 2005, người ta lại ghi nhận một tấn công khác đối với SHA-1. Các hàm băm được dùng đểnhận dạng các file trong các mạng chia sẻ tệp đồng đẳng. Ví dụ, trong một ed2k link, một biến thểcủa MD4 được kết hợp với kích thước file đểcung cấp thông tin cho việc xác định nguồn file, tải xuống và kiểm tra nội dung. 2.4.3. Các hàm băm được chế tạo đặc biệt Ngoài các kỹ thuật thông thườn nói trên người ta đã tìm nhiều cách rất riêng biệt khác nhau để chế tạo ra những hàm băm có độ tin cậy cao. Thông thường những sơ đồ này rất phức tạp và có những cấu trúc đặc biệt, nên không trình bày đầy đủ ở đây. Sau đây là một số các hàm băm nổi tiếng. MD5 (Rivest 1992) Đây là một trong các hàm băm có tiếng nhất và được sử dụng thông dụng: + Nó lấy vào các khối đầu vào 512 bit và sinh ra các giá trị băm 128 bit. + Được tin là phi đụng độ và one-way + Thuật toán MD5 được thiết kế cho phép chạy tốt nhất trên các máy tính 32 bit. Nó sử dụng các phép toán đơn giản như phép cộng modulo 32, do đó thích hợp với ciệc mã hoá cho các bộ xử lý 32 bit. SHA (Secure Hash Function) Đây là một thuật toán được đề xuất và bảo trợ bởi cơ quan NIST để sử dụng đối với hệ chữ ký DSA (cũng là một dự chuẩn cho 39 chữ ký điện tử). Nó cho giá trị băm là 160 bit và được thiết kế với cùng một tiếp cận như MD5. HAVAL Một hệ băm của Australia cho phép thay đổi kích thước giá trị băm. Cấu trúc rất giống như MD5. Snefru Mekle (1989) + Là hàm băm có khóa (keyed hash function) + Cho phép 1 trong 2 lựa chọn kích thước giá trị băm là 128 bit và 256 bit + Eli Biham đã chỉ ra một đụng độ cho trường hợp 128 bit. 2.5. MD5 (Message-Digest algorithm 5) MD5 (Message-Digest algorithm 5) là một hàm băm để mã hóa với giá trị băm là 128bit. Từng được xem là một chuẩn trên Internet, MD5 đã được sữ dụng rông rải trong các chương trình an ninh mạng, và cũng thường được dùng để kiểm tra tính nguyên vẹn của tập tin. MD5 được thiết kế bởi Ronald Rivest vào năm 1991 đểthay thếcho hàm băm trước đó, MD4 (cũng do ông thiết kế, trước đó nữa là MD2). MD5 có 2 ứng dụng quan trọng: – MD5 được sửdụng rộng rải trong thế giới phần mềm để đảm bảo rằng tập tin tải về không bị hỏng. Người sử dụng có thể so sánh giữa thông số kiểm tra phần mềm bằng MD5 được công bố với thông số kiểm tra phần mềm tải về bằng MD5. Hệ điều hành Unix sửdụng MD5 để kiểm tra các gói mà nó phân phối, trong khi hệ điều hành Windows sử dụng phần mềm của hãng thứ ba. – MD5 được dùng để mã hóa mật khẩu. Mục đích của việc mã hóa này là biến đổi một chuổi mật khẩu thành một đoạn mã khác, sao cho từ đoạn mã đó không thể nào lần trở lại mật khẩu. Có nghĩa là việc giải mã là không thể hoặc phải mất một khoãng thời gian vô tận (đủ để làm nản lòng các hacker) Một vài bảng băm MD5 – Bảng băm MD5 128 bit (16 byte) (còn được gọi là message digests) được biểu diễn bằng chuỗi 32 sốthập lục phân. MD5(“hello”) = 5d41402abc4b2a76b9719d911017c592 – Thậm chí một sự thay đổi nhỏtrong mẩu tin cũng dẫn đến thay đổi hoàn toàn bảng băm, do hiệu ứng thác. Ví dụ, thay “e” thành “a”: MD5(“hallo”) = 598d4c200461b81522a3328565c25f7c – Bảng băm của một chuỗi rỗng là: MD5(“”) = d41d8cd98f00b204e9800998ecf8427e 40 2.6. SHA (Secure Hash Algorithm) SHA (Secure Hash Algorithm hay thuật giải băm an toàn) là năm thuật giải được chấp nhận bởi FIPS dùng để chuyển một đoạn dữ liệu nhất định thành một đoạn dữ liệu có chiều dài không đổi với xác suất khác biệt cao. Năm thuật giải SHA là: - SHA-1 : trảlại kết quảdài 160 bit - SHA-224 : trảlại kết quảdài 224 bit - SHA-256: trảlại kết quảdài 256 bit - SHA-384: trảlại kết quảdài 384 bit - SHA-512: trảlại kết quảdài 512 bit. Thuật giải SHA là thuật giải băm mật được phát triển bởi cục an ninh quốc gia Mĩ (National Security Agency hay NSA) và được xuất bản thành chuẩn của chính phủ Mĩ bởi viện công nghệvà chuẩn quốc gia Mĩ (National Instituteof Standards and Technology hay NIST). Bốn thuật giải sau thường được gọi chung là SHA-2. SHA-1 được sửdụng rộng rãi trong nhiều ứng dụng và giao thức an ninh khác nhau, bao gồm TLS và SSL, PGP, SSH, S/MIME, và IPSec. SHA-1 được coi là thuật giải thay thếMD5, một thuật giải băm 128 bit phổ biến khác. Hiện nay, SHA-1 không còn được coi là an toàn bởi đầu năm 2005, ba nhà mật mã học người Trung Quốc đã phát triển thành công một thuật giải dùng để tìm được hai đoạn dữ liệu nhất định có cùng kết quảbăm tạo ra bởi SHA-1[1]. Mặc dù chưa có ai làm được điều tương tựvới SHA-2, nhưng vì vềthuật giải, SHA-2 không khác biệt mấy so với SHA-1 nên nhiều nhà khoa học đã bắt đầu phát triển một thuật giải khác tốt hơn SHA. NIST cũng đã khởi đầu một cuộc thi phát triển thuật giải băm mới an toàn hơn SHA, giống nhưquy trình phát triển chuẩn mã hóa tiên tiến (Advanced Encryption Standard hay AES). Một vài bảng băm SHA-1 - Đoạn dữ liệu gốc sửdụng bảng mã ASCII được biểu diễn bằng chuỗi 40 số thập lục phân SHA-1 (“hello”) = aaf4c61ddcc5e8a2dabede0f3b482cd9aea9434d - Thay “e” thành “a”: 41 SHA-1 (“hallo”) = fd4cef7a4e607f1fcc920ad6329a6df2df99a4e8 - Bảng băm của một chuỗi rỗng là: SHA-1 (“”) = da39a3ee5e6b4b0d3255bfef95601890afd80709 2.7. Mã hóa đối xứng (Symmetric Encryption) 2.7.1. Giới thiệu mã hóa đối xứng Trong mật mã học, các thuật toán khóa đối xứng (tiếng Anh: symmetric-key algorithms) là một lớp các thuật toán mật mã hóa trong đó các khóa dùng cho việc mật mã hóa và giải mã có quan hệrõ ràng với nhau (có thể dễ dàng tìm được một khóa nếu biết khóa kia). Hình 2.5: Quá trình mã hóa đối xứng Khóa dùng để mã hóa có liên hệ một cách rõ ràng với khóa dùng để giải mã có nghĩa chúng có thể hoàn toàn giống nhau, hoặc chỉ khác nhau nhờ một biến đổi đơn giản giữa hai khóa. Trên thực tế, các khóa này đại diện cho một bí mật được phân hưởng bởi hai bên hoặc nhiều hơn và được sử dụng để giữ gìn sự bí mật trong kênh truyền thông tin. Nhiều thuật ngữ khác dành cho việc mã hóa dùng chìa khóa đối xứng bao gồm các phương pháp mã hóa đơn khóa (single-key), phương pháp mã hóa một khóa (one-key) và phương pháp mã hóa khóa cá nhân (private-key). Cách sử dụng thuật ngữ sau cùng đôi khi gây xung đột với thuật ngữ khóa cá nhân (private-key) dùng trong mật mã hóa khóa công khai (public key cryptography). 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. Thuật toán đối xứng có thể được chia ra làm hai thểloại, mật mã luồng (stream ciphers) và mật 42 mã khối (block ciphers). Mật mã luồng mã hóa từng bit của thông điệp trong khi mật mã khối gộp một số bit lại và mật mã hóa chúng nhưmột đơn vị. Cỡ khối được dùng thường là các khối 64 bit. Thuật toán tiêu chuẩn mã hóa tân tiến (Advanced Encryption Standard), được NIST công nhận tháng 12 năm 2001, sử dụng các khối gồm 128 bit. Các thuật toán đối xứng thường không được sửdụng độc lập. Trong thiết kế của 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 chìa 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 những cái như SSL (Secure Sockets Layer), PGP (Pretty Good Privacy) và GPG (GNU Privacy Guard) v.v. Các thuật toán chìa khóa bất đối xứng được sử dụng đểphân phối chìa khóa mật cho thuật toán đối xứng có tốc độ cao hơn. Một sốví dụcác thuật toán đối xứng nổi tiếng và khá được tôn trọng bao gồm Twofish, Serpent, AES (còn được gọi là Rijndael), Blowfish, CAST5, RC4, Tam phần DES (Triple DES), và IDEA (International Data EncryptionAlgorithm – Thuật toán mật mã hóa dữ liệu quốc tế). 2.8. DES (Data Encryption Standard ) DES (viết tắt của Data Encryption Standardlà một phương pháp mật mã hóa được FIPS (Tiêu chuẩn Xửlý Thông tin Liên bang Hoa Kỳ) chọn làm chuẩn chính thức vào năm 1976. Sau đó chuẩn này được sửdụng rộng rãi trên phạm vi thế giới. Ngay từ đầu, thuật toán của nó đã gây ra rất nhiều tranh cãi, do nó bao gồm các thành phần thiết kế mật, độ dài khóa tương đối ngắn, và các nghi ngờvềcửa sau để Cơ quan An ninh quốc gia Hoa Kỳ(NSA) có thể bẻ khóa. Do đó, DES đã được giới nghiên cứu xem xét rất kỹ lưỡng, việc này đã thúc đẩy hiểu biết hiện đại về mật mã khối (block cipher) và các phương pháp thám mã tương ứng. Hiện nay DES được xem là không đủ an toàn cho nhiều ứng dụng. Nguyên nhân chủ yếu là độ dài 56 bit của khóa là quá nhỏ. Khóa DES đã từng bị phá trong vòng chưa đầy 24 giờ. Đã có rất nhiều kết quả phân tích cho thấy những điểm yếu về mặt lý thuyết của mã hóa có thể dẫn đến phá khóa, tuy chúng không khả thi trong thực tiễn. 43 Thuật toán được tin tưởng là an toàn trong thực tiễn có dạng Triple DES (thực hiện DES ba lần), mặc dù trên lý thuyết phương pháp này vẫn có thể bị phá. Gần đây DES đã được thay thế bằng AES (Advanced EncryptionStandard, hay Tiêu chuẩn Mã hóa Tiên tiến). DES là thuật toán mã hóa khối: nó xử lý từng khối thông tin của bản rõ có độ dài xác định và biến đổi theo những quá trình phức tạp để trở thành khối thông tin của bản mã có độ dài không thay đổi. Trong trường hợp của DES, độ dài mỗi khối là 64 bit. DES cũng sử dụng khóa để cá biệt hóa quá trình chuyển đổi. Nhờ vậy, chỉ khi biết khóa mới có thể giải mã được văn bản mã. Khóa dùng trong DES có độ dài toàn bộ là 64 bit. Tuy nhiên chỉ có 56 bit thực sự được sử dụng; 8 bit còn lại chỉ dùng cho việc kiểm tra. Vì thế, độ dài thực tế của khóa chỉ là 56 bit. 2.8.1. AES (Advanced Encryption Standard) Trong mật mã học, AES (viết tắt của từtiếng Anh: Advanced Encryption Standard, hay Tiêu chuẩn mã hóa tiên tiến) là một thuật toán mã hóa khối được chính phủ Hoa kỳ áp dụng làm tiêu chuẩn mã hóa. Giống nhưtiêu chuẩn tiền nhiệm DES, AES được kỳ vọng áp dụng trên phạm vi thếgiới và đã được nghiên cứu rất kỹlưỡng. AES được chấp thuận làm tiêu chuẩn liên bang bởi Viện tiêu chuẩn và công nghệ quốc gia Hoa kỳ (NIST) sau một quá trình tiêu chuẩn hóa kéo dài 5 năm. Thuật toán được thiết kế bởi hai nhà mật mã học người Bỉ: Joan Daemen và Vincent Rijmen (lấy tên chung là “Rijndael” khi tham gia cuộc thi thiết kếAES). Rijndael được phát âm là “Rhine dahl” theo phiên âm quốc tế(IPA: [ɹaindal]). Mặc dù 2 tên AES và Rijndael vẫn thường được gọi thay thếcho nhau nhưng trên thực tế thì 2 thuật toán không hoàn toàn giống nhau. AES chỉlàm việc với khối dữ liệu 128 bít và khóa có độdài 128, 192 hoặc 256 bít trong khi Rijndael có thểlàm việc với dữ liệu và khóa có độdài bất kỳlà bội sốcủa 32 bít nằm trong khoảng từ 128 tới 256 bít. Các khóa con sửdụng trong các chu trình được tạo ra bởi quá trình tạo khóa con Rijndael. Hầu hết các phép toán trong thuật toán AES đều thực hiện trong một trường hữu hạn. 44 CHƯƠNG 3 ỨNG DỤNG THỰC TIỄN TRÊN SÀN THƯƠNG MẠI ĐIỆN TỬ TỈNH THÁI NGUYÊN 3.1. Các giao thức trong Thương mại điện tử TMĐT được phân chia thành một số loại như B2B, B2C, C2C dựa trên thành phần tham gia hoạt động thương mại. Có thể sử dụng hình sau để minh họa cách phân chia này. Government Business Consumer Government G2G G2B G2C Business B2G B2B B2C Consumer C2G C2B C2C 3.1.1. Các loại hình TMĐT Hình thức giao dịch thương mại điện tử doanh nghiệp với khách hàng (Business to Customer B2C) thành phần tham gia hoạt động thương mại gồm người bán là doanh nghiệp và người mua là người tiêu dùng. Sử dụng trình duyệt (web browser) để tìm kiếm sản phẩm trên Internet. Sử dụng giỏ hàng (shopping cart) để lưu trữ các sản phẩm khách hàng đặt mua. Thực hiện thanh toán bằng điện tử. Hình thức giao dịch thương mại điện tử doanh nghiệp với doanh nghiệp (Business to Business - B2B): thành phần tham gia hoạt động thương mại là các doanh nghiệp, tức người mua và người bán đều là doanh nghiệp. Sử dụng Internet để tạo mối quan hệ giữa nhà cung cấp và các cửa hàng thông qua các vấn đề về chất lượng, dịch vụ. Marketing giữa hai đối tượng này là marketing công nghiệ

Các file đính kèm theo tài liệu này:

  • pdfluan_van_an_toan_thong_tin_san_giao_dich_thuong_mai_dien_tu.pdf
Tài liệu liên quan