電子メールソフトの機能


目次

電子メールソフトとは
電子メールソフトの機能
Windows95上のメールソフト

一つ前へ


電子メールソフトとは

 電子メールとは簡単に説明すると、電子化されたメッセージ、多くの場合は単なるテキストファイルを宛先に向けて届ける機能ですが、その機能を果たすのが電子メールソフトです。
 とはいっても、現在使われている電子メールソフトは、多くの場合、相手先の電子メールソフトと直接会話をしてデータ送信をするわけではない。電子メールソフトは、ユーザから送信を指示されたテキストを、最寄りのメールサーバまで送り出すだけにすぎない。あとはそのメールを受け取ったサーバが、宛先で使用しているメールサーバまでメールを転送するのである。
 逆にメールを受け取る場合には、パソコンで使用される電子メールソフトの場合、届いたメールを直接受け取ることはない。自分のアカウントがある最寄りのメールサーバまで届いて保管されるメールを、メールソフトの側から問い合せることで読み出すのである。
 自分のコンピュータ上の電子メールソフトからメールサーバにメールを送る場合には、SMTP(Simple Mail Transfer Protocol) と呼ばれるプロトコルが使用される。また、メールサーバに届いたメールを自分のコンピュータに読み出す場合には、POP3(Post Office Protocol3) と呼ばれるプロトコルが使用される。
 すなわち電子メールソフトとは、これらのプロトコルを適切に処理し、利用者が操作するためのユーザインタフェースを持ったソフトウェアだ、ということがいえる。



電子メールソフトの機能

 電子メールソフトの機能をもう少し詳しく説明します。
 まず必要最小限の機能として、メールサーバと通信する機能があげられます。すなわち、送信時は指定されたメールサーバ(SMTPサーバ)に対して正しくフォーマットされたデータを送信する機能であり、受信時はPOPサーバから正しくデータを受信する機能のことです。
 ここで注意したいのは、正しくフォーマットされたデータ、という点です。というのは日本国内では、英語圏に比べて特に注意しなければならない点があるからです。日本語コードの問題です。
 メールの転送を行うプロトコル、SMTPプロトコルは、その名が示すように非常に単純なプロトコルです。このプロトコルではメールの本文は一部の例外を除けば特別なエンコードを加えられることなくテキストそのままの形で送信されます。これだけならいいのですが、送信されるデータは7ビット幅、すなわち8ビット目が落とされた形で送信されることになっています。これにあわせて、現在インターネット上使われる最も一般的なメール転送プログラムである sendmail では、通常転送するデータの8ビット目をマスクして送信するようになっています。
 この事実は、現在最も一般的に使われている Shift-JIS(MS-KANJI) コードや、UNIX 上で一般的な EUC コードのままでデータを送信できない、ということを示しています。つまり日本語のテキストを正しく電子メールとして送信するために、データ幅が7ビットでも送信できるようなコード変換を行う必要があるということです。
 電子メールの重要な機能の一つに、ファイルの添付機能があります。これは「電子メールの機能は、相手にテキストファイルを送る機能である」という点を応用しているにすぎません。つまり任意のファイルを電子メールで送信可能なテキストファイルに変換して送り、受け手の側でそれを逆変換して元のファイルに復元する仕組みがあれば、任意のファイルをメールとして送信することができる、という原理です。
 以上のような、任意のファイルをテキストファイルに変換する、あるいはテキストファイルから元のファイルに復元する、といった作業も電子メールソフトの重要な作業です。これまでのことをふまえて電子メールソフトの機能を整理すると。

1)ユーザとの対話を行うユーザインターフェース機能
2)メールサーバとのデータ送受信を行うプロトコル(SMTP,POP3)処理機能
3)SMTPで問題なくデータ転送するための日本語コード変換/復元機能
4)バイナリファイルを添付する際のエンコード機能・デコード機能

