There's an echo in my head

日々のメモ。

サイダーのように言葉が湧き上がる

上映前の CM で見るたびに気になっていたけど、今日やっと見ることができた。そのために頑張って7時に起きた。

cider-kotoba.jp

良かった。夏のアニメってこうだよね、というのが前面に出ていた。 あの年頃の見た目に対するコンプレックスの大きさが懐かしかった。

エンディングで鳴り始める never young beach の同名曲も心地よく、上映後しばらく耳から離れなかった。

https://www.youtube.com/watch?v=Ab0sFl0VDOY

竜とそばかすの姫

見た。

ryu-to-sobakasu-no-hime.jp

美術がとても綺麗だった。 また、主人公のすずが学校の帰り道に川縁でゆっくりと歌うときの深い歌声には特に心惹かれた。何度でも聴き返したいぐらい。

でも中盤〜終盤あたりから見るのが面倒になってしまった。色々な話が出てきたけど、出てきただけで大して重要な話に思えず、疲れてしまった。

加えて最後、すずが東京まで出てやっとのことで恵たちを見つけたのに、その後それ以上の関わりを持っていくことを匂わせるような描写が一切無く、スッと地元に帰ってきて友達や大人と笑ってるのを見て、 あれ、何もせずに帰ってきた?なんでこの人たち楽しそうに笑ってるんだ? 家庭内暴力に遭っている子供に「僕も闘う」と言わせて、それで終わってはダメでは?と言う疑問がグルグルと残った。

もしかしたら家庭内暴力をどう解決していくかというのは物語上不要な話で(実際難しく時間のかかる問題なのだと思う)、彼女がネット上で正体を表してそれでも歌うという筋道を作るために必要な仕掛けだったのかもしれないけど、とかいろいろ内情を想像しまうけど、でもなんかな。それでいいのかな。流石にそんな扱いではないよなあ。

もしかしたらどうすべきかをあえて明示せず視聴者に考えさせることを狙ったのかも?いや仮にそうだとしても、子供を虐待に立ち向かわせてヨシとするのはダメだよなあ。 それに物語としても「助けると口では言うけど実際には何もしてくれない人たち」と同じに見えてしまっているし。 (万が一にでもないと思うけど、すずの眼力に怯んで父親は腰を抜かして去っていったけど、あれで解決じゃないよね?)

無限に燻ることができる。

という感じで、細かく惹かれるポイントはあったんだけど、それ以外にもあるいくつかの事柄を含めると最終的には釈然としない、その外面の良さとは別の部分で(だからこそ?)「良い」と思うことができない作品だった。

別作品だけど、ルックバックで色々な議論が沸き起こっているのももしかしたらこう言うことなのかもしれない。

ゴジラvsコング

見た。

godzilla-movie.jp

ゴジラのボテっとした感じが実家猫に似ているなあと思いながら見ていた。 ゴジラが「今日のところはこの辺にしといてやるか」という雰囲気で帰っていくのを見て、怪獣でもそういう判断することがあるんだなと面白かった。

ゴジラが日本版ゴジラっぽい風体だったので、ハリウッド版でもこうしてもらえることがあるのかと新鮮だった。 日本版だと放射線をそんなに吐かないイメージだったけど、こっちではちょこちょこ吐いていて、日常的に使える能力のようだった。

女子高生役のあの子がストレンジャーシングスのエルも演じてる役者だった。

こうして書き出してみるとコングの印象がそんなにな買ったようだ。まあ前作や、名作キングコングも見ていないし、そんなに馴染みもないのでやむをえない。

シン・エヴァンゲリオン劇場版 :||

見た。

www.evangelion.co.jp

毒気を根こそぎ抜かれるかのような、これ以上ないほど晴れ渡るような終わり方だった。 この問題はシンジくん側の人間にだけでなく、ゲンドウについても寄り添わないと解決しないということに本作を見て初めて気づいたし、そこを深掘りして整えてくれた。踏み込むべきはそこだったんだ。 世界観についての謎は最終作にも関わらずさらに増えたけど、でも物語としてはこれでちゃんとケリがついたように思う。

序、破、Qは劇場では見ていなかった。ちょうどアニメから離れていた頃だったんだと思う。 ただ、2013年の東京Ruby会議10の追加開催のサブタイトルに本作をもじった「シン・東京Ruby会議10 劇場版 ||=」をつけていたことを考えると、そこからだけでも8年経っていたわけで、長い。 新劇場版の制作がガイナックスではなくカラーになった話も考えると、お疲れ様でした、というほかない。

