タグ

2011年5月16日のブックマーク (2件)

  • Pythonを高速化しよう! - gumi Engineer’s Blog

    はじめまして、gumiの津村です。 現在は解析系の仕事をしたり、ツールを作ったりしています。 今回の話は高速化についてです。 結構長めの文章です。 目次 実行速度の高速化 Python/C API ctypes Pyrex Cython SWIG その他 纏め 実行速度の高速化 高速化といっても色々ありますが、今回は実行速度の高速化についてです。 弊社ではPythonを全面的に採用していますが、そもそもLLは実行速度が遅い言語です。特にC言語のようなコンパイラ系の言語と比べると非常に遅いです。 それでもLL系の言語がここまで使われるようになったのは、開発効率が良いからです。 もはや常識ですね。 しかし、それでも特定の領域ではどうしてもPythonのようなLL系言語では厳しい部分も出てきます。 アルゴリズムを変更しても、ハードウエアを変えても、無理な物は無理です。 速度に問題がある場合の最適

    Pythonを高速化しよう! - gumi Engineer’s Blog
  • GnuPG を使用して文書を暗号化する

    【解説】 GnuPG(GNU Privacy Guard) はファイルの暗号化・復号化を行うための強力なツールです。 ネットワークを介してファイルを送信する場合、改竄やなりすましなど様々なセキュリ ティ上の脅威にさらされます。GnuPGは、公開鍵暗号方式による暗号化、復号化、署名な どの手段により、ファイルを保護します。 【共通鍵暗号方式】 相手と鍵を共有し、暗号化・復号化を行います。 1) 暗号化 $ gpg -c topsecret.txt パスフレーズを入力します。暗号化されたtopsecret.txt.gpgが生成されます。 2) 復号化 $ gpg topsecret.txt.gpg 暗号化時に使用したパスフレーズを入力します。 復号化されたtopsecret.txtが生成されます。 【公開鍵暗号方式】 お互いに秘密鍵と公開鍵を用意し、送信者は受信者の公開鍵を用いて暗号化します。