技術書出版
ラムダノート株式会社
世界中の技術者と研究者の「専門知識をわかりやすく伝える」をお手伝いします。
『Webブラウザセキュリティ ― Webアプリケーションの安全性を支える仕組みを整理する』
ブラウザの視点で学ぶセキュリティ
現代のWebブラウザには、ユーザーがWebというプラットフォームを安全に利用できるように、さまざまなセキュリティ機構が組み込まれています。
- リソース間に境界を設定し、アプリケーションに制限を課す機構(Origin、SOP、CORS、CSPなど)
- Webブラウザの動作をOSのプロセスレベルで考察することで役割が理解できる機構(CORB、CORP、Fetch Metadataなど)
- 通信路や受け取ったデータの状態に関するもの(HSTS、SRIなど)
- 現在のWebアプリケーションにとって不可欠なCookieに関するセキュリティ機構
こうしたセキュリティ機構のほとんどは、Webブラウザを開発する人やセキュリティの専門家が知っていればいいものではありません。
アプリケーション開発者が、自分のアプリケーションで正しく利用したりデプロイしたりすることではじめて効果を発揮し、そのユーザーを守るのに役立つものです。
とはいえ、アプリケーションを開発する立場では、これらの機構が単にアプリケーションの制約や複雑さを増す要素にしか思えない場合もあるでしょう。
バイパスされたり、弱めた状態で利用されたり、あるいは一種の「おまじない」として扱われている場合さえあるかもしれません。
本書は、これら「現代のWebブラウザが備えていてアプリケーション開発者にも理解が求められる多様なセキュリティ機構」について、一つひとつ丁寧に整理して解説するものです。 そもそもどんな脅威に対抗するためのセキュリティ機構なのか、現在の形でWebブラウザに導入されているのはなぜか、攻撃者がさらに対抗してくる可能性はないのか、リファレンスなどを通じて使い方を調べるだけでは理解しにくい背景まで掘り下げて説明しています。
攻撃者とWebブラウザ開発者たちとのせめぎ合いの歴史から、Webセキュリティについての理解を深める一冊です。
著者紹介
米内貴志
2017年より東京大学理学部情報科学科在学中。2019年より株式会社Flatt Securityにてプロダクト開発とWebシステムに関するセキュリティ技術の研究に従事。一般社団法人セキュリティ・キャンプ協議会やSECCON実行委員会の一員として、情報セキュリティ技術の教育活動や、CTF(セキュリティ技術を競うコンテスト)の開催、運営にも参画している。
『Engineers in VOYAGE ― 事業をエンジニアリングする技術者たち』
ウェブシステム=ソフトウェア技術+ビジネス
- 株式会社VOYAGE GROUP 監修、和田卓人 編
- 224ページ
- A5判
- ISBN:978-4-908686-09-2
- 2020年8月7日 第1版第1刷 発行
- 株式会社VOYAGE GROUPのサイト(リンク)
ともすれば、互いに相反する関心を追っているとさえ捉えられる「ビジネス」と「ソフトウェアエンジニアリング」。しかし現実のウェブシステムで事業を成り立たせるためには、両者を分け隔てることなく、技術力と洞察力と調整力をもって課題に取り組む必要があります。
本書は、和田卓人氏による株式会社VOYAGE GROUPのソフトウェア技術者11人へのインタビューに補足解説を添えて、1冊の書籍としてまとめたものです。ビジネスとエンジニアリングを両輪にしながら多様な事業のウェブシステムを開発、運用するフルサイクルエンジニアたちの当事者意識、意思決定のスピード感、そして創意工夫の数々を和田卓人氏が引き出します。
本書の制作にあたっては、株式会社VOYAGE GROUPから制作費を出資いただいています。
読者の声
「アフターDXの働き方がここにある。非エンジニア必見、コードで金を稼ぐ世界のリアル。DXは達成することが大切なのではない、DXされた環境を維持していくことが大切なのである。本書はそのリアルな世界を垣間見させてくれる。企業のDX担当者には必携の一冊」
n月刊ラムダノート
計算機好きのための技術解説情報誌
n月刊ラムダノート(エヌゲッカンラムダノート)は、nヶ月ごとに刊行される計算機好きのための技術解説情報誌。コンセプトは「いろんなIT系技術書から1 章ずつ選んできた解説記事の集まり」です。毎回3~4つの記事が掲載されて1500円。
本誌の紙書籍については、配送料当社負担でお届けします。副作用として、n月刊ラムダノート(紙版)と一緒に他の書籍をお買い上げいただくと、注文全体の配送料負担が無料になります(PDF版n月刊ラムダノートの同時購入では通常の配送料がかかります)。
バックナンバー
■ Vol.2, No.1(2020)
|
■ Vol.1, No.3(2019)
|
■ Vol.1, No.2(2019)
|
■ Vol.1, No.1(2019)
|
『徹底解説 v6プラス』
日本のIPv6とIPv4インターネット接続は「v6プラス」を知れば見えてくる
- 日本ネットワークイネイブラー株式会社 監修、小川晃通・久保田聡 共著
- 120ページ
- A5判
- ISBN:978-4-908686-08-5
- 2020年1月22日 第1版第1刷 発行
- 日本ネットワークイネイブラーのサイト(リンク)
- 著者によるブログ(リンク)
本書は、日本ネットワークイネイブラー株式会社(JPNE)による出資のもと、同社が提供する「v6プラス」の要素技術について解説した書籍です。本書のPDF版はJPNEのサイトからも無償で入手できます。
「v6プラス」そのものはISP向けに提供されるBtoBサービスであり、エンドユーザが導入を検討するものではありません。本書の内容も、ISPの立場で「v6プラス」に関する技術情報を必要とする方々を主な対象にしています。とはいえ、フレッツ網というIPv6閉域網からIPv6とIPv4の両方のインターネットへの接続をエンドユーザに提供する「v6プラス」の背景を知ることは、IPv6 IPoEやMAP-EといったIPv6に関する応用的な技術の理解はもちろん、IPv4 NATに関する深い洞察にも繋がるでしょう。本書は、たくさんの図とわかりやすい言葉で、「v6プラス」の全体像を丁寧に解説したものです。
『プログラミングHaskell 第2版』
プログラムが、手続きでなく、関数と型に見えてくる
- Graham Hutton 著、山本和彦 訳
- 328ページ
- A5判
- ISBN:978-4-908686-07-8
- 2019年8月2日 第1版第1刷 発行
Haskellは、1990年に誕生した歴史あるプログラミング言語です。強力な型推論を備えた、静的型付きで遅延評価の純粋関数型言語として知られています。Haskellを知ることは、こうした概念の背景にある計算機の理論を知り、それが実際のプログラミングにどのような効果を及ぼすかを知ることでもあります。
本書では、さまざまな例題をとおして、関数の組み合わせによりプログラムを自在に構築する力を身に着けられます。
そして、その抽象化を支える型と型クラスについて知り、アプリカティブやモナド、Foldable、Traversableといった型クラスによって整理された現代のHaskellプログラミングの姿を学べます。
さらに、プログラムを手続きではなく宣言として書くことの利点のひとつとしてプログラムの論証を体験し、その応用として、ソース言語の仕様からコンパイラーを算出するという高度な例題に挑戦します。
本書の原書にあたるのは "Programming in Haskell, 2nd Edition" です。
『みんなのデータ構造』
配列、リスト、木、グラフ、それぞれの理論的な特性を知り、実装まで理解するためのガイドブック
- Pat Morin 著、堀江 慧・陣内 佑・田中 康隆 共訳
- 288ページ
- A5判
- 電子書籍の形式:PDF
- ISBN:978-4-908686-06-1
- 2018年7月20日 第1版第1刷 発行
データの格納方法を工夫するだけで、魔法みたいにアルゴリズムが導出できる。うまくデータを整頓するだけで、画期的に計算が速くなる。仕事で直面している問題がなかなか解決しないのは、問題に対する適切なデータ構造を知らないから、というだけかもしれません。
計算機科学の授業で当たり前のように学ぶさまざまなデータ構造。学部生向けの教科書としてはもちろん、理論を学ぶチャンスがないまま業務でプログラムを開発しているエンジニアや、そもそも学ぶ機会がまだ訪れていない高校生プログラマが、その考え方の基本を学ぼうとするときに手に取るべき一冊です。
『プロフェッショナルIPv6』
もはや次世代ではないIPv6のリアルな全体像に最速でキャッチアップするための一冊
- 小川晃通 著
- 456ページ
- B5判
- ISBN:978-4-908686-04-7
- 電子書籍の形式:PDF
- 2018年7月20日 第1版第1刷 発行
インターネットの歴史そのものであり続けたきたIPv4。そのIPv4アドレスの中央在庫が2011年に枯渇し、いよいよ存在感が増しているIPv6。互換性がないこれら2つのプロトコルが併用され、デュアルスタック状態で運用されているのが、現在のインターネットの実像です。その実像を捉えるには、比較的シンプルな仕組みであったIPv4ベースのネットワークの理解に加えて、近隣探索やアドレス自動生成、マルチプレフィックスといったIPv6ならではの概念を把握することはもちろん、両者を1つのインターネットとして束ねているDNSや、相互接続のためのNATに関する知識が不可欠になります。
本書では、いまやネットワーク管理者のみならずアプリケーション開発者にとっても避けては通れないIPv6プロトコルの基本的な仕組み、IPv4とのデュアルスタックを支える技術、そしてIPv4との共存について俯瞰的に解説します。日本固有の問題ともいえるNTT NGNにおけるIPv6接続についても付録にて詳解。
『数式組版』
科学を正しく伝える技術としての数式組版
- 木枝祐介 著
- 304ページ
- A5判
- ISBN:978-4-908686-05-4
- 2018年4月22日 第1版第1刷 発行
数式組版では、すべての要素の配置、サイズ、スペースに意味がある。豊富な組版例と愚例を交えつつ、その理論の体系化を追求した唯一無二の解説書。
職業として組版に携わる人にとって必携であることは言うまでもなく、読者として組版された数式を正しく読むときのガイドとして、あるいは、数式をモチーフとした意匠のヒントとしても最適。
付録では、LaTeXにおける数式組版の考え方の紹介と、さまざまな数式組版の実例をギャラリー形式で掲載。
『定理証明手習い』
プログラムの正しさは証明できる。定理証明へ踏み出すための最高のガイドブック
- Daniel P. Friedman, Carl Eastlund 著、中野圭介 監訳
- 240ページ
- A5判
- ISBN:978-4-908686-02-3
- 2017年10月23日 第1版第1刷 発売
あるプログラムが、考えられるあらゆる入力に対して誤った動作を引き起さないことは、テストを書いても確かめられません。それを確かめるには、公理と式の等価な書き換えだけで恒真を導いたり、再帰的なプログラムの構造に照した帰納法による証明が必要です。
なんだか難しそうに聞こえるかもしれませんが、その世界観を丁寧にときほぐして解説したのが、本書の原書にあたる "The Little Prover" です。
『Goならわかるシステムプログラミング』
Go言語による新時代のコンピュータシステム入門
- 渋川よしき 著
- 388ページ
- A5判
- ISBN:978-4-908686-03-0
- 2020年4月27日 第1版第4刷 発行
- 正誤表(1刷に対するものです。4刷の正誤表は少々お待ちください)
いつも開発に使っている言語やライブラリの裏側は、いったいどうなっているの? システムプログラミングの世界を知りたいと思ったら、やっぱりC/C++のコードを読むしかないのだろうか……。
そんなことはありません! 低レイヤはOSの世界。いまなら、さまざまなOSで動作するプログラムをシンプルに記述できるGo言語があります。 本書では、Go言語の実装を掘り下げたり、さまざまなライブラリが利用しているコンピュータシステムの基本的な概念を学びながら、アプリケーション開発者の視点で低レイヤの仕組みを学んでいきます。
2016年9月から2017年8月にかけてアスキーjpの「プログラミング+」コーナーで連載された大好評のWebコンテンツを、さらにわかりやすく紙版の書籍として編纂、発売するものです。連載では扱えなかったOSにおける時刻・タイマー、およびセキュリティ関連の情報を加筆。豊富なイラストも全面的に改訂のうえ収録しています。
『プロフェッショナルSSL/TLS』
Webセキュリティ解説の決定版 "Bulletproof SSL and TLS" の全訳(原書2017年版へのアップグレード済み)
- Ivan Ristić 著、齋藤孝道 監訳
- 520ページ
- B5判
- ISBN:978-4-908686-00-9
- 発行:2020年7月4日 第1版第5刷(原書2017年版アップグレード対応済み)
- 本サイトにてユーザ登録のうえ購入いただくと、原著改訂第2版に収録されるTLS 1.3の解説章を付録として含んだ特別版PDFがお読みいただけます
現代生活を支えるネットワークにとって、通信の暗号化は不可欠の機能です。しかし、実際のインターネットで暗号化通信を利用できるようにするには、暗号化アルゴリズムの知識だけでなく、セキュリティプロトコルとその実装技術、さらに、基盤となる信頼モデルについての幅広い知識と経験が必要になります。
本書は、いまやインターネットにおける暗号化通信に不可欠となったセキュリティプロトコルであるTLS(SSL)の全体像を体系的かつ具体的に語った、‟Bulletproof SSL and TLS”(Ivan Ristić 著)の全訳です。
『RubyでつくるRuby ゼロから学びなおすプログラミング言語入門』
Rubyインタプリタを自作してプログラミングを始めよう!
- 遠藤侑介 著、hirekoke イラスト
- 144ページ
- A5判
- ISBN:978-4-908686-01-6
- 2017年3月31日 第1版第1刷 発売
プログラミングを始めるなら、プログラミング言語を自分でつくってみるのがいちばん! 最低限の機能なら、こんなに簡単にインタプリタを作れます。よくわからなかったプログラミングも、裏側の仕組みから分かってしまえば怖くない!
本書は、2016年9月から2017年1月にかけてアスキーjpの「プログラミング+」コーナーで連載された大好評のWebコンテンツ『Rubyで学ぶRuby』を、さらにわかりやすく紙版の書籍として編纂しなおして限定発売。豊富なイラストもカラーで完全採録したものです。