[過去ログ] 文字コード総合スレ part13 (1002レス)
1-

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
1: デフォルトの名無しさん [] 2020/07/03(金) 20:53:47.08 ID:elbfDzqw(1) AAS
Windows NTは初代からUnicodeがネイティブの文字コードです。cp932ではありません。
プログラマーなら一度は煩わされたことのある文字コードについてのスレ。
UTF-8、Shift_JIS、JIS、EUC、Unicode、UCS、サロゲートペア、コードポイント、文字コード判定、
合成文字、ソート、TRON、外字コード、その他について語り合いましょう。
各言語での文字列の扱いについての質問もOKです。
基本マッターリ、ささ、茶でもどうぞ。

■過去スレ
文字コード総合スレ part1 2chスレ:tech
文字コード総合スレ part2 2chスレ:tech
文字コード総合スレ part3 2chスレ:tech
文字コード総合スレ part4 2chスレ:tech
 (スレ再利用)UnicodeとUTF-8の違いは? 2chスレ:tech
 (隔離スレ)UnicodeとUTF-8の違いは? その2 2chスレ:tech
文字コード総合スレ part5 2chスレ:tech
文字コード総合スレ part6 2chスレ:tech
文字コード総合スレ part7 2chスレ:tech
文字コード総合スレ part8 2chスレ:tech
文字コード総合スレ part9 2chスレ:tech
文字コード総合スレ Part10 2chスレ:tech
文字コード総合スレ Part11 2chスレ:tech
文字コード総合スレ Part12 2chスレ:tech
978
(2): デフォルトの名無しさん [sage] 2023/03/02(木) 18:43:46.01 ID:SYo8L+Nt(6/6) AAS
>>977
977(1): デフォルトの名無しさん [sage] 2023/03/02(木) 18:28:28.35 ID:l6zpHt6k(7/8) AAS
>>975
BOMは99.999%正しく判定できる自動判定だよ
実質完全に判定できるといっても過言じゃない。
自動判定のセキュリティ・リスクはそういうところじゃないよ。認識率100%でも起こる、むしろそっちが攻撃に使い易い。セキュリティまわりは勉強したことない素人が思いつくほど単純じゃない。
979: デフォルトの名無しさん [sage] 2023/03/02(木) 19:12:41.37 ID:/D1s32sE(3/3) AAS
>>978
BOMによる自動判定だけなら先頭の数バイトの固定パターンを見るだけの単純なものだから
バグの入り込む余地はかなり小さくなるだろ
980
(1): デフォルトの名無しさん [sage] 2023/03/02(木) 19:16:14.91 ID:l6zpHt6k(8/8) AAS
>>978
つまり世の中のテキストエディタからEUC-JP対応を削除しろって話をしてるの?
981: デフォルトの名無しさん [sage] 2023/03/02(木) 19:30:13.68 ID:H1OYjGZw(3/4) AAS
仕様で文字コードが固定されていようがBOMで判断しようが
不正データを読んで変なことにならないようにすることと全く関係ないだろ
もしかして「文字コードの自動判定」という機能単体の話でBOMチェックだけならば堅牢だって趣旨だったのか
982
(1): デフォルトの名無しさん [sage] 2023/03/02(木) 20:53:06.62 ID:YeVHKr55(1) AAS
「文字コードの自動判定にはセキュリティリスクがある」

BOMによる判定も自動判定だ

だからBOMにセキュリティリスクがある

