̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ IT ニュース&コラム 2012/8/6 通巻582号 ソフトウェアデザイン館 Sage Plaisir 21  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄                        News and Column  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄   締め上げ暗号分析に対抗するリズムゲーム型暗号システム SISL 2012年 7月 19日、アメリカの神経科学者と暗号専門家の合体チームが 締め上げ暗号分析に対抗できる暗号の方法、Serial Interception Sequence Learning (SISL) を開発したと発表した。    締め上げ暗号分析(Rubber-hose cryptanalysis)とは、    暴力、買収、脅迫などによって強引にパスワードを入手    する方法である。 今回発表した方法では、パスワードを    知っている人であっても、パスワードを他人に教える    ことができないため、締め上げ暗号分析に対抗できる    としている。    パスワードは、キーボードの並びに合わせた S,D,F,J,K,L    の6文字を連続しないで30文字ならべたもので、    コンピューターによって作られる。 このパスワードを、    リズム・ゲームの要領で記憶する。 ただし、ラウンド・    クリアするには、ゲーム中に記憶したパスワードを入力する    必要がある。 認証するときは、おそらく、ランダムに    途中からリズム・ゲームが開始され、パスワードを    覚えている可能性がある値以上の正解率であれば、認証する。 リズム・ゲームは、ゲーム用にアレンジされたリズムが入っており、 プレイヤーは、そのリズムを覚えている。 そのリズムは、ゲームの 難しさを調整するために、法則性が無いものも混ざっているが、 プレイヤーは覚えているものだ。 こうして覚えたリズムは、○小節目のリズムを答えろ、と言われても 答えることはできない。 何小節か前から曲が流れれば、答えること ができる。 その何小節か前の部分(一見すればランダムな並び) は、締め上げ暗号分析の解読者(盗もうとする人)は知らないので、 答えられないというわけだ。 問題は、パスワードの記憶に 45分もかかることだ。 よほど重大な ことを守ることにしか使えない。 また、認証には30文字を入力する 必要があるため、ある程度の時間がかかる。 1分は、かからない だろうが、パソコンのパスワードのように、数秒で終わらないと不便に 感じるものには使えないだろう。 ならば、一般的なパスワードと同じ強度まで文字数を減らせばよい。 少なくとも、簡単なパスワードが使われる可能性を減らすことができる。 潜在意識に記憶されているため、覚えているかどうか自信が持てないかも しれないが、それは防災訓練のように、定期的にテストすればよいだろう。 また、複数人のうち数人が認証すればよくするなどの工夫も必要だろう。 もし、曲の全体を記憶しているなら、白状することができるかもしれ ないが、そこは記憶していないと主張するしかないだろう。 参考リンク: http://gigazine.net/news/20120724-password-in-brain/ * The others Last week watched News  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ◇ アマゾンの引き立て役になりかねない楽天コボ 。カギは「UX」の追求。 http://www.nikkei.com/article/DGXNASDD010EA_R00C12A8000000/ … 日本製はどうしてこれほど UX(ユーザーエクスペリエンス)が弱いのか。 ◇ 100日後にアラームセットや履歴の保存ができるタニタの技ありタイマー。 http://gigazine.net/news/20120802-timerbar/ … タイマーといってもいろいろある。 ◇ Microsoft、Visual Studio 2012 と .NET 4.5 の正式版は9月12日と発表。 http://www.itmedia.co.jp/news/articles/1208/02/news022.html … Windows8 より先行。 MSDN会員なら8月15日から。 ◇ スマホで電子工作プログラム、ルネサスが手軽なキットを発売。クラウドで開発。 http://akiba-pc.watch.impress.co.jp/hotline/20120728/etc_renesas.html?ref=garank … クラウド上でコンパイルしたプログラムを電子キットへダウンロード。 ◇ MSがWindows 8タブレット対応のキーボード、専用のボタンを装備。 http://pc.nikkeibp.co.jp/article/news/20120731/1057943/?f=device … 検索や設定など、チャーム機能のハードボタン版。 ◇ Amazonでの販売テクニック指南本をAppleがiBookStoreで取り扱い拒否。 http://gigazine.net/news/20120730-apple-reject-book-mention-amazon/ … iBookStore のライバルである Amazon に関する本は拒否。 ◇ アップデートから取り残されたMacの行く末、Appleの責任を問う声も。 http://www.itmedia.co.jp/news/articles/1208/02/news021.html … Mac といえど、セキュリティに不安。 ◇ グーグル Nexus Q、発売が延期に。予約購入者には製品を無料で提供。 http://japan.cnet.com/news/service/35019900/ … よほどいいアイデアが寄せられたのか。                      Snap Note 3 開発BLOG  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ [ エラーから復帰してもエラーが発生した場所がすぐにわかる vbslib 4 ] VBScript では、On Error Resume Next を使うと、エラーから復帰する ことができるようになりますが、その代わり、エラーが発生した場所が、 わからなくなります。 On Error Resume Next は、エラーから復帰するときに使います。 復帰したのだから、対処する必要はないと考えられなくもないですが、 実際は対処する必要がある場合が多いです。 よくあるのが、テストの続きを実行できるようにしたテスト・スクリプト です。 どんなエラーが発生しても、次のテストを実行できるように、 1つのテスト・スクリプト全体に対して On Error Resume Next させるの ですが、その代償として、テストが失敗した場所が分からなくなります。 vbslib 4 では、エラー復帰させるときのスクリプトは、次のように記述 します。(コピーして使ってください。) ただし、TryStart の行から TryEnd の行の間が、2つ以上の文があるときは、Trying も必要です。 参考:vbslib の説明書を "Err2" で検索。  If TryStart(e) Then On Error Resume Next   TestScript1  If TryEnd Then On Error GoTo 0  If e.num = E_FileNotExist Then e.Clear  If e.num <> 0 Then e.Raise C++ 言語で同じ内容を表現すると、次のようになります。  try {   TestScript1();  }  catch ( exception* e ) { if ( e.num == E_FILE_NOT_EXIST ) { }   if ( e.num <> 0 ) throw e;  } vbslib4 を使ったスクリプトでエラーが発生したら、次のようなエラー・ メッセージが表示されます。 下記のファイルをテキストエディタで開いて次のように変数の値を修正すると、 デバッガに接続して問題がある場所で停止します。 "Sample.vbs" ---------------------------------------------------------------------- g_debug = 1 ---------------------------------------------------------------------- [ERROR](500) この変数は宣言されていません。 このメッセージに従って、メインの vbs ファイルの最後にある g_debug = 0 を g_debug = 1 に変えて、スクリプトを起動しなおすと、デバッガーに接続する ようになり、自動的に On Error Resume Next が呼ばれなくなり、エラーが 発生した場所でブレークするようになります。 そこで、コールスタック [ デバッグ > ウィンドウ > 呼び出し履歴 ] を開くと、エラーが発生した 場所が分かります。 詳しくは、vbslib の説明書の下の方にある 「困ったときは?」を参照してください。 g_debug に設定する値は、エラーが発生した番号になります。 もし一度、 Err2::Clear を呼び出してエラー復帰した後で、次のエラーが発生したら、 g_debug = 2 を記述するようにガイドされます。 エラーが発生した回数に 相当しますが、このようにカウントすることで、自動的に On Error Resume Next を呼び出すかどうかを自動的に調整しています。 VBScript は、言語的には、On Error GoTo 0 を呼び出したときが、エラー復帰 したタイミングですが、そうすると、再度エラーを投げること(再throw)が できなくなります。 C++ 言語で言えば、catch ブロックの中で throw が 呼び出せないということです。 そこで、vbslib は、Err2::Clear を呼び出した ときが、エラー復帰したタイミングであるように修正して、再throw ができる ようにしています。 再throwは、エラーメッセージを適切に変えるために必要です。 内部で発生 したエラーメッセージは、内部構成に対するエラーであるため、外側の構成 に合わせたエラーメッセージに変えなければユーザーには通じません。 たとえば、内部で配列のインデックスが範囲外であったら、外側では あるサイズの変数の値が小さすぎるという意味に変わります。 vbslib 4 は、3-clause BSD ライセンスで提供されています。 誰でも無料で 自由に使えます。 商用利用でも構いませんし、改変も再配布も自由です。 http://www.sage-p.com/vbslib/vbslib.htm         ソフトウェアデザイン館 Sage Plaisir 21 について  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ホームページ  >>> http://www.sage-p.com/ メルマガ    >>> http://www.mag2.com/m/0000083983.html ブログ     >>> http://blog.livedoor.jp/sage_p/ ツイッター   >>> http://twitter.com/Ts_Neko ダウンロード  >>> http://www.sage-p.com/freesoft.htm サポート掲示板 >>> http://www.sage-p.com/kg_ban09/z6037C8.cgi 東日本大震災  >>> http://www.sage-p.com/saigai.html メール   >>> ts-neko◇sage-p.com ←◇を@に変えてください          緊急メールは件名に「うどんメール」を付けてください。  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ このメルマガの登録・解除をするときは… >>> http://www.mag2.com/m/0000083983.htm  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ News & Column are composed by T's-Neko 2012  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