2010/06/30

2ボタンマウスで頑張る

;magic_aid.ahk RButton:: ;始点(押下げ時)情報を取得 CoordMode, Mouse, Screen MouseGetPos, xPre, yPre ;ボタンを離すまで待機 KeyWait, RButton ;終点(押上げ時)情報を取得 MouseGetPos, xPost, yPost if (xPre == xPost && yPre == yPost) { ;移動していなければ中クリック扱いにする MouseClick, M } else { ;移動していたら右クリックを送信 MouseClick, R } return

有線マウスでフラストレーションの溜まる生活をしていたため、XPにも関わらず某魔法の様なマウスを買ってしまいました。ドライバーは適当にごにょごにょすればいいのですが、いかんせんボタンが少ないです。

ここ数年、マウスの買い替えで8→5→2とボタン数がどんどん減っていきます。最近では大概のアプリがブラウザのインタフェースに倣っているため、ボタンが多い時は

  • 先頭(Ctrl+Home)
  • 文末(Ctrl+End)
  • MDI(タブ)を閉じる(Ctrl+F4)
  • 戻る(Alt+← or BS)
  • 進む(Alt+→)

などを割り当てていましたが、ボタンが減るたびにこれらをぴたすちおやAutoHotkeyで代用してきました。

そもそもMagic Mouseでは以下の事が出来ません

  • 中クリック(ホイールクリック)
  • ロッカージェスチャ(右押しながら左押し、など)

ロッカーは使っていなかったのですが、中クリックはさすがに厳しい。そこで中クリックと、トレードオフになりそうな右クリックの主な使途を整理してみると

中クリック

  • リンクを新しいタブで開く(リンク上で中クリック)
  • タブを閉じる(タブの上で中クリック)
  • ウィンドウを閉じる(タイトルバーで中クリック)

右クリック

  • 選択したキーワードをGoogleで検索(コンテキストメニュー)
  • 選択した部分のソースを表示(コンテキストメニュー)
  • ページの情報を表示(コンテキストメニュー)
  • Make Link(コンテキストメニュー)
  • ウィンドウの最小化(タイトルバーで右クリック)

20代も後半になってくると、あの小さい最大化ボタンや最小化ボタンを押すのは苦行になってきます。私の目的はウィンドウの最大化や最小化であって、小さいボタンをすばやく押す事ではありません。

と言う事でタイトルバー全体をクリックした場合に動作するようなマクロをAutoHotkeyで組んでいましたが、どちらも高頻度で使うので単純にどちらかを潰すわけには行きません。

そこで、より高反応が求められ、より高頻度で使用する中クリックを右クリックに割り当てることにしました。右クリックを使いたい場合、右クリック中にドラッグしてから離します。

タイトルバーの中クリックでクローズ、右クリックで最小化はマクロが複雑になるので、ぴたすちおに任せることに。

一応これで運用は出来そうですが、今までタイトルバーを右クリックで最小化だったので、最小化するつもりでうっかりクローズとかが頻発しそうです。

また、テキストファイルを新規作成しようとしてデスクトップを右クリックで何も反応が無かったりと既に若干の問題は発生していますが、この辺の運用しながら微調整という「仕組み化」はむしろ楽しい所でもあります。

しかし、今時2ボタンマウスなんてApple製品じゃなかったら壁に叩きつけていると思います。正直依存症に近い。

参考

久しぶりに見に行ったら、流行らせるページが更新止まってますね・・・

2010/06/23

自宅がバレる写真を探す

iPhoneは位置情報を扱えます。便利ですが意図しない個人情報の漏洩もありえます。例えば、自宅で取った写真をネットにアップしてしまうと、意図せずに自宅の住所がバレたりします。意図的に公開したのならいいのですが、意図しない漏洩は問題です。

多分iOSにアップデートしたためだと思うのですが、標準の写真アプリ(カメラではなくビューアーの方)の右下に[撮影地]ボタンが出来ました。前からあった物ならすみません。

位置情報の含まれる写真が地図上にピンで表示されます。ピンをタップすると枚数が表示され、「>」をタップすると一覧が表示されます。

ズームアウトすると近くのピンが一つに合算されるので、日本地図レベルまでズームアウトすれば全部で何枚か確認できます。

