管理人

SEとして働く管理人「まつ」がつぶやく個人運営サイトになります。 ITの難しい用語や、仕事で感じた事などを中心に"わかりやすさ"を意識して記事にしています。少しでも共感や参考にしていただける人がいたら嬉しいです。

CSMA/CDとは

2024/5/11

CSMA/CDとは|分かりやすく図解で解説

CSMA/CDとは CSMA/CD(英:Carrier Sense Multiple Access/Collision Detection)は、直訳すると「衝突検出のある搬送波感知・多重アクセス方式」という意味で、イーサネット(Ethernet)で利用されている通信方式のひとつです。 「通信を監視し回線に空きがあれば通信を開始、仮に衝突が発生したら一定時間待機後に再送する」といった衝突を回避するための通信方式です。 スイッチの普及や「全二重通信」が広く採用されている現在のイーサネットLANでは、「送信」と ...

ブリッジとは

2024/5/23

ブリッジとは | 分かりやすく図解で解説

ブリッジとは ブリッジ(bridge)とは、セグメント間の中継器です。流れてきたパケットの「MACアドレス」を確認し、必要があれば他のセグメントへとパケットを流す役割を持ちます。 OSI参照モデルではデータリンク層(レイヤ2)、TCP/IPの階層モデルではネットワークインタフェース層で使用されるネットワーク機器です。 ブリッジには「MACアドレス」を学習する機能があり、流れてきたパケットを監視することで、ブリッジに接続されているコンピュータがどのセグメントに属しているか「MACアドレス」を記憶します。 ※ ...

リピータとは

2023/8/4

リピータとは | 分かりやすく図解で解説

リピータとは リピータ(repeater)とは、電気信号の中継器であり、電気信号を受信し弱まったりノイズが入った信号を、 増幅や整形して元の信号に戻す役割を持つネットワーク機器です。 リピータが扱う信号には、有線通信における電気信号、光信号や無線信号があります。 上記図のように、電気信号は弱まったりノイズが入ったりします。リピータを中継することで、弱まった電気信号を元の信号と同じ強さ、同じ形に戻すことができます。   リピータは「10BASE2」や「10BASE5」「10BASE-T」といったイ ...

ブリッジとは

2022/12/25

スイッチングハブとリピータハブの違い

スイッチングハブとリピータハブの違い スイッチングハブ スイッチングハブの特徴は、宛先のコンピュータのみに電気信号を送る所です。スイッチングハブのポートに接続されている全てのコンピュータに送るのではなく、電気信号を必要なポートにしか流しません。 そのため「PC1」から「PC2」へデータを送ると同時に、「PC3」から「PC4」へデータを送るといった複数同時通信も可能です。   またOSI参照モデルでは、データリンク層(レイヤ2)のネットワークデバイスであり、MACアドレスを使用した宛先の識別を行い ...

【OSI参照モデル】物理層とは

2023/11/18

【OSI参照モデル】物理層とは

物理層とは 物理層とはOSI参照モデルの第一層(レイヤ1)で、上位層から送られてきたデータのビット列を「電気信号」や「光信号」「無線」などに変換するための手段が定義されている層です。 上記図のようにLANケーブルで接続されたコンピュータ同士が通信するためには、「0」と「1」で表現されたビット単位のデータを電気信号に変換する必要があります。また、光通信であれば「光信号」に変換、無線通信であれば「無線(電波)」に変換します。 このようにコンピュータ間でデータの送受信を可能とするために、ビット単位のデータを各信 ...

DHCPとは

2022/12/25

DHCPとは | 分かりやすく図解で解説

DHCPとは DHCPとは、インターネットなどのネットワークに一時的に接続するコンピュータに、IPアドレスなど必要な情報を自動的に割り当てるプロトコルです。   インターネットなどのネットワークに接続し通信をおこなうためには、IPアドレスと呼ばれるインターネット上の住所が必要です。 郵便物を送るときに「送り元住所」と「送り先住所」が必要なのと同じで、コンピュータ間で通信する際は「送信元IPアドレス」と「送信先IPアドレス」が必要なのです。   この「IPアドレス」を自動的に採番するネッ ...

UMLとは|UMLの種類

2022/12/25

UMLとは|UMLの種類を分かりやすく解説

