Libdvdcss

libdvdcss (or libdvdcss2 in some repositories) is a free and open-source software library for accessing and unscrambling DVDs encrypted with the Content Scramble System (CSS). libdvdcss is part of the VideoLAN project and is used by VLC media player and other DVD player software packages, such as Ogle, xine-based players, and MPlayer.
Comparison with DeCSS.
libdvdcss is not to be confused with DeCSS. Whereas DeCSS uses a cracked DVD player key to perform authentication, libdvdcss uses a generated list of possible player keys. If none of them work (for instance, when the DVD drive enforces region coding), libdvdcss brute-forces the key, ignoring the DVD's region code (if any). The legal status of libdvdcss is controversial but there has been—unlike DeCSS—no known legal challenge to it as of May 2018.
Distribution.
Many Linux distributions do not contain libdvdcss (for example, Debian, Ubuntu, Fedora and openSUSE) due to fears of running afoul of DMCA-style laws, but they often provide the tools to let the user install it themselves. For example, it used to be available in Ubuntu through Medibuntu, which is no longer available.
Distributions which come pre-installed with libdvdcss include BackTrack, CrunchBang Linux, LinuxMCE, Linux Mint, PCLinuxOS, Puppy Linux 4.2.1, Slax, Super OS, Pardus, and XBMC Live.
It is also in Arch Linux official package repositories.
Usage.
Libdvdcss alone is only a library and cannot play DVDs. DVD player applications, such as VLC media player, use this library to decode DVDs. Libdvdcss is optional in many open-source DVD players, but without it, only non-encrypted discs will play.
Using HandBrake for DVD ripping on macOS requires that one install libdvdcss (with compilation or Homebrew)