私は位置情報は購入後に速攻でOFFにしたつもりだったのですが、余裕で記録されてました。約230枚中145枚です。地図を使うアプリなどでONにしたまま戻し忘れたのかもしれません。

現在[設定] > [一般]を開くとフリーズするので、位置情報の設定を確認できません。iOSのバグでしょうか・・・

位置情報を消す方法は幾つかありますが、対応したアプリで編集する以外に小細工でどうにかなります。

例えば、iPhone上の写真アプリで、プレビュー画面のスクリーンショットを撮るのもありです。

プレビュー画面で1回タップすると、上下のコントロールが非表示になります。

この状態でホームボタン+電源ボタンでスクリーンショットを撮れば、次の三点の効果あります。

  • リサイズ
  • トリム
  • 付加情報(含む位置情報)の削除

リサイズはiPhoneの画面解像度(3GSで320x480)に固定されますが、iPhoneの標準のカメラは結構写真サイズが大きいので、ブログに使う分には重宝してます。

ズームしたい場合はプレビューを適当にピンチ操作で拡大・移動してから撮ります。

ちゃんと確認したわけではありませんが、どうもdropbox経由でiPhone→PCに移した写真も付加情報が殆ど消えていました。

最終的にちゃんと消えているか確認はした方がいいので、FirefoxならFxIFなどを入れておくと便利です。

2010/06/13

Web閲覧時の我侭

iPhoneのsafariは適当な場所をダブルタップすると画面幅にあわせてズームしてくれるのですが、これデスクトップのブラウザにも欲しいですね。

というわけでそれっぽいのを作って見たのですが、色々と無理がありました。もっとスマートな物がアドオンかなにかでどっかに存在しないでしょうか・・・

指定したブロック要素内のパラグラフはフォントスタイルもリセットできたりするといいかもしれません(後述)。出来ればページロードと同時に本文を探して自動でやってくれると尚いいですね・・・

サンプル(Firefox用です。直接開いてもplane text扱いされるので、ダウンロードしてから開いてください。)

他にも、閲覧者の立場として色々なサイトを見ていると、デザインに差がありすぎても読みづらいものです。

  • サイズはピクセルで指定しない。
  • 本文の段落部分は幅がありすぎてもなさ過ぎても読み難いので、ウィンドウサイズに依存して変化するが、最小幅は決めておく。
  • 本文はフォントサイズを指定しない。特に標準サイズより小さくしない。モニタの解像度次第で小さくなりすぎる。
  • 本文はできればフォントフェイスも指定しない。クライアントのブラウザに任せる
  • サイドバーはHTMLソース上、本文より上に来ない(外部ドメインのガジェット読み込みで本文が非表示のまま止まらないように)
  • サイドバーはレイアウト上も左に置かない。ウィンドウ幅が狭い時は表示領域がサイドバーで隠れてしまうので。

などなど、色々「見やすいサイト」のわがままな注文を考えていると、結局Google Readerをサイドバー・ヘッダー無しで表示するのが一番見易いという結果になりました。

一番しっくりくるサイズに毎度毎度、手作業でウィンドウを移動・リサイズするのは正気の沙汰ではないので、Win+→で画面右端に指定幅で高さ一杯になるようなマクロをAutoHotkeyで組んでます。

ブロガーのテンプレートはゼロから組み上げても、アップロード時に色々余分な要素が勝手に追加されるので、自分のブログはこれらの条件を満たしていません。

しかしここまで閲覧環境を固定すると、もうPCである必要はないので、コンシューマ(消費)用途としてiPadが欲しいですね。デスクトップはデベロップ(開発)用途でないとオーバースペックかもしれない。

2010/06/11

iPhone3GS解約タイミング

6月8日にアクセス数が一時的に増えていたので何かと思ったのですが、AppleのWWDCの発表を受けて、iPhone4の料金を検索する人が多かったみたいです。

最近のiPhoneの維持購入費で「最近の」などと書いてしまったので、参照していく方が居たようです。「3GSの」としておけばよかったのですが、6月8日時点でiPhone4の料金はsoftbankから発表されていないので、肩透かしだったかもしれません。

2010年06月11日現在でも料金発表があったのか知りませんが、わかっている情報として、乗り換える場合の解約金についてメモしておこうと思います。ただし、私は3GSを購入して1年も経っていないので4を買うつもりが無く、あまりきちんと下調べしていません。

