タグ

encodingに関するlizyのブックマーク (31)

  • 文字コードと文化と言語 - 川口耕介のブログ

    UTF8がデフォのほうがましですね。最近はクロスプラットフォームを考慮してソース等はすべてUTF8で扱うことが多いですから。 日語環境悪化か - しんさんの出張所 はてな編 実は自分の作ったMaven2プロジェクトUTF-8を指定しているか日語を使っていないものばかりなので、自分は当事者ではないのだけど。 http://nekop.programmers.jp/diary/?date=20080428 僕が日にいた頃は、専らVisual C++とかJavaのソースコードといえばShift JISで書くのが普通だった。WindowsではShift JIS、Unix上はEUCという棲み分けができていたから、cvsのEOL処理と同様に文字コードをコンバートしてリポジトリに保管するためのパッチが書かれていたりした(そうしないと両方で編集できない)。Unicodeはあったはずだが、普及してい

    文字コードと文化と言語 - 川口耕介のブログ
  • これだから世の中にはiso-8859-1しかないと思ってる奴らは... - 川口耕介のブログ

    NetBeansの中の人経由でこれを発見した。 Without default value for source encoding, platform encoding is used, which is bad for build reproducibility. Then setting a default value consistently across every Maven plugin will improve build reproducibility. Proposed default value: ISO-8859-1, which must be supported by every JVM (see java.nio.Charset) and is already the default value for some plugins (the majority of

    これだから世の中にはiso-8859-1しかないと思ってる奴らは... - 川口耕介のブログ
  • 【スクリプトインジェクション対策05】文字エンコーディングは必ずHTTPヘッダで指定する | gihyo.jp

    クロスサイトスクリプティングの危険性を解説した「CERT Advisory CA-2000-02 Malicious HTML Tags Embedded in Client Web Requests」(⁠2000年2月)には、クロスサイトスクリプティングを防止する対策として文字エンコーディングを明示的に指定すべきある、と明確に記載されています。 In addition, web pages should explicitly set a character set to an appropriate value in all dynamically generated pages. 加えて、動的に生成されたすべてのWebページは適切な文字コードセットを明示的に設定されなければならない としています。 <meta>タグを利用すると <meta http-equiv="content-typ

    【スクリプトインジェクション対策05】文字エンコーディングは必ずHTTPヘッダで指定する | gihyo.jp
  • 【スクリプトインジェクション対策06】入力文字列の文字エンコーディングを検証する | gihyo.jp

    筆者はここ数年、ブラウザからの入力は指定された通りの正しい文字エンコーディングでエンコードされているか検証しなければならない、と解説しています。手前味噌ですが2006年3月に出版した「Webアプリセキュリティ対策入門」(⁠技術評論社)でも、入力文字列のエンコーディングが妥当であるか検証しなければならない、と解説しています。 残念なことに最近になっても不正な文字エンコーディングが入力される可能性を考慮していないことによる脆弱性が、PHP体自体やPHPも利用しているライブラリlibxml2に発見されました。不正な文字エンコーディングはデータが正しくないだけでなく、スクリプトインジェクションやSQLインジェクション、DoS攻撃等を可能にします。 マルチバイト文字エンコーディングは最初または前方に配置されたバイトで1文字が何バイトで構成されるか決まります。この性質を利用してマルチバイト文字列の開

    【スクリプトインジェクション対策06】入力文字列の文字エンコーディングを検証する | gihyo.jp
  • eXperts Connection|オンカジ 登録ボーナスのセキュリティー

    eXperts Connection はシステム エンジニアやシステム管理者を対象とし、マイクロソフトのサーバー システム製品を中心に情報交換や意見交換を行うコミュニティです。ユーザーとマイクロソフトからなるチームでテーマを厳選して議論し、情報を共有・蓄積していきます。また、エキスパート コネクションは .NET Framework上で作成されており、サイト上でソースコードを公開しています。ソースコードに対する機能追加や修正に関する議論を行うことで、お客様が作成する.NET アプリケーションの参考にすることが可能です。 eXConn Blogsでは 「マイクロソフト社員による個人または部門(チーム)の Blog」 の運用を行っています。 このブログでは、マイクロソフトでの経験を活かした部門チームが、セキュリティエンジニアを目指している未経験者達が今後取るべき資格や、IT業界においてのセキュ

  • url に日本語が含まれている場合の Firefox と IE の挙動の違い。

    現在,トラックバックを管理するサービスを構築中なのですが併せてテクノラティとの連携(tagの利用)を進めている中で,困った問題が出てきました。 というのは,テクノラティは http://www.technorati.com/tag/**** というuriで,**** という tag を持つ blog の一覧にアクセスすることができるのですが,**** の部分が日語だと正常に tag の文字情報が認識されません。 e.g. http://www.technorati.com/tag/日丸 → http://www.technorati.com/tag/%93%FA%96%7B%8A%DB %93%FA%96%7B%8A%DB はshift-jisの文字列に対するurlエンコード結果なのですが,テクノラティで直接検索窓を利用した結果は,「%E6%97%A5%E6%9C%AC%E4%B8%B

    url に日本語が含まれている場合の Firefox と IE の挙動の違い。
  • 第1回:進まないJIS2004への移行,その原因は?

    2004年に制定された最新の文字コード規格「JIS X 0213:2004(通称:JIS2004)」。このJIS2004に対応したWindows Vistaがリリースされて,早1年が経過した。JIS2004自体は,フォントやIMEの普及に合わせて,ユーザーに順調に浸透している。しかし,ユーザーからのデータを受け取る企業情報システムの側では,JIS2004への対応が進んでいないのが実情だ。なぜJIS2004への対応が進まないのか。その現状をまとめてみよう。 JIS X 0213:2004(JIS2004)は,2004年に制定された最新の文字コード規格。過去の文字コード規格に対して多くの文字を追加しており,従来扱えなかった日の地名・人名などが表現できるようになった(JIS X 0213の概要や,2004年に改訂された経緯については,ITproの記事「VistaでUnicode以外の選択肢はな

    第1回:進まないJIS2004への移行,その原因は?
  • ターミナルまるごとコード変換 - 世界線航跡蔵

    先日の東京・関東Rubyist忘年会の席で、「UTF-8で日語を記述したRspecをwindowsで動かすと文字化けして困る」という話があった。 で、「それcocotでできるよ」と言おうとしたのだけど暫く使ってなかったのでとっさに"cocot"の名前が出てこなかった。 cocot は「端末(tty)とプロセスの間に割り込んで、文字コード変換を行うツール」。だから、cocotの下でシェルを動かしてしまえばあとは意識せずにコード変換してくれる。 シェル丸ごとだと今度は標準コマンドの出力が化けるかも知れないけど、だったらalias spec="cocot -p UTF-8 spec"とかすればいい。

    ターミナルまるごとコード変換 - 世界線航跡蔵
  • Unicode の文字列をソースコードに埋め込む方法 - bkブログ

    Unicode の文字列をソースコードに埋め込む方法 Unicode の文字列をソースコードに埋め込む場合、直接 UTF-8 などで文字列を書く方法と、\uXXXX などのようにエスケープして表記する方法があります。後者の方法についてまとめてみました。 \uXXXX 形式の場合 Java, JavaScript, Python, C++, C (C99から) などの多くの言語では \uXXXX という表記 (universal character names) でUnicode の文字を文字列の中に埋め込めます。たとえば、「あいう」は "\u3042\u3044\u3046" となります。 \uXXXX で埋め込んだ文字がどのように解釈されるかは言語や処理系によって異なります。 gcc/g++ の場合、 -fexec-charset オプションで、実際に使う文字セット・エンコーディングを指

  • エンコーディングを合わせる - Kazzz's diary

    サーバとクライアントでエンコードされた文字(XMLと考えても良い)を使って通信を行う場合、双方でエンコーディングを合わせるのだが、どのようにして合わせるのがベターなのだろう。 1. クライアントとサーバ、双方で取り決めをしておいて同じエンコーディングを使用する 2. クライアントが使用するエンコーディングをなんらかの形でサーバ側に送り、それを使う 3. URL(URI)のように互いのエンドポイントを指すシンボルにエンコーディングを持たせる(?encode=utf-8とか) 一般的なのは1.だが変化に弱いか。2.HTMLのcharsetのようなヘッダを使うか、ストリームを先読みで判定するか。HTTPなら3が使えるがREST原理に反するか。 もっと良い方法は無いかな。

    エンコーディングを合わせる - Kazzz's diary
  • MySQL 文字化け問題を本気で直す

    mysql> status; -------------- mysql Ver 14.7 Distrib 4.1.20, for redhat-linux-gnu (i386) using readline 4.3 Connection id: 36 Current database: staff2006 Current user: maiha@localhost SSL: Not in use Current pager: lv Using outfile: '' Using delimiter: ; Server version: 4.1.20 Protocol version: 10 Connection: Localhost via UNIX socket Server characterset: latin1 Db characterset: latin1 Client char