2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Google App Engine / Python Standard Environment の Runtimeバージョン

Last updated at Posted at 2017-01-09

この記事の要旨

Google App Engine / Pythonで・・・

  • 「Standard Environment」のPythonバージョンは2.7.5
  • 「Flexible Environment」のPythonバージョンは2.7.9 (と3.5.2)

(2017年1月9日現在)

解説

ちょっとハマったので個人メモ。

Google App Engineには「Standard Environment」と「Flexible Environment」の2種類がある。詳細は省くが、「Standard Environment」には1日28時間分のインスタンス起動について無料枠があり、ちょっとぐらいの使用であれば無料で「Standard Environment」を使用していられる。

で、各環境のRuntimeで使用できるPythonのバージョンは何か?を調べると、「Flexible Environment」はドキュメントに書かれているものの・・・
スクリーンショット 2017-01-09 15.34.26.png

「Standard Environment」についてはドキュメントが無かったので、「sys.version_info」をログで吐き出させて調べてみた。

sys.version_info(major=2, minor=7, micro=5, releaselevel='final', serial=0)

Pythonのバージョンは2.7.5でした。

(2018/03/24 追記)

sys.version_info(major=2, minor=7, micro=12, releaselevel='final', serial=0)

ということで今は2.7.12に更新されている模様。


ここからは個人的なハマったポイントなのだが。

hmacを使用する際・・・

digest() の出力結果と外部から供給されたダイジェストを検証ルーチン内で比較しようとするのであれば、タイミング攻撃への脆弱性を減らすために、 == 演算子ではなく compare_digest() を使うことをお奨めします。

というのだが、このcompare_digest()が使用できるのは2.7.7以降だったりする。当然、「Standard Environment」でこのメソッドを使うとエラーになる。

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?