1年後に4S(?)が出て初期ロットの不具合が修正されたあたりで丁度2年縛りが終わるので買いなおすかもしません。

ソフトバンク、ホワイトプランと月月割のズレを修正 | iPhone 3G Wiki blog

少し前に、月月割りと2年契約のズレが解消されたとの報道がありました。「2年縛り」にも幾つか種類があるのですが、ここでは、私が加入している「iPhone for everbodyキャンペーン(~2010.01.31)」の2年縛りを前提に話します。

softbankは通信料を毎月払う代わりに、端末代の販売奨励金相当の金額を割り引く「月月割り」があります。この月月割りは(なぜか)契約開始月の翌々月から開始されるので、2年契約の終了タイミングとずれるのです。

そのため、2年契約の更新月以外のタイミングで解約した場合の違約金に相当する「契約解除料金」を支払うか、月月割りの残りを(1~2か月分)諦めるか、どちらにせよ多少の出費を覚悟しないと2年でキレイに解約することが出来ません。

残念ながら契約時に説明を受けているはずなので、契約した以上、合意したと見なされます。理解できなかったとしたらこちらの落ち度になります。(似たような料金問題で裁判起こしたニュースとかあった気もするので、ダメ元でゴネるのもアリかもしれませんが)

a~cの各タイミングで支払うペナルティが異なってきます。「解除料金」については追加で支払う料金です。「月月割り」は割引が受けられなくなる、という意味での「見えない」ペナルティです。

また、私は本体一括で購入してしまいましたが、分割で購入している場合、契約解除と同時に未払いの分割をいっぺんに払う必要があるそうです。キャンペーンによっては本体料金を割り引くものもあるので、途中解約でそれらの割引が帳消しになるのなら、本来の割引分が上乗せされて、予想外の支払いになる可能性もあります(未調査)。

大概の場合、キャンペーン加入により分割代金が割り引かれる場合と、一括購入でポイントなどを付けた場合の割引額は同じ程度になります。

例えば67,600円がキャンペーンで1万円引かれて、57,600円になり、24回分割で2400×24回になる場合。一括で購入したとしても、商品券でキャッシュバック+家電量販店のポイントを合計すると1万円分割引相当になり、一括の支払額は57,600円程度になります。

後から面倒な計算をする必要がなく、ツブシの利くポイントでキャッシュバックされるので、手持ちが許すなら、一括の方が気は楽だと思います。

さて、ズレ修正後の契約では、これらの問題が発生しないように、「契約更新月」と見なされる期間が延びています。

その為、Bのタイミングで解約するとペナルティなしで解約できる様です。

ただし、これは2010年05月28日以降の契約者の話なので、それ以前の契約が遡及されて改善されるものでは無いようです。

要するに旧契約した人は、契約更新月に2か月分の月月割りを捨てて3,840円(*)を諦めるか、2回目の契約更新月(49ヶ月目)まで待ってペナルティなしにする、実質「4年縛り」に甘んじるかどっちかです。
*:月月割りの金額は機種(3G/3GS,8GB/16GB/32GB)やキャンペーンによって異なります。

2010/06/02

タイムリーに残念

アゴラブックス 電子出版プラットフォーム

早速昨日書いた話の具体例が一件増えてしまいました。

最近アゴラのコラムはよく読んでいるので、アゴラブックスの開始は非常に楽しみにしていたので、逆に残念です。

トップページがhttpsで表示不可能な上にログインフォームがトップページ内に埋め込まれています。

私のPCのFirefoxから「新規会員登録」をクリックするとなぜかプレーンテキストの様なページに飛ばされてしまいます。iPhoneのsafariからだと同じテキストの内容がインラインポップアップで表示されます。

インラインポップアップ上で、[会員規約同意]ボタン押下後の[新規会員登録]画面もhttpのトップページ上のインラインポップアップで実装されています。非セキュアなフォームで次の入力を求められる状態。メールアドレス、パスワード(アゴラブックスの)、指名、生年月日、居住地(国単位ですが)、支払方法。

ログインフォームはformのaction先が相対パスなので、間違いないと思うのですが、登録画面のformはトップページ内には埋め込まれておらず、インラインポップアップがどのように処理されているのか、iPhoneからは確認しづらいのでわかりません。

それ以前にインラインポップアップは別のセキュリティ上の問題があるので、好ましくなかったと思うのですが、詳細は失念。

