1. CSVファイルでたまに登場するSJIS
2. メールで実は現役JIS
3. 古いHTMLで遭遇するEUC
メールのデコードでJISの扱いを整理したついでに、EUCも攻略しておきました。
「EUC」
エンコード、デコードがJavaScriptで簡単にできます。今回こだわったポイントは権限(privilege)。ファイルの読み書きや、ネットワークアクセスなどを行わないことを明示することにしました。
権限「--allow-import」は、SJISライブラリを使用するために必要です。権限設定なしでDenoで動かすと、必要な時に聞いてくれて安心!
「SJIS」
EUCの唯一の依存モジュールであるSJISの権限はなし。証拠に、Denoで権限設定なしで動きます。
安全なソフトウェア開発で必要と言われているソフトウェア版部品表、SBOM(エスボム)ですが、大事なのは、それぞれ部品の仕様。それぞれどんな権限を渡して動かすかを明示することで、悪意ある変更による被害を防げます。