Tìm hiểu về giấy phép mã nguồn mở. Chính sách miễn phí và tính license

Phần mềm nguồn mở (Open Source) là những phần mềm được cung cấp dưới cả dạng mã và nguồn, không chỉ là miễn phí về giá mua mà chủ yếu là miễn phí về bản quyền: người dùng có quyền sửa đổi, cải tiến, phát triển, nâng cấp theo một số nguyên tắc chung quy định trong giấy phép phần mềm nguồn mở mà không cần xin phép ai, điều mà họ không được phép làm đối với các phần mềm nguồn đóng (tức là phần mềm thương mại).

Các phần mềm mã nguồn mở có thể là các ngôn ngữ lập trình, các OS, các phần mềm ứng dụng chạy trên OS.

Các phần mềm này thường có nguồn gốc ở các nước phương Tây. Lý do là người châu Á có tư tưởng thích sở hữu hơn là chia sẻ, sự đóng góp cho cộng đồng khi giàu có hoặc thông thái là có thể chiếm tỷ lệ nhỏ trong cộng đồng người Châu Á trong khi người Phương Tây tỷ lệ này thì cao hơn nên đó cũng chỉnh là lý do các phần mềm mã nguồn mở phổ biến và có nguồn gốc từ các nước phương Tây.

Hầu hết các license mã nguồn mở đều bao gồm các phát biểu sau:

  1. Phần mềm có thể được sửa đổi, sử dụng thương mại và phân phối.
  2. Phần mềm có thể được sửa đổi và sử dụng với quyền riêng tư.
  3. Phần mềm phải bao gồm license và thông tin bản quyền.
  4. Tác giả phần mềm không cấp sự đảm bảo và không phải chịu trách nhiệm cho bất cứ điều gì.

Trong đó:

  • GPL: GPLv3 là một trong những license hạn chế nhất. Nó tạo ra để bảo vệ với mức độ cao cho tác giả của phần mềm. Một khi sử dụng và phân phối, bắt buộc phải sử dụng giấy phép GPL, không được phép đóng mã nguồn và thay đổi giấy phép .
  • Apache: cung cấp nhiều sự linh hoạt hơn cho người dùng, được phép đóng mã nguồn , thương mại hoá và giữ bản quyền sản phẩm .
  • BSD : là giấy phép tự do “ít ràng buộc” hơn , là giấy phép tự do “ít ràng buộc” hơn, cung cấp sự linh hoạt hơn cho người dùng so với Apache License 2.0. Các giấy phép kiểu BSD để những sản phẩm phái sinh được tái phân phối như phần mềm thương mại .
  • MIT là một trong những license dễ chịu nhất. Nó cũng là một trong những license phổ biến nhất. MIT cung cấp sự bảo vệ rất thấp cho tác giả của phần mềm. Các dự án phổ biến sử dụng MIT là Angular.jsjQueryRailsBootstrap và nhiều dự án khác.
  • LGPL : Là giấy phép sửa đổi của GPL , được sử dụng cho một số thư viện phần mềm ( các thư viện dùng ngôn ngữ C thường áp dụng giấy phép này )
  • MPL : MPL dung hoà giữa BSD và GPLMPL cho phép dùng MPL software để tạo ra một sản phẩm khác (thương mại hoặc không) , tuy nhiên nếu thay đổi MPL software thì phải được đưa miễn phí lên Internet .

Khi sửa đổi phải đưa mã nguồn ra thành mã nguồn mở?

  • BSD : Không cần
  • GPL , LGPL , MPL : Yêu cầu

Khi sử dụng có phải đưa mã nguồn ra thành mã nguồn mở?

  • BSD , LGPL , MPL : Không
  • GPL : Có

Phần mềm nguồn mở không đồng nghĩa với ‘miễn phí’

Mặc dù phần lớn phần mềm mã mở (OSS) người ta đang dùng, mà phổ biến nhất là LAMP (Linux, Apache, MySQL, PHP), đều áp dụng GNU GPL (GNU General Public License), nhưng ở Việt Nam hầu như chẳng ai buồn phân biệt đâu là mã mở (open source), đâu là phần mềm tự do (free software). Người ta có xu hướng cho tất cả vào chung một rọ, bằng cách gọi tuốt là phần mềm mã mở.