課金どころか登録もしていないので、直接の問い合わせは面倒くさくてしていませんが、どっかから指摘が入って改善されないでしょうか。

iPhoneの維持費を最低額で抑えられるか

Google ウェブマスターツールというものをすっかり忘れていたのですが、それほど分析を行わないならAnalyticsはオーバースペックなので、ウェブマスターツールで必要十分ではないかと思います。またバックリンクが一覧できるのもウェブマスターツールの便利な所かと思います。

さて、久しぶりに見たウェブマスターツールで「iPhonoe 維持費」での検索からの閲覧開始が現在本ブログ内で1位となっており、Googleの検索結果でも平均2.5位となっていました。前者はAnalyticsでも判明していましたが、後者は知りませんでした。

そこで検索結果1位を見たところ、Yahoo!知恵袋だったのですが、この回答がちょっと疑問だったので引用というかケチを付けたいと思います。

最近iPadの発売も伴って、知り合いにもsoftbankの料金体系に興味を持つ他キャリアユーザが増えてきました。私が以前から月420円強で利用している事は喧伝していたのですが、興味が無かったが故に完全に右から左だったようで、改めて相手からの質問に答えたところ驚かれました・・・

ベストアンサーが主に通信費についてなので、通信費の話をします。前述の420円も通信費です。私は本体は一括で購入しましたので、24ヶ月で減価償却すると約1,960円/月ぐらいだと思われます。

凡例

×
ほぼ確実に間違い、もしくは質問者に対する回答としては的外れ
間違いの可能性が高いが、私も詳細は確認していない
特に問題なく回答を支持できる内容

回答全体△

まず全体として個人的な利用状況を添えた質問をしているのに、統計的な平均値を持って否定から入る答え方は、回答者自身に無意識のバイアスが掛かっている物と思われます。マイノリティはゼロでも不可能でもなく少数は存在しているという意味です。

この手のイッパンロン原理主義は個人的に辟易する事が多いので特に注意喚起したい所です。

ブラウザに関して×

・利用するブラウザ(Safari)はフルブラウザ(PC用ブラウザ)であるため →月に2 010ページ程度閲覧するだけで上限になります。つまり1ページでも見れば最低額は無理と考えてください。

この回答の前に質問者にWi-Fi環境があるかの確認が必要です。3G網でパケット通信をすれば、解答の通りですが、Wi-Fiが利用可能ならこの限りではありません。

通学・通勤中の利用を想定すると、自宅、職場、最も利用頻度の高い最寄駅にマクド(現在ならスタバも)あるかによって大きく異なります。駅のホームでの待ち時間にWi-Fi圏外で利用を抑えれば3G網の利用はかなり抑えられます。徒歩・自転車搭乗中の利用はiPhoneどうこう以前に問題外なので省きます。

アプリの通信△

・Google Maps(地図)等パケット通信を使うアプリも相当あるため →地図のパケット代も上記と同様。YouTubeやiTunes Storeは論外(1回見たり聞くだけで超えます)です。また、ゲーム等のアプリもアップデート等の確認のため自動的にネット接続されます。(中には使わなくても勝手に接続されるアプリがあります)

全てのアプリにパケット利用が義務付けられているわけでもないので、「利用するアプリがパケット通信を行うか事前に確認してください」という視点で注意喚起する事が重要だと思います。

オンラインのデータを利用した乗り換え案内や地図表示なら当然パケット通信は発生しますが、[設定]>[Wi-Fiネットーワーク]>[接続を確認]をオンにしておけば、3Gエリアでパケット通信が発生するタイミングは解ります。多分。未設定の繋がらないAPであっても一覧が出ます。圏内に一つもAPがなかったら無理かも知れません。

メール送受信△

・メール自動受信を行うため →iPhone専用アドレス(i.softbank.ne.jp)はメールを受信するために、パケット通信を定期的に行います(5分 02時間程度に1回)。このパケット通信料は有料(新着メールがなくても1回数円程度かかります)です。つまり自動メールチェックを行うのにも相応の通信料がかかります。またソフトバンク共通アドレス(softbank.ne.jp/一部契約者はvodafone.ne.jp)についても、他機種では使える無料のメール無料通知(選択受信)の対象外(iPhone自体に受信選択機能がないため、全メールを自動受信にせざるおえないためです)となるため、例え迷惑メールであってもメール受信料がかかります。

