2012/12/31

2012 年のまとめと 2013 年の予定

こんにちは。
もう、2012 年も終わりですね。

新しいブログを始めようと思って Blogger で始めたものの、この半年ちょっとであまり書けてなかった。
ブログってあとで見て面白いので、今から来年になるまで、今年あったことを書けるだけ書いてみようと思います。

2012年の hktechno を三行でまとめると

  • 未踏、スーパークリエイターになりました
  • 不思議な会社を流れで変な人と共同で設立しました
  • 大学は無事2年生の無限ループから脱出できました
こんな感じですかね。
いつもより、大きな動きがある1年だった気がします。

Open Design Computer Project と未踏


ご存知の通り(?)、今年はほとんどこれをやっていました。
http://open-arch.org/

オリジナルコンピューターの制作、僕はその開発環境の開発をやっていました。
プロジェクト自体は去年から続けていて、今年は未踏に採択されて、引くに引けない状況、というやつですね。
去年の段階でほとんど仕様などは決まっていたので、今年はずっと実装してました。

といっても、本気で集中できたかと言われたら、なんとも言えないかなぁ。
未踏の期間が2月からで、最初の頃は binutils の移植をして、4月ぐらいから gcc の移植を始めたわけですが、躓いてばかりだったな...
今違うアーキテクチャの移植をしろとか言われたら、もっとはやく移植できたと思うけど、これは後の祭りというやつで。

未踏の開発期間はあっという間に流れてしまった感じですけど、色々意見をもらえたり、サポートがあったり、出会いがあったり、面白かったです。
ただ、未踏ってもっとすごいところだと思っていたのだけど、そのイメージはなんか崩たかなー。
すご開発者がいっぱいいるわけではなく、すごい発想が浮かぶ人がいっぱいいるみたいな。

技術だけじゃうまくいかないんですよね、それがよくわかったというのもあります。
ただ、僕は技術オタクなので、実装力ないとむかついてくるんですよねwww
発想力は他の人に任せて、僕はこれからも技術を極めていこうかなと... まだまだですが。
職人的なイメージというか、プログラムを書くことにこだわりを持つ人間になりたい。

それでも、なんだかんだでスーパークリエイターに認定されてしまいました。
特に認定されたからってどうってことはないんですけど、なんとなく嬉しいですよね。
最初の頃はスーパークリエイターになってやると思ってましたけど、開発期間後半になるにつれだんだん自信なくなってきて、だめかなぁ思っていたので、意外でした。
もしかしたら、採択されたのも偶然だったのかもしれませんが...
担当していただいた、越塚PMと未踏関係者の皆様ありがとうございました。

話は戻って、プロセッサ開発、僕はプロセッサ自体を開発してたわけじゃないですが、仕様考えたり、自分たちで良いと思うものを考えて創りだすのって楽しいですよね。
本当は、それに乗るオペレーティングシステムまで開発したかったのですが、コンパイラもできてないのに、そこまで開発できるはず無いですよね...
これから頑張ります。
来年の目標かな、そううまくはいかないだろうけど。

未踏のこともうちょっとブログに書きたかった感もありますね...

未踏の出会いとビックリバコ株式会社の設立


8月で未踏が一段落ついて、後半はこれに関わっていました。
まあ、早い話が起業に関わったなわけなのですが、全く先が見えません!!
僕が社長でも無いですし、Co-Founder になるのかもしれませんけど、お手伝いをしてあげる、というぐらいのつもりでした。
しかし結局出資金もある程度出して、取締役になって... という感じなので、共同経営者なのか?あまり実感が無いけど。

ほかから出資とか全く受けてませんし、まったりやっていこうと思います。
いいです、しばらくはそれで。とりあえず、潰れない程度に、ある程度楽しめれば。
当たり前のように、考えが甘かったというのもありましたけど、まあのりで...

社長さんは、未踏で同じPMの担当だった人で、僕とは正反対の人です。
インタラクティブ系だし、実装力全くないけど、アイデアはなんか変なものが出てくる。
未踏のお金もあったし、誘われたのでなんかやってみようという感じです。
とりあえず、今も頑張ってます。