閃光のハサウェイ

みた。

gundam-hathaway.net

とても面白かった。映像が美しく、冒頭の旅客機が大気圏へ再突入する際の様子と、そこで静かに流れるテロップからすぐに心が引き込まれた。主人公の操るガンダムが暴れ散らかすような話ではなく、全体として機体が暗闇の中で描かれることが多かったこともあって重厚感を感じた。機体の描写よりもそこにいる人々の描写が多いところも好みに合ったのだと思う。

原作は読んでいないし、劇中でも細かい背景は説明されないので状況を推測しながらになる部分は多いけど、それでもストーリーを楽しめた。ハサウェイたちの活動について、後日 Twitter でこんなツイートを見かけて、でも彼は彼で悪手だということに薄々なりとも気付いているんだろうなとも思った。

この映画を観た後に久しぶりに逆襲のシャアを見直した。見直している最中、ブライトさんが映るたびに「この人、ハサウェイがああなるって知ったらどんな気持ちになるんだろう…」という懸念が頭から離れなかった。

劇中のハサウェイのように、細身のスーツ一着でアクティブに動いて戦っている人を見るとかっこいいなと思う。 (他にも例えばキングスマンとか)

三部作らしいので続編も楽しみだし、本作ももう一度見に行きたい。

the pillows “RETURN TO THE THIRD MOVEMENT Vol.3” at 渋谷 duo MUSIC EXCHANGE

おっかなびっくりしながら行ってきた。本当にみんな元気でよかった。でも2時間近く立ってるのが大変になっちゃったんだよなあ。でもよかった。

さわおが肉体は衰えても、心はそれとは別に老いないようにしているというようなことを言っていて、そういうものかもなと思った。思考の出力方式としての体が衰えるから、それによって思考の幅が狭まることもあると思うけど、でもそればかりでもないのかもしれない。

いやでも今日は(といってもこれを書いているのは12月だけど)本当にみんな元気でよかった。

OpenSSL の -trace オプションを使って SSL/TLS のメッセージを観察する

openssl s_client コマンドの -trace オプションを使うと SSL/TLS のメッセージを人間に優しい形でみることができる。 どういうメッセージが見られるかは OpenSSL with trace などで試すことができる。

ただ、リファレンスにある通り、このオプションは enable-ssl-trace をつけてビルドをしないと利用できず、例えば apt で配布されているバイナリでは無効になっている。

なので、 Debian buster コンテナ上でのビルド方法をここにメモしておく。

$ docker run -it --rm buildpack-deps:buster bash
root# cd /usr/local/src
root# curl -O https://www.openssl.org/source/openssl-1.1.1d.tar.gz
root# tar zxf openssl-1.1.1d.tar.gz
root# cd openssl-1.1.1d
root# ./config enable-ssl-trace && make && make install && make clean && ldconfig

こんな感じ。