「iPhone専用アドレス」はi.softbank.jpの誤植だとして話をしますが、i.softbank.jpの「着信通知」はパケット代は掛からないと思われます。恐らく回答者はメールアプリで定期フェッチした場合を想定しているのではないかと思いますが、通知だけ受け取り、フェッチもプッシュもオフにして、Wi-Fi圏内で手動受信すればパケット使用料は発生しないはずです。

逆に言うと、i.softbank.jpは定期フェッチしなくても着信通知は受け取れます。本当に通知だけですが、質問者の「メールをあまりしない」という条件提示から考慮すると、低頻度で発生する緊急時だけその場で受信箱を開く分には二段階定額の最低金額でおされられる可能性も十分にあります。

「迷惑メールであっても」の件は長くなるのでここで詳細は書きませんが、i.softbank.jpのアドレスを十分に長くして、Gmail経由にするなどの対策を取る事も可能です。そもそも携帯のアドレスはキャリア依存である現状、利用しないほうが良いと言うの持論です。

購入後に設定無しでプッシュ配信されるといったメリットと、スパム対策や転送が低能な有料メールにベンダーロックイン(キャリアロックイン?)されるデメリットのトレードオフになります。私は「iPhoneであれば」キャリア専用メールから開放された利用が可能というのが購入目的の一つになりました。

現在、私はGmailのアドレスを「携帯電話のアドレス」として知り合いに周知し、フィルタで転送してiPhoneで着信通知だけリアルタイムに受け取っています。自宅や職場で着信通知を受け取ったら、PC上のブラウザやメーラから閲覧・返信が可能、「同期」の必要すらなく一元管理が可能、という利点もあります。

もちろん利用者を選ぶ特殊な環境ではありますが、質問者の状況と意向を鑑みると検討に値すると思います。

メール対策×

◆3G回線でネット/メールを一切しない(ネットの設定をwi-fi専用に変えてしまう) この設定を行うとソフトバンク共通アドレスメールの受信は出来ません。(ソフトバンク共通アドレスは3G回線でしか使えません)またiPhone専用アドレスは無線LANエリア内で受信可能です この方法だと確実に最低料金で収まりますが....正直通話機能とカメラの有無を除けば...iPod Touchを持っているのと何ら変わりません。
  • 利用ゼロではなく、最低料金に抑えたい(多少の利用は許容する)
  • softbank同士ならキャリア専用メールでも通信費が掛からない
という視点が抜けています。(次項もあわせて参照)

他の回答と一緒で、質問者の周りにsoftbankユーザが多いかどうかという、「質問者の環境」が大きく影響します。

「正直通話機能とカメラの有無を除けば」という部分には逆に賛成したのですが、iPad+Skype(+ヘッドセット)を利用する事で「電話回線を利用しない」というオプションが現在可能かと思われます。

料金構造に革命を起こしたホワイトプランでさえ、通話料金は980円(+通話料)です。対してSkypeは一カ国内定額で695円です。交換機経由の電話機能の利用を「強制されなくなった」という点でもiPadは大きいと思っています。

i.softbank.jp宛に特定のデータが埋め込まれたメールを受信したら、Skypeを自動起動する、というブリッジ機能があったら、電話のリアルタイム着信も可能になりませんか?

脱線しました。

メール対策2×

◆メールをソフトバンク共通アドレス一本化し、iPhoneアドレスは使わない。(設定もしない) まだ、ソフトバンク共通アドレスはただともメールも使えるのでソフトバンク同士、ディズニーモバイルとは無料で使えます。 ただし、選択受信機能はないこと、デコレメールは送受信とも出来ない事は注意してくださいね。

今度は逆に極端なキャリアメールに偏重した利用方法を提示されています。

両者の良いところを取れば、

  • softbank利用者にはキャリアメール(softbank.ne.jp)を周知する
  • 選択受信したいその他ユーザにはiPhoneメール(i.softbank.jp)を周知する

という対処が可能です。

悪い所を掻い摘んだ否定意見を二つ並べられた場合に、質問者がこのような次善の「良いとこ取り解決策」に思い至るか心配です。

また脱線ですが「デコレメール」に関しては存在そのものが懐疑的です。要するにあれは遥か昔から存在する「外字」だと思っていますが、むしろ現在なら

  • HTMLメールに
  • Base64エンコードした画像を
  • データスキームで埋め込む