UMLとは UML(Unified Modeling Language )とは、主にオブジェクト指向の開発において「データの構造」や「処理の流れ」などをわかりやすくビジュアル化した図のことで、設計段階で用いられる標準的な記法のことをいいます。 UMLには様々な種類があり、その中でも大きく以下の2つに分けられています。 システムの構造を表す構造図(structure diagram) 動作や変化を表す振る舞い図(behavior diagram) 【UMLの種類】構造図 クラス図(class diagram ...

【Java】ディープコピーの実装方法

2020/2/11

【Java】ディープコピーの実装方法

ディープコピーの実装方法 [方法1] Cloneableを使ってディープコピー(clone)する Javaで提供されているCloneableインタフェースを実装することで、ディープコピーすることができます。 1. Cloneableをimplementsし、cloneメソッドを実装する Cloneableを使ってディープコピーを実装する場合は、コピー対象となるオブジェクトがCloneableをimplementsする必要があります。 そしてcloneメソッドをOverrideしclone処理を書きます。 ...

ディープコピーとシャローコピーの違い

2023/8/4

ディープコピーとシャローコピーの違い

「ディープコピー」と「シャローコピー」の違い シャローコピーとは シャローコピーとは浅い(shallow)コピーと呼ばれ、実体(データ)のコピーを行わないで、オブジェクトをコピーする方式です。要するに見せかけの複製を作るコピーです。 オブジェクトはメモリ上にある実体(データ)を参照します。シャローコピーでは、実体(データ)のコピーを行わないので、シャローコピーで生成されたオブジェクトは、コピー元オブジェクトと同じ実体(データ)を参照することとなります。 シャローコピーで作られたオブジェクトは、参照している ...

ディープコピー(deep copy)とは

2022/12/25

ディープコピー(deep copy)とは

ディープコピー(deep copy)とは ディープコピー(deep copy)とは深い(deep)コピーと呼ばれ、コピー元オブジェクトから実体(データ)を複製し別オブジェクトを生成する方式です。 オブジェクト(データを格納する箱※Beanクラス)はメモリ上にある実体(データ)を参照しています。 このオブジェクトに対して「ディープコピー」を行うと、コピーされたもう一つの「コピー先オブジェクト」が生成されます。 この時、メモリ上にある実体(データ)もコピーされます。これが「ディープコピー」です。 「ディープコ ...

シャローコピー(shallow copy)とは

2022/12/25

シャローコピー(shallow copy)とは

シャローコピー(shallow copy)とは シャローコピー(shallow copy)とは浅い(shallow)コピーと呼ばれ、コピー元オブジェクトから、同じ実体(データ)を参照する別オブジェクトを生成する方式です。 オブジェクト(データを格納する箱※Beanクラス)はメモリ上にある実体(データ)を参照しています。 このオブジェクトに対して「シャローコピー」を行うと、コピーされたもう一つの「コピー先オブジェクト」が生成されます。 見た目は2つのオブジェクトが存在するように見えますが、実際は「コピー元オ ...

【UML】クラス図とは | クラス図の書き方と記号

2024/5/13

【UML】クラス図とは | クラス図の書き方と記号

クラス図(class diagram)とは クラス図とは、クラスの定義や関連付けを示す図です。 システムを構成するクラスに定義されている属性(フィールド)や操作(メソッド)を表現し、クラス間がどう関連付けられているかの関係性をあらわします。 クラス定義 クラスの定義は以下のような図で定義します。 クラス名 クラス名は以下の形式で記述します。 ※パッケージ名は省略可能です。 属性 属性は以下の形式で記述します。 ※フィールド名以外は省略可能です。 操作 操作は以下の形式で記述します。 ※メソッド名以外は省略 ...

Eclipseでクラス図を自動生成する方法

2022/12/25

Eclipseでクラス図を自動生成する方法

Eclipseでクラス図を自動生成する方法 Eclipseのプラグイン「AmaterasUML」を使用してクラス図を自動生成する手順を紹介します。 GEFインストール AmaterasUMLを使うためには、GEFが必要です。まずはGEFのインストールを行います。 【手順1】新規ソフトウェアのインストールを開く Eclipseを起動し「ヘルプ(H)」→「新規ソフトウェアのインストール」を押下します。 【手順2】GEF SDKの選択 作業対象(W)に「http://download.eclipse.org/r ...

ウイルス

2022/12/25

マルウェアの種類 マルウェアとウイルスの違い

マルウェアの種類 コンピュータウイルス 経済産業省の「コンピュータウイルス対策基準」によると、「自己伝染機能」「潜伏機能」「発病機能」の3つの中で1つでも当てはまればコンピュータウイルスであると定義されています。 (1)自己伝染機能 自らの機能によって他のプログラムに自らをコピーし又はシステム機能を利用して自らを他のシステムにコピーすることにより、 他のシステムに伝染する機能 (2)潜伏機能 発病するための特定時刻、一定時間、処理回数等の条件を記憶させて、発病するまで症状を出さない機能 (3)発病機能 プ ...

サイバー攻撃

2022/12/25

【セキュリティ】サイバー攻撃の種類まとめ

サイバー攻撃の種類まとめ サイバー攻撃とは、特定の国家、企業、団体、個人に対しネットワークを通じて「破壊活動」や「データの改ざん」「データの窃取」などを行う行為です。国家の安全保障を脅かしたりすることを目的とする破壊活動は、サイバーテロともいわれています。 不正アクセスを試みる攻撃 辞書攻撃 辞書攻撃とは、辞書に載っている単語や単語の組み合わせからパスワードの候補を作り、その候補を片っ端から試すことによりパスワードを破ろうとする攻撃です。 相当な数が収録されている辞書からパスワードの候補を作り、その候補を ...

一般的なWebアプリケーションの脆弱性対策まとめ

2020/10/2

一般的なWebアプリケーションの脆弱性対策まとめ

Webアプリケーションの脆弱性対策まとめ Webエンジニアであれば、一般的な知識であるWebアプリケーションの脆弱性対策。 本記事では、Webアプリケーションの脆弱性対策を図解で分かりやすく解説していきます。 [対策1] クロスサイト・スクリプティング クロスサイトスクリプティング(XSS)とは、Webサイトの掲示板など閲覧者が投稿できる入力フォームから「悪意のあるスクリプト」を投稿することで、Webサイトのページ内に悪意のあるスクリプトを埋め込む攻撃。 そして、悪意のあるスクリプトを埋め込まれたWebサ ...

メールヘッダ・インジェクションとは

2022/12/25

メールヘッダ・インジェクションとは | 分かりやすく図解で解説

メールヘッダ・インジェクションとは Webサイトには「お問い合わせフォーム」や「アンケート」などのように特定の相手にメールを送信する機能があります。この時、Webサイトで入力した内容を送信する相手はシステム側で固定(主にWebサイトの管理者など)されているのが一般的です。   メールヘッダ・インジェクション攻撃は「お問い合わせフォーム」や「アンケート」などのように特定の相手にメールを送信する機能に対して、入力データを"改ざん"することで、メールの送信先を「悪意のある攻撃者」によって操作する攻撃の ...

AMPページにコメント欄へのボタンを設置する方法

2022/12/25

AMPページにコメント欄へのボタンを設置する方法

【WordPress】AMPページにコメント欄へのボタンを設置する方法 AMPページに通常のコメント欄は表示されない AFFINGER5のコメント欄は以下のようなイメージですが、AMPを適用するとAMPページにコメント欄は表示されません。 AMPとはGoogleが推進する主にモバイルページの表示速度を高速に表示させるための技術です。AMPを適用することで、サイトの表示速度は高速となりますが、コメントのような一部の機能が使えなくなるデメリットがあります。   本記事では、AMPページにコメント欄へ ...

クロスサイトリクエストフォージェリ(CSRF)とは

2024/5/23

クロスサイトリクエストフォージェリ(CSRF)とは

クロスサイトリクエストフォージェリ(CSRF)とは クロスサイトリクエストフォージェリ(CSRF)とは、会員サイトなどでログイン状態を保持したまま「悪意のある攻撃者」が作成した罠サイトのボタンやリンクを押下することで、利用者の意図しない形でリクエストを送られてしまう攻撃です。 クロスサイトリクエストフォージェリ(CSRF)の説明の前に、セッションIDがどのようなものか理解しておくことをお勧めします。セッションIDの説明は以下をご覧ください。 [CSRFの流れ1] 会員サイトにログインする 悪意のある攻撃者 ...

ディレクトリトラバーサルとは

2022/12/25

ディレクトリトラバーサルとは | 分かりやすく図解で解説

ディレクトリトラバーサルとは ディレクトリトラバーサルとは、Webサイトからファイル名を直接指定するようなWebアプリケーションに対して、ファイル名を不正に書き換え、本来閲覧することができないファイルにアクセスする攻撃です。   例えば、以下のようなWebアプリケーションが存在するとします。 Webサーバには、以下の2つのファイルが存在。 /home/work/sample.txt :公開しているファイル /home/pass/password.txt :機密情報で公開していないファイル そして ...