root# openssl s_client -trace -connect google.com:443 -cipher "DEFAULT:@SECLEVEL=2"
CONNECTED(00000003)
Sent Record
Header:
  Version = TLS 1.0 (0x301)
  Content Type = Handshake (22)
  Length = 301
    ClientHello, Length=297
      client_version=0x303 (TLS 1.2)
      Random:
        gmt_unix_time=0xBF8D65C0
        random_bytes (len=28): (snip)
      session_id (len=32): (snip)
      cipher_suites (len=62)
        {0x13, 0x02} TLS_AES_256_GCM_SHA384
        {0x13, 0x03} TLS_CHACHA20_POLY1305_SHA256
        {0x13, 0x01} TLS_AES_128_GCM_SHA256
        {0xC0, 0x2C} TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384
        {0xC0, 0x30} TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
        {0x00, 0x9F} TLS_DHE_RSA_WITH_AES_256_GCM_SHA384
        {0xCC, 0xA9} TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256
        {0xCC, 0xA8} TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256
        {0xCC, 0xAA} TLS_DHE_RSA_WITH_CHACHA20_POLY1305_SHA256
        {0xC0, 0x2B} TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256
        {0xC0, 0x2F} TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
        {0x00, 0x9E} TLS_DHE_RSA_WITH_AES_128_GCM_SHA256
        {0xC0, 0x24} TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384
        {0xC0, 0x28} TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384
        {0x00, 0x6B} TLS_DHE_RSA_WITH_AES_256_CBC_SHA256
        {0xC0, 0x23} TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256
        {0xC0, 0x27} TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256
        {0x00, 0x67} TLS_DHE_RSA_WITH_AES_128_CBC_SHA256
        {0xC0, 0x0A} TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA
        {0xC0, 0x14} TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA
        {0x00, 0x39} TLS_DHE_RSA_WITH_AES_256_CBC_SHA
        {0xC0, 0x09} TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA
        {0xC0, 0x13} TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA
        {0x00, 0x33} TLS_DHE_RSA_WITH_AES_128_CBC_SHA
        {0x00, 0x9D} TLS_RSA_WITH_AES_256_GCM_SHA384
        {0x00, 0x9C} TLS_RSA_WITH_AES_128_GCM_SHA256
        {0x00, 0x3D} TLS_RSA_WITH_AES_256_CBC_SHA256
        {0x00, 0x3C} TLS_RSA_WITH_AES_128_CBC_SHA256
        {0x00, 0x35} TLS_RSA_WITH_AES_256_CBC_SHA
        {0x00, 0x2F} TLS_RSA_WITH_AES_128_CBC_SHA
        {0x00, 0xFF} TLS_EMPTY_RENEGOTIATION_INFO_SCSV
      compression_methods (len=1)
        No Compression (0x00)
      extensions, length = 162
        extension_type=server_name(0), length=15
          0000 - 00 0d 00 00 0a 67 6f 6f-67 6c 65 2e 63 6f 6d   .....google.com
        extension_type=ec_point_formats(11), length=4
          uncompressed (0)
          ansiX962_compressed_prime (1)
          ansiX962_compressed_char2 (2)
        extension_type=supported_groups(10), length=12
          ecdh_x25519 (29)
          secp256r1 (P-256) (23)
          ecdh_x448 (30)
          secp521r1 (P-521) (25)
          secp384r1 (P-384) (24)
        extension_type=session_ticket(35), length=0
        extension_type=encrypt_then_mac(22), length=0
        extension_type=extended_master_secret(23), length=0
        extension_type=signature_algorithms(13), length=42
          ecdsa_secp256r1_sha256 (0x0403)
          ecdsa_secp384r1_sha384 (0x0503)
          ecdsa_secp521r1_sha512 (0x0603)
          ed25519 (0x0807)
          ed448 (0x0808)
          rsa_pss_pss_sha256 (0x0809)
          rsa_pss_pss_sha384 (0x080a)
          rsa_pss_pss_sha512 (0x080b)
          rsa_pss_rsae_sha256 (0x0804)
          rsa_pss_rsae_sha384 (0x0805)
          rsa_pss_rsae_sha512 (0x0806)
          rsa_pkcs1_sha256 (0x0401)
          rsa_pkcs1_sha384 (0x0501)
          rsa_pkcs1_sha512 (0x0601)
          ecdsa_sha224 (0x0303)
          rsa_pkcs1_sha224 (0x0301)
          dsa_sha224 (0x0302)
          dsa_sha256 (0x0402)
          dsa_sha384 (0x0502)
          dsa_sha512 (0x0602)
        extension_type=supported_versions(43), length=9
          TLS 1.3 (772)
          TLS 1.2 (771)
          TLS 1.1 (770)
          TLS 1.0 (769)
        extension_type=psk_key_exchange_modes(45), length=2
          psk_dhe_ke (1)
        extension_type=key_share(51), length=38
            NamedGroup: ecdh_x25519 (29)
            key_exchange:  (len=32): (snip)

Received Record
Header:
  Version = TLS 1.2 (0x303)
  Content Type = Handshake (22)
  Length = 122
    ServerHello, Length=118
      server_version=0x303 (TLS 1.2)
      Random:
        gmt_unix_time=0x142E888C
        random_bytes (len=28): (snip)
      session_id (len=32): (snip)
      cipher_suite {0x13, 0x02} TLS_AES_256_GCM_SHA384
      compression_method: No Compression (0x00)
      extensions, length = 46
        extension_type=key_share(51), length=36
            NamedGroup: ecdh_x25519 (29)
            key_exchange:  (len=32): (snip)
        extension_type=supported_versions(43), length=2
            TLS 1.3 (772)
(snip)
このブログに出てくるコードスニペッツは、引用あるいは断りがない限りMITライセンスです。