Software Design 2022年3月号

[表紙]Software Design 2022年3月号

紙版発売
電子版発売

B5判/192ページ

定価1,342円(本体1,220円+税10%)

ただいま弊社在庫はございません。

電子版

今号の特集概要

第1特集
今さら聞けない暗号技術
セキュア通信を実現する公開鍵暗号のしくみ

ネットワーク上の脅威の代表選手として「盗聴」「改ざん」「なりすまし」が挙げられます。これらのリスクを解消するために使われているのはどんな技術でしょうか。そう,暗号技術です。暗号技術は,情報の秘匿を目的とした機密性を実現する技術としてよく知られています。しかし,そのほかにも,データが正確であることを示す完全性や,対象データの証跡を残す否認防止,改ざんやなりすましがないかを示す真正性といった機能も保持しており,それぞれの目的でさまざまな暗号アルゴリズムが活用されています。
本特集で,これらの暗号技術の理論を改めて基礎から学び直してみましょう。

第2特集
そろそろはじめるテスト駆動開発
JavaScriptでテストファーストに挑戦

ソフトウェアの動作検証をコードとして記述し,コマンド1つで自動的に検証を行う「自動テスト」は,その手軽さや保守性の向上効果から広く普及しています。この自動テストを,テスト対象のコードより先に書いてしまう「テストファースト」,さらにその発展形である「テスト駆動開発(TDD)」という開発手法があります。コードより先にテストを書くという一見奇妙なフローに,どのようなメリットがあるのでしょうか。ソフトウェアの設計,開発者のメンタルの面から考察します。また,TDDには体験してはじめて理解できる良さもあります。百聞は一見に如かず,JavaScriptの自動テスト環境を整えて,TDDを実践してみましょう。

特別企画
セキュリティキーITエンジニア流使いこなし術
[後編]SSHでセキュリティキーを活用する

昨今のWebサービスでは二要素認証が当たり前になってきました。でも,パスワードとSMSの二要素認証ではもう危険かもしれません。より強固な対策として注目されているのがセキュリティキーというデバイスです。前後編の2回にわたり,日常のWeb閲覧のほか,GitHubなど開発でセキュリティキーを使う方法を紹介します。

短期連載
Cypressで作る“消耗しない”E2Eテスト環境
[3]ソフトウェアの品質をアップさせるテストの書き方

本連載ではE2Eテストのフレームワークである「Cypress」についてお話しします。Cypressの基本的な使い方やその特徴,さらにはアドバンスドな使い方まで,3人の筆者が紹介していきます。開発者フレンドリーなCypressを使って,消耗しないテスト環境を作りましょう。

短期連載
リアルタイム通信アプリを支える技術
[最終回]実践的なリアルタイム通信サービスの設計

マルチプレイヤーゲーム,バーチャルライブ,メタバースなど,いまや複数のユーザーが同時に利用するサービスやイベントは珍しくありません。そんなリアルタイム通信アプリを実現するためのフレームワークエンジンを開発するDiarkisのエンジニアが,リアルタイム通信の技術やアーキテクチャの今をダイジェストで解説します。

目次

第1特集
今さら聞けない暗号技術
セキュア通信を実現する公開鍵暗号のしくみ

  • 第1章全体像,しくみ,活用場面をおさらい
    ネット社会を支える暗号化のキホン
    …… 大竹 章裕
  • 第2章HTTPS通信に欠かせない
    公開鍵暗号と共通鍵暗号のしくみ
    …… 瀬戸口 聡
  • 第3章ディジタル証明書を実現・運用するための要素
    暗号を使った認証技術
    …… 庄司 勝哉
  • 第4章電子署名のプロセスを体験
    Pythonによる楕円曲線暗号の実装
    …… 光成 滋生

第2特集
そろそろはじめるテスト駆動開発
JavaScriptでテストファーストに挑戦

  • …… 和田 卓人(監修)
  • 第1章保守しやすく変化に強いソフトウェアを支える柱
    自動テストとテスト駆動開発,その全体像
    …… 和田 卓人
  • 第2章TDDのその前に
    自動テストの環境を構築しよう
    …… 櫛引 実秀
  • 第3章レッド・グリーン・リファクタリングのリズムを体験
    実践! テストファースト
    …… 櫛引 実秀

一般記事

  • [特別企画]セキュリティキーITエンジニア流使いこなし術
    【後編】SSHでセキュリティキーを活用する
    …… やまねひでき
  • [短期連載]Cypressで作る“消耗しない”E2Eテスト環境
    【3】ソフトウェアの品質をアップさせるテストの書き方
    …… 渋川 よしき
  • 【最終回】[短期連載]リアルタイム通信アプリを支える技術
    【4】実践的なリアルタイム通信サービスの設計
    …… 高橋 信頼

連載

  • ITエンジニア必須の最新用語解説
    【159】Envoy Proxy……杉山 貴章
  • できる! 自作キーボード工房
    【10】シルクプリントと発注……サリチル酸
  • 結城浩の再発見の発想法
    【106】トランザクション……結城 浩
  • 【最終回】Raspberry PiでエッジAI
    【11】顔認識でプレイリスト自動再生 ~複数プレイヤー編……山川 正美
  • 【新連載】衛星データプラットフォームTellusハンズオン
    【1】衛星データと機械学習のトレンド……Tellusオウンドメディア「宙畑」編集部
  • 明後日のコンピューティングを知ろう
    【13】PCI Express 5.0……松本 直人
  • 分解教室
    【10】ノイズキャンセル機能付きワイヤレスイヤフォン……清水 洋治
  • 【新連載】今日から始めるサイバー脅威インテリジェンス
    【1】インテリジェンスって何だろう ~CTIの概念と始め方……皆川 諒
  • データ生成技術で理解するディープフェイクのしくみ
    【2】ディープフェイクのしくみと基盤技術……中山 浩太郎
  • 【最終回】ディープラーニング高速化・軽量化技術の最前線
    【6】深層学習のモデル軽量化技術……坂井 靖文
  • 【最終回】Pythonモダン化計画
    【8】設計方針から変えていく,モノリシックなアプリの過去と未来……増田 泰
  • UNIXテキスト処理の極意
    【8】JSONを処理する……中島 雅弘
  • チーム開発の視点が変わる アジャイル開発の新常識
    【16】SREで実践する,インフラを巻き込んだDevOps……兼清 裕平,梶原 直人(監修)
  • ヤマハルーターネットワーク本格構築入門
    【4】LAN構築編~SWXシリーズを使用したネットワーク環境構築……寺西 祐樹
  • systemd詳解
    【10】core dump管理……森若 和雄
  • はじめよう,おうちクラウド
    【5】K8sに便利なOSSツール……伊藤 裕一
  • ひみつのLinux通信
    【97】100日後にカーネルパニックするLinux……くつなりょうすけ
  • こんなときどうする? エンジニアも知っておきたい法律知識
    【7】ベンダーのプロジェクトマネジメント義務……弁護士 坂田 晃祐
  • あなたのスキルは社会に役立つ~エンジニアだからできる社会貢献~
    【123】2021年度「アイデアソン+仙台」企画運営で得たもの……高橋 そのみ