Tìm hiểu về TRIZ

Trong bài thu hoạc h đề cập đến chi tiết c ủa vấn đề cải tiến tốc độ quét virus. Có thể th ấy nhờ áp dụng c ác phƣơng pháp sáng t ạo TRIZ một các h đ úng đ ắn mà c ác sáng chế đã và đ ang đƣợc sử dụng mang l ại hiệu quả cao. Sự phát triển không dừng l ại ở đó mà trong tƣơng lai, có thể còn có sự ra đời c ủa nhiều sáng chế khác hiệu quả hơn nhờ sử dụng các phƣơng pháp sáng tạo TRIZ. Ví dụ nhƣ, do phƣơng pháp quét d ấu hiệu phụ thuộc vào nhận dạng mẫu, nếu có một phƣơng pháp nh ận dạng mẫu đƣợc cải tiến và tốt hơn, có thể đƣợc sử dụng cho m ục đích này để tăng tốc độ quá trình quét virus.

pdf53 trang | Chia sẻ: lvcdongnoi | Lượt xem: 2496 | Lượt tải: 1download
Bạn đang xem trước 20 trang tài liệu Tìm hiểu về TRIZ, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
ền đồng bộ(ATM). 22. Nguyên lý chuyển hại thành thắng a. Nội dung - 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. 20 b. Ví dụ - Phần mềm: Đảo vai trò của quá trình có hại và chuyển hƣớng nó trở lại. - Đánh bại tấn công từ chối dịch vụ (DDoS). Một cuộc tấn công DDoS bão hòa một mạng. Nó chỉ đơn giản là gây quá tải cho máy chủ mục tiêu với một khối lƣợng lớn của lƣu lƣợng truy cập có thể ngăn chặn ngƣời dùng bình thƣờng truy cập các máy chủ. Ngƣợc lại với các loại khác của các cuộc tấn công DoS hoạt động trên cơ sở cá nhân, các cuộc tấn công phân phối dựa vào việc tuyển dụng một đội máy tính "zombie" một cách vô ý thức tham gia lực lƣợng tràn ngập các máy chủ nạn nhân. Những thiệt hại quan trọng là vì bản chất phân phối của cuộc tấn công. Kẻ tấn công có thể khai thác các kênh không an toàn và dễ dàng truy cập Internet để tổng hợp một khối lƣợng lƣu lƣợng truy cập khổng lồ không xâm nhập nhƣng gây ùn tắc hiệu quả các kênh an toàn. Vì vậy, áp dụng TRIZ, chúng ta có thể chuyển đổi hại (quá tải của máy tính) thành một lợi ích (giảm hiệu quả các của zombie) bằng cách tạo ra quá trình thắt nút cổ chai trên các máy tính zombie, hạn chế các khả năng tấn công; điều này có thể đƣợc thực hiện bằng cách yêu cầu các máy tính tấn công giải quyết chính xác một trò chơi nhỏ trƣớc khi thiết lập lại kết nối. Giải quyết các câu đố tiêu thụ vài sức mạnh tính toán, hạn chế những kẻ tấn công trong số lƣợng yêu cầu kết nối nó có thể làm cùng một lúc. 23. Nguyên lý quan hệ phản hồi a. Nội dung - Thiết lập quan hệ phản hồi - Nếu đã có quan hệ phản hồi, hãy thay đổi nó. b. Ví dụ - Phần mềm: Giới thiệu một biến thông tin phản hồi trong một vòng lặp khép kín để cải thiện các vòng lặp tuần tự dựa trên vòng loại. 21 - Đánh giá dựa trên thông tin phản hồi trong một hệ thống chuyển giao không đồng bộ (ATM). 24. Nguyên lý sử dụng trung gian a. Nội dung - Sử dụng đối tƣợng trung gian, chuyển tiếp. . b. Ví dụ - Phần mềm: Sử dụng một trung gian để cung cấp một view (s) dữ liệu cho một quá trình trong bối cảnh không gian ứng dụng xử lý. - Sử dụng trung gian kết hợp với eXtensible Markup Language (XML) để tăng cƣờng các dữ liệu bán cấu trúc. Trung gian có thể là một phần quan trọng của XML. Cùng với một Document Type Definition (DTD), trung gian có thể hỗ trợ một quá trình khác, cho phép nói với một giao diện ngƣời sử dụng trong việc xây dựng truy vấn và xử lý truy vấn hiệu quả hơn. Sau đây là một hình ảnh của ví dụ này. 22 25. Nguyên lý tự phục vụ a. Nội dung - Đố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ƣ. b. Ví dụ - Cập nhật phần mềm Symantec, ứng dụng này định kỳ kiểm tra các bản cập nhật ứng dụng của nó, nếu có những thành phần mới cần phải đƣợc cập nhật, một đồ thị phụ thuộc đƣợc thực hiện và thực hiện đo đó dịch vụ đƣợc thực hiện. 26. Nguyên lý sao chép(copy) a. Nội dung - 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ỡ, 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. b. Ví dụ - Phần mềm: Thay vì tạo ra một đối tƣợng mới và mất tài nguyên không cần thiết thì thực hiện một bản sao. - Một bản sao nông xây dựng một đối tƣợng mới và sau đó (đến mức có thể) chèn tham chiếu vào nó để các đối tƣợng đƣợc tìm thấy trong bản gốc. 23 27. Nguyên lý rẻ thay cho đắt a. Nội dung - 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ọ b. Ví dụ - Thay vì phát triển một ứng dụng đầy đủ của một mẫu thử nghiệm gây ra chi phí quá đắt tiền, sử dụng mẫu Throwaway. Mẫu Throwaway: Đƣợc xây dựng càng nhanh càng tốt, không có kỹ thuật thích hợp, thực hiện yêu cầu duy nhất chƣa đƣợc hiểu rõ , đƣợc sử dụng để tìm hiểu các yêu cầu đƣợc cho là có thật và cái nào không phải, đƣợc vứt bỏ sau khi các thông tin mong muốn đƣợc học. 28. Nguyên lý thay thế sơ đồ cơ học a. Nội dung - 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ừ. b. Ví dụ - Đây là một ví dụ đơn giản, nhận dạng giọng nói làm giảm bớt các tác động cơ học đánh máy và lỗi đánh máy. 24 29. Nguyên lý sử dụng các kết cấu thuỷ và khí a. Nội dung - 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 bao mềm dẻo và mềm mỏng a. Nội dung - 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. b. Ví dụ - Phần mềm: Cách ly các đối tƣợng từ môi trƣờng bên ngoài bằng cách sử dụng các đối tƣợng bao bọc. - Một wrapper hoặc bộ chuyển đổi đối tƣợng cô lập và đối tƣợng từ môi trƣờng bên ngoài của nó bằng cách duy trì một giao diện cố định giữa các đối tƣợng bên trong và đối tƣợng bên ngoài (đối tƣợng wrapper). 31. Sử dụng vật liệu nhiều lỗ c. Nội dung - 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 đó. 25 32. Nguyên lý đổi màu a. Nội dung - 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 b. Ví dụ - Một chức năng tô màu trong một bức ảnh hay chƣơng trình vẽ. 33. Nguyên lý đồng nhất a. Nội dung - 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. b. Ví dụ - Phần mềm: Tạo các đối tƣợng thuần túy của một loại nhất định đảm bảo tính chất giống nhau. - Các đối tƣợng dữ liệu nhƣ mảng. Mỗi phần tử mảng phải có cùng kiểu cho phép ghi và đọc. 34. Nguyên lý loại bỏ và tái sinh từng phần a. Nội dung - 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. 26 b. Ví dụ - Phần mềm: Loại bỏ bộ nhớ không sử dụng của một ứng dụng. - Quá trình xử lý thu gom rác trong ngôn ngữ lập trình Java, định kỳ "dọn dẹp" bộ nhớ bằng cách loại bỏ các đối tƣợng hết phạm vi sống - Cho phép cơ sở dữ liệu phục hội trạng thái giao dịch trƣớc đó 35. Đổi các thông số lý hoá của đối tượng a. Nội dung - 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. . b. Ví dụ - Một ứng dụng phần mềm có thể đƣợc chuyển đổi để cung cấp dịch vụ khác nhau dựa trên thay đổi các thuộc tính tự động. Sự linh hoạt này cho phép các đối tƣợng đa vai trò trong một ứng dụng. 36. Sử dụng chuyển pha a. Nội dung - 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 nở nhiệt a. Nội dung - 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. 27 38. Sử dụng các chất oxi hoá a. Nội dung - Thay không khí thƣờng bằng không khí giàu ôxy. - Thay không khí giàu ôxy bằng chính ôxy. - Dùng các bức xạ ion hoá tác động lên không khí hoặc ôxy. - Thay ôxy giàu ôzôn (hoặc ôxy bị ion hoá) bằng chính ôzôn. 39. Sử dụng môi trường trơ a. Nội dung - 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 vật liệu tổng hợp a. Nội dung - 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. b. Ví dụ - Phần mềm: Thay đổi từ trừu tƣợng hóa phần mềm thống nhất đến tổng hợp. - Ví dụ: các mẫu thiết kế phần mềm là khái niệm trừu tƣợng cốt lõi đằng sau các giải pháp vấn đề lặp lại thành công trong thiết kế phần mềm. 28 III. Áp dụng 40 nguyên lý sáng tạo vào cải tiến tốc độ quét virus 1. Giới thiệu về virus máy tính Virus máy tính có thể có nhiều dạng và ảnh hƣởng đến hệ thống máy tính theo nhiều cách khác nhau. Một virus “boot sector” gây hại đến boot sector và làm cho máy tính không khởi động đƣợc. Một virus tập tin (file) gây hại đến các tập tin thực thi. Một virus macro lây lan qua các macro của Word và gây nhiều tác hại khác nhau đối với một máy tính. Có nhiều thiệt hại gây ra bởi marcro virus nhƣ "virus Melissa", virus "Word Prank Macro" và virus "Concept" v.v.. Tình hình về Trojan cũng không tốt hơn. Nó vẫn còn lén lút và gửi các thông tin bí mật cho các hệ thống khác. Các loại virus khác nhau gây ra các thiệt hại hay rối loạn khác nhau trong một hệ thống máy tính. Một số virus thay đổi hoặc phá hủy dữ liệu trên đĩa, các ký tự bị xáo trộn trên màn hình hiển thị video, hiển thị một số thông điệp gây hiểu nhầm cho ngƣời dùng, một số virus tiêu thụ tài nguyên máy tính /tài nguyên mạng do đó làm cho máy tính/mạng chậm. a. Các loại virus khác nhau Các loại virus khác nhau có khả năng và hạn chế khác nhau. Virus boot sector lây nhiễm khu vực khởi động chủ của máy tính và không lây nhiễm các tập tin dữ liệu trong khi đó virus macro lây nhiễm tài liệu Word và không lây nhiễm khu vực khởi động. Một số virus hoạt động ngay lập tức. Một số virus kiên nhẫn chờ đợi nhƣ các chƣơng trình lành tính cho đến khi các sự kiện của nó đƣợc kích hoạt để trở thành hoạt động. Ví dụ, virus “Friday 13"chờ đợi ngày thứ sáu, rơi vào ngày 13 của một tháng để hoạt động. Một trong những đặc điểm cơ bản của một virus là nó lây lan bằng cách tái tạo chính nó. Khi virus lây nhiễm một chƣơng trình, nhìn chung nó gắn mã của nó vào chƣơng trình đó. Virus sẽ đƣợc kích hoạt khi chƣơng trình bị nhiễm đƣợc tải vào bộ nhớ. Virus có thể truyền từ máy tính này sang máy tính khác theo các cách khác nhau ví dụ nhƣ thông qua các tập tin bị nhiễm hoặc đĩa bị nhiễm. 29 b. Các phương pháp phát hiện virus Chƣơng trình diệt virus nằm giữa ứng dụng của ngƣời sử dụng và hệ thống tập tin của máy tính, kiểm tra tập tin trƣớc khi mở và lƣu trữ, để đảm bảo rằng không có tập tin bị nhiễm nào đƣợc ghi vào hệ thống tập tin. Chƣơng trình diệt virus nhƣ là một ngƣời bảo vệ cho các tập tin đầu vào Có một vài phƣơng pháp phát hiện virus khác nhau. Bởi vì đặc điểm của các virus khác nhau nên phƣơng pháp phát hiện chúng cũng khác nhau. Tất cả các phƣơng pháp không làm việc cho tất cả các loại virus. Một số phƣơng pháp quan trọng chống virus đƣợc các chƣơng trình diệt virus sử dụng nhƣ sau:  Signature scanning (Quét dấu hiệu) – quét mỗi tập tin để trích xuất các byte có dạng virus.  Heuristic scanning (Quét heuristic) – quét mỗi tập tin có mã giống virus.  Activity smonitoring (Giám sát hoạt động) - kiểm tra đối với hành vi bất thường của một chương trình.  Integrity checking (Kiểm tra tính toàn vẹn) - kiểm tra một tập tin với một bản sao lưu dự phòng cho bất kỳ thay đổi nào. Hầu hết virus đƣợc phát hiện bằng cách quét dấu hiệu. Một dấu hiệu là một chuỗi các byte đƣợc tìm thấy trong mã chƣơng trình virus, nhƣng không thể tìm thấy ở nơi Tập tin đầu vào C h ƣ ơ n g t rì n h d iệ t v ir u s Các tập tin tin cậy Cần kiểm tra Xoá 30 khác. Việc quét dấu hiệu tìm kiếm các tập tin có các dấu hiệu virus đó. Nếu một dấu hiệu đƣợc tìm thấy thì tập tin đƣợc coi là bị nhiễm, ngƣợc lại thì tập tin đó an toàn. Quét heuristic không tìm kiếm một dấu hiệu chính xác mà tìm kiếm một đoạn mã giống virus. Điều này có thể đƣợc áp dụng cho bất kỳ chƣơng trình mục tiêu nào (tập tin thực thi, bản ghi khởi động, các tập tin tài liệu, vv) thậm chí ngay cả với virus mới và chƣa biết. Một chƣơng trình phát hiện heuristic có thể mất nhiều thời gian hơn quét dấu hiệu đơn giản, vì nó phải tìm kiếm số lƣợng lớn các cách khác nhau để phát hiện virus và đảm bảo tin cậy. Một phƣơng pháp tự kiểm tra hoặc kiểm tra tính toàn vẹn nắm giữ một "checksum" hoặc "snapshot" hoặc "fingerint" của tất cả các chƣơng trình (thực thi, bản ghi khởi động ...) tại giai đoạn chƣa bị nhiễm của chúng ở một vị trí an toàn. Trong quá trình kiểm tra tính toàn vẹn, nó thực hiện tổng kiểm tra trên các tập tin bị nhiễm và so sánh kết quả với bản checksum gốc đƣợc tính toán trƣớc đó. Nếu sự khác biệt đƣợc tìm thấy giữa hai bản checksum thì chƣơng trình mục tiêu đƣợc coi là bị nhiễm virus, nếu không chƣơng trình mục tiêu đƣợc coi là không bị nhiễm. 2. Các vấn đề liên quan đến tốc độ quét Một trong những hạn chế chính của quá trình quét virus là thời gian cần thiết cho chức năng quét. Trên một máy tính đƣợc nạp đầy đủ, nó có thể mất vài giờ. Vì lý do này nhiều ngƣời sử dụng không thích quét virus máy tính của họ, trừ khi có yêu cầu. Hãy xem xét các yếu tố làm tăng thời gian quét. a. Số virus nhiều thì mất nhiều thời gian hơn để quét Chƣơng trình diệt virus quét các tập tin máy tính bằng cách so sánh từng tập tin một với danh sách các dấu hiệu của virus. Trong trƣờng hợp này, vì số lƣợng virus tăng, số lƣợng kiểm tra tăng lên. Với hàng ngàn các loại virus có thể có, quá trình quét rõ ràng mất nhiều thời gian và làm giảm hiệu suất của máy tính. 31 Mâu thuẫn Nếu một chƣơng trình quét sử dụng ít thuật toán thì một số loại virus có khả năng sẽ không bị phát hiện. Mặt khác, nếu nó sử dụng tất cả các thuật toán có thể thì quá trình quét trở nên cực kỳ chậm. Chúng ta muốn sử dụng các thuật toán để phát hiện tất cả các loại virus, nhƣng đồng thời cũng muốn sử dụng các thuật toán để kết thúc quá trình quét một cách nhanh nhất. Kết quả mong muốn: - Số virus không nên tăng - Chỉ dùng một kiểm tra đơn ( hoặc tập các kiểm tra) để phát hiện tất cả các loại virus. Giải pháp có thể sử dụng: ⇛ Quét từng nhóm virus theo lô và không quét tất cả các virus tại cùng thời điểm. (Nguyên lý 1: Nguyên lý phân nhỏ). ⇛ Chỉ quét các loại virus có liên quan đến các loại tập tin cụ thể. ⇛ Ƣu tiên quét virus có hại nhiều hơn trƣớc thay vì quét tất cả các các virus trong một lần quét. b. Việc mở các tập tin trở nên chậm chạp do quá trình quét. Nhìn chung, khi tập tin có yêu cầu đƣợc mở thì các chƣơng trình diệt virus đều kiểm tra tập tin đó trƣớc. Nó cho phép tập tin đƣợc mở nếu tập tin không bị nhiễm virus. Tƣơng tự, khi các tập đã đƣợc mở có yêu cầu đóng, chƣơng trình này lại kiểm tra chúng một lần nữa để đảm bảo rằng các tập tin không bị nhiễm khi nó đƣợc mở. Giải pháp có thể sử dụng: ⇛ Nếu một tập tin đƣợc quét trƣớc khi mở thì nó cần nhiều thời gian hơn để mở. Để giải quyết vấn đề này, tập tin có thể đƣợc quét và giữ lại rất lâu trƣớc khi có yêu cầu mở nó. (Nguyên lý 10 – Nguyên lý thực hiện sơ bộ ) ⇛ Bằng sáng chế 6928555 (minh họa dƣới đ ây) trình bày một phƣơng pháp không cần quét tất cả các tập tin đã đƣợc mở trƣớc khi đóng. Phƣơng pháp này sẽ kiểm 32 tra "dirty cache buffer – vùng đệm lƣu trữ nhƣng không chính thức đƣợc ghi lại" để xem các tập tin sau khi mở có thực sự đƣợc chỉnh sửa hay không và bỏ qua việc quét tập tin đó nếu thấy chƣa chỉnh sửa, hoặc đƣợc chỉnh sửa ở những vùng khó bị tấn công (Nguyên lý-21: Nguyên lý vượt nhanh). c. Càng nhiều tập tin thì cần nhiều thời gian để quét Số lƣợng và kích thƣớc của các tập tin trong máy tính cũng ảnh hƣởng trực tiếp đến việc quét virus. Nếu số lƣợng và kích thƣớc của các tập tin lớn thì việc quét càng mất nhiều thời gian bởi các yêu cầu xử lý và đọc ghi đĩa. Mâu thuẫn Nếu không quét tất cả các tập tin, chúng ta sẽ không chắc chắn về tình trạng virus của máy tính. Mặt khác, nếu quét tất cả các tập tin sẽ mất thời gian dài. Nhƣng chúng ta lại không muốn mất nhiều thời gian hơn để quét. Một giải pháp là giảm số lƣợng và kích thƣớc của các tập tin. Nhƣng với sự phụ thuộc vào máy tính ngày càng tăng và chi phí cho lƣu trữ dữ liệu giảm, chúng ta không muốn bảo vệ máy tính của mình bằng cách giảm số lƣợng và kích thƣớc của tập tin. Cần có một chƣơng trình quét nhanh hơn mà không ảnh hƣởng đến số lƣợng và kích thƣớc của các tập tin. Kết quả mong muốn: - Hệ thống máy tính không cho phép bất kỳ virus nào thâm nhập - Các tập tin phải có khả năng tự bảo vệ mình trƣớc sự tấn công từ virus. Giải pháp: ⇛Ƣu tiên quét bộ nhớ chính và các tập tin dễ bị tấn công trƣớc, các tập tin khác thì quét sau. ⇛Chỉ áp dụng các phƣơng pháp quét sẽ phát hiện virus liên quan đến các kiểu tập tin cụ thể. Ví dụ, với một tập tin có định dạng EXE thì không dùng các thuật toán quét virus macro đƣợc nhúng trong Word và ngƣợc lại (US Patent 6898712). d. Độ tin cậy của việc quét virus đòi hỏi nhiều kiểu kiểm tra hơn Để một chƣơng trình quét virus đƣợc xem là đáng tin cậy thì nó phải thực hiện nhiều thuật toán kiểm tra khác nhau để xác nhận có sự tồn tại của một virus hay 33 không. Một chƣơng trình quét virus với ít thuật toán kiểm tra có thể không tin cậy, có thể nhận diện sai một chƣơng trình chƣa bị nhiễm virus hoặc bỏ qua các tập tin đã bị nhiễm xem nó nhƣ là chƣơng trình lành tính. Mâu thuẫn Nếu chƣơng trình diệt virus không áp dụng đủ tất cả các thuật toán kiểm tra có thể dẫn đến các kết luận sai. Mặt khác nếu nó áp dụng tất cả các phƣơng pháp kiểm tra để xác nhận một kết quả quét thì sẽ mất nhiều thời gian để quét. Chúng ta muốn có một kết quả đúng khi tiến hành quét, nhƣng đồng thời cũng không muốn mất nhiều thời gian cho việc quét. Kết quả mong muốn - Các chƣơng trình diệt virus không nên cho phép bất kỳ virus nào thâm nhập vào hệ thống. - Mỗi một phƣơng pháp kiểm tra phải chứng tỏ khả năng phát hiện bất kỳ loại virus nào Giải pháp có thể ⇛ Bằng sáng chế 5684875 (đƣợc Hans Ellenberger đề xuất vào tháng 11 năm 1997) đề nghị tránh sử dụng tất cả các thuật toán phát hiện tại cùng thời điểm, điều này có thể dẫn đến mất nhiều thời gian để quét. Nó gợi ý để lựa chọn một hoặc một vài thuật toán để sử dụng mỗi khi tiến hành quét, các thuật toán có thể đƣợc lựa chọn ngẫu nhiên hoặc có thể đƣợc chọn theo một số tiêu chí nhất định. Ngay cả khi một virus không bị phát hiện bởi một vài thuật toán đƣợc chọn, thì cơ hội sống sót của nó cũng rất thấp vì nó có thể đƣợc phát hiện một thuật toán khác. e. Quét các tập tin nén cần nhiều thời gian hơn Trong khi quét các dấu hiệu của virus, các tập nén cần phải đƣợc giải nén trƣớc khi tìm kiếm các chuỗi dấu hiệu của virus. Phƣơng pháp này làm cho thời gian quét tăng. Tình hình còn trở nên tồi tệ hơn khi một virus thông minh tạo ra phiên bản nén cao hơn của các tập tin lớn một cách cố ý vì biết rằng phần mềm diệt virus sẽ phải giải nén tập tin để quét virus bên trong nó. Trong những trƣờng hợp nhƣ vậy chƣơng trình 34 diệt virus yêu cầu sử dụng nhiều bộ nhớ vật lý/ bộ nhớ ảo và do đó ảnh hƣởng đáng kể đến hiệu suất của máy tính. Kết quả mong muốn - Các tập tin đƣợc nén có thể tự bảo vệ mình khỏi virus. - Chƣơng trình quét có thể phát hiện virus trong các tập tin nén ngay cả khi không giải nén chúng. Giải pháp có thể: ⇛ Sử dụng các phƣơng pháp nhanh hơn để giải nén các tập tin. ⇛ Khi một chƣơng trình diệt virus mất một thời gian dài bất thƣờng để giải nén một tập tin trong quá trình quét, một số hệ thống quy định một ngƣỡng thời gian(time - out) trong quá trình quét (Nguyên lý-21: Nguyên lý vượt nhanh). Điều này giúp chƣơng trình diệt virus tránh khỏi vòng lặp có thể đƣợc tạo ra bởi virus. f. Quét lập lại nhiều lần lãng phí thời gian Nhiều tập tin đƣợc quét lặp đi lặp lại trong mỗi một lần quét mặc dù chúng chƣa bao giờ đƣợc sử dụng hoặc bị thay đổi bởi bất cứ ai. Do đó, mặc dù chỉ có ít hơn 1% các tập tin đã đƣợc sử dụng hoặc bị thay đổi, một phiên quét sẽ phải quét một số lƣợng lớn các tập tin trong một thời gian dài. Kết quả mong muốn - Chỉ các tập tin bị nhiễm virus đƣợc quét, còn các tập tin khác thì không. - Mỗi lần một tập tin đƣợc quét và không có virus thì không nên quét trong các lần tiếp theo. Giải pháp có thể ⇛Lần quét kế tiếp chỉ đƣợc thực hiện khi một tập tin bị sửa đổi chứ không phải chỉ vì nó đƣợc mở hoặc đóng bởi một chƣơng trình. ⇛US Patent 5473769 ("Phƣơng pháp và thiết bị để tăng tốc độ phát hiện virus máy tính", tác giả Paul D. Cozza) đƣa ra một phƣơng pháp tránh việc quét lặp đi lặp lại cùng một đối tƣợng. Phƣơng pháp này lƣu giữ một tập hợp các thông số nhƣ trạng thái AV (chẳng hạn nhƣ chi tiết của lần quét cuối cùng) trong một cơ sở dữ liệu. Đối 35 tƣợng chỉ đƣợc quét nếu đối tƣợng đó mới hoặc nếu đối tƣợng bị thay đổi kể từ lần quét sau cùng. Mặt khác đối tƣợng chỉ đƣợc bỏ qua bởi máy quét nếu đối tƣợng không có thay đổi kể từ lần quét cuối. ⇛ Các kết quả lần quét trƣớc đó có thể đƣợc lƣu trữ trong bộ đệm hoặc cơ sở dữ liệu để tham chiếu trong lần quét tiếp theo. 3. Sáng chế cải thiện tốc độ quét Có rất nhiều phát minh đề xuất các kỹ thuật khác nhau nhằm cải thiện tốc độ của một quá trình quét virus. Sau đây là một số phát minh mới từ bằng cơ sở dữ liệu sáng chế từ nƣớc Mỹ. a. Quét virus nhanh (bằng sáng chế số 6763466) Vấn đề Để giảm bớt thời gian và tài nguyên cần thiết cho việc quét virus, một số kỹ thuật lƣu lại thông tin chi tiết của lần quét gần nhất và không quét các lại các tập tin trừ khi chúng đƣợc sửa đổi. Nhƣng việc lƣu và truy cập vào trạng thái AV có thể sinh ra một số vấn đề. Mâu thuẫn Nếu trạng thái AV đƣợc lƣu trữ trong bộ nhớ đệm(cache) thì tốc độ của việc truy cập dữ liệu này là rất nhanh. Tuy nhiên, dữ liệu lƣu trong bộ đệm chỉ giới hạn trong một khoảng thời gian. Sau khoảng thời gian đó thì dữ liệu sẽ bị xóa để nhƣờng tài nguyên cho các dữ liệu khác. Mặt khác, nếu trạng thái của AV đƣợc lƣu trữ trong một tập tin dữ liệu riêng biệt thì dữ liệu có thể đƣợc lƣu trữ vĩnh viễn, nhƣng đổi lại thời gian truy cập sẽ chậm hơn. Chúng ta muốn lƣu trữ trạng thái AV vĩnh viễn và việc truy cập vào dữ liệu cũng không mất nhiều thời gian. Sáng chế- Quét virus nhanh (Patent 6763466) Bằng sáng chế 6763466 (đƣợc sáng chế bởi Glover, Networks Associates Technology uỷ nhiệm, tháng 7 năm 2004) giới thiệu một phƣơng pháp quét virus nhanh. Theo đó, thông tin trạng thái của phần mềm diệt virus đƣợc lƣu trữ trong một cấu trúc dữ liệu liên quan, chẳng hạn nhƣ, các tập tin chƣa đƣợc sử dụng của cùng cơ sở dữ liệu thƣ mục nơi mà hệ thống tập tin duy trì thông tin về mỗi tập tin (Nguyên lý 22: Nguyên lý chuyển bại thành thắng). 36 Sáng chế thử tìm những tài nguyên có sẵn bên trong hệ thống và sử dụng chúng. Nó lƣu trữ các thông tin trạng thái AV trong cơ sở dữ liệu dạng thƣ mục đã đƣợc tạo ra và duy trì bởi các tập tin của hệ thống máy tính (TRIZ: Các tài nguyên hệ thống). Sáng chế cũng đề nghị tạo thêm tập tin fork trong cơ sở dữ liệu thƣ mục để lƣu giữ các thông tin AV (Nguyên lý-31: Sử dụng vật liệu nhiều lỗ). Phƣơng pháp lƣu trữ dữ liệu trạng thái AV là cực kỳ nhanh nhƣ dữ liệu AV đối với một tập tin đƣợc lấy ra từ hệ thống tập tin tại thời điểm khi tập tin đang đƣợc truy cập bởi một chƣơng trình ứng dụng. Phƣơng pháp này cũng khuyên rằng nên mã hóa các thông tin trạng thái AV trƣớc khi lƣu trữ nó trong cấu trúc dữ liệu và giải mã thông tin trạng thái AV khi nó đạt đƣợc cấu trúc dữ liệu an toàn hơn. b. Kiểm tra trật từ điều khiển (bằng sáng chế 6898712) Vấn đề 37 Với việc các virus mới hàng ngày đƣợc tạo ra, số lƣợng các kiểm tra cần thiết cũng tăng cho phù hợp. Nhƣ vậy, quá trình quét virus đòi hỏi ngày càng tăng dung lƣợng bộ nhớ hệ thống và thời gian xử lý để thực hiện các bài kiểm tra. Cần thiết phải giảm tải xử lý đối với chƣơng trình diệt virus. Mâu thuẫn Chúng ta muốn quét riêng từng loại virus để chắc chắn không có virus nào thoát khỏi mà không bị phát hiện. Tuy nhiên khi đó sẽ cần nhiều thời gian và tài nguyên của hệ thống. Chúng ta muốn bảo vệ máy tính trƣớc tất cả các virus, nhƣng đồng thời cũng không muốn mất nhiều thời gian hay các tài nguyên hệ thống. Sáng chế - Kiểm tra trật tự điều khiển (bằng sáng chế 6898712) Bằng sáng chế 6898712 (đƣợc phát minh bởi Vignoles, Networks Associates Technology uỷ nhiệm, tháng 5 năm 2005) cung cấp một phƣơng pháp quét virus nhanh hơn bằng cách chỉ áp dụng các bài kiểm tra đƣợc lựa chọn. Nhƣ đã biết, virus máy tính có rất nhiều loại khác nhau. Một số virus chỉ tấn công các tập tin thực thi (exe và com), trong khi các virus khác nhƣ virus macro thì chỉ lây nhiễm các tập tin tài liệu nhƣ MSWord. Nhƣ vậy nếu áp dụng các thuật toán kiểm tra cho một tập tin exe vào một tập bị nhiễm virus dạng macro là vô nghĩa. Theo lý thuyết trên, sáng chế cung cấp một tập hợp các cách điều khiển kiểm tra diệt virus, và sự phân loại liên quan đến việc ƣu tiên sử dụng phƣơng pháp nào đối với các tập tin máy tính đích. Máy kiểm tra chỉ áp dụng các bài kiểm tra cụ thể dựa trên sự phân loại cho trƣớc.(Nguyên lý-2: Nguyên lý tách riêng, Nguyên lý- 21:Nguyên lý vượt nhanh) 38 Trình điều khiển các bài kiểm tra của chƣơng trình diệt virus đƣợc phân loại theo cách biểu diễn các mối đe dọa cao nhất và/hoặc áp dụng các cách nhanh trƣớc, thay vì áp dụng toàn bộ các bài kiểm tra trong thƣ viện . Thứ tự ƣu tiên tƣơng đối để áp dụng cho điều khiển diệt virus có thể nhƣ sau: một thử nghiệm cho một loại virus mới phát hành, một loại virus lây nhiễm rất cao, một virus gây tổn hại cao, một loại virus phổ biến, một bài kiểm tra nhanh chóng, một virus đe doạ mức trung bình, một loại virus hiếm và một bài kiểm tra thực hiện chậm chạp. Tuy nhiên, sự sắp xếp ƣu tiên có thể đƣợc tự động thay đổi tùy thuộc vào loại tập tin và các yếu tố khác (Nguyên lý 15: Nguyên lý năng động hóa). Các kiểu tập tin đƣợc quét Nhúng HTML MARCO GENERAL TROJAN/ WORM GRUNT Các tập tin thực thi Tài liệu File đính kèm Email Nội dung Email Các kiểu đ iều khiển 39 Thứ tự ƣu tiên khi quét virus Theo sáng chế thì một hoạt động quét có thể đƣợc chấm dứt sớm bởi ngƣời dùng trƣớc khi hoàn thành. Trong hoàn cảnh này thì điều quan trọng là chỉ có các bài kiểm tra ƣu tiên cao nhất sẽ đƣợc áp dụng nhƣ vậy nguy cơ liên quan với việc chấm dứt sớm của quá trình quét virus đƣợc giảm đi(Nguyên lý-16: Nguyên lý tác động bộ phận hoặc dư thừa). Các sáng chế cũng mở rộng thêm bằng sáng chế 6938161 do cùng một tác giả và ngƣời uỷ nhiệm (phát minh bởi Vignoles, Networks Associates Technology uỷ nhiệm, tháng 8 năm 2005). Sáng chế phân loại các trình điều khiển nhƣ máy quét email, máy quét tập tin đính kèm email, các tác nhận quét đầu vào, các máy quét yêu cầu, máy quét tƣờng lửa, máy chủ mạng... và đặt chúng theo một thứ tự ƣu tiên khi quét. c. Phương pháp và thiết bị để giảm thiểu quét tập tin bằng chương trình diệt virus (bằng sáng chế số 6928555) Vấn đề Khi số lƣợng của virus máy tính đƣợc quét bằng các chƣơng trình diệt virus tăng lên, thời gian cần thiết cho chức năng quét một tập tin đầu vào cũng tăng tƣơng ứng. Cần thiết phải giảm thời gian máy tính dành cho các chức năng quét nhƣng không ảnh hƣởng đến an toàn của máy. Ƣu tiên cao nhất Ƣu tiên thấp nhất Loại virus mớ i nhất Virus lây nhiễm cao Virus gây hại cao Virus phổ biến Kiểm tra thực h iện nhan Virus mức đe doạ trung bình Kiểm tra thực h iện chậm 40 Sáng chế - Phương pháp và thiết bị để giảm thiểu quét tập tin bằng các chương trình chống vius (bằng sáng chế 6928555) Bằng sáng chế 6928555 (phát minh bởi Drew, Networks Associates Technology uỷ nhiệm, tháng 8 năm 2005) trình bày một phƣơng pháp giảm thời gian quét bằng cách tránh quét các tập tin nếu không đƣợc sửa đổi trong khoảng thời gian sau khi mở và trƣớc khi đóng. Trong phƣơng pháp này, đầu tiên chƣơng trình quét một tập tin khi tập tin đƣợc yêu cầu mở. Nó cho phép các tập tin đƣợc mở ra nếu tập tin đƣợc tìm thấy không bị nhiễm virus. Tƣơng tự nhƣ vậy, khi các tập tin đã mở đƣợc yêu cầu đóng, chƣơng trình diệt virus quét tập tin một lần nữa để đảm bảo rằng tập tin là không bị nhiễm virus khi nó đƣợc mở. Phƣơng pháp sáng chế không quét một tập tin chỉ vì nó đƣợc mở ra để sửa đổi. Sáng chế kiểm tra "dirty cache buffer" của các hệ điều hành để kiểm tra xem tập tin có đƣợc sửa đổi thực sự sau khi đƣợc mở. Nếu tập tin chƣa đƣợc chƣa sửa đổi thì phƣơng pháp cho rằng tập tin sạch và bỏ qua việc quét nó (Nguyên lý-21: Nguyên lý vượt nhanh). Phƣơng pháp này thậm chí còn không quét một tập tin đối với tất cả các sửa đổi. Nó tiếp tục kiểm tra xem liệu phần có thể bị nhiễm virus có đƣợc đƣợc sửa đổi hay không (Nguyên lý – 35: Đổi các thông số hoá lý của đối tượng). Nếu một phần bị nhiễm virus chƣa sửa đổi thì tập tin đƣợc coi là chƣa sửa đổi và bỏ qua bƣớc quét.(Nguyên lý-21: Nguyên lý vượt nhanh). Tuy nhiên, nếu phần có thể nhiễm virus bị sửa đổi thì tập tin đƣợc coi là sửa đổi và đƣợc đƣa ra để quét. Phƣơng pháp này làm giảm thời gian cần thiết để quét vì bỏ qua nhiều tập tin không bị nghi ngờ. Tuy nhiên, nó không thỏa hiệp với tính an toàn nhƣ là khi nó quét tất cả các tập tin nghi ngờ. 41 YES YES Tập tin sạch cho phép ghi Tập tin đƣợc mở để truy cập Quét tập tin Yêu cầu đóng tập tin Lƣu dữ liệu để quản lý tập tin thay đổi Cung cấp tập tin cho ứng dụng của ngƣời dùng NO NO Quét tập tin Cho phép ghi Tập tin thực sự đƣợc viết Tập tin bị sửa theo cách có thể tạo virus Tập tin bị nhiễm virus Từ chối ghi Xong NO YES 42 d. Phương pháp và thiết bị để tăng tốc độ phát hiện virus sử dụng một cơ sở dữ liệu (bằng sáng chế 6952776) Vấn đề Khi số lƣợng và độ phức tạp của virus tăng, và số lƣợng tập tin cũng tăng lên, thời gian cần thiết để quét một hệ thống máy tính chuẩn cũng tăng lên cho phù hợp. Thời gian quét = số lƣợng virus x số các đối tƣợng tập tin. Tuy nhiên, thông thƣờng một hệ thống diệt virus quét lặp đi lặp lại các tập tin giống nhau trong mỗi phiên quét mặc dù tập tin có thể đã không bao giờ đƣợc sử dụng bởi bất cứ ai. Vì vậy cần thiết tránh việc quét lặp đi lặp lại này. Một trong những giải pháp để tránh quét lặp đi lặp lại cùng một đối tƣợng là duy trì một cơ sở dữ liệu thông tin về tình trạng của các đối tƣợng đƣợc quét. Đối tƣợng đƣợc quét chỉ khi đối tƣợng đó mới hoặc nếu đối tƣợng bị thay đổi kể từ lần quét cuối cùng của nó. Đối tƣợng đƣợc bỏ qua không quét nếu đối tƣợng không bị thay đổi kể từ khi quét cuối cùng của nó (US Patent 5473769 - "Phƣơng pháp và Thiết bị tăng tốc độ phát hiện virus máy tính ", bởi Paul D.Cozza). Vấn đề Kỹ thuật nói trên duy trì thông tin trạng thái AV chỉ có hiệu quả nếu tập tin đƣợc quét dựa vào cùng một danh sách virus. Tuy nhiên, kỹ thuật này không có lợi thế nếu danh sách các virus đƣợc cập nhật giữa các lần quét. Ví dụ, khi các công ty sản xuất chƣơng trình diệt virus thêm các dấu hiệu virus vào cơ sở dữ liệu định nghĩa virus của họ một cách thƣờng xuyên, có khả năng là ngƣời sử dụng cũng đã tải về các bản cập nhật cơ sở dữ liệu định nghĩa virus sau lần Lần quét đầu tiên Các lần quét sau Tập tin có thay đổi 43 quét trƣớc. Trong trƣờng hợp này nếu máy quét bỏ qua một tập tin theo trạng thái lần quét cuối cùng thì tập tin giữ lại có thể bị nhiễm virut do một trong những virus đƣợc thêm mới. Do đó, để có đƣợc lợi ích của các định nghĩa virus cập nhật thì các thông tin quét cuối cùng phải đƣợc khởi tạo. Sự mâu thuẫn Nếu máy quét khởi tạo trạng thái quét cuối cùng và quét lại các đối tƣợng dựa vào cơ sở dữ liệu định nghĩa vi rút đƣợc cập nhật thì khi đó việc quét virus mất thời gian dài và không nhận đƣợc bất kỳ lợi ích từ cơ sở dữ liệu trạng thái quét cuối cùng. Mặt khác, nếu nó theo trạng thái quét cuối cùng và bỏ qua các đối tƣợng không quét thì nó không có đƣợc những lợi ích của việc cập nhật cơ sở dữ liệu virus và rời khỏi đối tƣợng có thể đã bị nhiễm virut. Sáng chế - Phương pháp và thiết bị để tăng tốc độ phát hiện virus bằng cách sử dụng một cơ sở dữ liệu (bằng sáng chế 6952776) Bằng sáng chế 6952776 (phát minh bởi Chess, Machines Corporation uỷ nhiệm, tháng 10 năm 2005) trình bày một cơ sở dữ liệu trạng thái quét cải tiến tiết kiệm thời gian trong lần quét tiếp theo thậm chí nếu cơ sở dữ liệu định nghĩa virus đã đƣợc cập nhật giữa các lần quét. Sáng chế lƣu trữ thông tin trạng thái quét đƣợc cải thiện dựa trên việc mỗi đối tƣợng tập tin (Nguyên lý-38: Sử dụng các chất oxy hoá) có chứa thông tin bổ sung, điều này cần thiết để xác định một tập tin đã bị thay đổi hay chƣa kể từ lần quét sau cùng, 44 Thông tin trạng thái đƣợc cải thiện xác định có hay không việc các đối tƣợng xuất hiện thay đổi kể từ điểm cuối cùng trong quá khứ, và trong trƣờng hợp cho biết đối tƣợng không xuất hiện thay đổi, cho dù cơ sở dữ liệu phát hiện virus xuất hiện thay đổi kể từ điểm đã đƣợc nói đến trong quá khứ. Phƣơng pháp quét virus này đòi hỏi ít thời gian hơn so với các kỹ thuật thông thƣờng vì phƣơng pháp này không phải luôn luôn quét lại ngay cả khi định nghĩa virus đã thay đổi (Nguyên lý-21: Nguyên lý vượt nhanh). e. Cung cấp các điểm ngừng trong một hoạt động quét virus (Bằng sáng chế 6968461) Vấn đề Có thể là tác giả viết các virus để tấn công các hệ thống diệt virus theo nhiều cách khác nhau. Ví dụ, một loại virus có thể tạo ra phiên bản nén cao hơn của các tập tin rất lớn biết rằng phần mềm diệt virus phải giải nén tập tin để quét virus bên trong nó. Vì các tập tin đƣợc giải nén là đủ lớn, chƣơng trình diệt virus có thể mất thời gian rất dài để quét hoặc có thể tiêu thụ quá mức bộ nhớ vật lý và bộ nhớ ảo do vậy ảnh hƣởng đến hiệu suất của hệ thống. Thời gian cần thiết để giải nén = fn (kích thƣớc của tập tin thực tế, độ phức tạp của thuật toán nén). Chƣơng trình phát hiện virus Đối tƣợng bản ghi Database Đối tƣợng bản ghi thứ n Các mô tả virus Đĩa Đối tƣợng A.DOC B.VDX C.COM .. Boot record 45 Để khắc phục vấn đề này một số hệ thống diệt virus định thời gian chờ cho một thao tác quét virus nếu vƣợt quá thời gian đƣợc xác định trƣớc. Tuy nhiên, phƣơng pháp này có một nhƣợc điểm là chậm hoặc quá tải hệ thống máy tính có thể kết thúc không thích hợp một thao tác quét virus sử dụng tiếp cận thời gian hết hạn đơn giản. Cần thiết phải có một cách tiếp cận đáng tin cậy hơn để chấm dứt việc quét kéo dài nhƣ vậy. Sự mâu thuẫn Nếu một quá trình quét kéo dài không có thời gian tạm ngƣng thì hệ thống diệt virus có thể có thể sử dụng số lƣợng bộ nhớ ảo hoặc vật lý quá nhiều do đó ảnh hƣởng đến hiệu suất của hệ thống. Tuy nhiên, thời gian tạm ngƣng một phiên quét kéo dài có thể chấm dứt không phù hợp một hoạt động quét bình thƣờng trong máy tính chậm hoặc quá tải do đó ảnh hƣởng đến sự thoả hiệp. Chúng ta muốn chấm dứt một phiên quét kéo dài quá mức, nhƣng không muốn hệ thống trở nên thực sự chậm chạp. Sáng chế (Cung cấp các điểm dừng trong một quá trình quét virus - Patent 6.968.461) Bằng sáng chế 6968461 (phát minh bởi Lucas, Networks Associates Technology uỷ nhiệm, tháng 11 năm 2005) cung cấp một phƣơng pháp kích hoạt điểm dừng trong suốt hoạt động quét mà không ảnh hƣởng đến hệ thống. Sáng chế chấp nhận rằng nếu một số lƣợng lớn dữ liệu đang đƣợc xử lý trong suốt hoạt động quét virus của một tập tin máy tính đơn thì có thể thích hợp để chấm dứt việc quét virus trƣớc khi hoạt động này hoàn thành. Tuy nhiên, nó cung cấp mức độ bổ sung tinh tế bằng cách so sánh kích thƣớc của các tập tin máy tính đƣợc quét. Nếu kích thƣớc của một tập tin lớn, nó không kết thúc sớm vì có thể đòi hỏi hợp pháp một lƣợng lớn dữ liệu đƣợc xử lý trong quá trình quét.(Nguyên lý 16: Nguyên lý tác động bộ phận và dư thừa). Trƣớc hết cách quét này tính toán giá trị đo dựa trên lƣợng dữ liệu xử lý đƣợc thực hiện trong thao tác quét và sau đó kích hoạt một điểm dừng nếu giá trị đo đƣợc nói trên vƣợt quá một giá trị ngƣỡng (Nguyên lý 9: Nguyên lý gây ứng suất sơ bộ). 46 Sáng chế trình bày các phƣơng pháp khác nhau để tính giá trị đo dùng để kích hoạt điểm dừng. Điều này là hữu ích khi một số phƣơng pháp quét có thể tƣơng đối nhanh và đơn giản, trong khi đó, các kiểm tra khác nhƣ một phân tích heuristic để phát hiện một loại virus đa hình có thể đòi hỏi một lƣợng lớn dữ liệu trong xử lý. (Nguyên lý 16: Nguyên lý tác động bộ phận và dư thừa). Một kỹ thuật để có đƣợc giá trị đo bằng cách đo tổng kích thƣớc của dữ liệu đƣợc xử lý trong quá trình quét virus và tính tỷ lệ so với kích thƣớc của tập tin máy tính đang đƣợc quét virus. Nếu tỷ lệ này vƣợt quá một ngƣỡng định trƣớc thì quá trình quét virus có thể ngừng lại. Tỉ lệ = Tổng số dữ liệu xử lý kích thƣớc tập tin đã quét Một kỹ thuật khác để có đƣợc giá trị đo là tổng hợp giá trị độ phức tạp của các bài kiểm tra đƣợc áp dụng cho các tập tin máy tính. Giá trị độ phức tạp đƣợc kết hợp với đa số các bài kiểm tra đƣợc áp dụng trong hoạt động quét virus. Tổng cộng giá trị độ phức tạp đƣợc sử dụng để kích hoạt một chấm dứt sớm khi vƣợt quá mức ngƣỡng của từng cái tƣơng ứng của chúng. Các tập tin không nén Tập tin nén Tiếp tục hay dừng? Time out x lƣợng dữ liệu đƣợc xử lý Time x lƣợng dữ liệu xử lý 47 Vì vậy, sáng chế giám sát kích thƣớc của dữ liệu đƣợc xử lý trong thời gian quét virus hoạt động và xem xét độ phức tạp của phƣơng pháp quét để xác định xem ngừng hoặc tiếp tục quá trình quét kéo dài. Vì không thể đo chính xác kích thƣớc của dữ liệu xử lý cần thiết, sáng chế xem xét các phƣơng pháp khác nhau để đi đến một giá trị đo và so sánh với một giá trị ngƣỡng (Nguyên lý-40: Sử dụng vật liệu tổng hợp, Nguyên lý- 16: Nguyên lý tác động bộ phận và dư thừa). f. Hệ thống, phương pháp và sản phẩm chương trình máy tính cho việc loại bỏ đĩa đọc thời gian trong quá trình quét virus (bằng sáng chế 7036147) Vấn đề Trong một hoạt động quét vi rút điển hình máy quét phải đọc tất cả các dữ liệu từ một đĩa và so sánh các dữ liệu gần giống dấu hiệu virus. Do đó, không chỉ lƣợng dấu hiệu virus tăng trì hoãn quá trình quét, mà việc đọc dữ liệu thực tế đƣợc quét từ đĩa cũng mất rất nhiều thời gian. Trong một phiên quét điển hình, khoảng 40% thời gian thực hiện bởi máy quét đƣợc tiêu thụ bởi việc đọc dữ liệu từ đĩa. Mặc dù một bộ nhớ cache thƣờng tăng tốc độ đọc dữ liệu từ đĩa, nhƣng trong trƣờng hợp bộ nhớ cache tiêu chuẩn không giúp đỡ, khi đó máy quét vẫn phải chờ đợi các dữ liệu đƣợc đọc từ đĩa trƣớc khi nó có thể đƣợc đặt trong bộ nhớ cache. Sáng chế - Hệ thống, phương pháp và chương trình máy tính sản phẩm loại bỏ thời gian đọc đĩa trong suốt quá trình quét virus (bằng sáng chế số 7036147) Bằng sáng chế 7036147 (phát minh bởi Hursey, McAfee uỷ nhiệm, tháng 4 năm 2006) tiết lộ một phƣơng pháp quét tăng tốc bằng cách đọc dữ liệu trong một luồng riêng biệt trong khi luồng chính bận rộn quét dữ liệu trƣớc khi đọc. Phát minh thực hiện hai luồng song song. Luồng đầu tiên đƣợc sử dụng để đọc dữ liệu từ đĩa và luồng thứ hai đƣợc sử dụng để quét dữ liệu. Luồng đầu tiên của hoạt động đƣợc thực hiện song song với luồng thứ hai trong khi một phần đầu tiên của dữ liệu đang đƣợc quét, một phần thứ hai của các dữ liệu đƣợc quét đang đƣợc đọc và lƣu trữ. Phƣơng pháp này tránh sự chậm trễ liên quan đến đọc phần thứ hai của dữ liệu. 48 Đọc các tập tin theo các luồng riêng biệt Phát minh thực hiện hai luồng song song, một luồng đầu tiên để đọc dữ liệu và một luồng thứ hai để quét dữ liệu (Nguyên lý-1: Nguyên lý phân nhỏ). Luồng đầu tiên của hoạt động đƣợc thực hiện song song với luồng thứ hai trong khi một phần đầu tiên của dữ liệu đang đƣợc quét, một phần thứ hai của các dữ liệu đƣợc quét đang đƣợc đọc và lƣu trữ (Nguyên lý 10: Nguyên lý thực hiện sơ bộ). Phƣơng pháp này tránh sự chậm trễ nói chung gây ra bởi các hoạt động đọc đĩa. Sáng chế cũng tiếp tục cung cấp một phƣơng pháp cân bằng giữa việc quét và đọc đĩa. Nếu đọc dữ liệu chậm hơn so với số lƣợng đƣợc định trƣớc thì mô hình truy cập tập tin phù hợp đƣợc tạo ra để đọc dữ liệu nhanh hơn. Tuy nhiên, nếu quá trình quét chậm hơn so với số lƣợng định trƣớc thì mô hình truy cập tập tin là không thay đổi, vì tình trạng này không gây ra bất kỳ sự chậm trễ bằng việc đọc đĩa (Nguyên lý- 12: Nguyên lý đẳng thế). g. Phát hiện sự thay theo đổi chiều hướng độc hại của các tập tin máy tính lưu trữ (bằng sáng chế số 7043634) Vấn đề Vì số lƣợng virus đã biết tăng lên nên lƣợng xử lý đòi hỏi đối với chức năng quét virus cũng tăng. Hơn nữa, bởi vì chi phí lƣu trữ dữ liệu giảm, số lƣợng chuẩn của các tập tin máy tính đƣợc lƣu trữ trong một hệ thống máy tính cũng tăng lên nhanh chóng. Sự kết hợp của cả hai yếu tố này làm tăng tải xử lý nhẹ và thời gian xử lý dẫn đến bất lợi lớn. Đây là nhu cầu đối với một phƣơng pháp quét nhanh hơn. Luồng thứ hai Luồng thứ nhất Bộ quét virut Đọc và lƣu trữ các tập tin đã đƣợc quét Quét các tập tin 49 Một trong những giải pháp cho vấn đề này là kiểm tra tính toàn vẹn, việc kiểm tra này nhanh hơn nhiều so với tìm kiếm hàng ngàn các đặc tính virus trong một tập tin. U.S. Pat No. 5619095, U.S Pat. No. 5502815 và U.S Pat. No. 5473815 mô tả các hệ thống tìm kiếm để phát hiện sự thay đổi trong các tập tin máy tính bằng cách tạo ra các đặc tính dữ liệu của các tập tin máy tính khi lần đầu tiên tạo ra và sau đó so sánh nó với các dữ liệu tƣơng tự đƣợc tạo ra khi cố gắng truy cập đến tập tin đó để xem tập tin đó đã bị thay đổi hay chƣa. Vấn đề Tất cả các tập tin không thích hợp cho việc kiểm tra tính toàn vẹn. Ví dụ các tập tin dữ liệu và các tập tin tài liệu đƣợc thay đổi thƣờng xuyên bởi ngƣời sử dụng và sẽ dễ dàng thất bại trong mỗi lần kiểm tra toàn vẹn. Bên cạnh việc so sánh các tập tin lớn với bản sao của nó đƣợc lƣu trữ có thể mất nhiều thời gian. Cần thiết có một phƣơng pháp nhanh hơn việc so sánh các tập tin với các bản sao chép đƣợc lƣu lại. Hơn nữa cũng phải bảo vệ bản sao đƣợc lƣu trữ không bị thay đổi theo hƣớng độc hại. Phát minh - Phát hiện thay đổi độc hại của các tập tin máy tính được lưu trữ (bằng sáng chế số 7.043.634) Bằng sáng chế 7043634 (phát minh bởi Wolff, et al., McAfee uỷ nhiệm, tháng 5 năm 2006) trình bày một phƣơng pháp phát hiện các vi rút máy tính bằng cách so sánh một tập tin với bản sao đƣợc lƣu của nó. Sáng chế nhận ra rằng nhiều tập tin, nhƣ exe và dll, không thay đổi trong quá trình sử dụng hàng ngày, ví dụ dữ liệu ngƣời dùng đƣợc lƣu trữ chuẩn trong các tài liệu, bảng tính, cơ sở dữ liệu và kiểu tập tin khác. Trong trƣờng hợp này thì so sánh một tập tin với lƣu trữ của nó nhanh hơn việc quét hàng ngàn dấu hiệu của vi rút có thể có trong tập tin.(Nguyên lý 26: Nguyên lý sao chép, Nguyên lý-35: Đổi các thông số hoá lý của đối tượng). Sáng chế đƣa ra một tập tin so sánh logic để so với một tập tin có lƣu trữ bản sao của các tập tin nói trên. Nếu các tập tin trùng khớp thì nó có thể đƣợc nhanh chóng thông qua nhƣ là tập tin sạch đƣợc sử dụng bình thƣờng. Nếu các tập tin không trùng khớp khi đó một bộ quét vi rút đƣợc kích hoạt. 50 Phƣơng pháp này kiểm tra một tập tin nhanh hơn nhiều so với phƣơng pháp ƣu tiên của việc quét các dấu hiệu. Tuy nhiên, kỹ thuật lƣu trữ và so sánh có thể đƣợc áp dụng một cách chọn lọc cho một tập vài loại tập tin, chẳng hạn nhƣ các tập tin thực thi và các thƣ viện liên kết động, những loại không thƣờng xuyên đƣợc sửa đổi trong các hoạt động của ngƣời sử dụng. Phƣơng pháp này không làm việc tốt đối với các tập tin dữ liệu bị thay đổi thƣờng xuyên bởi ngƣời sử dụng. Mặc dù các bản sao lƣu trữ của các tập tin có thể đƣợc lƣu trữ theo nhiều cách khác nhau, chẳng hạn nhƣ dạng không đƣợc mã hóa đơn giản, sáng chế ƣu tiên lƣu trữ theo dạng mã hóa để bảo mật tốt hơn (Nguyên lý-36: Sử dụng chuyển pha). Lƣu trữ cũng có thể đƣợc giữ trong một phần khác của đĩa hoặc trong một đĩa riêng biệt để bảo mật tốt hơn (Nguyên lý-2: Nguyên lý tách riêng). 4. Tóm tắt thông tin Khi số lƣợng virus tăng thì thời gian để quét các virus cũng tăng lên. Tình trạng này trở nên tồi tệ hơn vì chi phí lƣu trữ dữ liệu đang giảm và số lƣợng các tập tin đƣợc lƣu trữ trong một hệ thống máy tính đang tăng. Bên cạnh đó nhiều kiểm tra phức tạp đƣợc yêu cầu để phát hiện các virut thông minh của thời hiện đại. Vì vậy, một sự kết hợp của tất cả những yếu tố này làm cho một loại virus quét rất kéo dài và tốn tài nguyên. Máy tính Tập hợp các tập tin chính Chương trình diệt vi rút Bản sao của các tập tin 51 Ngoài những lý do trên cũng có những yếu tố khác để tạo ra bộ quét virut lâu hơn. Ví dụ, chức năng quét của các tập tin nén mất nhiều thời gian nhƣ các tập tin chƣa đƣợc nén trƣớc khi quét. Bên cạnh đó rất nhiều thời gian bị lãng phí do quét các tập tin nhiều lần trong các phiên quét khác nhau. Hơn nữa thuật toán so sánh tập tin và tìm kiếm có thể tăng thời gian quét. Có nhiều giải pháp đƣợc đƣa ra bởi các nhà sáng chế khác nhau nhằm tăng tốc độ quét virus. Một vài giải pháp nhƣ sau: ⇛ Lƣu trữ các trạng thái AV của các tập tin quét trƣớc đó và tránh quét lại các tập tin trong mỗi lần quét tiếp theo ⇛ Lựa chọn các tập tin để quét ( ví dụ các tập tin có thay đổi kể từ lần quét cuối) và không quét tất cả các tập tin. ⇛ Thậm chí là các tập tin bị thay đổi có thể bỏ qua việc quét nếu phần có thể bị nhiễm virus không bị thay đổi. ⇛ Áp dụng các phƣơng pháp tìm kiếm chuỗi cải tiến trong trƣờng hợp quét dấu hiệu. ⇛ Áp dụng phƣơng pháp cải tiến so sánh tính toàn vẹn. ⇛ Giảm thời gian đọc đĩa bằng cách chia thành các luồng khi đọc. ⇛ Cải tiến tốc độ truy cập dữ liệu trạng thái AV bằng cách lƣu trữ nó trong các thƣ mục tập tin hệ thống. IV. Kết luận Với sự phát triển nhanh chóng của công nghệ thông tin ngày nay, máy tính có rất nhiều nguy cơ tiềm ẩn từ virus gây ảnh hƣởng đến dữ liệu lƣu trữ quan trọng của ngƣời dùng. Chính vì vậy có rất nhiều nhu cầu đặt ra đối với sự phát các chƣơng trình diệt virus, các nhu cầu này lại mẫu thuẫn với nhau. Tuy nhiên, các sự mâu thuẫn có thể đƣợc giải quyết bằng các áp dụng các nguyên lý sáng tạo và các phƣơng pháp khác của TRIZ. Nhiều mâu thuẫn đã đƣợc giải quyết bằng nhiều cách trong quá khứ và sẽ đƣợc giải quyết thậm chí là hiệu quả hơn trong trƣơng lai. Có nhiều vấn đề liên quan đến việc phát hiện và bảo vệ máy tính không bị nhiễm virus, nhƣng các vấn đề quan trọng có thể liệt kê nhƣ sau: 52 - Giới hạn của các phƣơng pháp quét dấu hiệu, quét heuristic.. - Sử dụng phân tích hành vi nhƣ phƣơng pháp quét virus - Kỹ thuật cải tiến truy cập quét - Quản lý kích thƣớc và phân phối của các tập tin định nghĩa virus - Cải tiến tốc độ quét virus… Trong bài thu hoạch đề cập đến chi tiết của vấn đề cải tiến tốc độ quét virus. Có thể thấy nhờ áp dụng các phƣơng pháp sáng tạo TRIZ một cách đúng đắn mà các sáng chế đã và đang đƣợc sử dụng mang lại hiệu quả cao. Sự phát triển không dừng lại ở đó mà trong tƣơng lai, có thể còn có sự ra đời của nhiều sáng chế khác hiệu quả hơn nhờ sử dụng các phƣơng pháp sáng tạo TRIZ. Ví dụ nhƣ, do phƣơng pháp quét dấu hiệu phụ thuộc vào nhận dạng mẫu, nếu có một phƣơng pháp nhận dạng mẫu đƣợc cải tiến và tốt hơn, có thể đƣợc sử dụng cho mục đích này để tăng tốc độ quá trình quét virus. 53 Tham khảo 1. US Patent 6763466, “Fast virus scanning”, Inventor- Glover, assignee Networks Associates Technology, July 2004 2. US Patent 6898712, “Test driver ordering”, Inventor- Vignoles, et al., assignee Networks Associates Technology, May 2005 3. US Patent 6938161, “Test driver selection”, Inventor- Vignoles et al., assignee Networks Associates Technology, Aug 2005 4. US Patent 6928555, “Method and apparatus for minimizing tập tin scanning by anti- virus programs”, Inventor- Drew, assignee Networks Associates Technology, Aug 2005. 5. US Patent 6952776, “Method and apparatus for increasing virus detection speed using a database”, Inventor- Chess, assignee International Business Machines Corporation, Oct 2005 6. US Patent 6968461, “Providing break points in a malware scanning operation”, Inventor- Lucas, et al. assignee Networks Associates Technology, Nov 2005 7. US Patent 7036147, “System, method and computer program product for eliminating disk read time during virus scanning”, Inventor- Hursey, assignee McAfee, April 2006 8. US Patent 7043634, ““Detecting malicious alteration of stored computer files”, Inventor- Wolff, et al., assignee McAfee, May 2006 9. Umakant Mishra, "The Revised 40 Principles for Software Inventions ", trizsite tạp chí, July 2006, 10. US Patent and Trademark Office (USPTO) site, 11. Bài giảng môn học : Phƣơng pháp nghiên cƣ́u khoa hoc̣ trong tin hoc̣ ; Giảng viên : GS. TSKH Hoàng Văn Kiếm 12. TRIZ and Software - 40 Principle Analogies , Part 1/Part , journal.com/archives/2001/11/e/index.htm 13. 40 nguyên lý sáng taọ

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

  • pdfhuynh_thi_le_quyen_1212032_6711.pdf