1. Phần mềm nguồn mở không đồng nghĩa với “miễn phí”

Ví dụ, với những phần mềm được bảo vệ bởi GNU GPL, bạn có thể lấy được mà không mất tiền, chỉ vì GNU GPL cho phép bạn một khi đã mua hay xin được phần mềm, thì nghiễm nhiên có quyền sửa đổi, sao chép, cho tặng, bán lại phần mềm ấy mà “không cần xin phép tác giả” và “không phải trả phí bản quyền cho tác giả”. Ở đây “tác giả” xin hiểu là “người giữ bản quyền”.

Tác giả có thể bán phần mềm với giá 1 triệu USD, nhưng khi anh đã mua, anh được quyền đem phần mềm “với mã nguồn” công bố cho toàn thế giới. Đấy là khác biệt chính giữa “phần mềm tự do” (tức là “phần mềm nguồn mở tuân theo GNU GPL” với phần mềm độc quyền (proprietary software, chẳng hạn MS Office). Bởi thế, tác giả phần mềm, một khi đã quyết định đặt nó dưới sự bảo vệ của GNU GPL, thường cho không. Tuy nhiên, chính Richard Stallman, khi cung cấp phần mềm tự do của mình cho khách hàng, cũng yêu cầu khách hàng trả các khoản chi phí sao chép, vận chuyển, và “tiền công” phát triển phần mềm. Khách hàng vẫn trả tiền, vui vẻ mà trả, vì Stallman xứng đáng được hưởng số tiền đó.

Những license như GNU GPL cũng đảm bảo cho người dùng rằng, một khi anh sử dụng phần mềm tự do, tác giả sẽ không thể đòi tiền anh về sau này vì việc sử dụng ấy, bất luận anh lấy được phần mềm từ chính tác giả hay từ một nguồn nào khác. GNU GPL cũng bắt buộc các sản phẩm dẫn xuất từ một phần mềm được nó bảo vệ, phải tuân theo GNU GPL.

2. Không phải phần mềm mã mở nào cũng là phần mềm tự do

(ở đây thuật ngữ “phần mềm tự do” được chuyển ngữ từ thuật ngữ “free software” của Stallman). Có nhiều license cho phần mềm mã mở, có những license cho phép người dùng xài miễn phí, sửa miễn phí, đem bán lại thoải mái, có license lại không cho bán lại, có license lại bắt mình phải mua mới được xài. Đừng nghĩ cứ mã mở là miễn phí.

3. Khía cạnh pháp lý của việc sử dụng phần mềm mã mở

Hầu hết các nhà phát triển phần mềm ở VN đều nghĩ rằng dùng phần mềm mã mở là “đứng trên vai người khổng lồ”, là “lấy của người ta về làm của mình”, và họ hiểu thô kệch đến mức đem phần mềm mã nguồn mở về sửa đi một tí, thêm tiếng Việt vào, rồi bán tá lả, có hoặc không có kèm theo một câu “nếu bạn cần mã nguồn của chương trình, xin liên hệ với chúng tôi”.

Liệu hồn cho khách hàng nào đã mua phần mềm của họ mà lại đem mã nguồn đi bán hoặc cho người khác. Không phải lúc nào việc ngăn cấm này cũng là sai trái, nhưng tôi xin nói rằng trong phần lớn trường hợp việc ngăn cấm này là sai trái, bởi vì đa số phần mềm mã mở mà các nhà phát triển phần mềm của chúng ta sử dụng lại là “phần mềm tự do”. Và việc ngăn cấm người dùng phổ biến mã nguồn, hay việc không cung cấp mã nguồn cho người dùng “theo cùng một cách phân phối mã nhị phân của chương trình” là “vi phạm GNU GPL”. Ví dụ, nếu anh cho phép download bản binary từ website của mình, nhưng không cho download bản mã nguồn, như thế là vi phạm GNU GPL.

Các công ty mã nguồn mở kiếm tiền bằng cách nào?

Red Hat là công ty đi đầu trong lĩnh vực mã nguồn mở và họ có một chiến lược kinh doanh cực kỳ rõ ràng. Họ cung cấp hệ điều hành mã nguồn mở Linux nổi tiếng dưới tên Red Hat Enterprise Linux cho các doanh nghiệp với sự đảm bảo hỗ trợ trong suốt 10 năm. Với thực tế là những dự án mã nguồn mở luôn thay đổi từng ngày, sự đảm bảo hỗ trợ của Red Hat là cực kỳ có giá trị.

Còn với WordPress – công ty cung cấp dịch vụ blog miễn phí, họ kiếm tiền bằng cách bán bản nâng cấp của nền tảng blog này – mang tên WordPress Enterprise – với những tính năng và tùy chỉnh đặc biệt không có trong bản miễn phí. Họ cũng cung cấp cả host lưu trữ blog và các dịch vụ hỗ trợ kỹ thuật.

– Một khi khách hàng đã trả tiền cho dịch vụ của bạn, bạn có thể kiếm thêm bằng cách cung cấp các tính năng liên quan. Ví dụ như khi khách hàng chọn WordPress, họ sẽ sẵn sàng trả tiền cho theme hay các plug in bảo mật hỗ trợ cho blog của họ.

Ngoài ra còn có các cách sau:

Mặc dù cho rằng các dự án open source là sự đóng góp cho xã hội cũng như cộng đồng lập trình nhưng theo hiểu biết nông cạn của mình thì nó không hoàn toàn miễn phí. Các dự án này có thể kiếm tiền theo các cách sau (mà mục đích chủ yếu mình nghĩ là để tiếp tục phát triển nâng cấp dự án hơn là làm giàu):

  • Đối với ngôn ngữ, framework thì có thể kiếm tiền bằng nguồn thu từ việc training, đào tạo những ai học ngôn ngữ hoặc framework đó.
  • Đối với các phần mềm miễn phí thì thu lợi nhuận từ quảng cáo hoặc lợi nhuận từ việc bán version premium với nhiều chức năng hơn. Hoặc cũng có thể là bán hỗ trợ kỹ thuật nếu một user nào muốn bổ sung thêm chức năng vào phần mềm.
  • Đối với các hệ điều hành PC miễn phí thì người ta vẫn ra các bản cập nhật hằng năm với version desktop. Mục đích là duy trì danh tiếng và bán các hỗ trợ kỹ thuật cho các công ty dùng hệ điều hành đó làm server.
  • Hoặc đối với Android thì cung cấp chợ ứng dụng và thu tiền từ bên trung gian, cụ thể ở đây là các nhà phát triển và các nhà phát hành app.

Các dạng mã nguồn mở phổ biến hiện nay

1) Apache license 2.0

  • Phát hành tháng 01-2004 .
  • Giấy phép Apache là một giấy phép phần mềm tự do của Quỹ phần mềm Apache (Apache Software Foundation – ASF) . Giấy phép Apache trao cho người dùng phần mềm nguồn mở , quyền tự do sử dụng phần mềm với bất kì mục đích nào , phân phối chỉnh sửa , và phân phối bản sửa đổi của phần mềm, theo các điều khoản của giấy phép mà không lo vấn đề bản quyền .
  • Nội dung license : http://www.apache.org/licenses/LICENSE-2.0
  • Các điều khoản của giấy phép :
    • Giấy phép Apache cho phép người dùng tự do sử dụng phần mềm với bất kì mục đích nào, tự do phân phối, tự do sửa đổi, tự do phân phối bản sửa đổi mình làm .
    • Giấy phép Apache không yêu cầu bản sửa đổi của phần mềm phải được phân phối dưới cùng giấy phép với bản gốc, cũng không yêu cầu bản sửa đổi phải được phân phối dưới dạng mã nguồn mở. Giấy phép Apache chỉ yêu cầu có một thông báo nhắc nhở người nhận rằng giấy phép Apache đã được sử dụng trong sản phẩm họ nhận được .
      => Nói tóm lại người sử dụng phần mềm được quyền sử dụng chương trình và mã nguồn theo cách họ muốn, kể cả việc giữ lại mã nguồn cho riêng mình.
    • Giấy phép Apache không yêu cầu trích dẫn toàn bộ giấy phép vào sản phẩm hay tệp tin đính kèm bản phân phối, mà chỉ cần thêm vào phần thông báo có chứa đường link tới website chứa giấy phép với nội dung như sau:
Copyright [yyyy] [name of copyright owner]

Licensed under the Apache License, Version 2.0 (the “License”);
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an “AS IS” BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and limitations under the License.

2) BSD 3-Clause “New” or “Revised” license

Khoảng 7% các dự án được cấp phép nguồn mở trên kho phần mềm Sourceforge sử dụng một số dạng giấy phép BSD. Giấy phép này sử dụng phổ biến thứ 3 sau GPL và LGPL.

  • Phát hành ngày 22-07-1999 .
  • Giấy phép BSD ( Berkeley Software Distribution License ) có thể nói là lâu đời nhất trong các giấy phép nguồn mở, nó đã và đang tồn tại ở một số dạng kể từ những năm 1980 .
  • Giấy phép BSD 3-Clause “New” or “Revised” license là bản sửa đổi của giấy phép BSD cũ đã loại bỏ một số điều khoản mà người ta cho rằng phi thực tế .
  • Nội dung license : https://opensource.org/licenses/BSD-3-Clause
  • Điều khoản của giấy phép: Tái phân phối và sử dụng ở dạng mã nguồn và nhị phân , có hoặc không có sửa đổi mã nguồn , đều được cho phép miễn là các điều khoản sau được đáp ứng :
    • Việc phân phối lại mã nguồn phải giữ lại thông báo bản quyền, danh sách các điều kiện và tuyên bố từ chối trách nhiệm
    • Việc phân phối lại dưới dạng nhị phân phải sao chép thông báo bản quyền, danh sách các điều kiện và tuyên bố từ chối trách nhiệm trong tài liệu và/hoặc các tài liệu khác được cung cấp bởi bản phân phối.
    • Tất cả các bản sao được phân phối là đi kèm theo giấy phép đó
    • Các tên của những người đóng góp trước đó không được sử dụng để quảng cáo cho bất kỳ phiên bản phái sinh nào mà không có được sự cho phép bằng văn bản của họ