今は、一緒にやってる相手が未踏で開発してたサービスが余りにもあれ(とか言っちゃいけないけど、開けてはいけないパンドラの箱だった...)なので、それをやりつつ、受託も面白そうなの受けてみようか、といった感じです。
とりあえず、リリース予定のサービスがこれ。当たるかどうかはかなり不明。
僕にお仕事を投げてくれる人がいるのであれば、いろいろ考えますよ!(と一応宣伝)

未踏の出会いってすごいですね。
人との出会いは大切にしなきゃいけないですね...

その他

来年は大学4年生になれそうですよ!
去年留年してしまいましたけど、今年はちゃんと3年生になれて、順調です。
よかったよかった。

来年は、つまり進学か就職か... ってところなのですが、前述の会社の話もあるので、たぶん進学します。
そのまま今の大学の大学院にいければいいのですが、これまた数学の壁があるため、そのままうまく行けるかどうかはわかりません。

うう、ってここの時点で来年まであと10分しかない...

来年の目標

あきらめないで走り続ける!
技術をもっと極める。
もっと幅広い視野を持つ。
うまくいかなくても、逃げない。
週1ぐらいでブログ書く!
なんか自慢できることをひとつやる。
mist32 アーキテクチャに OS 載せる。

時間がないから終わり!!

2012/12/26

gitolite で誤った公開鍵を設定して gitolite-admin を push してしまった時の対処

gitolite を、某所で導入しているのですが、先日やらかしてしまったことを...

gitolite といえば、git リポジトリをたくさん作って管理するのにとても最適なソリューションなわけですが、公開鍵の設定とかも gitolite-admin というリポジトリを使って設定するようになってるんですよね。

この前、公開鍵の設定をするときに少しミスってしまいました。
keydir/user_name.pub に公開鍵を設定するのですが、複数の鍵をこのファイルに入れられると思っていたのですよね。

しかし、そううまくはいきませんでした。
$ git push
Counting objects: 9, done.
Delta compression using up to 3 threads.
Compressing objects: 100% (5/5), done.
Writing objects: 100% (5/5), 1.56 KiB, done.
Total 5 (delta 0), reused 0 (delta 0)
remote: Already on 'master'
remote: WARNING: a pubkey file can only have one line (key); ignoring foo.pub
remote: WARNING: a pubkey file can only have one line (key); ignoring bar.pub
というわけでダメみたいです。
gitolite は、authorized_keys と違って、ひとつのファイルにひとつの鍵しか入れられないみたいです。
WARNING を出してきたくせに、reject されませんでしたが、もう一度修正して push してみると...
$ git push
Permission denied (publickey).
fatal: The remote end hung up unexpectedly
(ノ∀`)アチャー

試しに root でログインして、/var/lib/gitolite/repositories/gitolite-admin.git を直接 clone して見ましたが、push しようとすると...
# git push -f

Counting objects: 10, done.
Delta compression using up to 3 threads.
Compressing objects: 100% (6/6), done.
Writing objects: 100% (6/6), 1.75 KiB, done.
Total 6 (delta 0), reused 0 (delta 0)
Unpacking objects: 100% (6/6), done.
remote: Use of uninitialized value in do "file" at hooks/update line 36.
remote: Null filename used at hooks/update line 36.
remote: error: hook declined to update refs/heads/master
To /var/lib/gitolite/repositories/gitolite-admin.git
 ! [remote rejected] master -> master (hook declined)
error: failed to push some refs to '/var/lib/gitolite/repositories/gitolite-admin.git'
(ノ∀`)アチャー

と思っていたのですが、救いの手がちゃんと用意されていました。
# su - gitolite
$ cd .ssh
$ ls
authorized_keys  known_hosts  old_authkeys
ちゃんと一つ前の公開鍵がここに設定されているんですよね。
これを書き戻すだけでどうにかアクセスできるようになりました。
$ cp old_authkeys authorized_keys
めでたしめでたし。

2012/10/07

Debian wheezy で Skype を使う (Multiarch)

