2015/04/24(金)情報セキュリティスペシャリスト試験の反省

「アイテック」と「TAC」で解答が出たので、試験勉強期間1週間で挑んだ4月19日の試験の反省です。午後の試験の点数は「TAC」の配点予想を参考につけました。

午前I:免除

午前II:18/25(72点)で合格。

問01:EV SSL証明書はとったことがなくて普通に間違えました。ちょこっと参考書を見直していれば正解できた問題。

問03:Unicode絡みのライブラリを作っていれば間違えるわけがない問題。

問04:VA(Validation Authority)の役割を勉強していなくて不正解。

問08:「ア」と「ウ」で迷って直前で「ウ」に変えて正解。「電子政府推奨暗号リスト」でOK。

問09:「ウ」か「エ」で悩んで「エ」を選んで不正解。AHは暗号化の機能をもっていないらしい。

問10:ntpdの脆弱性情報が出てて自分も確認していたのですが不正解。「JPCERT/CC」で「ntpd の monlist 機能を使った DDoS 攻撃に関する注意喚起」が出ていますね。

問18:恥ずかしながら「送信元IPアドレス」を選んで不正解。「送信元IPアドレス」は「IPヘッダ」にあるようです。

問21:勘で正解。

問22:共通フレーム知らんがな。(´・ω・`)

問24:コールドアイル -> 冷たい通路? で「ウ」を選んで正解。英単語覚えててラッキー。

問25:なんのこっちゃで不正解。

午後I:問1と問3を選択。惜しい解答で1点ももらえない場合は不合格の場合もあるという出来具合。(59点~70点)

問1:35点~40点ぐらい

設問1:OK。

設問2:(1):改行を1つしか書いてなくて不正解。(3):「ヘッダー中の不適切な文字列を無害化する」という主旨の回答を書いたけど、もう少し具体的に書いたほうが良かっただろうか。設問3:(2):WebアプリがセッションIDでユーザを識別して、かつ、JがKと同じセッションIDを(ry(多分OKでしょう)(3):遷移毎にセッションIDを更新する主旨の回答をしました。(ユーザが次から次へとやってくるという考えで「遷移毎」と書いたと思って採点して欲しい)

問3:24点~30点ぐらい

設問1:大体模範解答通り。攻撃方法を具体的にと書いてあったので、リバースブルートフォース攻撃と書いてみました。でも、特定できたパスワードでリバースブルートフォース攻撃をするのは効率が悪いだろうか。しかし、ハッシュ値から特定できたパスワードと同じパスワードということは、それなりにありふれたパスワードである確率が高いので、効率が悪すぎてどうしようもないということもないレベルか。「リバースブルートフォース攻撃」と書いたのが余計で若干の減点は免れないと思われます。

設問2:(2)で「単位時間あたり」と書いた記憶がない! それ以外は完璧。

設問3:時間が足りなかった「e」以外は正解。

設問4:利用者IDを解答に含めるべきかで悩んで結局含めず。それ以外は大体模範解答通りなのですが、またしても「攻撃方法を具体的に」に惑わされ、文末に「リバースブルートフォース攻撃」と書いてしまいました。利用者IDにメールアドレスを使っていると書いてあるので、別のサイトで漏洩したパスワードを使って「リバースブルートフォース攻撃」をするにはかなり効率が悪いでしょう。(減点)

午後II:問1でDNSSECは書けたけど、オープンリゾルバを知らなかったので、途中で問2に切り替えました。(69点~88点)

設問1:OK。(8点)

設問2:(10点~18点)(1)(8点~12点) b:スクリーンをロック c:他者に推測されにくい(これでもいいでしょう) d:使われないように(ほぼイコール「知られないように」なので正解のはず)

(2)解答するにはやや情報が足りないように感じて少々悩みました。(2点~6点ぐらい)「脆弱性修正プログラムの動作検証を行い、脆弱性修正プログラムを適用する」というようなことを書きました。

設問3:OK。(16点)

設問4:(35点~46点)(1):OK。(16点)(2):「アイテック」と「TAC」で答えが分かれていますが、3問以上正解は確実。(12点~16点)(3):一番難しかった問題。K工場と協力会社は協力関係にあって悪意ある行動はとらない云々と書きましたがバツでしょうね。(0点)(4):1つは「証明書の秘密鍵が漏えいした場合」と書いて正解。もう1つは「協力会社が接続端末を売却や廃棄やリプレースした場合」と書きましたが微妙ですかね。(7点~14点)

合格か否かは午後Iでどれだけ減点を免れることができるかにかかっています!

2015/01/24(土)フォーマルな英語を書く方法

指導教員(外国人)にメールを送る前に自分が書いた表現はフォーマルなのかどうかを調べて毎度かなり時間をとられるのでここにまとめておきます。

フォーマルな英語とインフォーマルな英語の違いは以下の通り

  • word choice
  • word usage
  • gramatical structure

フォーマルな英語を書くのに必要なことは以下の通り。

  1. 句読点 (punctuation) を正しく使う(&はandと書くなども)
  2. ありふれた口語単語や口語表現を避けよ(movie は film にするなど)
  3. 短縮形を使うべからず(can't は cannot にするなど)
  4. 一人称と二人称を避けるように試みる(主観が入らないように)
  5. 文をcoordinate conjunction (And, But, So, Or) などで始めない
  6. 常套句は避けよ
  7. ステージディレクションを避けよ
  8. 曖昧な単語を避けよ(a few, enough など)
  9. 関係代名詞を省略するな

7のステージディレクションってなんのこっちゃと思って調べましたが、要するに「I am writing to you to ask you ...」とか書かず、もっと簡潔に伝えたいことを伝えればいいようです。

9は「that」の使用は避けて「which」「whom」「who」を使うほうがいいようです。

それぞれの詳細は以下のURLを参照してください。 http://www.wikihow.com/Avoid-Colloquial-(Informal)-Writing

以下の動画も参考になります。

2014/10/01(水)復学

6ヶ月の休学が終わってしまいました。

微妙な成果↓

  • IPA未踏:2次審査落ち
  • 情報セキュリティスペシャリスト試験:4点差落ち
  • 統計検定2級:合格

休学中に買って「読んだ」本は以下の通り。

  • 「統計学入門 (基礎統計学)」
  • 「日本統計学会公式認定 統計検定2級対応  統計学基礎」
  • 「日本統計学会公式認定 統計検定 2級 公式問題集[2011~2013年]」
  • 「統計学演習」
  • 「マンガでわかる統計学 回帰分析編」
  • 「Webを支える技術 -HTTP、URI、HTML、そしてREST (WEB+DB PRESS plus)」
  • 「タイポグラフィの基本ルール-プロに学ぶ、一生枯れない永久不滅テクニック- (デザインラボ)」
  • 「ロゴデザイン・ラブ! -僕の失敗と成功、みんなの話からわかるブランド・アイデンティティのつくり方」
  • 「グラフィックデザイナーのためのユニバーサルデザイン実践テクニック51」
  • 「書体の研究 for Digital Creators」
  • 「SQLアンチパターン」
  • 「達人に学ぶ SQL徹底指南書 (CodeZine BOOKS)」
  • 「達人に学ぶDB設計 徹底指南書」
  • 「デザイニング・ウェブインターフェース ―リッチなウェブアプリケーションを実現する原則とパターン」
  • 「インタフェースデザインの心理学 ―ウェブやアプリに新たな視点をもたらす100の指針」
  • 「ハイパフォーマンスWebサイト ―高速サイトを実現する14のルール」
  • 「Chef実践入門 ~コードによるインフラ構成の自動化 (WEB+DB PRESS plus)」
  • 「Linuxサーバーセキュリティ徹底入門」
  • 「ある日、爆弾がおちてきて (電撃文庫)」
  • 「シナリオの基礎技術」
  • 「ベストセラー小説の書き方 (朝日文庫) 」
  • 「1週間でマスター 小説を書くための基礎メソッド―小説のメソッド 初級編」
  • 「ハリウッド・リライティング・バイブル (夢を語る技術シリーズ)」
  • 「小説講座 売れる作家の全技術 デビューだけで満足してはいけない」
  • 「すごいライトノベルが書ける本 ~これで万全! 創作テクニック」
  • 「新装版 冲方丁のライトノベルの書き方講座 (このライトノベルがすごい!文庫)」
  • 「ライトノベルの書き方 キャラクターを立てるための設定・シーン・ストーリーの秘訣」
  • 「文章読本 (中公文庫) 谷崎 潤一郎」
  • 「文字の組方ルールブック―タテ組編」
  • 「本の知識―本に関心のあるすべての人へ!」
  • 「新訳 ふしぎの国のアリス (角川つばさ文庫)」
  • 「日本語の作文技術 (朝日文庫) 」

「シナリオの基礎技術」「SQLアンチパターン」「文章読本 (中公文庫) 谷崎 潤一郎」が特に役立った or 影響を受けた。

IPA未踏に出したアイディアは95%はぐらいは既に実現してあるので、10月14日ぐらいには公開できるかなってとこです。

(土日も関係なく、ほぼ一日中コーディングで少し疲れました…)

2014/07/23(水)統計検定2級 合格の軌跡

未踏2次審査の結果が出るまで時間があって、その間、ずっと統計学をやってました。

大学院生で落ちたら恥ずかしいレベルですが、勉強していなかったら落ちていたと思います。モチベーション保つには良い検定試験でした。

読んでルーズリーフにまとめた本は以下の通り。

マンガでわかる統計学
マンガでわかる統計学

マンガでわかる統計学 回帰分析編
マンガでわかる統計学 回帰分析編

統計学入門 (基礎統計学)
統計学入門 (基礎統計学)

自分みたいにまともに統計学やったことがなければ、マンガでわかるシリーズで全体像を見て、赤本(統計学入門)をやるのがお勧めです。

あとは、以下の統計学会公式認定本をやれば合格できるかと思います。

公式認定の教科書は評判が悪いけど、どんな問題が出てどんな問題が出ないか確認するためにも必要でした。

日本統計学会公式認定 統計検定2級対応  統計学基礎
日本統計学会公式認定 統計検定2級対応  統計学基礎

日本統計学会公式認定 統計検定 2級 公式問題集[2011~2013年]
日本統計学会公式認定 統計検定 2級 公式問題集[2011~2013年]

自分は推定と検定の問題の解き方のパターンがいまいち分からなかったので、さらに以下の本をやりました。統計検定には出ない問題も一部含まれているけど、解法パターンがよくまとまっていて良書でした。

統計学演習
統計学演習

まともな統計学の講義を受けたことがある人は、東京大学出版会の赤本を教科書にして「統計学演習」で解き方を思い出して公式の過去問集やれば、手っ取り早く合格できるように感じました。

統計検定2級合格

次は心理学検定でさらに統計学やる予定です。

2014/06/18(水)Perl Data Language 統計編 #11 「対数近似曲線を引く」

変数の個数xと計算時間yとの間に「y = b + a log_10 x」の関係があるときに、5個のデータで対数近似曲線を引く問題です。

「X = log_10 x」、「Y = y」とおいて「Y = b + aX」の形にすると解けます。

図は

  • 青の点:データの散布
  • 赤の折れ線:対数近似した折れ線
  • 緑の曲線:対数近似した曲線

を表しています。

#!/usr/bin/env perl

use strict;
use warnings;
use feature qw/say/;
use PDL::Lite;
use PDL::Stats;
use PDL::Graphics::PLplot ();
use DDP filters => { -external => [ 'PDL' ] };

my $num_var = pdl [qw/10  50  100 500  1000/];
my $time    = pdl [qw/7.2 8.5 9.1 10.3 11.0/];

my $pl = PDL::Graphics::PLplot->new(
    DEV   => 'pngcairo',
    XLAB  => '変数の個数',
    XTICK => 100,
    NXSUB => 1,
    YLAB  => '計算時間 (100ms)',
    YTICK => 2,
    NYSUB => 2,
    BOX   => [ 0, 1200, 0, 12 ],
);

$pl->xyplot($num_var, $time, PLOTTYPE => 'POINTS', COLOR => 'BLUE', SYMBOLSIZE => 2);

my $num_var_log10 = log($num_var) / log(10);
my %result = $time->ols($num_var_log10, { PLOT => 0 });

$pl->xyplot($num_var, $result{y_pred}, PLOTTYPE => 'LINE', COLOR => 'RED');

my ($a, $b) = $result{b}->list;
my $x = pdl [ 0 .. 1200 ];
my $y = $b + $a * log($x) / log(10);

$pl->xyplot($x, $y, PLOTTYPE => 'LINE', COLOR => 'GREEN');

$pl->close;

対数近似曲線