ホーム 主筆 その他ソフト その他情報 Syuhitu.org English

Windows関連

スクリーンセーバー作成法

半透明ウインドウの性能

bootfont.bin

キャビネット形式

ウインドウスタイルをいじる

Java製ソフトをServiceに登録する

イベントログにメッセージを出力する

コントロールパネルにアイコンを追加する

スクリプトによる拡張1

スクリプトによる拡張2

ガジェットの作成

大容量メモリ

メモリ搭載量の下限に挑む

スパースファイルにする

表示されるアイコンの種類を調べてみた

メモリマップIOとエラー処理

ファイルを作る順番と速度の関係

Cryptography API: Next Generationを使う

Windows 10のアクセントカラー

iSCSIディスクにバックアップを取る

サーバプロセスを分離して実装する

サーバプロセスを分離して実装する - F#

レジストリに大量に書き込む

Solaris関連

OpenGL

Solaris設定

ディレクトリの読み込み

主筆プラグイン開発

マルチスレッドでの開発

door

音を出す

Blade100の正しい虐め方

パッケージの作成

画像入出力

BMPファイル

ICOファイル

ANIファイル

JPEGファイル

減色アルゴリズム

減色アルゴリズムの並列化

その他アルゴリズムなど

自由軸回転

Base64

文字列操作

CPU利用率の取得

正規表現ライブラリ

メタボールを作る

メタボールを作る2

正規表現とNFA・DFA

C言語の構文解析

液晶ディスプレイを解体してみた

iSCSIの理論と実装

単一フォルダにファイルを沢山作る

USB-HUBのカスケード接続

SafeIntの性能

VHDファイルのフォーマット

USBメモリに書き込み続けてみた

Cryptography API: Next Generationを使う

Windowsで提供される暗号化ライブラリである。

何でこんな、よくあるハリウッド映画のようなダサい名前なのかは知らない。しかも略称が決まっていてCNGという。天然ガスか

参考文献

当たり前だが、結局以下に必要なことは全部書いてあるはず。まぁ、書いてないけど。

https://msdn.microsoft.com/ja-jp/library/windows/desktop/aa376210(v=vs.85).aspx

CNGの機能を使う

CNGが標準で実装している機能を外部から利用する方法について述べる。

コンパイル・リンクの方法

最初に片づけなければならない、そもそもの問題。

乱数の生成

簡単なところから、まずは乱数の生成を行う。

ハッシュ値の生成

同じく、比較的簡単な奴で、ハッシュ値を算出することをやってみる。

ハッシュアルゴリズムの比較

CNGで利用できるハッシュアルゴリズムについて、簡単に比較してみた。

共通鍵暗号で暗号化

たぶんこれが本題。共通鍵暗号でデータを暗号化してみる。でもって、暗号化したデータを復号する。

共通鍵暗号アルゴリズムの比較

CNGでサポートされる共通鍵暗号アルゴリズムについて、簡単な比較と実装例を示す。

公開鍵暗号で暗号化

公開鍵暗号での暗号化と復号の方法、および鍵の生成とインポート・エクスポートの方法を示す。

鍵交換

鍵交換アルゴリズムにより共通鍵の交換を行い、共通鍵暗号で暗号・復号を行う。

デジタル署名の生成と署名の検証

デジタル署名アルゴリズムの使い方と、送信側で平文に署名をつけて受信側で検証を行うプログラムの例を示す。

鍵の保管

暗号・復号で使用する鍵をキーストレージプロバイダに格納して使う方法を示す。

アルゴリズムプロバイダを実装する

アルゴリズムプロバイダを自分で実装してCNGに組み込んで使う方法について述べる。

アルゴリズムプロバイダのコンパイル・リンク

クライアントとして使うだけの場合とは異なり、少し考えなければならないことが増える。

NULL暗号の実装

何もしないで平文と同一の値をそのまま返す暗号アルゴリズムを実装してみる。

NULL暗号の実装(プログラム例)

NULL暗号を行うアルゴリズムプロバイダについて、プログラムの全体を示す。

アルゴリズムプロバイダの追加・削除

実装したアルゴリズムプロバイダのインストールとアンインストールの方法を示す。

アルゴリズムプロバイダの列挙

今何のアルゴリズムプロバイダがインストールされているのか? なんのアルゴリズムが利用できるのかを取得・表示する方法を示す。

NULL暗号の利用例

自分で実装した暗号アルゴリズムを利用してみる。


連絡先 - サイトマップ - 更新履歴
Copyright (C)  2000 - 2016 nabiki_t All Rights Reserved.