という既存技術による実装で実現可能なはずです。あとはそれをシームレスに利用可能な(画像を変換候補に入れるなどの)UIだけ(すでに実装されているように)作りこめばいいはずです。それを「デコメ」などという奇天烈な汎用性のない物にするから、ガラパゴスなどと揶揄されるのではないでしょうか。

HTMLのパーサはブラウザ搭載していれば実装していますし、Base64エンコーダはメールへのファイル添付で必要になるはずなので実装していると思います。あとはブラウザやメーラにデータスキームの表示機能を実装するだけで(UI以外は)クリアできると思うのですが。

デコメどころか絵文字すら殆ど使わないので、これに関しては完全に憶測で書いてます。

マルチメディア利用○

◆インターネット・地図・iTunesStore等パケット通信料が必要なものは絶対に使わない。 1回でも使うと最低額は確実に不可能です。 また、多くの方がハマってしないますが、MySoftBank〈請求料金の確認・オプション等の変更〉はiPhoneではなくパソコンで行ってください(←iPhoneではこれらの確認もパケット料がかかります)

テキストなどに比べて画像・音声・動画などは通信されるデータ量が圧倒的に多い、というのが肌感覚で解らない人は居ます。いわゆる親戚のオバチャン系の人です。

400字詰め原稿用紙10枚の方が、30秒の動画よりも受け手のインプットには時間が掛かりますが、人間の負担とコンピュータの処理量は比例しない事が理解されていません。

パケット通信の料金を説明するに当ってこの点は特に強く念を押しておく必要があると思います。

位置情報△

◆カメラの位置情報は切ってください iPhoneのカメラは位置情報をONにすると位置情報が保存され、iPhoto(Apple純正の写真ソフト[Mac専用])などでは撮影地ごと管理機能が使えて便利ですが、、、この位置情報の確認にはパケットを消費しています。そのためこのような細かな部分も切ってください。その他のアプリ等でもアップデートや位置情報等でパケット代を勝手に消費する事があります。それらの機能には充分注意して使ってください。

位置情報はGPSの利用なのでパケット通信を行わなくても現在値を取れる。との認識で居ますが、確認はしていないので、×ではなく△にしました。

逆にGPSのないWi-Fi版iPadでもある程度絞れるので、IPやAPの情報から位置を類推しているのかもしれませんが、その場合Wi-Fiなのでどっちにしろ3Gの通信料は掛からないと思います。

GPS非搭載のガラケーでも位置情報を半径数kmで絞れますが、これは基地局の情報などを利用しているのでしょうか?基地局とのコネクションが確立した時点で位置がわかるのか、そこからパケットが発生しているのかは存じません。

どちらにせよ位置情報を元に地図などを表示すると大量にパケット通信を行うので、そちらの方が注意喚起すべきだと思います。

ビジュアルボイスメール○

◆ビジュアルボイスメール(iPhone用の留守番電話)は使わない ボイスメールの名前の通り、留守電センターに届いた伝言(音声)をご丁寧にパケット通信で送信してくれます(音声なのでかなりのパケット通信料がかかります)。 ご存知かもしれませんが、iPhoneでもソフトバンク標準の留守番電話(留守電センター保存)は使えます。しかも他キャリアと違って基本料無料で使えますよ。(再生には通話料がかかります。)

指摘はまっとうですが、これは「パケット通信の発生するアプリ」問題に入れてしまっていいのではないかと思います。ただ、通話機能の中にある1メニューなので気付かないユーザに対して啓発的な注意喚起としては妥当だと思います。

質問者は電話をあまり使用しないとあるので、ビジュアルボイスメールのオフと留守番の代替としてのメール利用環境が整えば、問題ないと思います。

また個人的な感想ですが、(ビジュアルでない方の)留守番電話機能は発信者がsoftbankユーザでも、留守録再生がホワイプランの無料通話に入らないので、ぼったくられてる感はします。留守番電話センターはsoftbanのセンターではないのでしょうか?

それ以前に、用件を伝えたいなら2~3回掛けて繋がらなかった場合はメールしてくれと思います。特にsoftbankユーザ同士の場合はメールの方が安上がりです。