なにこの三段論法w
983: デフォルトの名無しさん [sage] 2023/03/02(木) 21:03:19.85 ID:4xkEbAJQ(1) AAS
そんなこと言ってんのお前だけやで
984
(1): デフォルトの名無しさん [sage] 2023/03/02(木) 21:44:42.19 ID:H1OYjGZw(4/4) AAS
BOMがあればデータチェックをスキップしていいと考えるやつがいることを想定するなら確かに心理的セキュリティリスクが存在することにはなる
でもそんな話はしていないんだよなあ
俺の起点は>>971
971(2): デフォルトの名無しさん [sage] 2023/03/02(木) 15:35:38.23 ID:j9aKoD1k(1) AAS
・移行期だからこそBOMで他のエンコーディングと区別できるようにしておきたい場合がある
・BOMなしだと動かないシステムがある
・文字コードの自動判定はバグやセキュリホールの温床になるのでBOMを付けておきたい
・SJISはJIS X 0208で標準化されている現役の規格
・今のUnicodeの規格ではZWNBSP(U+FEFF)ではなくWORD JOINER(U+2060)の使用が強く推奨されているのでBOMとの曖昧性は起きない
・規格で許可されてるものを無理に避ける必要はない
・許可されているものを避ける理由が思いつかない
に対するものでこれは>>969
969(1): デフォルトの名無しさん [sage] 2023/03/02(木) 13:36:36.77 ID:SYo8L+Nt(5/6) AAS
>>968
好きな理由1つ選んで
・UTF-8の最大の特徴はASCIIと上位互換、BOMをつけたら台無しになる
・今はUTF-8 はBOM無しが主流
・将来の外部コードはUTF-8のBOM無しになることがほぼ確定している
・移行期だけのために余計なものをつけたくない
・BOMつきだと動かないシステムがある
・文字コードの自動判定はバグやセキュリホールの温床になるので削除したい
・SJISとか時代遅れのものはもう使用してない
・BOMの曖昧さはセキュリティホールになる可能性がある
・ZWNBS との曖昧さがいやらしい
・規格で非推奨のものは避けたい
・ファイルの接続とか分割やファイル名操作などに曖昧さがあるのはいや
・不要なものを付ける理由が思いつかない
・とにかく嫌い
他にも理由はあるだろうけど、人それぞれ
を受けてのものだから最初からBOMによる自動判定の話だし
985: 蟻人間 ◆T6xkBnTXz7B0 [sage] 2023/03/02(木) 21:56:36.58 ID:ymadH6pR(1) AAS
外部リンク[c]:github.com
ちなみにReactOSのメモ帳の文字セット判定はこうなっている。
986
(1): デフォルトの名無しさん [sage] 2023/03/03(金) 00:03:50.07 ID:GXuOSZhF(1) AAS
>>984
すげー単純な例だとバイナリファイルの先頭に UTF-8 BOM つけてテキストに偽装、ファイアウォールやウィルスチェックをすり抜ける。うかつなソフトが自動判別してBOMを外して次段に渡してマルウェア発動。
アホみたいだがこんなんで実際に被害が出てるんだぜ。実際はこんな単純じゃなくてもっと複雑で発見され難い攻撃ができる。
987
(1): デフォルトの名無しさん [sage] 2023/03/03(金) 01:54:41.66 ID:BY62yhT8(1) AAS
>>971
ZWNBS についてだが uniccode standard には
「BOMが不要な場合には先頭の U+FEFF は後方互換性のために ZWNBS と解釈される」という規定がある。
これと「UTF-8 に BOM は不要」という規定を合わせると...入力処理系の実装はどうなる? 曖昧さがあるだろ。
988: デフォルトの名無しさん [sage] 2023/03/03(金) 02:53:30.47 ID:NQKxEL/3(1/3) AAS
>>986
BOMをなくすとバイナリとして扱うのか?
それともテキストして扱うのか?
989: デフォルトの名無しさん [sage] 2023/03/03(金) 02:55:06.26 ID:NQKxEL/3(2/3) AAS
>>987
まずお前の言う「入力処理系」が何なのか説明しろ
「あれが困る」みたいな曖昧な言い方をするな
990: デフォルトの名無しさん [sage] 2023/03/03(金) 05:11:52.34 ID:Utd2ywhQ(1) AAS
バイナリとして扱ったとしてもデータとして使うのか?
それとも実行可能ファイルとして使うのか?
後者はもう BOMの使い方を大きく離脱しているな
991: デフォルトの名無しさん [] 2023/03/03(金) 09:15:08.54 ID:oC7cFOXy(1/7) AAS
I hate Windows.
992: デフォルトの名無しさん [] 2023/03/03(金) 09:18:38.82 ID:oC7cFOXy(2/7) AAS
外部リンク:answers.microsoft.com
993: デフォルトの名無しさん [] 2023/03/03(金) 09:24:55.04 ID:oC7cFOXy(3/7) AAS
>>980
ついでにSJIS対応もISO2022JP対応も削除で
994: デフォルトの名無しさん [] 2023/03/03(金) 09:26:04.28 ID:oC7cFOXy(4/7) AAS
>>982 が稀に観る白雉
995: デフォルトの名無しさん [sage] 2023/03/03(金) 11:30:01.20 ID:I6sfeYN1(1) AAS
誰だシェルスクリプトをBOM付きで編集したのは!
996: デフォルトの名無しさん [sage] 2023/03/03(金) 11:33:14.61 ID:NQKxEL/3(3/3) AAS
お前だろ

ってかBOMは許可されてるのに
そういう例外を持ってきてわーわー騒ごうとするのは頭が悪い
997
(1): デフォルトの名無しさん [sage] 2023/03/03(金) 12:02:55.61 ID:oC7cFOXy(5/7) AAS
シェルスクリプトが万が一BOM付きshebangを解釈するようになったとしても
catはどう処理されるんだろ
面倒だから止めてるんだろうな
998: デフォルトの名無しさん [] 2023/03/03(金) 12:46:30.84 ID:NnDpncr7(1) AAS
昔のmsysのcat.exeは0x0Aを勝手に0x0D0x0Aに変換して出力する仕様だったので、人知れず泣いた人多かったんじゃないかと思う

>>997
BOMをスキップするオプションとか追加すれば対処できるんじゃまいか
999: デフォルトの名無しさん [sage] 2023/03/03(金) 12:50:33.85 ID:oC7cFOXy(6/7) AAS
binaryオプション付けなければwin上で0d0aにされても文句言えない罠
しかしデフォでbom無であるべきで
デフォがbom付になるのは許すまじ
1000: デフォルトの名無しさん [sage] 2023/03/03(金) 12:50:48.52 ID:oC7cFOXy(7/7) AAS
EOF
1001
(1): 1001 [] ID:Thread(1/2) AAS
このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 972日 15時間 57分 1秒
1002
(1): 1002 [] ID:Thread(2/2) AAS
5ちゃんねるの運営はプレミアム会員の皆さまに支えられています。
運営にご協力お願いいたします。

───────────────────
《プレミアム会員の主な特典》
★ 5ちゃんねる専用ブラウザからの広告除去
★ 5ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────

会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。

▼ プレミアム会員登録はこちら ▼
外部リンク:premium.5ch.net

▼ 浪人ログインはこちら ▼
外部リンク[php]:login.5ch.net
1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.158s*