最近、amd64 な Debian sid (wheezy/testing) で Skype が使えなくなったー。
と思っていたのですが、どうも Debian が Multiarch に対応したようですね。
ARM 周りのサポートおかげでしょうか?
そのおかげで、ia32-libs などがなくなって、Skype の 64bit 版が使えなくなりました。
しかしながら、Multiarch を使えば、引き続き使えるようなのでそれをご紹介。

Multiarch とは、例えば i386 のバイナリを amd64 な kernel, マシンの上で動かせるようになるものです。
メインターゲットは x86 ではなく、ARM も複数の arch が最近出てきて (armel, armhf) その周りの対応のおかげのような気がしないでもありません。
このあたりに詳しいことが書いて有ります。

とりあえず、Multiarch で x86-64 なマシンの上で、i386 バイナリが動くように設定してみましょう。
やりかたは、Debian Wiki を参考にしました。

Architecture の追加

まずは dpkg に、multiarch で使う新しい architecture を追加します。
$ sudo dpkg --add-architecture i386
以下のように、foreign-architecture が追加できたことが確認できます。
$ sudo dpkg --print-architecture   
amd64
$ sudo dpkg --print-foreign-architectures
i386

apt の設定

/etc/apt/sources.list を以下のように編集します。
deb 行の [arch=amd64,i386] の部分を追加してください。
deb [arch=amd64,i386] http://ftp.jp.debian.org/debian/ wheezy main non-free contrib
deb [arch=amd64,i386] http://security.debian.org/ wheezy/updates main contrib non-free
それができたら、apt-get update します。

やらなくて良いみたいです。、

Skype のインストール

まずは、依存関係からチェック。
Multiarch で他の arch のバイナリをインストールする場合、パッケージ名に :i386 のような postfix をつけます。
$ sudo dpkg -I skype-debian_4.0.0.8-1_i386.deb
 Depends: libasound2 (>> 1.0.18), libc6 (>= 2.3.6-6~), libc6 (>= 2.7), libgcc1 (>= 1:4.1.1), 
libqt4-dbus (>= 4:4.5.3), libqt4-network (>= 4:4.5.3), libqt4-xml (>= 4:4.5.3), libqtcore4 (>= 4:4.6.1), 
libqtgui4 (>= 4:4.6.1), libstdc++6 (>= 4.4.0), libx11-6, libxext6, libxss1, libxv1

$ sudo aptitude install libasound2:i386 libc6:i386 libc6:i386 libgcc1:i386 libqt4-dbus:i386 
libqt4-network:i386 libqt4-xml:i386 libqtcore4:i386 libqtgui4:i386 libstdc++6:i386 libx11-6:i386 
libxext6:i386 libxss1:i386 libxv1:i386
Skype のサイトから 32bit (i386) 版をダウンロードしてインストールします。
$ sudo dpkg -i skype-debian_4.0.0.8-1_i386.deb
これでおわり。
他にも Multiarch が使えるようになると、色々できるようになるので、使ってみてください。

追記:
Debian Wiki にもやり方が掲載されてました。こちらもご覧ください。
http://wiki.debian.org/skype

2012/08/27

セキュリティ・キャンプ 2012 のお手伝いをしてきた


すでに1週間前の話になりますが...
(写真は今年の宿泊場所の夜景、34階!)

セキュリティ・キャンプ 2012 に、1年ぶりにお手伝いに参加してきました。
http://www.security-camp.org/

まず、セキュリティキャンプを知らない方のために簡単に説明しておくと、応募用紙のマジキチ比較的お手柔らかな問題と熱意を提出した中から選ばれた学生を、5日間研修施設に閉じ込めて招待して、クラスごとに最強の講師陣がセキュリティに関する講義と演習とCTFを開催するイベントです。

セキュリティ・キャンプ (前年度までセキュリティ&プログラミングキャンプ) には、チューター制度というものがあり、参加者ではなくチューターとしてお手伝いに参加することができます。
2008年にキャンプに参加して、09, 10 と2回チューターをやって今年で3回目です。
そろそろやめなくちゃなと思いながらも。

