タグ

ブックマーク / eng-blog.iij.ad.jp (5)

  • HTTPSレコードがRFCになりました | IIJ Engineers Blog

    RFC9460が出ました 昨年、このエンジニアブログでHTTPSレコードについてとりあげました。これを書いたときはHTTPSレコードはまだインターネットドラフトだったのですが、2023年11月、ついにRFC9460として標準化されました。 RFCにはなったけど日語の詳しい記事はまだ少ないし需要あるかなーと思って改めて解説を書きはじめたんですが、だらだらとクソ長くなって書いた人が読んでも眠くて退屈な内容になってしまいました。ので、書いたものはばっさり捨てました。 そういえばいまから3年前、DNS Summer Day 2021で発表したプレゼン資料がありました。これをRFCになった現在の内容にあわせてアップデートしたほうがてっとりばやいしわかりやすそうです。 ということで、加筆修正した資料を置いておきます。DNS屋さんはとりあえず全部読んでおいてください。Web屋さんは前半だけ理解してお

    HTTPSレコードがRFCになりました | IIJ Engineers Blog
    efcl
    efcl 2024/02/23
    HTTPSレコードについて。 HTTPに限定したCNAME + MX、ハンドシェイクする前にHTTP/3が利用できることをDNSで返せる仕組み。
  • 入れ子構造を自由に拡張する – TypeScript版「Trees that Grow」 | IIJ Engineers Blog

    Haskellユーザーグループ(愛称 Haskell-jp)発起人の一人にして、Haskell-jpで一番のおしゃべり。 HaskellとWebAssemblyプリキュアとポムポムプリンをこよなく愛する。 This is a Japanese translation of Flexiblly Extend Nested Structures – “Trees that Grow” in TypeScript. 抽象構文木(AST, Abstract Syntax Tree)の扱いに慣れた一部のHaskell開発者の間では、「Trees that Grow」というイディオムが一般的で、Haskellの最も有名なコンパイラ、GHCにおいても採用されています。今回は、この「Trees that Grow」をTypeScriptで実現するにはどうすれば良いかを共有しましょう。 あらまし Ha

    入れ子構造を自由に拡張する – TypeScript版「Trees that Grow」 | IIJ Engineers Blog
    efcl
    efcl 2023/04/04
    ASTの型を外からも拡張できるように型。 interfaceの暗黙的なマージを使った方法、Extendsする型を渡せるようにする方法
  • QUICをゆっくり解説(1):QUICが標準化されました | IIJ Engineers Blog

    Haskellコミュニティでは、ネットワーク関連を担当。 4児の父であり、家庭では子供たちと、ジョギング、サッカー、スキー、釣り、クワガタ採集をして過ごす。 不定期連載を始めます IIJ-II 技術研究所 技術開発室の山です。私はプログラミング言語HaskellでHTTP/2とTLS 1.3を実装した後、もっぱらQUICを実装することに時間を費やしてきました。 ご存知の方もいらっしゃると思いますが、今年の5月にQUICの仕様がRFC9000として公開されました。このRFCは実によく書かれているので、読みこなせばQUICの全容が掴めるでしょう。 しかし仕様は膨大ですし、実際に実装してみて初めて腑に落ちることもあります。そこでこの機会に、実際にQUICを実装した経験者目線で、QUICの解説をしていきたいと思います。なんとなくTCP/IPを分かっている方が、ある程度QUICの理解ができることを

    QUICをゆっくり解説(1):QUICが標準化されました | IIJ Engineers Blog
    efcl
    efcl 2021/07/02
    QUICの解説
  • JavaScriptマルウェアの解析テクニック | IIJ Engineers Blog

    Twitterフォロー&条件付きツイートで「バリーくんぬいぐるみ」を抽選で20名にプレゼント! 応募期間は2019/11/29~2019/12/31まで。詳細はこちらをご覧ください。 今すぐツイートするならこちら→ フォローもお忘れなく! 【IIJ 2019 TECHアドベントカレンダー 12/8(日)の記事です】 はじめに JavaScriptは、Webページに対して動的な処理を実行するプログラミング言語ですが、近年マルウェアのダウンローダなど悪意ある様々な用途に利用されるケースが多く見受けられます。PE(Portable Executable)のマルウェアに関する解析記事はインターネット上に多く存在しますが、特に日語で書かれたJavaScriptに焦点を当てた記事はとても少ないのが現状です。そこで記事では、JavaScriptマルウェアを解析する際に便利なテクニック(暗黙の内に使っ

    JavaScriptマルウェアの解析テクニック | IIJ Engineers Blog
    efcl
    efcl 2019/12/09
    難読化されてるコードを分析する手法。 evalとかを則って実装したタンプを吐く
  • ドキュメントの継続的な開発方法 | IIJ Engineers Blog

    私はソフトウェア開発を主体とするエンジニアで、 クラウドサービスの開発・運用 分散処理技術の検証とサービス利用の検討 社内の開発支援環境の開発・運用 などの業務に従事していますが、今回の記事は業務とは直接的な関係は無く、私が会社で勝手自発的に行っている取り組みについて書きたいと思います。 昨今、インターネットは生活に深く浸透し、クラウドサービスを利用することで安く簡単にWebサービスを開発、公開できるようになりました。Web技術の進化や流行の移り変りも非常に激しく、既存サービスの機能追加や新規サービスの開発は頻繁に行われています。それは弊社も例外ではありません。 このような開発の現場では、リーンソフトウェア開発への取り組みなど開発手法の最適化が積極的に行われ、様々なベストプラクティスが生みだされています。それらのベストプラクティスには、 継続的インテグレーション や 継続的デプロイメント

    ドキュメントの継続的な開発方法 | IIJ Engineers Blog
    efcl
    efcl 2016/05/30
    textlint+reST(Sphinx)の事例だ。 presetをもっとカジュアルに公開できるようにしたいな。 https://github.com/textlint/textlint/issues/210 https://github.com/textlint/textlint/issues/209
  • 1