となります。
 日本語テキストやバイナリファイルのエンコード方式には、いくつかの方式がありますが、ここでそれらの方式を説明します。
 インターネット上で日本語メールが使われ始めた頃は、UNIX ワークステーション同士でのメール転送がメインでした。UNIX ワークステーション上では、日本語コードを EUC コードを使って表現することが多かったのです。EUC コードは、JIS-X0208 で定められた漢字コードの上位バイト、下位バイトともに8ビット目をセットすることで、通常のコードとの区別をするものです。当然のことながら8ビット目がマスクされるインターネットメールでは、このコードをそのまま送ることはできません。
 この問題を回避するために、日本語のテキストに関しては「ESC(0x1b) + "$" + "B" 」および「ESC + "(" + "B" 」で挟んだJISコードを送る、という方法がとられてきました。JIS-X0208 で定められたコードであれば、上位バイト、下位バイトともに 0x21 〜 0x7E の範囲にあります。厳密にいえば、コントロールコードである ESC コードをメールのテキストに含める問題は残るものの、多くの場合、正常に日本語データを送ることができるのです。
 現在ではMIMEと呼ばれるインターネットメールの拡張により、これ以外のエンコード方法も登場してきました。BASE64 や Quorted Printable と呼ばれるエンコード方法がそれで、メールヘッダ部分に含まれる日本語コードについてはこのコードを使う場合も増えてきました。とはいえ、これらのエンコーディング方法は主にバイナリファイルの添付の際に使われる。JIS コードによるエンコード方法は、MIME対応以前の電子メールソフトにおいても読むことができるため、より一般的に利用可能というメリットがあります。
 BASE64 エンコーディングとは、8ビット単位で示されるデータ列を6ビット単位に切り、その6ビットについて64文字の利用可能キャラクタを割り当てる方式です。利用可能キャラクタとは具体的にいうと、大文字の A〜Z, 小文字の a〜z, 数字の 0〜9, それに "+" と "/" です。

 この方法を利用した場合、変換元のデータが3の倍数バイトの場合にはデータビットに余りが発生しない。3バイトというのは24ビットであり、6の倍数でもあるからです。つまり元データ3バイトに対して、変換後のデータは4バイトが対応する。
 変換元のデータが3の倍数バイトで示されない場合には、6ビット未満の半端なデータについては0をパディングして変換後のデータを計算する。また、6ビットすべてデータが存在しない場合には、変換後のデータとして "=" を採用することになっています。
 Quorted Printable はさらに単純なエンコード方法で、表現できないキャラクタをすべて16進数2桁で表現するだけである。デコード時に一般の文字と16進数の文字を区別するため、"=" を付加することでエンコーディングは終了です。コントロールコードや7E以下の一般の文字コードについては、そのままの形で通すことができる。そのため、エンコード後のデータサイズは元データによって左右されます。
 BASE64 や Quorted Printable は MIME によって取り入れられた、いわば純正エンコーディング方式であるが、一般のメールソフトではこれ以外のエンコード方法もいくつか存在する。これはたとえば UNIX であれば uuencode といったように、メール用とは限定されないが、プラットフォームごとに存在する標準的なエンコード方法をサポートしているためです。
 こういったエンコード方法には、今述べた uuencode の他に、Macintosh における BinHex などのフォーマットがあげられます。MS-DOS においては有名なフォーマット方法として ish フォーマットがあるが、ish をサポートした電子メールソフトはほとんどありません。

Windows95上のメールソフト

●Microsoft Exchange
 Windows95に標準で添付されている受信トレイアイコンには、インターネットメールを送受信する機能が備わっています。それがこの Microsoft Exchange です。
 Windows95のデスクトップから受信トレイのアイコンをダブルクリックすると、Microsoft Exchage が立ち上がる。Windows95のインストール後の最初の立ち上げ時には「受信トレイセットアップウィザード」と呼ばれるプログラムが立ち上がってきます。あとは質問に答えていけば自動的にメールの設定ができる仕組みです。とはいえ、 Microsoft Exchange は FAX 送受信機能など、メッセージ全般を統合化したプログラムであるため、他のメールソフトでは必要のない設定をここで行わなくてはならない。純粋に POP クライアントソフトとしてみると、設定は煩雑ともいえます。
 さらに問題な点は、SMTP サーバと POP3 サーバの設定が別々にできないことです。もう一つ気になる点は、メールの返信時のインデント機能です。届いたメールに返信するとき、相手のメールのテキストを引用したい場合に ">" を行頭につけたりすることをしばしば行う。多くのメールソフトはこれを自動的に行う機能を持つが、Microsoft Exchange にはこの機能はない。どこまでが引用かまったくわからなくなってしまう。また、動作が重い点も不満な点のひとつだ。

●Microsoft Internet Mail&News
 Internet Explorer3.0 日本語版と同時に発表されたPOP クライアントソフト、ユーザインターフェースを IE3.0 類似にして操作性を高めている。Microsoft Exchange と異なり、POP クライアントに機能を限定しているため、動作は軽くなっている。しかし、漢字コードのエンコードで重大な問題(Shift-JIS コードがそのまま流される) を抱えているので、なるべく使わないほうがいいでしょう。

●Microsoft Outlook Express
 Internet Explorer4.0 日本語版と同時に発表されたPOP クライアントソフト。Microsoft Office97 にも同名の Outlook Express97 があるが、異なるプログラムです。POP クライアントソフトとしてかなり完成度が高くなっていて、他のメールソフトと遜色ないレベルになっています。

●Eudora Pro
 Eudora Pro は Windows/Macintosh 両者のプラットフォーム上で広く使われている POP クライアント製品です。米QUALCOMM製のソフトウェアを(株)クニリサーチ・インターナショナルが日本語化した。シェアウェアやフリーウェアが多いなかで、唯一といっていいほどの製品版です。設定によっては、Shift-JIS コードでメールテキストが送り出されるため注意が必要です。(Shift-JIS コードを使うときは、サイト内だけのメール運用に限るべきです)。

●AL−Mail
 中村匡志氏の作によるシェアウェアです。使い勝手は抜群にいいのですが、読み込まれたメールが1本ごとに保管されるので、管理面では一長一短があります。

●電信八号
 石岡隆光氏の作によるプリーウェアです。シンプルな画面構成が特徴です。ダイヤルアップIP接続に特化した回線制御機能は、ダイヤルアップでIPプロバイダを利用するユーザにとっては便利です。

●Winbiff
 (株)オレンジソフトによるPOP クライアント・ソフト。シェアウェアの形態で販売される。他とは異質のユーザーインターフェースをもっていますが、特につかいづらいわけではなく、あくまで好みの問題といえるでしょう。

一つ前へ