3) BSD 2-Clause “Simplified” or “FreeBSD” license

  • Phát hành tháng 04-1999 .
  • Giấy phép BSD 2-Clause “Simplified” or “FreeBSD” license về cơ bản giống với giấy phép BSD 3-Clause . Nhưng BSD 2-Clause yêu cầu “Tên của những người đóng góp trước đó không được sử dụng để quảng cáo cho bất kỳ phiên bản phái sinh nào mà không có được sự cho phép bằng văn bản của họ” . BSD 3-Clause đã giảm bớt sự phiền hà khi sử dụng phần mềm nguồn mở theo giấy phép BSD .
  • Nội dung license : https://opensource.org/licenses/BSD-2-Clause

4) GNU General Public License (GPL)

GPL và LGPL và 2 giấy phép sau chiếm khoảng 80% cấp phép nguồn mở

  • Giấy phép GNU hiện đang có 2 phiên bản được sử dụng phổ biến là GPL-2.0 và GPL-3.0.
  • Phiên bản mới nhất ( GPL-3.0 ) phát hành ngày 29-06-2007 .
  • Nội dung license : https://www.gnu.org/licenses/gpl.html
  • Sao chép phần mềm:
    • Được sao chép và phân phối chương trình, được yêu cầu trả phí cho việc phân phối đó .
    • Khi sao chép và phân phối chương trình, phải đính kèm các thông báo về bản quyền gốc và không bảo hành( trừ trường hợp có văn bản thêm về quy định bảo hành).
  • Phân phối phân mềm:
    • Được phân phối bản đã được thay đổi đó.
    • Khi phân phối bản đã được thay đổi bởi bản thân , phải chú thích rõ đó là bản đã được thay đổi, các thành phần được thay đổi, và áp dụng giấy phép GNU cho bản đã được thay đổi đó .
  • Tính phí phân phối cho người dùng:
    • Bạn có thể tính phí khi phân phối phần mềm cho người dùng tuy nhiên cần phải đưa cho họ bản sao của GNU-GPL để cho ho biết rằng phần mềm này được lấy từ đâu.
  • Thay đổi phần mềm:
    • Được thay đổi chương trình để sử dụng cho mục đích cá nhân .
    • Khi phát hành chương trình phải công khai mã nguồn của chương trình, đồng thời phải công bố mã nguồn của chương trình trong tối thiểu 3 năm mà không được đòi một khoản phí nào từ những người yêu cầu mã nguồn trừ chi phí vận chuyển hay tương đương .