ビジュアルボイスメールも名前に反して、メール機能に音声添付できる物ではないので、この辺どうにかならないものでしょうか。直接音声ファイルを送信しないにしても、音声認識で文字起こししてメール作成できたら短い用件の場合はかなり楽になると思うのですが。

ベストアンサー以外○

無料アプリは広告が入るのでむしろパケット通信が発生する、という視点が新鮮でした。私が質問者ならこの方をベストアンサーにしたい。

2010/06/01

ログインフォームのセキュリティ

利用中のWebサービスに関してセキュリティ上の懸念点に気付いた際に、専門家でなくともユーザサイドから啓発を試みるか、受け入れられなかった場合に利用中止も視野に入れた選択を行う必要があるか、という思案中(現在進行形)の話です。

Web上で機密データを送受信したい場合、httpsによってセキュアな通信が可能です。セキュアな通信を行う理由、逆に言えばセキュアでない場合に行われる不正は「盗聴」と「改竄」があります。

httpsの効能として私は主に盗聴を想定していました。例えば以下の様な形式でログイン処理を行う場合です。

  1. ユーザは、1-1のGET処理によってサーバにログインフォームの表示を依頼します
  2. サーバは、1-2のレスポンスにてログインフォームの埋め込まれたページを返します
  3. ユーザは、2のPOSTによってログインフォーム上に入力されたユーザIDとパスワードを送信します

「盗聴」を懸念する場合、ユーザからデータの送信時、つまり上図2のPOST通信がhttpsになっているか確認します。これで送信データがhttpsによるセキュアな通信で保護され、悪意ある第三者による盗聴が行われなくなり安全です。

と思っていました。

実際にはWeb上のセキュアでない通信は「改竄」が可能なので、「盗聴」を心配する場合においても、1-1及び1-2の時点でhttpsによるセキュアな通信が行われているか確認しなければいけません。

例えば、ログインフォームが自由に改竄可能なら、以下の様にhttpsを使わない送信フォームに掏りかえることが可能ということです。

正常なログインフォーム

<form method="post" action="https://example.com/login" ...

改竄されたログインフォーム

<form method="post" action="http://example.com/login" ...

それどころか自由に改竄可能なのであれば、そもそもの送信先すら変更が可能ということになります。

正常なログインフォーム

<form method="post" action="https://example.com/login" ...

改竄されたログインフォーム

<form method="post" action="https://phishingexample.com/login" ...

送信先そのものが、悪意ある第三者の用意したサーバでは、セキュアな通信が行われても何の意味もありません。

もし両者のあわせ技で来られたら、悪意ある第三者のサーバに送信する途中で、さらに別の悪意ある第四者?にまで盗聴される危険性すらあります。

httpsの使用時にきちんと暗号化されたセキュアな通信が行われているか、いくらテストをしたところで、そもそもの前提が崩されたら意味がありません。テストの結果が保障できるのは、正しいサーバにhttpsによる通信が行われている場合に限ったものです。

ここまでの話を前提とすると、ログインフォームが埋め込まれたWebページは表示する段階において常にhttpsを利用すべき、となります。

例えばmixiや、はてなでは、「https/SSL(セキュア)」に対して、httpの場合を「標準」と表示されていますが、むしろ機密データの送信はhttpsを「標準」とすべきではないでしょうか。

このような問題を把握した際に、私が実際に利用しているとある金融商品の取り扱い業者のサイトで心当たりがありました。その業者のWebサイトではトップページにログインフォームが埋め込まれています。

トップページは表示するだけであればセキュアである必要性は低いので、ブックマークにはhttp://で始まるURLを登録してあります。しかしログインを行おうとした際にアドレスバーから直接https://に書き換えてみたところhttp://にリダイレクトされたのです。

ソースを覗いて見たところ、プロトコルがhttps://でアクセスされた場合、http://で表示しなおすようなJavaScriptが記述されていました。またformタグのactionプロパティに設定されたデフォルトの送信先がログインフォームではなく、「JavaScriptをオンにしてください」という旨の記述されたエラーページでした。さらにこのページへのパスは相対パスで書かれているため、恐らくhttp://で通信される事と思われます。

つまり選択の余地無くhttp://しか使えないのです。送信ボタンクリック時にJavaScriptでactionの値を書き換えていると思われるため、http://へのリダイレクトを防ぐ目的でJavaScriptをオフにすると、送信先がログインフォームでなくなった上、パスワードがhttp://で通信経路を流れる事になります。受け取る側のページがただのWebページなので何も処理はしないのでしょうが、送信されてしまった以上、経路上で第三者に盗聴されるかもしれません。

