áp dụng các nguyên tắc sáng tạo trong mật mã hóa

  • Số trang: 27 |
  • Loại file: PDF |
  • Lượt xem: 12 |
  • Lượt tải: 0
nganguyen

Đã đăng 34173 tài liệu

Mô tả:

Đại Học Quốc Gia TP.HCM Trường Đại Học Khoa Học Tự Nhiên T P ƯƠ G P ÁP G Ê Ứ T GT C ĐỀ TÀI: ÁP DỤNG CÁC NGUYÊN TẮC SÁNG TẠO TRONG M T MÃ HÓA GVHD: GS.TSKH.Hoàng Kiếm Người thực hiện: Mã số: Thái Huệ Nghi 1211047 Học viên cao học khóa 22/2012 TP.HCM – 2012 Mục lục ÁP DỤNG CÁC NGUYÊN TẮC SÁNG TẠO TRONG MẬT MÃ HÓA ........................ 0 Phần I: Giới thiệu về mật mã học ........................................................................................ 4 1. Mật mã học cổ điển: ..................................................................................................... 4 2. Mật mã học hiện đại: .................................................................................................... 4 2.1. Lý thuyết Shannon: ................................................................................................ 4 2.2. Tiêu chuẩn mật mã: ............................................................................................... 5 2.3. Các tiêu chuẩn đánh giá một hệ thống mã hóa: ..................................................... 5 2.4. Các kỹ thuật trong mã hóa: .................................................................................... 6 Phần II: 40 nguyên tắc sáng tạo trong nghiên cứu khoa học ............................................... 9 1. Nguyên lý phân nhỏ: .................................................................................................... 9 2. Nguyên lý “tách riêng”: ............................................................................................... 9 3. Nguyên lý phẩm chất cục bộ: ....................................................................................... 9 4. Nguyên lý phản đối xứng: .......................................................................................... 10 5. Nguyên lý kết hợp: ..................................................................................................... 10 6. Nguyên lý vạn năng: .................................................................................................. 10 7. Nguyên lý “chứa trong”: ............................................................................................ 10 8. Nguyên lý phản trọng lượng: ..................................................................................... 10 9. Nguyên lý gây ứng suất sơ bộ: ................................................................................... 10 10. Nguyên lý thực hiện sơ bộ: ...................................................................................... 10 11. Nguyên lý dự phòng: ................................................................................................ 11 12. Nguyên lý đẳng thế: ................................................................................................. 11 13. Nguyên lý đảo ngược: .............................................................................................. 11 14. Nguyên lý cầu (tròn) hóa: ........................................................................................ 11 15. Nguyên lý linh động: ................................................................................................ 11 16. Nguyên lý giải “thiếu” hoặc “thừa”: ........................................................................ 11 17. Nguyên lý chuyển sang chiều khác: ......................................................................... 12 18. Nguyên lý sử dụng các dao động cơ học: ................................................................ 12 19. Nguyên lý tác động theo chu kỳ: ............................................................................. 12 1 20. Nguyên lý liên tục tác động có ích:.......................................................................... 12 21. Nguyên lý “vượt nhanh”: ......................................................................................... 12 22. Nguyên lý biến hại thành lợi: ................................................................................... 13 23. Nguyên lý quan hệ phản hồi: ................................................................................... 13 24. Nguyên lý sử dụng trung gian: ................................................................................. 13 25. Nguyên lý tự phục vụ: .............................................................................................. 13 26. Nguyên lý sao chép (copy) ....................................................................................... 13 27. Nguyên lý “rẻ” thay cho “đắt”: ................................................................................ 13 28. Thay thế sơ đồ cơ học: ............................................................................................. 14 29. Sử dụng các kết cấu khí và lỏng: ............................................................................. 14 30. Sử dụng vỏ dẻo và màng mỏng: ............................................................................... 14 31. Sử dụng các vật liệu nhiều lỗ: .................................................................................. 14 32. Nguyên lý thay đổi màu sắc: .................................................................................... 14 33. Nguyên lý đồng nhất: ............................................................................................... 15 34. Nguyên lý phân hủy hoặc tái sinh các phần: ............................................................ 15 35. Thay đổi các thông số hoá lý của đối tượng: ........................................................... 15 36. Sử dụng chuyển pha: ................................................................................................ 15 37. Sử dụng sự nở nhiệt: ................................................................................................ 15 38. Sử dụng các chất oxy hoá mạnh:.............................................................................. 15 39. Thay đổi độ trơ: ........................................................................................................ 16 40. Sử dụng các vật liệu hợp thành (composite): ........................................................... 16 Phần 3: Áp dụng các nguyên tắc sáng tạo trong mã hóa ................................................... 16 1. Nguyên lý phân nhỏ: .................................................................................................. 16 2. Nguyên lý “tách riêng”: ............................................................................................. 16 3. Nguyên lý phẩm chất cục bộ: ..................................................................................... 16 4. Nguyên lý kết hợp: ..................................................................................................... 17 5. Nguyên lý thực hiện sơ bộ: ........................................................................................ 18 6. Nguyên lý đảo ngược: ................................................................................................ 18 7. Nguyên lý cầu (tròn) hóa: .......................................................................................... 19 2 8. Nguyên lý linh động: .................................................................................................. 20 9. Nguyên lý giải “thiếu” hoặc “thừa”: .......................................................................... 21 10. Nguyên lý chuyển sang chiều khác: ......................................................................... 22 11. Nguyên lý tác động theo chu kỳ: ............................................................................. 22 12. Nguyên lý liên tục tác động có ích:.......................................................................... 23 13. Nguyên lý quan hệ phản hồi: ................................................................................... 23 14. Nguyên lý sử dụng trung gian: ................................................................................. 23 15. Nguyên lý “rẻ” thay cho “đắt”: ................................................................................ 24 Tài liệu tham khảo: ............................................................................................................ 25 1. Tài liệu Internet: ......................................................................................................... 25 2. Tài liệu văn bản: ......................................................................................................... 26 3 Phần I: Giới thiệu về mật mã học 1. Mật mã học cổ điển Mật mã học là một trong những ngành học ra đời từ rất sớm và có lịch sử hàng ngàn năm. Những bằng chứng sớm nhất về sử dụng mật mã học có thể nói là xuất phát từ thời Ai Cập cổ đại với những chữ tượng hình kì lạ, khơi gợi lên nhiều điều bí ẩn, thú vị. Trong giáo hội, kinh thánh, người ta áp dụng mã hóa để ám chỉ các nhân vật giáo phái hay người trong đế chế một cách bí mật nhằm mục đích truyền đạo và che mắt chính quyền. Người Hy Lạp cổ đại và người La Mã là một trong những người đầu tiên sử dụng các kỹ thuật mật mã (chẳng hạn như gậy mật mã, mật mã Caesar), mà ngày nay ta xếp nó vào lớp mã hóa cổ điển. Mã hóa thực sự đóng vai trò quan trọng, đặc biệt trong quân đội và các vấn đề liên quan đến bí mật quốc gia, khi đó việc bảo mật thông tin thực sự mang ý nghĩa sống còn. Ngay từ thời trung cổ, các vấn đề liên quan đến mã hóa cũng ảnh hưởng không ít đến các sự kiện lịch sử như vụ án xử tử nữ hoàng Mary I của Scotland, vụ án xử tử Mata Hari…Mật mã học thời kì bấy giờ không phát triển nhiều ở phương Đông nhưng lại phát triển mạnh mẽ ở các nước phương Tây, đặc biệt kể từ thế kỷ 19 trở về sau, mã hóa đã phát triển một cách có hệ thống. Đi đôi với sự phát triển của các kỹ thuật mã hóa là các kỹ thuật phá mã với nhiều công trình được công bố như phân tích mật mã đơn ký tự của Charles Babbage, công trình của Auguste Kerckhoffs,…Trong thế chiến thứ II, các hệ thống mật mã cơ khí và điện tử được sử dụng rộng rãi và người Đức đã chế tạo ra máy Enigma để mã hóa thông điệp dùng trong quân sự . Tuy nhiên, với các kỹ thuật thống kê của William F. Friedman, Marian Rejewski và các cộng sự đã tiếp tục nghiên cức và bước đầu thành công trong việc phá mã hệ thống Enigma… 2. Mật mã học hiện đại 2.1. Lý thuyết Shannon Nhiều người cho rằng kỷ nguyên của mật mã học hiện đại bắt đầu với Claude Shannon, người được coi là cha đẻ của mật mã toán học. Năm 1949, ông đã công bố Lý thuyết về 4 truyền thông trong các hệ thống bảo mật trên tập san Bell System Technical Journal – Tập san kỹ thuật của hệ thống Bell - và một thời gian ngắn sau đó, trong cuốn Mathematical Theory of Communication - Lý thuyết toán học trong truyền thông - cùng với tác giả Warren Weaver. Những công trình này cùng với những công trình nghiên cứu khác của ông về lý thuyết tin học và truyền thông đã thiết lập một nền tảng lý thuyết cơ bản cho mật mã học và thám mã học. Với ảnh hưởng đó, mật mã học gần như bị thâu tóm bởi chính phủ NSA, và rất ít công trình được tiếp tục công bố cho đến giữa thập niên 1970. 2.2. Tiêu chuẩn mật mã Thời kỳ giữa thập niên 1970 được chứng kiến hai tiến bộ lớn trong lĩnh vực mật mã học, đó là sự công bố đề xuất Tiêu chuẩn mật mã hóa dữ liệu (Data Encryption Standard) ở nước Mỹ vào ngày 17/3/1975. Với đề cử của Cục Tiêu chuẩn Quốc Gia (NIST), bản đề xuất DES được công ty IBM đệ trình đã trở thành chuẩn mã hóa công khai đầu tiên được áp dụng rộng rãi trong công chúng như một tiện ích cho các tổ chức thương mại, nhà băng, và các tổ chức tài chính lớn. Tuy nhiên, các kỹ thuật phá mã phát triển đã cho thấy những điểm yếu của phương pháp và vì vậy DES không thật sự đủ an toàn. Vì thế mà đến năm 2001, sự kiện lớn thứ 2 đã diễn ra: DES được chính thức thay thế bởi AES(viết tắt của Advanced Encryption Standard - Tiêu chuẩn mã hóa tiên tiến) sau một cuộc thi được tổ chức công khai bởi NIST. Do nguy cơ bị tấn công cao nếu dùng DES nguyên thủy, người ta đã tìm cách tăng độ an toàn cho DES bằng biến thế Triple-DES và nó vẫn được chấp nhận như 1 tiêu chuẩn của nhiều quốc gia và các tổ chức trên thế giới 2.3. Các tiêu chuẩn đánh giá một hệ thống mã hóa  Tính bí mật (Secrect): thông tin được bảo mật tuyệt đối, kẻ xấu không thể biết được  Tính toàn vẹn thông tin (Interity): thông tin sau khi mã hóa và gửi đến nơi phải đảm bảo còn nguyên vẹn, không bị thay đổi, đánh tráo hay chấp vá bởi kẻ xấu trên đường truyền  Tính xác thực (Authentication): phải chứng thực được người đang thực hiện là người chủ thực sự. 5  Tính chống thoái thác trách nhiệm (Non- repudiation): làm sao để người đã thực hiện không thể chối bỏ trách nhiệm của mình trên thông tin mà họ đã tác động 2.4. Các kỹ thuật trong mã hóa 2.4.1. Mã hóa đối xứng Trong mật mã học, các thuật toán khóa đối xứng 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). 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. Khóa bí mật còn gọi là đơn khóa hay khóa cá nhân. Về tốc độ, nếu so sánh với mã hóa bất đối xứng có chất lượng tương đương thì mã hóa đối xứng thực sự nhanh và đơn giản hơn nhiều. Tuy nhiên, việc bảo mật chìa khóa và trao đổi khóa giữa 2 bên bằng một kênh truyền hoàn toàn bí mật thực sự là một điều khó khăn. Các chuẩn áp dụng mã hóa đối xứng như: DES, Triple-DES, AES, RC6… Nhìn chung, các phương pháp đều sử dụng mã hóa khối và thực hiện nhiều chu kỳ mã hóa liên tiếp nhau với nhiều thao tác kết hợp cộng với tập chìa khóa được tạo ra theo cách thực xoay vòng. Sự tác động có tính chu kỳ và kết hợp lẫn nhau này khiến cho phương pháp đạt được độ phức tạp cần thiết tương ứng với một mức độ an toàn nào đó Các kiểu tấn công đối với mã hóa đối xứng:  Tấn công biết trước văn bản (known-plaintext attacks)  Tấn công lựa chọn văn bản (chosen plaintext attacks)  Thám mã vi phân (differential cryptanalysis)  Thám mã tuyến tính (linear cryptanalysis) 6 2.4.2. Mã hóa bất đối xứng Mã hóa bất đối xứng hay còn gọi là mật mã hóa khóa công khai là một dạng mật mã hóa cho phép người sử dụng trao đổi các thông tin mật mà không cần phải trao đổi các khóa chung bí mật trước đó. Điều này được thực hiện bằng cách sử dụng một cặp khóa có quan hệ toán học với nhau là khóa công khai và khóa cá nhân (hay khóa bí mật). Mục đích sử dụng mã hóa khóa công khai là để: mã hóa, tạo chữ ký số hay thỏa thuận khóa để trao đổi thông tin bí mật giữa 2 bên. Do tính chất công khai một phần nên các kỹ thuật mật mã hóa khóa công khai thường đòi hỏi khối lượng tính toán 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. Thuật toán mật mã hóa khóa công khai được thiết kế đầu tiên bởi James H. Ellis, Clifford Cocks, và Malcolm Williamson tại GCHQ (Anh) vào đầu thập kỷ 1970. Thuật toán sau này được phát triển và biết đến dưới tên Diffie-Hellman, và là một trường hợp đặc biệt của RSA. Đến năm 1977, Rivest, Shamir và Adleman đã cùng nhau tìm ra thuật toán đầu tiên cho mã hóa khóa công khai. Công trình này được công bố vào năm 1978 và thuật toán được đặt tên là RSA. RSA sử dụng phép toán tính hàm mũ môđun (môđun được tính bằng tích số của 2 số nguyên tố lớn) để mã hóa và giải mã cũng như tạo chữ ký số. An toàn của thuật toán được đảm bảo với điều kiện là không tồn tại kỹ thuật hiệu quả để phân tích một số rất lớn thành thừa số nguyên tố.  Ứng dụng:  Bảo mật thông tin: một văn bản được mã hóa bằng khóa công khai của một người sử dụng thì chỉ có thể giải mã với khóa bí mật của người đó.  Tạo chữ ký số khóa công khai để nhận thực  Các ứng dụng khác như: tiền điện tử, thỏa thuận khóa...  Điểm yếu và các hình thức tấn công đối với mã hóa bất đối xứng:  Điểm yếu: do phương pháp áp dụng toán học để xây dựng cặp khóa và do đó không thể đảm bảo an toàn tuyệt đối với các tấn công dựa trên bản chất toán học  Các kiểu tấn công: 7  Tấn công dựa trên việc đo đạc chính xác thời gian mà hệ thống phần cứng thực hiện mã hóa  Tấn công dạng kẻ đứng giữa (man in middle): kẻ tấn công lợi dụng việc phân phối khóa để thay đổi khóa công khai ... 2.4.3. Mã hóa một chiều (hàm băm mật mã) Khác với hai hình thức mã hóa đã đề cập, mã hóa một chiều đúng như tên gọi của nó: không thể khôi phục lại văn bản ban đầu từ văn bản đã mã hóa. Mã hóa 1 chiều được biết đến với khái niệm hàm băm mật mã học (Cryptographic hash function) là một dạng mã hóa đặc biệt, trong đó hàm băm phải thỏa mãn một số tính chất bảo mật nhất định để phù hợp với 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).  Cách thức hoạt động: hàm băm nhận đầu vào là một xâu ký tự (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, gọi là “message digest”. Thành phần quan trọng nhất của phương pháp chính là hàm băm mật mã, làm sao để thỏa mãn nguyên tắc các văn bản khác nhau phải băm ra một kết quả khác nhau (tính duy nhất) và và việc tìm lại văn bản trước khi băm phải không thể thực hiện được (tính một chiều). Các hàm băm thông dụng: MD5 và SHA-1.  Các tính chất của hàm băm:  An toàn đối với tấn công “tiền ảnh”: cho trước thông điệp đã băm y, rất khó tìm lại thông điệp x sao cho H(x) = y.  An toàn đối với tấn công “tiền ảnh thứ 2”: cho trước x và y=H(x), rất khó tìm được giá trị x’ ≠ x sao cho H(x’) = H(x)  An toàn đối với hiện tượng đụng độ: rất khó tìm được hai giá trị phân biệt x và x’ sao cho H(x’) = H(x)  Ứng dụng của hàm băm mật mã: 8  Điểm khó của hàm băm mật mã là yếu tố có vẻ “ngẫu nhiên” đối với kết quả sau khi băm. Vì vậy người ta thường sử dụng kết hợp thông tin ngẫu nhiên để tăng độ bảo mật.  Ứng dụng: chữ ký điện tử (certification), định danh chứng thực người dùng (authentication), sử dụng trong liên lạc an toàn (IPSec, SSL/TLS), kiểm tra tính toàn vẹn của phần mềm/dữ liệu, đối sánh CSDL… Phần II: 40 nguyên tắc sáng tạo trong nghiên cứu khoa học 1. Nguyên lý phân nhỏ - Chia nhỏ đối tượng thành các phần độc lập, nhờ đó có thể giải quyết từng phần một cách dễ dàng - Làm đối tượng trở nên tháo lắp được - Tăng mức độ phân nhỏ của đối tượng, làm giảm sự phức tạp của đối tượng - Nguyên lý phân nhỏ thường được sử dụng kết hợp với các nguyên tắc như: nguyên tắc tách riêng, nguyên tắc phẩm chất cục bộ, nguyên tắc kết hợp, nguyên tắc vạn năng,… 2. Nguyên lý “tách riêng” Tách phần gây “phiền phức” (tính chất “phiền phức”) hay ngược lại tách phần duy nhất “cần thiết” (tính chất “cần thiết”) ra khỏi đối tượng. 3. Nguyên lý phẩm chất cục bộ - Chuyển đối tượng (hay môi trường bên ngoài, tác động bên ngoài) có cấu trúc đồng nhất thành không đồng nhất. - Các phần khác nhau của đối tượng phải có các chức năng khác nhau. - Mỗi phần của đối tượng phải ở trong những điều kiện thích hợp nhất đối với công việc. - Nguyên lý phẩm chất cục bộ phản ánh nguyên tắc từ đơn giản đến phức tạp, từ đơn điệu sang đa dạng. 9 4. Nguyên lý phản đối xứng Chuyển đối tượng có hình dạng đối xứng thành không đối xứng (nói chung giảm bật đối xứng). 5. Nguyên lý kết hợp: - Kết hợp các đối tượng đồng nhất hoặc các đối tượng dùng cho các hoạt động kế cận. - Kết hợp về mặt thời gian các hoạt động đồng nhất hoặc kế cận. 6. Nguyên lý vạn năng Đối tượng thực hiện một số chức năng khác nhau, do đó không cần sự tham gia của các đối tượng khác. 7. Nguyên lý “chứa trong” - Một đối tượng được đặt bên trong đối tượng khác và bản thân nó lại chứa đối tượng thứ ba… - Một đối tượng chuyển động xuyên suốt bên trong đối tượng khác 8. Nguyên lý phản trọng lượng - Bù trừ trọng lượng của đối tượng bằng cách gắn nó với các đối tượng khác có lực nâng - Bù trừ trọng lượng của đối tượng bằng tương tác với môi trường như sư dụng các lực thủy động, khí động,… 9. Nguyên lý gây ứng suất sơ bộ Gây ứng xuất trước với đối tượng để chống lại ứng suất không cho phép hoặc không mong muốn khi đối tượng làm việc (hoặc gây ứng suất trước để khi làm việc sẽ dùng ứng suất ngược lại). 10. Nguyên lý thực hiện sơ bộ - Thực hiện trước sự thay đổi cần có, hoàn toàn hoặc từng phần, đối với đối tượng. 10 - Cần sắp xếp đối tượng trước, sao cho chúng có thể hoạt động từ vị trí thuận lợi nhất, không mất thời gian dịch chuyển. 11. Nguyên lý dự phòng Bù đắp độ tin cậy không lớn của đối tượng bằng cách chuẩn bị trước các phương tiện báo động, ứng cứu, an toàn. 12. Nguyên lý đẳng thế Thay đổi điều kiện làm việc để không phải nâng lên hay hạ xuống các đối tượng. 13. Nguyên lý đảo ngược - Thay vì hành động như yêu cầu bài toán, hành động ngược lại (ví dụ, không làm nóng mà làm lạnh đối tượng). - Làm phần chuyển động của đối tượng (hay môi trường bên ngoài) thành đứng yên và ngược lại, phần đứng yên thành chuyển động. 14. Nguyên lý cầu (tròn) hóa - Chuyển những phần thẳng của đối tượng thành cong, mặt phẳng thành mặt cầu, kết cấu hình hộp thành kết cấu hình cầu - Sử dụng các con lăn, viên bi, vòng xoắn. - Chuyển sang chuyển động quay, sử dụng lực ly tâm. 15. Nguyên lý linh động - Cần thay đổi các đặc trưng của đối tượng hay môi trường bên ngoài sao cho chúng tối ưu trong từng giai đoạn làm việc. - Phân chia đối tượng thành từng phần, có khả năng dịch chuyển với nhau. 16. Nguyên lý giải “thiếu” hoặc “thừa” Nếu như khó nhận được 100% hiệu quả cần thiết, nên nhận ít hơn hoặc nhiều hơn “một chút”. Lúc đó bài toán có thể trở nên đơn giản hơn và dễ giải hơn. 11 17. Nguyên lý chuyển sang chiều khác - Những khó khăn do chuyển động (hay sắp xếp) đối tượng theo đường (một chiều) sẽ được khắc phục nếu cho đối tượng khả năng di chuyển trên mặt phẳng (hai chiều). Tương tự, những bài toán liên quan đến chuyển động (hay sắp xếp) các đối tượng trên mặt phắng sẽ được đơn giản hóa khi chuyển sang không gian (ba chiều). - Chuyển các đối tượng có kết cấu một tầng thành nhiều tầng. - Đặt đối tượng nằm nghiêng. - Sử dụng mặt sau của diện tích cho trước. - Sử dụng các luồng ánh sáng tới diện tích bên cạnh hoặc tới mặt sau của diện tích trước. 18. Nguyên lý sử dụng các dao động cơ học - Làm đối tượng dao động. Nếu đã có dao động, tăng tần số dao động (đến tầng số siêu âm) - Sử dụng tần số cộng hưởng. - Thay vì dùng các bộ rung cơ học, dùng các bộ rung áp điện - Sử dụng siêu âm kết hợp với trường điện từ 19. Nguyên lý tác động theo chu kỳ - Chuyển tác động liên tục thành tác động theo chu kỳ (xung) - Nếu đã có tác động theo chu kỳ, hãy thay đổi chu kỳ - Sử dụng các khoảng thời gian giữa các xung để thực hiện hành động khác 20. Nguyên lý liên tục tác động có ích - Thực hiện công việc một cách liên tục (tất cả các phần của đối tượng cần luôn luôn làm việc ở chế độ đủ tải) - Khắc phục vận hành không tải và trung gian - Chuyển các chuyển động tịnh tiến thành chuyển động qua lại. 21. Nguyên lý “vượt nhanh” - Vượt qua các giai đoạn có hại hoặc nguy hiểm với vận tốc lớn. 12 - Vượt nhanh để có được hiệu ứng cần thiết 22. Nguyên lý biến hại thành lợi - Sử dụng những tác nhân có hại (thí dụ tác động có hại của môi trường) để thu được hiệu ứng có lợi - Khắc phục tác nhân có hại bằng cách kết hợp nó với tác nhân có hại khác - Tăng cường tác nhân có hại đến mức nó không còn có hại nữa 23. Nguyên lý quan hệ phản hồi - Thiết lập quan hệ phản hồi - Nếu đã có quan hệ phản hồi, hay thay đổi nó 24. Nguyên lý sử dụng trung gian Sử dụng đối tượng trung gian, chuyển tiếp 25. Nguyên lý tự phục vụ - Đối tượng phải tự phục vụ bằng cách thực hiện các thao tác phụ trợ, sửa chữa - Sử dụng phế liệu, chất thải, năng lượng dư. 26. Nguyên lý sao chép (copy) - Thay vì sử dụng những cái không được phép, phức tạp, đắt tiền, không tiện lợi hoặc dễ vỡ -> hãy sử dụng bản sao - Thay thế đối tượng hoặc hệ các đối tượng bằng bản sao quang học (ảnh, hình vẽ) với các tỷ lệ cần thiết - Nếu không thể sử dụng bản sao quang học ở vùng biểu kiến (vùng ánh sáng nhìn thấy được bằng mắt thường ),chuyển sang sử dụng các bản sao hồng ngoại hoặc tử ngoại 27. Nguyên lý “rẻ” thay cho “đắt” Thay thế đối tượng đắt tiền bằng bộ các đối tượng rẻ có chất lượng kém hơn (thí dụ như về tuổi thọ). 13 28. Thay thế sơ đồ cơ học - Thay thế sơ đồ cơ học bằng điện, quang, nhiệt, âm hoặc mùi vị. - Sử dụng điện trường, từ trường và điện từ trường trong tương tác với đối tượng . - Chuyển các trường đứng yên sang chuyển động, các trường cố định sang thay đổi theo thời gian, các trường đồng nhất sang có cấu trúc nhất định . - Sử dụng các trường kết hợp với các hạt sắt từ. 29. Sử dụng các kết cấu khí và lỏng Thay cho các phần của đối tượng ở thể rắn, sử dụng các chất khí và lỏng: nạp khí, nạp chất lỏng, đệm không khí, thủy tĩnh, thủy phản lực. 30. Sử dụng vỏ dẻo và màng mỏng - Sử dụng các vỏ dẻo và màng mỏng thay cho các kết cấu khối. - Cách ly đối tượng với môi trường bên ngoài bằng các vỏ dẻo và màng mỏng. 31. Sử dụng các vật liệu nhiều lỗ - Làm đối tượng có nhiều lỗ hoặc sử dụng thêm những chi tiết có nhiều lỗ (miếng đệm, tấm phủ…). - Nếu đối tượng đã có nhiều lỗ, sơ bộ tẩm nó bằng chất nào đó. 32. Nguyên lý thay đổi màu sắc - Thay đổi màu sắc của đối tượng hay môi trường bên ngoài. - Thay đổi độ trong suốt của của đối tượng hay môi trường bên ngoài. - Để có thể quan sát được những đối tượng hoặc những quá trình, sử dụng các chất phụ gia màu, hùynh quang. - Nếu các chất phụ gia đó đã được sử dụng, dùng các nguyên tử đánh dấu. - Sử dụng các hình vẽ, ký hiệu thích hợp. 14 33. Nguyên lý đồng nhất Những đối tượng, tương tác với đối tượng cho trước, phải được làm từ cùng một vật liệu (hoặc từ vật liệu gần về các tính chất) với vật liệu chế tạo đối tượng cho trước. 34. Nguyên lý phân hủy hoặc tái sinh các phần - Phần đối tượng đã hoàn thành nhiệm vụ hoặc trở nên không cần thiết phải tự phân hủy (hoà tan, bay hơi..) hoặc phải biến dạng. - Các phần mất mát của đối tượng phải được phục hồi trực tiếp trong quá trình làm việc. 35. Thay đổi các thông số hoá lý của đối tượng - Thay đổi trạng thái đối tượng. - Thay đổi nồng độ hay độ đậm đặc. - Thay đổi độ dẻo. - Thay đổi nhiệt độ, thể tích. 36. Sử dụng chuyển pha Sử dụng các hiện tượng nảy sinh trong quá trình chuyển pha như: thay đổi thể tích, toả hay hấp thu nhiệt lượng... 37. Sử dụng sự nở nhiệt - Sử dụng sự nở (hay co) nhiệt của các vật liệu. - Nếu đã dùng sự nở nhiệt, sử dụng với vật liệu có các hệ số nở nhiệt khác nhau. 38. Sử dụng các chất oxy hoá mạnh - Thay không khí thường bằng không khí giàu oxy. - Thay không khí giàu oxy bằng chính oxy. - Dùng các bức xạ ion hoá tác động lên không khí hoặc oxy. - Thay oxy giàu ozon (hoặc oxy bị ion hoá) bằng chính ozon. 15 39. Thay đổi độ trơ - Thay môi trường thông thường bằng môi trường trung hoà. - Đưa thêm vào đối tượng các phần , các chất , phụ gia trung hoà. - Thực hiện quá trình trong chân không. 40. Sử dụng các vật liệu hợp thành (composite) Chuyển từ các vật liệu đồng nhất sang sử dụng những vật liệu hợp thành (composite). Hay nói chung sử dụng các vật liệu mới. Phần 3: Áp dụng các nguyên tắc sáng tạo trong mã hóa 1. Nguyên lý phân nhỏ Trong mã hóa, tách văn bản thành các ký tự độc lập. Khi đó, việc mã hóa văn bản chỉ là mã cho từng ký tự rồi ghép lại tạo thành văn bản đã mã hóa. Như vậy, ta chỉ cần sử dụng bộ mã có số lượng giới hạn (bảng chữ cái, bảng chữ số,…) có thể mã được văn bản có kích thước bất kỳ. Cách mã hóa này là cách sơ khai nhất, đó là sự ánh xạ tương ứng một một giữa 1 ký tự gốc và 1 ký tự sau khi mã, chưa có sự phụ thuộc lẫn nhau giữa các ký tự hay khối ký tự kế cận nhau trong văn bản. 2. Nguyên lý “tách riêng” Áp dụng trong kỹ thuật tấn công vi sai: người ta cố tình tạo ra một ít khác biệt trong input và tìm xem kết quả output bị ảnh hưởng như thế nào từ những thay đổi ở đầu vào . Kỹ thuật này giúp các nhà thám mã có thể tách được những vị trí có liên quan và ảnh hưởng với nhau trong cả khối văn bản, truy vết các sai khác trong mạng lưới biến đổi và khám phá ra những chỗ nào không thực sự là ngẫu nhiên, cố gắng khai thác các thuộc tính đó để tìm ra khóa bí mật. 3. Nguyên lý phẩm chất cục bộ Mã hóa đối xứng (MHĐX) và mã hóa bất đối xứng (MHBĐX) là 2 dạng mã hóa được sử dụng phổ biến nhất. MHĐX có ưu điểm là tốc độ mã hóa nhanh , đơn giản, tuy nhiên lại 16 khó khăn trong việc thiết lập kênh an toàn tuyệt đối để trao đổi khóa. Trong khi đó, với MHBĐX, vấn đề khóa trở nên vô cùng dễ dàng vì mỗi người tự làm chủ cặp khóa của chính mình, khóa mã được công khai để mã hóa tài liệu còn khóa giải mã thì chỉ người chủ cặp khóa mới biết. Vì tính chất công khai một phần khóa mà thuật toán cho MHBĐX đòi hỏi độ phức tạp cao và cho thời gian mã hóa lâu. Vì vậy người ta kết hợp hai cách này theo nguyên tắc cục bộ để tận dụng ưu điểm của cả hai: đối với văn bản cần mã (thường kích thước rất lớn) thì dùng MHĐX, còn việc trao đổi khóa bí mật thì dùng MHBĐX vì kích thước khóa thường không lớn, vừa đảm bảo về tốc độ, vừa đảm bảo an toàn.(Vd: cấu trúc giao thức trong SSL) 4. Nguyên lý kết hợp 1) Trong phương pháp mã hóa bằng thay thế, với mỗi khóa k được chọn, mỗi ký tự trong văn bản được ánh xạ thành một ký tự khác duy nhất trong văn bản sau khi mã. Vì tính song ánh đó mà văn bản sau khi mã có thể bị tấn công bằng kỹ thuật phân tích tần số. Khắc phục nhược điểm này, phương pháp Vigenere đã sử dụng khóa có độ dài m nhằm thực hiện m phép mã hóa bằng dịch chuyển được áp dụng luân phiên theo chu kỳ. Ta gọi kỹ thuật này là kết hợp cùng lúc nhiều khóa đơn (để tạo ra khóa m) và thực hiện theo chu kỳ để mã hóa văn bản. Kết quả là 2 ký tự giống nhau sau khi mã có thể cho hai ký tự khác nhau và kẻ tấn công không thể dùng phân tích tần số để đoán được ban đầu là ký tự nào Ví dụ : (Chọn bảng mã là bảng chữ cái tiếng anh) Mã hóa dùng 1 khóa: chọn k = 3 (nghĩa là kí tự a được thay bằng kí tự cách a 3 đơn vị trong bảng mã) Mã hóa dùng phương pháp Vigenere: chọn K = {1,2,3} => m= 3 17 2) Kết hợp nhiều cách thức mã hóa khác nhau trong cùng một quy trình mã hóa để tăng độ an toàn. Ví dụ như dùng phương pháp thay thế kết hợp phương pháp hoán vị để cùng mã hóa cho mỗi ký tự (hoăc mỗi khối) trong chuỗi văn bản. Trong các phương thức mã hóa công khai chuẩn quốc tế như DES, 3-DES, AES…, người ta cũng áp dụng cách kết hợp nhiều phương thức + thực hiện mã hóa lặp đi lặp lại nhiều lần theo chu trình để tăng độ an toàn 3) Thay vì mã hóa từng bit (stream ciphers), người ta có thể kết hợp nhiều bit thành một khối để tiến hành mã hóa trên từng khối như một đơn vị mã hóa (gọi là block cipher). Vd: DES, AES, 3-DES…Mã hóa khối trở nên hữu ích vì nó cho phép sử dụng một cách thống nhất các phương pháp từ lý thuyết mã hóa, toán học và khoa học máy tính để nghiên cứu về các giới hạn của mã hóa khối. Các giới hạn đó thường ở dạng bất đẳng thức liên hệ các tham số của mã, chẳng hạn như tỉ lệ và khả năng phát hiện và sửa lỗi. 5. Nguyên lý thực hiện sơ bộ Với phương pháp RSA, một số trường hợp sau gọi là yếu :  Ký tự sau khi mã vẫn là ký tự gốc tức là thông tin không bị che giấu  Ký tự gốc p có giá trị nhỏ, số mũ để mã e cũng nhỏ nên sau khi mã hóa giá trị c vẫn nhỏ hơn n, do đó dễ dàng tìm ra ký tự p ban đầu bằng cách khai căn bậc e của c.  RSA là phương pháp mã hóa xác định (không có thành phần ngẫu nhiên) nên kẻ tấn công có thể thực hiện tấn công lựa chọn bảng rõ bằng hình thức tra bảng.  Để tránh các tính trạng này, trước khi mã hóa bằng RSA, ta phải thực hiện việc chuyển đổi ngẫu nhiên hóa bản rõ (M -> m) sao cho không còn giá trị nào của M tạo ra văn bản không an toàn. Một số tiêu chuẩn như : PKCS, OAEP… 6. Nguyên lý đảo ngược 1) Trong mã hóa đối xứng hay theo suy nghĩ thông thường, người ta cần phải dùng chính khóa đã mã để giải mã và thực hiện quy trình ngược lại mới có thể khôi phục được văn bản gốc. Tuy nhiên, với mã hóa bất đối xứng (mà cụ thể là phương pháp RSA), 18 suy nghĩ này đã bị đảo ngược hoàn toàn: người ta mã bằng khóa này (public key) nhưng lại giải mã bằng khóa khác (private key) trong cùng cặp ương ứng, đồng thời thay vì đi ngược quy trình, ta lại tiếp tục “mã hóa” văn bản bằng khóa giải mã để khôi phục văn bản ban đầu. Cụ thể như sau: E(x) = xb = y thì D(y) = ya = x [ b là public key và a là private key trong cặp tương ứng, x là ký tự trong văn bản gốc, y là ký tự trong văn bản đã mã, E(x) là hàm mã, D(y) là hàm giải mã] 2) Cặp khóa trong mã hóa bất đối xứng ban đầu chỉ dùng trong mã hóa với mục đích là làm cho việc mã hóa trở nên thuận tiện hơn, không cần phải trao đổi khóa bí mật. Khóa công cộng dùng để mã hóa còn khóa bí mật thì dùng để giải mã. Tuy nhiên, một ý tưởng sáng tạo đã hình thành từ sự đảo ngược tư duy đã mang lại một hướng ứng dụng mới vô cùng hữu ích của mã hóa bất đối xứng, đó là chứng thực chữ ký điện tử. Về cơ bản, người ta sẽ sử dụng khóa bí mật (đại diện cho chủ sở hữu) để mã hóa (gọi là ký) trên văn bản, và dùng khóa công khai để giải mã và so sánh với văn bản gốc đính kèm (hay gọi là chứng thực chữ ký). Nếu hai văn bản giống nhau tức là người đã ký thực sự là chủ của tài liệu. (Trên thực tế, người ta còn dùng thêm hàm băm mật mã trong quá trình ký lên văn bản nhằm xác thực chữ ký có phù hợp với văn bản hay không) 7. Nguyên lý cầu (tròn) hóa Trong cách mã hóa dùng nhiều bảng chữ cái được Alberti sáng tạo (năm 1465), người ta áp dụng số bước nhảy khác nhau cho từng ký tự phụ thuộc vào vị trí của nó trong chuỗi gốc. Thay vì phải lập bảng cho từng bước dịch tốn nhiều công sức, người ta chỉ cần dùng 2 vòng tròn, vòng tròn ngoài là dãy kí tự theo đúng thứ tự bảng chữ cái, vòng tròn trong là dãy kí tự đã thay đổi theo từ khóa (dãy 0). Khi ta muốn 1 ký tự ở vòng tròn ngoài được mã bằng kí tự tương ứng của vòng tròn trong theo bước dịch k thì xoay vòng tròn trong đi k ô (so với thứ tự của dãy 0). (Hình 1) 19
- Xem thêm -