新しいフォルダー(1)

メモです。よろしくおねがいします。

[JS] グローバルオブジェクト

グローバルオブジェクト JavaScript上に存在する組み込みオブジェクトやその他ユーザ定義のオブジェクトは全てオブジェクトに格納されている必要がある. その格納するオブジェクトの内, 最上位に位置するオブジェクトがグローバルオブジェクトと呼ばれるもの…

[暗号] IPとIP^-1

ITC Advent Calendar 7日目. 今日はDESのIPとIP-1についてです. 誰も興味ないとか知らねーです. IP IP(Initial permutation, 初期転置)とは, 入力された64bitの平文に対して最初に行われる転置処理である. IPには以下のテーブルを用いる. 例えば, 入力され…

[暗号] Sボックス

ITC Advent Calendar 6日目. 今日はSボックスについてです. 誰も興味ないとか知らねーです. Sボックス Sボックス(subscription box, S-box)とは, 平文と暗号文の相関(線形性)を壊すための仕組みとして利用される関数のことである. Sボックスは, mビットの入…

[暗号] ラウンド関数

ITC Advent Calendar 5日目. 今日はDESのラウンド関数についてです. 誰も興味ないとか知らねーです. ラウンド関数 32bitのビット列と48bitのサブ鍵を入力し, 32bitのビット列を出力する関数である. 1. Expansion function(E) 32bitのビット列を48bitに拡張…

[暗号] 鍵スケジュール

ITC Advent Calendar 4日目. 今日はDESの鍵スケジュールについてです. 誰も興味ないとか知らねーです. 鍵スケジュール 鍵スケジュールとは, DESなどのブロック暗号において入力された64bitの鍵から48bitのサブ鍵を16個生成する部分である. 1. Permuted Cho…

[暗号] ファイステルネットワーク

ITC Advent Calendar 3日目. 今日から数日間に分けてブロック暗号の構造を解説します. 今日はファイステルネットワークについてです. 誰も興味ないとか知らねーです. ファイステルネットワーク ファイステルネットワークはファイステル構造, ファイステル暗…

[文字コード] Base64

Base64 データを64種類の英数字を用い, それ以外の文字を扱うことのできない環境にてマルチバイト文字やバイナリデータを扱うためのエンコーディング方式である. RFC 2045の6.8項で定義されている. 使用できる文字は, A - Z, a - z, 0 - 9, +, /の64文字とパ…

[文字コード] 一般化可変長整数

一般化可変長整数 国際化ドメイン名では, マルチバイト文字のドメイン名がDNS上でASCII文字にエンコードされてやり取りが行われる. そのときに使われるエンコーディング方式はPunycodeと呼ばれ, Punycodeでのエンコード・デコード処理の一部にこの一般化可変…

[文字コード] Punycode

Punycode Punycode(ピュニコード, プニコード)とは, 国際化ドメイン名で使用されるエンコーディング方式で, RFC 3492で定義され, RFC 5891で更新されている. Adam M. Costello氏によって考案され, 仮称はAMC-ACE-Zであった. ASCII文字で対応できる文字をその…

[文字コード] ホモグラフ攻撃

ホモグラフ攻撃 ホモグラフ攻撃(同形異字語攻撃)とは, URLのホスト名の文字として, 真正なサイトに酷似した異なる文字を用いて偽装し, 偽サイトに誘導するスプーフィングの一種である. IDNホモグラフ攻撃 国際化ドメイン名(IDN: Internationalized Domain Na…

[PHP] コンストラクタとデストラクタ

PHP

コンストラクタ コンストラクタはクラスをインスタンス化したときに暗黙的にコールされる. PHPでは__construct()というマジックメソッドで実現されている. コンストラクタは一般的にプロパティの初期化などに用いられる. name = $name; } } デストラクタ デ…

[アーキテクチャ] x86アーキテクチャ

x86アーキテクチャに関するメモ. x86アーキテクチャ x86アーキテクチャとは, Intel社が開発したマイクロプロセッサのシリーズ名. このシリーズのプロセッサは8086 -> 80186 -> 80286 -> i386 -> i486 -> Pentiumの順にリリースされたため, この名前で呼ばれ…

[PHP] マジックメソッド

PHP

マジックメソッド マジックメソッド(特殊関数)とは, インスタンスがある特定の条件を満たしたときに明示的にコールしなくても暗黙的にコールされるメソッドのこと. メソッド名の先頭に__(アンダースコア2つ)が付加されているのが特徴. 例 __construct()はク…

[PHP] ショートタグ

PHP

short_open_tag = on short_open_tag = onは, が誤動作する可能性を排除するためである. 現状でもshort_open_tag = offが推奨されている. ショートタグ

[PHP] 終了タグ

PHP

PHPの終了タグに関するメモ. 終了タグ PHPの処理は開始タグ()の中に記述するが, PHPのコードのみからなるファイルでは終了タグを記述しない方が良い. これは, ファイルの最後に余計な改行・空白が含まれている場合に表示や動作に問題を引き起こす可能性を排…

[文字コード] UnicodeとUTF-Xの違い

UnicodeとUTF-8, UTF-16, UTF-32の違いに関するメモ. Unicode Unicodeは文字集合のこと. 1つひとつの文字に符号位置と呼ばれる整数値をつけて管理している. UTF-X UTF-8, UTF-16, UTF-32などはエンコーディング方式と呼ばれるもので, 符号位置の整数値をコ…

[文字コード] BOM

BOMについてのメモ. BOM BOM(Byte Order Mark)とは, Unicodeなどの16ビット幅のエンコーディング方式において, バイトオーダーを指定するためにファイルの先頭に挿入される16ビットの値. UTF-16などのエンコーディング方式では, ビット列の並びとしてリトル…

[文字コード] バイトオーダー

ビッグエンディアンとリトルエンディアンの違いに関するメモ. バイトオーダー バイトオーダー(エンディアン)とは, 2バイト以上で構成されるデータをメモリ上に展開したりどこかへ転送する場合のデータの順序のこと. バイトオーダーにはビッグエンディアンと…

[PHP] シングルクォーテーションとダブルクォーテーションの違い

PHP

PHPのシングルクォーテーションとダブルクォーテーションの違いに関するメモ. シングルクォーテーション 文字列中の変数を値に置換しない.