5) GNU Library or “Lesser” General Public License ( LGPL )

  • Phiên bản mới nhất ( LGPL-3.0 ) phát hành năm 2007 .
  • Nội dung license : https://www.gnu.org/copyleft/lesser.html
  • LGPL là một phiên bản sửa đổi của GPL .
  • Giấy phép này thường bị hạn chế đối với các thư viện phần mềm.
  • Cung cấp sự bảo vệ ít hơn so với GPL.
  • Điều này cho phép các chương trình không phải là Open source có thể truy cập hoặc liên kết tới các thư viện nguồn mở mà không phải công khai mã nguồn như giấy phép GPL .

6) MIT License

  • Được phát hành bởi Massachusetts Institute of Technology ( MIT ) .
  • Nội dung license : https://opensource.org/licenses/MIT
  • Giấy phép MIT là loại giấy phép cho phép sử dụng mã nguồn tự do nhất , nó có thể kết hợp với các mã nguồn khác và đảm bảo tương thích theo điều kiện của mọi loại giấy phép khác .
  • Với giấy phép MIT bạn có thể sử dụng , sao chép , sửa đổi , hợp nhất , xuất bản , phân phối và/hoặc bán các bản sao của phần mềm mà không vi phạm bản quyền. Bạn chỉ cần tuân thủ điều kiện duy nhất sau:
    • Thông báo bản quyền và thông báo cho phép của phần mềm gốc sử dụng giấy phép MIT sẽ phải bao gồm trong tất cả các bản sao hoặc phần quan trọng của phần mềm .

7) Mozilla Public License 2.0 ( MPL )

  • Giấy phép MPL 2.0 là một giấy phép phần mềm tự do của Quỹ Mozilla .
  • Phát hành ngày 03-01-2012 .
  • Nội dung license : https://www.mozilla.org/en-US/MPL/2.0/
  • MPL là sự kết hợp giữa giấy phép BSD có chỉnh sửa và giấy phép GNU .
  • Một số lập trình viên đóng góp Dcho cộng đồng phần mềm mã nguồn mở nhưng không muốn từ bỏ hoàn toàn quyền sở hữu đối với những sửa đổi của họ và MPL là một ví dụ điển hình nhất đáp ứng nhu cầu này của họ .
  • Nó ra đời để giúp phân phối trình duyệt web Mozilla ( nền tảng nguồn mở của Netscape ).
  • MPL yêu cầu việc công bố mã nguồn của mọi thay đổi được đưa ra công chúng .
  • Thời gian yêu cầu để công bố được giới hạn trong vòng khoảng 6 tháng – 1 năm tuỳ theo từng trường hợp .

8) Sun Industry Standards Source License 1.2 ( SISSL )

  • SISSL là giấy phép mã nguồn theo chuẩn của Sun.
  • Nội dung license : https://opensource.org/licenses/sisslpl
  • Đối với phần mềm có áp dụng giấy phép này, mã nguồn gốc được công bố theo một phiên bản nào đó của giấy phép , người sử dụng sẽ luôn phải sử dụng mã gốc đó theo các điều khoản của phiên bản đó .
  • Không ai có quyền chỉnh sửa các điều khoản áp dụng cho mã nguồn gốc ngoài Sun .

Tham khảo: https://news.cloud365.vn/cac-loai-giay-phep-ma-nguon-mo-open-source-licences/

Leave a Reply

Your email address will not be published. Required fields are marked *