結論から言う。我が国では、リバースエンジニアリング禁止条項が設定されているソフトウェアのリバースエンジニアリングは基本的に違法であるが、個々の案件ごとに著作権法や独占禁止法との兼ね合いでの判断が必要になると思われる。


以下は資料より列挙。(資料:企業法学研究 2020 第 9 巻第 2 号の論文「プログラムのリバースエンジニアリングの法的課題」。)

1)米国では違法とされている。リバースエンジニアリングの禁止条項が、著作権法に優越するという司法の結論が出たためである。

2)EUでは、合法とされている。契約書の中のリバースエンジニアリング禁止条項を無効としている。

3)我が国(日本)では、著作権法が改正され、30条の4によりリバースエンジニアリングが適法となり、かつ、公正取引委員会は、独占禁止法の観点から検討し、禁止条項を不公正な取引方法と判断しているが、それにも関わらず、経済産業省は禁止条項を有効と判断し、多数説としても禁止条項が有効とされているため、全体としては、米国に追従し、リバースエンジニアリングを違法としていると言える。


このことを考えていて思い出したのが、 Ultra-HD Blu-ray のPCでの再生である。

御存知の通り、Ultra-HD Blu-ray は、著作権の保護の観点から、DRM(デジタル著作権管理)の技術のうちの AACS(Advanced Access Content System)により暗号化処理が施されており、メモリ上に読み込んだ状態で他のプロセスからアクセスできないようにするためにハードウェア機能である Intel SGX(Software Guard Extensions) を使用している。

そのため、ハードウェアの構成に条件が加わる。詳しく書くと、 SGX 対応の CPU (第7~10世代で、かつ、SGX対応のもの)、対応マザーボード、対応 BIOS、 windows 用の対応ドライバ(新しいバージョンに上げると非対応になってしまうので古いままにする必要がある)、そして、CPU内蔵の HDMI/DisplayPort出力がHDCP2.2をサポートしているグラフィックを使用する必要がある。

大変な困難さだ。ここまでの負担を動画視聴者に強いては、PCで視聴しようと考える者もほとんどいなくなるだろう。この問題の根本的な原因は著作権保護である。SGX を使用せず DRM に従った暗号化データの再生が可能なプレイヤーが開発できれば、 Intel SGX は必ずしも必要ではなくなる。だが、 SGX を用いずに著作権の違反にならないようDRM(デジタル著作権管理)の技術として暗号化することができるかどうか。できなければ、リバースエンジニアリングの例のように、「違法な行為(を行うプレイヤー)」とされる恐れがあるだろう。


apache と PHP 8.2.11 の ini ファイルの設定、特に PHP を動作させるための設定は下の通り。


1)apache

Define SRVROOT "c:/…/Apache24"

DocumentRoot "${SRVROOT}/htdocs"

LoadModule php_module "C:/…/php8apache2_4.dll"

<FilesMatch "\.php$">

  AddHandler php-script .php

  AddType application/x-httpd-php .php

</FilesMatch>

PHPIniDir "c:/…/php8.2.11"


2)PHP

extension_dir = "ext" ( extension_dir = "c:/…/ext" のように、フルパス記述でも可。)

extension=mbstring

extension=openssl

date.timezone = Asia/Tokyo

[mbstring]

mbstring.language = Japanese

mbstring.encoding_translation = On

mbstring.detect_order = ASCII,UTF-8,ISO-2022-JP,eucJP-win,SJIS-win

mbstring.substitute_character = none

下の3つは確実にコメントアウトしておく。(あるだけで起動しなくなる。)

;mbstring.internal_encoding = UTF-8

;mbstring.http_input = auto

;mbstring.http_output = UTF-8

キーワード: apache php8


windows の php での話。

mbstring.internal_encoding を設定すると、エラーで php が起動しなくなる。mbstring.http_input なども同様かも知れない。


pho.net の「PHPマニュアル」では、「非推奨になりました。」となっており、まだ削除されておらず、 phpinfo() でも表示はされるのだが、 ini ファイルに記述があるだけで起動しなくなる。 php の設定状態によるのかも知れないが、起動しなくなったら要確認。

ローカル環境の php の動作がおかしくなり、これに気づくまで時間がかかった。

[コメントの受付は終了しています ]
この記事のリンク元 | 2 |

キーワード: php8 mbstring


画面の出力に、CPU内蔵のグラフィックスではなく、 nVidia の新しめのグラフィックボードを使用している場合、 KUbuntu のインストールの途中にフリーズしてインストールが完了しなくなる。

原因は、インストール中に使用される nouveau ドライバが、新しめのグラフィックボードに対応していないために起こるようだ。

解決策は、1つ。

・CPU 内蔵側のグラフィックを接続してインストールし、その後、 nVidia のグラフィックに接続し直す。

なお、このためには、 UEIF(BIOS) の設定を変更して、一旦 CPU 内蔵側のグラフィックを使用するようにしてやる必要がある。

もし、インストール済みの Ubuntu の場合であれば、

・「Ubuntu  (safe graphics)」で起動し、インストーラを起動して、「グラフィックスと Wi-Fi ハードウェアと追加のメディアフォーマットのアップデートと他のソフトウェア」の画面から、「サードパーティ製ソフトウェアをインストールする」を選んで nVidia のドライバをイントールして再起動する。

という方法で解決できる。

Ubuntu が、なぜ、新しめの nVidia のグラフィックボードでフリーズしてしまうような nouveau ドライバでインストールを強行しようとするように設定されているのか、意図は全く不明。こういう場合は、 nVidia のグラフィックボードを検出したなら、その時点で nVidia のドライバをインストールして、 GUI モードを起動するように設計するのが、まともなインストーラの設計ではなかろうか。

キーワード: KUbuntu


1.KUBUNTUのインストール時の注意点

・そのままインストールすると簡易インストールになるが、強制的に英語としてインストールされ、そのうえ日本語入力が機能しない状態にインストールされてしまうので、必ず簡易インストールではなく通常のインストールに変更してからインストールする。


2.日本語入力のインストール

・KUBUNTU 22.04 LTS は、インストール完了時に日本語入力が導入されていない状態なので、自分でインストールする必要がある。 fcitx の現行バージョンは fcitx5 なので、 fcitx-mozc ではなく、 fcitx5-mozc をインストールする


$ sudo apt-get install fcitx5-mozc


3.openvmtoolsのインストール

・インストール時に、VMWare Player の画面下部に VMware Tools のインストールを促すボタンなどが現れるが、これを用いない。代わりに、 openvmtools をインストールする。

$ sudo apt-get install open-vm-tools-desktop


4. gcc のインストール

$ sudo apt install build-essentials


5. wine のインストール

$ sudo dpkg --add-architecture i386

$ sudo mkdir -pm755 /etc/apt/keyrings

$ sudo wget -O /etc/apt/keyrings/winehq-archive.key https://dl.winehq.org/wine-builds/winehq.key

$ sudo wget -NP /etc/apt/sources.list.d/ https://dl.winehq.org/wine-builds/ubuntu/dists/jammy/winehq-jammy.sources

$ sudo apt update

$ sudo apt install --install-recommends winehq-staging

$ sudo apt-get install winetricks


6.wine 環境を新規に用意する。

WINEARCH=win64 WINEPREFIX=<wine環境を構築する場所> winecfg


7.wine を使う前に必要なフォント、ライブラリをインストールしておく。

allfonts, comctrl32, dxvk, quarts

キーワード: KUbuntu 日本語入力