Microsoft's pseudo sudo patent doesn't really cover sudo
Những báo cáo gần đây kêu rằng Microsoft đã làm bằng sáng chế cho khái niệm đằng sau công cụ dòng lệnh “sudo”. Một cái nhìn cận cảnh vào bằng sáng chế này theo yêu cầu nói lên một câu chuyện rất khác.
Recent reports claim that Microsoft has patented the concept behind the "sudo" command line tool. A closer look at the patent in question tells a very different story.
By Ryan Paul | Last updated November 16, 2009 7:52 AM CT
Bài được đưa lên Internet ngày: 16/11/2009
Lời người dịch: Những ai đã và đang sử dụng GNU/Linux, thì không thể không biết về lệnh sudo, lệnh cho phép truy cập các quyền của người quản trị. Microsoft vừa tạo ra một bằng sáng chế có liên quan tới lệnh này, làm dấy lên sự sục sôi trong thế giới FOSS. Tuy nhiên, người quản lý sudo đã nói rằng 2 thứ này là khác nhau hoàn toàn về bản chất bên trong.
Sự căm phẫn chính đáng như núi lửa phun trào trên Internet tuần trước sau các báo cáo rằng Microsoft đã làm bằng sáng chế cho sudo, một công cụ dòng lệnh truyền thống mà được sử dụng rộng rãi trên các nền tảng Linux và một số Unix cho việc tăng cao quyền ưu tiên được chọn. Một số nhà bảo vệ cải cách về bằng sáng chế nhiệt thành đã cảnh báo đưa bằng sáng chế này lên như một ví dụ về các vấn đề mà nó làm khổ hệ thống bằng sáng chế.
Tính rộng rãi và sự nhập nhằng tối nghĩa vốn có của các bằng sáng chế phần mềm là một vấn đề gây tranh cãi cho giới phần mềm và là vấn đề mà nó kêu gọi sự đánh giá của những cải cách tiềm tàng, nhưng chúng ta không chắc lắm rằng bằng sáng chế theo yêu cầu này của Microsoft có quá xá như các chỉ trích nói không. Trao một bằng sáng chế về khái niệm bên trong của sudo cho Microsoft qua 2 thập kỷ sau khi công cụ này đã được sáng tạo ra bởi các lập trình viên nguồn mở quả thực là một thứ ngu xuẩn, nhưng đó chưa phải là tất cả những gì đã xảy ra. Nhìn ra ngoài tổng kết ngắn gọn về hồ sơ của bằng sáng chế và bên trong thân của nó thì các khiếu nại phát hiện rằng “phát minh” của Microsoft thực sự là hoàn toàn khác so với công cụ dòng lệnh sudo. Tuy nhiên, nó có thể bao trùm một vài công nghệ mà gần đây đã tới trên máy tính để bàn Linux.
Bằng sáng chế số 530 của Microsoft, mà nó được đặt tên là Rights Elevator, bao trùm các phương pháp “mà chúng cho phép một người sử dụng làm tăng các quyền của anh hoặc chị lên”. Đặc biệt, nó mô tả một giao diện người sử dụng mà nó hiển thị các tài khoản mà chúng có các quyền cần thiết để thực hiện một hành động khi người sử dụng bị khóa khỏi việc thực hiện một hành động mà nó đòi hỏi các quyền ưu tiên truy cập cao hơn. Những khiếu nại về bằng sáng chế này tất cả đều xoay quanh một hệ thống khuyến cáo các tài khoản ưu tiên cao hơn cho người sử dụng phải chọn dựa vào một loạt các thuộc tính được xác định trước.
Righteous indignation erupted on the Internet last week following reports that Microsoft had patented sudo, a traditional command-line tool that is widely used on Linux and some UNIX platforms for selective privilege escalation. Some enthusiastic patent reform advocates predictably held up the patent as an example of the problems that afflict the patent system.
The inherent broadness and ambiguity of software patents is arguably a debilitating problem for the software industry and a matter that calls for evaluation of potential reforms, but we're not so sure that the Microsoft patent in question is as egregious as the critics claim. Granting a patent on the underlying concept of sudo to Microsoft over two decades after the tool was invented by open source developers would indeed be foolish, but that is not at all what happened. A look beyond the short summary of the patent filing and into the body of the patent's actual claims reveals that Microsoft's "invention" is really quite different from the sudo command-line tool. It might, however, cover some technologies that have more recently arrived on the Linux desktop.
Microsoft's '530 patent, which is titled Rights Elevator, covers methods "that enable a user to elevate his or her rights." Specifically, it describes a user interface which displays accounts that have the necessary rights to perform an action when the user is blocked from performing an action that requires higher access privileges. The claims of the patent all revolve around a system of recommending higher-privilege accounts for the user to choose from based on various predetermined parameters.
Dù đối tượng của bằng sáng chế này của Microsoft có liên quan tới sudo trong câu mà nó cũng làm việc với các cơ chế cho việc thực hiện một hành động với các quyền ưu tiên được nâng cao, thì phạm vi là rõ ràng khác biệt. Ví dụ, 2 thứ là khác biệt như là tàu hỏa và ô tô vậy. Tiếc thay, sự quá kích động xung quanh bằng sáng chế này đang tạo ra sự không chắc chắn không cần thiết về sudo. Để làm sáng tỏ vấn đề, người duy trì sudo Todd Miller đã đưa ra một tuyên bố lên danh sách thư của sudo giải thích về sự khác biệt.
“Tôi đã nhận được một số câu hỏi về bằng sáng chế Mỹ số 7,617,530 mà một số người dường như tin là có thể bao quát sudo. Tôi không nghĩ là nó như vậy”, ông đã viết. “Sudo đơn giản không làm việc theo cách này. Khi một lệnh được chạy qua sudo thì người sử dụng đang chạy một cách tích cực lệnh này như một nguồi sử dụng khác. Những gì được mô tả trong bằng sáng chế này là một cơ chế nơi mà một ứng dụng hoặc hệ điều hành dò tìm ra rằng một hành động cần phải chạy với các quyền ưu tiên gia tăng và tự động nhắc người sử dụng với một danh sách những người sử dụng tiềm năng mà có mức ưu tiên về quyền phù hợp để thực hiện tác vụ”.
Dù bằng sáng chế này không bao trùm sudo, nhưng nó đáng lưu ý rằng những yếu tố đặc biệt mà nó mô tả quả thực được tìm thấy trong giao diện đồ họa của PolicyKit, một khung công việc Linux khá hiện đại cho sự nâng quyền. PolicyKit đã được phát triển sau khi bằng sáng chế này của Microsoft được đệ trình, nghĩa là nó không là thứ ưu tiên.
Nếu bạn định thay đổi những thiết lập hệ thống chắc chắn trong Ubuntu 9.04, thì PolicyKet sẽ trình bày một hộp thoại mà liệt kê những người sử dụng mà có các quyền ưu tiên cần thiết cho việc thực thi thay đổi cấu hình đó. Thật tò mò, hộp thoại này là khác trong phiên bản mới nhất của phát tán này và không hiển thị hộp liệt kê (combobox) người sử dụng nữa. Thay đổi này làm cho nó an toàn hơn một cách gây tranh cãi từ bằng sáng chế cụ thể này, giả thiết rằng hành vi mới này thích hợp với mọi trường hợp.
Liệu bằng sáng chế này có hợp lệ hay không rõ ràng là một vấn đề mà đáng tranh luận, nhưng điều quan trọng đối với tranh luận này là để tập trung ào phạm vi thực sự của bằng sáng chế này. Sự phát minh thường là một quá trình dần dần và có nhiều bằng sáng chế mà nó mô tả một thứ vặn vẹo mới trên một thứ gì đó cũ. Khi tìm kiếm cho thứ gì đó ưu tiên hơn để thách thức tính hợp lệ của một bằng sáng chế, điều quan trọng hãy nhìn vào cận cảnh những tuyên bố thực sự hơn là chỉ những thứ trừu tượng, mà có thể bị hiểu lầm.
Although the subject of Microsoft's patent is related to sudo in the sense that it also deals with mechanisms for performing an operation with heightened privileges, the scope is clearly different. The two are different in, for example, the way that a train is different from a car. Unfortunately, the hysteria surrounding the patent is creating needless uncertainty about sudo. To clarify the matter, sudo maintainer Todd Miller posted a statement on the sudo mailing list explaining the difference.
"I've already received a number of questions about US patent 7,617,530 that some people seem to believe might cover sudo. I don't think that is the case," he wrote. "Sudo simply doesn't work this way. When a command is run via sudo the user is actively running the command as a different user. What is described in the patent is a mechanism whereby an application or the operating system detects that an action needs to be run with increased privileges and automatically prompts the user with a list of potential users that have the appropriate privilege level to perform the task."
Although the patent doesn't cover sudo, it's worth noting that the specific elements that it describes are indeed found in the graphical interface of PolicyKit, a relatively modern Linux framework for privilege escalation. PolicyKit was developed after the Microsoft patent was filed, meaning that it doesn't constitute prior art.
If you attempt to change certain system settings in Ubuntu 9.04, PolicyKit will present a dialog that lists users who have the requisite privileges for performing the configuration change. Curiously, the dialog is different in the latest version of the distribution and doesn't display the user combobox. This change arguably makes it safe from this particular patent, assuming that the new behavior appears consistently in all cases.
Whether the patent is valid or non-obvious is a matter that is worth debating, but it's important for that debate to focus on the patent's true scope. Invention is often an incremental process and there many patents that describe a new twist on something old. When searching for prior art to challenge the validity of a patent, it's important to look closely at the actual claims rather than just the abstract, which can be misleading.
Dịch tài liệu: Lê Trung Nghĩa
Không có nhận xét nào:
Đăng nhận xét
Lưu ý: Chỉ thành viên của blog này mới được đăng nhận xét.