2012/07/04

Hotmail のアクセスログを開示してもらう方法


先日、といってもしばらく前ですが、僕の Hotmail のアカウントに不正アクセスされました。
アドレス帳に入ってたアドレス全部に対して、よくわからない URL の入ったメールを送信されたようです。
ただ、ウイルスが感染するとか、なにかインストールされるとか、そういう類では無さそうです。

送られてしまった人はごめんなさい。

やられただけでは惜しいので、アクセスログの開示とかも試みてちょっと頑張って見ましたが、まあ原因を究明するのは無理でした。
なにか踏んだわけでもないので、パスワードがどこかから漏れたのだと思います。

Hotmail は、普通にアクセスログが見れるわけではないのですよね。
Gmail みたいに、ログイン時にいろんなトラップ、じゃなくて認証をかけることができたり、アクセスログが簡単に見れたり、そんな機能はついてないです。
どこかに問い合わせて、開示してもらわないといけない。

ただ、開示方法がダイナミックで、お問い合わせからカスタマーサポートに開示してください!って申請したら、Microsoft Answers でその旨を投稿してくださいって誘導されました。
Microsoft 版知恵袋みたいなサイトです。
そこで、不正アクセスされたので、アクセスログ開示してください!!って言ったら、本当に開示してくれました。おどろき。
やり取りはこんな感じ。
結果的に、Telekomunikacja Polska S.A. というポーランドの ISP から送信されてることがわかりました。
まあ、地域的には大体予想通りですね。

ちなみに、Hotmail は送信元 IP をメールのヘッダーに X-Originating-IP としてくっつけてくれてるので、これも見て見ましたけど同じでした。
すぐにパスワード変更したのもあって、ログイン履歴に残ってたのは1回のみですが、アドレス帳も抜かれてるわけですし、きっと Web からログインされたのでしょう。

非常に残念です。
Hotmail は捨てアドなのでまともに使ってませんでしたが、Windows Mobile 使ってたこともあって、古いアドレス帳が全部入ってたのですよね...

パスワードは、今以上に色々使い分けるべきなのかな、とか思ってしまいました。
本当に、どこから漏れたのだろう。

2012/06/13

LinuxCon Japan 2012 に参加してきました


先週は LinuxCon に参加してきました。
今年の LinuxCon は Student Presentations があったり、そのおかげか 70 人まで学生が無料で参加できたり、面白そうだったので参加してきました。
学生にこういう機会を与えてくれて、ありがとうございます。
なかなか行けないですからね。
まあ、授業は完全に生贄に捧げて参加してきたんですけどねw
会場がみなとみらいでちょっと遠かったですが、頑張ってつくばから行きました。
参加記をちょっとレポートしてみたいと思います。

2012/06/03

第1回 がじぇルネ プロデューサ・ミーティング


昨日は、がじぇっとルネサスというもののプロデューサーミーティングに参加してきました。
知り合いに誘われて、面白そうなので参加してみました。
受付に本物のメイドさん(メイド喫茶の店員さん)からこのボードを手渡されて、ここルネサスの研修センターなんですが... っていう、まあルネサスらしくない感じでしたw

なんだ、このピンクなレジストの基盤は!って感じですが。
ルネサスなだけあって RX が乗ってるぞ! なんか Arduino っぽい!と思った方、鋭いです。

この基盤、GR-SAKURA という基盤なのですが、Arduino (ほぼ)上位互換の超高性能・多機能 RX63N マイコンボードです。
実際に売り出す予定のもので、僕が昨日頂いたのは、それのプロトタイプです。
発売されるときの販売元は、若松通商さんになる予定で、このプロジェクト自体が若松とルネサスの共同みたいになってます。

H8, SH, R8C, R32C, M16C, 740... とたくさんのコアを持っているルネサスですが、このボードでは新しい RX を採用してきました。
あまり、電子工作系の界隈には馴染みのないマイコンですが、32bit で高性能です。

仕様はこんな感じです
  • RX63N 96MHz
  • RAM 128KB, Flash 1MB
  • FPU, Ether コントローラー 内蔵, USB 対応
  • XBee 用スルーホール対応