この件について、前述の様な解説を簡略化したものを付け加え、こちらのアドレスとQ2への引用も付け加えサポートにメールしてみました。

まとめると以下の様な回答が来ました。

  • パフォーマンスのためにトップはhttp://にしている
  • 内部的には暗号化されている
  • 暗号化を確認したければ HTTPヘッダーの解析ソフトなどを利用して欲しい

「内部的に」というのは、表示時のアドレスがhttp://だが、送信時のPOST先はhttps://になっているという意味だと思われます。

また、HTTPのヘッダ情報を見ろという指示はサポートセンターの受付から直接得られる回答ではないと思うので、多少なり技術部門の関係者に質問が届いたのであると思われます。

私の拙い説明を見て真摯に対応してくれた様子には感謝しますが、もし技術部門に質問が回った末の回答がこれだとしたら、こちらの意図した懸念が全く伝わっていないと思われます。

1通目のメールではログインフォーム以外にも、問い合わせフォームがそもそもセキュアな通信で送信されているのか?という2点の質問を一緒に送ってしまったため、2通目ではログインフォームの問題に主眼を置いて、表現を変えつつ再度質問をしました。

その際に、大手銀行のオンラインバンキングページではトップページにログインフォームを埋め込まず、「ログイン」と表示されたボタンはhttps://で表示可能なログインページへの遷移のみ行う、として幾つかの銀行サイトのURLも併記しました。

2通目の回答は、別途担当部署にて確認後回答をするのでしばらく待って欲しいとの事でした。気になったのは質問の案件名が「送信時の暗号化」と題されていた事です。懸念すべき点は「表示時」なのですが。

丁度ゴールデンウィークも挟んだので、回答を気長に待っていたのですが、1ヶ月経過しても返事が無いので催促の3通目を送りました。

そちらの回答をまとめると以下になります

  • 問い合わせフォームの暗号化について検討中である
  • 当該事由における情報漏洩は報告されていないが、セキュリティー強化をすべく、今後対応を進めていく所存

「ついて」という表現から、問い合わせフォーム以外にもログインフォームの件を把握しているとも読み取れますが、直接の言及の無さと2番目の回答の具体性の無さから、やはりログインフォームに関しては「何が問題なのか」が伝わっていない感じがします。

今のところWebページ上のログインは必ずしも必要ではないので利用を避けています。しかし最初のメールから1ヵ月半が経過した現在も、ログインフォームの仕様に変化がない状態です。もう少し様子を見て何もアクションが無いようでしたら、再度確認したうえで、最終的にサービスの利用を停止する(退会)という選択も考慮しなければならないのかと考えています。

参考

SwingLine

ZigZagというチャートがあります。値動きの山を名前通りジグザグに表示してくれるチャートです。

このチャートのジグザグ加減は画面サイズに依存するのかと思ったのですが、直近12本分(パラメータExtDepthで変更可)の最高値/最安値を更新したかどうかを見ているぽいです。

そこで現在表示してる領域(*)の24%(パラメータturningWidthで変更可)を基準にジグザグ線を引くチャートを作ってみました。
*:チャートの表示領域は表示範囲内の最高値と最安値によって変化します。

表示領域の高さが5%以上変化すると再描画します。後ろの方にスクロールしてコンテキストメニューから「更新」をすれば見ている範囲に応じて再描画されると思います。

プログラムの練習問題にあるような最大値と最小値の取得などの応用です。単純な配列内から最大値と最小値を探すのとは違い、一定期間の方向性(上昇中なのか下降中なのか)の判断が必要になります。

大体似た線を引くのですが若干違いの出る場所もあります。

どちらかというと描画するだけならゴリゴリif分岐していけばなんとかなるんですが、起動直後にWindowサイズが取れないとか、起動直後と起動後にチャートをリセットした場合で初期化される変数が異なるなどの環境要因の所為でいらない分岐が増えます。

デフォルトのMetaEditorは日本語の入力がおぼつかないので、コメントを英語で書いてますが、内容はかなり怪しい物です。

ソース:SwingLine.mq4 - Google Code(DL:SwingLine.mq4)