‘技術’ カテゴリーのアーカイブ

RSAの勉強日記

2012年2月2日 木曜日

Javascriptでデータ送る際にデータを暗号化したいなという事で、そうだRSAを使おうと思ったのですが、RSAについて、sshの鍵作る時に出てくる単語で暗号方式?位の理解しかなかったので少し調べてみました。

(続きを読む…)

postgresユーザのパスワード忘れて困った

2012年1月26日 木曜日

最近herokuをちょろっとだけ触っています。herokuではPostgreSQLが使われてるのでローカルにもインストールしたんですけど、ちょっと間が空いて、Postgresユーザーのパスワード忘れて困ったのでメモ書きです。環境はOSX 10.6です。

(続きを読む…)

SWI-PrologをC言語から叩く

2012年1月8日 日曜日

7つの言語 7つの世界」の3つ目の言語がPrologなんですけど、触ってみると結構面白くて、とりあえずの感想としてはルールの表現力がハンパ無く高いなという事です。良く例で挙げられていますが、数独を解いたり、麻雀の手役を確認したりといった、一定のルールに基づいた処理を他の言語と比べてかなり楽に書けそうです。

これはちょっと習得しておきたいなと思うものの、上述のような特定の処理以外は他の言語と比べてあまりに貧弱です。今回使用した処理系の標準ライブラリはこれだけしかありません。

なので必要に応じてPrologを別の言語から使うという方が現実的なのかなということで、とりあえずPythonインターフェースを試したのですが、動かなかったので仕方なしにC言語から使ってみる事にしました。なお処理系はSWI-Prologというのを使う事にしました。(手元だとGNU Prologが日本語で文字化けを起こしました。)

(続きを読む…)

MySQLをlatin1のまま使ってて、Djangoからだと文字化けた話

2011年7月11日 月曜日

表題の通りMySQL適当に使ってたってだけの話なんですが、MySQLってインストールすると、デフォルトで文字コードは軒並みlatin1になってるわけです。utf8にしててくれても良いんじゃねと思わなくもないです。

mysql> status;
--------------
mysql  Ver 14.14 Distrib 5.1.51, for apple-darwin10.3.0 (i386) using readline 5.1
...
Server characterset:    latin1
Db     characterset:    latin1
Client characterset:    latin1
Conn.  characterset:    latin1
...
--------------

で、この設定のままutf8な文字列を突っ込んでて、でも別にmysqlコマンドやらpythonのMySQLdbやらから読み書きしても文字化けしないし、まぁ良いかと思ってほったらかしてた訳です。そしたらDjangoから読もうとしたら文字化けしたので、なんでやねんと思って調べたのでメモしておきます。

(続きを読む…)

OSXでnginxを動かすメモ

2011年6月5日 日曜日

先日CentOS上でnginxを使うというエントリを書きましたが、開発環境のOSXにnginxをインストールするのに手間取ったのでメモ書きです。

(続きを読む…)

CentOSでnginx + uwsgi + Djangoを試してみた

2011年6月2日 木曜日

最近GAE上で書いていたサイトが、ちょっとGAEには向かないという事がわかりまして、仕方が無いので、普通のサーバ上で書き直す事にしました。巷ではapache + mod_pythonはもう古いらしく、じゃあ何が良いのと思って色々調べていると、このベンチマークエントリが見つかりまして、その中で良さそうだったuwsgiを使う事にしました。HTTPサーバは上記エントリで使われてたnginxです。ずっと気になっていたのでこの機会に触ってみました。なお環境はCentOS 5.5です。

思ったよりも長い記事になってしまいました。以下の手順を踏みます。

  1. Pythonのインストール
  2. virtualenvやDjangoのインストールとテストプロジェクト作成
  3. uwsgiのインストール
  4. nginxのインストール・設定・動作確認
  5. Djangoのadminアプリを動かす(おまけ)

(続きを読む…)

CMakeの使い方メモ

2011年1月22日 土曜日

OpenCVをソースからビルドしようとしたらCMakeが使われていたのですが、全然使い方がわからなかったので、少しだけ調べました。CMakeはビルド環境を作る為のツールで、CMakeFiles.txtにビルド条件を記述しておけば、環境に応じてビルド環境を自動生成してくれるというものです。具体的にはLinux上ではMakefileを、Mac上ではXcodeのプロジェクトファイルを、Windows上ではVisualStudioのプロジェクトファイルを自動生成してくれます。

クロスプラットフォームなプログラムを書く際に、ソースコード互換さえ取れていれば、わざわざ環境ごとにビルド環境を作らなくても良くなりますので便利だということですね。

(続きを読む…)

sshdに対するブルートフォース攻撃のユーザ名が面白い件

2010年10月4日 月曜日

1ヶ月前に借りたホストを、そろそろ使い始めようかと思って設定している最中に、ふとログを見てみるとsecure*が合計で60MBとかになってて、何これと思ってみて見ると全部sshdに対するBrute force attackのログでした。話には聞いていましたが自分のホストに実際に大量のログが見えると、あぁ攻撃は実在のものであったかと大変興味深いものがあります。しばらくtail -fしてログを眺めていると次から次へとバンバンログが溜まって行きました。そのユーザ名が色とりどりで面白かったので、折角と言う事でどんなユーザ名でログイントライするのかと言うのを調べてみました。以下が上位20件です。左側の数字は、そのユーザ名でログインに失敗した回数です。adminとtestは1000回超えてます。

(続きを読む…)

.gitignoreの使い方メモ

2010年10月3日 日曜日

備忘録です。まず毎回.gitignoreを作成するのは面倒なので、グローバルな設定ファイルとして作成します。保存場所はどこでも良いですが、以下の場合はホームディレクトリの直下に.gitignoreを作成します。

$ git config --global core.excludesfile ~/.gitignore

(続きを読む…)

RPMの使い方メモ

2010年9月25日 土曜日

普段はyumを使うので直接はあまり意識しないRPMなんですが、複数のHostを使用するようになって、ビルドが面倒なプログラムを自分でRPMにしておきたいという欲求が出てきましたので、RPM周辺についてメモしておきます。ド素人なので色々間違っているかもしれません。
(続きを読む…)