チップは一緒の廉価版も用意されるようです。 あと mbed の互換ボードも計画中とか。
デモとして、マイコンカーラリーのマイコンボードをこれに置き換えたものも試走してました。
やっていた身としては、H8 が特徴だったマイコンカーなので、新鮮ですね。

さらに、コンパイラはクラウド上の Web コンパイラを使う形になってます。
しかも、Android 完結型のブロック型の開発環境も的供されるらしいです!
Web コンパイラの API も公開する予定みたいです。(つまり自由に開発環境が作れる)

プロトタイプの基盤をもらってきたからには、ちょっと弄って作ってみたいと思います。

余り時間がなかったりもしますがw 期間も短いですし。

ちなみに、レジストの色は、担当者の趣味らしいです。
Web コンパイラもピンクです。Android のクライアントもロゴがハートマークに...
さらには、受付のメイドさんですからね...
まあ、それが売りになるかどうかは別として...

問題は、Arduino のライブラリがそのまま動くわけではないというのと、つまりそれらの移植を手伝って下さい!ってお願いなんですよね、今回のものは。
ネットワーク使って面白いことできそうなので、ちょっと作ってみようと思います。

近々発売のようなので、日本製の Arduino 互換ボード、Arduino では物足りないという方は、これを使ってみてはいかがでしょう?

2012/05/29

SECCON CTF つくば大会に参加しました



すでに1週間以上前になってしまいましたが...
参加したからには、レポートを書いておかなければ!
先週はいろいろ忙しかったのです。

まずは感想とか...

2012年5月 19 - 20日 と、SECCON CTF というイベントに参加しました。
SECCON については、以下のページとかを見ると良いと思います。
所謂、Capture The Flag という競技をするセキュリティ系のイベントです。
セキュリティ系男子じゃない僕がなぜセキュリティ系のイベントに参加してるかはお察しください。
というより、まあ、セキュリティ&プログラミングキャンプの講師の方々が結構関わっているというのもあって、せっかつくばでやるなら参加してやろうじゃないかというわけです。
僕が参加している産学間連携推進室(AC部屋)もちょっとお手伝いするみたいだったですし。

ifconfig というチーム名で参加しました。
僕が決めたわけじゃありません。

Twitter で相手がいない!みたいなこと呟いたら、くりす (@x86_64) とねこにゃん (@nekonyaaaaaaaan)が拾ってくれたのでこのチームに参加することになりました。
さらに、きむ (@KIM_TPDN) も追加されて、ifconfig は coins09 + 10 混成チームとなったわけです。

他にも、つくばからは coins11 の urandom チームがいましたし、つくば以外のメンバーと混成チームがあと2チームありました。

結果からいきましょう。
というわけで、勝ちました。といっても、接戦でした。特に後輩達と。
4人とも大人気なく本気で徹夜のガチバトルしてました。

2日間とても楽しかったです。
CTF 初めてでしたが、また機会があったら参加したいとも思いました。
こういう機会を与えてくれた運営の方々、スポンサーの方々に感謝です。

ただ、1日目の交流会は余り他の人たちと交流できませんでした。
というのも、1日目は不完全燃焼状態で終了してしまったので、色々考えこんでましたし、つくば同士で固まってしまうの良くないですね。

2012/05/24

ブログ、再開しました

こんにちは

てくのです。
もう2年ぐらいブログをほぼ書いてない状況だったのですが、再開しました。
旧ブログはこちら: techno-st.net

自鯖でブログするのも時代遅れなような気がしたので、Blogger にしました。

たぶん以前みたいなペースでは書けませんが、やはりメモ帳替わりのブログは必要です。
そんな状況を最近体感しているので、ちょっとしたことでも書きたい思います。

ちなみに、Twitter, Facebook ではこの2年間も生存していました。むしろこれらのおかげで、無駄な情報ばかり発信していた2年間でしたね。
あまり有用なことは書いてないので見ないほうがいいです。
では、またよろしくおねがいします。